You are on page 1of 6

See

discussions, stats, and author profiles for this publication at: https://www.researchgate.net/publication/237745194

Implementacin de Arquitectura Orientada a


Servicios (SOA) en un proyecto de E-Salud

Article January 2008

CITATIONS READS

2 1,043

7 authors, including:

Adrin Gomez Daniel Luna


Hospital Italiano de Buenos Aires Hospital Italiano de Buenos Aires
94 PUBLICATIONS 234 CITATIONS 185 PUBLICATIONS 497 CITATIONS

SEE PROFILE SEE PROFILE

Enrique R Soriano Alejandro Mauro


Hospital Italiano de Buenos Aires MINISTERIO DE SALUD de Chile
157 PUBLICATIONS 2,078 CITATIONS 8 PUBLICATIONS 9 CITATIONS

SEE PROFILE SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Future of Publishing View project

Laparoscopic surgery View project

All content following this page was uploaded by Enrique R Soriano on 22 July 2017.

The user has requested enhancement of the downloaded file.


INFOLAC2008 - AAIM
2008 - Todos los derechos reservados

Implementacin de Arquitectura Orientada a Servicios (SOA) en un proyecto de E-Salud

Adrin Gmeza, Daniel Lunab, Enrique Sorianoc, Marcela Martneza, Alejandro Maurod Fernn Gonzlez
Bernaldo de Quirse
a
rea de Desarrollos Biomdicos, Hospital Italiano de Buenos Aires, Argentina
b
rea de Informtica Mdica, Hospital Italiano de Buenos Aires, Argentina
c
Departamento de Informacin Hospitalaria, Hospital Italiano de Buenos Aires, Argentina
d
Residencia de Informtica Mdica, Hospital Italiano de Buenos Aires, Argentina
e
Vice Direccin Mdica Estratgica, Hospital Italiano de Buenos Aires, Argentina

Resumen respecta a generar interoperabilidad de plataformas en esce-


narios heterogneos (4).
El desarrollo de aplicaciones Web seguras es un desafi tec-
nolgico de importancia cuando el concepto primordial de un La base esencial de SOA es la publicacin de servicios Web
proyecto es que los usuarios puedan acceder a informacin en Internet, que pueden ser consumidos por distintas aplica-
personal privada de un individuo (datos sensibles) desde In- ciones independientemente de su lenguaje de programacin o
ternet. sistema operativo (5).

El siguiente trabajo describe las metodologas y tecnologas


utilizadas en la implementacin de un Portal Personal de Materiales y Mtodos
Salud en el Hospital Italiano de Buenos Aires, con nfasis en
los mecanismos de proteccin y preservacin de la informa- El Hospital Italiano de Buenos Aires es un Hospital Universi-
cin. tario de alta complejidad con ms de 150 aos de vida, que
cuenta con una infraestructura hospitalaria de 750 camas de
Palabras Claves:
internacin, distribuidas en 2 hospitales, y 23 centros de aten-
Program Development; Medical Records Systems, cin ambulatoria distribuidos por la Ciudad de Buenos Aires y
Computerized; Computer Communication Networks; Patient reas metropolitanas. Posee un sistema de Medicina Prepaga
Access to Records. llamado Plan de Salud que tiene 150.000 afiliados bajo cuida-
do mdico. A la fecha realiza 2.400.000 consultas en el mbi-
to ambulatorio y ms de 36000 internaciones anualmente.
Introduccin
Desde 1998 ha implementado de forma gradual un Sistema de
Informacin en Salud integral, incluyendo registros electrni-
El desarrollo de software basado en componentes ha ganado cos en diferentes niveles de atencin (Historia Clnica Elec-
reconocimiento como una metodologa de construccin de trnica Ambulatoria, de Internacin, de Emergencias), siste-
aplicaciones de alta calidad y de reutilizacin de cdigo fuente mas administrativos, sistemas de agendamiento, sistema de
(1). farmacia, etc. Diversos estndares han sido implementados,
En esta metodologa, la interoperabilidad es uno de los temas incluyendo HL7, CDA versin 2 y un servicio terminolgico
esenciales y centrales, permitiendo construir componentes de basado en SNOMED con diversos vocabularios de salida
software reutilizables en modelos heterogneos, desarrollados (ICD-9CM, ICD-10, IPCP) (6, 7).
por distintas personas o grupos de desarrollo y en diferentes En el ao 2006 el Hospital Italiano comenz el Proyecto Por-
tiempos (2). tal Personal de Salud (PoPeS) destinado a brindar nuevas fun-
El desarrollo de aplicaciones complejas se enfoca en el en- cionalidades a las personas que son atendidas diariamente en
samblaje de componentes de software, estos componentes el Hospital. El PoPeS consiste en un RMP (Registro Mdico
deben ser localizados e identificados como servicios disponi- Personal, del ingls Personal Health Record) Ligado a la His-
bles formando el middleware (capa de negocios) de la aplica- toria Clnica Electrnica (HCE) hospitalaria, llamada Itlica.
cin (3). El proyecto Portal Personal de Salud (PoPeS) consiste en
La arquitectura orientada a servicios (SOA Service Oriented brindar servicios y acceso a datos unificados en mltiples
Architecture) es un salto evolutivo de importancia en lo que aplicaciones, permitiendo a los pacientes que son atendidos en
INFOLAC2008 - AAIM
2008 - Todos los derechos reservados

