Microservicios y plataformas abiertas en salud - JIAP 2018
1. Nuevas tendencias de plataformas
abiertas, microservicios y estándares
de sistemas de información en salud
Ing. Pablo Pazos Gutiérrez
pablo.pazos@cabolabs.com
2. www.CaboLabs.com 2
Agenda
• ¿Qué buscamos de los SIS?
• Problemas / Retos / Requerimientos
• Posibles soluciones mirando hacia
– microservicios
– plataformas abiertas
– estándares
3. www.CaboLabs.com 3
¿Qué buscamos de los SIS?
• Los SIS son herramientas, no son el fin
– su rol es apoyar los procesos clínicos con TICs
• Uso primarios
– apoyar al clínico en el proceso de toma de decisiones
– mejorar la calidad asistencial
• Usos secundarios
– salud pública / epidemiología
– educación e investigación
– definición de políticas
– gestión, facturación
– apoyo médico-legal
• REF: ISO 18308
4. www.CaboLabs.com 4
Problemas / Retos / Requerimientos
• Seguimos diseñando sistemas con visión monolítica
• El sistema debe ...
– tener todos los datos en su base de datos
– tener una sola base de datos
– encargarse de gestionar toda la información
– encargarse de toda la funcionalidad
– encargarse de controlar todos los flujos de datos
– integrarse con otros sistemas como una excepción o
requerimiento particular
5. www.CaboLabs.com 5
Problemas / Retos / Requerimientos
• Sistemas de Información Hospitalarios
– HCE, Pacientes, RRHH, Admisión, RIS, LIS, Farmacia, ...
– Cada uno tiene copias de la BD de pacientes y médicos.
– HCE y Farmacia tienen copias de la BD de medicamentos.
– Cada uno utiliza códigos locales, mapeos son necesarios.
– No existe un solo software que haga todo.
– La integración es un requerimiento, no una excepción.
• Hoy
– Sistemas ineficientes
– Arquitecturas poco flexibles
– Existe gran dependencia tecnológica y del proveedor
– Estándares brillan por su ausencia
6. www.CaboLabs.com 6
Problemas / Retos / Requerimientos
• Algunas buenas prácticas
– evitar duplicación de datos y la necesidad de sincronizado
– evitar sistemas de codificación locales
– alinearnos a estándares (códigos, mensajería, datos, protocolos)
– software más pequeño dedicado a un área específica
– integración como parte del diseño
– otras características particulares de cada proyecto o cliente (80/20)
– ...
16. www.CaboLabs.com 16
Microservicios
• Estilo arquitectónico dentro de SOA
• Contienen las cuatro capas o menos
• Pueden estar focalizados en una de ellas
• Son sistemas mínimos y específicos
• Se encargan de gestionar un área
• Mayor flexibilidad para escalar que en arquitecturas
monolíticas
• Menor acoplamiento entre componentes que en
arquitecturas monolíticas
17. www.CaboLabs.com 17
Microservicios
• Capas de software como microservicios
– especialización funcional (ej. Persistencia, Lógica de Negocios, ...)
– especialización por área (ej. HCE, pacientes, RRHH, ...)
• Debemos
– definir interfaces hacia el exterior: Servicios
– necesita o no Presentación
– Lógica de Negocios especializada por área
• ¡Intentemos diseñar algunos microservicios!
18. www.CaboLabs.com 18
Microservicios
• Microservicio:
– repositorio de información clínica
• Persistencia:
– solo información clínica
– sigue estándares ej. openEHR, CDA, ...
• Lógica de Negocios:
– procesamiento, validación, consulta
– solo de información clínica
• Servicios:
– guardar documentos clínicos
– búsqueda de datos clínicos
• Presentación:
– gestión de HCE
– no es para usuarios finales
Persistencia
Lógica de Negocios
Presentación Servicios
19. www.CaboLabs.com 19
Microservicios
• Microservicio:
– índice maestro de pacientes
• Persistencia:
– solo información de pacientes
– sigue estándares ej. openEHR, HL7, ...
• Lógica de Negocios:
– procesamiento, validación, consulta
– solo de información demográfica
• Servicios:
– guardar pacientes
– búsqueda de paciente
– detección de duplicados
• Presentación:
– gestión, ej. resolver duplicados
Persistencia
Lógica de Negocios
Presentación Servicios
21. www.CaboLabs.com 21
Registro clínico de
medicina general
Microservicios
Registro clínico
de traumatología
Servidor Clínico
EHR
Índice Maestro
de Pacientes
• Arquitectura lógica
– interdependencias solo a nivel de servicios
– contratos entre componentes
22. www.CaboLabs.com 22
Registro clínico de
medicina general
Microservicios
Registro clínico
de traumatología
Servidor Clínico Índice Maestro
de Pacientes
• Middleware
– para resolver inconsistencias entre componentes
Middleware
23. www.CaboLabs.com 23
Registro clínico de
medicina general
Microservicios
Registro clínico
de traumatología
EHR IMP
• Arquitectura física
– depende de la demanda de cada componente
Middleware
IMP IMPEHR
LB LBRRHH
ADM
25. www.CaboLabs.com 25
Plataformas Abiertas
• Arquitectura
• Modelos de datos
• Procesamiento / Flujos de datos
• Modelos de mensajes
• Protocolos de comunicación
• Interfaces de servicios
• Cumplimiento de estándares
– declaraciones de conformidad
• Todo especificado, publicado y de libre acceso
– el ejemplo más claro es Internet y sus estándares (IETF y W3C)
27. www.CaboLabs.com 27
Estándares
• Salud
– ISO TC 215 Health Informatics
– openEHR Modelo de Información Clínica
– HL7 Modelos de Mensajería
– DICOM Comunicación y Almacenamiento de Imágenes Médicas
– SNOMED CT Terminología Clínica
• Protocolos de comunicación
– TCP, MLLP, HTTP, SOAP, ...
• Técnicos
– XML, JSON, HTML, ...
28. www.CaboLabs.com 28
Conclusión
• Plataformas abiertas de microservicios pueden ser
plataformas para la innovación y promover al competencia.
• Permiten especialización de las empresas, soluciones y
productos, generando un ambiente de experiencia
distribuida.
• La estandarización permite comparar alternativas y
cambiar si es necesario gracias a la mayor independencia.
29. www.CaboLabs.com 29
Conclusión
• Permite escalar bajo demanda, creando un sistema más
robusto, y evitando puntos de falla únicos.
• Mayor seguridad, es más tolerante a ataques, accesos no
autorizados se pueden aislar, y podemos poner
microservicios como honeypots.
• Permite que nuevos jugadores entren al mercado, y
distribuir mejor las ganancias.
• Facilita app stores.