Sistema Distribuído de Imagens Médicas Baseado em Modelos

Transcrição

Sistema Distribuído de Imagens Médicas Baseado em Modelos
MIDster: Sistema Distribuído de Imagens Médicas
Baseado em Modelos Peer-to-Peer (P2P) e Serviços Web
Ivan Torres Pisa1, Paulo Roberto de Lima Lopes 2, Adriano Jesus de Holanda3,
Daniel Facciolo Pires 4, Evandro Eduardo Seron Ruiz5
1,2
Departamento de Informática em Saúde (DIS),
Universidade Federal de São Paulo (UNIFESP/EPM), Brasil
3,5
Departamento de Física e Matemática (DFM), Faculdade de Filosofia, Ciências e
Letras de Ribeirão Preto (FFCLRP), Universidade de São Paulo (USP), Brasil
4
Departamento de Ciência da Computação,
Faculdades COC, Ribeirão Preto, Brasil
Resumo - Um modelo distribuído representa a abordagem com melhor relação custo/benefício para a implementação de sistemas de armazenamento e comunicação de imagens (PACS) para aplicações médicas.
PACS distribuídos oferecem uma eficiente emulação de uma base de dados central, porém, distribuída em
diferentes equipamentos e sistemas. Modelos peer-to-peer (P2P) estão no centro das discussões sobre
gerenciamento de conteúdo e computação distribuídos e colaboração entre pessoas. De fato, modelos colaborativos atraem enorme interesse porque permitem maximizar o capital intelectual de uma organização,
construindo plataformas de conhecimento. Serviços web representam uma tecnologia emergente que melhor implementa modelos P2P. Serviços web oferecem software como um serviço, interoperabilidade dinâmica de transações, acessibilidade, eficiência, especificações universalmente aceitas, integração com sistemas legados e novas oportunidades de mercado. O projeto MIDster – acrônimo para P2P Web Service
Medical Image Distributed System - propõe um sistema de compartilhamento de imagens médicas baseado
em modelos P2P e serviços web. A arquitetura MIDster oferece um relacionamento entre usuários e seus
recursos em rede que define uma plataforma de conhecimento de coleções de imagens médicas. MIDster
foi desenvolvido originalmente no grupo ImagCom, USP, e atualmente conta com a parceria do Departamento de Informática em Saúde, UNIFESP/EPM. Esse projeto recebeu suporte financeiro da CAPES
1999/2003.
Palavras-chave: Informática Médica, Sistemas Distribuídos, Sistemas Colaborativos, Serviços Web, P2P.
Abstract - A distributed design is the most cost-effective system for picture archiving and communications
systems (PACS) implementation. Distributed PACS offers an effective central database emulation, but distributed at different equipments and systems. Peer-To-Peer (P2P) models are in the center of all discussions
about distributed content management, distributed computing cycles, and person-to-person collaboration. In
fact, collaboration is the most interest area because it allows the maximization of the intellectual capital for
organizations, constructing knowledge platforms. Web services are an emerging technology that better implement P2P models. Web services offer software as a service, dynamic business interoperability, accessibility, efficiencies, universal agreed specifications, legacy integration, and new market opportunities. The
MIDster project – P2P Web Service Medical Image Distributed System acronym - proposes a medical image
sharing system founded on P2P models and web services. MIDster architecture offers a relationship to users
and theirs resources at Intranet/Internet networks that define a knowledge platform to medical image collections. MIDster was originally developed at ImagCom, USP, and nowadays with Health Informatics Department, UNIFESP/EPM as partner. This project was funded by CAPESP 1999/2003.
Key-words: Medical Informatics, Distributed Systems, Collaborative Systems, Web Services, P2P.
Introdução
O desenvolvimento do projeto MIDster –
Peer-To-Peer Web Service Medical Image Distributed Sytem, que inclui a definição de uma arquitetura e uma implementação do sistema é parte
integrante de um conjunto de estudos e implementações direcionadas a área de computação
de imagens médicas, desenvolvidos no laboratório ImagCom (http://imagcom.org) do Departa-
mento de Física e Matemática (DFM), Faculdade
de Filosofia, Ciências e Letras de Ribeirão Preto
(FFCLRP), Universidade de São Paulo (USP).
Esse projeto reflete o objetivo do grupo de estudar padrões, tecnologias e metodologias que
sejam adequadas para gerar soluções ótimas
para a área de processamento de imagens médicas, incluindo computação, representação, arquivamento, transmissão e recuperação dessas
imagens. Atualmente o projeto MIDster conta com
a parceria do Departamento de Informática em
Saúde (DIS) da Universidade Federal de São
Paulo (UNIFESP/EPM).
Devido a requisitos legislativos e econômicos, os dados dos pacientes estão, cada vez
mais, sendo gerenciados por sistemas digitais de
informação hospitalar – Hospital Information System (HIS). Na última década, redes de alto desempenho têm sido instaladas em hospitais e
demais instituições médico-acadêmicas para que
a manipulação desse grande volume de dados
seja viável. Paralelamente, uma quantidade crescente de modalidades de imageamento médico
tornou-se disponível com custos relativamente
baixos devido às inovações das áreas de engenharia, eletrônica, computação e física médica.
Como há uma enorme demanda no atendimento a saúde, os profissionais da área de
saúde passaram a integrar em suas atividades
essas ferramentas tecnológicas emergentes, de
tratamento de registros clínicos, de dados e imagens. Assim, espera-se praticar uma medicina
que ofereça diagnósticos mais rápidos, de baixo
custo, menos invasiva e que ofereça maior conforto aos profissionais de saúde e pacientes. Atualmente a prática da medicina depende diretamente dos métodos e equipamentos de geração
de imagens médicas por auxiliarem na busca
desses requisitos.
Com o incremento do número de imagens
médicas no prontuário do paciente, as redes implantadas precisam suportar tráfegos cada vez
mais intensos. O tempo médio de transferência
de enormes quantidades de dados depende, portanto, da capacidade da rede, dos métodos de
acesso aos dados e dos protocolos usados. A
complexidade dos sistemas de informação em
saúde está crescendo de tal maneira que não
basta aumentar a banda de comunicação das
redes; deve-se oferecer forte padronização para
os usuários desses sistemas clínicos, com acesso
rápido, fácil e unificado aos dados. Mais especificamente, a lista dos problemas encontrados inclui:
a) aumento na heterogeneidade dos equipamentos e da infra-estrutura de software;
b) dificuldade de prover acesso unificado aos
dados;
c) custosa dependência de soluções proprietárias para o armazenamento de dados; e
d) as rápidas mudanças de demandas clínicas
que exigem adaptações nas capacidades dos
servidores de dados e desenho do sistema.
padrões para tornar viável a próxima fase evolutiva da prática médica.
De fato, a adoção de padrões de representação, tecnológicos e metodológicos permite que
um sistema computacional da área de saúde
possa se beneficiar de soluções individuais, comerciais e acadêmicas para implementar sua
atualização para o gerenciamento do enorme
tráfego de dados, da quantidade crescente de
pontos de atendimento eletrônicos e da complexidade da informação. Ainda, uma instituição médico-acadêmica pode adotar políticas que assegurem facilidades na integração de diferentes sistemas de informação, plataformas computacionais,
sistemas operacionais, linguagens de programação e redes de comunicação.
Em particular, a questão dos sistemas Picture Archiving and Communication Systems
(PACS) [2] é o cerne desse trabalho. Um sistema
de gerenciamento de imagens médicas é bastante complexo, demanda estudos especializados e
altos investimentos financeiros, tornando seu
desenvolvimento lento e crítico. Em praticamente
todas as experiências divulgadas em artigos e
congressos especializados, a opinião é unânime:
os sistemas PACS monolíticos devem dar espaço
às inovações tecnológicas que, baseadas em
padrões, permitem implantar maior interoperabilidade, reduzindo custos operacionais e agregando
funcionalidade para atender às novas demandas
da medicina.
Para a implementação de sistemas PACS,
entre as inovações tecnológicas de impacto, destacam-se:
a) a revolução dos chamados modelos peer-topeer (P2P), emergentes dos mais recentes
sistemas de compartilhamento de recursos; e
b) as tecnologias fundamentais, denominadas
serviços web, que permitem estabelecer interoperabilidade independente de plataforma,
linguagem de programação e localização geográfica.
Essas tecnologias oferecem não apenas
inovações técnicas mas, principalmente, mudanças nos paradigmas de sistemas distribuídos e da
participação do "usuário comum" [3]. Tais inovações chamaram a atenção da comunidade mundial de computação a partir de 1999. Sua larga
adoção e a criação de novos padrões e produtos
marcaram os fundamentos para os novos sistemas de informação.
Resultados
Metodologia
As modernas soluções encontradas para lidar com essa miscelânea de problemas da evolução da medicina para a chamada “medicina baseada em informação" [1] incorporam, sem exceção, um mote fundamental da área de tecnologia
de informação: padronização. Deve-se utilizar
O objetivo principal do projeto MIDster foi
desenvolver uma arquitetura distribuída de imagens médicas baseada em padrões da área de
saúde e padrões tecnológicos de tecnologia de
informação. Os resultados da busca desse objetivo nesse trabalho, aqui apresentados, são:
o
o
o
a proposta de uma arquitetura baseada no
uso de serviços web para comunicação e usando um modelo P2P para a construção de
uma coleção distribuída de imagens médicas;
o desenvolvimento de um sistema que corrobora a arquitetura proposta;
a construção de conhecimento adequado
para o desenvolvimento de sistemas de computação em saúde baseados em padrões,
tecnologias e metodologias;
A chave para a obtenção desses resultados
é o uso dos serviços web com forte inspiração
nos modelos P2P. Portanto, a arquitetura MIDster
aqui proposta é centrada na disponibilidade de
um serviço web pelo qual um cliente autorizado
possa interagir diretamente com os demais clientes conectados simultaneamente. Entre as funcionalidades descritas na arquitetura MIDster
incluem-se:
o mecanismos de busca de imagens médicas
padrão DICOM;
o comunicação síncrona e assíncrona entre
clientes conectados;
o validação dos clientes que participam da rede
de compartilhamento;
o controle de versão dos programas utilizados
na camada do servidor.
A tese fundamental do projeto MIDster é a
defesa do uso de modelos e soluções da área de
tecnologia de informação para auxiliar no próximo
passo evolutivo da medicina – denominada medicina baseada em informação – ao permitir a criação de sistemas de informação em saúde adequados à complexidade e volume dos dados clínicos encontrados na atualidade. Em particular,
sistemas PACS podem se beneficiar da flexibilidade e interoperabilidade oferecidas por modelos
P2P e serviços web. Portanto, essa é a grande
inovação presente nos resultados do projeto
MIDster, que buscam:
o conectar o usuário diretamente a outros usuários, criando uma percepção de uma comunidade dedicada;
o considerar as definições de cliente e servidor
como uma atitude das transações entre eles
e não como uma configuração física estática
de máquinas;
o tornar o computador do usuário simultaneamente um cliente e um servidor da comunidade;
o facilitar o desenvolvimento e uso da aplicação
para o usuário;
o criar uma aplicação de rede que não é baseada em navegador web;
o incluir algum tipo de ferramenta para que o
usuário gerencie seu próprio conteúdo;
o suportar interligações baseadas em protocolos padronizados, como XML-RPC e SOAP;
o facilitar o desenvolvimento de aplicações para
sua plataforma.
Discussão
A arquitetura MIDster define uma camada
do cliente, camada do servidor e camada da rede.
A camada do servidor é a parte da arquitetura
que implementa a inteligência, ou memória, do
compartilhamento das imagens médicas. Essa
camada é composta de computadores, programas e interfaces de serviços com os quais a camada do cliente se comunica para realizar o
compartilhamento. A arquitetura MIDster é gerenciada completamente na camada do servidor
através do controle de usuários e serviços disponíveis. Além disso, a camada do servidor permite
visualizar a totalidade da rede MIDster em funcionamento. Portanto, o controle da camada do servidor deve ser realizado apenas pelo administrador da rede MIDster. O compartilhamento de imagens médicas é viabilizado através da informação
armazenada na camada do servidor por uma lista
dos recursos disponíveis pelos clientes conectados ao servidor, denominada Índice de Recursos.
A partir da informação da localização de uma
determinada imagem médica, a camada do cliente implementa completamente a transferência do
arquivo especificado, eliminando a participação
da camada do servidor. A camada do cliente,
prevista na arquitetura MIDster, opera funções
simultâneas de cliente e servidor uma vez que
cada ponto cliente se torna um servidor de sua
coleção de imagens médicas para os demais
clientes identificados pela camada do servidor.
A camada do cliente é composta por computadores e programas que participam do compartilhamento de imagens médicas definido pela
arquitetura MIDster. A priori qualquer usuário
habilitado pelo servidor MIDster pode conectar
seu computador ao servidor e se tornar um cliente
ativo desse compartilhamento. Para isso o usuário deve possuir licença de uso e satisfazer requisitos mínimos para participar da rede de compartilhamento. Esse software deve operar dentro dos
padrões de comunicação estabelecidos pela arquitetura MIDster. A especificação define funcionalidades de cliente e servidor para cada ponto:
cada participante da camada do cliente deve operar como cliente, ao requisitar um arquivo de outro participante, e como servidor, ao enviar um
arquivo requisitado para outro participante. A
camada do cliente é utilizada geralmente por
profissionais e pesquisadores que trabalham com
imagens médicas e que desejam compartilhar
com parceiros suas coleções privativas de imagens na rede MIDster. No entanto, há diferentes
cenários para a atividade de um participante dentro da arquitetura MIDster que representa o tipo
de interação que um nó cliente possui com o restante da rede: cliente típico, cliente servidor, cliente estrito, cliente corporativo e cliente especial.
A camada da rede da arquitetura MIDster é
definida como a infra-estrutura necessária para
que a comunicação via TCP/IP possa ser realizada, como as redes Intranet e Internet, uma vez
que a tecnologia de serviços web baseada em
SOAP/XML comumente utiliza HTTP para realizar
as conexões. A camada da rede deve suportar
um grande volume de tráfego, dado que os arquivos de imagens médicas são digitalmente grandes. Com exceção da exigência de bom desempenho na transmissão de dados, comum para
qualquer aplicação que envolva sistemas de informação em saúde, não há nenhum requisito
especial para que a arquitetura MIDster seja implantada.
O compartilhamento de imagens médicas
definido na arquitetura MIDster considera a utilização de uma camada do servidor que de fato
implementa a lógica de negociação e localização
dos recursos disponíveis no sistema. A tecnologia
usada para um cliente se comunicar com o servidor é a de serviço web baseado em SOAP/XML
enquanto que a tecnologia usada para os clientes
trocarem os arquivos das imagens médicas baseia-se em socket TCP/IP, implementando um
modelo P2P.
A camada do servidor é responsável por integrar o Índice de Recursos e as requisições de
informação dos clientes da rede com a funcionalidade disponível no sistema legado. Dessa maneira, a aplicação cliente definida na arquitetura
MIDster não exige grandes esforços de desenvolvimento, implementação, implantação e gerenciamento do sistema legado. Ainda que o sistema
legado ofereça informação e imagens médicas
usando outros padrões, a camada do servidor é
responsável por manter o acoplamento necessário para a harmonização das mensagens entre
cliente e sistema legado. Assim sendo, a flexibilidade das tecnologias propostas na arquitetura
MIDster oferece um excelente nível de interoperabilidade para as mais diversas situações de
conexão entre sistemas de informação em saúde.
A arquitetura MIDster é composta dos seguintes componentes, representados na Figura 1:
o na camada do servidor: interface WSDL;
software servidor; agência de publicação;
provedor do serviço; máquina de busca; gerenciador de dados; gerenciador de arquivos;
o na camada do cliente: software cliente; gerenciador de arquivos;
o na camada da rede: infra-estrutura padrão
TCP/IP como Internet e Intranet;
tes buscas podem ser implementadas, entre elas,
através da identificação do recurso, uso de comando de linha, guias de busca, relatórios estruturados e buscas de informação relacionada.
De fato, há inúmeras estratégias que podem ser consideradas para a realização de buscas dos recursos. No entanto, deve-se ressaltar
algumas questões:
o seja qual for a metodologia adotada, a comunicação entre o software cliente e a camada
do servidor é sempre realizada pelo serviço
web. Assim, a seqüência da busca e suas
respostas devem ser implementáveis através
de requisições SOAP/XML;
o deve-se definir uma política de acesso na
camada do servidor, ou adotar políticas das
instituições médico-acadêmicas envolvidas
na rede MIDster, de maneira que uma busca
não retorne a identificação de recursos que
não podem ser acessados pelo usuário;
o deve-se privilegiar a simplicidade e a rapidez
para as buscas em detrimento da profundidade das respostas. Essa simplicidade deve influenciar diretamente a interface projetada para o software cliente, facilitando a experiência
do usuário no compartilhamento de seus arquivos. Pode-se ter metodologias de busca
que privilegiem a profundidade da pesquisa,
no entanto, essas devem ser oferecidas como
operações secundárias da rede MIDster.
A arquitetura MIDster é centrada na idéia
de compartilhar recursos entre seus parceiros, em
particular, arquivos de imagens médicas preferencialmente no formato DICOM. No entanto,
pode-se considerar como recurso qualquer documento digital que precise estar disponível para
os demais parceiros autorizados através da rede.
Ao privilegiar o padrão DICOM torna-se possível
oferecer uma busca de recursos baseando-se em
um conjunto mínimo de rótulos DICOM. Diferen-
Conclusões
A Figura 2 apresenta os componentes de
software utilizados para a implantação do sistema
MIDster. O gerenciador de arquivos é parte fundamental do computador servidor e considerou-se
como sendo o próprio sistema de gerenciamento
de arquivos do Windows NT chamado NT File
System (NTFS). Também foram utilizados os
softwares MySQL 4.1.0 para gerenciamento dos
dados e o servidor HTTP Apache 2.0.46 com
módulo SOAP 1.1. Os componentes desenvolvidos no projeto MIDster são: MIDster Serviço Web
0.20, MIDster Servidor versão 0.20, MIDster Cliente versão 0.20, MIDster Visualizador versão
0.12, MIDster Máquina de Busca versão 0.10 e
Tabelas de Dados versão 0.20. Todos os componentes foram desenvolvidos através do Borland
Delphi 7 Studio baseado na linguagem Object
Pascal, com exceção das tabelas de dados, que
foram criadas através do AB MySQL Control Center 0.9.2.
Um modelo distribuído representa a abordagem com melhor relação custo/benefício para a
implementação de sistemas de armazenamento e
comunicação de imagens (PACS) para aplicações
médicas [4,5,6]. Entretanto, essa abordagem
apresenta o desafio de tornar as imagens médicas armazenadas, distribuídas pela rede PACS,
parecerem centralizadas através de um único
acesso para seus usuários. Um componente fundamental para sistemas não distribuídos é a concepção de uma base de dados central, contendo
todos os estudos que foram armazenados em um
PACS. Ao invés disso, PACS distribuídos oferecem uma eficiente emulação de uma base de
dados central, porém, distribuída em diferentes
equipamentos e sistemas.
Modelos peer-to-peer (P2P) estão no centro das discussões sobre gerenciamento de conteúdo distribuído, computação distribuída e colaboração entre pessoas. De fato, modelos colaborativos atraem enorme interesse porque permitem
maximizar o capital intelectual de uma organização, construindo plataformas de conhecimento.
Por outro lado, serviços web representam uma
direção tecnológica emergente que melhor implementa modelos P2P, oferecendo software
como um serviço, interoperabilidade dinâmica de
transações, acessibilidade, eficiência, especificações universalmente aceitas, integração com
sistemas legados e novas oportunidades de mercado.
O projeto MIDster propõe um sistema de
compartilhamento de imagens médicas baseado
em modelos P2P e serviços web. MIDster representa um marco na área de sistemas PACS ao
unir áreas distintas como as técnicas de compartilhamento de arquivos e o padrão DICOM. A arquitetura proposta pode ser adotada para auxiliar no
desenvolvimento e extensão de sistemas PACS.
Sua concepção é centrada na disponibilidade de
um serviço web pelo qual um cliente autorizado
possa interagir diretamente com os demais clientes conectados simultaneamente. Entre as operações que podem ser oferecidas estão, por exemplo: mecanismos de busca de imagens médicas
com critérios baseados em DICOM; validação dos
clientes que participam da rede de compartilhamento; controle de versão dos programas utilizados na camada do servidor; atualização de data e
hora baseada no padrão corrente no servidor;
comunicação síncrona e assíncrona entre clientes
conectados.
Por fim, a arquitetura MIDster representa
uma plataforma de integração de conhecimento
que supera os limites da área da saúde, mas
encontra nela sua melhor aplicação.
Agradecimentos
Os autores agradecem ao apoio financeiro
CAPES no período 1999/2003 e às suas instituições pelo apoio às pesquisas.
Referências
[1] Weil, N. (2003), “IT is pushing medical care to
a new era, IBM exec says”, In: IT World - IDG
News
Service,
http://www.itworld.com/Tech/2987/030327me
dicalit/, March 27.
[2] Dwyer, S.J. (1996), “Imaging system architectures for picture archiving and communication
systems”, In: Radiology Clinics of North America, v. 34, n. 3, p. 495-503.
[3] Oram, A. (2001), Peer-to-peer: o poder transformador das redes ponto-a-ponto, Editora
Berkeley.
[4] Carrino, J.A., et al. (1998), “Large-Scale PACS
Implementation”, In: Journal of Digital Imaging, v. 11, n. 3, suppl. 1, August, p. 3-7.
[5] Oka, A., et al. (1999), “Interhospital Network
System Using the Worldwide Web and the
Common Gateway Interface”, In: Journal of
Digital Imaging, v. 12, n. 2, suppl. 1, May, p.
205-207.
[6] Ernst, R., et al. (1999), “A Picture Archiving
and Communications Systems Featuring Multiple Monitors using Windows98”, In: Journal
of Digital Imaging, v. 12, n. 2, suppl. 1, May,
p. 106-108.
Contato
Ivan Torres Pisa, Dr, e Paulo Roberto de
Lima Lopes, MS, Setor de Telemedicina (SET),
Departamento de Informática em Saúde (DIS),
Universidade Federal de São Paulo (UNIFESP),
Edifício José Leal Prado, Terreo, Rua Botucatu
862, Vila Clementino, 04032-062, São Paulo, SP,
Brasil. Página: http://www.unifesp.br/dis/set. Email: [email protected], [email protected].
Evandro Eduardo Seron Ruiz, PhD, Adriano de Jesus Holanda, MS, Departamento de Física e Matemática (DFM), Faculdade de Filosofia,
Ciências e Letras de Ribeirão Preto (FFCLRP),
Universidade de São Paulo (USP), Av Bandeirantes 3900, Monte Alegre, 14040-901, Ribeirão
Preto, SP, Brasil. Página: http://imagcom.org, Email: [email protected].
Daniel Facciolo Pires, MS, Departamento
de Ciência da Computação, Faculdades COC,
Ribeirão
Preto,
SP,
Brasil.
E-mail:
[email protected].
Figura 1 – Arquitetura MIDster: componentes.
Figura 2 – Sistema MIDster: detalhes dos componentes e suas versões.