Ministerio del Poder Popular para Ciencia, Tecnología e Industrias Intermedias Centro Nacional de Tecnologías de Información SINAPSIS ESPECIFICACIÓN DE REQUERIMIENTOS DE SOFTWARE Documento de Especificación de Requerimientos de Software para: SINAPSIS Av. Andrés Bello, sector Guaicaipuro, Torre MPPTI, piso 16, Municipio Libertador, Caracas. Telf. +58 (212)- 578.59.92 / 507.21.11 Sitio Web: www.cnti.gob.ve 1 de 63 Versión: 1.0.0 Historial de Revisiones Versión 1.0.0 Fecha 2011 Autor Descripción Jesús De Oliveira Versión inicial 0.1.0-SNAPSHOT (checkpoint 1) Documento de Especificación de Requerimientos de Software para: SINAPSIS Av. Andrés Bello, sector Guaicaipuro, Torre MPPTI, piso 16, Municipio Libertador, Caracas. Telf. +58 (212)- 578.59.92 / 507.21.11 Sitio Web: www.cnti.gob.ve 2 de 63 Versión: 1.0.0 Índice de contenido 1 Información General.....................................................................................................................................4 1.1 Nombre del Proyecto...........................................................................................................................4 2 Introducción..................................................................................................................................................4 2.1 Propósito..............................................................................................................................................4 2.2 Alcance.................................................................................................................................................4 2.3 Definiciones, Acrónimos y Abreviaturas..............................................................................................4 2.4 Referencias..........................................................................................................................................4 3 Descripción Global.......................................................................................................................................5 3.1 Requerimientos del Producto...............................................................................................................5 3.2 Modelo de Dominio..............................................................................................................................7 3.3 Casos de Uso ......................................................................................................................................7 3.2.2 Resumen............................................................................................................................................8 3.4 Diagramas..........................................................................................................................................10 3.2.4 Especificación de los Casos de Uso................................................................................................10 4 Requisitos Específicos...............................................................................................................................35 4.1 Requisitos Funcionales (Refinamiento de los requerimientos funcionales de los TDR)...................35 4.2 No Funcionales..................................................................................................................................41 Se mantienen los definidos en los Términos de Referencia del Proyecto................................................41 5 Rangos de Calidad.....................................................................................................................................41 Se mantienen los definidos en los Términos de Referencia del Proyecto................................................41 Documento de Especificación de Requerimientos de Software para: SINAPSIS Av. Andrés Bello, sector Guaicaipuro, Torre MPPTI, piso 16, Municipio Libertador, Caracas. Telf. +58 (212)- 578.59.92 / 507.21.11 Sitio Web: www.cnti.gob.ve 3 de 63 Versión: 1.0.0 1 Introducción 1.1 Propósito Éste documento tiene como propósito definir de forma precisa el producto de software que se va a construir. Los requerimientos aquí indicados deben ser satisfechos en el diseño del sistema, verificados y validados por la actividades marcadas en la planificación. 1.2 Alcance Este proyecto consiste en el rediseño estructural, arquitectónico y tecnológico de la aplicación informática SINAPSIS, considerando como base el levantamiento de información y las experiencias obtenidas con el desarrollo de la primera versión de la aplicación (versión en PHP). El objetivo de este proyecto es producir una aplicación más cohesiva, modular, mantenible y apegada a las mejores prácticas de ingeniería de software y el desarrollo de sistemas interoperables escalables, partiendo de los insumos generados durante el desarrollo y pruebas de la primera versión de SINAPSIS, y soportada por plataformas y/o frameworks del estado del arte para aplicaciones empresariales de gran escala. Se consideran para esta versión el desarrollo de los módulos de interconsultas y la digitalización de la Historia Clínica Básica Integrada (HCBI) suministrada por el Ministerio del Poder Popular para la Salud. 2 Descripción Global 2.1 Requerimientos del Producto En esta sección se presenta un resumen de los requerimientos del producto. Para información adicional como la descripción, características y prioridad, refiérase a la sección 4.1 "Requisitos específicos" Código Requerimiento RF-1 Gestionar especificación de fichas y subfichas de Historia Clínica RF-2 Gestionar especificación de campos de historia clínica Documento de Especificación de Requerimientos de Software para: SINAPSIS Av. Andrés Bello, sector Guaicaipuro, Torre MPPTI, piso 16, Municipio Libertador, Caracas. Telf. +58 (212)- 578.59.92 / 507.21.11 Sitio Web: www.cnti.gob.ve 4 de 63 Versión: 1.0.0 Código Requerimiento RF-3 Crear historia clínica RF-4 Consultar historia clínica RF-5 Buscar historia clínica por cualquier para metro RF-6 Registrar sustanciación de fichas y subfichas asociadas a historia clínica RF-7 Editar valores de campos en instancia fichas y subfichas de historia clínica RF-8 Registrar interconsulta RF-9 Asociar archivos adjuntos a interconsulta RF-10 Pre-cargar datos de interconsulta a partir de información registrada en historia clínica de paciente RF-11 Consultar interconsulta RF-12 Editar interconsulta RF-13 Asignar interconsulta a especialista RF-14 Buscar interconsultas por cualquier para metro RF-15 Responder interconsulta RF-16 Registrar pregunta en interconsulta RF-17 Asociar archivo adjunto a pregunta en interconsulta RF-18 Registrar respuesta a pregunta en interconsulta RF-19 Asociar archivo adjunto a respuesta en interconsulta RF-20 Enviar emails de notificación ante eventos configurables en el sistema RF-21 Gestionar usuarios RF-22 Gestionar roles, perfiles y permisología RF-23 Gestionar y registrar bitácoras de operaciones en el sistema RF-24 Asociar valores máximos y mínimos permitidos a especificación de campos de tipo numérico en historia clínica RF-25 Permitir pre-cargar campos de historia clínica con valores generados a partir de expresiones arbitrarias RF-26 Permitir marcar campos de historia clínica como de solo lectura Documento de Especificación de Requerimientos de Software para: SINAPSIS Av. Andrés Bello, sector Guaicaipuro, Torre MPPTI, piso 16, Municipio Libertador, Caracas. Telf. +58 (212)- 578.59.92 / 507.21.11 Sitio Web: www.cnti.gob.ve 5 de 63 Versión: 1.0.0 Código Requerimiento RF-27 Gestionar noticias RF-28 Permitir campos seleccionables dependientes en historia clínica a través de AJAX Documento de Especificación de Requerimientos de Software para: SINAPSIS Av. Andrés Bello, sector Guaicaipuro, Torre MPPTI, piso 16, Municipio Libertador, Caracas. Telf. +58 (212)- 578.59.92 / 507.21.11 Sitio Web: www.cnti.gob.ve 6 de 63 Versión: 1.0.0 2.2 Modelo de Dominio Es importante resaltar en el modelo de dominio que aun cuando todos los usuarios del sistema son “médicos”, ambos conceptos fueron modelados de forma separada con la intención de mantener una clara separación entre los conceptos del dominio (medico) y conceptos de infraestructura (usuarios). La clase Usuario representa única y exclusivamente la información de autenticación y autorización de los usuarios, mientras que la clase Medico representa al medico como tal, que es participante de las relaciones del resto del modelo de dominio. La asociación entre Usuario y Medico se realiza a través del “login”, como una asociación débil y no exigida por las restricciones de integridad (lo cual permite que existan médicos que no sean usuarios del sistema). Esta separación permite alterar el mecanismo de autenticación de la aplicación (implementado a través de Spring Security), que actualmente utiliza la entidad Usuario, a cualquier otro subsistema de autenticación, como directorios LDAP, Kerberos, certificados digitales X.509, etc., sin ningún impacto en el modelo de dominio de la aplicación. 2.3 Casos de Uso 3.2.1 Actores Código Actor Descripción ACT001 Medico Interconsultante Medico que puede realizar interconsultas bajo el rol de consultante, y registrar y modificar historias clínicas de pacientes ACT002 Medico Interconsultado Medico que puede responder interconsultas bajo el rol de consultado. Solo puede consultar historias clínicas de pacientes ACT003 Auditor Medico que puede modificar cualquier información sobre historias clínicas de pacientes ACT004 Triaje Medico encargado de asignar interconsultas (registradas por los médicos interconsultantes) a médicos interconsultados ACT005 Administrador Personal encargado de administración y mantenimiento del sistema 3.2.2 Resumen Esta lista presenta la totalidad de casos de uso identificados. Código Caso de Uso Actores participantes UC1 Crear Noticia Administrador UC2 Listar Noticias Administrador UC3 Consultar Noticia Administrador UC4 Editar Noticia Administrador UC5 Eliminar Noticia Administrador UC6 Crear Usuario Administrador Código Caso de Uso Actores participantes UC7 Listar Usuarios Administrador UC8 Consultar Usuario Administrador UC9 Editar Usuario Administrador UC10 Buscar Pacientes Interconsultante, Triaje, Auditor Interconsultado, UC11 Consultar Paciente Interconsultante, Triaje, Auditor Interconsultado, UC12 Consultar Ficha Historia Clínica Interconsultante, Triaje, Auditor Interconsultado, UC13 Agregar Ficha Historia Clínica Interconsultante, Auditor UC14 Editar Ficha Historia Clínica Interconsultante, Auditor UC15 Registrar Paciente Interconsultante, Auditor UC16 Editar Paciente Interconsultante, Auditor UC17 Ver Bitácora Historia Clínica Interconsultante, Auditor UC18 Registrar Interconsulta Interconsultante UC19 Buscar Interconsulta Interconsultante, Triaje Interconsultado, UC20 Consultar Interconsulta Interconsultante, Triaje Interconsultado, UC21 Ver Bitácora Interconsulta Interconsultante, Triaje Interconsultado, UC22 Responder Interconsulta Interconsultado UC23 Consultar preguntas y respuestas adicionales de Interconsultante, interconsulta Triaje UC24 Agregar pregunta adicional de interconsulta Interconsultante UC25 Responder pregunta adicional de interconsulta Interconsultado UC26 Asignar Interconsulta Triaje UC27 Asignar Especialidad a Usuario Triaje Interconsultado, Interconsultado, 2.4 Diagramas Diagrama General: 3.2.4 Especificación de los Casos de Uso En esta sección se describen los únicamente los casos de uso implementados en la versión actual del sistema. Caso de Uso UC1 Nombre: Crear Noticia Descripción: Este caso de uso permite a un administrador registrar una nueva noticia en el sistema Requerimientos que satisface: RF27 Precondiciones: • Ninguna Flujo Normal: Actor Sistema Solicita registrar una nueva noticia Muestra formulario para registrar nueva noticia Suministra los datos solicitados en el formulario Registra una nueva noticia con los datos suministrados Flujo Alterno 1: Los datos suministrados son inválidos Actor Sistema Muestra mensaje de error especificando los campos con valores inválidos y vuelve al paso 2 del flujo normal Postcondiciones: • La nueva noticia queda registrada en el sistema Requerimientos Especiales: Ninguno Puntos de Extensión: Dentro de este caso de uso pueden iniciarse (es extendido por): • UC3 Consultar Noticia Caso de Uso UC2 Nombre: Listar Noticias Descripción: Este caso de uso permite a un administrador listar todas las noticias registradas en el sistema Requerimientos que satisface: RF27 Precondiciones: Flujo Normal: • Ninguna Caso de Uso UC2 Actor Sistema Solicita listar noticias Muestra listado con todas las noticias registradas en el sistema Postcondiciones Ninguna. Requerimientos Especiales: Ninguno. Puntos de Extensión: Dentro de este caso de uso pueden iniciarse (es extendido por): • UC3 Consultar noticia • UC4 Editar noticia • UC5 Eliminar noticia Caso de Uso UC3 Nombre: Consultar Noticia Descripción: Este caso de uso permite a un administrador consultar una noticia registrada en el sistema Requerimiento que satisface: RF27 Precondiciones • Ninguna Flujo Normal: Actor Sistema Solicita consultar una noticia suministrando su identificador Muestra los datos de la noticia solicitada Flujo Alterno 1: El identificador suministrado no es valido Actor Sistema Muestra mensaje de error y finaliza el caso de uso Postcondiciones • Ninguna Requerimientos Especiales: Ninguno Puntos de Extensión: Este caso de uso puede iniciarse dentro de (extiende a): • UC1 Crear noticia • UC2 Listar noticias Caso de Uso UC4 Nombre: Editar noticia Descripción: Este caso de uso permite a un administrador editar una noticia registrada en el sistema Caso de Uso UC4 Requerimiento que satisface: RF27 Precondiciones Ninguna Flujo Normal: Actor Sistema Solicita editar una noticia suministrando su identificador Muestra formulario con los datos de la noticia seleccionada Suministra las modificaciones a los datos mostrados Registra los nuevos datos de la noticia Flujo Alterno 1: No existe ninguna noticia con el identificador suministrado Muestra mensaje de error y finaliza el caso de uso Flujo Alterno 2: Los datos suministrados no son válidos Actor Sistema Muestra mensaje de error especificando los campos con valores inválidos y vuelve al paso 2 del flujo normal Postcondiciones Los nuevos datos de la noticia quedan almacenados en el sistema Requerimientos Especiales: Ninguno. Puntos de Extensión: Este caso de uso puede iniciarse como parte de (es extendido por) los siguientes casos de uso: • CU2 Listar Noticias Caso de Uso UC5 Nombre: Eliminar noticia Descripción: Este caso de uso permite a un administrador eliminar una noticia registrada en el sistema Requerimientos que satisface: RF27 Precondiciones: • Ninguna Flujo Normal: Actor Sistema Solicita eliminar una noticia suministrando su identificador Elimina la noticia solicitada Flujo Alterno 1: El identificador suministrado no esta registrado en el sistema Muestra mensaje de error y finaliza la ejecucion del Caso de Uso UC5 caso de uso Postcondiciones: La noticia ya no esta registrada en el sistema Requerimientos Especiales: Ninguno Puntos de Extensión: Este caso de uso puede iniciarse dentro de (extiende a): • UC2 Listar noticias Caso de Uso UC1 Nombre: Crear Usuario Descripción: Este caso de uso permite a un administrador registrar un nuevo usuario en el sistema Requerimientos que satisface: RF21 RF22 Precondiciones: • Ninguna Flujo Normal: Actor Sistema Solicita registrar un nuevo usuario Muestra formulario para registrar nuevo usuario Suministra los datos solicitados en el formulario Registra un nuevo usuario con los datos suministrados Flujo Alterno 1: Los datos suministrados son inválidos Actor Sistema Muestra mensaje de error especificando los campos con valores inválidos y vuelve al paso 2 del flujo normal Postcondiciones: • El nuevo usuario queda registrado en el sistema Requerimientos Especiales: Ninguno Puntos de Extensión: Dentro de este caso de uso pueden iniciarse (es extendido por): • UC8 Consultar Usuario Caso de Uso UC7 Nombre: Listar Usuarios Descripción: Este caso de uso permite a un administrador listar todas los usuarios registrados en el sistema Caso de Uso UC7 Requerimientos que satisface: RF21 RF22 Precondiciones: • Ninguna Flujo Normal: Actor Sistema Solicita listar usuarios Muestra listado con todos los usuarios registrados en el sistema Postcondiciones Ninguna. Requerimientos Especiales: Ninguno. Puntos de Extensión: Dentro de este caso de uso pueden iniciarse (es extendido por): • UC8 Consultar usuario • UC9 Editar usuario Caso de Uso UC8 Nombre: Consultar Usuario Descripción: Este caso de uso permite a un administrador consultar una usuario registrado en el sistema Requerimiento que satisface: RF21 RF22 Precondiciones • Ninguna Flujo Normal: Actor Sistema Solicita consultar un usuario suministrando su identificador Muestra los datos del usuario solicitado Flujo Alterno 1: El identificador suministrado no es valido Actor Sistema Muestra mensaje de error y finaliza el caso de uso Postcondiciones • Ninguna Requerimientos Especiales: Ninguno Puntos de Extensión: Este caso de uso puede iniciarse dentro de (extiende a): • UC6 Crear usuario • UC7 Listar usuario Caso de Uso UC9 Nombre: Editar usuario Descripción: Este caso de uso permite a un administrador editar un usuario registrado en el sistema Requerimiento que satisface: RF21 RF22 Precondiciones Ninguna Flujo Normal: Actor Sistema Solicita editar un usuario suministrando su identificador Muestra formulario con los datos del usuario seleccionado Suministra las modificaciones a los datos mostrados Registra los nuevos datos del usuario Flujo Alterno 1: No existe ningún usuario con el identificador suministrado Muestra mensaje de error y finaliza el caso de uso Flujo Alterno 2: Los datos suministrados no son válidos Actor Sistema Muestra mensaje de error especificando los campos con valores inválidos y vuelve al paso 2 del flujo normal Postcondiciones Los nuevos datos del usuario quedan almacenados en el sistema Requerimientos Especiales: Ninguno. Puntos de Extensión: Este caso de uso puede iniciarse como parte de (es extendido por) los siguientes casos de uso: • CU7 Listar Usuarios Caso de Uso UC10 Nombre: Buscar paciente Descripción: Este caso de uso permite a un medico interconsultante, medico interconsultado, usuario de triaje o auditor buscar a un paciente por cualquier campo Requerimientos que satisface: RF5 Precondiciones: • Ninguna Flujo Normal: Actor Sistema Caso de Uso UC10 Solicita buscar pacientes Muestra formulario solicitando parámetros de búsqueda Suministra parámetros de búsqueda Muestra listado con pacientes coincidentes con criterios de búsqueda Flujo Alterno: Ninguno Postcondiciones: Ninguna Requerimientos Especiales: Ninguno Puntos de Extensión: Dentro de este caso de uso pueden iniciarse (es extendido por) los siguientes casos de uso: • CU11 Consultar paciente Caso de Uso UC11 Nombre: Consultar paciente Descripción: Este caso de uso permite a un medico interconsultante, medico interconsultado, auditor o usuario de triaje consultar los datos básicos de un paciente Requerimientos que satisface: RF4 Precondiciones: • Ninguna Flujo Normal: Actor Sistema Solicita consultar un paciente suministrando su identificador Muestra los datos básicos del paciente solicitado Flujo Alterno: El identificador suministrado no esta registrado Actor Sistema Muestra un mensaje con el problema y finaliza el caso de uso Postcondiciones: Ninguna Requerimientos Especiales: Ninguno Puntos de Extensión: Este caso de uso puede iniciarse dentro de (extiende a): • UC10 Buscar paciente • UC15 Registrar paciente Dentro de este caso de uso puede iniciarse: (es Caso de Uso UC11 extendido por): • UC12 Consultar ficha historia clínica • UC16 Editar paciente • UC17 Ver bitácora Historia Clínica Caso de Uso UC12 Nombre: Consultar Ficha de Historia Clínica Descripción: Este caso de uso permite a un medico interconsultante, medico interconsultado, auditor o usuario de triaje consultar una ficha de la historia clínica de un paciente Requerimientos que satisface: RF1 RF2 RF4 RF6 Precondiciones: • Ninguna Flujo Normal: Actor Sistema Solicita consultar una ficha de historia clínica de un paciente suministrando sus identificadores Muestra el contenido (campos y valores) de la ficha solicitada para el paciente solicitado Flujo Alterno 1: Cualquiera de los identificadores suministrados no existen registrados en el sistema Actor Sistema Muestra un mensaje indicando el problema y finaliza la ejecucion del caso de uso Postcondiciones: • Ninguna Requerimientos Especiales: Ninguno Puntos de Extensión: Este caso de uso puede iniciarse dentro de (extiende a): • UC11 Consultar paciente Dentro de este caso de uso pueden iniciarse (es extendido por): • UC13 Agregar ficha de historia clínica • UC14 Editar ficha de historia clínica Caso de Uso UC13 Nombre: Agregar ficha de historia clínica Descripción: Este caso de uso permite a un medico interconsultante o auditor incorporar una ficha adicional a la historia clínica de un paciente Caso de Uso UC13 Requerimientos que satisface: RF1 RF2 Precondiciones: • La especificación de la ficha debe permitir múltiples instancias Flujo Normal: Actor Sistema Solicita registrar una nueva ficha en la historia clínica del paciente, suministrando el identificador del paciente y el identificador de la especificación de la ficha Muestra un formulario compuesto por las especificaciones de los campos asociados a la especificación de la ficha suministrada Suministra los datos de la nueva ficha Registra la nueva ficha asociada a la historia clínica del paciente solicitado Flujo Alterno 1: Los identificadores suministrados no existen registrados Muestra un mensaje indicando el problema y finaliza el caso de uso Flujo Alterno 2: Los datos suministrados no son válidos Actor Sistema Muestra un mensaje indicando el problema y vuelve al paso 2 del flujo normal Postcondiciones: • • La nueva ficha queda registrada en el sistema con los datos suministrados, asociada al paciente seleccionado La operación queda registrada en la bitácora de la historia clínica del paciente Requerimientos Especiales: Ninguno Puntos de Extensión: Este caso de uso puede iniciarse dentro de (extiende a): • UC12 Consultar ficha de historia clínica Caso de Uso UC14 Nombre: Editar ficha de historia clínica Descripción: Este caso de uso permite a un medico interconsultante o auditor modificar los datos de una ficha de historia clínica registrada en el sistema Requerimientos que satisface: RF1 RF2 RF7 Precondiciones: • • El medico interconsultante debe ser el creador del paciente asociado a la ficha La ficha no debe estar marcada en la Caso de Uso UC14 especificación como de solo lectura Flujo Normal: Actor Sistema Solicita editar una ficha de historia clínica suministrando su identificador Muestra un formulario con los datos (campos y valores) de la ficha de historia clínica solicitada Suministra los nuevos valores de los campos de la ficha de la historia clínica solicitada Registra los nuevos valores de los campos de la ficha de historia clínica solicitada Flujo Alterno 1: El identificador suministrado no existe registrado en el sistema Actor Sistema Muestra un mensaje indicando el problema y finaliza la ejecucion del caso de uso Flujo Alterno 2: Los datos suministrados son inválidos Actor Sistema Muestra un mensaje indicando el problema y los valores inválidos y vuelve al paso 2 del flujo normal Postcondiciones: • • Los nuevos datos de la ficha de historia clínica quedan registrados La operación queda registrada en la bitácora de historia clínica del paciente Requerimientos Especiales: Ninguna Puntos de Extensión: Este caso de uso puede iniciarse dentro de (extiende a): • UC12 Consultar ficha de historia clínica Caso de Uso UC15 Nombre: Registrar paciente Descripción: Este caso de uso permite a un medico interconsultante registrar un nuevo paciente en el sistema Requerimiento que satisface: RF3 Precondiciones Ninguna Flujo Normal: Actor Solicita registrar un nuevo paciente Sistema Caso de Uso UC15 Muestra un formulario solicitando los datos básicos del paciente Suministra los datos básicos del paciente Registra el nuevo paciente con los datos suministrados Flujo Alterno 1: Los datos suministrados son inválidos Actor Sistema Muestra un mensaje indicando el problema y los campos inválidos y vuelve al paso 2 del flujo normal Postcondiciones El nuevo paciente queda registrado en el sistema La operación queda registrada en la bitácora de la historia clínica del nuevo paciente Requerimientos Especiales: Ninguno Puntos de Extensión: Dentro de este caso de uso puede iniciarse: (es extendido por): • UC11 Consultar paciente Caso de Uso UC16 Nombre: Editar paciente Descripción: Este caso de uso permite a un medico interconsultante modificar los datos básicos de un paciente registrado en el sistema Requerimiento que satisface: RF-3 Precondiciones Ninguna Flujo Normal: Actor Sistema Solicita editar un paciente suministrando su identificador Muestra un formulario con los datos básicos del paciente solicitado Suministra los nuevos datos del paciente Registra los nuevos datos básicos del paciente Flujo Alterno 1: El identificador suministrado no existe Actor Sistema Muestra un mensaje indicando el problema y finaliza la ejecucion del caso de uso Flujo Alterno 2: Los datos suministrados son inválidos Actor Sistema Caso de Uso UC16 Muestra un mensaje indicando los valores inválidos y vuelve al paso 2 del flujo normal Postcondiciones Los nuevos datos del paciente quedan registrados Requerimientos Especiales: Ninguno Puntos de Extensión: Este caso de uso puede iniciarse dentro de (extiende a): • UC11 Consultar paciente Caso de Uso UC17 Nombre: Ver Bitácora Historia Clínica Descripción: Este caso de uso permite a un auditor consultar las entradas en la bitácora de una historia clínica (operaciones realizadas por el resto de los usuarios) Requerimiento que satisface: RF23 Precondiciones: • Ninguna Flujo Normal: Actor Sistema Solicita ver la bitácora de la historia clínica de un paciente suministrando su identificador Muestra un listado con todas las operaciones realizadas en el sistema por los usuarios sobre la historia clínica del paciente solicitado Flujo Alterno 1: El identificador suministrado no es valido Actor Sistema Muestra un mensaje indicando el problema y finaliza la ejecucion del caso de uso Postcondiciones: Ninguna Requerimientos Especiales: Ninguno Puntos de Extensión: Este caso de uso puede iniciarse dentro de (extiende a): • UC11 Consultar paciente Caso de Uso UC18 Nombre: Registrar interconsulta Descripción: Este caso de uso permite a un medico interconsultante registrar una nueva interconsulta en Caso de Uso UC18 el sistema Requerimiento que satisface: RF8 Precondiciones Ninguno Flujo Normal: Actor Sistema Solicita registrar una nueva interconsulta Muestra formulario solicitando los datos de la nueva interconsulta Suministra los datos solicitados para la nueva interconsulta Registra la nueva interconsulta Flujo Alterno 1: Los datos suministrados no son válidos Actor Sistema Muestra mensaje de error especificando los campos con valores inválidos y vuelve al paso 2 del flujo normal Postcondiciones • • • Queda registrada la información en el sistema La operación queda registrada en la bitácora de la interconsulta El grupo de usuarios de triaje son notificados con un correo electrónico sobre la nueva interconsulta registrada Requerimientos Especiales: Ninguno. Puntos de Extensión: Dentro de este caso de uso pueden iniciarse (es extendido por): • UC20 Consultar interconsulta . Caso de Uso UC19 Nombre: Buscar interconsulta Descripción: Este caso de uso permite a un medico interconsultante, medico interconsultado o usuario de triaje buscar interconsultas por cualquier parámetro, incluyendo sus interconsultas asignadas Requerimiento que satisface: RF14 Precondiciones Ninguna Flujo Normal: Actor Solicita buscar interconsultas Sistema Caso de Uso UC19 Muestra un formulario solicitando los parámetros de búsqueda Suministra los parámetros de búsqueda Muestra un listado con las interconsultas coincidentes con los parámetros de búsqueda Flujo Alterno: Ninguno Postcondiciones Ninguna Requerimientos Especiales: Ninguno. Puntos de Extensión: Dentro de este caso de uso pueden iniciarse (es extendido por): • UC20 Consultar interconsulta • UC26 Asignar interconsulta Caso de Uso UC20 Nombre: Consultar interconsulta Descripción: Este caso de uso permite a un medico interconsultante, medico interconsultado o usuario de triaje consultar los datos de una interconsulta registrada en el sistema Requerimiento que satisface: RF11 Precondiciones Ninguna Flujo Normal: Actor Sistema Solicita consultar interconsulta suministrando su identificador Muestra los datos de la interconsulta solicitada Flujo Alterno 1: El identificador suministrado no existe registrado Actor Sistema Muestra un mensaje indicando el problema y finaliza la ejecucion del caso de uso Postcondiciones • La operación queda registrada en la bitácora de la interconsulta Requerimientos Especiales: Ninguno. Puntos de Extensión: Este caso de uso puede iniciarse como parte de (extiende a): • UC18 Registrar interconsulta • UC19 Buscar interconsulta Dentro de este caso de uso pueden iniciarse (es Caso de Uso UC20 extendido por): • UC21 Consultar interconsulta • UC26 Asignar interconsulta Caso de Uso UC21 Nombre: Ver bitácora interconsulta Descripción: Este caso de uso permite a un usuario de triaje, a un medico interconsultante o a un medico interconsultado consultar la bitácora de operaciones realizadas sobre una interconsulta Requerimiento que satisface: RF23 Precondiciones • Ninguna Flujo Normal: Actor Sistema Solicita ver bitácora de interconsulta suministrando su identificador Muestra un listado con las operaciones realizadas por los usuarios, registradas en la bitácora, sobre la interconsulta solicitada Flujo Alterno 1: El identificador suministrado no esta registrado Actor Sistema Muestra mensaje de error y finaliza la ejecucion del caso de uso Postcondiciones Ninguna. Requerimientos Especiales: Ninguno. Puntos de Extensión: Este caso de uso puede iniciarse (extiende a) dentro de: • UC20 Consultar interconsulta Caso de Uso UC22 Nombre: Responder interconsulta Descripción: Este caso de uso permite a interconsultado responder una asignada Requerimiento que satisface: RF15 Precondiciones La interconsulta ha debido ser asignada al medico interconsultado por un usuario de triaje Flujo Normal: Actor Sistema un medico interconsulta Caso de Uso UC22 Solicita responder una interconsulta suministrando su identificador Muestra un formulario solicitando los datos de la respuesta a la interconsulta Suministra los datos de la respuesta a la interconsulta Registra la respuesta a la interconsulta Flujo Alterno 1: El identificador suministrado no existe Actor Sistema Muestra mensaje de error y finaliza la ejecucion del caso de uso Flujo Alterno 1: Los datos suministrados no son válidos Actor Sistema Muestra mensaje de error especificando los campos con valores inválidos y vuelve al paso 2 del flujo normal Postcondiciones Queda registrada la información en el sistema La operación queda registrada en la bitácora de la interconsulta El medico interconsultante que registro la interconsulta ha sido notificado vía correo electrónico de que ha sido respondida Requerimientos Especiales: Ninguno. Puntos de Extensión: Este caso de uso puede iniciarse dentro de (extiende a): • UC20 Consultar Interconsulta Caso de Uso UC23 Nombre: Consultar Preguntas y Respuestas adicionales de Interconsulta Descripción: Este caso de uso permite a un medico interconsultante o a un medico interconsultado consultar las preguntas y respuestas adicionales realizadas en una interconsulta que ha sido respondida Requerimiento que satisface: RF11 RF16 RF18 Precondiciones La interconsulta debe haber sido respondida por el medico interconsultado asignado Flujo Normal: Caso de Uso UC23 Actor Sistema Solicita consultar preguntas y respuestas adicionales de interconsulta suministrando su identificador Muestra un listado con las preguntas y respuestas adicionales de la interconsulta seleccionada Flujo Alterno 1: El identificador suministrado no existe Actor Sistema Muestra un mensaje indicando el problema y finaliza la ejecución del caso de uso Postcondiciones Ninguna Requerimientos Especiales: Ninguno Puntos de Extensión: Dentro de este caso de uso pueden iniciarse (es extendido por): • UC24 Agregar pregunta adicional a interconsulta • UC25 Responder pregunta adicional a interconsulta Este caso de uso puede iniciarse dentro de (extiende a): • UC20 Consultar interconsulta Caso de Uso UC24 Nombre: Agregar pregunta adicional de interconsulta Descripción: Este caso de uso permite a un medico interconsultante registrar una pregunta adicional en una interconsulta ya respondida por el medico interconsultado asignado Requerimiento que satisface: RF16 RF18 Precondiciones • La interconsulta debe haber sido respondida por el medico interconsultado asignado Flujo Normal: Actor Sistema Solicita registrar una nueva pregunta adicional en interconsulta suministrando su identificador Muestra formulario solicitando datos de la nueva pregunta adicional Suministra los datos solicitados Caso de Uso UC24 Registra la nueva pregunta adicional en la interconsulta seleccionada Flujo Alterno 1: El identificador suministrado no existe Actor Sistema Muestra mensaje de error y finaliza la ejecucion del caso de uso Flujo Alterno 1: Los datos suministrados no son válidos Actor Sistema Muestra mensaje de error especificando los campos con valores inválidos y vuelve al paso 2 del flujo normal Postcondiciones El medico interconsultado asignado ha sido notificado vía correo electrónico de la nueva pregunta registradas La operación queda registrada en la bitácora de la interconsulta Requerimientos Especiales: Ninguno. Puntos de Extensión: Este caso de uso puede iniciarse dentro de (extiende a): • UC23 Consultar preguntas y respuestas adicionales de interconsulta Caso de Uso UC25 Nombre: Responder pregunta adicional de interconsulta Descripción: Este caso de uso permite a un medico interconsultante responder una pregunta adicional en una interconsulta (ya respondida por el medico interconsultado asignado) registrada por el medico interconsultante Requerimiento que satisface: RF16 RF18 Precondiciones • • La interconsulta debe haber sido respondida por el medico interconsultado asignado Debe existir al menos una pregunta adicional en la interconsulta que no haya sido respondida Flujo Normal: Actor Sistema Solicita registrar la respuesta a una pregunta adicional en interconsulta suministrando su identificador Muestra formulario solicitando datos de la respuesta Caso de Uso UC25 a la pregunta adicional Suministra los datos solicitados Registra la respuesta a la pregunta adicional en la interconsulta seleccionada Flujo Alterno 1: El identificador suministrado no existe Actor Sistema Muestra mensaje de error y finaliza la ejecucion del caso de uso Flujo Alterno 1: Los datos suministrados no son válidos Actor Sistema Muestra mensaje de error especificando los campos con valores inválidos y vuelve al paso 2 del flujo normal Postcondiciones El medico interconsultante que registro la interconsulta ha sido notificado vía correo electrónico de la nueva respuesta registradas La operación queda registrada en la bitácora de la interconsulta Requerimientos Especiales: Ninguno. Puntos de Extensión: Este caso de uso puede iniciarse dentro de (extiende a): • UC23 Consultar preguntas y respuestas adicionales de interconsulta Caso de Uso UC26 Nombre: Asignar interconsulta Descripción: Este caso de uso permite a un usuario del grupo de triaje asignar una interconsulta registrada a un medico interconsultado para su resolución Requerimiento que satisface: RF13 Precondiciones • La interconsulta no debe haber sido respondida por un medico interconsultado previamente Flujo Normal: Actor Sistema Solicita asignar una interconsulta suministrando su identificador Muestra formulario para asignar la interconsulta Caso de Uso UC26 Suministra el identificador del medico interconsultado que desea asignar a la interconsulta Registra la asociación entre el medico interconsultado y la interconsulta Flujo Alterno 1: Los identificadores suministrados no existen Actor Sistema Muestra mensaje de error y finaliza la ejecucion del caso de uso Postcondiciones El medico interconsultado queda asignado a la interconsulta seleccionada, pudiendo responderla Requerimientos Especiales: Ninguno. Puntos de Extensión: Este caso de uso puede iniciarse dentro de (extiende a): • UC19 Buscar Interconsulta Caso de Uso UC27 Nombre: Asignar especialidad a usuario Descripción: Este caso de uso permite a un usuario del grupo de triaje asignar especialidades a usuarios Requerimiento que satisface: RF12 Precondiciones • Ninguna Flujo Normal: Actor Sistema Solicita asignar especialidad a usuario suministrando su identificador Muestra formulario solicitando especialidad a asignar Suministra especialidad a asignar a usuario seleccionado Asocia la especialidad seleccionada al usuario indicado Flujo Alterno 1: El identificador suministrado no existe Actor Sistema Muestra un mensaje indicando el problema y finaliza la ejecución del caso de uso Postcondiciones Ninguna Caso de Uso UC27 Requerimientos Especiales: Ninguno. Puntos de Extensión: Este caso de uso puede iniciarse dentro de (extiende a): • UC8 Consultar usuario 3 Requisitos Específicos 3.1 Requisitos Funcionales (Refinamiento de los requerimientos funcionales de los TDR) ID del Requerimiento: RF1 Nombre del Requerimiento: Gestionar especificacion de fichas y subfichas de Historia Clinica Características: El sistema debe permitir establecer dinamicamente la estructura de la historia clinica de pacientes a través del registro de especificaciones de fichas y sus relaciones recursivas La prioridad es: Alta ID del Requerimiento: RF2 Nombre del Requerimiento: Gestionar especificación de campos de historia clínica Características: El sistema debe permitir establecer dinámicamente la estructura de una ficha/subficha de historia clínica, a través del registro de los campos y sus características (tipos de datos, restricciones de valores, dependencias y expresiones para pre-cargar) y su asociación a la ficha/subficha correspondiente La prioridad es: Alta ID del Requerimiento: RF3 Nombre del Requerimiento: Crear Historia Clinica Características: El sistema debe permitir a los usuarios autorizados registrar un nuevo paciente con datos básicos y la información correspondiente a su historia clinica (instancias de campos y fichas), de acuerdo al esquema y estructura definidos a través de la especificación de fichas/subfichas y campos La prioridad es: Alta ID del Requerimiento: RF4 Nombre del Requerimiento: Consultar historia clínica Características: El sistema permitirá consultar los datos básicos y fichas y subfichas de la historia clínica registrados de un paciente La prioridad es: Media Alta ID del Requerimiento: RF5 Nombre del Requerimiento: Buscar historia clínica por cualquier parámetro Características: El sistema permitirá buscar historias clínicas de pacientes a través de cualquier parametro, incluyendo aquellos asociados a las fichas y subfichas La prioridad es: Alta ID del Requerimiento: RF6 Nombre del Requerimiento: Registrar instanciación de fichas y subfichas asociadas a historia clínica Características: El sistema permitirá instanciar fichas y subfichas de historia clínica a partir de su especificacion (campos y sus características), asociadas a un paciente, para registrar los elementos de datos que compongan su historia clínica La prioridad es: Alta ID del Requerimiento: RF7 Nombre del Requerimiento: Editar valores de campos en instancias de fichas y sbfichas de historia clínica Características: El sistema permitira modificar los valores de los campos asociados a las instancias de fichas y subfichas de historia clínica de acuerdo a sus características y reglas de validación definidas en su especificación La prioridad es: Alta ID del Requerimiento: RF8 Nombre del Requerimiento: Registrar interconsulta Características: El sistema debe permitir a los medicos interconsultantes registrar interconsultas para ser asignadas por el grupo de triaje a medicos interconsultados (especialistas) y ser posteriormente respondidas por estos La prioridad es: Alta ID del Requerimiento: RF9 Nombre del Requerimiento: Asociar archivos adjuntos a interconsulta Características: El sistema permitirá adjuntar archivos arbitrarios a interconsultas La prioridad es: Media Alta ID del Requerimiento: RF10 Nombre del Requerimiento: Precargar datos de interconsulta a partir de información registrada en historia clínica Características: El sistema permitira pre-cargar una nueva interconsulta con datos específicos asociados a la historia clínica del paciente, para simplficar su llenado La prioridad es: Media Alta ID del Requerimiento: RF11 Nombre del Requerimiento: Consultar Interconsulta Características: El sistema permitirá consultar tanto a los médicos interconsultantes, interconsultados y grupo de triaje, todos los datos de una interconsulta registrada La prioridad es: Media Alta ID del Requerimiento: RF12 Nombre del Requerimiento: Editar Interconsulta Características: El sistema permitirá editar los datos de una interconsulta que no haya sido respondida únicamente por el usuario medico interconsultante que la ha registrado La prioridad es: Media Alta ID del Requerimiento: RF13 Nombre del Requerimiento: Asignar interconsulta a especialista Características: El sistema permitirá a los usuarios del grupo de triaje asignar interconsultas que no hayan sido respondidas a medicos interconsultados (especialistas) de acuerdo a su especialidad La prioridad es: Media Alta ID del Requerimiento: RF14 Nombre del Requerimiento: Buscar interconsulta por cualquier parametro Características: El sistema permitirá buscar interconsultas registradas por cualquier parametro La prioridad es: Media ID del Requerimiento: UC15 Nombre del Requerimiento: Responder interconsulta Características: El sistema permitira al medico interconsultado asignado por el grupo de usuarios de triaje, responder la interconsulta. Al registrar la respuesta el interconsultado sera notificado via correo electronico La prioridad es: Alta ID del Requerimiento: UC16 Nombre del Requerimiento: Registrar pregunta en interconsulta Características: El sistema debe permitir al medico interconsultante registrar preguntas adicionales en las interconsultas registradas, una vez que hayan sido respondidas inicialmente por el medico interconsultado asignado La prioridad es: Alta ID del Requerimiento: UC17 Nombre del Requerimiento: Asociar archivo adjunto a pregunta en interconsulta Características: El sistema permitirá asociar archivos adjuntos arbitrarios a las preguntas adicionales registradas por el medico interconsultante que registro la interconsula La prioridad es: Alta ID del Requerimiento: UC18 Nombre del Requerimiento: Registrar respuesta a pregunta en interconsulta Características: El sistema permitira al medico interconsultado asignadoa una interconsulta, registrar respuesta a preguntas adicionales registradas por el interconsulante La prioridad es: Alta ID del Requerimiento: UC19 Nombre del Requerimiento: Asociar archivo adjunto a respuesta en interconsulta Características: El sistema permitirá asociar archivos adjuntos arbitrarios a las respuestas a preguntas adicionales registradas por el medico interconsultado asignado a la interconsula La prioridad es: Alta ID del Requerimiento: UC21 Nombre del Requerimiento: Gestionar usuarios Características: El sistema permitirá gestionar (agregar, editar, eliminar y consultar) usuarios La prioridad es: Alta ID del Requerimiento: UC22 Nombre del Requerimiento: Gestionar roles, perfiles y permisologia Características: El sistema permitirá establecer permisos de acceso y funcionalidades autorizadas por roles y perfiles de usuario. Inicialmente se requieren los roles medico interconsultante, medico interconsultado, triaje, auditor y administrador del sistema La prioridad es: Alta ID del Requerimiento: UC23 Nombre del Requerimiento: Gestionar y registrar bitácoras de operaciones en el sistema Características: El sistema deberá registrar todas las operaciones de interés realizadas por los usuarios en bitácoras que puedan ser posteriormente consultadas La prioridad es: Alta ID del Requerimiento: UC24 Nombre del Requerimiento: Asociar valores máximos y mínimos permitidos a especificación de campos de tipo numérico en historia clínica numéricos Características: El sistema debe permitir especificar los valores máximos y mínimos permitidos para los campos de tipo numérico en su especificación, como parte de la especificación de fichas y subfichas de historia clínica La prioridad es: Media ID del Requerimiento: UC25 Nombre del Requerimiento: Permitir pre-cargar campos de historia clínica con valores generados a partir de expresiones arbitrarias Características: El sistema debe permitir calcular expresiones arbitrarias parametrizadas con los campos de las fichas y subfichas de historia clínica para llenar de forma predeterminada campos establecidos, para facilitar el llenado de la historia clínica de pacientes La prioridad es: Media Alta ID del Requerimiento: RF26 Nombre del Requerimiento: Permitir marcar campos de historia clínica como de solo lectura Características: El sistema debe permitir definir determinados campos de fichas y subfichas de historia clínica como de solo lectura, de acuerdo a su especificación La prioridad es: Media ID del Requerimiento: RF27 Nombre del Requerimiento: Gestionar noticias Características: El sistema debe permitir gestionar (crear, editar, eliminar y consultar) noticias a ser mostradas en la pagina principal La prioridad es: Baja ID del Requerimiento: RF28 Nombre del Requerimiento: Permitir campos seleccionables dependientes en historia clinica a traves de AJAX Características: El sistema debe permitir establecer determinados campos de fichas y subfichas de historia clinica como dependientes, de manera que las posibles opciones del campo varien de acuerdo a la opción seleccionada de otro, a través de un mecanismo basado en AJAX La prioridad es: Media 52.