la red de salud del Hospital Italiano de Buenos Aires interac- que este montado en la red publica (Internet), y otro servidor
tuar o consultar su informacin mdica o administrativa. que este montado en la red privada (LAN HI Local Area
Network del Hospital Italiano).
El PoPeS es una aplicacin Web que presenta al usuario, en
una interfaz nica, contenidos y funcionalidades obtenidas del De esta forma las peticiones HTTP generadas desde los na-
sistema de informacin clnico. vegadores de los usuarios son resueltas en la red publica, y los
servidores de aplicacin tanto publico como privado se comu-
Los pacientes pueden acceder a consultar y actualizar la in-
nican entre si cuando la aplicacin lo demande, utilizando un
formacin demogrfica ingresada en el padrn y aquellos que
protocolo encriptado SSL (Secure Socket Layer).
son socios del Plan de Salud (el prepago hospitalario) pueden
descargar la factura tributaria y cambiar las preferencias de Adems se implement la encriptacin de los mensajes XML
envo de las mismas. A su vez, el sistema permite consultar por intermedio del uso de la infraestructura de clave pbli-
los turnos agendados en el sistema unificado de agendamiento ca/privada y firma digital (10).
y realizar bsquedas de profesionales mdicos en la cartilla
La firma digital es un nmero que tiene la capacidad de captu-
Web.
rar la identidad y el contenido de un mensaje, procesando la
Referente al aspecto clnico, los pacientes pueden acceder a informacin a travs de algoritmos especiales (11).
ver los frmacos prescriptos por sus mdicos a travs de la
Cuando el sistema receptor recibe el mensaje y adjunta la fir-
Historia Clnica Electrnica, el stock disponible de los mis-
ma digital, se puede usar la clave para verificar que:
mos en las Farmacias de la Red Interna y realizar pedidos a
domicilio (delivery). El usuario es el verdadero autor del mensaje (autenti-
cacin).
Arquitectura
El mensaje SOAP (Simple Object Access Protocol)
Las funciones y utilidades que el paciente puede consultar en no ha sido alterado en trnsito.
el PoPeS, son procesos que estn definidos en mltiples sis-
temas clnicos. Para la construccin de las funciones, se reali- Si se ha alterado en el proceso, entonces la firma ya no coin-
z una abstraccin de estos procesos y se desarrollaron como cide con la clave y el mensaje original utilizado para crear la
servicios Web, que una vez publicados pueden ser consumi- clave (ver Figura 1).
dos por distintas aplicaciones.
Los Servicios Web representan la verdadera reutilizacin de Firma Area
Area Pblica DMZ
cdigo. Digital Servicios

El desarrollo orientado a objetos forma parte de un cambio


radical en el proceso de desarrollo de software. El desarrolla-
WS
dor ya no tiene que codificar cada funcin de una pieza de
software, simplemente accede a una interfaz que contiene el
cdigo subyacente. La interfaz es el elemento clave en el de-
WS
sarrollo de software basado en servicios, brindando acceso a Firewall
SSL
una coleccin de posibles funciones que pueden ser instancia-
das por la unidad de servicios (8). WS
En trminos prcticos, esto significa que realmente el tiempo
de trabajo de codificacin de una pieza de software se realiza
WS Repositorio
slo una vez. Despus de eso, el cdigo se convierte en un
Clnico
objeto que puede ser invocado sin necesidad de una nueva
codificacin.
La seguridad es otro gran factor de importancia en la adopcin Figura 1 Protocolo de seguridad
de una tecnologa SOA (9). La aplicacin se encuentra dividida en dos capas:
La implementacin de esta tecnologa sin la aplicacin de La primera capa es una aplicacin que se encuentra imple-
normas y protocolos de seguridad la convierten en una plata- mentada en la parte pblica del modelo tecnolgico y tiene
forma totalmente insegura, dado que los servicios Web utili- como fin servir de interfaz grfica de la aplicacin. En esta
zan protocolos de Internet para el envi y recepcin de mensa- capa encontramos las funciones que los usuarios pueden reali-
jes a travs de un navegador. En general los mensajes pasan zar, en forma de interfases java. En esta primera capa sola-
sin control a travs de un firewall, haciendo que los servicios mente se encuentran las piezas de software necesarias para
Web estn muy expuestos a las violaciones de seguridad, con- entablar una conversacin segura por intermedio de SSL, la
tenido e identidad. interfaz de usuario, las llamadas a los diferentes Web services
Dentro de las medidas de seguridad adoptadas se defini la y la encriptacin - desencriptacin XML.
separacin de ambientes tecnolgicos. Esta separacin consis- La segunda capa del modelo tecnolgico, se encuentra imple-
te en implementar dos servidores de aplicacin: un servidor mentada en la parte privada del modelo. Esta ubicada dentro
INFOLAC2008 - AAIM
2008 - Todos los derechos reservados

