proposta de arquitetura para desenvolvimento de sistemas de
Transcrição
proposta de arquitetura para desenvolvimento de sistemas de
Memorias II Congreso Latinoamericano de Ingeniería Biomédica, Habana 2001, Mayo 23 al 25, 2001, La Habana, Cuba PROPOSTA DE ARQUITETURA PARA DESENVOLVIMENTO DE SISTEMAS DE INFORMAÇÃO EM SAÚDE Guilherme Vilar, Carlos Antônio Menezes Albuquerque, João Marcos Pedrosa de Vasconcelos, Rafael Marques Universidade Católica de Pernambuco (UNICAP) Departamento de Estatística e Informática (DEI) Rua do Príncipe, 526, Boa Vista. CEP 50050-900 Recife-PE-Brasil [email protected] RESUMO O controle de informações é um fator de grande importância na qualidade dos serviços médicos prestados à população. O grau de importância deste controle está diretamente relacionado ao risco dos procedimentos e à quantidade de parâmetros envolvidos, sendo maior para procedimentos de alto risco e com maior número de informações associadas. Este trabalho apresenta uma nova arquitetura para desenvolvimento de sistemas de informação em saúde. Este sistema é baseado numa arquitetura em 3 camadas, proposta pela Microsoft, chamada Windows DNA. Inicia com um breve histórico sobre desenvolvimento de um sistema de informação. Passa então a apresentar uma série de tecnologias como: arquitetura Windows DNA, que serve de base para a arquitetura proposta; OLEDB/ADO e COM, tecnologias que servem de base para a comunicação interna ao sistema; MTS, que coordena os trabalhos de componentes que acessam, processam e modificam os dados do sistema; e XML e MSXML que fundamentam a comunicação com a interface com o usuário e facilitam a comunicação com outros sistemas, além de permitir análises sintáticas dos dados. Enfim chegamos à arquitetura proposta, é explicado o funcionamento dos elementos chaves e analisadas suas vantagens. Durante o desenvolvimento destes trabalhos foi fechado um acordo de parceria com a Secretaria de Saúde do Estado de Pernambuco a fim de cooperação no desenvolvimento e implementação de um Prontuário Eletrônico do Paciente, usando esta arquitetura. Palavras chave: Sistemas de Informação em Saúde, Prontuário Eletrônico do Paciente, Arquitetura. 1. INTRODUÇÃO Um sistema de informações pode ser dividido em várias partes, cada uma responsável por funções críticas deste sistema. De uma forma geral teremos uma parte responsável pela comunicação com o usuário, uma segunda parte responsável pelo armazenamento e recuperação dos dados do sistema, e ainda uma ultima responsável por todo processamento destes dados transformando-os efetivamente em informações que facilitaram a vida do usuário. No inicio os programas eram construídos num único bloco. Todas as partes do sistema estavam localizadas num único computador. Isto traz uma certa facilidade na hora da construção e uma melhora no desempenho total do sistema, algo indispensável para as máquinas com recursos bastante escassos da época. Esta arquitetura, porém, apresenta uma série de complicações. Uma delas é a questão do compartilhamento de informações. Se tivermos dois computadores rodando a mesma aplicação cada uma conteria um conjunto de informação diferente, ou seria necessário todo um trabalho pra manter os dados dos dois computadores atualizados com as alterações ocorridas no outro e isto adicionaria um overhead computacional muito grande, além de não ser muito fácil de implementar. Com o surgimento das redes de computadores uma alternativa à arquitetura monolítica foi proposta. Nesta, o sistema é dividido em dois computadores, ao primeiro foi dado o nome de cliente, que contem as partes responsáveis pela comunicação com os usuários e processamento dos dados. O segundo computador é o chamado servidor, que armazena e recupera os dados, servindo-os para os clientes. A principal vantagem desta arquitetura é que não é necessário trabalho adicional para gerenciar os dados em vários computadores clientes uma vez que os dados estão centralizados no servidor. Como desvantagens temos a necessidade de clientes com poder de processamento razoável, já que são responsáveis pelo processamento dos dados, além da comunicação com o usuário, e as dificuldades na hora de atualização do programa. Um aprimoramento da arquitetura cliente/servidor. Funciona basicamente como se tivéssemos um terceiro computador que é tanto cliente quanto servidor. Agora teríamos um elemento responsável pela interface com o usuário, um segundo que responsável pelo processamento dos dados e transformação em informação e finalmente um terceiro responsável pelo armazenamento e recuperação dos dados. A cada elemento desta arquitetura são necessários funções para a comunicação com os elementos adjacentes. A principal vantagem desta arquitetura vem da presença da camada intermediária que permite mudanças no processamento dos dados sem a necessidade de modificação nos computadores usados pelos usuários [1]. 2. METODOLOGIA A seguir veremos uma série de tecnologias utilizadas em nossa solução, para então ter uma explicação da arquitetura proposta. WINDOWS DNA Proposta da Microsoft para uma arquitetura em 3 camadas [2]. A primeira camada, responsável pela interface com o usuário é chamada de Camada de Apresentação. A segunda, 950-7132-57-5 (c) 2001, Sociedad Cubana de Bioingeniería, artículo 00400 responsável pelo processamento dos dados, é chamada de Camada de Lógica de Negócios. A ultima camada, responsável pelo armazenamento e recuperação de dados, é chamada de Camada de Acesso à Dados. Além das 3 camadas, a arquitetura Windows DNA inclui uma série de serviços complementares e ferramentas para o desenvolvimento. Esta arquitetura tem como objetivo principal facilitar o desenvolvimento de aplicações distribuídas para a internet. Como a Microsoft criou esta arquitetura visando o desenvolvimento de inúmeros tipos de aplicações é necessária uma moldagem de forma a melhor se adaptar à realidade de sistemas de saúde hospitalares. o XML preocupa-se apenas em descrever os dados. Utilizando linguagens de transformação, como XSL, é possível modificar a apresentação destes dados para diferentes formas de visualização, inclusive para diversos dispositivos como um PDA ou um telefone celular. XML porém vai mais além, ele permite uma troca de informações em diferentes plataformas, assim como permite análise sintática do conteúdo com uma certa facilidade, através do uso de um parser como o MSXML. O MSXML é um analisador de sintaxe, baseado em COM, desenvolvido pela Microsoft. Ele pode ser utilizado dentro do Internet Explorer, aplicações Visual Basic, ASP, etc. ASP As Active Server Pages (ASP) são páginas web que possuem conteúdo dinâmico. Tais páginas consistem em combinações de Server-Side scripts e tags HTML [5]. Todo o código de programação existente em páginas ASP é executado no servidor que retorna ao cliente somente páginas HTML, o que faz com que aplicações ASP possam ser acessadas por qualquer browser existente no mercado. Uma aplicação feita em ASP pode ainda conter linhas de Client-Side script, que são códigos executados na estação cliente. Figura 1: Windows DNA ARQUITETURA PROPOSTA OLEDB/ADO Realiza o acesso ao banco de dados e visa permitir acesso a outros dados estruturados, como serviços de diretórios de rede. Além disso, o ADO fornece um mecanismo para representar dados estruturados criados por sua aplicação e pode servir como espaço de armazenamento temporário ou um mecanismo de transporte. COM Componentes são elementos responsáveis pela lógica de negócios do sistema. O Component Object Model (COM) é a implementação da tecnologia de componentes da Microsoft, serve de base para outras tecnologias como OLE e ActiveX e encontra-se amplamente integrada às plataformas Windows. Por também ser uma especificação formal, encontra-se disponível para outras plataformas. MTS Uma transação pode ser exemplificada como todo um processo de estabelecer uma conexão de banco de dados, comunicando com o recurso de fim de conexão, eventualmente informando sobre quaisquer alterações feitas, e depois fechando a conexão. O Microsoft Transaction Server (MTS) é responsável pelo gerenciamento destas transações. O MTS permite, por exemplo, a atualização de um banco de dados Oracle e um banco de dados SQL Server dentro de uma transação e garante que ambos os servidores fiquem atualizados no fim desta transação. O MTS permite também o aproveitamento de uma conexão aberta, para utilizar manipulação de dados, evitando assim uma lentidão no sistema. XML E MSXML A eXtensible Markup Language (XML) é uma linguagem para estruturação de dados. Diferente do HTML que formata como um conjunto de dados deve aparecer na tela, Figura 2: Arquitetura Proposta Como uma solução às necessidades de construção de sistema de informação em saúde é apresentada uma arquitetura baseada na Windows DNA, utilizando as mesmas tecnologias que estão sendo empregadas pelas mais variadas empresas de tecnologias da informação. Esta arquitetura está montada sobre uma estrutura Windows DNA e temos um Sistema de Informação Básico como elemento centralizador. Este sistema é composto por um conjunto básico de informações capaz de identificar o paciente de forma única em todo o escopo do sistema. À este sistema são acrescentados módulos adicionais responsáveis pelas funcionalidades específicas de cada área do serviço de saúde em questão. INTERFACE COM O USUÁRIO No desenho acima temos clara a separação da Camada de Apresentação, em azul na parte inferior. Onde tecnologias como ASP, XML, HTML e WAP permitem o acesso às informações do sistema a partir de computadores convencionais (desktops), assim como computadores de mão PDA e até mesmo celulares. O uso da tecnologia WAP permitirá acesso ao sistema de informação a partir de uma infinidade de dispositivos de computação móveis [6]. SISTEMA DE INFORMAÇÃO BÁSICO O Sistema de Informação Básico (SIB) é apresenta duas camadas em si. Uma Camada de Acesso a Dados responsável pelo gerenciamento dos dados básicos e uma camada de Lógica de Negócios que manipula as informações básicas contidas na Camada de Acesso a Dados, assim como provê a infra-estrutura para a conexão dos módulos adicionais. 5. CONCLUSÕES A arquitetura proposta faz uso de tecnologias computacionais modernas, atendendo assim todas as necessidades requeridas em um sistema de prontuário eletrônico, tornado-o confiável, robusto e de fácil uso. Estamos implementando um prontuário eletrônico em oncologia clínica/quimioterapia baseado nesta arquitetura de forma a comprovar suas capacidades. AGRADECIMENTOS MÓDULOS ADICIONÁIS Os módulos adicionais são os responsáveis por toda a funcionalidade relacionada à cada parte específica de uma unidade de saúde. Assim como o SIB ele contém uma Camada de Dados, responsável pelas informações necessárias, e uma camada de Lógica de Negócios, responsável pelo processamento destas informações. Um módulo de Oncologia, por exemplo, conteria todas as informações e funcionalidades pertinentes ao tratamento oncológico de um paciente, já um módulo de Radiologia poderia contemplar toda a questão do armazenamento de imagens e sinais, utilizando sistemas PACS. Secretaria de Saúde do Estado de Pernambuco, pelo suporte e confiança a nós depositados para o desenvolvimento deste trabalho. VANTAGENS DA ARQUITETURA PROPOSTA A nossa arquitetura integra a Internet, cliente-servidor e modelos de PCs dentro de uma estrutura de soluções distribuídas e tem um Sistema de Informação Básico como elemento centralizador. Vários outros módulos, ligados a áreas mais específicas, podem ser adicionados, de forma simples, a este sistema de informação básico, para obter resultados mais completos na área de saúde. Esta arquitetura melhora o fluxo de informação, pois é dinâmicas e flexíveis para mudar conforme as necessidades e podendo ser facilmente integradas com dados e sistemas existentes. [5] 3. RESULTADOS Como resultado apresentamos esta arquitetura para desenvolvimento de sistemas de informação em saúde. 4. DISCURSÃO Esta arquitetura foi desenvolvida visando seu uso na construção de sistemas de informação em saúde de grande e médio porte, ou que necessitem uma grande capacidade de integração com outros sistemas. Algumas vantagens encontradas na arquitetura proposta são: • Independência de plataforma computacional do cliente; • Atualizações do sistema: são feitas basicamente apenas nos servidores; • Facilidade na integração de novos módulos ao sistema. REFERENCIAS [1] [2] [3] [4] [6] P. Tindall, “Desenvolvendo Aplicações Corporativas com VB, MTS, IIS, SQL Server e XLM”, 2000. “Microsoft – Windows DNA [On-line]”, Microsoft Corporation, Novembro/1999 URL: http://www.microsoft.com/dna/ e http://www.microsoft.com/brasil/dna/ E. Callahan, “The Power of Intranets”, Microsoft Press, 1999. I. Blackburn, “Professional Visual Interdev 6 programming”, Wrox Press Ltd., 1999. C. Wille, C. Koller, “Aprenda em 24 horas Active Server Pages – ASP”, Editora Campus, 1999. “Wireless Application Protocol Architecture” Specification, WAP Forum, abril/1998. URL: http://www.wapforum.org/ PROPOSAL OF AN ARCHITECTURE FOR DEVELOPMENT OF INFORMATION SYSTEMS FOR HEALTHCARE ABSTRACT The control of information is very important to the quality of medical services offered to the population. The importance of this control is directly related to the risks of the procedures and the number of parameters involved, the higher the risk and quantity of information associated to the procedure, the higher is the importance of such control. This paper presents a new architecture for development of information systems for healthcare. This is based on 3 tier architecture, proposed by Microsoft, called Windows DNA. It begins with a brief overview on information systems. Then it shows some technologies such as: Windows DNA Architecture, basis for the proposed architecture; OLEDB/ADO, basic technologies for the internal communications on the system; MTS, coordinates the components, these access, process and modify data on the system; and XML and MSXML forms the basis for the user interface and facilitates the communication with other systems, these technologies also make possible easy syntax analysis of data on the system. After those technologies we finally get into our architecture and explain how it works, its key elements and advantages. On the course of the works a partnership with the Secretaria de Saúde do Estado de Pernambuco (State of Pernambuco’s Health Secretary) was set in order to provide cooperation on the development and implementation of an Electronic Health Record based on the proposed architecture.