La alianza UML & HL7 Josep Vilalta OMG-Certified UML Professional HL7-Certified CDA Rev.- 2.1 2008 FORUM CIS 2008 De les dades cap el coneixement jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 1 Qué es UML Unified Modeling Language “UML”, es una notación patrocinada por el Object Management Group (OMG). Es un estándar para definir, organizar y visualizar los elementos que configuran la arquitectura de un sistema. jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 2 Qué es HL7 Organización de Desarrollo de Estándares” para el ámbito sanitario, sin fines de lucro, acreditada por ANSI. Opera a nivel internacional, su misión es proveer estándares para los dominios: clínico, asistencial, administrativo y logístico. Para lograr una interoperabilidad real entre los distintos sistemas de información en el área de la salud jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 3 Qué es UML UML es un lenguaje visual orientado al modelado de sistemas. Facilita un vocabulario controlado con reglas y símbolos para que todos los agentes de un proyecto eviten ambigüedades y dispersión conceptual. jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 4 Reference Information Model (RIM) jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 5 De dónde viene UML Harel Meyer Pre Condiciones Post Condiciones Diagramas de Estado Gamma, et al Frameworks y patrones HP Fusion Booch Descripción de operaciónes y Numeración de mensajes Método de Booch Embley Rumbaugh Clases de Singleton y Vistas de alto nivel OMT Jacobson OOSE Odell Clasificación jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement Wirfs-Brock Responsabilidades 6 A dónde va … UML 2.1 Draft UML 2.0, Agosto ‘03 UML 1.3 UML RTF recomienda draft final UML 1.3, Junio ‘99 OMG Aceptación, Noviembre ’97. UML estándar oficial de notación de modelado de software UML 1.1 Propuesta final OMG, Septiembre ‘97 OMG, Enero ´97 Propuesto como estándar UML-partners UML 0.9 Web - Junio ´96 OOPSLA ´95 Otros Métodos UML 1.0 Unified Method 0.8 Método de Booch OMT OOSE Años 80 – 90 Guerra de notaciones y métodologías jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 7 Compartir conocimiento Con la notación UML definimos la representación abstracta de tipos de objetos y eventos de la realidad Cualquier cosa que puede ser nombrada y descrita Concepto Atributo 1: Atributo 2: Atributo 3: Entidad Actuación Atributo A: Atributo B: Atributo C: Atributo P: Atributo Q: Atributo R: jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 8 Adaptado de: Todo lo real es pensable. Jorge Wagensberg (El País 10.10.2001 Tribuna Circuito Científico) Tractatus logico-philosophicus. Ludwig Wittgenstein. Alianza Universidad 1973 Un lenguaje es un mapa de la realidad sólo es capaz de expresar hechos Realidad Pensamiento: combinación de Sujeto y Lenguaje Pensador 1 - +es pensable por {hipótesis} constraints +piensa {tesis} 0..* esPensable: boolean = SI esRepresentable: boolean = SI existe: boolean = SI tipoDeLenguaje: char = UML +contiene 1..* {Coherencia} {Usabilidad} {Concordancia} {Completitud} {Inteligible} {Comunicable} Hipótesis: Todo lo real es pensable Hechos: combinación de Objetos y Eventos 1..* +condiciona Mundo {axioma} +está condicionada por 1 {axioma} +forma parte de 1 El mundo es la totalidad de los hechos, no de las cosas Tesis: Todo lo pensado es real Los límites del mundo son los límites del lenguaje y viceversa jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 9 Realidad Abstracción Modelo + Reglas 10 jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 10 Qué es una Ontología Médica Esquema orientado a clasificar y consensuar el alcance y el significado de todos los conceptos relevantes en un dominio con una escala de abstracción variable. Rol Relacionado 0..* 0..* 1 asume Entidad 0..* 0..1 habilita Organización Forma de vida Material Punto actuación Documento Actuació Actuación Relacionada 1 Rol 0..* 0..* actúa como 1 Participante juega Paciente Médico de Urgencias Médico responsable Médico de guardia Muestra de análisis 1 realiza 0..* 1 0..* 1 Actuació Actuación reune Autor Modificador Certificador Consultor Operador Habilitador Autorizador Beneficiario Autentificador Receptor Emisor jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement Ingreso Derivación Transporte Suministro Procedimiento Condición Consentimiento Observación Medicación Acto clínico Acto económico 11 Rol Relacionado 0..* 0..* 1 asume Entidad 0..* 0..1 habilita Organización Forma de vida Material Punto actuación Documento Actuació Actuación Relacionada 1 Rol 0..* 0..* actúa como 0..* 1 Participante juega Paciente Médico de Urgencias Médico responsable Médico de guardia Muestra de análisis 1 realiza 1 0..* 1 Actuació Actuación reune Autor Modificador Certificador Consultor Operador Habilitador Autorizador Beneficiario Autentificador Receptor Emisor jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement Ingreso Derivación Transporte Suministro Procedimiento Condición Consentimiento Observación Medicación Acto clínico Acto económico 12 actúa como asume Entidad 0..* 0..1 habilita Rol realiza 0..* 1 Participante juega 1 0..* Actuació Actuación reune jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 13 Reference Information Model (RIM) jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 14 Diagrama de estructura Paquetes Diagrama de función Clases Composición Casos de Uso Objetos Componentes Actividad Estados Despliegue Diagrama de interacción Secuencia Comunicación Interacción Global jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement Ciclo de Tiempo 15 Casting de Actores de un Proceso Realizar Orden Médica Peticionario Seleccionar Exploración Identificar Paciente Realizador Subsitema Admisión Publicar Informe Realizar Informe Consultar Informe Actualizar HCE Subsistema Exploraciones Paciente jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 16 Granularidad de un proceso Realizar Informe <<Incluye>> <<Incluye>> Seleccionar Item Exploración Realizador <<Incluye>> Identificar Paciente Seleccionar Imagen Diagnóstica <<Extiende>> <<Incluye>> <<Incluye>> <<Incluye>> Generar Cod. Anonimato Procesar Entrada <<Incluye>> Realizar Firma Entrar Item Informe Seleccionar Macro jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 17 Escenario de usabilidad Flujo Principal 1. Usuario activa editor de informes. 2. Usuario identifica Paciente con el CU Identificar Paciente. 3. Sistema valida requisitos del Paciente. 4. Usuario selecciona exploración a informar. 5. Sistema muestra datos por defecto: repositorio imágenes. 6. Usuario selecciona plantilla. 7. Sistema asigna macros al informe. 8. Sistema procesa texto entrado. jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 18 Normalización de un escenario :Realizador :Editor Informes :Paciente :Parámetros Activa Identifica Paciente Carga datos Paciente Valida Requisitos Carga datos por defecto Procesa entradas Firma informe Genera informe clínico CDA jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement :Informe 19 Estados de una Actuación abortar Abortada evaluar evaluar finalizar Suspendida abortar Aparcada suspender aparcar evaluar reactivar evaluar evaluar liberar reiniciar Nueva Activa activar cancelar crear completar Cancelada anulación Completada completar activar obsolescencia Anulada Obsoleta jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 20 Porqué usar UML (1) 1. Mejora nuestro nivel de comunicación formal. 2. Abordamos la complejidad con una documentación minimalista. 3. Desarrollamos procesos/productos con una mayor fiabilidad y calidad. jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 21 Porqué usar UML (2) 4. El impacto de nuestras decisiones sobre un proceso/producto es más visible. 5. Podemos definir, organizar y compartir conocimiento. 6. Nuestro esfuerzo de especificación es más eficiente. jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 22 Normalización de sistemas de información clínica Actor2 Actor 1 «Proposito» Actor3 «controla» «realiza» «recibe» Propósito «consigue» «Documento Clínico CDA» ACTUACIÓN Evento 1 «es modificado por» «genera» «es consultado por» «Documento de negocio» «Informacion» Objeto consumido Objeto consultado jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement Objeto generado Rol Participante Un Rol define las capacidades de una Entidad y le habilita para realizar Actuaciones (una manera de establecer relaciones con otras entidades). Un Participante identifica a una Entidad cuando realiza una Actuación concreta con el propósito de satisfacer las responsabilidades del Rol que le habilita para actuar . jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 24 Normalización de sistemas de información clínica «Proposito» Médico de servicio «controla» Administrativo de Recepción Administrativo de informática «realiza» Realizar de la primera visita médica Paciente «recibe» «realiza» «consigue» «Documento Clínico CDA» «genera» Primera visita Visita programada «genera» «es consultado por» «es consultado por» «es modificado por» «Documento Clínico CDA» «Documento Clínico CDA Autorización Hoja de Ingreso «Documento CDA» «genera» «genera» Historial Copia de los Informes médicos «Documento Clínico CDA» Información de RX o otras pruebas «Documento Clínico CDA Planificación «Documento Clínico CDA» Información del primera dia de tratamiento jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement ¿Vocabulario clínico universal? HistoriaClínica Clínica Historia 789 789.0 Otros síntomas que afectan el abdomen y la pelvis Dolor abdominal 789.01 Servidorde de Servidor TerminologíaMédica Médica Terminología 789.03 789.06 Dolor abdominal en el cuadrante superior derecho Dolor abdominal en el cuadrante inferior derecho Dolor abdominal epigástrico Fuentesde de Fuentes ConocimientoClínico Clínico Conocimiento Documento Documento Clínico Clínico CatálogosUMLS UMLS Catálogos HL7 HL7 jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 26 Interoperabilidad semántica Capacidad de compartir información relevante entre sistemas heterogéneos a nivel del reconocimiento de los conceptos clave formalmente definidos para un dominio Capacidad de procesar de manera automática un conocimiento compartido Es esencial para intercambiar información sanitaria y potenciar los sistemas de soporte a la decisión clínica jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 27 ¿Compartir? Concepto clínico de cardiopatía isquémica ¿Cómo un signo, síntoma, síndrome, o enfermedad? jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement Ontología médica cd Logical View PuntoDeActuación Ubicación PuntoDeAtenciónSanitaria 1 +pertenece a 1..* +dispone de +contiene 0..* Box Establecimiento Consultorio 1 +forma parte de Cama UnidadFuncional 1..* +dispone de 1 +forma parte de jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement Procesos y Productos jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 30 Ontología médica cd Logical View Entidad Rol 1 +habilita +asume Agente Persona Participante 1 +juega +actúa 0..* 0..* Agente Autor Organización Paciente Actuación 1..* +es realizada por +realiza 1 Suj eto Administrativ o AsignaciónPuntoAtenciónSanitaria jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement Episodio Ontología médica Actuación Episodio +pertenece a Rol Administrativo Participante 1 +juega como +actúa de Ubicación +pertenece a 1 Autor +contiene 1 +realiza 1 1..* +contiene Actuación AsignaciónPuntoAtenciónSanitaria PuntoDeAtenciónSanitaria 1..* +dispone de +asigna +recibe 0..* PuntoDeActuación 1 +es asignado en 1 1 Participante Rol Paciente 1 1 +es realizada por 1 +juega como +actúa de Sujeto 1 1 +es dirigida a Cama Establecimiento 1 +forma parte de +dispone de UnidadFuncional 1..* 1 +forma parte de Box Consultorio jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement Triangulación Notación Herramientas Metodologías jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 33 UML + CASE + Metodología, para saber (1)… 1. Qué aspectos esenciales hay que modelar (desde un esbozo a un plano detallado). 2. Qué diagrama es el más apropiado para representar una vista del modelo (estructura y/o función). 3. En qué proceso de proyecto (Análisis, Diseño, Implementación, Testing, etc.), hay que realizar un determinado diagrama, y quién participará en su elaboración (Roles de proyecto). jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 34 UML + CASE + Metodología, para saber (2)… 4. Qué escala de abstracción y qué nivel de dedicación hay que aplicar a un diagrama en cada fase de proyecto (desde el estudio preliminar en adelante). 5. Cómo definimos un modelo a través de distintas vistas de arquitectura: estructura, procesos y Casos de Uso. 6. Cómo delimitamos el alcance de un proyecto en tiempo, coste, procesos y producto resultante. jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 35 Organizar la experiencia • Realizar modelos en base a la experiencia de los usuarios con el soporte de patrones. • Procesar los modelos para generar una arquitectura de aplicaciones en base a componentes bien alineados con los procesos de negocio. jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 36 Arquitectura basada en modelos • Análisis y diseño independiente de plataforma jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 37 Vocabulario controlado • Mantener la trazabilidad entre los artefactos de modelado: desde la concepción, hasta la formalización, construcción, el despliegue, y la explotación de los componentes de software. Usuarios Datos Coste Arquitectura Procesos jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 38 Testing & Certificación • Comprobar de manera fehaciente que un entregable es coherente y completo en referencia al propósito para el que ha sido creado. • Es usable dentro de la cadena de valor de los Actores implicados e involucrados con el sistema. jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 39 Nuevas coordenadas Comprensión visual de las coordenadas Espacio – Tiempo – Información, que condicionan el dominio restringido de un sistema. • Espacio.- Existen unos OBJETOS capaces de colaborar para cumplir un propósito. • Tiempo.- Ocurren una serie de EVENTOS dentro de una secuencia acotada por escenarios. • Información.- Los OBJETOS y EVENTOS producen HECHOS relevantes, registrables y comunicables. jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 40 Conclusiones • UML es un lenguaje visual para modelar sistemas (definir, organizar, visualizar). • Facilita un vocabulario controlado con reglas y símbolos (gramática y notación). • Evita las ambigüedades y la dispersión conceptual de todos los agentes sobre un proceso o un producto. • • • • • Mejora nuestro nivel de comunicación formal. Abordamos la complejidad con una documentación minimalista. Desarrollamos procesos/productos con una mayor predictibilidad y calidad. El impacto de nuestras decisiones sobre un producto es más visible. Podemos definir, organizar y compartir conocimiento. • Con UML podemos construir una arquitectura conceptual orientada a clasificar y consensuar el alcance y el significado de todas las entidades y actuaciones relevantes en los distintos dominios de interoperabilidad HL7 (Ontologías Médicas). 41 jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 41 Los conceptos son registros de la realidad. Abren los caminos de lo pensable. Condicionan nuestra manera de ver las cosas. Son factores de cambio de nuestra realidad. Reinhart Koselleck 42 jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 42 Moltes gràcies per la seva atenció jvilalta@vico.org jvilalta@vico.org FORUM CIS 2008 De les dades cap el coneixement 43