A Engenharia de Software no Desenvolvimento de um

Propaganda
IV Workshop de Informática aplicada à Saúde – CBComp 2004
Relatos de Pesquisa
A Engenharia de Software no Desenvolvimento
de um Prontuário Eletrônico do Paciente.
O caso da Clinica Sabedotti de
Ponta Grossa no Estado do Paraná
R. Ranthum, Professor, CEFET-PR, e A. C. de Franciso, Professor Dr., CEFET-PR
Abstract -- The computer science started to be part of the
medicine professionals' day by day, of this form companies and
teaching institutions it has been guiding several efforts in the
sense of implementing solutions to integrate the great range of
information originated in equipments of images and
administrative systems. In this work a proposal of development
of an Electronic Handbook of the Patient will be presented (PEP), for it Practices medicine her Sabedotti, located in the city
of Ponta Grossa in the State of Paraná, that is formed by a highly
qualified clinical body in the area of diagnoses through images.
Using the most modern techniques of software engineering with
the objective of creating an innovative product. One of the
focuses of this project is the adoption of products on the license
GLP (free software), and totally gone back to the internet,
creating this way a product with costs reduced, high acting, of
easy maintenance and distribution..
Index Terms-- Electronic Handbook of the Patient, Software
Engineer, UML, software free, DICOM.
Resumo - A informática passou a fazer parte do dia-a-dia dos
profissionais de medicina. Dessa forma, empresas e instituições
de ensino têm orientado diversos esforços no sentido de
implementar soluções que integrem a grande gama de
informações originadas em equipamentos de imagens e sistemas
administrativos. Neste trabalho será apresentada uma proposta
de desenvolvimento de um Prontuário Eletrônico do Paciente –
(PEP), para a Clinica Sabedotti, localizada na cidade de Ponta
Grossa, no Estado do Paraná, que é formada por um corpo
clínico altamente qualificado na área de diagnósticos através de
imagens, utilizando-se as mais modernas técnicas de engenharia
de software com o objetivo de criar um produto inovador. Um
dos enfoques deste projeto é a adoção de produtos sobre a licença
GLP (software livre), e totalmente voltado para a internet,
criando, dessa forma, um produto com custos reduzidos, alto
desempenho, de fácil manutenção e distribuição.
Palavras-chave - Prontuário Eletrônico do Paciente, Engenharia
de Software, UML, software livre, DICOM.
I. INTRODUÇÃO
A informação atualizada e correta tem sido uma das buscas
constantes das organizações. Por conseguinte, os
investimentos em tecnologias que as viabilizem têm sido o
grande foco de empresas de desenvolvimento de sistemas de
informação.
O software de computador é uma dentre poucas
tecnologias-chave que causaram impacto sobre quase todos os
aspectos da sociedade. Ele é um mecanismo para automatizar
negócios, a indústria e o governo, um meio de transferir novas
tecnologias, um modo de captar valiosa experiência para ser
usada por outros, uma janela para o conhecimento corporativo
coletivo. O software é fundamental em quase todos os
aspectos dos negócios. Encontramos o software
(freqüentemente sem nos darmos conta dele) quando nos
dirigimos ao trabalho, fazemos qualquer compra no varejo,
paramos no banco, fazemos uma chamada telefônica,
visitamos o médico ou realizamos qualquer uma das centenas
de atividades do dia-a-dia que refletem a vida moderna
(PRESSMAN, 1995).
Oliveira e Neto (2003), entendem que o estágio atual da
Tecnologia da Informação (TI) determina que softwares são
constituídos por módulos ou peças menores que são acopladas
para a montagem do produto final. Esses módulos possibilitam
que partes individuais possam ser desenvolvidas
independentemente das demais, desde que planejadas.
Para Brooks (1987), Software é um conjunto de
construções conceituais, complexas e não-lineares, sujeitas a
mudanças e modificações, e invisível, destacando, ambos,
desta maneira a dificuldade e complexidade envolvida na
atividade de construção de um software, muitas metodologias
para a criação de software apontam para a aproximação cada
vez maior com a abordagem da criação de produtos na gestão
da manufatura.
Uma das áreas que mais tem se mobilizado na busca de
dados confiáveis e integrados, tem sido a área médica. Nesse
sentido, destacamos os esforços no desenvolvimento dos
chamados Prontuários Eletrônicos dos Pacientes (PEP). O
PEP, segundo Waegemann (1996), presidente do Medical
Record Institute, é dividido em cinco níveis evolutivos:
1. Registro Médico Automatizado: este nível de sistema
representa a maioria dos casos na atualidade. A
informação é armazenada em computadores pessoais e não
está de acordo com os requisitos legais e, portanto, o
prontuário em papel é mantido em conjunto. Desta forma,
522
IV Workshop de Informática aplicada à Saúde – CBComp 2004
papel e registro eletrônico coexistem.
2. Registro Médico Computadorizado: neste nível,
médicos e toda a equipe coletam a informação no papel e a
imagem dos documentos resultantes é armazenada de
forma digitalizada no sistema computacional. Em geral,
esse tipo de sistema é departamentalizado, com pouca, mas
já atinge alguns dos requisitos legais, podendo dispensar o
papel em alguns casos.
3. Registro Médico Eletrônico: consiste em um modelo
interdepartamental, reunindo os requisitos legais para
confidencialidade, segurança e integridade dos dados.
4. Registro Eletrônico do Paciente: sistemas neste nível
interligam todas as informações do paciente. Inclusive
dados fora da instituição (interinstitucional). Para se
chegar a este estágio, é necessária uma maneira de
identificar o paciente de forma unívoca e nacional.
5. Registro Eletrônico de Saúde: neste último nível, além
das características evolutivas dos anteriores, a
responsabilidade de manter o prontuário é dividida entre
profissionais de saúde e pacientes.
Para Massad (2003), o desenvolvimento de prontuários
padronizados baseados em sistemas de processamento digital,
a possibilidade de manter registros longitudinais que abarcam
toda a vida do indivíduo e a criação de bases de dados
contendo informações agregadas clínicas e administrativas são
reconhecidos como de grande impacto e benefícios na
melhoria da eficácia, eficiência, segurança e qualidade da
prática de saúde.
Conforme descrito acima, PEP é um sistema de
informações médicas. Para se alcançar um programa de
computador com tais características, é necessário o uso de
técnicas e métodos que possam garantir um desenvolvimento
com qualidade, rapidez, segurança e de fácil manutenção. E
isso só será conseguido com a utilização dos conceitos de
engenharia de software, que é definida como:
“Estabelecimento e uso de sólidos princípios de engenharia
para que se possa obter economicamente um software que seja
confiável e que funcione eficientemente em máquinas reais”.
(PRESMAN, 1995, p. 31)
Com o objetivo de integrar os processos de um PEP com
as imagens digitais
dos equipamentos de diagnóstico
pertencentes à Clínica Sabedotti, tomamos a decisão de
utilizar aplicações baseadas nos conceitos da Engenharia de
Software e diretamente relacionada à área médica.
O objetivo principal deste trabalho é o desenvolvimento de
um produto que centralize em uma mesma aplicação dados
Relatos de Pesquisa
dos pacientes e suas imagens geradas no padrão Digital Image
and Communication in Medice (DICOM).
O DICOM é um padrão de arquivamento digital de
imagens médicas utilizado para garantir interoperabilidade e
comunicação entre os equipamentos médicos e a aplicação em
questão. Muitos fabricantes aderiram a esse padrão, e seus
equipamentos mais modernos produzem então imagens
digitais que podem ser enviadas diretamente ao computador,
seja através de uma rede de computadores, seja através da
gravação de meios óticos ou magnéticos como cd-rom ou
fitas.
II. METODOLOGIA
Atualmente, a construção de sistemas de prontuário
eletrônico está em grande fase de desenvolvimento por todo o
mundo. Muitas empresas possuem equipes aptas e
especializadas em produzir softwares de qualidade; outras,
entretanto, não possuem visão definida do processo de
desenvolvimento e acabam produzindo sistemas de má
qualidade técnica, sem atingir as expectativas esperadas.
(COSTA, 2001)
O modelo utilizado para a construção deste projeto será de
objetos
orientados,
para
garantir
confiabilidade,
escalabilidade, dentre outras características para a aplicação,
requisitos esses fundamentais para uma engenharia de
software bem aplicada. A utilização desse conceito tem como
objetivo agilizar o processo produtivo do sistema em
desenvolvimento e garantir também flexibilidade, para a
utilização de padrões de projetos (Design Patterns) e
componentes de software (frameworks).
Ciclos de Desenvolvimento
Um ambiente de desenvolvimento é normalmente visto
como o conjunto de um kit (linguagem de desenvolvimento e
um ambiente integrado (IDE/RAD)). Porém, um ambiente de
desenvolvimento pode englobar ainda muitos outros itens,
como ferramentas auxiliares para implementação, testes,
versionamento, automatização de processos e cooperação,
além de políticas que determinarão a utilização dessas
ferramentas de forma mais otimizada e integrada. O Conjunto
de tais ferramentas, tecnologias e políticas são chamadas de
Gestão de Configuração de Software (SCM - Software
Configuration Manager).
Os métodos utilizados, desde a fase de análise de
requisitos até a homologação e transferência da aplicação de
um ambiente de produção para um ambiente de execução em
relação a sua configuração e gerenciamento de softwares,
tecnologias e padrões são:
Ciclo de requisitos e análise do sistema.
Os requisitos referem-se às necessidades dos usuários. É de
fundamental importância a compreensão para se ter sucesso
no desenvolvimento de uma aplicação,
523
IV Workshop de Informática aplicada à Saúde – CBComp 2004
À análise de requisitos resta também garantir uma estrutura
de dados adequada, para que futuras aplicações tais como
estudos clínicos possam ser implementados e contar com todas
as informações necessárias.
A técnica de análise utilizada, e que atualmente mais se
destaca, é a Análise Orientada a Objetos (OOA – Object
Oriented Analising), que traz diversos benefícios, tais como
funcionalidades complexas que podem ser desenvolvidas com
uma codificação menor, melhor e mais objetiva, onde um
rápido desenvolvimento será alcançado, tendo uma aplicação
que poderá ser reutilizada e mantida facilmente.
Ciclo de Projeção e modelagem do sistema.
Considerando-se um estudo realizado por Costa (2001),
que demonstra que até 75% de todo o código produzido em
uma aplicação são destinados a construção de interfaces e
problemas de interação com o usuário, adotou-se uma técnica
decorrente da decisão tomada na fase anterior à
modelagem/projeção do sistema, onde, seguindo as mesmas
características da AOO (Análise Orientada à Objetos), adotouse a o Design Orientado a Objetos (OOD - Object Oriented
Design), construindo assim uma interessante técnica de
desenvolvimento para fechar a 2ª fase de desenvolvimento do
projeto, a Análise e Design Orientados a Objetos (OOAD).
Essa técnica ajuda na obtenção de ferramentas de 4 ª
geração, como as Ferramentas CASE, que ajudarão na
modelagem da aplicação, facilitando assim a construção de
protótipos no ciclo de desenvolvimento e contribuindo para o
aceleramento de diversas fases do sistema, dentre elas a
codificação da aplicação e geração de bases de dados para
armazenamento de informações.
Como linguagem de modelagem e unificação
dos
requisitos do sistema será utilizada a Unified Modeling
Language (UML), desenvolvida para especificar, criar,
padronizar e documentar entidades do sistema onde, através
de uma linguagem natural e capaz de traduzir do mundo real
os problemas reais encontrados para que os mesmos, possam
ser computadorizados e aplicados.
Relatos de Pesquisa
tratamento de objetos distribuídos para garantir a segurança,
confiabilidade do sistema, onde os chamados Enterprise Java
Beans (Sun MicroSystem), componentes de negócio, serão
utilizados para suprir necessidades de desenvolvimento de
regras de negócio para aplicação, podendo ser reutilizados de
acordo com a necessidade do projeto.
De acordo com as características de configuração e
gerenciamento de software, Software Configuration Manager
(SCM), serão descritas todas as necessidades e aplicações
desses componentes, de acordo com a arquitetura da
aplicação. Para atingirmos os objetivos propostos, serão
utilizadas diversas ferramentas de desenvolvimento como:
J2sdk1.4.2, Eclipse IDE, Lomboz 3.2, Eclipse Modeling
Framework, Jboss Aplication Server, Ant Framework, Struts
Framework 1.1, Xdoclet Framework, CVS Framework, Log4j.
Todas essas ferramentas utilizam o conceito de software livre;
reduzindo assim os custos com o desenvolvimento.
Ciclo de Testes
Várias estratégias de testes podem ser implementadas para
assegurar que o software está realmente em acordo com suas
especificações e livre de erros: testes de unidade, testes de
integração, testes de sistema e testes de instalação são
exemplos de estratégias que poderão ser utilizadas.
De acordo com as necessidades do projeto, testes de
unidades serão aplicados na fase de implementação do
projeto.
Ciclo de homologação e transferência.
Através dos componentes como Ant, para scripts
automatizados de compilação e o componente Jboss, servidor
de aplicação, técnicas serão aplicadas para que a aplicação
seja polimórfica. De acordo com os comandos dados, a
aplicação será criada de uma forma, ou seja, tanto para testes
unitários em ambiente de produção como testes em ambiente
de execução, além de reformular várias características de
acordo com a necessidade de execução e colocar a versão do
sistema em execução no servidor de aplicações (deploy) da
aplicação.
Ciclo de implementação
Será adotada a linguagem de desenvolvimento JAVA, por
ser uma linguagem 100% orientada a objetos, portavél,
extensível e equandradada no conceito de software livre. Essa
linguagem tem tais características, pois não é uma linguagem
híbrida como Delphi e Visual Basic, que não são puramente
orientada a objetos. Sua portabilidade dá-se pelo fato de poder
rodar em qualquer plataforma de sistema operacional,
extensível devido ao seu código fonte ser aberto e várias
comunidades de desenvolvimento produzirem diversos
módulos que poderão ser integrados ao projeto.
O ciclo de codificação também apresenta como
característica a utilização de uma técnica de implementação,
conhecida como Programação Orientada a Objetos (POO). A
implementação do sistema terá como grande característica o
III. DISCUSSÃO E CONCLUSÕES
Baseado na Engenharia de Software, o desenvolvimento do
PEP produzirá um produto flexível, expansível, interoperável
e inovador. Além disso, o mesmo conta com uma interface
para internet, o que permitirá o acesso de todas as
funcionalidades do sistema local ou remotamente, contando
com a segurança de aplicações baseada na linguagem Java.
Os custos de desenvolvimento do projeto foram reduzidos
a níveis totalmente acessíveis para os padrões nacionais. Será
possível a realização de diagnósticos à distância após a
implantação e certificação do programa, através dos padrões
definidos pelo Conselho Regional de Medicina, encontrados
no "Manual de Requisitos de Segurança, Conteúdo e
524
IV Workshop de Informática aplicada à Saúde – CBComp 2004
Relatos de Pesquisa
Funcionalidades para Sistemas de Registro Eletrônico em
Saúde” (LEÃO, 2004)
Espera-se que a implantação do referido sistema oportunize
à clínica acesso a informações de diversos tipos, tais como:
geográficas, imagens e/ou diagnóstico. Isto se deve ao fato de
que as informações estarão armazenadas em uma única base
de dados integrada, agilizando a consulta das mesmas, quando
necessário.
Aliado a esse benefício, espera-se uma redução de custos
operacionais, pois as imagens passarão a ser armazenadas em
meios magnéticos, sendo descartada, parcialmente, a
utilização de filmes. Outro benefício esperado com a proposta
é a possibilidade da realização de diagnósticos à distância
pelos especialistas, trazendo assim uma redução de seus custos
e tempos, pois não necessitarão estar presente no local da
realização do exame, normalmente feito por um responsável
técnico.
IV. REFERÊNCIAS BIBLIOGRÁFICAS
BROOKS, F. No Silver Bullet: Essence and accidents of software
engineering. IEEE Computer. 1987.
COSTA, C. G. A. Desenvolvimento e Avaliação Tecnológica de um sistema
de prontuário eletrônico do paciente, baseado no paradigma da Word Wide
Web e da engenharia de software. (Dissertação de mestrado apresentada à
Faculdade de Engenharia Elétrica e de Computação da Universidade Estadual
de Campinas), Campinas: 2001.
LEÃO, B. F.; e et al. Manual de Requisitos de Segurança, Conteúdo e
Funcionalidades para Sistemas de Registro Eletrônico em Saúde (RES). São
Paulo: 2004.
MASSAD, E.; e et al. O prontuário eletrônico do paciente na assistência,
informação e conhecimento médico. São Paulo: H. De F. Marin, 2003.
OLIVEIRA, D.; NETO, A. Fábrica de Software: Promovendo a Criação de
Empresas Competitivas em Tecnologia da Informação. In: ENEGEP, Ouro
Preto. Anais Eletrônicos... ABEPRO. 1 CD. Minas Gerais, 2003.
PRESSMAN, R. S. Engenharia de Software.São Paulo: Makron Books,1995.
WAEGEMANN, P. The Five Livels of Eletronic Health Records. M. D.
Computing, v13, n3, 1996.
525
Download