Post on 30-Dec-2019
UNIVERSIDAD CENTRAL DEL ECUADOR
FACULTAD DE INGENIERÍA CIENCIAS FÍSICAS Y
MATEMÁTICA
CARRERA DE INGENIERÍA INFORMÁTICA
MEJORAMIENTO DEL NIVEL DE SATISFACCION EN LOS SERVICIOS DEL SUBCENTRO DE SALUD Y ODONTOLÓGICO
HUIRUNO, MEDIANTE LA AUTOMATIZACIÓN DE GESTIÓN DE PACIENTES
TRABAJO DE GRADUACIÓN PREVIO LA OBTENCIÓN DEL
TÍTULO DE INGENIERO EN INFORMÁTICA
AUTOR
FABIÁN PATRICIO SILVA MUÑOZ
TUTOR: ING. RENÉ ALFONSO CARRILLO FLORES. MSc.
Quito-Ecuador 2015
ii
DEDICATORIA
A mis angelitos, mis padres que desde el cielo me miran, en especial a mi madre que con cariño supo
inculcarme y dar buenos valores. A mis hermanos, a mis tíos y a mi novia, por su tiempo,
paciencia y apoyo durante este camino.
iii
AGRADECIMIENTOS
Agradezco a la mujer que me dio la vida, mi madre Cecibel que fue la que me formo
con buenos sentimientos, hábitos y valores, la cual me ayudo a salir adelante en los
momentos más difíciles. Y la que estoy seguro me sigue cuidando y guiando desde
el cielo.
A mis hermanos Santiago y Soraya, que han estado junto a mí, brindándome su
apoyo incondicional.
A mi novia Ximena, mi compañera, por el apoyo brindado, la paciencia y sobre todo
por estar a mi lado siempre.
A mi padre Edgar, el cual a pesar de haberlo perdido a muy temprana edad, supo
dejarme enseñanzas de vida que me hicieron convertirme en el hombre que soy.
A mi familia en general porque me han brindado su apoyo incondicional y por
compartir conmigo buenos y malos momentos.
iv
AUTORIZACION DE LA AUTORÍA INTELECTUAL
v
CERTIFICACIÓN TUTOR
vi
INFORME SOBRE LA CONCLUSIÓN DEL TRABAJO DE GRADUACIÓN
vii
DESIGNACIÓN DE TRIBUNAL
viii
CALIFICACIÓN DE TRIBUNAL
ix
CONTENIDO
DEDICATORIA ............................................................................................................................ii
AGRADECIMIENTOS ................................................................................................................. iii
AUTORIZACION DE LA AUTORÍA INTELECTUAL ........................................................................ iv
CERTIFICACIÓN TUTOR ............................................................................................................. v
INFORME SOBRE LA CONCLUSIÓN DEL TRABAJO DE GRADUACIÓN ....................................... vi
DESIGNACIÓN DE TRIBUNAL ................................................................................................... vii
CALIFICACIÓN DE TRIBUNAL .................................................................................................. viii
CONTENIDO.............................................................................................................................. ix
LISTA DE TABLAS .................................................................................................................... xiii
LISTADO DE FIGURAS ............................................................................................................. xiv
RESUMEN ................................................................................................................................ xv
DESCRIPTORES: ....................................................................................................................... xv
ABSTRACT ............................................................................................................................... xvi
DESCRIPTORS: ........................................................................................................................ xvi
INTRODUCCIÓN ........................................................................................................................ 1
CAPITULO 1: PRESENTACIÓN DEL PROBLEMA ......................................................................... 2
1.1. Planteamiento del Problema ............................................................................ 2
1.2. Formulación del problema ................................................................................ 3
1.3. Interrogantes de la Investigación ................................................................... 3
1.4. Justificación ......................................................................................................... 3
CAPITULO 2: INFORME DE INVESTIGACIÓN ............................................................................. 5
2.1. Presentación del Subcentro de Salud ........................................................... 5
2.1.1. Ubicación ........................................................................................................ 5
2.1.2. Objetivo ........................................................................................................... 5
2.1.3. Políticas .......................................................................................................... 5
2.1.4. Organización Formal..................................................................................... 6
2.1.5. Descripción de las áreas .............................................................................. 6
2.1.6. Procesos Manejados .................................................................................... 7
2.1.7. Recursos informáticos existentes ............................................................... 8
2.1.7.1. Plataforma de Hardware ...................................................................... 8
2.1.7.2. Plataforma de Software ........................................................................ 8
2.1.7.3. Sistema Informático .............................................................................. 8
2.1.8. Diagnostico ..................................................................................................... 9
x
CAPITULO 3: SISTEMA INFORMÁTICO PROPUESTO ................................................................. 9
3.1. Objetivo General ................................................................................................ 9
3.2. Objetivos Específicos ....................................................................................... 9
3.3. Alcance ............................................................................................................... 10
3.4. Limitaciones ...................................................................................................... 10
CAPITULO 4: METODOLOGÍA RUP ......................................................................................... 11
4.1. Metodología ....................................................................................................... 11
4.1.1. Diseño de la investigación ............................................................................ 11
4.1.2. Diseño Experimental ..................................................................................... 11
4.1.3. Metodología RUP ........................................................................................... 11
4.1.4. Metodología de desarrollo ............................................................................ 12
4.1.5. Arquitectura ..................................................................................................... 13
CAPITULO 5: DESARROLLO DEL SISTEMA CON LA METODOLOGIA RUP ................................ 14
5.1. FASESDE INICIO .............................................................................................. 14
5.1.1. Introducción .................................................................................................... 14
5.1.2. Modelado del negocio ................................................................................... 15
5.1.2.1 Subcentro de Salud y Odontológico Huiruno .............................. 15
5.1.3. Casos de Uso ................................................................................................. 17
5.1.3.1 C1: Definición de Datos del Subcentro.................................................. 18
5.1.3.2. C2: Creación de Usuario. ....................................................................... 18
5.1.3.3. C3: Búsqueda y Mantenimiento de Usuario. ....................................... 19
5.1.3.4. C4: Creación del Paciente. ..................................................................... 21
5.1.3.5. C5: Búsqueda y Mantenimiento del Paciente. .................................... 22
5.1.3.6. C6: Crear Factura. .................................................................................... 23
5.1.3.7. C7: Búsqueda y Mantenimiento de la Factura. ................................... 24
5.1.3.8. C8: Registro de ingreso/ admisión. ....................................................... 25
5.1.3.9. C9: Creación del fármaco. ...................................................................... 27
5.1.3.10. C10: Búsqueda y Mantenimiento del fármaco. ................................. 28
5.1.3.11. C11: Creación de la Enfermedad. ....................................................... 29
5.1.3.12. C12: Búsqueda y Mantenimiento de una Enfermedad. ................... 29
5.1.3.13. C13: Creación de Cita. ......................................................................... 30
5.1.3.14. C14: Búsqueda y Mantenimiento de una Cita. ................................. 31
5.1.3.15. C15: Creación de la Evaluación Médica. ........................................... 32
5.1.3.16. C16: Visualización de la lista de pacientes. ...................................... 33
xi
5.1.3.17. C17: Creación del Informe. .................................................................. 34
5.1.3.18. C18: Creación del Odontograma. ....................................................... 36
5.1.3.19. C19: Búsqueda y Mantenimiento del Odontograma. ....................... 36
5.1.3.20. C20: Creación del Tratamiento. .......................................................... 37
5.1.3.21. C21: Búsqueda y Mantenimiento del Tratamiento. .......................... 38
5.1.3.22. C22: Toma de signos vitales. .............................................................. 40
5.2. FASE DE ELABORACIÓN .............................................................................. 40
5.2.1. Análisis/diseño ............................................................................................. 40
5.3. FASE DE CONSTRUCCIÓN ............................................................................. 43
CAPITULO 6: MANUAL DE INSTALACIÓN ............................................................................... 43
6.1. Requerimientos ................................................................................................ 44
6.2. Requerimientos para el Entorno de Producción ...................................... 45
6.3. Instalación del servidor de base de datos Postgres 9.3. ...................... 46
6.4. Instalación de Servidor Web Jboss 6.0 ..................................................... 54
6.4.1. Verificando el funcionamiento del Servidor Jboss 6.0 ........................... 55
CONCLUSIONES ...................................................................................................................... 62
RECOMENDACIONES .............................................................................................................. 63
BIBLIOGRAFIA ......................................................................................................................... 64
ANEXOS .................................................................................................................................. 66
Manual de Usuario ........................................................................................................ 66
Introducción .................................................................................................................. 66
Objetivo ......................................................................................................................... 66
Diseño de prototipos de interfaces de Usuario ....................................................... 66
Manual técnico ............................................................................................................. 112
Introducción ................................................................................................................ 112
Diccionario de Datos ................................................................................................. 112
Base de Datos ........................................................................................................... 118
Base de Datos clínica ........................................................................................... 118
Role postgres ......................................................................................................... 118
Servidor de Aplicaciones .......................................................................................... 118
Configuración de la fuente de datos ................................................................... 118
Mapeo de las entidades ....................................................................................... 120
Capa de Negocio ....................................................................................................... 121
Abstract DAO ......................................................................................................... 121
xii
Diagrama de paquetes ......................................................................................... 122
Paquete DAO. ................................................................................................... 122
Paquete Entity. ................................................................................................. 123
Paquete Util. ..................................................................................................... 123
Capa WEB .................................................................................................................. 124
Configuración de Descriptor de Despliegue (web.xml) ................................... 124
Configuración de facelets: ........................................................................... 125
Configuración de JSF: ................................................................................... 125
Configuración del archivo JSF (faces-config.xml) ............................................ 126
Configuración del archivo JBoss (jboss-web.xml) ............................................ 127
Configuración de Mensajes del Sistema ........................................................... 127
Diagrama de paquetes ......................................................................................... 127
Descripción de los paquetes ............................................................................... 128
Paquete img ...................................................................................................... 128
Paquete protected ........................................................................................... 128
Paquete resources .......................................................................................... 129
Paquete controllers ........................................................................................ 129
xiii
LISTA DE TABLAS
TABLA 1 TABLA DE ACTORES ..................................................................................................................... 16
xiv
LISTADO DE FIGURAS
FIGURA 1 ORGANIZACIÓN FORMAL DEL SUBCENTRO DE SALUD Y ODONTOLÓGICO HUIRUNO. ............ 6
FIGURA 2 CICLO DE VIDA DE RUP .............................................................................................................. 12
FIGURA 3 MODELADO DEL NEGOCIO ........................................................................................................ 15
FIGURA 4 SUBSISTEMA ADMINISTRACIÓN ............................................................................................... 17
FIGURA 5 SUBSISTEMA RECEPCIÓN .......................................................................................................... 21
FIGURA 6 SUBSISTEMA DOCTOR GENERAL............................................................................................... 32
FIGURA 7 SUBSISTEMA ODONTÓLOGO .................................................................................................... 35
FIGURA 8 SUBSISTEMA ENFERMERA ........................................................................................................ 39
FIGURA 9 DIAGRAMA DE CLASES .............................................................................................................. 41
FIGURA 10 MODELO ENTIDAD RELACIÓN ................................................................................................. 42
FIGURA 11 DIAGRAMAS DE PAQUETES .................................................................................................. 122
FIGURA 12 PAQUETE DAO ....................................................................................................................... 122
FIGURA 13 PAQUETE ENTITY ................................................................................................................... 123
FIGURA 14 PAQUETE UTIL ....................................................................................................................... 123
FIGURA 15 DIAGRAMA DE PAQUETES .................................................................................................... 127
FIGURA 16 PAQUETE IMG ....................................................................................................................... 128
FIGURA 17 PAQUETE PROTECTED ........................................................................................................... 128
FIGURA 18 PAQUETE RESOURCES ........................................................................................................... 129
FIGURA 19 PAQUETE CONTROLLERS ....................................................................................................... 129
xv
RESUMEN
MEJORAMIENTO DEL NIVEL DE SATISFACCION EN LOS SERVICIOS DEL SUBCENTRO DE SALUD Y ODONTOLÓGICO HUIRUNO, MEDIANTE LA
AUTOMATIZACIÓN DE GESTIÓN DE PACIENTES
El sistema desarrollado mejora la calidad que ofrece el subcentro de salud,
mediante la automatización del manejo de la información médica, además de
facilitar las funciones del personal al reducir tiempos de búsqueda y organización en
la atención de los pacientes; ofrece también seguridad de la información al ser
almacenada en una base de datos. Luego de realizar el análisis de los
requerimientos se optó por emplear la metodología ágil RUP puesto que utiliza una
notación de casos de uso y escenarios para representar las necesidades de los
usuarios.
DESCRIPTORES:
PROYECTOS DE DESARROLLO DE SOFTWARE /GESTIÓN DE PROYECTOS
/JSF /DAO /DTO /HIBERNATE /POSTGRESQL /ARQUITECTURA N-CAPAS
/METODOLOGÍA RUP /PRIMEFACES /JBOSS 6 /POSTGRES.
xvi
ABSTRACT
IMPROVEMENT OF SATISFACTION IN HEALTH SERVICES AND DENTAL
SUBCENTRO HUIRUNO, BY AUTOMATING LEVEL MANAGEMENT OF
PATIENTS
The developed system improves the quality offered health sub-center, by
automating the management of medical information and also facilitate staff functions
by reducing search time and organization in care of patients; also provides
information security to be stored in a database. After performing the requirements
analysis we chose to use Agile RUP since it uses a notation for use cases and
scenarios to represent the needs of users.
DESCRIPTORS:
SOFTWARE DEVELOPMENT PROJECTS / PROJECT MANAGEMENT / JSF /
DAO / DTO / HIBERNATE / POSTGRESQL / ARCHITECTURE N-PLY /
METHODOLOGY RUP / PRIMEFACES / JBOSS 6 / POSTGRES.
xvii
xviii
1
INTRODUCCIÓN
El tema del cuidado de la salud es fundamental tratarlo, tanto en el aspecto laboral,
como en el aspecto de calidad de vida que se puede brindar un ser humano, la
mayoría de personas en algún instante estuvo involucrado como paciente, con la
finalidad de ser ayudado con una cura, tratamiento o simplemente realizar una
prevención de su buena salud.
En las comunidades, donde el nivel de estudio es limitado, el tema de salud es
fundamental para prolongar una buena y larga vida de sus habitantes. Con este
propósito, se han creado los subcentros de salud con consultorio odontológico que
son de gran ayuda para estas comunidades.
Para cumplir el objetivo de una buena atención, los subcentros de salud y todas las
entidades médicas, manejan una herramienta muy útil que es el historial clínico.
El historial clínico es una herramienta utilizada por los especialistas, para generar
un buen tratamiento y diagnóstico al paciente, y así poder darle un seguimiento
oportuno y ágil elaborando un correcto plan preventivo y curativo.
La gestión acertada de los procesos administrativos, ayudan a mejorar el servicio
hacia los pacientes, y a aumentar la eficiencia en el trabajo del subcentro de salud,
además de mitigar las fallas, que suelen causar molestias e ineficiencia en la
calidad de la atención por parte de los profesionales.
Al proporcionar una buena gestión de los turnos de llegada y atención, se promueve
una mejora en la productividad del subcentro de salud, disminuye el estrés y genera
mayor tiempo para atención de calidad de los pacientes.
Actualmente las entidades encargadas de la gestión de la salud, han optado por
agilizar sus procesos y digitalizar la información de sus pacientes a través del
desarrollo de proyectos de software de gestión hospitalaria.
Un software médico se convierte en una gran herramienta para las entidades
médicas, ya que al automatizar los procesos mejora la calidad en los servicios de
atención al paciente y mejora los tiempos de despacho de un paciente desde el
momento en el que ingresa al subcentro de salud o a la entidad médica que
corresponda.
El subcentro de salud y odontológico Huiruno no cuenta con alguna herramienta de
software que se alinea sus procesos, lo cual dificulta el manejo adecuado de las
2
fichas de pacientes y tiene la necesidad de contar con un sistema que permita
automatizar sus procesos internos, con la finalidad de mejorar la atención con sus
pacientes.
Las personas siempre han tenido la necesidad de cuidar su salud y para ello,
buscan el ambiente más adecuado, eso significa contar con especialistas altamente
calificados, e instalaciones adecuadas.
CAPITULO 1: PRESENTACIÓN DEL PROBLEMA
1.1. Planteamiento del Problema
La calidad de la atención médica brindada en los Subcentros de Salud y
Odontológicos y en los Servicios de Salud se ha convertido actualmente en una
necesidad para todo profesional de la Salud, ya sea de práctica privada, o pública.
La calidad en salud se mide considerando cinco elementos fundamentales:
excelencia profesional, uso eficiente de los recursos, mínimo riesgo para el
paciente, alto grado de satisfacción y el impacto final que tiene en la salud.
En consecuencia y como reflejo de todo esto el Subcentro de Salud y
Odontológico, evidencia algunos problemas en este aspecto resumidos de la
siguiente manera:
La principal información se encuentra archivada en documentos físicos
guardados en anaqueles y completamente desorganizada.
La petición de citas se realiza en una agenda de citas, en la cual se
organizan los tiempos de los participantes sin tomar en cuenta las
cancelaciones o faltas a las citas.
No se lleva un registro de los pagos y saldos de los pacientes, igualmente
del control de los precios.
No existe un correcto almacenamiento de los datos de los pacientes por
ende no se puede realizar una búsqueda eficiente y en especial rápida.
3
1.2. Formulación del problema
Con estos antecedentes se evidencia como en el Subcentro de Salud y
Odontológico Huiruno se posee algunos problemas, relacionados con los conceptos
de calidad y con algunos criterios que se pueden utilizar en los centros de salud
para evaluar la calidad y poder entonces mejorar la atención de los pacientes y su
satisfacción.
En concordancia con lo antes expuesto, formulamos el siguiente problema de
investigación:
¿De qué manera incide la automatización de los procesos y la aplicación de un
programa de mejoramiento continuo de la calidad en la atención en los servicios
que presta el Subcentro de Salud y Odontológico Huiruno?
1.3. Interrogantes de la Investigación
De acuerdo a la investigación se desea contestar las siguientes interrogantes:
¿Cómo se puede mejorar la calidad de servicio hacia los pacientes?
¿De qué forma se puede mantener una administración correcta de las fichas
de los pacientes en el subcentro?
¿Cómo evitar la pérdida de información tanto administrativo como del propio
paciente?
¿Cómo poder dar un seguimiento apropiado al paciente por medio de las
historias clínicas del mismo?
¿Cómo poder controlar, modificar y agregar citas dentro del subcentro?
¿El paciente tiene muchas citas para terminar su tratamiento?
1.4. Justificación
En el Subcentro de Salud y Odontológico Huiruno se ha identificado que desde el
inicio del proceso de atención a un paciente, al paciente se le pide el número de
historia clínica y a partir de este dato se busca en el anaquel la ficha
correspondiente.
4
En la actualidad esto es un trabajo tedioso debido al creciente número de fichas de
pacientes y a los problemas que esto conlleva, tales como duplicidad de fichas,
deterioro, perdida y la alta cantidad de espacio físico requerido.
Al terminar la consulta, se apuntan en la ficha tanto operaciones realizadas,
comentarios, observaciones, receta, consulta, y tratamientos para el historial
médico además si fuese el caso algún cobro realizado. Actualmente los precios de
cada operación no residen en ningún documento, sino que el odontólogo que
realiza la operación pone el precio, y estos no son estrictamente fijos, sino que a
determinados pacientes se les puede hacer un descuento por diversas razones.
Cuando alguna parte de la ficha rebasa su tamaño físico se crea otra ficha y se la
adjunta a la anterior utilizando una grapa. Las fichas se almacenan en varios
archivos, ordenadas mediante el número de historia.
En el caso de que alguna ficha requiera un comentario, se lo hace en alguna parte
libre de esta, al no haber ningún espacio determinado para este propósito.
En el caso de deterioro, los datos de la ficha son copiados en otra libre,
reemplazando la nueva por la deteriorada destruyendo esta última. Lo mismo
ocurre en el caso de modificación de alguno de los datos de la ficha tales como
domicilio, número de teléfono, entre otra información.
Por todas estas consideraciones, se justifica la realización del presente trabajo, con
el objetivo de proporcionar algunos conceptos de calidad y la automatización de
varios procesos del Subcentro de Salud.
5
CAPITULO 2: INFORME DE INVESTIGACIÓN
2.1. Presentación del Subcentro de Salud
2.1.1. Ubicación
El Subcentro de Salud Huiruno está ubicado en la provincia de Orellana, cantón
Loreto, Parroquia Nueva Esperanza, comunidad Huiruno.
2.1.2. Objetivo
Brindar la mejor atención médica posible a todos los pacientes que la requieran en
dicha provincia.
2.1.3. Políticas
El subcentro de salud solo presta atención únicamente en sus
instalaciones.
El horario de atención del subcentro de salud es de 8 a.m. hasta 5 p.m.
Los pacientes que llegan al subcentro de salud, se registran en la recepción
y son atendidos en el orden en que son registrados.
La atención de los pacientes está a cargo únicamente por los doctores y
enfermeras(os) del subcentro.
Los servicios prestados en el subcentro de salud son:
- Tratamientos médicos.
- Tratamientos odontológicos
- Tratamientos quirúrgicos.
- Tratamientos profilácticos.
En algunos tratamientos los pacientes deben cancelar una tarifa mínima
definida de acuerdo al tipo de tratamiento, y en casos muy especiales al uso
de medicinas y otros insumos en el mismo. Por cada cobro se entrega una
factura.
El subcentro de salud lleva un registro de lo facturado por la atención
prestada al paciente.
6
2.1.4. Organización Formal
Las funciones actualmente vigentes en el Subcentro de Salud y Odontológico
Huiruno son descritas gráficamente en la figura 1.
ORGANIZACION FORMAL DEL SUBCENTRO DE SALUD Y ODONTOLOGICO
HUIRUNO
Figura 1 Organización formal del subcentro de salud y odontológico Huiruno. Autor: Tesista
Fuente: Tesista (GliffyUml).
2.1.5. Descripción de las áreas
Dirección: Es el área que se encarga de gestionar la planificación,
organización y dirección del Subcentro, fomentando así una mejor atención
a los pacientes. Está a cargo del Director del Subcentro, al no existir una
persona encargada de esta área el médico odontólogo es el encargado de
estas funciones.
Recepción: Es el área que se encarga de recibir a los pacientes, registrarlos
y en el caso de que sea necesario abrirles una ficha médica. Esta área está
a cargo de la secretaria o recepcionista del subcentro.
Enfermería/Asistencia: Corresponde a las áreas del subcentro en las que se
trata a los pacientes por parte de los profesionales. Esta área está a cargo
de los doctores, los pasantes y los enfermeros y se subdivide en:
7
- Consultorios: Son los lugares en los cuales los pacientes son
examinados y a los cuales se les da atención ambulatoria.
- Odontología: Es el área del Subcentro que brinda a sus pacientes
salud dental.
Las recetas emitidas a los pacientes después de haber recibido la
atención necesaria en el área odontológica, serán entregadas a los
pacientes directamente por los doctores que los atendieron.
2.1.6. Procesos Manejados
Los principales procesos manejados por el subcentro de salud son:
Creación de ficha médica: Este proceso se da cuando un paciente llega al
subcentro de salud por primera vez y se registran sus datos principales. La
ficha médica creada sirve para poder dar un seguimiento del paciente en
sus visitas futuras.
Registro de admisión: Este proceso se lleva a cabo cuando el paciente llega
al Subcentro de Salud para recibir atención médica y su ficha ya se
encuentra creada, se procede a registrar su ingreso.
Evaluación Médica: Consiste en recoger los datos relativos al paciente en
cuanto a signos y síntomas que este experimenta, signos vitales, con lo cual
se hace un examen físico para dar un tratamiento adecuado y el
correspondiente diagnóstico, indicaciones, tratamiento y receta.
Tratamiento Odontológico: Este proceso es similar a la evaluación médica,
pero se la realiza por el odontólogo, ofreciendo un tratamiento dental
respectivo.
Facturación: Tras la ejecución de cierto tratamiento odontológico, el paciente
se acercara a pagar por el servicio recibido. Luego de la cancelación se
entrega la correspondiente factura. Debemos recalcar que la facturación por
servicios prestados solo corresponde al área odontológica.
8
2.1.7. Recursos informáticos existentes
2.1.7.1. Plataforma de Hardware
Terminales de Usuario: El subcentro posee varias computadoras las cuales son de
las siguientes características:
Servidor: El subcentro de Salud y Odontológico Huiruno no tiene un servidor
dedicado, se utilizó una máquina portátil con este fin, esta portátil será utilizada
como servidor y una estación más de trabajo mientras se gestiona un servidor
dedicado:
- Procesador Core I3 de 2.13 GHz.
- Memoria RAM de 4Gb.
- Disco duro de 320GB.
- Tarjeta de red ethernet 10/100 BASE-T (par trenzado).
Computador de recepción:
- Procesador Celeron de 1.66 GHz.
- Memoria RAM de 1GB.
- Disco duro con 320 GB de capacidad
- Tarjeta de red Ethernet 10/100 BASE-T (par trenzado).
Computador portátil: aparte de la portátil que será utilizada como servidor se
consiguió los datos de la portátil perteneciente al área del consultorio médico.
- Procesador Pentium de 2.1 GHz.
- Memoria RAM de 2GB.
- Disco duro con 500 GB de capacidad
- Tarjeta de red Ethernet 10/100 BASE-T (par trenzado).
2.1.7.2. Plataforma de Software
Las terminales de usuario utilizan como sistema operativo Microsoft Windows XPy
Windows 7, el servidor tiene como sistema operativo Microsoft Windows 7
2.1.7.3. Sistema Informático
El subcentro de salud no cuenta con ningún sistema de gestión de información de
los pacientes, ni alguna herramienta de control de precios y facturas los datos se
registran a mano en fichas impresas en papel destinadas para este fin.
9
2.1.8. Diagnostico
A partir de lo observado en las instalaciones del subcentro de salud se han
detectado los siguientes problemas:
Es muy difícil hallar las fichas médicas y en muchas ocasiones estas se
pierden, lo cual causa que no se disponga del historial médico de los
pacientes que es de mucha utilidad para el tratamiento de los mismos.
Además se produce un mal gasto de los recursos del subcentro de salud en
la impresión de las fichas para registrar en cada ocasión los datos de los
pacientes que ingresan.
No existe orden en el tratamiento de los pacientes ya que no se lleva un
registro ordenado de las admisiones.
La información de las evaluaciones de los pacientes no se registra de forma
estructurada.
Cuando se debe tratar a muchos pacientes al mismo tiempo el servicio se
torna lento.
Las fichas de los pacientes contienen la información sin orden ni estructura,
además esta información no tiene legibilidad y solo puede ser descifrada por
la persona que la escribió.
CAPITULO 3: SISTEMA INFORMÁTICO PROPUESTO
3.1. Objetivo General
Mejorar la calidad de los servicios que presta el Subcentro de Salud y Odontológico
Huiruno, a través de un sistema de automatización de procesos internos de dicha
entidad y así lograr un mayor nivel de satisfacción por los servicios prestados hacia
el cliente y facilitando la labor de cada uno de los empleados.
3.2. Objetivos Específicos
1. Mejorar el nivel de satisfacción del paciente actual.
2. Automatizar los procesos internos más relevantes dentro del subcentro de
salud y odontológico Huiruno.
3. Minimizar los conflictos con pacientes por tratamientos fracasados.
10
4. Desarrollar un software que administre las fichas de pacientes, historias
clínicas, la gestión de precios y cobros, una agenda de citas.
5. Implementar la seguridad e integridad de la información necesaria en el
software.
3.3. Alcance
En relación con los requerimientos de manejo de información de la Clínica, en el
momento en el que el sistema entre en operación deberá cubrir los módulos
detallados a continuación:
1 Creación de los módulos del subcentro:
1.1 Automatización de fichas del subcentro.
1.2 Agenda de Citas: Automatización de la gestión de tiempos, peticiones de
cita, cancelaciones y gestión de inasistencias a citas.
1.3 Gestión de facturación.
2 Creación de los módulos del consultorio odontológico del subcentro:
2.1 Automatización de fichas del consultorio.
2.2 Agenda de Citas: Automatización de la gestión de tiempos, peticiones de
cita, cancelaciones y gestión de inasistencias a citas.
2.3 Gestión de Precios: Mantenimiento de una lista de precios referenciales.
2.4 Generación de Odontograma con porcentaje de avance del tratamiento.
3.4. Limitaciones
El alcance de este proyecto no contempla un módulo de control de stock de los
activos del subcentro de salud y odontológico Huiruno, el sistema tampoco presenta
un sistema de contabilidad con mayores detalles.
11
CAPITULO 4: METODOLOGÍA RUP
4.1. Metodología
4.1.1. Diseño de la investigación
El desarrollo del sistema a realizarse necesita modalidades de investigación, como
la bibliográfica, la cual constara de la recopilación de datos valiéndonos de buen
manejo de páginas web, libros, investigaciones anteriores entre otras., dicha
recopilación será de utilidad básicamente para el mejor entendimiento de la
propuesta del sistema.
Otra modalidad a mencionar es la que se realiza en el campo de investigación, la
cual nos permite un contacto directo con los gestores del problema que se
investiga. En esta modalidad se obtiene la información de manera puntual, que
permite obtener datos veraces del procesamiento de la manipulación de
información en el lugar de trabajo y con ello dar un diagnostico tanto general como
individual del rendimiento de los usuarios.
4.1.2. Diseño Experimental
Este tipo de modelo es denominado también como modelo de desarrollo evolutivo,
consiste en ir construyendo el sistema mediante las concesiones frecuentes entre
usuarios y desarrollador, se debe tomar en cuenta las ventajas como desventajas
de este tipo de manejo de desarrollo para el sistema. Ya que sabemos que el
usuario no tiene conocimientos de las necesidades o pre requisitos para el
desarrollo del sistema, pero al mismo tiempo permite que se vaya desarrollando
versiones cada vez más completas del sistema.
4.1.3. Metodología RUP
Nos proporciona varias disciplinas en las cuales se encuentran artefactos con lo
cual se podrá contar con guías para poder documentar e implementar de una
manera fácil y eficiente, todas las guías están dentro de las respectivas fases con
las cuales cuenta para el desarrollo del proyecto.
No se debe realizar un desarrollo de software de forma lenta, ya que los clientes y
sus exigencias conllevan a la necesidad de implementar soluciones rápidas,
eficientes y que sobretodo cumplan con los requerimientos planteados.
RUP (Proceso Unificado de Rational) constituye la metodología más utilizada para
el análisis, implementación y documentación de un sistema de software, este es un
proceso que define claramente quien, cómo, cuándo y qué debe hacerse en el
proyecto. Está centrado en la arquitectura que relaciona la toma de decisiones que
12
indican cómo tiene que ser construido el sistema y en qué orden. Es iterativo e
incremental donde divide el proyecto en mini proyectos donde los casos de uso y la
arquitectura cumplen sus objetivos de manera más depurada.
4.1.4. Metodología de desarrollo
El ciclo de vida de RUP
El ciclo de vida RUP es una implementación del Desarrollo en espiral. Fue creado
ensamblando los elementos en secuencias semi-ordenadas. El ciclo de vida
organiza las tareas en fases e iteraciones.
RUP divide el proceso en 4 fases, dentro de las cuales se realizan varias
iteraciones en número variable según el proyecto y en las que se hace un mayor o
menor hincapié en los distintas actividades.
CICLO DE VIDA DE RUP
Figura 2 Ciclo de vida de RUP Autor: rupmetodologia
Fuente: http://rupmetodologia.blogspot.com/2012/07/metodologia-rup-y-ciclo-de-vida.html
Fase 1: INICIO
13
A esta fase también se la conoce como fase de planificación. En la cual se hace un
plan de fases después de obtener la información sobre los requerimientos del
cliente, se identifican los principales casos de uso y se identifican los riesgos. Se
define el alcance del proyecto y su papel en la estrategia global.
Fase 2: ELABORACION
Se la conoce también como fase de evaluación, es donde se realiza un plan de
proyecto y se estudia las limitaciones que este puede presentar, se completan los
casos de uso y se eliminan los riesgos con ayuda de las alternativas aplicadas.
Fase 3: CONSTRUCCION
Fase a la cual también se la conoce como, fase de ingeniería. Se concentra en la
elaboración y desarrollo de un producto totalmente operativo y eficiente, es decir el
manejo debe ser de fácil manejo y con un interfaz amigable para que le usuario
pueda manejarlo de manera intuitiva, además será realizado el manual de usuario
con el mismo fin. También se verificara la implementación del sistema, se probara
para luego avanzar a la siguiente fase.
Fase 4: TRANSICION
La cual también es conocida como la fase de instalación del producto. Aquí se
realiza la adaptación del software en el lugar preestablecido por el cliente (lugar de
trabajo). Se instala el producto y se verifica que el funcionamiento sea correcto
además, se entrena a los usuarios para el buen manejo de la herramienta. Como
consecuencia de esto suelen surgir nuevos requisitos a ser analizados.
4.1.5. Arquitectura
El desarrollo del presente sistema se lo realizo bajo un modelo MCV.
El modelo–vista–controlador (MVC) es un patrón de arquitectura de software que
separa los datos y la lógica de negocio de una aplicación de la interfaz de usuario y
el módulo encargado de gestionar los eventos y las comunicaciones. Para ello MVC
propone la construcción de tres componentes distintos que son el modelo, la vista y
el controlador, es decir, por un lado define componentes para la representación de
la información, y por otro lado para la interacción del usuario. Este patrón
de arquitectura de software se basa en las ideas de reutilización de código y
la separación de conceptos, características que buscan facilitar la tarea de
desarrollo de aplicaciones y su posterior mantenimiento.
14
De manera genérica, los componentes de MVC se podrían definir como sigue:
El Modelo: Es la representación de la información con la cual el sistema
opera, por lo tanto gestiona todos los accesos a dicha información, tanto
consultas como actualizaciones, implementando también los privilegios de
acceso que se hayan descrito en las especificaciones de la aplicación
(lógica de negocio). Envía a la 'vista' aquella parte de la información que en
cada momento se le solicita para que sea mostrada. Las peticiones de
acceso o manipulación de información llegan al 'modelo' a través del
'controlador'.
El Controlador: Responde a eventos e invoca peticiones al 'modelo' cuando
se hace alguna solicitud sobre la información (por ejemplo, editar un
documento o un registro en una base de datos). También puede enviar
comandos a su 'vista' asociada si se solicita un cambio en la forma en que
se presenta de 'modelo', por tanto se podría decir que el 'controlador' hace
de intermediario entre la 'vista' y el 'modelo'.
La Vista: Presenta el 'modelo' (información y lógica de negocio) en un
formato adecuado para interactuar por tanto requiere de dicho 'modelo' la
información que debe representar como salida.
CAPITULO 5: DESARROLLO DEL SISTEMA CON LA METODOLOGIA
RUP
5.1. FASESDE INICIO
Se muestran las características de todos los requerimientos y sus dependencias así
como la relación entre ellos. También se muestran los casos de uso de cada
subsistema generado con la herramienta online Gliffy.
5.1.1. Introducción
Este artefacto toma, analiza y define las necesidades y las características del
Análisis e Implementación del Sistema del subcentro de salud y odontológico.
El actual artefacto se centra en la funcionalidad requerida por los participantes en el
proyecto y los usuarios finales. Dicho sistema será desarrollado por el postulante
Fabián Silva.
15
El sistema permitirá a los encargados del subcentro de salud controlar todo lo
relativo al Ingreso de Pacientes, Administración de Fichas, Facturación,
Administración de Precios, Fármacos, Tratamientos, Gestión de Odontogramas,
una Agenda de Citas y su administración, Administración de informes y consultas
médicas, generación de un historial del paciente.
5.1.2. Modelado del negocio
Se encuentran los artefactos utilizados de la metodología RUP para definir un
modelo del negocio, modelos de objetos del negocio y el modelo del dominio.
5.1.2.1 Subcentro de Salud y Odontológico Huiruno
El subcentro de salud y odontológico Huiruno, que solicito la implementación del
software, dispone de un establecimiento en la provincia de Orellana, que
proporciona servicio médico y odontológico a los habitantes de la comunidad
Huiruno.
El diagrama que representa los diferentes subsistemas en los que se ha dividido el
subcentro de salud es el siguiente:
MODELADO DEL NEGOCIO
Figura 3 Modelado del negocio Autor: Tesista
Fuente: Tesista (GliftyUml).
Descripción de Actores en el Proyecto
Para identificar efectivamente los requerimientos de los casos de uso que se
ajusten a las necesidades de los clientes, se necesita identificar los actores que
operan con el sistema en desarrollo.
16
RESUMEN DE ACTORES
Actores
Rol
Descripción
Recepcionista
Responsable del
ingreso de los
pacientes, ingreso de
citas, control de
precios, facturación,
administración de la
ficha del paciente.
Ingreso de Pacientes
Ingreso de Enfermedades
Ingreso de Fármacos
Generación de Facturas
Administración de citas
Enfermería
Responsable de toma
de signos vitales y
asignación de
pacientes.
Toma de signos vitales
Ingreso de consultas.
Administración de pacientes.
Médico
Se encarga de la
atención médica,
generación de recetas,
informes, consulta
general, asignación de
fármacos.
Chequeo de historial médico.
Creación de evaluación médica.
Creación de informe.
Creación de la receta.
Odontólogo
Tiene las mismas
responsabilidades del
médico aumentando la
creación del
Odontograma y le da
seguimiento, asigna
tratamientos y los
administra.
Administración de
odontogramas
Administración de tratamientos.
Administración de fármacos.
Administración de Citas.
Tabla 1 Tabla de actores Autor: Tesista
Fuente: Subcentro de Salud y Odontológico Huiruno
17
5.1.3. Casos de Uso
Modelo de Casos de Uso con Gliffy
A continuación se presentan los diagramas de casos de uso elaborados para cada
uno de los subsistemas definidos para el subcentro.
El formato usado en la descripción de los casos de uso se describe a continuación:
Nombre y referencia del caso de uso
Actores: Lista de actores que intervienen
Propósito: Propósito que persigue el caso de uso
Precondiciones: Condiciones que deben cumplirse antes de ejecutar el caso de uso
Pos condiciones: Condiciones que se cumplirán al finalizarse el caso de uso
Subsistemas administración
En el subsistema de administración participa un actor, recalcando que este podría
ser cualquiera de los siguientes trabajadores del Subcentro recepcionista, doctor
general u odontólogo, para el cual se genera distintos casos de uso, además de los
propios de sus subsistema individual, que se muestra a continuación.
SUBSISTEMA ADMINISTRACIÓN
Figura 4 Subsistema administración
18
Autor: Tesista Fuente: Tesista (GliftyUml).
A continuación la descripción detallada de los casos de uso:
5.1.3.1 C1: Definición de Datos del Subcentro.
Actores: Administrador de Sistema
Propósito: Definir los datos de la Clínica donde se implementa el sistema.
Precondiciones:
Pos condiciones: Al terminar la operación los datos de la Clínica estarán
definidos y podrán ser mostrados en documentos tales como
las facturasa clientes.
Curso normal de los eventos
Acción de los actores Respuesta del sistema
1. El Administrador de la Clínica
selecciona la opción Clínica del menú de
navegación
2. Se despliega la pantalla de la
información del subcentro.
5.1.3.2. C2: Creación de Usuario.
Actores: Administrador de Sistema
Propósito: Crear un nuevo usuario para que este pueda acceder a uno o
más módulos del sistema
Precondiciones: Debe estar creado el Subcentro
Pos condiciones: El nuevo usuario puede ingresar al sistema y trabajar con los
módulos asignados según los roles que tenga.
Curso normal de los eventos
19
Acción de los actores Respuesta del sistema
1. El administrador del sistema
selecciona la opción Usuarios del menú
de navegación.
2. Se despliega la pantalla Lista de
Usuarios.
3. El Administrador del sistema
selecciona la opción crear médico
4. Se despliega la pantalla de creación
de datos del médico, y se le pedirá que
le asigne un usuario y una contraseña.
5. El Administrador del sistema llena
los datos del nuevo médico y
selecciona la opción guardar de la
barra de tareas
6. Se podrá ver el listado de los usuarios
con el usuario recién creado.
5.1.3.3. C3: Búsqueda y Mantenimiento de Usuario.
Actores: Administrador de Sistema
Propósito: Dar mantenimiento a los datos de usuario
Precondiciones: Haber completado el caso de uso C1
Pos condiciones: Se almacenarán los nuevos datos de los usuarios afectando
su acceso al sistema.
Curso normal de los eventos
Acción de los actores Respuesta del sistema
1. El administrador del sistema
selecciona la opción Usuarios del menú
de navegación.
2. Despliega la pantalla Lista de
Usuarios.
3. El Administrador del sistema podrá
buscar desde cualquier atributo creado
anteriormente ubicado en la parte
4. Muestra la ventana con los campos
que filtran la búsqueda.
20
superior.
5. El Administrador del sistema llena
uno o más parámetros de búsqueda y
presiona el botón aceptar
6. Despliega una tabla con los usuarios
que coinciden con los parámetros de la
búsqueda.
7. El Administrador del sistema escogerá
opción editar del registro de usuario
encontrado.
8. Despliega la pantalla de edición de
datos de usuario.
9. El Administrador del sistema edita los
datos requeridos añadiendo o quitando
roles o en su caso escoge la opción
borrar para borrar todo el registro.
10. El sistema confirma la acción
realizada
Subsistemas recepción
En el subsistema participa un actor para el cual se genera distintos casos de uso,
que se muestra a continuación.
SUBSISTEMA RECEPCION
21
Figura 5 Subsistema recepción Autor: Tesista
Fuente: Tesista (GliftyUml).
A continuación la descripción detallada de los casos de uso:
5.1.3.4. C4: Creación del Paciente.
Actores: Paciente, Secretaria de Recepción (o Administrador de la
Clínica)
Propósito: Guardar los datos de un nuevo paciente en el sistema.
Precondiciones:
Pos condiciones: Al finalizar la operación quedaran registrados los datos del
Paciente.
Curso normal de los eventos
Acción de los actores Respuesta del sistema
1. Un paciente se presenta (por primera
22
vez) al Subcentro para hacerse atender.
2. La Secretaria de recepción ingresa a
la opción pacientes del menú de
navegación.
3. Se despliega la página de listado de
clientes.
4. La Secretaria de recepción selecciona
la opción crear paciente de la barra de
tareas.
5. Se despliega la página de edición de
datos del cliente.
6. La Secretaria de recepción le pide sus
datos al cliente.
7. El cliente le entrega sus datos
personales a la secretaria de recepción.
8. La Secretaria de recepción llena los
datos de la página de edición de datos
de cliente y selecciona la opción
guardar.
9. El sistema muestra un mensaje de
confirmación.
5.1.3.5. C5: Búsqueda y Mantenimiento del Paciente.
Actores: Secretaria de Recepción (o Administrador de la Clínica)
Propósito: Dar mantenimiento a los datos de cliente.
Precondiciones: Haber completado el caso de uso C4.
Pos condiciones: Se guardarán los nuevos datos del cliente.
Curso normal de los eventos
Acción de los actores Respuesta del sistema
1. La Secretaria de recepción (o el
administrador del Subcentro) selecciona
la opción paciente del menú de
navegación.
2. Se muestra la página de Lista de
Pacientes
23
3. La Secretaria de recepción selecciona
la opción Buscar de la barra de tareas.
4. Muestra la ventana con los campos
que filtran la búsqueda.
5. La Secretaria de recepción pregunta
(de ser necesario) los datos al cliente
para realizar la búsqueda.
5. Se despliega la página de edición de
datos del cliente.
6. La Secretaria de recepción le pide sus
datos al cliente.
6. Con los datos obtenidos la secretaria
llena uno o más parámetros de la
ventana de búsqueda.
7. Se muestra la lista con los resultados
de la búsqueda.
8. La Secretaria de recepción selecciona
la opción Editar del registro encontrado.
9. Se muestra la pantalla de Edición de
Paciente.
10. La Secretaria de recepción edita los
datos del paciente y selecciona la opción
guardar de la barra de tareas o bien
elimina todo el registro usando la opción
borrar.
11. Despliega un mensaje de
confirmación.
5.1.3.6. C6: Crear Factura.
Actores: Secretaria de Recepción (o Administrador de la Clínica)
Propósito: Asigna un nuevo código de factura.
Precondiciones:
Pos condiciones: Se guardarán el nuevo código de factura.
Curso normal de los eventos
24
Acción de los actores Respuesta del sistema
1. La secretaria de recepción selecciona
la opción facturación del menú de
navegación.
2. Se muestra la página de cabecera de
factura
3. La secretaria de recepción selecciona
la opción código de factura y lo edita, al
igual que deberá llenar los datos de la
cabecera de factura. Poniendo al
finalizar guardar.
6. Muestra un mensaje de confirmación.
5.1.3.7. C7: Búsqueda y Mantenimiento de la Factura.
Actores: Secretaria de Recepción (o Administrador de la Clínica)
Propósito: Dar mantenimiento a un código de factura
Precondiciones: Haber completado el caso de uso C6
Pos condiciones: Se guardaran los cambios del código de factura.
Curso normal de los eventos
Acción de los actores Respuesta del sistema
1. La secretaria de recepción selecciona
la opción facturación del menú de
navegación.
2. Se desplegara el listado de cabeceras
existentes.
3. La secretaria de recepción selecciona
la opción de edición.
6. Se desplegara la pantalla que
contendrá los datos de la cabecera.
4. La secretaria de recepción podrá
elegir o bien el botón de editar.
5. Según la elección se mostrara la
pantalla de edición.
6. La secretaria de recepción edita los
datos de la cabecera de la factura y
selecciona la opción Guardar o bien
10. Muestra un mensaje de
confirmación.
25
selecciona la opción borrar para eliminar
todo el registro.
5.1.3.8. C8: Registro de ingreso/ admisión.
Actores: Secretaria de Recepción (o Administrador de la Clínica)
Propósito: Ingresar al paciente para su atención
Precondiciones:
Pos condiciones: Se registra el ingreso del paciente al Subcentro. Además si el
paciente no tiene ficha esta se crea.
Curso normal de los eventos
Acción de los actores Respuesta del sistema
1. Un paciente llega al Subcentro para
hacer atendido.
2. La Secretaria de Recepción
selecciona a opción listado del menú de
navegación.
3. Despliega la página de Registro y
admisión – Lista de Pacientes.
4. La Secretaria de Recepción le
pregunta al Paciente ha acudido antes al
Subcentro.
5. El Cliente responde:
a. Sí. Consúltese la sección Cliente
Antiguo.
b. No. Consúltese la sección Cliente
Nuevo.
26
Cliente Antiguo
Acción de los actores Respuesta del sistema
1. La Secretaria de Recepción le
pregunta al paciente si ya se ha hecho
atender con anterioridad en el Subcentro
2. El Cliente responde:
a. Sí. Consultar la sección listado de
pacientes.
b. No. Consúltese la sección listado de
clientes, crear nuevo paciente.
Cliente Antiguo – Paciente en listado
Acción de los actores Respuesta del sistema
1. La Secretaria de Recepción
selecciona la opción Buscar de la barra
de tareas
2. Despliega una ventana con campos
que filtran la búsqueda.
3. La Secretaria de Recepción le pide
sus datos personales al paciente.
4. El Cliente entrega sus datos
personales a la Secretaria.
5. La secretaria ingresa los datos del
paciente en la ventana de búsqueda y
selecciona la opción Aceptar.
6. Muestra una lista con los resultados
de la búsqueda.
7. En la parte derecha al lado de cada
paciente, encontramos los botones de
asignar a doctor y el botón de asignar
odontólogo.
15. Muestra un mensaje de confirmación
del Ingreso dependiendo la opción ya
que si ha elegido doctor deberá pasar
por signos vital primero, lo que no ocurre
si es asignado al odontólogo.
27
Cliente Antiguo – Paciente nuevo
Acción de los actores Respuesta del sistema
1. La Secretaria de Recepción
selecciona listado de pacientes del
menú de navegación.
2. Se muestra el listado de pacientes.
3. La Secretaria de Recepción escoge
crear paciente.
4. Se desplegara la pantalla de edición
de paciente.
5. La Secretaria pregunta al paciente por
sus datos, llena los respectivos campos
de la página y selecciona la opción
Guardar.
5. Muestra un mensaje de confirmación.
5.1.3.9. C9: Creación del fármaco.
Actores: Secretaria de Recepción (o Administrador de la Clínica)
Propósito: Crear una nueva categoría de fármaco
Precondiciones:
Pos condiciones: Se crea una nueva categoría de fármaco el cual podrá ser
asignado a uno o varios tratamientos o indicaciones.
Curso normal de los eventos
Acción de los actores Respuesta del sistema
1. La secretaria de recepción selecciona
la opción fármaco del menú de
navegación.
2. Se desplegara el listado de fármacos
existentes.
3. La secretaria de recepción selecciona
la opción crear nuevo fármaco.
6. Se desplegara la pantalla de edición
de fármaco.
28
4. La secretaria de recepción ingresar
los datos que le solicita el sistema para
la creación de un nuevo fármaco y
selecciona la opción Guardar.
5. Muestra un mensaje de confirmación.
5.1.3.10. C10: Búsqueda y Mantenimiento del fármaco.
Actores: Secretaria de Recepción (o Administrador de la Clínica)
Propósito: Dar mantenimiento a una categoría de fármaco.
Precondiciones: Haber completado el caso de uso C10.
Pos condiciones: Se guardarán los datos de la categoría de fármaco.
Curso normal de los eventos
Acción de los actores Respuesta del sistema
1. La secretaria de recepción selecciona
la opción fármaco del menú de
navegación.
2. Se desplegara el listado de fármacos
existentes.
3. La secretaria de recepción selecciona
la opción de búsqueda.
4. Muestra la ventana con los campos
que filtran la búsqueda.
4. La secretaria de recepción llena uno o
más campos de la ventana de búsqueda
y selecciona Aceptar.
5. Muestra una lista con los registros
que coincidan con la búsqueda.
6. Selecciona la opción Editar que se
encuentra en la parte derecha del
registro encontrado.
7. Muestra la página de Edición de
fármaco.
8. Edita los datos de la Categoría de
fármacos y selecciona la opción
Guardar de la barra de tareas o bien
selecciona la opción borrar para borrar
9. Muestra un mensaje de confirmación.
29
todo el registro.
5.1.3.11. C11: Creación de la Enfermedad.
Actores: Secretaria de Recepción (o Administrador de la Clínica)
Propósito: Crear una nueva enfermedad.
Precondiciones:
Pos condiciones: Se crea una nueva enfermedad.
Curso normal de los eventos
Acción de los actores Respuesta del sistema
1. La secretaria de recepción selecciona
la opción enfermedad del menú de
navegación.
2. Se desplegara el listado de
enfermedades existentes.
3. La secretaria de recepción selecciona
la opción crear nueva enfermedad.
6. Se desplegara la pantalla de edición
de enfermedad.
4. La secretaria de recepción ingresar
los datos que le solicita el sistema para
la creación de un nueva enfermedad y
selecciona la opción Guardar.
5. Muestra un mensaje de confirmación.
5.1.3.12. C12: Búsqueda y Mantenimiento de una Enfermedad.
Actores: Secretaria de Recepción (o Administrador de la Clínica)
Propósito: Dar mantenimiento a una categoría de enfermedad.
Precondiciones: Haber completado el caso de uso C11.
Pos condiciones: Se guardarán los datos de la categoría de enfermedad.
Curso normal de los eventos
30
Acción de los actores Respuesta del sistema
1. La secretaria de recepción selecciona
la opción enfermedad del menú de
navegación.
2. Se desplegara el listado de
enfermedades existentes.
3. La secretaria de recepción selecciona
la opción de búsqueda.
4. Muestra la ventana con los campos
que filtran la búsqueda.
4. La secretaria de recepción llena uno o
más campos de la ventana de búsqueda
y selecciona Aceptar.
5. Muestra una lista con los registros
que coincidan con la búsqueda.
6. Selecciona la opción Editar que se
encuentra en la parte derecha del
registro encontrado.
7. Muestra la página de Edición de la
enfermedad.
8. Edita los datos de la Categoría de
enfermedades y selecciona la opción
Guardar de la barra de tareas o bien
selecciona la opción borrar para borrar
todo el registro.
9. Muestra un mensaje de confirmación.
5.1.3.13. C13: Creación de Cita.
Actores: Secretaria de Recepción (o Administrador de la Clínica)
Propósito: Crear una nueva cita.
Precondiciones:
Pos condiciones: Se crea una nueva cita.
Curso normal de los eventos
Acción de los actores Respuesta del sistema
1. La secretaria de recepción selecciona
la opción citas del menú de navegación.
2. Se desplegara la ventana de edición
de citas
31
3. La secretaria de recepción ingresara
los datos necesarios para la creación de
una cita y elegirá la opción guardar.
4. Muestra un mensaje de confirmación.
5. La secretaria de recepción regresara
a la página de inicio.
6. En el calendario de la página de inicio
se mostrara un calendario que tendrá
alojada la cita creada anteriormente.
5.1.3.14. C14: Búsqueda y Mantenimiento de una Cita.
Actores: Secretaria de Recepción (o Administrador de la Clínica)
Propósito: Dar mantenimiento a una cita.
Precondiciones: Haber completado el caso de uso C13.
Pos condiciones: Se guardarán los datos de la cita creada.
Curso normal de los eventos
Acción de los actores Respuesta del sistema
1. La secretaria de recepción selecciona
la opción cita del menú de navegación.
2. Se desplegara el listado de citas
existentes.
3. La secretaria de recepción selecciona
la opción de búsqueda.
4. Muestra la ventana con los campos
que filtran la búsqueda.
4. La secretaria de recepción llena uno o
más campos de la ventana de búsqueda
y selecciona Aceptar.
5. Muestra una lista con los registros
que coincidan con la búsqueda.
6. Selecciona la opción Editar. 7. Muestra la página de Edición de la
cita.
8. Edita los datos de la Categoría de
citas y selecciona la opción
Guardar de la barra de tareas o bien
selecciona la opción borrar para borrar
9. Muestra un mensaje de confirmación.
32
todo el registro.
Subsistemas doctor general
En el subsistema doctor general participa un actor para el cual se genera distintos
casos de uso, que se muestra a continuación.
SUBSISTEMA DOCTOR GENERAL
Figura 6 Subsistema doctor general Autor: Tesista
Fuente: Tesista (GliftyUml).
En la descripción de cada uno de los casos de usos, tomaremos en cuenta que si
hay casos que ya se encuentran descritos en otro subsistema, evitaremos volverlo
a describir como son los siguientes.
Creación de citas
Búsqueda y Mantenimiento de citas
5.1.3.15. C15: Creación de la Evaluación Médica.
Actores: Doctor general (o Administrador de la Clínica)
Propósito: Crear una nueva evaluación médica, en la cual estará ligada a
33
la búsqueda de la ficha del paciente, al chequeo del historial
médico, a la definición de datos de la evaluación médica, a
las indicaciones y a la receta.
Precondiciones: Haber completado el caso de uso C12.
Pos condiciones: Se crea una evaluación médica ligada a la cita creada.
Curso normal de los eventos
Acción de los actores Respuesta del sistema
1. El doctor general selecciona la opción
lista de pacientes del menú de
navegación.
2. Se desplegara la ventana que tiene el
listado de pacientes.
3. El doctor general ingresara los datos
necesarios para la creación de una
evaluación médica. Donde en las
pestañas ubicadas en la parte inferior
podrá ir ingresando las diferentes
opciones ya mencionadas. Guardando si
se desea.
4. Muestra un mensaje de confirmación.
5. El doctor general podrá ver el historial
clínico del paciente que está siendo
atendido desplegándolo bajo la
evaluación médica.
5.1.3.16. C16: Visualización de la lista de pacientes.
Actores: Doctor general (o Administrador de la Clínica)
Propósito: Poder visualizar la lista de pacientes que esperan ser
atendidos.
Precondiciones: Debe existir un listado de pacientes.
Pos condiciones: Podrá continuar con la evaluación del paciente.
34
Curso normal de los eventos
Acción de los actores Respuesta del sistema
1. El doctor general selecciona la opción
lista de pacientes del menú de
navegación.
2. Se desplegara la ventana que tiene el
listado de pacientes.
5.1.3.17. C17: Creación del Informe.
Actores: Doctor general (o Administrador de la Clínica)
Propósito: Crear un informe del paciente, que ha atendido.
Precondiciones: Haber completado el caso de uso C16
Pos condiciones: Se crea un informe el cual podrá ser entregado de forma
impresa al paciente, para que él lo pueda usar a su
conveniencia.
Curso normal de los eventos
Acción de los actores Respuesta del sistema
1. El doctor general selecciona la opción
informe del menú de navegación.
2. Se desplegara la ventana de edición
de informes.
3. El doctor general ingresara los datos
necesarios para la creación de un
informe y elegirá la opción guardar.
4. Muestra un mensaje de confirmación.
5. El paciente puede solicitar que se le
entregue el informe, por alguna
necesidad personal.
6. El doctor general podrá escoger entre
los botones de guardar, eliminar o
imprimir informe, según el criterio
7. Muestra un mensaje de confirmación,
para cualquier opción elegida.
35
Subsistemas odontólogo
En el subsistema odontólogo participa un actor para el cual se genera distintos
casos de uso, que se muestra a continuación.
SUBSISTEMA ODONTÓLOGO
Figura 7 Subsistema odontólogo Autor: Tesista
Fuente: Tesista (GliftyUml).
En la descripción de cada uno de los casos de usos, tomaremos en cuenta que si
hay casos de uso que ya se encuentran descritos en otro subsistema, evitaremos
volverlo a describir como son los siguientes.
Creación de citas
Búsqueda y Mantenimiento de citas
Creación de la evaluación médica
- Búsqueda de ficha del paciente
- Chequeo del historial médico
- Definir datos en la evaluación médica
- Asociar indicaciones a la evaluación
- Asociar receta a la evaluación
Visualización lista de pacientes
Creación del informe
36
5.1.3.18. C18: Creación del Odontograma.
Actores: Odontólogo (o Administrador de la Clínica)
Propósito: Crear un nuevo odontograma.
Precondiciones: Haber completado el caso de uso C15.
Pos condiciones: Se crea un nuevo odontograma
Curso normal de los eventos
Acción de los actores Respuesta del sistema
1. El odontólogo selecciona la opción
lista de pacientes del menú de
navegación. Esto se realiza para que al
elegir el paciente se cargue de manera
automática el historial del paciente.
2. Se desplegara la ventana de listado
de los pacientes.
3. El odontólogo ingresara a la opción
de Odontogramas en menú de
navegación
4. Muestra una pantalla con la lista de
Odontogramas.
5. El odontólogo escogerá la opción de
crear un nuevo odontograma
6. El sistema mostrara la página de
edición de odontograma.
7. El odontólogo deberá ingresar la
información solicitada para la creación
de un nuevo odontograma, seguido de
la opción guardar.
8. Muestra un mensaje de confirmación.
5.1.3.19. C19: Búsqueda y Mantenimiento del Odontograma.
Actores: Odontólogo (o Administrador de la Clínica)
Propósito: Dar mantenimiento a los odontogramas.
37
Precondiciones: Haber completado el caso de uso C18.
Pos condiciones: Se guardarán los datos de los odontogramas.
Curso normal de los eventos
Acción de los actores Respuesta del sistema
1. El odontólogo selecciona la opción
odontogramas del menú de navegación.
2. Se desplegara el listado de los
odontogramas existentes.
3. El odontólogo selecciona la opción de
búsqueda.
4. Muestra la ventana con los campos
que filtran la búsqueda.
4. El odontólogo llena uno o más
campos de la ventana de búsqueda y
selecciona Aceptar.
5. Muestra una lista con los registros
que coincidan con la búsqueda.
6. Selecciona la opción Editar 7. Muestra la página de Edición del
odontograma.
8. Edita los datos de la categoría de
odontograma y selecciona la opción
Guardar de la barra de tareas o bien
selecciona la opción borrar para borrar
todo el registro.
9. Muestra un mensaje de confirmación.
5.1.3.20. C20: Creación del Tratamiento.
Actores: Odontólogo (o Administrador de la Clínica)
Propósito: Crear un nuevo tratamiento.
Precondiciones:
Pos condiciones: Se crea un nuevo tratamiento
Curso normal de los eventos
38
Acción de los actores Respuesta del sistema
1. El odontólogo selecciona la opción
lista de pacientes del menú de
navegación. Esto se realiza para que al
elegir el paciente se cargue de manera
automática todos los datos del paciente.
2. Se desplegara la ventana de listado
de los pacientes.
3. El odontólogo ingresara a la opción
de tratamientos en menú de navegación
4. Muestra una pantalla con la lista de
los tratamientos.
5. El odontólogo escogerá la opción de
crear un nuevo tratamiento.
6. El sistema mostrara la página de
edición de tratamientos.
7. El odontólogo deberá ingresar la
información solicitada para la creación
de un nuevo tratamiento, seguido de la
opción guardar.
8. Muestra un mensaje de confirmación.
5.1.3.21. C21: Búsqueda y Mantenimiento del Tratamiento.
Actores: Odontólogo (o Administrador de la Clínica)
Propósito: Dar mantenimiento a los tratamientos.
Precondiciones: Haber completado el caso de uso C20.
Pos condiciones: Se guardarán los datos de los tratamientos.
Curso normal de los eventos
Acción de los actores Respuesta del sistema
1. El odontólogo selecciona la opción
tratamientos del menú de navegación.
2. Se desplegara el listado de los
tratamientos existentes.
3. El odontólogo selecciona la opción de
búsqueda.
4. Muestra la ventana con los campos
que filtran la búsqueda.
4. El odontólogo llena uno o más 5. Muestra una lista con los registros
39
campos de la ventana de búsqueda y
selecciona Aceptar.
que coincidan con la búsqueda.
6. Selecciona la opción Editar. 7. Muestra la página de Edición del
odontograma.
8. Edita los datos de la categoría de
tratamientos y selecciona la opción
Guardar de la barra de tareas o bien
selecciona la opción borrar para borrar
todo el registro.
9. Muestra un mensaje de confirmación.
Subsistemas enfermera
En el subsistema participa un actor para el cual se genera distintos casos de uso,
que se muestra a continuación.
SUBSISTEMA ENFERMERA
Figura 8 Subsistema enfermera Autor: Tesista
Fuente: Tesista (GliftyUml).
En la descripción de cada uno de los casos de usos, tomaremos en cuenta que si
hay casos de uso que ya se encuentran descritos en otro subsistema, evitaremos
volverlo a describir como son los siguientes.
Visualización lista de pacientes
Búsqueda de ficha del paciente
40
5.1.3.22. C22: Toma de signos vitales.
Actores: Enfermedad
Propósito: Tomar signos vitales de los pacientes que van a ser atendidos
por el doctor general.
Precondiciones: Haber completado el caso de uso C13.
Pos condiciones: Paciente listo para pasar a ser atendido por el doctor general
Curso normal de los eventos
Acción de los actores Respuesta del sistema
1. La enfermera selecciona la opción
lista de pacientes del menú de
navegación. Esto se realiza para que al
elegir el paciente se cargue de manera
automática todos los pacientes.
2. Se desplegara la ventana de listado
de los pacientes.
3. La enfermera ingresara al botón
ubicado en la parte derecha del nombre
del cliente.
4. Muestra una pantalla de edición de
signos vitales.
5. La enfermera deberá ingresar la
información solicitada para la creación la
categoría signos vitales, seguido de la
opción guardar.
8. Muestra un mensaje de confirmación.
5.2. FASE DE ELABORACIÓN
5.2.1. Análisis/diseño
Muestran tanto el diagrama de clases como el modelo entidad – relación, desde los
cuales se puede consultar la especificación de los métodos de clase más relevantes
o las especificaciones de atributos.
41
Figura 9 Diagrama de clases Autor: Tesista
Fuente: Tesista (PowerDesigner).
0..1
0..*0..1
0..*
0..1
0..*
0..1
0..*0..1
0..*
0..1
0..*
0..1
0..*
0..1
0..*
0..10..*
0..1
0..*
0..1
0..*
0..1
0..*
0..1
0..*
0..1
0..*
0..1
0..*
0..1
0..*
0..1
0..*
0..1
0..*
0..1
0..*
0..1
0..*
0..1
0..*
0..1
0..*
0..1
0..*
0..1
0..*
Antecedente
-
-
-
-
-
antecedenteid
historialclinico
fecha
antecedente
tipo
: int
: historialclinico
: Date
: String
: String
+
+
+
+
+
+
Antecedente ()
Antecedente(antid,Historial,fecha, ant,tip) ()
getAntecedenteid() ()
setAntecedenteid(int antecedenteid) ()
getHistorialclinico() ()
setHistorialclinico(Historialclinico) ()
: int
: Historialclinico
Archivo
-
-
-
-
-
archivoid
odontograma
historialclinico
tipo
bytes
: int
: odontograma
: historialclinico
: String
: byte
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Archivo() ()
Archivo(arcid, Odo, Histlcli,tipo, bytes) ()
getArchivoid() ()
setArchivoid(int archivoid) ()
getOdontograma() ()
setOdontograma(Odontograma odontograma) ()
getHistorialclinico() ()
setHistorialclinico(Historialclinico histcli) ()
getTipo() ()
setTipo(String tipo) ()
getBytes() ()
setBytes(byte[] bytes) ()
toString() ()
equals(Object o) ()
: int
: Odontograma
: Historialclinico
: String
: byte[]
: String
Cabecerafactura
-
-
-
-
-
-
-
-
-
-
cabecerafactura
paciente
numerofactura
total
observaciones
descuento
otroimpuestos
iva
detalles
codigo
: int
: Paciente
: String
: String
: String
: String
: String
: String
: Set
: String
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Cabecerafactura() ()
Cabecerafactura(cabfac,paci,numfac,tot,obs,desc,otimp,iva) ()
getCabecerafactura() ()
setCabecerafactura(int cabecerafactura) ()
getPaciente() ()
setPaciente(Paciente paciente) ()
getNumerofactura() ()
setNumerofactura(BigDecimal numerofactura) ()
getTotal() ()
setTotal(String total) ()
getObservaciones() ()
setObservaciones(String observaciones) ()
getDescuento() ()
setDescuento(String descuento) ()
getOtroimpuestos() ()
setOtroimpuestos(String otroimpuestos) ()
getIva() ()
setIva(String iva) ()
getDetalles() ()
setDetalles(Set detalles) ()
toString() ()
getCodigo() ()
setCodigo(String codigo) ()
equals(Object o) ()
: int
: BigDecimal
: String
: String
: String
: String
: String
: Set
: String
: String
: boolean
Categoria
-
-
-
categoriaid
descripcion
medicos
: int
: String
: Set
+
+
+
+
+
+
+
+
+
+
Categoria(categoriaid, descripcion) ()
Categoria(categoriaid, descripcion, medicos) ()
getCategoriaid() ()
setCategoriaid(categoriaid) ()
getDescripcion() ()
setDescripcion(descripcion) ()
getMedicos() ()
setMedicos(medicos) ()
toString() ()
equals(o) ()
: int
: String
: Set
: String
: booleanCita
-
-
-
-
-
-
-
-
-
-
citaid
paciente
medico
numero
notas
duracion
tipo
descripcion
acude
fechacita
: int
: Paciente
: Medico
: BigDecimal
: String
: Date
: String
: String
: String
: Date
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Cita() ()
Cita(ciid,pac,med,num,not,dur, tip,des,hor,acu,fcit) ()
getCitaid() ()
setCitaid(citaid) ()
getPaciente() ()
setPaciente(paciente) ()
getMedico() ()
setMedico(medico) ()
getNumero() ()
setNumero(numero) ()
getNotas() ()
setNotas(notas) ()
getDuracion() ()
setDuracion(duracion) ()
getTipo() ()
setTipo(tipo) ()
getDescripcion() ()
setDescripcion(descripcion) ()
getAcude() ()
setAcude(acude) ()
getFechacita() ()
setFechacita(fechacita) ()
: int
: Paciente
: Medico
: BigDecimal
: String
: Date
: String
: String
: String
: Date
Clinica
-
-
-
-
-
-
-
-
clinicaid
nombre
direccion
provincia
telefono
celular
web
: int
: String
: String
: String
: String
: String
: String
: String
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Clinica(clinicaid,nombre,direccion,provincia,telefono,celular,email,web) ()
getClinicaid() ()
setClinicaid(clinicaid) ()
getNombre() ()
setNombre(nombre) ()
getDireccion() ()
setDireccion(direccion) ()
getProvincia() ()
setProvincia(provincia) ()
getTelefono() ()
setTelefono(telefono) ()
getCelular() ()
setCelular(celular) ()
getEmail() ()
setEmail(email) ()
getWeb() ()
setWeb(web) ()
: int
: String
: String
: String
: String
: String
: String
: String
Consulta
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
consultaid
paciente
medico
tratamiento
fechaconsulta
sist
diast
pulsaciones
ritmorespiratorio
temperatura
altura
peso
imc
observacion
anamnesis
exploracion
diagnostico
: int
: Paciente
: Medico
: Tratamiento
: Date
: int
: int
: int
: int
: int
: int
: int
: int
: String
: String
: String
: Diagnostico
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Consulta(conid,pac,med,fcon,sist,dia,pul,ritresp,temp,alt,peo,imc) ()
getConsultaid() ()
setConsultaid(consultaid) ()
getPaciente() ()
setPaciente(paciente) ()
getMedico() ()
setMedico(medico) ()
getTratamiento() ()
setTratamiento(tratamiento) ()
getFechaconsulta() ()
setFechaconsulta(fcon) ()
getSist() ()
setSist(sist) ()
getDiast() ()
setDiast(diast) ()
getPulsaciones() ()
setPulsaciones(pulsaciones) ()
getRitmorespiratorio() ()
setRitmorespiratorio(ritmorespiratorio) ()
getTemperatura() ()
setTemperatura(temperatura) ()
getAltura() ()
setAltura(altura) ()
getPeso() ()
setPeso(peso) ()
getImc() ()
setImc(imc) ()
getObservacion() ()
setObservacion(observacion) ()
getAnamnesis() ()
setAnamnesis(anamnesis) ()
getExploracion() ()
setExploracion(exploracion) ()
getDiagnostico() ()
setDiagnostico(diagnostico) ()
: int
: Paciente
: Medico
: Tratamiento
: Date
: int
: int
: int
: int
: int
: int
: int
: int
: String
: String
: String
: Diagnostico
Detalle
-
-
-
-
-
detalleid
cabecerafactura
concepto
unidades
importe
: int
: Cabecerafactura
: String
: String
: String
+
+
+
+
+
+
+
+
+
+
+
Detalle(detid,cabfac,con,unid,imp) ()
getDetalleid() ()
setDetalleid(detalleid) ()
getCabecerafactura() ()
setCabecerafactura(cabecerafactura) ()
getConcepto() ()
setConcepto(concepto) ()
getUnidades() ()
setUnidades(unidades) ()
getImporte() ()
setImporte(importe) ()
: int
: Cabecerafactura
: String
: String
: String
Diagnostico
-
-
-
-
diagnosticoid
titulo
descripcion
consultas
: int
: String
: String
: Set
+
+
+
+
+
+
+
+
+
Diagnostico(diagid,tit,des) ()
getDiagnosticoid() ()
setDiagnosticoid(diagnosticoid) ()
getTitulo() ()
setTitulo(titulo) ()
getDescripcion() ()
setDescripcion(descripcion) ()
getConsultas() ()
setConsultas(consultas) ()
: int
: String
: String
: Set
Enfermedad
-
-
-
-
-
enfermedadid
descripcion
fechaAlta
gravedad
tipo
: int
: String
: Date
: String
: String
+
+
+
+
+
+
+
+
+
+
getEnfermedadid() ()
setEnfermedadid(enfermedadid) ()
getDescripcion() ()
setDescripcion(descripcion) ()
getFechaAlta() ()
setFechaAlta(fechaAlta) ()
getGravedad() ()
setGravedad(gravedad) ()
getTipo() ()
setTipo(tipo) ()
: int
: String
: Date
: String
: String
Farmaco
-
-
-
-
-
-
farmacoid
descripcion
tipo
fechaAlta
presentacion
precio
: int
: String
: String
: Date
: String
: String
+
+
+
+
+
+
+
+
+
+
+
+
getFarmacoid() ()
setFarmacoid(farmacoid) ()
getDescripcion() ()
setDescripcion(descripcion) ()
getTipo() ()
setTipo(tipo) ()
getFechaAlta() ()
setFechaAlta(fechaAlta) ()
getPresentacion() ()
setPresentacion(presentacion) ()
getPrecio() ()
setPrecio(precio) ()
: int
: String
: String
: Date
: String
: String
Historialclinico
-
-
-
-
-
-
-
-
historialclinicoid
paciente
fechahistorial
padecimiento
diagnostico
tratamiento
antecedentes
archivos
: int
: Paciente
: Date
: String
: String
: String
: Set
: Set
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Historialclinico(histclinid,pac,fhist,padec,diag,trat) ()
getHistorialclinicoid() ()
setHistorialclinicoid(historialclinicoid) ()
getPaciente() ()
setPaciente(paciente) ()
getFechahistorial() ()
setFechahistorial(fechahistorial) ()
getPadecimiento() ()
setPadecimiento(padecimiento) ()
getDiagnostico() ()
setDiagnostico(diagnostico) ()
getTratamiento() ()
setTratamiento(tratamiento) ()
getAntecedentes() ()
setAntecedentes(antecedentes) ()
getArchivos() ()
setArchivos(archivos) ()
: int
: Paciente
: Date
: String
: String
: String
: Set
: Set
Informe
-
-
-
-
-
-
-
informeid
paciente
medico
numero
fecha
texto
tipo
: int
: Paciente
: Medico
: BigDecimal
: Date
: String
: String
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Informe(informeid,paciente,medico,numero,fecha,texto,tipo) ()
getInformeid() ()
setInformeid(informeid) ()
getPaciente() ()
setPaciente(paciente) ()
getMedico() ()
setMedico(medico) ()
getNumero() ()
setNumero(numero) ()
getFecha() ()
setFecha(fecha) ()
getTexto() ()
setTexto(texto) ()
getTipo() ()
setTipo(tipo) ()
: int
: Paciente
: Medico
: String
: Date
: String
: String
Medico
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
medicoid
categoria
nombre
segundonombre
apellidopaterno
apellidomaterno
numerohijos
cedula
genero
edad
telefono
celular
direccion
estadocivil
nacionalidad
profesion
lugartrabajo
provincia
localidad
fechaalta
fechabaja
sueldo
contrasena
administrador
activo
: int
: int
: int
: int
: int
: int
: int
: int
: int
: int
: int
: int
: int
: int
: int
: int
: int
: int
: int
: int
: int
: int
: int
: int
: int
: int
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Medico(medid,nom,segnom,appat,apemat,numhi,ced,gen,ed,tel,cel,dir,mial,escil, ()
getMedicoid() ()
setMedicoid(medicoid) ()
getCategoria() ()
setCategoria(categoria) ()
getNombre() ()
setNombre(nombre) ()
getSegundonombre() ()
setSegundonombre(segundonombre) ()
getApellidopaterno() ()
setApellidopaterno(apellidopaterno) ()
getApellidomaterno() ()
setApellidomaterno(apellidomaterno) ()
getNumerohijos() ()
setNumerohijos(numerohijos) ()
getCedula() ()
setCedula(cedula) ()
getGenero() ()
setGenero(genero) ()
getEdad() ()
setEdad(edad) ()
getTelefono() ()
setTelefono(telefono) ()
getCelular() ()
setCelular(celular) ()
getDireccion() ()
setDireccion(direccion) ()
getEmail() ()
setEmail(email) ()
getEstadocivil() ()
setEstadocivil(estadocivil) ()
getNacionalidad() ()
setNacionalidad(nacionalidad) ()
getProfesion() ()
setProfesion(profesion) ()
getLugartrabajo() ()
setLugartrabajo(lugartrabajo) ()
getFechanacimiento() ()
setFechanacimiento(fechanacimiento) ()
getProvincia() ()
setProvincia(provincia) ()
getLocalidad() ()
setLocalidad(localidad) ()
getFechaalta() ()
setFechaalta(fechaalta) ()
getFechabaja() ()
setFechabaja(fechabaja) ()
getSueldo() ()
setSueldo(sueldo) ()
getContrasena() ()
setContrasena(contrasena) ()
isAdministrador() ()
getAdmin() ()
setAdministrador(administrador) ()
isActivo() ()
getActiv() ()
setActivo(activo) ()
getMatricula() ()
setMatricula(matricula) ()
Odontograma
-
-
-
-
-
-
-
-
-
-
-
-
-
odontogramaid
paciente
medico
fecha
numerodepieza
materialrelleno
materialsellado
descripciontratamiento
realizado
presupuesto
formadepago
image
tratamientodes
: int
: Paciente
: Medico
: Date
: String
: String
: String
: String
: String
: String
: String
: String
: String
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Odontograma(odonid,pac,med,fec,numpie,matrell,matsel,destrat,real,pres,forpag,imag) ()
getOdontogramaid() ()
setOdontogramaid(int odontogramaid) ()
getPaciente() ()
setPaciente(paciente) ()
getMedico() ()
setMedico(medico) ()
getFecha() ()
setFecha(fecha) ()
getNumerodepieza() ()
setNumerodepieza(numerodepieza) ()
getMaterialrelleno() ()
setMaterialrelleno(materialrelleno) ()
getMaterialsellado() ()
setMaterialsellado(materialsellado) ()
getDescripciontratamiento() ()
setDescripciontratamiento(descripciontratamiento) ()
getRealizado() ()
setRealizado(realizado) ()
getPresupuesto() ()
setPresupuesto(presupuesto) ()
getFormadepago() ()
setFormadepago(formadepago) ()
getImage() ()
setImage(image) ()
getTratamientodes() ()
setTratamientodes(tratamientodes) ()
: int
: Paciente
: Medico
: Date
: String
: String
: String
: String
: String
: String
: String
: String
: String
Paciente
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
pacienteid
medico
apellidopaterno
cedula
profesion
numerohijos
nombre
lugartrabajo
segundonombre
edad
telefono
celular
fechanacimiento
nacionalidad
genero
direccion
estadocivil
apellidomaterno
provincia
estado
fechaaccion
historiaClinica
grupoSanguineo
antFamiliares
antPersonales
alergias
vacunas
tratHabitual
intQuirurgicas
enfCronicas
: int
: Medico
: String
: String
: String
: String
: String
: String
: String
: String
: String
: String
: Date
: String
: String
: String
: String
: String
: String
: String
: String
: Date
: String
: String
: String
: String
: String
: String
: String
: String
: String
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Paciente(pacid,med,appat,ced,prof,numhij,nom,lugtrab,segom,ed,tel,cel,fnac,naci,nac,mail,gen,dir,esciv,ap,dom,pro) ()
getPacienteid() ()
setPacienteid(pacienteid) ()
getMedico() ()
setMedico(medico) ()
getApellidopaterno() ()
setApellidopaterno(apellidopaterno) ()
getCedula() ()
setCedula(cedula) ()
getProfesion() ()
setProfesion(profesion) ()
getNumerohijos() ()
setNumerohijos(numerohijos) ()
getNombre() ()
setNombre(nombre) ()
getLugartrabajo() ()
setLugartrabajo(lugartrabajo) ()
getSegundonombre() ()
Segundonombre(segundonombre) ()
getEdad() ()
setEdad(edad) ()
getTelefono() ()
setTelefono(telefono) ()
getCelular() ()
setCelular(celular) ()
getFechanacimiento() ()
setFechanacimiento(fechanacimiento) ()
getNacionalidad() ()
setNacionalidad(nacionalidad) ()
getEmail() ()
setEmail(email) ()
getGenero() ()
setGenero(genero) ()
getDireccion() ()
setDireccion(direccion) ()
getEstadocivil() ()
setEstadocivil(estadocivil) ()
getApellidomaterno() ()
setApellidomaterno(apellidomaterno) ()
getProvincia() ()
setProvincia(provincia) ()
getEstado() ()
setEstado(estado) ()
getFechaaccion() ()
setFechaaccion(fechaaccion) ()
getHistoriaClinica() ()
setHistoriaClinica(historiaClinica) ()
getGrupoSanguineo() ()
setGrupoSanguineo(grupoSanguineo) ()
getAntFamiliares() ()
setAntFamiliares(antFamiliares) ()
getAntPersonales() ()
setAntPersonales(antPersonales) ()
getAlergias() ()
setAlergias(alergias) ()
getVacunas() ()
setVacunas(vacunas) ()
getTratHabitual() ()
setTratHabitual(tratHabitual) ()
getIntQuirurgicas() ()
setIntQuirurgicas(intQuirurgicas) ()
getEnfCronicas() ()
setEnfCronicas(enfCronicas) ()
: int
: Medico
: String
: String
: String
: String
: String
: String
: String
: String
: String
: String
: Date
: String
: String
: String
: String
: String
: String
: String
: String
: Date
: String
: String
: String
: String
: String
: String
: String
: String
: String
Receta
-
-
-
-
-
-
-
-
-
-
-
-
recetaid
paciente
medico
fechaprescripcion
farmaco
numeroenvases
numero
duraciontratamiento
posologia
pauta
informacionadicional
recetaidrel
: int
: Paciente
: Medico
: Date
: String
: String
: String
: String
: String
: String
: String
: String
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Receta(recid,pac,med,fpresn,far,numenv,numdurtrat,pos,pau,infadic) ()
getRecetaid() ()
setRecetaid(recetaid) ()
getPaciente() ()
setPaciente(paciente) ()
getMedico() ()
setMedico(medico) ()
getFechaprescripcion() ()
setFechaprescripcion(fechaprescripcion) ()
getFarmaco() ()
setFarmaco(farmaco) ()
getNumeroenvases() ()
setNumeroenvases(numeroenvases) ()
getNumero() ()
setNumero(numero) ()
getDuraciontratamiento() ()
setDuraciontratamiento(duraciontratamiento) ()
getPosologia() ()
setPosologia(posologia) ()
getPauta() ()
setPauta(pauta) ()
getInformacionadicional() ()
setInformacionadicional(informacionadicional) ()
: int
: Paciente
: Medico
: Date
: String
: String
: String
: String
: String
: String
: StringTratamiento
-
-
-
-
-
tratamientoid
odontograma
tratamiento
tipo
consultas
: int
: Odontograma
: String
: String
: Set
+
+
+
+
+
+
+
+
+
+
+
+
+
Tratamiento(tratamientoid,tratamiento,tipo) ()
getTratamientoid() ()
setTratamientoid(tratamientoid) ()
getOdontograma() ()
setOdontograma(odontograma) ()
getTratamiento() ()
setTratamiento(tratamiento) ()
getTipo() ()
setTipo(tipo) ()
getConsultas() ()
Consultas(consultas) ()
getPrecio() ()
setPrecio(precio) ()
: int
: Odontograma
: String
: String
: Set
: String
42
Figura 10 Modelo entidad relación Autor: Tesista
Fuente: Tesista (PowerDesigner).
UCE SISTEMA CLINICO
43
5.3. FASE DE CONSTRUCCIÓN
Dentro de esta fase se destaca la capacitación del personal del subcentro de salud que
va a utilizar el sistema clínico.
Objetivos de la fase de construcción.
Aumentar el conocimiento del personal del subcentro para el uso de la
aplicación implementado en el subcentro de salud, igualmente el incremento en
el potencial del desarrollador mediante el perfeccionamiento profesional y
humano.
Modificar o desarrollar las aptitudes, técnicas y destrezas para conseguir la
correcta colaboración en una actividad o conjunto de actividades relacionadas
con las estaciones de trabajo.
Para el desarrollo de una correcta capacitación del personal y del desarrollador se ha
escogido las siguientes estrategias.
Analizar las necesidades: Se trata la identificación de las destrezas y conocimientos
del personal al igual que su desempeño.
Aplicación se emplea la estrategia de capacitación al personal.
Evaluación se realizan las pruebas pertinentes y se detecta el éxito o fracaso de la
aplicación.
Además se programó un plan de pruebas para poder realizar una mejora continua de la
aplicación conjuntamente con el director del subcentro, así se realizó el control de
calidad del sistema.
CAPITULO 6: MANUAL DE INSTALACIÓN
El software está diseñado para funcionar como una aplicación cliente/servidor, para lo
cual es necesario destinar un equipo dentro de la entidad para que cumpla la función
de un Servidor de Datos, y otro(s) equipo(s) como cliente(s). También puede darse el
UCE SISTEMA CLINICO
44
caso en el que un solo equipo pueda funcionar como servidor de datos y como cliente
al mismo tiempo.
6.1. Requerimientos
Antes de tomar la decisión de instalar el sistema, se tiene que tomar en cuenta con los
requisitos recomendados para cada equipo, que se describen a continuación.
Servidor de Datos con las siguientes características mínimas recomendadas:
Procesador Pentium IV de 1 GHz de velocidad con 512mb de Cache.
Memoria RAM de 512MB.
Vídeo: 4MB de memoria.
Disco duro de 30GB.
Tarjeta de red ethernet 10/100 BASE-T (par trenzado), u otro dispositivo de red
adecuado para el funcionamiento normal en la red empresarial con la que
cuenta la institución.
Estaciones de trabajo (clientes) con las siguientes características mínimas
recomendadas:
Estaciones de trabajo Microsoft Windows 2003/2000/XP/ME/98/Vista/Win7 y
Win8.
Procesador Pentium III de 800 MHz de velocidad con 128K de Cache.
Memoria RAM de 512MB.
Video: con 4MB de memoria.
Disco duro con 1 GB de capacidad
Tarjeta de red ethernet 10/100 BASE-T (par trenzado), u otro dispositivo de red
adecuado para el funcionamiento normal en la red empresarial con la que
cuenta la institución.
UCE SISTEMA CLINICO
45
Cumpliendo con las características recomendadas descritas anteriormente (tanto en el
servidor como en los clientes) se asegura que la solución se ejecutará con total
normalidad, seguridad, eficiencia y eficacia deseada.
NOTA: En el caso de que solo se cuente con una PC (mono usuario) solo se
precisarán las características del servidor la cual trabajará como cliente y servidor al
mismo tiempo, prescindiendo también la tarjeta de red.
6.2. Requerimientos para el Entorno de Producción
El ambiente de producción del sistema requiere de la instalación y configuración de los
siguientes elementos:
Servidor de datos:
- Servidor web Jboss v6.0
- Java RuntimeEnvironment 7
- Base de datos Postgrest 9.3
Aplicación:
- Clinica.war.
- Backup de la base de datos.
- Usuario de autenticación.
Los archivos de instalación se encuentran comprimidos en el archivo instalacion.rar,
para comenzar con la instalación de los componentes es necesario descomprimir esta
este archivo, mediante lo cual nos quedará una estructura de archivos como se indica
en la siguiente imagen.
UCE SISTEMA CLINICO
46
Hecho esto, podemos comenzar con el proceso de instalación de los componentes.
6.3. Instalación del servidor de base de datos Postgres 9.3.
Para la instalación del postgres nos dirigimos la carpeta Postgres y ejecutamos el
archivo postgresql-9.1.13-4-windows-x64.exe y nos sale la pantalla siguiente:
Damos clic en siguiente.
UCE SISTEMA CLINICO
47
Escogemos la carpeta donde queremos que se instale la aplicación, esto no influirá en
los procesos del sistema. Clic en siguiente.
Igualmente se escoge la carpeta de directorio de datos y clic en siguiente.
UCE SISTEMA CLINICO
48
La contraseña que utilizaremos es:
o User:postgres
o Password:postgres
Clic en siguiente.
El puerto se mantiene por defecto, clic en siguiente.
UCE SISTEMA CLINICO
49
Clic en siguiente.
Clic en siguiente y comienza el proceso de instalación de la herramienta, dependiendo
de las características de la maquina este proceso puede tardar varios minutos.
UCE SISTEMA CLINICO
50
Una vez terminado el proceso, quitamos el check de ¿Lanzar StackBuilder al finalizar?,
y clic en finalizar.
Una vez instalado el Postgres correctamente procedemos a ejecutarlo mediante la
aplicación PgAdminIII.
Esperamos a que nos aparezca la siguiente interfaz:
UCE SISTEMA CLINICO
51
UCE SISTEMA CLINICO
52
Clic en OK.
Una vez creada la base de datos, vamos a proceder a subir el backup de la base
clínica, para esto damos clic derecho sobre la base de datos clínica y dar clic en
Restaurar.
UCE SISTEMA CLINICO
53
Clic al botón (…) y vamos a la ubicación de la carpeta Postgres, y escogemos el
archivo clinica.backup.
UCE SISTEMA CLINICO
54
Clic en Restaurar. Dependiendo de las características de la máquina, este proceso
tarda algunos minutos.
Al finalizar el proceso damos clic en Hecho. Y se ha creado un nuevo esquema
llamado clínica en donde se encuentran todas nuestras tablas y secuencias.
6.4. Instalación de Servidor Web Jboss 6.0
Extraer el archivo y se copia la carpeta del servidor web Jboss 6.0 con todos sus
directorios incluidos en el espacio en disco duro que se estime conveniente. Ejemplo:
Concluida la operación de la copia de todos los archivos al computador se procede a la
ejecución y verificación de que este corriendo exitosamente el servidor Jboss.
UCE SISTEMA CLINICO
55
Antes de ejecutar el servidor debemos comprobar que se copiaron todos los archivos
del servidor, debe quedar la estructura del directorio de la siguiente manera:
6.4.1. Verificando el funcionamiento del Servidor Jboss 6.0
Una vez que comprobemos que la carpeta del servidor web Jboss este copiada
correctamente pues procedemos a ejecutar el servidor. Lo hacemos mediante la
consola de Windows (cmd.exe), que el propio servidor gestiona. Para eso nos dirigimos
a la siguiente ruta (C:\jboss-6.0.0.Final\bin) y se ejecuta con permisos de administrador
el fichero (run.bat). Esperamos a que se ejecute la consola de Windows y que se
cargue todo el servidor Jboss.
En el caso que no se ejecute la consola pues procedemos a revisar si tenemos
instalado el Java RuntimeEnvironment 7 en caso de que no esté instalado precedemos
con la instalación que se encuentra en la carpeta de instalación del sistema.
Instalación del Java RuntimeEnvironment 7. Para instalar el Java RuntimeEnviroment
7, nos dirigimos a la carpeta java 7 de nuestra carpeta descomprimida. Y ejecutar el
archivo jdk-7u3-windows-x64.exe.
Nos muestra la siguiente interfaz.
UCE SISTEMA CLINICO
56
Clic en Next.
Se mantiene la configuración por defecto. Clic en Next
UCE SISTEMA CLINICO
57
Comienza el proceso de instalación, que puede durar varios minutos. Aparecerá la
siguiente interfaz.
UCE SISTEMA CLINICO
58
Clic en Next.
Comienza la instalación.
Clic en Continue.
Comienza la instalación de las herramientas SDK.
UCE SISTEMA CLINICO
59
Clic en Next.
Seleccionamos la carpeta de instalación, se recomiendo dejar la que está por defecto.
UCE SISTEMA CLINICO
60
Clic en Next.
Comienza la instalación de componentes.
Se ha finalizado la instalación
UCE SISTEMA CLINICO
61
.
Clic en Close.
Finalmente podemos ejecutar el servidor Jboss de la misma manera que hicimos
anteriormente, ejecutando el archivo run.bat que se encuentra en el directorio C:\jboss-
6.0.0.Final\bin.
Solo resta abrir un navegador web y hacer correr el sistema, para eso lo hacemos
escribiendo en la url del navegador (dirección Ip del servidor):8080/Clínica. Y veremos
la siguiente interfaz principal.
El usuario configurado por defecto es:
o User: admin@localhost.com
UCE SISTEMA CLINICO
62
o Password: adn
CONCLUSIONES
El desarrollo del Sistema para el Subcentro de Salud y Odontológico Huiruno se
concluye en lo siguiente:
Como resultado del análisis de los procesos del Subcentro de Salud y
Odontológico Huiruno, se ha podido diseñar e implementar un sistema
informático utilizando software libre, el cual permite que el Subcentro realice
sus operaciones de manera eficiente, dando así un mejor servicio a los
pacientes que diariamente asisten.
Al utilizar la herramienta de Desarrollo de Software adecuada, se ha logrado de
la mejor manera que el desarrollo del presente sistema sea eficiente, confiable
y adaptable a las necesidades del subcentro, es decir, la metodología RUP es
una de las mejores alternativas que existe para elaborar un proyecto, ya que
nos proporciona un enfoque disciplinado de las actividades a seguir.
Se logró desarrollar el sistema informático obteniendo resultados positivos, en
el Subcentro de Salud y Odontológico Huiruno, con lo cual se cumple con
el objetivo general, puesto que el sistema desarrollado ha contribuido de
manera eficiente en minimizar el tiempo en la búsqueda, ubicación y la
actualización de documentos.
UCE SISTEMA CLINICO
63
La implementación del sistema desarrollado como tema de tesis para el
Subcentro de Salud y Odontológico Huiruno, fue elaborado en base a las
necesidades actuales que posee el subcentro y también presenta algunas
innovaciones que superan la calidad del servicio actual, todos estos cambios se
los ha realizado buscando el mejoramiento en la atención de los pacientes.
RECOMENDACIONES
Ya concluido del presente estudio, se considera conveniente enunciar las siguientes
recomendaciones.
El sistema actualmente fue instalado y opera de manera satisfactoria alojado en
un servidor con procesador Intel Core i3 y memoria RAM de 4 GB, es
recomendable sobre todo en el caso de que se tenga más concurrencia en el
Subcentro, el uso de un servidor de mayor potencia.
Un software no siempre se lo desarrolla de forma controlada, y en la actualidad
hay algunos sistemas que presentan grandes dificultades, es por ello que se
debe utilizar una Metodología que se ajuste a los requerimientos para el
desarrollo adecuado de este.
Para la realización de un software siempre se debe buscar que éste cumpla con
las expectativas de los clientes, y pueda dar soluciones a todas las necesidades
de la empresa o institución para el cual se lo realizo, en lo que se refiere a
automatización de procesos manuales, para ayudar a administrar los recursos
materiales, humanos y económicos de la mejor manera posible.
UCE SISTEMA CLINICO
64
BIBLIOGRAFIA
1. Sistemas Operativos. Disponible en:
http://www.monografias.com/trabajos16/sistema-operativo/sistema-
operativo.shtml#SISTOPERAT. Fecha de consulta el 03 de mayo del 2009.
2. Introducción a Hibernate. En adictosaltrabajo. Recuperado 2004-08-14.
Disponible desde internet en:
http://www.adictosaltrabajo.com/tutoriales/tutoriales.php?pagina=hibernate
3. McGRAW-HIL (2002). Ingeniería de Software Un enfoque práctico.
4. PostgreSQL-es (2009). En Postgresql. Disponible desde internet en:
http://www.postgresql.org.es/sobre_postgresql
5. HERNÁNDEZ ORALLO Enrique, “El lenguaje unificado de Modelado (UML)”
http://www.disca.upv.es/enheror/pdf/ActaUML.PDF
6. GARCÍA Joaquín, “Desarrollo de Software orientada a objetos”
http://www.ingenierosoftware.com/analisisydiseno/uml.php
7. Metodología RUP (2012). En rupmetodologia. Disponible desde internet en:
http://rupmetodologia.blogspot.com/2012/06/fases-de-la-metodologia-rup.html
8. Metodología RUP (2012). En metodologiadesoftware. Disponible desde internet
en:http://rupmetodologia.blogspot.com/2012/06/fases-de-la-metodologia-
rup.html
UCE SISTEMA CLINICO
65
9. RUEDA, Julio. Aplicación de la Metodología RUP para el Desarrollo Rápido De
Aplicaciones Basado En El Estándar J2EE. Al Conferírsele el Título de
Ingeniero en Ciencias y Sistemas: Guatemala, marzo de 2006. Pág. 10-13.
10. Metodologías de desarrollo de software (2012). En slideshare. Disponible desde
internet en: http://es.slideshare.net/cortesalvarez/metodologa-rup
11. Luis Miguel Gracia. Un poco de Java. En https://unpocodejava.wordpress.com/.
Disponible desde internet en:
https://unpocodejava.wordpress.com/2010/03/29/patrones-que-odio-dto/
12. Patrones J2EE principales – Data AccesObject. En http://www.oracle.com/.
Disponible desde internet en:
http://www.oracle.com/technetwork/java/dataaccessobject-138824.html
UCE SISTEMA CLINICO
66
ANEXOS
Manual de Usuario
Introducción
El Sistema Clínico para el subcentro de salud y odontológico Huiruno, fue desarrollado
en código open source Java, permitiendo de esta manera al cliente tener un acceso
fácil y sin costo.
El diseño de la interfaz del sistema provee al usuario una manera fácil, rápida e
intuitiva de manipulación del sistema, además el sistema estará disponible siempre y
cuando el funcionamiento de la intranet del subcentro esté completamente correcto.
Objetivo
Guiar al usuario final con respecto a las funcionalidades de la herramienta para su
manipulación, y generar una mejora en el proceso de atención al paciente.
Diseño de prototipos de interfaces de Usuario
Interfaces comunes
La aplicación del sistema dispone de una primera ventana de identificación del usuario.
Solo usuarios registrados en la base de datos pueden acceder al sistema. La interfaz
que se presenta a continuación muestra el ingreso al sistema:
INTERFAZ DE INICIO DE SESION
Objetivo: Autenticarse en el Sistema Clínico para acceder a las
opciones.
Descripción: Se deberá ingresar con una cuenta del tipo Usuario de
correo proporcionada por el Área de Sistemas.
Pasos a Seguir (Ver imagen abajo)
1. Abrir navegador Web (Mozilla Firefox, Google Chrome, InternetExplorer 6.0 o
superior).
2. Ingresar a la siguiente dirección Web: http:// (Ip del Servidor):8080/Clínica
UCE SISTEMA CLINICO
67
3. Ingresar correo y clave.
El sistema verificará el usuario de correo y clave ingresados, de ser correcta la
verificación el usuario ingresará al sistema y podrá acceder a las opciones del sistema.
En el caso de ingreso de datos incorrectos el sistema mostrará un mensaje de error.
Cuando el usuario ingrese al sistema se le mostrará la siguiente pantalla de inicio:
UCE SISTEMA CLINICO
68
Esta pantalla principal está compuesta por los siguientes elementos que proporcionan
la navegación por el sistema de manera fluida, práctica y entendible.
Aquí se muestra todas las acciones del sistema que constituyen el objeto de
navegación del mismo.
Las acciones del sistema serán controladas según el perfil del usuario logeado.
MENU PRINCIPAL DEL SISTEMA PARA LA RECEPCIONISTA
MENU PRINCIPAL DEL SISTEMA PARA LA ENFERMERA
MENU PRINCIPAL DEL SISTEMA PARA EL MÉDICO
UCE SISTEMA CLINICO
69
MENU PRINCIPAL DEL SISTEMA PARA EL ODONTÓLOGO
ACCIONES ADICIONALES A LOS USUARIOS QUE SE LES DE EL PRIVILEGIO DE
ADMINISTRADOR.
Banner representativo del sistema mostrando siempre el usuario registrado en el
sistema en la parte superior derecha.
En este banner se puede ver el nombre y perfil del usuario logeado en el sistema. En la
pantalla principal se hace uso de vistas que muestran datos de consultas,
odontogramas y la agenda de citas que existan registradas en el sistema de fácil
acceso.
UCE SISTEMA CLINICO
70
En cualquier instante de la navegación del sistema, el usuario puede regresar a la
pantalla de inicio descrita anteriormente, presionando la acción Panel Inicio
El usuario podrá cerrar su sesión en el momento que desee, simplemente hacer clic en
el enlace “Salir”. El sistema cerrará la sesión del usuario y se mostrará la pantalla
inicial de Login del Sistema.
La estructura de la mayoría de las interfaces de registro de los formatos es muy similar,
conteniendo todas las mismas zonas y los controles principales. Lo que varía en las
interfaces son los controles de captura y visualización de la información, la cual es
distinta para cada formato. Por esta razón describiremos sólo en esta parte las zonas
comunes:
Botón Perfil.
Se encuentra en la parte superior derecha del sistema.
UCE SISTEMA CLINICO
71
Si presionamos el botón “Perfil” que se encuentra en la parte superior derecha del
sistema se mostrará una interfaz con los datos del perfil del usuario registrado
actualmente.
Editar Perfil de Usuario.
Al seleccionar la opción editar perfil, se muestra la siguiente opción:
Pantalla de edición del perfil.
Interfaz con campos obligatorios para la edición exitosa de un nuevo perfil de usuario
en el sistema.
Los tipos de campos que se detallan son:
Campos de edición caracteres. (Tipo texto)
Campos de edición numéricos. (Tipo Número)
UCE SISTEMA CLINICO
72
Campos de selección (Tipo Combo box)
Campos de fecha (Tipo Calendario)
Opción Clínica
Esta opción nos muestra en la parte derecha un registro con los datos principales de la
clínica donde está instalada la aplicación, y permite editar o verificar la información de
dicha clínica.
Visualizar los datos de la clínica
Al dar clic en esta opción se visualiza los detalles de la clínica.
En esta pantalla nos da la opción de imprimir estos detalles, o de regresar al listado de
opciones de la clínica.
Editar los datos de la clínica
UCE SISTEMA CLINICO
73
Con esta acción nos permite editar la información de la clínica en la siguiente pantalla.
Se puede editar los datos de la clínica y guardar la edición y regresar a las opciones
de la clínica en el botón Listado.
Opción Usuarios
En esta opción nos aparecerá un listado con los usuarios del sistema, permitiéndonos
editar, visualizar y eliminar a cada uno de ellos.
Dentro de esta lista se encuentra un filtro por cada uno de los campos de la tabla.
Los campos que se muestran son:
Nombre del médico (Campo de caracteres).
UCE SISTEMA CLINICO
74
La fecha de nacimiento (campo numérico).
El número de teléfono fijo (campo numérico validado por la cantidad de números que
corresponde a un teléfono fijo).
El número de celular del médico (campo numérico validado por la cantidad de números
que corresponde a un celular).
La categoría que se registra a un médico (Cambo de caracteres).
Muestra la localidad del médico (Cambo de caracteres).
Se muestra un panel con tres acciones a ejecutar.
Detalles (Se ejecuta la interfaz del sistema “detalles del médico”)
UCE SISTEMA CLINICO
75
Interfaz “Detalles del médico”.
Editar (Se ejecuta la interfaz del sistema “Editar médico”)
Interfaz “Editar médico”.
Eliminar (Se elimina el registro de un médico)
Panel de visibilidad de los contenidos a mostrar.
UCE SISTEMA CLINICO
76
Crear médico.
Si presionamos el botón “crear médico” se mostrará una interfaz con un formulario para
llenar los datos respectivos de un médico.
Interfaz con campos obligatorios para la creación exitosa de un nuevo médico en el
sistema.
Los tipos de campos que se detallan son:
Campos de edición caracteres. (Tipo texto)
Campos de edición numéricos. (Tipo Número)
Campos de selección (Tipo Combo box)
Campos de fecha (Tipo Calendario)
UCE SISTEMA CLINICO
77
Datos de usuario.
En esta interfaz se especifica qué tipo de medico es estableciendo sus datos para el
perfil, estos datos pueden ser de administrador o de usuario común “activo”.
Botones:
Guarda el registro del médico en el sistema.
Imprime el registro del médico en el sistema descargando un archivo del mismo en
formato (PDF).
Muestra el listado de médicos registrados en el sistema.
Actualizar e Imprimir Lista
Como su nombre indica nos permite imprimir el listado de usuarios del sistema sin
tomar en cuenta la paginación; igualmente actualizar lista realiza una consulta
directamente a la base de datos para actualizar el listado que se visualiza.
UCE SISTEMA CLINICO
78
Listado de Pacientes.
Si presionamos el botón “Listado Pacientes” del menú principal se mostrará una
interfaz con un listado de todos los pacientes registrados en el sistema dependiendo
del perfil logeado.
Si se encuentra logeado un usuario con perfil recepcionista, de desplegaran todos los
pacientes ingresados de tal manera que le permita asignarlo a cualquier área del
subcentro e igualmente visualizar en que área se encuentra actualmente.
Esta interfaz está compuesta por:
Campo Id (se muestra el id del paciente).
Campo Nombre y Apellidos (se muestra el nombre y el apellido del paciente).
Campo Fecha de nacimiento (se muestra la fecha de nacimiento del paciente).
Campo Teléfono (se muestra el teléfono del paciente).
UCE SISTEMA CLINICO
79
Campo Celular (se muestra el celular del paciente).
Campo Localidad (se muestra la localidad del paciente).
Campo Estado, se muestra el área en donde se encuentra el paciente.
Vitales: En el área de enfermería tomándose los signos vitales.
Consulta: Se encuentra en el consultorio médico
Odontólogo: Se encuentra en el área de odontología.
Vacío: Esta en recepción esperando a ser atendido.
Panel de acciones (cuando no hay registros en el sistema).
Si existen registros. Se muestra un panel con cinco acciones a ejecutar.
Atender (Se ejecuta la interfaz del sistema “Detalles del paciente”)
Interfaz “Detalles del paciente”.
UCE SISTEMA CLINICO
80
Editar (Se ejecuta la interfaz del sistema “Editar paciente”)
Interfaz “Editar paciente”.
Eliminar (Se elimina el registro de un paciente)
UCE SISTEMA CLINICO
81
Ingresar al médico, asigna al paciente a la lista de atención de pacientes de la
enfermería, para poder asignarle un médico luego de tomar sus signos vitales.
Ingresar al odontólogo, asigna al paciente a la lista de atención de pacientes del
odontólogo.
Las acciones además dependiendo del usuario logeado en la aplicación varían en
número, las acciones descritas hasta aquí corresponden al usuario recepcionista,
mientras que si se logea como enfermero(a) las acciones son:
Aumenta la opción consultas, esta opción permite ingresar una consulta médica al
paciente, la pantalla consulta será descrita más adelante.
Mientras que al logearse como un médico u odontólogo, las acciones cambian, y se
aumenta una opción que es “Fin de Atención”.
Esta opción elimina al paciente de la lista del médico u odontólogo para que el proceso
vuelva a empezar.
UCE SISTEMA CLINICO
82
Botones:
Guarda el registro del paciente en el sistema.
La opción “Informes” nos permite ingresar un informe médico para el paciente que se
acaba de seleccionar, la pantalla de informes será detallada más adelante.
En “Citas” nos permite ingresar una cita futura para el paciente
En la opción “Ingresar al Médico” el paciente será asignado a la lista de pacientes de la
enfermera de turno para tomar sus signos vitales y que pueda ser atendido por el
médico.
En la opción “Ingresar al Odontólogo” el paciente será automáticamente asignado a la
lista de pacientes de atención del odontólogo en orden de llegada.
Imprime el registro del paciente en el sistema descargando un archivo del mismo en
formato (PDF).
Muestra el listado de los pacientes registrados en el sistema.
UCE SISTEMA CLINICO
83
Crear Paciente.
Si presionamos el botón “Crear Paciente” se mostrará una interfaz con un formulario
para llenar los datos respectivos de la ficha de un paciente.
Interfaz con campos obligatorios para la creación exitosa de un nuevo médico en el
sistema.
Los tipos de campos que se detallan son:
Campos de edición caracteres. (Tipo texto)
Campos de edición numéricos. (Tipo Número)
Campos de selección (Tipo Combo box)
Campos de fecha (Tipo Calendario)
Botones:
Guarda el registro del paciente en el sistema.
UCE SISTEMA CLINICO
84
Muestra el listado de los pacientes registrados en el sistema.
Ficha Paciente.
Esta opción muestra los detalles del paciente y permite atenderlo, esta fecha se carga
con la información del paciente que se haya seleccionado para la atención.
Botones:
Consultas, permite ingresar una consulta para el paciente que se encuentra atendido.
Informes, permite generar el informe al paciente en atención.
Citas, nos re direcciona a la pantalla de citas, con el paciente en atención precargado.
UCE SISTEMA CLINICO
85
Fin de atención, regresa al paciente a recepción para una futura atención.
Imprime el registro del paciente en el sistema descargando un archivo del mismo en
formato (PDF).
Muestra el listado de los pacientes registrados en el sistema.
Citas.
Si presionamos el botón “Citas” del menú principal se mostrará una interfaz para
ingresar una cita al paciente que está en atención, o nos permite escoger un paciente
para asignarle la cita.
Interfaz con campos obligatorios para la creación exitosa de una nueva cita en el
sistema.
Los tipos de campos que se detallan son:
Campos de edición caracteres. (Tipo texto)
Campos de selección (Tipo Combo box)
UCE SISTEMA CLINICO
86
Botones:
Guarda el registro de la cita en el sistema.
Muestra el listado de todas las citas registradas en el sistema.
Listado de citas.
Si presionamos el botón “Listado” del menú se mostrará una interfaz con un listado de
todas las citas creadas en el sistema.
Fecha de cita (campo donde se refleja la fecha de la cita).
Hora (Campo donde se refleja la hora de la cita).
Descripción (Campo donde se refleja la descripción de la cita).
Paciente (Campo donde se refleja el paciente que tiene la cita).
Médico (Campo donde se refleja el medico que efectúa la cita).
Panel de acciones (cuando no hay registros en el sistema).
UCE SISTEMA CLINICO
87
Si existen registros. Se muestra un panel con tres acciones a ejecutar.
Detalles (Se ejecuta la interfaz del sistema “detalles del citas”)
Interfaz “Detalles de la cita”.
Editar (Se ejecuta la interfaz del sistema “Editar cita”)
Interfaz “Editar cita”.
UCE SISTEMA CLINICO
88
Eliminar (Se elimina el registro de la cita)
Crear Receta.
Si presionamos el botón “Receta” se mostrará una interfaz con un formulario para
llenar los datos respectivos de una receta médica con el paciente en atención
precargado.
Interfaz con campos obligatorios para la creación exitosa de una nueva receta en el
sistema.
Los tipos de campos que se detallan son:
Campos de edición caracteres. (Tipo texto)
Campos de edición numéricos. (Tipo Número)
Campos de selección (Tipo Combo box)
Campos de fecha (Tipo Calendario)
Botones:
Guarda un registro de la receta en el sistema, además carga la lista con los registros
pertenecientes a la receta.
Y permite pre visualizar el grafico de imprecisión de la receta
UCE SISTEMA CLINICO
89
Lista con los registros de la receta.
Pre visualización de la impresión de la receta.
Imprime el registro de la receta en el sistema descargando un archivo del mismo en
formato (PDF).
Impresión de la receta:
UCE SISTEMA CLINICO
90
Terminar Receta, permite ingresar una receta nueva.
Consulta.
Si presionamos el botón “Consulta” se mostrará una interfaz con un formulario para
llenar los datos respectivos de una consulta, esta interfaz está con el paciente
precargado.
Para ingresar una consulta existen varias alternativas que se explicaron anteriormente.
Detallaremos ahora la interfaz de crear consulta y sus restricciones por perfil.
La administración de consultas no podrá ser visualizada por la recepcionista.
Al logearse como enfermera(o) se bloquearan ciertos campos y funcionalidades que se
detallan en la siguiente gráfica.
Mientras que al logearse como algún especialista la interfaz no tiene restricciones,
además esta pantalla vendrá precargada con la información de signos vitales antes
ingresados por el área de enfermería.
Cabe mencionar que el historial clínico de las consultas podrá ser visualizado por
cualquier perfil.
UCE SISTEMA CLINICO
91
Interfaz con campos obligatorios para la creación exitosa de una consulta en el
sistema.
Los tipos de campos que se detallan son:
Campos de edición caracteres. (Tipo texto)
Campos de edición numéricos. (Tipo Número)
Campos de selección (Tipo Combo box)
Botones:
Guarda el registro de la consulta en el sistema.
Permite generar el informe médico.
Muestra el listado de las consultas registradas en el sistema.
Listado de Consultas.
Si presionamos el botón “Listado” del menú se mostrará una interfaz con un listado de
todas las consultas registradas en el sistema.
UCE SISTEMA CLINICO
92
Campo Número (muestra el número de la consulta).
Campo Fecha consulta (muestra la fecha de la consulta).
Campo Anamnesis (muestra la anamnesis de la consulta).
Campo Exploración (muestra la exploración de la consulta).
Campo Diagnóstico (muestra el diagnóstico de la consulta).
Campo Tratamiento (muestra el tratamiento de la consulta).
Campo Paciente (muestra el nombre del paciente que tiene asignada la consulta).
Panel de acciones (cuando no hay registros en el sistema).
UCE SISTEMA CLINICO
93
Si existen registros. Se muestra un panel con tres acciones a ejecutar.
Detalles (Se ejecuta la interfaz del sistema “Detalles de la consulta”)
Interfaz “Detalles de la consulta”.
Editar (Se ejecuta la interfaz del sistema “Editar consulta”).
Interfaz “Editar consulta”.
UCE SISTEMA CLINICO
94
Eliminar (Se elimina el registro de la consulta).
Crear Informe.
Si presionamos el botón “Informe” se mostrará una interfaz con un formulario para
llenar los datos respectivos de un informe, con el paciente precargado.
Interfaz con campos obligatorios para la creación exitosa de un nuevo informe en el
sistema.
Los tipos de campos que se detallan son:
Campos de edición caracteres. (Tipo texto)
Campos de edición numéricos. (Tipo Número)
Campos de selección (Tipo Combo box).
Botones:
Guarda el registro del informe en el sistema.
Imprime el registro del informe en el sistema descargando un archivo del mismo en
formato (PDF).
UCE SISTEMA CLINICO
95
Muestra el listado de los informes registrados en el sistema.
Listado de Informes.
Si presionamos el botón “Listado” del menú principal se mostrará una interfaz con un
listado de todos los informes registrados en el sistema.
Campo Número (Se muestra el número del informe).
Campo Paciente (Se muestra el nombre del paciente que tiene asignado el informe).
Campo Médico (Se muestra el nombre del médico que realizó el informe).
Campo Fecha (Se muestra la fecha de realización del informe).
Campo Topo (Se muestra el tipo de informe).
Panel de acciones (cuando no hay registros en el sistema).
UCE SISTEMA CLINICO
96
Si existen registros. Se muestra un panel con tres acciones a ejecutar.
Detalles (Se ejecuta la interfaz del sistema “detalles del informe”)
Interfaz “Detalles del informe”.
Editar (Se ejecuta la interfaz del sistema “Editar Informe”).
Interfaz “Editar Informe”.
Eliminar (Se elimina el registro del informe del sistema).
UCE SISTEMA CLINICO
97
Listado de tratamientos.
Si presionamos el botón “Tratamientos” del menú principal se mostrará una interfaz con
un listado de todos los tratamientos registrados en el sistema.
Campo Número (Se muestra el número del tratamiento).
Campo Tipo (Se muestra el tipo de tratamiento).
Campo Tratamiento (Se muestra el nombre del tratamiento).
Detalles (Se ejecuta la interfaz del sistema “Detalles del tratamiento”)
Interfaz “Detalles del tratamiento”.
UCE SISTEMA CLINICO
98
Botones:
Guarda el registro del tratamiento en el sistema.
Imprime el registro del tratamiento en el sistema descargando un archivo del mismo en
formato (PDF).
Muestra el listado de los tratamientos registrados en el sistema.
Crear Tratamiento.
Si presionamos el botón “Crear Tratamiento” se mostrará una interfaz con un formulario
para llenar los datos respectivos de un tratamiento
Interfaz con campos obligatorios para la creación exitosa de un nuevo tratamiento en el
sistema.
Los tipos de campos que se detallan son:
Campos de edición caracteres. (Tipo texto)
UCE SISTEMA CLINICO
99
Campos de edición numéricos. (Tipo Número)
Botones:
Guarda el registro del tratamiento en el sistema.
Muestra el listado de los tratamientos registrados en el sistema.
Listado de Enfermedades.
Si presionamos el botón “Enfermedades” del menú principal se mostrará una interfaz
con un listado de todas las enfermedades registradas en el sistema.
Campo Descripción (Se muestra la descripción de la enfermedad).
Campo Gravedad (Se muestra la gravedad de la enfermedad).
Panel de acciones (cuando no hay registros en el sistema).
Si existen registros. Se muestra un panel con tres acciones a ejecutar.
UCE SISTEMA CLINICO
100
Detalles (Se ejecuta la interfaz del sistema “detalles del informe”)
Interfaz “Detalles de la Enfermedad”.
Editar (Se ejecuta la interfaz del sistema “Editar Enfermedad”).
Interfaz “Editar Enfermedad”.
Eliminar (Se elimina el registro de la enfermedad del sistema).
Detalles (Se ejecuta la interfaz del sistema “Detalles de la Enfermedad”)
Interfaz “Detalles de la Enfermedad”.
UCE SISTEMA CLINICO
101
Botones:
Imprime el registro de la enfermedad en el sistema descargando un archivo del mismo
en formato (PDF).
Muestra el listado de todas las enfermedades registrados en el sistema.
Listado de Fármacos.
Si presionamos el botón “Fármacos” del menú principal se mostrará una interfaz con un
listado de todos los fármacos registrados en el sistema.
Campo Descripción (Se muestra la descripción del fármaco).
Campo Presentación (Se muestra la Presentación del fármaco).
UCE SISTEMA CLINICO
102
Campo Tipo (Se muestra el Tipo de fármaco).
Campo Precio (Se muestra el Precio de fármaco).
Panel de acciones (cuando no hay registros en el sistema).
Si existen registros. Se muestra un panel con tres acciones a ejecutar.
Detalles (Se ejecuta la interfaz del sistema “detalles del fármaco”)
Interfaz “Detalles del Fármaco”.
Editar (Se ejecuta la interfaz del sistema “Editar Fármaco”).
UCE SISTEMA CLINICO
103
Interfaz “Editar Fármaco”.
Eliminar (Se elimina el registro del fármaco del sistema).
Detalles (Se ejecuta la interfaz del sistema “Detalles del Fármaco”)
Interfaz “Detalles del Fármaco”.
Botones:
Imprime el registro del fármaco en el sistema descargando un archivo del mismo en
formato (PDF).
Muestra el listado de todos los fármacos registrados en el sistema.
UCE SISTEMA CLINICO
104
Crear Factura.
Si presionamos el botón “Facturación” se mostrará una interfaz con un formulario para
llenar los datos respectivos de una factura, con el paciente precargado.
Se ingresará primero la cabecera de la factura:
Interfaz con campos obligatorios para la creación exitosa de una nueva cabecera en el
sistema.
Los tipos de campos que se detallan son:
Campos de edición caracteres. (Tipo texto)
Campos de edición numéricos. (Tipo Número)
Campos de selección (Tipo Combo box).
Botones:
Guarda el registro de la cabecera en el sistema.
Muestra el listado de las facturas registradas en el sistema.
Listado de Facturas.
Si presionamos el botón “Listado” del menú principal se mostrará una interfaz con un
listado de todas las facturas registrados en el sistema.
UCE SISTEMA CLINICO
105
Campo Número de factura (Se muestra el número de la factura).
Campo Paciente (Se muestra el nombre del paciente que tiene asignado el informe).
Campo Observaciones (Se muestra las observaciones de la factura).
Campo Descuento (Se muestra el descuento de la factura).
Panel de acciones (cuando no hay registros en el sistema).
Si existen registros. Se muestra un panel con tres acciones a ejecutar.
Detalles (Se ejecuta la interfaz del sistema “detalles de la factura”)
UCE SISTEMA CLINICO
106
Interfaz “Detalles de la factura”.
Editar (Se ejecuta la interfaz del sistema “Editar Factura”).
Interfaz “Editar Factura”.
Eliminar (Se elimina el registro de la factura del sistema).
Crear Detalles.
Luego de la creación de la cabecera de la factura se habilita la creación de los detalles
de la misma, además se activa la visualización de la impresión de la factura completa.
UCE SISTEMA CLINICO
107
Interfaz con campos obligatorios para la creación exitosa de los detalles de la factura
en el sistema.
Los tipos de campos que se detallan son:
Campos de edición caracteres. (Tipo texto)
Botones:
Guarda un registro del detalle en el sistema, además carga la lista con los registros
pertenecientes a la factura.
Y permite pre visualizar el grafico de imprecisión de la factura.
Lista con los registros de la factura.
Pre visualización de la impresión de la factura.
UCE SISTEMA CLINICO
108
Imprime el registro de la factura en el sistema descargando un archivo del mismo en
formato (PDF).
Impresión de la factura:
Listado de Odontograma.
Si presionamos el botón “Odontograma” del menú principal se mostrará una interfaz
con un listado de los odontogramas creados del paciente que se realiza la atención.
UCE SISTEMA CLINICO
109
Campo Paciente (Se muestra el nombre del paciente que tiene asignado un
odontograma).
Campo Médico (Se muestra el nombre del médico que realizó el odontograma).
Campo Fecha (Se muestra la fecha de realización del odontograma).
Campo Realizado (Se muestra el por ciento de realizado del odontograma).
Panel de acciones (cuando no hay registros en el sistema).
Si existen registros. Se muestra un panel con tres acciones a ejecutar.
Detalles (Se ejecuta la interfaz del sistema “detalles del odontograma”)
UCE SISTEMA CLINICO
110
Interfaz “Detalles del odontograma”.
Editar (Se ejecuta la interfaz del sistema “Editar odontograma”).
Interfaz “Editar Informe”.
Eliminar (Se elimina el registro del odontograma del sistema).
Crear Odontograma.
Si presionamos el botón “crear Odontograma” se mostrará una interfaz con un
formulario para llenar los datos respectivos de un odontograma con el paciente
precargado.
UCE SISTEMA CLINICO
111
Interfaz con campos obligatorios para la creación exitosa de un nuevo odontograma en
el sistema.
Los tipos de campos que se detallan son:
Campos de edición caracteres. (Tipo texto)
Campos de edición numéricos. (Tipo Número)
Campos de selección (Tipo Combo box)
Botones:
Acción para poder dibujar sobre el lienzo.
Borra el lienzo que se ha dibujado.
Guarda el dibujo del odontograma y lo salva como archivo de imagen (.jpg) en donde
se desee.
Paleta de colores para hacer el dibujo.
UCE SISTEMA CLINICO
112
Guarda el registro del odontograma en el sistema.
Imprime el registro del odontograma en el sistema descargando un archivo del mismo
en formato (PDF).
Muestra el listado de médicos registrados en el sistema.
Manual técnico
Introducción
Este manual provee al administrador una guía sobre la implementación del sistema,
ayuda a responder preguntas sobre cómo está desarrollado el software y el hardware y
sus requisitos y especificaciones.
El ambiente de desarrollo para el sistema está constituido por las siguientes
características.
Sistema operativo Windows 7 o superior
PowerDesigner(Modelador)
Motor de base de datos PostgreSql 9.3
Front End: Java Enterprise Edition
Persistencia: Hibernate
Negocio: Ejb
Vista: JSF(Primefaces, Richfaces)
Diccionario de Datos
Base de datos
UCE SISTEMA CLINICO
113
Nombre de la Tabla: Antecedente
Nombre Lógico Nombre Físico Tipo de Dato PK NULL
AntecedenteId antecedenteid serial PK NOT
Fecha fecha Date NOT
Antecedente antecedente charactervarying(2000)
Tipo tipo charactervarying(20)
Historialclinicoid historialclinicoid int
Nombre de la Tabla: Archivo
Nombre Lógico Nombre Físico Tipo de Dato PK NULL
Archivoid archivoid Serial PK NOT
Tipo tipo charactervarying(20) NOT
Bytes bytes Bytea
Odontogramaid odontogramaid Integer
Historialclinicoid historialclinicoid Int
Nombre de la Tabla: Cabecerafactura
Nombre Lógico
Nombre Físico Tipo de Dato PK NULL
Cabecera Factura
Cabecerafactura Serial PK NOT
Numero Factura
numerofactura Numeric NOT
Total total charactervarying(20)
Observaciones observaciones charactervarying(2000)
Descuento descuento charactervarying(20)
Otro Impuestos
otroimpuestos charactervarying(20)
Iva iva
Pacienteid pacienteid Integer
Codigo codigo charactervarying(20)
Nombre de la Tabla: Cabecerafactura
Nombre Lógico
Nombre Físico Tipo de Dato PK NULL
Categoriaid categoriaid Serial PK NOT
Descripcion descripcion charactervarying(100) NOT
UCE SISTEMA CLINICO
114
Nombre de la Tabla: Cita
Nombre Lógico
Nombre Físico Tipo de Dato PK NULL
Citaid Citaid Serial PK NOT
numero numero Numeric NOT
Notas notas charactervarying(1000) NOT
Duracion duracion time without time zone NOT
Tipo tipo charactervarying(100) NOT
Descripcion descripcion charactervarying(1000) NOT
Acude acude charactervarying(20) NOT
Fechacita fechacita timestampwithout time zone
NOT
Medicoid medicoid integer NOT
Pacienteid pacienteid integer NOT
Nombre de la Tabla: Clinica
Nombre Lógico
Nombre Físico Tipo de Dato PK NULL
Clinicaid Clinicaid Serial PK NOT
Nombre nombre charactervarying(100) NOT
Direccion Dirección charactervarying(1000) NOT
Provincia provincia charactervarying(1000) NOT
Telefono telefono charactervarying(20) NOT
Celular celular charactervarying(20) NOT
Email email charactervarying(100) NOT
Web web charactervarying(100) NOT
Nombre de la Tabla: Consulta
Nombre Lógico Nombre Físico Tipo de Dato PK NULL
consultaid Consultaid Serial PK NOT
pacienteid pacienteid Integer NOT
medicoid medicoid Integer NOT
fechaconsulta fechaconsulta Date NOT
sist Sist Integer NOT
Diast diast Integer NOT
pulsaciones Pulsaciones Integer NOT
ritmorespiratorio ritmorespiratorio Integer NOT
temperatura temperatura integer NOT
altura altura integer NOT
peso peso integer NOT
imc imc integer NOT
UCE SISTEMA CLINICO
115
observacion observacion charactervarying(250) NOT
anamnesis anamnesis charactervarying(250) NOT
exploracion exploracion charactervarying(250) NOT
diagnosticoid diagnosticoid Integer
tratamientoid tratamientoid integer
Nombre de la Tabla: Detalle
Nombre Lógico Nombre Físico Tipo de Dato PK NULL
detalleid detalleid Serial PK NOT
concepto concepto charactervarying(200) NOT
unidades unidades charactervarying(20) NOT
importe importe charactervarying(20) NOT
cabecerafactura cabecerafactura integer NOT
Nombre de la Tabla: Diagnostico
Nombre Lógico Nombre Físico Tipo de Dato PK NULL
diagnosticoid diagnosticoid Serial PK NOT
titulo titulo charactervarying(100) NOT
descripcion descripcion charactervarying(250) NOT
Nombre de la Tabla: Enfermedad
Nombre Lógico Nombre Físico Tipo de Dato PK NULL
enfermedadid enfermedadid Serial PK NOT
descripcion descripcion charactervarying(1000) NOT
fechaalta fechaalta date NOT
gravedad gravedad charactervarying(100) NOT
tipo tipo charactervarying(100) NOT
Nombre de la Tabla: Farmaco
Nombre Lógico Nombre Físico Tipo de Dato PK NULL
farmacoid farmacoid Serial PK NOT
descripcion descripcion charactervarying(1000) NOT
fechaalta fechaalta date NOT
presentacion presentacion charactervarying(100) NOT
tipo tipo charactervarying(100) NOT
precio precio charactervarying(100) NOT
UCE SISTEMA CLINICO
116
Nombre de la Tabla: Historial Clinico
Nombre Lógico Nombre Físico Tipo de Dato PK NULL
historialclinicoid historialclinicoid Serial PK NOT
fechahistorial fechahistorial date NOT
padecimiento padecimiento charactervarying(5000) NOT
pacienteid pacienteid integer NOT
diagnostico diagnostico charactervarying(5000) NOT
tratamiento tratamiento charactervarying(5000) NOT
Nombre de la Tabla: Informe
Nombre Lógico Nombre Físico Tipo de Dato PK NULL
informeid informeid Serial PK NOT
numero numero numeric NOT
fecha fecha date NOT
texto texto charactervarying(5000) NOT
pacienteid pacienteid integer NOT
medicoid medicoid integer NOT
tipo tipo charactervarying(5000) NOT
Nombre de la Tabla: Medico
Nombre Lógico Nombre Físico Tipo de Dato PK NULL
medicoid medicoid Serial PK NOT
nombre nombre charactervarying(100) NOT
segundonombre segundonombre charactervarying(100) NOT
apellidopaterno apellidopaterno charactervarying(100) NOT
apellidomaterno apellidomaterno charactervarying(100) NOT
numerohijos numerohijos charactervarying(5) NOT
cedula cedula charactervarying(10) NOT
genero genero charactervarying(10) NOT
edad edad charactervarying(10) NOT
telefono telefono charactervarying(20) NOT
celular celular charactervarying(20) NOT
direccion direccion charactervarying(1000) NOT
email email charactervarying(100) NOT
Nombre de la Tabla: Odontograma
Nombre Lógico Nombre Físico Tipo de Dato PK NULL
odontogramaid odontogramaid Serial PK NOT
fecha fecha date NOT
UCE SISTEMA CLINICO
117
numerodepieza numerodepieza charactervarying(20) NOT
materialrelleno materialrelleno charactervarying(200) NOT
materialsellado materialsellado charactervarying(200) NOT
descripciontratamiento descripciontratamiento charactervarying(1000) NOT
realizado realizado charactervarying(20) NOT
presupuesto presupuesto charactervarying(20) NOT
formadepago formadepago charactervarying(100) NOT
pacienteid pacienteid integer NOT
medicoid medicoid integer NOT
image image text NOT
tratamientodes tratamientodes charactervarying(200) NOT
Nombre de la Tabla: Paciente
Nombre Lógico Nombre Físico Tipo de Dato PK NULL
pacienteid pacienteid Serial PK NOT
apellidopaterno apellidopaterno charactervarying(100) NOT
cedula cedula charactervarying(10) NOT
profesion profesion charactervarying(100) NOT
numerohijos numerohijos charactervarying(5) NOT
nombre nombre charactervarying(100) NOT
lugartrabajo lugartrabajo charactervarying(200) NOT
segundonombre segundonombre charactervarying(100) NOT
edad edad charactervarying(10) NOT
telefono telefono charactervarying(20) NOT
celular celular charactervarying(20) NOT
fechanacimiento fechanacimiento date NOT
nacionalidad nacionalidad charactervarying(100) NOT
Nombre de la Tabla: Receta
Nombre Lógico Nombre Físico Tipo de Dato PK NULL
recetaid recetaid Serial PK NOT
fechaprescripcion fechaprescripcion date NOT
farmaco farmaco charactervarying(200) NOT
numeroenvases numeroenvases integer NOT
duraciontratamiento duraciontratamiento charactervarying(100) NOT
posologia posologia charactervarying(500) NOT
pauta pauta charactervarying(200) NOT
informacionadicional informacionadicional charactervarying(1000) NOT
pacienteid pacienteid integer NOT
medicoid medicoid integer NOT
numero numero integer NOT
recetaidrel recetaidrel integer NOT
UCE SISTEMA CLINICO
118
nacionalidad nacionalidad charactervarying(100) NOT
Nombre de la Tabla: Tratamiento
Nombre Lógico Nombre Físico Tipo de Dato PK NULL
tratamientoid tratamientoid Serial PK NOT
tratamiento tratamiento charactervarying(5000) NOT
tipo tipo charactervarying(50) NOT
odontogramaid odontogramaid integer NOT
precio precio charactervarying(100) NOT
Base de Datos
Base de Datos clínica
La base de datos clínica alojada en PostgreSQL contiene al esquema clínica el cual
aloja las tablas que almacenan los datos incluyendo sus correspondientes secuencias.
Role postgres
En PostgreSQL como en otras bases de datos se usa el concepto de roles con el fin de
usar grupos de usuarios convenientemente. Para la conexión del Sistema de Clínico se
ha creado el Rol “postgres” el cual tiene los privilegios justos y necesarios para que el
aplicativo opere con seguridad sobre los datos.
Servidor de Aplicaciones
Configuración de la fuente de datos
Para la conexión a la base de datos desde el aplicativo se hace referencia a un archivo
de configuración de Hibernate. Este objeto se define declarativamente en un archivo
XML del proyecto cuyo nombre es hibernate.cfg.xml.
En la siguiente imagen se muestra dicho archivo el cual entre sus elementos más
importantes tiene:
<property
name="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</property>: define
el dialecto con el que se trabajará, este depende de la base de datos.
UCE SISTEMA CLINICO
119
<property name="hibernate.connection.driver_class">org.postgresql.Driver</property>:
hace referencia al driver utilizado para el control de la base de datos.
<property
name="hibernate.connection.url">jdbc:postgresql://localhost:5432/clinica</property>:
Define cual es la cadena de conexión a la base de datos.
<propertyname="hibernate.connection.username">postgres</property>: Define el
nombre del usuario para abrir la conexión con la base de datos.
<propertyname="hibernate.connection.password">postgres</property>: Define el
password para abrir la conexión con la base de datos.
<propertyname="hibernate.show_sql">true</property>: define si se desea visualizar en
el log del servidor de aplicaciones los sqls realizados hacia la base de datos.
<property name="hibernate.current_session_context_class">thread</property>: define el modo de abrir la sesión con el motor de la base de datos. <mappingresource="Entity/Tratamiento.hbm.xml"/>: cada una de estas propiedades indica la dirección del mapeo de las entidades de la base de datos. Cada entidad de la base de datos será mapeada individualmente y sus anotaciones están en un archivo independiente.
En el caso de cambiarse cualquiera de estos parámetros en la base de datos téngase
en cuenta cambiar los correspondientes elementos en el archivo.
UCE SISTEMA CLINICO
120
Mapeo de las entidades
Cada entidad posee un archivo XML de configuración, donde se especificará el mapeo
de cada campo de la base de datos con su similar en la entidad, además con la ayuda
de las anotaciones de hibernate se simulará un modelo entidad relación de dichas
entidades.
Entre los atributos más importantes del mapeo se encuentran:
Define la clase en java que corresponde a la tabla en postgres, name:clase en
java, table: tabla de la base de datos, schema: esquema de la base de datos.
<classname="Entity.Paciente" table="paciente" schema="clinica">:
Define el id que se maneja en la base de datos con el id que se manejará en el
entorno de java
<id name="pacienteid" type="int">
<column name="pacienteid" />
<generator class="identity" />
</id>
Define las relaciones con otras entidades, esto simula el comportamiento del
modelo entidad relación que soportan las bases de datos relacionales. Relación
de muchos a uno.
<many-to-one name="medico" class="Entity.Medico" >
<column name="medicoid" not-null="true" />
</many-to-one>
Define cada uno de los atributos de la tabla que serán replicados por el
contexto de java.
<property name="apellidopaterno" type="string">
<column name="apellidopaterno" length="100" not-null="true" />
</property>
UCE SISTEMA CLINICO
121
Define las relaciones con otras entidades, esto simula el comportamiento del
modelo entidad relación que soportan las bases de datos relacionales. Relación
de uno a muchos.
<one-to-many class="Entity.Historialclinico" />
Un ejemplo del mapeo de entidades se muestra en la siguiente figura.
Capa de Negocio
Abstract DAO
Las entidades implicadas en las transacciones de la lógica de negocio están
manejadas por el API de hibernate y se definió una clase abstracta que es la que
maneja el CRUD de las entidades mapeas. Este mapeo de las entidades ya se explicó
anteriormente.
Esta clase abstracta contiene los métodos CRUD que serán de gran utilidad al
momento de realizar las transacciones.
Por cada entidad de la base de datos se ha generado una clase DAO para que
administre su persistencia, cada uno de estos DAO extienden de la clase abstracta
AbstractDAO, pudiendo de esta manera reutilizar sus métodos y no redundar en la
persistencia por cada entidad.
UCE SISTEMA CLINICO
122
Diagrama de paquetes
Dentro de la capa de negocio existen dos paquetes primordiales:
Figura 11 Diagramas de paquetes
Autor: Tesista Fuente: Tesista (GliftyUml).
Paquete Descripción
Dao Contiene los servicios para el acceso a datos y CRUD
Entity Contiene los DTOs
Util Contiene utilitarios para manejo de mensajes, sesión,
encriptación, contexto y cookies, paginación
A continuación se describe cada uno de los paquetes y sus respectivas clases.
Se detallaran las clases más relevantes, que podrán ser base da las otras clases.
Paquete DAO.
Figura 12 Paquete DAO
Autor: Tesista Fuente: Tesista (GliftyUml).
UCE SISTEMA CLINICO
123
Clase Descripción
AbstractDAO Clase abstracta de la cual heredan los servicios
para implementar operaciones CRUD
(Entity)DAO Entidades extendidas del AbstractDAO que manejan
los DTOs para la persistencia.
Paquete Entity.
Figura 13 Paquete Entity
Autor: Tesista Fuente: Tesista (GliftyUml).
Clase Descripción
Entity Corresponde a las clases mapeadas mediante
hibernate con sus respectivos atributos y getters and
setters.
Paquete Util.
Figura 14 Paquete Util
Autor: Tesista
UCE SISTEMA CLINICO
124
Fuente: Tesista (GliftyUml).
Clase Descripción
AuthorizationFilter Corresponde a un filtro de la aplicación que nos
ayudara a mantener la sesión activa del usuario
logeado, o nos enviará a relogeo.
Context Nos ayuda con la comunicación con el explorador,
en resumen a gestionar el contexto de la aplicación
ControlSesion Este utilitario nos ayuda a mantener el usuario en el
contexto de la aplicación utilizando las cookies del
navegador.
HibernateUtil Controla la sesión del hibernate, básicamente que
no se dupliquen las conexiones con la base de
datos.
JsfUtil Controla los mensajes de error, info, warning del
sistema.
MD5 Ayuda con la encriptación de datos delicados, como
contraseñas.
PaginationHelper Ayuda a realizar un paginado a nivel de base de
datos eficiente y eficaz.
Capa WEB
Configuración de Descriptor de Despliegue (web.xml)
El descriptor de implementación de una aplicación web describe las clases, los
recursos y la configuración de la aplicación, así como la forma en que el servidor web
los utiliza para suministrar las solicitudes web.
UCE SISTEMA CLINICO
125
Cuando el servidor web recibe una solicitud para la aplicación, utiliza el descriptor de
implementación para asignar la URL de la solicitud al código que debe controlar dicha
solicitud.
El descriptor de implementación es un archivo denominado web.xml. Se encuentra en
el WAR de la aplicación, concretamente, en el directorio WEBINF/.
Se trata de un archivo XML cuyo elemento raíz es <web-app>.
En este archivo se especifica la forma en que las URL se asignan a los servlets y las
direcciones URL que necesitan autenticación, entre otra información
A continuación se describen los elementos del archivo de despliegue de web del
Sistema Clínico.
Configuración de facelets:
javax.faces.PROJECT_STAGE: describe determinar la etapa del proyecto en la
que nos encontramos.
primefaces.THEME: indica el tema que se utilizará para primefaces, indica los
estilos que deben utilizar los componentes.
Configuración de JSF:
Servlet Faces Servlet: Especifica el servlet que procesa las páginas JSF.
Sessiontimeout: indica el tiempo en el que se mantendrá la sesión.
Welcome file list: indica la página de bienvenida de nuestra aplicación.
UCE SISTEMA CLINICO
126
Filtros:
authorizationFilter: Filtro que valida que la sesión no se haya caducado, si es
así re direcciona a la pantalla de login.
Configuración del archivo JSF (faces-config.xml)
El archivo faces-config es el archivo de configuración JSF en el cual principalmente se
especifican las reglas de navegación y los Managedbeans.
A continuación se especifican las configuraciones que se encuentran dentro de este
archivo mostradas en la siguiente imagen:
- <resource-bundle>: Nos ayuda a gestionar nuestra aplicación con un archivo de
propiedades, centraliza los parámetros y valores de las etiquetas.
UCE SISTEMA CLINICO
127
Configuración del archivo JBoss (jboss-web.xml)
El archivo jboss-web.xml es un archivo de despliegue en el cual se especifican
parámetros relacionados directamente con el servidor JBoss; es decir que no forman
parte de la especificación general. En este caso especiamos el contexto de la
aplicación
Configuración de Mensajes del Sistema
Cada uno de los mensajes del sistema y las etiquetas se encuentra especificado en el
archivo de propiedades Bundle.properties.
Por ejemplo la etiqueta fecha se especifica como sigue:
Diagrama de paquetes
En esta capa se consideran los siguientes paquetes:
Figura 15 Diagrama de paquetes
Autor: Tesista Fuente: Tesista (GliftyUml).
UCE SISTEMA CLINICO
128
Descripción de los paquetes
Paquete img
Figura 16 Paquete img
Autor: Tesista Fuente: Tesista (GliftyUml).
Paquete Descripción
img Contiene las imágenes necesarias para desplegar el
sistema.
Paquete protected
Figura 17 Paquete protected
Autor: Tesista Fuente: Tesista (GliftyUml).
Paquete Descripción
Protected Contiene las vistas del sistema, agrupadas un paquete
por entidad de la base de datos.
Cada Paquete contiene las vistas: Create.xhtml,
Edit.xhtml, List.xhtml, View.xhtml.
UCE SISTEMA CLINICO
129
Paquete resources
Figura 18 Paquete resources
Autor: Tesista Fuente: Tesista (GliftyUml).
Paquete Descripción
resources Contiene los archivos requeridos para el estilo y
funcionalidades del lado del cliente. En resumen los
archivos Css y Js.
Paquete controllers
Figura 19 Paquete controllers
Autor: Tesista Fuente: Tesista (GliftyUml).
Paquete Descripción
Controllers Contiene los manejadores de las vistas.
UCE SISTEMA CLINICO
130