de la LAN del Hospital Italiano de Buenos Aires, y se comu- tes adems del sistema de acceso a las funciones del portal.
nica con los distintos modelos de informacin. Esta capa es la Para poder utilizar el sistema, los pacientes deben estar en el
responsable de manejar la lgica y los procesos. Aqu se pu- padrn del Hospital Italiano y registrarse en la pgina de ini-
blican todos los servicios Web que dan soporte a las funciones cio. El proceso de registracin consta de varios pasos que va-
de usuarios. lidan los datos ingresados con los datos existentes en el pa-
drn de personas (Master Patient Index), y a su vez requiere la
La implementacin del proyecto PoPeS se realiz utilizando
validacin de una cuenta de correo electrnico, y la genera-
elementos de Cdigo Libre (Open Source), en la capa de apli-
cin de una contrasea segura.
cacin se montaron servidores SUN con la versin del servi-
dor de aplicaciones GlassFish, y la aplicacin fue desarrollada
con lenguaje Java utilizando Netbeans como IDE de desarro-
llo (12). Adems se utiliz la tecnologa Hibernate como me-
canismo de comunicacin entre el modelo orientado a objetos
y el modelo relacional.
El sistema de informacin esta montados sobre un cluster de
servidores SUN con la versin Oracle 11g de base de datos.

Aplicacin y funciones

La aplicacin PoPeS contiene distintos tipos de funciones que


se obtienen de la abstraccin del sistema de informacin clni-
co.
El sistema permite desarrollar funcionalidades con diferentes
opciones segn se utilice el rol de usuario mdico (se obtiene
la visin del mdico operando desde la Historia Clnica Elec-
trnica) o utilizando el rol paciente (se accede a la funcionali-
dad a travs del Portal Personal de Salud). Figura 3- Pgina inicial del POPES
La pantalla de presentacin del PoPeS, es accedida desde el
Para ilustrar la reutilizacin de cdigo mediante el uso de ser-
sitio pblico del Hospital Italiano (HI). El paciente accede a la
vicios Web, se describir el proceso de visualizacin y gestin
aplicacin por intermedio de un banner que identifica la iden-
de frmacos desde el PoPeS. Esta funcin se desarrolla a mo-
tifica (Figura 2).
do de ejemplo y forma parte de una extensa lista de funciones
que interactan con el modelo clnico.
Por un lado tenemos al usuario mdico, operando la Historia
Clnica Electrnica. Desde el mdulo de prescripcin farma-
colgica de la Historia Clnica Ambulatoria administra la
prescripcin de medicacin para el paciente (Figura 4).
Por intermedio de este mdulo, el mdico prescribe, suspende,
modifica y receta la administracin de frmacos (creando cr-
ditos, en la farmacia interna, de ese frmaco para el paciente).

Figura 2 Pgina Principal del Hospital Italiano de Buenos


Aires

La pgina inicial del PoPeS (Figura 3) contiene bsicamente


un sistema genrico de noticias e informacin para los pacien-
INFOLAC2008 - AAIM
2008 - Todos los derechos reservados

piezas de software reutilizable e interoperable entre platafor-


