INTRODUCCIÓN AL PROCESO UNIFICADO Julio Ariel Hurtado El proceso Unificado de desarrollo Requisitos Proceso Unificado Producto UML Centrado en la Arquitectura Dirigido por los casos de uso Iterativo e incremental El proceso Unificado, Julio Ariel Hurtado Alegría De personas a trabajadores Los roles no so npuestos de trabajo Especificadores de casos de uso Ingeniero de componentes (Trabajadores) PEDRO El proceso Unificado, Julio Ariel Hurtado Alegría (Personas) EL PU desde dos puntos de vista Gerencial: el proyecto está formado por cuatro fases: inicio, elaboración, construcción y transición. Técnico: el proyecto está formado por los flujos de trabajo fundamentales: captura de requerimientos, análisis, diseño, implementación y pruebas. Unión de los dos puntos de vista: La iteración. El proceso Unificado, Julio Ariel Hurtado Alegría El proceso Unificado El proceso Unificado, Julio Ariel Hurtado Alegría FASES EL PROCESO UNIFICADO Ciclo de vida del Proceso Unificado El proceso Unificado, Julio Ariel Hurtado Alegría Ciclo de vida del Proceso Unificado I Pr A&D R Inicio Elaboración Objetivos (Vision) Viabilidad Construcción Arquitectura Factibilidad Transición Capacidad Operacional Inicial Release del Producto tiempo Proceso de Gestión de Proyectos Proceso de Ingeniería Inicio Elaboración Construcción Transición Disciplinas Procesos de Soporte Gestión de Requisitos Planificación de Proyectos Monitoreo y control de proyectos Aseguramiento de Calidad Medición y Análisis Gestión de la Configuración Gestión de Acuerdo Con proveedores Verificación Análisis y Diseño Validación Implementación y pruebas Desarrollo de Requisitos EL PROCESO UNIFICADO FLUJOS DE TRABAJO FUNDAMENTALES El ejemplo a seguir … Nombre del Proyecto: SACPEDIATRA (Sistema de Administración de Consultas Pediátricas) Cliente del Proyecto: Centro Departamental del Niño Metas del proyecto: El Objetivo de este proyecto es desarrollar un sistema que permita apoyar el proceso de toma de decisiones para la entrega de dosificaciones, recomendaciones o cuidados con la enfermedad y los posibles medicamentos para su tratamiento, presentación de los informes mensuales y cuentas de cobro a las diferentes entidades, garantizando la respectiva presentación de una forma rápida. Oportuna, eficaz y acertada del servicio médico del paciente. El proceso Unificado, Julio Ariel Hurtado Alegría Entendiendo las iteraciones Requisitos (0) Comprensión del Problema i++ Requisitos (i) i++ Pruebas (i) Implementación(i) Análisis(i) Diseño(i) El proceso Unificado, Julio Ariel Hurtado Alegría Flujo de trabajo: Requisitos(0) comprensión del problema El proceso Unificado, Julio Ariel Hurtado Alegría Identificar Requisitos Candidatos (Usuario) A continuación se realiza un listado no formal de las características que debe tener el sistema según la descripción del cliente, para nosotros el cliente es un Pediatra: Realizar un sistema que ayude al médico pediatra en la consulta. Administrar el banco de datos (historia clínica, medicamentos, enfermedades, recomendaciones) base de datos, es decir poder actualizar, eliminar, adicionar, modificar y realizar copias de seguridad Permitir seleccionar que medicamento es más apropiado, según el registro clínico del paciente Proporcionar las diferentes contraindicaciones de los medicamentos y los respectivos cuidados que el paciente debe tener con la enfermedad diagnosticada Proporcionar la dosificación del medicamento dependiendo del peso del paciente Generar los registros individuales de procedimientos de salud (RIPS) ... El proceso Unificado, Julio Ariel Hurtado Alegría Comprender el Contexto del Sistema Actores de negocio Paciente: Representa un niño menor de 12 años y a su tutor, los que requieren de una atención médica especializada en pediatría para el niño. EPS: Entidad Promotora de Salud que remite pacientes que requieren el servicio del pediatra. Trabajadores Secretaria: Es la persona encargada de asignar las respectivas citas y realizar las cuentas de cobro. La misma persona realiza el mismo trabajo para otros especialistas. Pediatra: Es la persona especializada quien atiende los pacientes, registra todos sus datos (historia clínica, diagnóstico y formulación) Auxiliar: Es la persona encargada de transcribir y validar los RIPS. El proceso Unificado, Julio Ariel Hurtado Alegría Modelo de casos de uso de negocio Consultorio Pediátrico Cons ultaP ediátric a P ac iente (fro m Ca so Uso Ne g o ci o ) (fro m A cto re sNe g o ci o ) S oli c it arRegis t ros EPS (fro m Ca so Uso Ne g o ci o ) (fro m A cto re sNe g o ci o ) El proceso Unificado, Julio Ariel Hurtado Alegría Realizando los caso de uso de negocio : RIPs FormatoMin : EPS : Pediatra SolictaRIPs genera EntregaRIPs SolicitaRecibosCobro EntregaRecibosCobro El proceso Unificado, Julio Ariel Hurtado Alegría El Modelo Conceptual Paciente nombres apellidos identificacion tipoIdentificacion sexo fechaNacimiento procedencia telefono direccion nombrePadre Madre nombre apellidos identificacion fechaNacimiento Consulta fecha motivo enfermedadActual edad unidadEdad Medicamento idMedicamento nombreMedicamento Posologia idPosologia dosificacion AntecedentePaciente pesoAlNacer t allaAlNacer alimentacion vacunas desarrollo anormalidad patologías hospitalizacion mot ivoHospitalizacion formaNacimiento t iempoGestacion c ompliaciones antecedentesFamiliares HistoriaClinica numero fecha Conducta remision terapia control comentarios ExamenFisico peso talla perimetroCefalico tensionArterial temperatura frecuenciaCardiaca frecuenciaRespiratoria observaciones Organo codigo nombre Diagnostico nombreEnfermedad codigoEnfermedad RIP idRIP numeroAutorizacion tipoDiagnosticoPrincipal RangoPosologia ValorInicio ValorFinal dosificacion tipoRango AntecedenteMadre gravidez partos cesareas abortos ExamenOrgano estado EPS idEPS nombreEPS RecomendacionDiagnóst ico idRecomendacion descripcion RecomendacionMedicamento idRecomendacion descripcion edadMinima pesoMinimo El proceso Unificado, Julio Ariel Hurtado Alegría presenta tiene AntecedentePaciente Paciente Madre 1 1 presenta 1 tiene 1 pertenece AntecedenteMadre 1 RecomendacionDiagnóstico HistoriaClinica 0..* 1 EPS 1 incluye presenta 1..* Diagnost ico 1..* genera genera 1 Consulta RIP genera 1. .* 1 incluye Conducta requiere 1. .* incluye Medicamento Posologia ExamenFisico 1 incluye pres enta 0..* * tiene * El proceso Unificado, Julio Ariel Hurtado Alegría RecomendacionMedicamento RangoPosologia Organo ExamenOrgano corresponde 1 Listado de las funciones del sistema REFERENCIA R1 R1.1 R1.2 R1.3 R1.4 FUNCION CATEGORÍA Administrar historias clínicas Consultar historia clínica Registrar datos paciente Actualizar datos paciente Registrar datos de la madre ... El proceso Unificado, Julio Ariel Hurtado Alegría Evidente Evidente Evidente Evidente Atributos del sistema C a ra c te rís tic a D e s c rip c ió n W in d o w s 9 8 /2 0 0 0 /M e /X P Jav a F u n c io n e s A fe c ta d a s T odas T odas O b lig a to ria / O p c io n a l O b lig a to ria O b lig a to ria S istem a O p e ra tiv o L e n g u a je d e p ro g ra m a ció n S istem a d e g e stió n d e b a se s d e d a to s M e táf o ra d e in te rf az d e U su a rio m yS Q L T odas O b lig a to ria In te rf a z G rá fic a d e U su a rio (G U I) T odas e x c e p to o c u lta s O b lig a to ria C o lo re s su a v e s g rise s/b la n c o /n e g ro la s O p c io n a l L o s lista d o s d e b e n f o rm a to x ls(E x c e l) a p a re c e r en E l f o rm a to d e lo s R IP S d e b e c o rre sp o n d e r a l f o rm ato su m inistra d o p o r M in sa lu d (V e r a n ex o X X X ) T o le ra n cia a f allo s F lex ib ilid a d S i el sistem a f alla , se d e b e te n e r u n re g istro d e se g u rid a d d e la c o n su lta e n trám ite . E l siste m a d e b e rá se rv ir d e b a se p a ra la c re a c ió n d e o tro s siste m a s e n d o m in io s sim ila re s(c o n su lto rio s m é dic o s) R6 O b lig a to ria R 6 .1 O b lig a to ria R 2 .1 , R 2 .3 O b lig a to ria T odas O p c io n a l El proceso Unificado, Julio Ariel Hurtado Alegría Flujo de trabajo: Requisitos (i) Encontrar actores y casos de uso •Esbozo del modelo de casos de uso •Glosario Analista Priorizar casos de uso Estructurar el modelo de casos de uso •Descripción de la arquitectura Arquitecto Detallar un caso de uso •Caso de uso detallado Prototipar una interfaz de usuario Diseñador IU Prototipo de Interfaz De Usuario El proceso Unificado, Julio Ariel Hurtado Alegría Modelo de Caso de uso Estructurado Modelo de casos de uso AccesarSistema Usuario AtenderConsulta Pediat ra AdministrarMedicamentos AdministrarDiagnóstico GenerarRIPS Secretaria Facturar El proceso Unificado, Julio Ariel Hurtado Alegría Descripción resumida de un caso de uso Caso de uso Atender Consulta Actores Pediatra Prioridad Alta Referencias Cruzadas R3, R1.1, R1.3, R1.5, R6.5 Descripción Este casos de uso se inicia cuando el Pediatra le solicita al sistema la atención de un paciente. El sistema le permite al Pediatra registrar los datos del paciente si no existen y de la consulta, y según el diagnóstico médico proporciona de manera automática las conductas recomendadas. Para finalizar la consulta el sistema registra el RIPS correspondiente a la atención médica e imprime la fórmula médica, junto con las recomendaciones médicas las cuales serán entregadas al paciente. El proceso Unificado, Julio Ariel Hurtado Alegría Descripción de la Arquitectura Nº Pregunta Impacto significativo para la arquitectura, ¿se van a necesitan muchas clases?, ¿Requiere el manejo de funcionalidad para persistencia? 1 2 ¿Se obtiene información significativa con poco esfuerzo? Presenta riesgos técnicos, presenta funcionalidad muy compleja 3 Necesita mucha investigación, es un área nueva de tecnología 4 5 Representa una línea primaria para el proceso de negocio Genera ingresos directos o disminución en los costos de operación 6 El proceso Unificado, Julio Ariel Hurtado Alegría Aplicada a SACPEDIATRA Evaluación Preguntas 6 Nº Caso de uso 1 2 3 4 5 6 1 Atender Consulta 10 7 10 10 10 10 57 2 Administrar Medicamentos 6 7 7 10 6 8 45 3 Administrar Diagnósticos 6 7 7 2 4 2 28 4 Generar RIPS 6 7 7 2 8 10 40 5 Acceder el Sistema 2 2 2 2 2 2 12 Facturar 4 4 4 4 5 El proceso Unificado, Julio Ariel Hurtado Alegría 5 Total Evaluación 26 Descripción detallada de los caso de uso ID: Nombre: Autor: Fecha de creación: CU1 Atender Consulta Julio Ariel Hurtado Actualizado por: 22/11/2002 Ultima actualización: Actor: Descripción: Precondiciones: Pediatra Este caso de uso se inicia cuando el Pediatra le solicita al sistema la atención de un paciente. El sistema le permite al Pediatra registrar los datos del paciente si estos no existen y los datos de la consulta, y según el diagnóstico médico proporciona de manera automática las conductas recomendadas. Para finalizar la consulta el sistema registra el RIPS correspondiente a la atención médica e imprime la fórmula médica, junto con sus recomendaciones, las cuales son entregadas al paciente. Ninguna El proceso Unificado, Julio Ariel Hurtado Alegría Poscondiciones: Consulta nueva registrada Prioridad: Alta Frecuencia de uso: 16 por día Flujo normal de eventos: Pediatra 1. Solicita iniciar una atención a consulta. Sistema 2. Solicita identificación del paciente. 3. Introduce información del paciente. 4. Obtiene historia clínica y despliega información del paciente. Extends (Crear Historia Clínica) 5. Solicita Registrar los datos de consulta 6. Include (Caso de uso Registrar Datos Consulta) 7. Obtiene posibles conductas 8. Selecciona conducta 9. Almacena RIPS 10. Imprime conducta El proceso Unificado, Julio Ariel Hurtado Alegría Flujos alternativos: FA1 extends(Caso de uso crear historia clínica) El paciente no tiene historia clínica registrada en evento 4 FA2. extends( Caso de uso ver consultas anteriores) En cualquier momento el pediatra necesita ver información del paciente en consultas anteriores. FA3 Operación abortada El pediatra abandona en cualquier momento la operación FA4 Guardar Historia Clínica Actualizada El pediatra modifica historia clínica en cualquier momento de la operación Excepciones: Incluye: Puntos de extensión Requerimientos especiales: Suposiciones: Notas y usos: Fallo en la comunicación con la BD. Desplegar error de comunicación con la BD Fallo en la comunicación con el motor de inferencia Desplegar error comunicación con el motor de inferencia Caso de uso Registrar Datos consulta Evento 4. Caso de uso crear historia clínica Evento *. Caso de uso Ver Consultas Anteriores Para realizar el evento 7 el sistema deberá apoyarse en un motor de inferencia que permita tomar la decisión de cuales son las conductas recomendadas. Ninguna Ninguna El proceso Unificado, Julio Ariel Hurtado Alegría Prototipo de Interface de Usuario El proceso Unificado, Julio Ariel Hurtado Alegría < < ex tends > > CrearH is toriaClinic a < < ex tends > > A tenderCons ulta V erC ons ultas A nteriores < < inc lude> > R egis trarD atos C ons ulta A dic ionarM edic am ento < < ex tends > > < < ex ten ds > > A dm inis trarM edic am entos A c tual iz arM edi c am ento < < ex tends > > < < ex tends > > E lim inarM edic am entos P ediatra Lis tarM edic am entos < < e x tend s > > A dic ionarDiagnos tic o < < ex tends > > A dm inis t rarD iag nós tic o Ac tual iz arD iagnos t ic o < < ex tends > > < < ex tends > > E lim inarD iagnos tic o U s uario A c c es arS is t ema Lis tarD iagnós tic os < < ex tends > > G enerarRIP S Confi gurarF or matoRIP S S ec retaria El proceso Unificado, Julio Ariel Hurtado Alegría F ac turar Flujo de trabajo: Análisis (i) Análisis de la arquitectura Esbozo del paquete de análisis Clase de análisis Descripción de la arquitectura Arquitecto Analizar un caso de uso Realización del caso de uso – Análisis Esbozo de clase de análisis Ingeniero de casos de uso Analizar una clase Analizar un paquete Analista Clase de análisis (terminada) Paquete de análisis (terminado) El proceso Unificado, Julio Ariel Hurtado Alegría De casos de uso a paquetes… Adm in is t rac i onM edic am ento s (fr om A dm inis trac ion) A dm inis tr arM edic am entos <<trace>> AtenderConsulta <<trace>> AdministracionHistroriasClinicas (from Administracion) AtencionConsulta AdministracionDiagnosticos (from Administracion) AdministrarDiagnóstico El proceso Unificado, Julio Ariel Hurtado Alegría Paquetes de Análisis Generacion Reportes Atencion Consulta Administracion Administ racion Administracion Diagnosticos Diagnosticos (from Administracion) (from Administracion) AdministracionHistrorias AdministracionHistrorias Clinicas Clinicas (from Administracion) (from Administracion) Administracion Administracion Medicamentos Medicamentos (from Administracion) (from Administracion) El proceso Unificado, Julio Ariel Hurtado Alegría Clases de Análisis AdministracionHistroriasClinicas (from Administracion) AdministracionMedicamentos (from Administracion) Paciente AntecedenteMadre AntecedentePacie ExamenFisico nte Medicamento Conducta RIPS Consulta AdministracionDiagnosticos (from Administracion) Diagnostico Recomendacion Diagnostico El proceso Unificado, Julio Ariel Hurtado Alegría Recomendacion Medicamento Posología Análisis de un caso de uso Descripción de la colaboración Diagrama de Secuencia Diagrama de Colaboración Diagrama parcial de clases En el contexto del análisis de otros casos de uso y de la descripción de la Arquitectura. El proceso Unificado, Julio Ariel Hurtado Alegría Realización del Caso de Uso Atender Consulta – Diagrama de Colaboración : RIPS : Consulta 10: obtenerDatosConsulta 18: adicionarRIPS 19: adicionarConducta : GUIRegistro Consulta 5: mostrarPaciente 21: mostrarConducta 23: imprimirConducta 17: crear 20: guardarConsulta 2: obtenerPaciente 9: generarConducta 16: seleccionarconducta 7: mostrar 14: *crear : GUIAtencion Consulta 1: atenderConsulta(idPaciente) 6: registrarDatosConsulta 8: generarConducta 15: seleccionarConducta 22: imprimir : Control Consulta : Conducta 12: obtenerMedicamentos : Control Medicamento 11: obtenerDatosPaciente 3: obtenerPaciente 13: *crea : Pediatra : Medicamento 4: crear : Control HistoriasClinicas El proceso Unificado, Julio Ariel Hurtado Alegría : Paciente Realización del Caso de Uso Atender Consulta – Diagrama de Secuencia : P e d ia tra : G U IAte n cio n C o n s u lta a t en d e rC o n s ul ta (id Pa c ie n te ) : G U IR e g is tro C o n s u lta o b te n e rP a cie n te : C o n tro l C o n s u lta : C o n s u lta : C o n tro lH is to ria s C lin ic a s : P a cie n te : Co n d u cta : C o n tro l Me d ica m e n to : R IP S o b te n e rP a c ie n te cre a r m o s tra rP a c ie n te re g is tra rD a to s C o n s u lta g e n e ra r Co n d u ct a m o s tra r g e n e ra r Co n d u c ta o bt e n e rD a to s C o n s u lta o b te n e rD a to s P a cie n te o b te n e rMe d ica m e n to s * cre a r s e le c cio n a rC o n d u cta s e le c ci on a rc on d u c ta cre a r a d icio n a rRIP S a d icio n a rC o n d u c ta g u a rd a rC o n s u lta m o s tra r C o n d u c ta im p rim ir im p r im ir Co n d u c ta El proceso Unificado, Julio Ariel Hurtado Alegría *c re a : Me d ica m e n to Realización del Caso de Uso Atender Consulta – Diagrama de Clases Paciente Consulta (fro m Admi nist ra cionHi st rori asClini ca s) (from AdministracionHistroriasClinicas) 1..* 1..* 1 Conducta 1 1 RIPS (from AdministracionHistroriasClinicas) (from AdministracionHistroriasClinicas) 0..* GUIAtencionConsulta ControlConsulta (from Vista) 1 GUIRegistroConsulta (from Vista) Cont rolHistoriasClinicas (from Control) (from AdministracionHistroriasClinicas) 1 ControlMedicamento Medicamento (from Ad ministracionMed icamentos) (from AdministracionMedicamentos) El proceso Unificado, Julio Ariel Hurtado Alegría Diagrama General de Clases M edicam ento (from A d m i n istra ci o n M ed i ca m e n to s) ControlM edicamento ControlDiagnos tico Diagnostico (fro m A d m i n i stra ci o n M e di ca m e n tos) (fro m A d m in i str a ci on Dia g n osti co s) (fro m A d m in i str a ci on Dia g n osti co s) 1 1..* 1 GUIRegistroConsulta Cont rol Consul ta 1 (fro m Vi sta ) (fro m Co n tro l ) Conducta (fro m Ad m i n i straci o n Hi strori a sCl i n i cas) 1 1..* <<call>> 1 GUIAtencionConsulta (fro m V ista ) 1 C ont rol His toriasCl inica s Co nsul ta RIP S (fro m A dm i n i stra ci on Hi stro ri asCl i n i ca s) (fro m Ad m i n i straci o n Hi strori a sCl i n i cas) (fro m Ad m i n i straci o n Hi strori a sCl i n i cas) 1 1 1..* A ntecedenteMadre (fro m A d m i n i stra ci o n Hi stro ri a sCl i ni ca s) 1 1 P aci ente (fro m A d m i n i stra ci o nHi stro ri a sCl i n i ca s) 1 E xam enFisico ( fro m A dm in istra c io n Hi stro ri asCl i ni ca s) 1 El proceso Unificado, Julio Ariel Hurtado Alegría A ntec edent ePa cien te (fro m A d m i n i stra ci o nHi stro ri a sCl i n i ca s) Modelo de Datos a nivel de Análisis Identifier_1 peso talla idExamen <pi> N8 <M> A30 <M> A30 <M> N2 <M> N2 <M> <pi> N6 <M> Identifier_2 <pi> poseer Paciente asistir motivoConsulta idConsulta fechaConsulta Identifier_2 <pi> <pi> RIPS VA20 <M> <pi> N10 <M> D <M> Ser registrar idRips numeroAutoriza Identifier_2 permitir obtener Identifier_2 <pi> <pi> Generar diagnostico nomEnfermedad codEnfermedad A10 <M> <pi> N2 <M> <pi> N5 <M> N5 <M> <pi> eps Identifier_2 Identifier_2 <pi> A20 <M> A10 <M> <pi> N8 <M> Consulta <pi> N10 <M> VA30 <M> N2 <M> A20 Estar afiliar nomEps idEps incluir organo estadoOrgano idExamenO ser realizar idPaciente nombrePaciente pesoNacer antecedentesFliares Identifier_2 examenOrgano examenfisico AntecedenteMadre idmadre nomMadre apellidosMadre conducta A20 <M> <pi> N5 <M> <pi> idConducta conducta <pi> A3 <M> A20 <M> Identifier_2 <pi> recomendar recomendacionDiagnostico Descripcion idRecomdiag Identifier_2 TXT20 <pi> N5 <M> <M> <pi> Sugerir medicamento idMedicamento nomMedicamento Identifier_2 recomendacionmedicamento <pi> N2 <M> A10 <pi> deber tener Descripcion edadMinima pesoMinimo idRecMed Identifier_2 TXT20 N2 F <pi> N8 <M> <M> <M> <M> <pi> deber incluir posologia idPosologia dosificacion <pi> N5 <M> A20 <M> Identifier_2 <pi> rangoposologia valorInicio valorFinal dosificacion tipoRango idRango F2 F2 A20 A10 <pi> N8 <M> <M> <M> El proceso Unificado, Julio Ariel Hurtado Alegría Ser Medir Identifier_2 <pi> <M> Flujo de trabajo: Diseño (i) Diseño de la arquitectura Esbozo de: Subsistemas Interfaces Clases Modelo de despliegue Descripción de la arquitectura Arquitecto Diseño de un caso de uso Ingeniero de casos de uso Diseño de clases Realización del caso de uso – Diseño Clase de Diseño (esbozada) Subsistema (Esbozado) Interface (Esbozada) Diseño de un subsistema Ing. De Componentes Subsistema terminado Interfaces terminadas. Clase de diseño (completa) El proceso Unificado, Julio Ariel Hurtado Alegría Arquitectura Lógica del Sistema - Módulos < < s u bs y s t e m > > A t e n c io n C o n s u lt a < < s ubs y s tem > > F a c t u ra c io n V is t a V is t a (fro m A t e n c io n C o n s u lt a ) (fro m F a c t u ra c io n ) us es us es C o n t ro l C o n t ro l (fro m A t e n c io n C o n s u lt a) (fro m F a c t u ra c io n ) us e s uses < < s u bs y s t e m > > A d m in is t ra c io n H is t o ria s C lin ic a s C o n t ro l (fro m A d m in is t ra c io n H is t o ria s C lin ic a s ) us es < < s ubs y s tem > > A d m in is t ra c io n M e d ic a m e n t o s V is t a (fro m A d m in is t ra c io n M e d ic a m e n t o s ) us es M o d e lo us es (fro m A d m in is t ra c io n H is t o ria s C lin ic a s ) us es < < s u bs y s t e m > > A d m in is t ra c io n D ia g n o s t ic o s V is t a (fro m A d m in is t ra c io n D ia g n o s t ic o s ) us es C o n t ro l C o n t ro l (fro m A d m in is t ra c io n M e d ic a m e n t o s ) us es (fro m A d m in is t ra c io n D ia g n o s t ic o s ) uses M o d e lo M o d e lo (fro m A d m in is t ra c io n M e d ic a m e n t o s ) (fro m A d m in is t ra c io n D ia g n o s t ic o s ) El proceso Unificado, Julio Ariel Hurtado Alegría Desacople entre subsistemas – programando para interfaces <<subsystem>> <<subsystem>> AtencionConsulta AdministracionHistoriasClinicas -controlHC 1 IControlHC (from Control) El proceso Unificado, Julio Ariel Hurtado Alegría Realización del Caso de Uso Atender Consulta – Diagrama de Secuencia : Pediatra : GUIAtencionConsulta abrirHistoria( ) guiRegistroconsulta : GUIRegistroConsulta pte:=getPaciente(int) controlC : ControlConsulta con : Consulta controlHC : Control HistoriasClinicas pte : Paciente cond : Conducta cM : Control Medicamento med : Medicamento pte=getPaciente(idPaciente ) pte:=getPaciente(idPaciente) retornar pte return pte mostrarPaciente( ) registrarConsulta( ) mostrar(controlC) generarConductas( ) generarConductas( ) p:=getPeso( ) e:=getEdad( ) unidad= getUnidadEdad( ) pgias= getPatologia( ) ms := getMedicamentos( ) getMedicamentos(diagnosticos) formular( ) * Conducta(med, remision, terapia, control, comentarios, dosis) El proceso Unificado, Julio Ariel Hurtado Alegría Create (cod, nombre , posol, ...) cDB : Control BD Realización del Caso de Uso Atender Consulta – Diagrama de Colaboración 16: Create (cod, nombre , posol, ...) cM : Control Medicamento L med : Medicamento L F 15: getMedicamentos(diagnosticos) con : Consulta 14: ms := getMedicamentos( ) 21: addConducta(cond) 5: mostrarPaciente( ) F 17: f ormular( ) 2: pte:=getPaciente(int) 9: generarConductas( ) 20: * seleccionarConducta( ) 22: guardarConsulta( ) 25: env iarExcel( ) : GUIAtencion Consulta 18: * Conducta(med, remision, terapia, control, comentarios, dosis) F controlC : ControlConsulta F 1: abrirHistoria( ) 6: registrarConsulta( ) 8: generarConductas( ) 19: seleccionarConductas( ) 24: imprimirConducta( ) 10: p:=getPeso( ) 11: e:=getEdad( ) 12: unidad= getUnidadEdad( ) 13: pgias= getPatologia( ) 7: mostrar(controlC) L 23: guardarConsulta(con) guiRegistroconsulta : GUIRegistroConsulta 3: pte=getPaciente(idPaciente ) : Pediatra F cDB : ControlBD F F L F L controlHC : Control HistoriasClinicas pte : Paciente 4: pte:=getPaciente(idPaciente) El proceso Unificado, Julio Ariel Hurtado Alegría cond : Conducta Paciente JFrame (from M odelo) (from swing) getPeso() getEdad() getUnidadEdad() getPatologias() getConsultaAnterior() Paciente() Create() addAntecedenteP() addAntecedenteM() addConsulta() Consulta (from M odelo) getDiagnosticos() getMedicamentos() -conductas addConducta() Create() 1..* addExamenF() addDiagnostico() 1..* 1 +co Conducta 1 (from M odelo) 1 Conducta() 0..* ControlConsulta (from Control ) GUIAtencionConsulta GUIRegistroConsulta (from Vista) (from Vi sta) mostrar() consultaAnterior() mostrarConsulta() mostrar() Create() registrarConsulta() abrirHistoria() mostrarPaciente() +controlHC -controlC registrarConsulta() 1 generarConductas() 1 IControl seleccionarConductas() Consulta imprimir() (from Control ) crearHC() iniciarRegistroConsulta() getPaciente() generarConductas() formular() seleccionarConducta() guardarConsulta() getConductas() enviarExcel() getConsultaAnterior() crearConsulta() registrarConsulta() Paciente() getPaciente() generarConductas() formular() seleccionarConducta() guardarConsulta() getConductas() enviarExcel() getConsultaAnterior() crearConsulta() registrarConsulta() Paciente() ControlHistoriasClinicas (from Control) +co 1 IControlHC (from Control) getPaciente() getConsultaAnterior() crearHC() addConsulta() ControlMedicamento (from Control) Medicamento (from M odelo) untitled() getMedicamentos() El proceso Unificado, Julio Ariel Hurtado Alegría Create() getPaciente() getConsultaAnterior() crearHC() addConsulta() Modelo de Clases Paquete Atención a Consulta GUIAtencionConsulta (from Vista) abrirHistoria() mostrarPaciente() registrarConsulta() generarConductas() seleccionarConductas() imprimir() crearHC() iniciarRegistroConsulta() ControlConsulta (from Control) -cont rolC 1 -cont rolC <<call>> GUIRegist roConsulta (from Vista) 1 getPaciente() generarConductas() formular() seleccionarConducta() guardarConsulta() get Conductas() enviarExcel() getConsultaAnterior() crearConsulta() registrarConsulta() Paciente() mostrar() consultaAnterior() mostrarConsulta() mostrar() Create() registrarConsulta() El proceso Unificado, Julio Ariel Hurtado Alegría Modelo de Clases Paquete Atención a Consulta ControlBD Paciente (from Control) ControlHistoriasClinicas (from Modelo) nombres apellidos identificacion tipoIdentificacion sexo fechaNacimiento procedencia telefono direccion nombrePadre -controlbd guardarHC() guardarConsulta() getPaciente() (from Control) getPaciente() getConsultaAnterior() crearHC() addConsulta() 1 -pcte Consulta getPeso() getEdad() fecha getUnidadEdad() -pcte motivo getPatologias() enfermedadActual -consultas 1 getConsultaAnterior() edad 0..* Paciente() unidadEdad Create() addAntecedenteP() getDiagnosticos() addAntecedenteM() 1 -conActual getMedicamentos() addConsulta() addConducta() -aMadre Create() 1 AntecedenteMadre addExamenF() -aPaciente (from Modelo) addDiag nostico() 1 gravidez AntecedentePaciente partos +conductas (from Modelo) cesareas pesoAlNacer abortos tallaAlNacer -examenF 1 alimentacion create() vacunas (from Modelo) 1 ExamenFisico (from Modelo) peso talla perimetroCefalico tensionArterial temperatura frecuenciaCardiaca frecuenciaRespiratoria observaciones Create() 1 1..* 1 -conductas Conducta (from Modelo) remision terapia control comentarios dosis : type = initval Conducta() desarrollo anormalidad patologías hospitalizacion motivoHospitalizacion formaNacimiento tiempoGestacion compliaciones antecedentesFamiliares El procesoCreate() Unificado, Julio Ariel Hurtado Alegría Modelo General de Clases ControlHistoriasClinicas 1 JFrame ControlBD -controlbd (from Control) (from swing) +controlHC (from Control) AntecedenteMadre IControlHC -controlHC (from 1 Control ) (from Modelo) 1 -aMadre -pcte 1 GUIAtencionConsulta (from Vista) -controlC 1 -consultas Consulta ControlConsulta Paciente -pcte (from M odelo) (from Control ) 1 IControl 1 -controlC Consulta (from M odelo) 0..* 1 -conductas (from Control ) <<call>> 1..* -controlM 1 ControlMedicamento GUIRegistroConsulta (from Vi sta) 1 (from Control) Conducta (from M odelo) -examenF -aPaciente ExamenFisico 1 (from Modelo) -controlD (from M odelo) -diag ControlDiagnostico (from Control) RecomendacionDiagnóstico 1..* Diagnostico 1..* (from Modelo) (from Modelo) -rDiag RangoPosologia -rangosP (from M odelo) Posologia -pos (from Modelo) 0..* 1..* -diags 1..* -mtos 0..* Medicamento (from Modelo) 1 RecomendacionMedicamento (from Modelo) -recomens El proceso Unificado, Julio Ariel Hurtado Alegría 1 AntecedentePaciente Modelo de Datos a Nivel de Diseño AntecedenteMadre idmadre idPaciente nomMadre apellidosMadre examenfisico NUMERIC(8) NUMERIC(10) CHAR(30) CHAR(30) <pk> <fk> peso talla idExamen idConsulta NUMERIC(2) NUMERIC(2) NUMERIC(6) NUMERIC(10) <pk> <fk> FK_EXAMENOR_INCLUIR_EXAMENFI examenOrgano FK_CONSULTA_SER_REALI_EXAMENFI organo estadoOrgano idExamenO idExamen FK_EXAMENFI_SER_REALI_CONSULTA FK_ANTECEDE_POSEER2_PACIENTE <pk> <fk> Consulta motivoConsulta idConsulta idConducta idExamen idPaciente idRips fechaConsulta FK_PACIENTE_POSEER_ANTECEDE Paciente idPaciente idEps idmadre nombrePaciente pesoNacer antecedentesFliares CHAR(20) CHAR(10) NUMERIC(8) NUMERIC(6) VARCHAR(20) FK_CONSULTA_SER_REGIS_RIPS RIPS NUMERIC(10) <pk> CHAR(3) <fk3> idRips NUMERIC(5) <fk2> NUMERIC(6) FK_RIPS_SER_REGIS_CONSULTA idConsulta NUMERIC(10) <fk1> NUMERIC(10) numeroAutoriza NUMERIC(5) <fk4> NUMERIC(5) DATE FK_CONSULTA_ASISTIR_PACIENTE NUMERIC(10) <pk> FK_PERMITIR_PERMITIR__CONSULTA NUMERIC(2) <fk2> FK_CONDUCTA_GENERAR2_CONSULTA NUMERIC(8) <fk1> FK_CONSULTA_GENERAR_CONDUCTA VARCHAR(30) NUMERIC(2) CHAR(20) permitir obtener idConsulta codEnfermedad NUMERIC(10) NUMERIC(5) <pk,fk1> <pk,fk2> conducta FK_PACIENTE_ESTAR_AFI_EPS idConducta idConsulta conducta FK_PERMITIR_PERMITIR__DIAGNOST CHAR(3) NUMERIC(10) CHAR(20) <pk> <fk> diagnostico eps nomEps idEps CHAR(10) NUMERIC(2) nomEnfermedad codEnfermedad CHAR(20) NUMERIC(5) <pk> <pk> FK_RECOMEND_RECOMENDA_DIAGNOST recomendacionDiagnostico Sugerir idRecomdiag idMedicamento NUMERIC(5) NUMERIC(2) <pk,fk1> FK_SUGERIR_SUGERIR_RECOMEND <pk,fk2> Descripcion idRecomdiag codEnfermedad BLOB NUMERIC(5) NUMERIC(5) FK_SUGERIR_SUGERIR2_MEDICAME medicamento idMedicamento idPosologia nomMedicamento NUMERIC(2) NUMERIC(5) CHAR(10) <pk> <fk> FK_RECOMEND_DEBER_TEN_MEDICAME recomendacionmedicamento Descripcion edadMinima pesoMinimo idRecMed idMedicamento BLOB NUMERIC(2) FLOAT NUMERIC(8) NUMERIC(2) <pk> <fk> FK_MEDICAME_DEBER_INC_POSOLOGI FK_POSOLOGI_DEBER_INC_MEDICAME rangoposologia posologia idPosologia idMedicamento dosificacion NUMERIC(5) NUMERIC(2) CHAR(20) <pk> <fk> FK_RANGOPOS_SER_MEDIR_POSOLOGI valorInicio valorFinal dosificacion tipoRango idRango idPosologia FLOAT FLOAT CHAR(20) CHAR(10) NUMERIC(8) NUMERIC(5) El proceso Unificado, Julio Ariel Hurtado Alegría <pk> <fk> <pk> <fk> Flujo de trabajo: Implementación (i) Implementación Implementación de de la la arquitectura arquitectura Arquitecto Planeación Planeación de de la la integración integración de de subsistemas subsistemas Esbozo de componentes y asociaciones a nodos Descripción de la arquitectura: modelos de implementación y despliegue Plan de integración Modelo de implementación (construcciones anteriores) Integrador de Sistemas Componente (implementado) Implementar Implementar un un subsistema subsistema Para la construcción de la iteración: Subsistema de la implementación Interfaces Implementar Implementar una una clase clase Componente (probado) Realizar Realizar una una prueba prueba unidad unidad El proceso Unificado, Julio Ariel Hurtado Alegría Modelo de Implementación GUIAtencion Consulta Controlconsulta.java IControl Consulta ControlHC IControlHC El proceso Unificado, Julio Ariel Hurtado Alegría Modelo de Despliegue PCServidorAplicación PCCliente Windows98/2000/XP Windows98/2000/XP TCP/IP GUIRegistroConsulta GUIAtencionConsul ta rm iRegi stry ControlConsulta ControlHi storiasCli nicas TCP/IP PCServidorBD Windows98/2000/XP paci entes.mdb El proceso Unificado, Julio Ariel Hurtado Alegría Implementación de Componentes package atencionpaciente.modelo; public class Paciente{ private String edad; private String nombres; private String apellidos; private AntecedentesPaciente aPaciente; private AntecedentesMadre aMadre; Paciente edad : String nombres : String apellidos : String Create(nom : String, apell : String, edad : String) getEdad() : String getNombres() : String getApellidos() : String -aPaciente 1 AntecedentesPaciente -aMadre public Paciente(String nom, String apell, String edad){ // cuerpo del constructor } 1 AntecedentesMadre public String getEdad(){ return edad; } //resto de clase } El proceso Unificado, Julio Ariel Hurtado Alegría