mas.
La interoperabilidad es uno de los avances ms significativos
en entornos de software distribuidos. Su uso permiti compo-
ner piezas de software reutilizable y ensamblarlos para cons-
truir una nueva aplicacin que utiliza distintas fuentes de in-
formacin.
En nuestro caso en particular, la tecnologa result ser propi-
cia para el tipo de proyecto desarrollado, permitiendo la reuti-
lizacin de todos los objetos desarrollados en el modelo de
informacin clnico (HCE).
Se debe tener en cuenta que es necesario el diseo de una pla-
taforma tecnolgica apropiada para soportar las debilidades de
seguridad informtica que la tecnologa SOA contiene.
El Proyecto PoPeS tiene como objetivo brindar nuevas fun-
Figura 4 Mdulo de Indicaciones Farmacolgicas de la cionalidades clnicas a los pacientes en los prximos aos
Historia Clnica Electrnica del HI (visualizacin y carga de problemas; visualizacin de resulta-
dos de laboratorio y de exmenes complementarios; acceso a
bases de conocimiento orientadas a pacientes; sistemas de
comunicacin electrnica con profesionales tratantes, etc.).
Desde el PoPeS, el usuario paciente visualiza la lista de medi-
Todas estas aplicaciones tendrn una arquitectura orientada a
camentos y tratamiento farmacolgico indicado por el mdico.
servicios que reutilizarn las opciones ya desarrolladas para
La funcionalidad le permite conocer sus prescripciones, como los aplicativos clnicos y administrativos (Historia Clnica
as tambin solicitar, por intermedio de la aplicacin el envo Electrnica, Sistema de Farmacia, Sistema de Agendamiento,
de medicamentos a su domicilio (opcin delivery), siempre y etc.).
cuando tenga crditos de frmacos disponibles para consumir.
El desarrollo de este tipo de sistemas representa un desafo
Adems, puede obtener en lnea el stock disponible del medi- informtico importante respecto al sistema de seguridad re-
camento en las Farmacias internas del HI (Figura 5). querido y a la reutilizacin de datos presentes en el HIS
(Health Information System Sistema de Informacin en Sa-
lud) a travs de servicios. Web, pero su implementacin con
esta arquitectura genera beneficios significantes.

Referencias

[1] Brown AW, Carnegie-Mellon University. Software


Engineering Institute., Institute of Electrical and
Electronics Engineers. Component-based software
engineering : selected papers from the Software
Engineering Institute. Los Alamitos, CA: IEEE Computer
Society Press; 1996.
[2] Peltzer D. .NET & J2EE interoperability. New York:
McGraw-Hill/Osborne; 2004.
[3] Guest S. Microsoft.NET and J2EE interoperability toolkit.
Redmond, Wash.: Microsoft Press; 2004.
Figura 5 Gestin de Medicacin a travs del POPES [4] Pulier E, Taylor H. Understanding enterprise SOA.
Greenwich, Conn.
London: Manning ;
Pearson Education [distributor]; 2006.
Conclusin
[5] Gokhale A, Kumar B, Sahuguet A, editors. Reinventing
the Wheel? CORBA vs. Web Services. The Eleventh
En los ltimos tiempos cada vez son mas las empresas que International World Wide Web Conference; 2002;
comenzaron a utilizar la tecnologa SOA emergente para im- Honolulu, Hawaii, USA.
plementar servicios Web como una forma estndar de disear
INFOLAC2008 - AAIM
2008 - Todos los derechos reservados

[6] Gonzalez Bernaldo de Quiros F, Gomez A, Luna D, Mar- [11]Wang HA, Wang YZ, Wang S. Digital signature
tinez M, Soriano E, Staccia G, et al., editors. Migracin a technology for health care applications. South Med J2001
plataforma web de una Historia Clnica Electrnica. Mar;94(3):281-6.
CBIS'2004 - IX Congresso Brasileiro de Informtica em
[12]GlassFish. Open Source Application Server. 2008 [cited
Sade; 2004; Ribeiro Preto-SP. Brasil.
2008 Junio 2008]; Available from:
[7] Gambarte ML, Osornio AL, Martinez M, Reynoso G, Lu- https://glassfish.dev.java.net/.
na D, de Quiros FG. A practical approach to advanced
terminology services in health information systems. Stud
Health Technol Inform2007;129(Pt 1):621-5.
Direccin para correspondencia
[8] OW2 Consortium. 2008 [cited 2008 Junio 2008];
Available from: www.objectweb.org. Adrin Gmez.

[9] Madiajagan M, Vijayakumar B, editors. Interoperability in


Component Based Software Development. Proceedings of rea de Desarrollos Biomdicos
World Academy of Science; 2006.
Dpto. de Informacin Hospitalaria
[10]Turner M, Zhu F, Kotsiopoulos I, Russell M, Budgen D,
Hospital Italiano de Buenos Aires
Bennett K, et al., editors. Using Web service technologies
to create an information broker: an experience report. adrian.gomez@hospitalitaliano.org.ar
ICSE 2004 Proceedings 26th International Conference on
Software Engineering; 2004.

View publication stats

You might also like