ESCUELA POLITECNICA NACIONAL · METODOLOGÍA OMT METODOS DIAGRAMAS UML ESPECIFICACIÓN DE...
Transcript of ESCUELA POLITECNICA NACIONAL · METODOLOGÍA OMT METODOS DIAGRAMAS UML ESPECIFICACIÓN DE...
1
ESCUELA POLITECNICA NACIONAL
ESCUELA DE FORMACIÓN TECNOLÓGICA
SISTEMA DE ADMINISTRACIÓN DE PACIENTES DEL ÁREA DE FISIOTERAPIA DEL HOSPITAL ENRIQUE GARCÉS
PROYECTO PREVIO A LA OBTENCIÓN DEL TÍTULO DE TECNÓL OGO
GRACIELA ELIZABETH COFRE OÑA
DITECTOR: Ing. Maritzol Tenemaza Msc
Quito, Marzo 2006
2
CONTENIDO
CAPÍTULO I: INTRODUCCIÓN………………………………………………………...2
1.1. AMBITO……………………………………………………………………..…2
1.2. PROBLEMA……………..…………………………………………………….2
1.3. OBJETIVOS…………………………………………………………………...3
1.3.1. OBJETIVO GENERAL………………………………....…………………3
1.3.2. OBJETIVOS ESPECÍFICOS………………………………………….....3
1.4. ALCANCE…………………………………………………………………......3
1.5. JUSTIFICACIÓN PRÁCTICA…………………………………………….….4
1.6. ASPECTOS METODOLÓGICOS…………………………………………..5
CAPÍTULO II: ASPECTOS TEÓRICOS………………………………………….……6
2.1. PARADIGMA ESPIRAL………………………………………………….…..6
2.2. METODOLOGÍA OMT……………………………………………………….8
2.3. LENGUAJE UNIFICADO DE MODELADO………………………………12
2.3.1. DIAGRAMA DE CASO DE USO……………………………………….14
2.3.2. DICCIONARIO DE CASOS DE USO………………………………….16
2.3.3. DIAGRAMA DE CLASES……………………………………………….16
2.3.4. DIAGRAMA DE OBJETOS……………………………………………..18
2.3.5. DICCIONARIO DE CLASES……………………………………………19
2.3.6. DIAGRAMAS DE INTERACCIÓN……………………………………...19
2.3.6.1.DIAGRAMA DE SECUENCIAS…………………………………...19
2.3.6.2.DIAGRAMA DE COLABORACIÓN……………………………….21
2.3.7. DIAGRAMA DE ESTADOS…………………………………………...…22
2.3.8. DIAGRAMA DE ACTIVIDADES……………………………………...…25
2.4. PLATAFORMA CLIENTE SERVIDOR…………………………………….26
2.5. HERRAMIENTAS DE SOFTWARE………………………………………..27
2.5.1. MICROSOFT VISUAL BASIC…………………………………………..27
2.5.2. SQL SERVER…………………………………………………………….28
2.5.3. RATIONAL ROSE………………………………………………………..29
3
CAPÍTULO III: CONCLUSIONES Y RECOMENDACIONES…………………....30
3.1. CONCLUSIONES……………………………………………………...….30
3.2. RECOMENDACIONES……………………………………………...……31
3.3. BIBLIOGRAFÍA………………………………………………………...….32
4
RESUMEN
El presente trabajo nace como una necesidad del Área de Fisioterapia del
Hospital Enrique Garcés, contribuirá sustancialmente en la Administración de
Pacientes, permitiendo manejar la información en forma rápida y eficaz con el fin
de ofrecer al paciente atención médica de calidad.
El SISTEMA DE ADMINISTRACIÓN DE PACIENTES DEL ÁREA DE
FISIOTERAPIA DEL HOSPITAL “ENRIQUE GARCÉS” obedece a un Análisis
Orientado a Objetos, se somete a las fases de: análisis, diseño, desarrollo,
construcción, pruebas y mantenimiento propias de la Ingeniería de Software, y
que en conjunto con la Metodología OMT se adapta adecuadamente al enfoque
de implementación del mismo.
El Capítulo Uno describe: el ámbito en el cual se va a implementar el Sistema, el
problema actual de la Institución, se plantean los Objetivos, se describe el
Alcance, Justificación y Aspectos Metodológicos.
El Capítulo Dos desarrolla el marco teórico y contiene: Paradigma Espiral,
Metodología OMT, Lenguaje Unificado de Modelado, Plataforma Cliente/Servidor
y Herramientas Software utilizadas en la realización del Sistema.
El Capìtulo Tres plantea las conclusiones rescatadas a lo largo del desarrollo del
Sistema y recomendaciones sugeridas para mejorar los procesos que se llevan a
cabo dentro del Á rea de Fisioterapia del Hospital “Enrique Garcés”,se incluyen
las referencias bibliográficas.
Finalmente, como anexos se incluye los Manuales Técnico, de Usuario y de
Instalación del Sistema a fin de familiarizar al usuario con el manejo del mismo.
5
CAPITULO I: INTRODUCCION
1.1 ÁMBITO Ubicado al sur de la cuidad de Quito, en el Sector de Chilibulo Av. Enrique
Garcés. Cuidadela 4 de Diciembre ; el Hospital Enrique Garcés es una institución
de salud pública que presta servicios en las áreas de: Medicina General,
Pediatría, Odontología, Obstetricia, Fisioterapia, Cirugía.
El área de Fisioterapia objeto de estudio del Proyecto atiende a pacientes con
trastornos ortopédicos, neurológicos, vasculares y respiratorios, incapacidades
adquiridas por enfermedades o traumatismos, o disfunciones hereditarias.
1.2 PROBLEMA En el Área de Fisioterapia del Hospital “Enrique Garcés” el número de pacientes
nuevos ha tenido un incremento significativo, considerando que en la actualidad
se registran los datos de identificación de los pacientes y fichas médicas en hojas
electrónicas; se observan los siguientes problemas:
• Pérdida de la información de los pacientes por mala operación de las hojas
electrónicas
• Duplicidad de datos en los registros de pacientes y fichas médicas.
• No se puede llevar con efectividad el control de historias clínicas
• No se lleva un debido control en la asignación de turnos concedidos a los
pacientes.
• La información del Personal Médico no se encuentra automatizada lo que
conlleva a tener confusión y pérdidas de la misma.
• Resultados poco confiables en la generación de reportes
De no implementarse un sistema que brinde las prestaciones tecnológicas
suficientes para superar las dificultades presentes, el área mencionada y el
hospital en general
perderá competitividad, recursos económicos, recursos humanos, los mismos que
son el eje del desarrollo de la institución.
6
Ante esta situación el sistema a implementarse está diseñado para: ofrecer
atención oportuna y eficaz a sus pacientes.
1.3 OBJETIVOS 1.3.1. OBJETIVO GENERAL
Administrar la información de pacientes y doctores del área de Fisioterapia del
Hospital “Enrique Garcés” mediante la construcción de un Sistema de Información
que ofrezca atención oportuna y eficaz a sus pacientes.
1.3.2. OBJETIVOS ESPECÍFICOS
• Administrar Pacientes e Historias Clínicas
• Desarrollar un módulo para administración del Personal Médico
• Automatizar la asignación de turnos para consultas con médicos de la
institución.
• Desarrollar un módulo para obtención de reportes.
1.4. ALCANCE Para el sistema a desarrollarse la base de datos se creará en SQL SERVER 2000
la misma que interactuará con Microsoft Visual Basic 6.0. El sistema estará
orientado a:
• Mantener controles de acceso con la creación de perfiles de usuario.
• Registrar y actualizar datos de pacientes y personal médico.
• Generar historias clínicas y registrar datos de salud y evolución de los
pacientes.
• Mantener información del historial de atenciones brindadas al paciente.
• Controlar la disponibilidad de turnos de cada Fisioterapista.
• Asignar turnos para próximas citas médicas.
• Generar reportes útiles en la elaboración de estadísticas del Área de
Fisioterapia.
7
1.5. JUSTIFICACIÓN PRÁCTICA
Con el desarrollo e implementación del sistema se optimizarán los diferentes
procesos que se llevan dentro de la Institución reduciéndose al máximo el tiempo
de espera en la atención del paciente, acelerando el proceso de búsqueda de las
respectivas historias clínicas, permitiendo llevar el control adecuado de las citas
médicas; con finalidad de ofrecer comodidad y bienestar a los pacientes,
contribuyendo de esta manera en el mejoramiento del nivel de competitividad y
servicio al Área de Fisioterapia del Hospital “Enrique Garcés”
8
1.6. ASPECTOS METODOLÓGICOS
PARADIGMA ESPIRAL INCREMENTAL O.O METODOLOGÍA OMT METODOS DIAGRAMAS UML
ESPECIFICACIÓN DE REQUERIMIENTOS
Identificación de Actores
Diagrama de Casos de Uso
Diccionario de Casos de Uso
MODELO ESTÁTICO
Diagrama de Clases
Diagrama de Objetos
Diccionario de Clases
MODELO DINÁMICO
Diagrama de Interacción:
- Diagrama de Secuencias
- Diagrama de Colaboración
ANÁLISIS Y DISEÑO
MODELO DE PROCESOS Diagrama de Actividades
Diagrama de Estados
CONSTRUCCION
Back-End
Front-End
Plataforma
Arquitectura
SQL Server 2000
Visual Basic 6.0
Windows XP
Cliente/Servidor
PRUEBAS Funcionales
9
CAPITULO II: ASPECTOS TEÓRICOS
2.1. PARADIGMA ESPIRAL 1
En el desarrollo del Sistema FISIOSYS se utilizó el modelo en espiral. Este
Modelo utiliza un enfoque evolutivo para la ingeniería de software, permitiendo al
desarrollador y al usuario entender y reaccionar a los riesgos en cada nivel
evolutivo. Este modelo incorpora en el ciclo de vida el Análisis de Riesgos ;
utiliza la creación de prototipos como un mecanismo de reducción de los mismos,
pero, lo que es más importante permite a quien lo desarrolla aplicar el enfoque de
creación de prototipos en cualquier etapa de la evolución del sistema.
El modelo en espiral define cuatro tipos de actividades, y representa cada uno de
ellos en un cuadrante:
Figura 1. Paradigma Espiral
a. Planificación
Consiste en determinar los objetivos del sistema, las posibles alternativas y las
restricciones. En esta fase se lleva a cabo la recolección de requisitos y además
1 http://www.Modelosdeciclodevida/Modelodeciclodevida1.html
10
la planificación de las actividades a realizar en cada iteración.
b. Análisis de riesgos
En general, comprende la identificación de los riesgos incluyendo el análisis de
las diferentes alternativas de resolución de los mismos.
El análisis de riesgos consiste en cuatro actividades principales:
− Identificación de los riesgos ._ los que pueden ser riesgos: del proyecto,
técnicos o del negocio.
− Estimación de riesgos ._ consiste en evaluar, para cada riesgo identificado, la
probabilidad de que ocurra y sus consecuencias.
− Evaluación de riesgos . Consiste en establecer niveles de referencia para el
incremento de coste, de duración del proyecto y para la degradación de la
calidad que si se superan harán que se interrumpa el proyecto.
− Gestión de riesgos ._consiste en supervisar el desarrollo del proyecto,
detectando los riesgos tan pronto como aparezcan e intentando minimizar sus
daños.
c. Ingeniería
Consiste en el desarrollo del sistema o de un prototipo del mismo.
d. Evaluación del cliente
Consiste en la valoración, por parte del cliente, de los resultados de la ingeniería.
En resumen: en la primera iteración se definen los requisitos del sistema y se
realiza la planificación inicial del mismo. A continuación se analizan los riesgos del
sistema, basándonos en los requisitos iniciales y se procede a construir un
prototipo del sistema. Entonces el cliente procede a evaluar el prototipo y con sus
comentarios, se procede a refinar los requisitos y a reajustar la planificación
inicial, volviendo a empezar el ciclo.
En cada una de las iteraciones se realiza el análisis de riesgos, teniendo en
cuenta los requisitos y la reacción del cliente ante el último prototipo. Con cada
11
iteración, se construyen sucesivas versiones del software, cada vez más
completas.
Ventajas:
• Como el software evoluciona, a medida que progresa el proceso, el
desarrollador y el usuario comprenden y reaccionan mejor ante riesgos en
cada uno de los niveles evolutivos.
• Permite a quien lo desarrolla aplicar el enfoque de construcción de
prototipos en cualquier etapa de evolución del producto.
• Demanda una consideración directa de los riesgos técnicos en todas las
etapas del proyecto.
• Reduce los riesgos antes de que se conviertan en problemáticos.
El Paradigma Espiral se ajustó perfectamente, pues por ser una sola persona
quien desarrolló el proyecto, fue necesario hacerlo por módulos mismos que
fueron probados en espiral.
2.2. METODOLOGÍA OMT (OBJECT MODELING TECHNIQUE) 2
Una Metodología es una versión amplia y detallada de un ciclo de vida completo
de desarrollo de sistemas.
La metodología de modelado de objetos OMT (Object Modeling Technique)
descrita por [Rumbaugh] pone énfasis:
• En el análisis más no en la implementación para capturar limpiamente los
requerimientos, especificaciones imperativas para poder descender
prematuramente en el diseño, declaraciones que permiten optimizar los
estados, además provee un soporte declarativo para una directa
implementación de DBMS.
• En los datos más que en las funciones; lo que da estabilidad al proceso de
desarrollo.
2 http://www.monografias.com/trabajos6/meto/meto.shtml http://www.pisuerga.inf.ubu.es/icruzado/tfc/OMT_res.pdf
12
• Tiene una notación común a todas las fases a través de tres modelos que
capturan los aspectos estáticos, dinámicos y funcionales que combinados
proveen una descripción completa del software.
Esta Tecnología puede ser aplicada en varios aspectos de implementación
incluyendo archivos, base de datos relacionales, base de datos orientados a
objetos.
Fases de la Metodología OMT:
• Conceptualización
El desarrollo empieza con el análisis de la institución, o de cómo los
usuarios conciben el sistema y formulan sus requerimientos. La
conceptualización es a menudo por la re ingeniería de procesos de la
institución, es una observación crítica de los procesos de la empresa, y su
impacto económico.
En esta etapa se debe tener en cuenta las siguientes preguntas:
− ¿ Cuál es la aplicación ?
− ¿Que problemas tendrán que ser resueltos ?
− ¿Dónde será usado el sistema ?
− ¿Cuándo será requerido el sistema ?
− ¿ Para qué es necesario el sistema ?
• Análisis
Los requerimientos formados durante la conceptualización son revisados,
analizados para la construcción del modelo real. La meta del análisis es
especificar las necesidades que deben ser satisfechas.
El objetivo es desarrollar un modelo de lo que va a hacer el sistema. El
modelo se expresa en términos de objetos y de relaciones entre ellos, flujo
dinámico de control y las transformaciones funcionales.
13
• Diseño del sistema
En esta etapa se deben crear estrategias, formular una arquitectura para el
sistema y las políticas que deben guiarla además un detalle del diseño.
Teniendo en cuenta los siguientes aspectos:
− Divisar una arquitectura
− Elegir una implementación para un control externo
− Si se usa base de datos elegir el paradigma de administración de base de
datos
− Determinar oportunidades para el re-uso
− Elegir estrategia para interacción de datos
− Elegir una forma de identificar los objetos
En esta fase el sistema se divide en subsistemas, a su vez este subsistema
puede ser dividido en otros subsistemas de manera que puedan ser
manejados y cada componente pueda se comprensible.
• Detallar el diseño
Su objetivo es refinar el modelo del análisis y proporcionar una base
detallada para la implementación tomando en cuenta el ambiente en que
se implementará.
Se debe considerar los siguientes pasos:
− Uso de transformaciones para simplificar y optimizar el modelo de objetos
desde el análisis.
− Elaborar un modelo de objeto
− Elaborar un modelo funcional
− Evaluar la calidad del diseño del modelo
− Implementación
14
El diseño es trasladado a un lenguaje de programación actual y código de
base de datos. Este paso puede ser aplicado y considerado durante el
análisis y diseño para subir el performance del sistema.
• Mantenimiento
La documentación del desarrollo y seguimiento de los modelos a través del
código facilita el posterior mantenimiento. La metodología OMT soporta
múltiples estilos de desarrollo. Se puede usar OMT para conseguir un alto
performance en la fase de análisis y diseño e implementación con una
estricta secuencia de pasos, también adopta una estrategia de desarrollo
iterativa.
Primeramente se desarrolla el núcleo del sistema, se analiza, diseña,
implementa, y crea el código fuente.
La Metodología OMT emplea tres modelos para describir el sistema y son:
• Modelo de Objetos.- su objetivo es describir la estructura estática de los
objetos del sistema; para lo cual se abstraen los conceptos de los datos
que son más importantes para la aplicación que se describen gráficamente
por los diagramas de objetos que definen las clases y sus relaciones
• Modelo Dinámico.- Se captura el aspecto concerniente a la secuencia de
las operaciones en el tiempo, se muestra el control sin importar que hacen
exactamente las operaciones, se representa por un diagrama de estados.
El estado de un objeto es un conjunto de valores para sus atributos, en un
cierto momento, el cual cambia al recibir un estímulo llamado evento.
• Modelo Funcional.- especifica el significado de las operaciones o métodos
en el modelo de objetos y de las acciones en el modelo dinámico. Muestra
como se calculan los valores sin importar la secuencia, las decisiones ni la
estructura de los objetos. Se utilizan diagramas de flujo de datos para
mostrar las dependencias funcionales.
La idea principal de OMT es la conceptualización de una entidad que permita
manejar atributos y asociaciones y sus transformaciones, transacciones para
15
modelar esos atributos y entidades orientado a objetos, y la interacción con la
base de datos.
La Metodología OMT en conjunto con el Paradigma Espiral se conjugaron
adecuadamente pues su propuesta pone énfasis en la captura de los
requerimientos y especificaciones por parte del usuario mismos que permiten
entender y reaccionar tempranamente ante los riesgos.
2.3. LENGUAJE DE MODELADO UNIFICADO – UML 3
Para realizar el análisis utilizamos el Lenguaje de Modelado Unificado (UML-
Unified Modeling Language ), es un lenguaje gráfico para visualizar, especificar
y documentar cada una de las partes que comprenden el desarrollo de software;
así como para modelado de negocios y otros sistemas no-software.
El UML es la creación de Grady Booch, James Rumbaugh e Ivar Jacobson
quienes mediados de los años noventa comenzaron a intercambiar sus ideas para
así desarrollar un trabajo en conjunto.
El UML es un lenguaje para construir modelos; no guía al desarrollador en la
forma de realizar el análisis y diseño orientados a objetos ni le indica cuál proceso
de desarrollo adoptar.
Los principales factores que motivaron la definición de UML fueron: la necesidad
de modelar sistemas, las tendencias en la industria del software, unificar los
distintos lenguajes y métodos existentes e innovar los modelos para adaptarse a
la arquitectura distribuida. Es importante resaltar que un modelo UML describe lo
que supuestamente hará un sistema, pero no dice como implementar dicho
sistema.
A partir de esta herramienta se empezaron a diseñar las primeras formas de
diagramas en casos de uso.
UML está compuesto por los siguientes diagramas:
3 http://www.itlp.edu.mx/publica/tutoriales/analisis/24.htm http://usuarios.lycos.es/oopere/uml.htm
16
Área Vista Diagramas Conceptos Principales
Vista Estática Diagrama de
Clases Clase, asociación, generalización, dependencia, realización, interfaz.
Vista de Casos de Uso
Diagramas de Casos de Uso
Caso de Uso, Actor, asociación, extensión, generalización.
Vista de Implementación
Diagramas de Componentes
Componente, interfaz, dependencia, realización.
Estructural
Vista de Despliegue Diagramas de Despliegue
Nodo, componente, dependencia, localización.
Vista de Estados de máquina
Diagramas de Estados
Estado, evento, transición, acción.
Vista de actividad Diagramas de
Actividad Estado, actividad, transición,
determinación, división, unión.
Diagramas de Secuencia
Interacción, objeto, mensaje, activación.
Dinámica
Vista de interacción
Diagramas de Colaboración
Colaboración, interacción, rol de colaboración, mensaje.
Administración o Gestión de modelo
Vista de Gestión de modelo
Diagramas de Clases
Paquete, subsistema, modelo.
Extensión de UML Todas Todos Restricción, estereotipo, valores,
etiquetados
Figura 2. Diagramas de UML
17
2.3.1. DIAGRAMA DE CASOS DE USO 4
El diagrama de casos de uso representa la forma en como un Cliente (Actor)
opera con el sistema en desarrollo, además de la forma, tipo y orden en como los
elementos interactúan (operaciones o casos de uso).
Permiten definir los límites del sistema y las relaciones entre el sistema y el
entorno.
Elementos de un Diagrama de Casos de Uso: Actor:
Figura 3. Actor Actor es un rol que un usuario juega con respecto al sistema. Es importante
destacar el uso de la palabra rol, pues con esto se especifica que un Actor no
necesariamente representa a
una persona en particular, sino más bien la labor que realiza frente al sistema. El
nombre del actor describe el papel desempeñado.
Caso de Uso: Es una operación/tarea específica que se realiza tras una orden de algún agente
externo, sea desde una petición de un actor o bien desde la invocación desde otro
caso de uso. Describen bajo la forma de acciones y reacciones el comportamiento
de un sistema desde el punto de vista del usuario.
Los Casos de Uso están basados en el lenguaje natural, es decir, es accesible
por los usuarios
Relaciones: • Asociación
Es el tipo de relación más básica que indica la invocación desde un actor
4 http://www.monografias.com/trabajos28/proyecto-software/proyecto-software.shtml http://usuarios.lycos.es/oopere/uml.DiagramasdeCasosdeUso.htm
18
caso de uso a otra operación (caso de uso). Dicha relación se denota con una
flecha simple.
• Dependencia o Instanciación
Es una forma muy particular de relación entre clases, en la cual una clase
depende de otra, es decir, se instancia (se crea). Dicha relación se denota con
una flecha punteada.
• Generalización
Este tipo de relación es uno de los más utilizados, cumple una doble función
dependiendo de su estereotipo, que puede ser de Uso
(<<uses>>) o de Herencia (<<extends>>).
Este tipo de relación esta orientado exclusivamente para casos de uso (y no
para actores).
extends: se recomienda utilizar cuando un caso de uso es similar a otro (características). uses: se recomienda utilizar cuando se tiene un conjunto de características que
son similares en más de un caso de uso y no se desea mantener copiada la
descripción de la característica.
De lo anterior cabe mencionar que tiene el mismo paradigma en diseño y
modelamiento de clases, en donde esta la duda clásica de usar o heredar.
Ejemplo:
Este diagrama describe la funcionalidad (simplificada) de un sistema de
restaurante, el cliente puede comer, tomar vino y pagar; solo el cocinero puede
preparar la comida.
Figura 4. Ejemplo de Casos de Uso
19
2.3.2. DICCIONARIO DE CASOS DE USO 5
Es la descripción del Caso de Uso la misma que comprende de: qué actor lo
produce, la interacción actor-caso de uso, objetivo del caso de uso es decir qué
lleva a cabo o intenta, cuando se produce y que valor entrega.
2.3.3. DIAGRAMA DE CLASES 6
Forma parte de la vista estática del sistema, es el diagrama principal para el
análisis y diseño. En el diagrama de clases se definen las características de cada
una de las clases, interfaces, colaboraciones y relaciones de dependencia y
generalización. En el diagrama de clases debemos definir a estas y a sus
relaciones.
La definición de clase incluye definiciones para atributos y operaciones
El modelo de casos de uso aporta información para establecer las clases, objetos,
atributos y operaciones.
El mundo real puede ser visto desde abstracciones diferentes (subjetividad).
Los elementos de un Diagrama de Clases son:
Clase: Una clase esta representada por un rectángulo que dispone de tres
compartimientos, el primero para indicar el nombre, el segundo para los atributos
y el tercero para los métodos.
• Cada clase debe tener un nombre único, que las diferencie de las otras.
• Un atributo representa alguna propiedad de la clase que se encuentra en todas
las instancias de la clase. Los atributos pueden representarse solo mostrando
su nombre, mostrando su nombre y su tipo, e incluso su valor por defecto.
• Un método u operación es la implementación de un servicio de la clase, que
muestra un comportamiento común a todos los objetos. En resumen es una
función que le indica a las instancias de la clase que hagan algo.
5 http://usuarios.lycos.es/oopere/uml.DiagramasdeCasosdeUso.htm 6 http://usuarios.lycos.es/oopere/uml.DiagramasdeClases.htm http://www.itlp.edu.mx/publica/tutoriales/analisis/24.htm
20
Figura 5. Ejemplo de una clase
En el ejemplo: la clase usuario contiene tres atributos. Nombre que es public,
dirección que es protected y situación que es private. Situación empieza con el
valor 3. También dispone de tres métodos Entrar, Salir y Trabajar.
Relaciones entre clases: Existen tres relaciones diferentes entre clases, Dependencias, Generalización y
Asociación. En las relaciones se habla de una clase destino y de una clase origen.
La origen es desde la que se realiza la acción de relacionar. Es decir desde la que
parte la flecha, la destino es la que recibe la flecha. Las relaciones se pueden
modificar con estereotipos o con restricciones.
• Dependencias .- es una relación de uso, es decir una clase usa a otra, que la
necesita para su cometido. Se representa con una flecha discontinua va desde
la clase utilizadora a la clase utilizada. Con la dependencia mostramos que un
cambio en la clase utilizada puede afectar al funcionamiento de la clase
utilizadora, pero no al contrario.
• Generalización .- es la herencia, donde tenemos una o varias clases padre o
superclase o madre, y una clase hija o subclase. UML soporta tanto herencia
simple como herencia múltiple.
• Asociación .- especifica que los objetos de una clase están relacionados con
los elementos de otra clase. Se representa mediante una línea continua, que
une las dos clases. Podemos indicar el nombre, multiplicidad en los extremos,
su rol, y agregación.
UsuarioNombre : charDireccion : charsituacion : int = 3
Entrar()Salir()Trabajar()
21
Ejemplo: En este diagrama se han creado cuatro clases. La clase principal es Usuario, que
tiene dos clases hijas UsuarioADM y UsuarioINF. El usuario mantiene una
relación de asociación con la clase Clave, se indica que es propietario de una
clave, o de un número indeterminado de ellas. Se le crea también una relación de
dependencia con la clase Perfil, es decir las instancias de usuario contendrán
como miembro una instancia de Perfil.
Figura 6. Ejemplo de relaciones entre clases
2.3.4. DIAGRAMA DE OBJETOS 7
Forma parte de la vista estática del sistema. En este diagrama se modelan las
instancias de las clases del diagrama de clases. Muestra a los objetos y sus
relaciones, pero en un momento concreto del sistema.
Estos diagramas contienen objetos y enlaces. En los diagramas de objetos
también se pueden incorporar clases, para mostrar la clase de la que es un objeto
representado.
En este diagrama se muestra un estado del diagrama de eventos. Para realizar el
diagrama de objetos primero se debe decidir que situación queremos representar
del sistema.
En un diseño nos podemos encontrar con multitud de diagramas de objetos, cada
uno de ellos representando diferentes estados del sistema.
UsuarioINF
Clave
UsuarioADM
Usuario
+Propietario
Fichero
UsuarioNombre : charDireccion : charsituacion : int = 3
Entrar()Salir()Trabajar()
7 http://usuarios.lycos.es/oopere/UML -- Diagramas de Objetos.htm http://www.itlp.edu.mx/publica/tutoriales/analisis/24.htm
22
2.3.5. DICCIONARIO DE CLASES 8
Es un listado organizado de todas las clases pertenecientes al sistema, con
definiciones precisas para que tanto el usuario como el analista tengan un
entendimiento común.
Importancia del diccionario de clases:
• Para documentar las características del sistema.
• Para facilitar el análisis y determinar donde efectuar cambios.
• Para localizar errores y omisiones en el sistema.
2.3.6. DIAGRAMAS DE INTERACCIÓN 9 Los diagramas de interacción cubren la vista dinámica del sistema, muestran
cómo se comunican los objetos en una interacción, La vista de interacción
describe secuencias de intercambios de mensajes entre los roles que
implementan el comportamiento de un sistema.
Un rol clasificador, o simplemente "un rol", es la descripción de un objeto, que
desempeña un determinado papel dentro de una interacción, distinto de los otros
objetos de la misma clase. Esta visión proporciona una vista integral del
comportamiento del sistema, es decir, muestra el flujo de control a través de
muchos objetos.
Existen dos tipos de diagramas de interacción: el Diagrama de Colaboración y el
Diagrama de Secuencia; ambos diagramas están centrados en distintos aspectos
pero complementarios: centrados en los objetos individuales y centrados en
objetos cooperantes.
2.3.6.1. DIAGRAMA DE SECUENCIA 10
El diagrama de secuencia forma parte del modelado dinámico del sistema.
8 http://usuarios.lycos.es/oopere/uml.DiagramasdeClases.htm 9 http://usuarios.lycos.es/oopere/UML -- Diagramas de Interacción.htm http://www.monografias.com/trabajos28/proyecto-software/proyecto-software.shtml 10 http://usuarios.lycos.es/oopere/UML -- Diagramas de Interacción.htm http://www.monografias.com/trabajos28/proyecto-software/proyecto-software.shtml
23
Se modelan las llamadas entre clases desde un punto concreto del sistema.
Es útil para observar la vida de los objetos en el sistema, identificar llamadas a
realizar o posibles errores del modelado estático, que imposibiliten el flujo de
información o de llamadas entre los componentes del sistema.
En el diagrama de secuencia se muestra el orden de las llamadas en el sistema.
Se utiliza un diagrama para cada llamada a representar. Es imposible representar
en un solo diagrama de secuencia todas las secuencias posibles del sistema, por
ello se escoge un punto de partida.
El diagrama se forma con los objetos que forman parte de la secuencia, estos se
sitúan en la parte superior de la pantalla, normalmente en la izquierda se sitúa al
que inicia la acción. De estos objetos sale una línea que indica su vida en el
sistema. Esta línea simple se convierte en una línea gruesa cuando representa
que el objeto tiene el foco del sistema, es decir cuando el esta activo. Cada
mensaje se representa mediante una flecha horizontal que va desde la línea de
vida del objeto emisor hasta la línea de vida del objeto receptor del mismo.
Ejemplo:
Este diagrama describe la secuencia (simplificada) de mensajes de un sistema de
restaurante. El diagrama representa a un cliente pidiendo comida y pagando. Las
líneas punteadas extendiéndose hacia abajo indican la línea de tiempo de cada
objeto. Las flechas representan mensajes (estímulos) de un actor u objeto a
otros objetos; en el ejemplo el cliente envía el mensaje de pago al cajero.
Figura 7. Ejemplo de Diagrama de Secuencia
24
2.3.6.2. DIAGRAMA DE COLABORACIÓN 11
El Diagrama de Colaboración ofrece una mejor visión espacial mostrando los
enlaces de comunicación entre objetos, muestra las relaciones entre objetos y son
mejores para comprender todos los efectos que tiene un objeto y para el diseño de
procedimientos.
• Colaboración:
Es una descripción de una colección de objetos que interactúan para implementar
un cierto comportamiento dentro de un contexto. Describe una sociedad de
objetos cooperantes unidos para realizar un cierto propósito. Una colaboración
contiene ranuras que son rellenadas por los objetos y enlaces en tiempo de
ejecución.
Una ranura de colaboración se llama Rol porque describe el propósito de un
objeto o un enlace dentro de la colaboración.
Una Colaboración tiene un aspecto estructural y un aspecto de comportamiento.
El aspecto estructural es similar a una vista estática: contiene un conjunto de roles
y relaciones que definen el contexto para su comportamiento.
El comportamiento es el conjunto de mensajes intercambiados por los objetos
ligados a los roles. Tal conjunto de mensajes en una colaboración se llama
Interacción. Una colaboración puede incluir una o más interacciones.
• Interacción:
Es el conjunto de mensajes intercambiados por los roles de clasificador a través
de los roles de asociación. Un mensaje es una comunicación unidireccional entre
dos objetos, un flujo de objeto con la información de un remitente a un receptor.
Un mensaje puede tener parámetros que transporten valores entre objetos.
11 http://www.monografias.com/trabajos28/proyecto-software/proyecto-software.shtml http://usuarios.lycos.es/oopere/UML -- Diagramas de Interacción.htm
25
Un mensaje puede ser una señal (comunicación explícita entre objetos, con
nombre y asíncrona) o una llamada (la invocación síncrona de una operación con
un mecanismo para el control, que retorna posteriormente al remitente). Un patrón
de intercambios de mensajes que se realizan para lograr un propósito específico
es lo que se denomina una interacción.
• Patrón
Un patrón es una colaboración parametrizada, junto con las pautas sobre cuándo
utilizarlo. Un parámetro se puede sustituir por diversos valores, para producir
distintas colaboraciones. Los parámetros señalan generalmente las ranuras para
las clases. El uso de un patrón se representa como una elipse de línea discontinua
conectada con cada una de las clases por una línea discontinua, que se etiqueta
con el nombre del rol.
2.3.7. DIAGRAMA DE ESTADOS 12
Muestra el conjunto de estados por los cuales pasa un objeto durante su vida en
una aplicación, junto con los cambios que permiten pasar de un estado a otro.
Son útiles sólo para los objetos con un comportamiento significativo. Cada objeto
está en un estado en cierto instante. El estado está caracterizado parcialmente por
los valores de los atributos del objeto. El estado en el que se encuentra un objeto
determina su comportamiento. Cada objeto sigue el comportamiento descrito en el
Diagrama de Estados asociado a su clase. Los Diagramas de Estados y
escenarios son complementarios, los Diagramas de Estados son autómatas
jerárquicos que permiten expresar concurrencia, sincronización y jerarquías de
objetos, son grafos dirigidos y deterministas. La transición entre estados es
instantánea y se debe a la ocurrencia de un evento.
Estado
Identifica un período de tiempo del objeto (no instantáneo) en el cual el objeto está
esperando alguna operación, tiene cierto estado característico o puede recibir
cierto tipo de estímulos.
12 http://www.monografias.com/trabajos28/proyecto-software/proyecto-software.shtml http://usuarios.lycos.es/oopere/UML -- Diagramas de Estado.htm
26
Se representa mediante un rectángulo con los bordes redondeados, que puede
tener tres compartimientos: uno para el nombre, otro para el valor característico de
los atributos del objeto en ese estado y otro para las acciones que se realizan al
entrar, salir o estar en un estado (entry, exit o do, respectivamente).
Eventos
Es una ocurrencia que puede causar la transición de un estado a otro de un
objeto. Esta ocurrencia puede ser:
− Condición que toma el valor de verdadero o falso
− Recepción de una señal de otro objeto en el modelo
− Recepción de un mensaje
− Paso de cierto período de tiempo, después de entrar al estado o de cierta hora
y fecha particular
El nombre de un evento tiene alcance dentro del paquete en el cual está definido,
no es local a la clase que lo nombre.
Envío de mensajes
Además de mostrar y transición de estados por medio de eventos, puede
representarse el momento en el cual se envían mensajes a otros objetos. Esto se
realiza mediante una línea punteada dirigida al diagrama de estados del objeto
receptor del mensaje.
Transición simple
Una transición simple es una relación entre dos estados que indica que un objeto
en el primer estado puede entrar al segundo estado y ejecutar ciertas
operaciones, cuando un evento ocurre y si ciertas condiciones son satisfechas. Se
representa como una línea sólida entre dos estados, que puede venir
acompañada de un texto con el siguiente formato:
event-signature "[" guard-condition] "/" action-exp ression "^"send-clause
27
event-signature : es la descripción del evento que da lugar la transición, guard-
condition son las condiciones adicionales al evento necesarias para que la
transición ocurra, action-expression es un mensaje al objeto o a otro objeto que
se ejecuta como resultado de la transición y el cambio de estado y send-clause
son acciones adicionales que se ejecutan con el cambio de estado, por ejemplo, el
envío de eventos a otros paquetes o clases.
Transición interna
Es una transición que permanece en el mismo estado, en vez de involucrar dos
estados distintos. Representa un evento que no causa cambio de estado. Se
denota como una cadena adicional en el compartimiento de acciones del estado.
Acciones
Es posible especificar la solicitud de un servicio a otro objeto como consecuencia
de la transición. Se puede especificar el ejecutar una acción como consecuencia
de entrar, salir, estar en un estado, o por la ocurrencia de un evento.
Generalización de Estados
− Distinguimos así entre superestado y subestados.
− Un estado puede contener varios subestados disjuntos.
− Los subestados heredan las variables de estado y las transiciones externas.
− La agregación de estados es la composición de un estado a partir de varios
estados independientes.
La composición es concurrente por lo que el objeto estará en alguno de los
estados de cada uno de los subestados concurrentes. La destrucción de un objeto
es efectiva cuando el flujo de control del autómata alcanza un estado final no
anidado. La llegada a un estado final anidado implica la subida al superestado
asociado, no el fin del objeto.
Subestados
28
Un estado puede descomponerse en subestados, con transiciones entre ellos y
conexiones al nivel superior. Las conexiones se ven al nivel inferior como estados
de inicio o fin, los cuales se suponen conectados a las entradas y salidas del nivel
inmediatamente superior.
2.3.8. DIAGRAMA DE ACTIVIDADES 13
El Diagrama de Actividad es una especialización del Diagrama de Estado,
organizado respecto de las acciones y usado para especificar:
• Un método • Un caso de uso • Un proceso de negocio (Workflow)
El Diagrama de Actividades es como un organigrama tradicional, excepto que
permite el control de concurrencia además del control secuencial.
Un estado de actividad representa una actividad: un paso en el flujo de trabajo o la
ejecución de una operación. Un grafo de actividades describe grupos secuenciales
y concurrentes de actividades. Los grafos de actividades se muestran en
diagramas de actividades. Las actividades se enlazan por transiciones
automáticas. Cuando una actividad termina se desencadena el paso a la siguiente
actividad.
Un diagrama de actividades es provechoso para entender el comportamiento de
alto nivel de la ejecución de un sistema, sin profundizar en los detalles internos de
los mensajes.
Un diagrama de actividades puede contener bifurcaciones, así como divisiones de
control en hilos concurrentes. Los hilos concurrentes representan actividades que
se pueden realizar concurrentemente por los diversos objetos o personas.
La concurrencia se representa a partir de la agregación, en la cual cada objeto
tiene su propio hilo. Las actividades concurrentes se pueden realizar
simultáneamente o en cualquier orden.
13 http://usuarios.lycos.es/oopere/UML -- Diagramas de Actividad.htm
29
• Notación
Un estado de actividad se representa como una caja con los extremos
redondeados que contiene una descripción de actividad. Las transacciones
simples de terminación se muestran como flechas.
Las ramas se muestran como condiciones de guarda en transiciones o como
diamantes con múltiples flechas de salida etiquetadas. Una división o una unión
de control se representa con múltiples flechas que entran o salen de la barra
gruesa de sincronización.
A menudo es útil organizar las actividades en un modelo según su
responsabilidad. Esta clase de asignación puede mostrarse organizando las
actividades en regiones distintas separadas por líneas en el diagrama; debido a su
aspecto, esto es conocido como Calles.
• Calles
Un diagrama de actividades puede mostrar el flujo de objetos como valores. Para
un valor de salida, se dibuja una flecha con línea discontinua desde la actividad al
objeto. Para un valor de entrada, se dibuja una flecha con línea discontinua desde
el objeto a una actividad.
2.4. PLATAFORMA CLIENTE SERVIDOR 14
En el Sistema de Administración de Pacientes del Área de Fisioterapia del
Hospital “Enrique Garcés” se aplica una Arquitectura Cliente Servidor ya que ésta
presta características adaptables al entorno funcional.
Es un modelo para el desarrollo de Sistemas de Información en el que las
transacciones se dividen en procesos independientes que cooperan entre sí para
intercambiar información, servicios o recursos. La arquitectura Cliente/Servidor no
es un concepto físico relacionado con el hardware utilizado en un sistema, sino es
una concepción lógica relacionada con las aplicaciones que interactúan en un
modelo informático.
14 http://dominiopublico.com/intranets/cliente_servidot.php “Pressman Roger, 1996, Pg. 525 ”
30
La arquitectura Cliente/Servidor se define como un conjunto de elementos de
hardware y software, entre los cuales se destacan tres tecnologías: el cliente, el
servidor y la red.
• Cliente.- conjunto de Software y Hardware que invoca los servicios de uno o
varios servidores.
• Servidor. - conjunto de Hardware y Software que responde a los
requerimientos de un cliente.
• Red de comunicación. - conjunto de elementos basados en hardware y
software que permite establecer un enlace entre los clientes y los servidores,
se clasifican por su tamaño LAN, MAN y WAN. En nuestro caso la red en la
que se va a implementar el Sistema es una Red LAN.
Las ventajas que presenta este modelo son: aumento de productividad, mejora en
el rendimiento de la red, pues reduce el tráfico en la misma.
2.5. HERRAMIENTAS SOFTWARE
Herramientas de Software utilizadas en el desarrollo del Sistema:
− Microsoft Visual Basic 6.0
− SQL Server
− Rational Rose 2000
2.5.1. MICROSOFT VISUAL BASIC 15
Visual-Basic es una herramienta de diseño de aplicaciones para Windows, en la
que estas se desarrollan mayormente partir del diseño de una interfaz gráfica. En
una aplicación Visual - Basic, el programa está formado por una parte de código
puro, y otras partes asociadas a los objetos que forman la interfaz gráfica.
Es por tanto un término medio entre la programación tradicional, formada por una
sucesión lineal de código estructurado, y la programación orientada a objetos;
combina ambas tendencias.
15 http://www.monografias.com/trabajos10/visual/visual.shtml
http://www.programatium.com/01Manuales2/documentacion/docVB/1.htm
31
Visual Studio 6 de Microsoft combina la sencillez del BASIC (Beginner´s All -
purpose Symbolic Instruction Code) con un poderoso lenguaje de programación
Visual juntos permiten desarrollar robustos programas de 32 bits para Windows.
Características de Visual Basic:
• Diseñador de entorno de datos: Es posible generar, de manera automática,
conectividad entre controles y datos mediante la acción de arrastrar y
colocar sobre formularios o informes.
• Los Objetos Actives son una nueva tecnología de acceso a datos mediante
la acción de arrastrar y colocar sobre formularios o informes.
• Asistente para formularios: Sirve para generar de manera automática
formularios que administran registros de tablas o consultas pertenecientes
a una base de datos, hoja de cálculo u objeto (ADO-ACTIVE DATA
OBJECT)
• Asistente para barras de herramientas es factible incluir barras de
herramientas es factible incluir barra de herramientas personalizada, donde
el usuario selecciona los botones que desea visualizar durante la
ejecución.
• En las aplicaciones HTML: Se combinan instrucciones de Visual Basic con
código HTML para controlar los eventos que se realizan con frecuencia en
una página web.
• La Ventana de Vista de datos proporciona acceso a la estructura de una
base de datos. Desde esta también acceso al Diseñador de Consultas y
diseñador de Base de datos para administrar y registros.
2.5.2. SQL SERVER 2000 16
Microsoft SQL Server es un sistema de gestión de bases de datos relacionales
(SGBD) basada en el lenguaje SQL, capaz de poner a disposición de muchos
usuarios grandes cantidades de datos de manera simultánea.
16 http://es.wikipedia.org/wiki/Microsoft_SQL_Server
32
Entre sus características figuran:
• Soporte de transacciones.
• Gran estabilidad y seguridad
• Escalabilidad.
• Soporta procedimientos almacenados.
• Incluye también un potente entorno gráfico de administración, que permite
el uso de comandos DDL y DML gráficamente.
• Permite trabajar en modo cliente-servidor donde la información y datos se
alojan en el servidor y las terminales o clientes de la red sólo accesan a la
información.
• Además permite administrar información de otros servidores de datos
Microsoft SQL Server constituye la alternativa de Microsoft a otros potentes
sistemas gestores de bases de datos como son Oracle o Sybase.
Microsoft SQL Server no es multiplataforma, ya que sólo está disponible en
Sistemas Operativos de Microsoft.
2.5.2. RATIONAL ROSE 17
Rational Rose es la herramienta líder en el mundo para el modelado de sistemas
complejos y de tiempo real.
Para los analistas de negocios , Rose ofrece la capacidad de modelar y
visualizar sus procesos de negocios y destacar oportunidades para aumentar la
eficiencia.
Para los analistas de datos , el modelado de su diseño de base de datos en
Rose, mejora la comunicación con el usuario y cuando se modelan los casos de
uso en Rose, se asegura que la solución sea creada con el usuario en mente.
Rational Rose unifica a los analistas de negocios, sistemas y datos al permitirles
crear y administrar modelos en una herramienta con un solo lenguaje de
modelado.
17http://www.infosgroup.com/paginas/v4/publico/soluciones/soluciones_producto/rational/productosrational .asp?referal=/paginas/v4/publico/soluciones/soluciones_producto/rational.asp#rose
33
CAPITULO III: CONCLUSIONES Y RECOMENDACIONES
3.1. CONCLUSIONES
• La realización del presente significó experiencia práctica de los
conocimientos adquiridos durante la carrera .
• Al término del presente trabajo es importante destacar que para un buen
desarrollo del trabajo lo primordial fue realizar una buena investigación
preeliminar del ámbito en el cual se va a desarrollar el sistema; ya que de
esa manera se podrá proporcionar soluciones efectivas al cliente y así
satisfacer al máximo sus requerimientos.
• Es de vital importancia desarrollar una interfaz amigable para facilitar el
manejo al usuario.
• Con la utilización del Paradigma Orientado a Objetos el Sistema tiende a
evolucionar con el transcurso del tiempo ya que se pueden crear prototipos
que extiendan el desarrollo del Sistema.
34
3.2. RECOMENDACIONES
• Se recomienda que al cabo de un año se vuelva a realizar un
análisis para verificar si es necesario o no ampliar la
funcionalidad el sistema.
• Se recomienda desarrollar módulos que integren a todo el
Hospital.
35
3.3. BIBLIOGRAFÍA TEXTOS: 1. Pressman R., “Ingeniería de Software Un enfoque práctico”,Mc. Graw Hill, 1996
INTERNET: 2. http://www.Modelosdeciclodevida/Modelodeciclodevida1.html
3. http://www.itlp.edu.mx/publica/tutoriales/analisis/24.htm
4. http://www.pisuerga.inf.ubu.es/icruzado/tfc/OMT_res.pdf
5. http://www.monografias.com/trabajos6/meto/meto.shtml
6. http://usuarios.lycos.es/oopere/uml.htm
7. http://www.monografias.com/trabajos28/proyecto-software/proyecto-software.shtml
8. http://usuarios.lycos.es/oopere/uml.DiagramasdeCasosdeUso.htm
9. http://usuarios.lycos.es/oopere/uml.DiagramasdeClases.htm
10. http://usuarios.lycos.es/oopere/UML -- Diagramas de Objetos.htm
11. http://usuarios.lycos.es/oopere/UML -- Diagramas de Interacción.htm
12. http://usuarios.lycos.es/oopere/UML -- Diagramas de Estado.htm
13. http://usuarios.lycos.es/oopere/UML -- Diagramas de Actividad.htm
14. http://dominiopublico.com/intranets/cliente_servidot.php
15. http://www.monografias.com/trabajos10/visual/visual.shtml
16. http://www.programatium.com/01Manuales2/documentacion/docVB/1.htm
17. http://es.wikipedia.org/wiki/Microsoft_SQL_Server
18. http://www.infosgroup.com/paginas/v4/publico/soluciones/soluciones_producto/ration
al/productosrational
.asp?referal=/paginas/v4/publico/soluciones/soluciones_producto/rational.asp#rose
19. http://www.doc.mor.itesm.mx:8181/labvir/ archivos/estandares/Modelos_proceso.pdf
36
MANUAL TÉCNICO
37
CONTENIDO
ESPECIFICACIÓN DE REQUERIMIENTOS……………………………………33
IDENTIFICACIÓN DE ACTORES………………………………………………...34
DIAGRAMAS DE CASOS DE USO………………………………………………37
DICCIONARIO DE CASOS DE USO…………………………………………….42
DIAGRAMA DE CLASES………………………………………………………….48
DIAGRAMA DE OBJETOS………………………………………………………..50
DICCIONARIO DE CLASES………………………………………………………52
DIAGRAMAS DE SECUENCIA…………………………………………………...63
DIAGRAMAS DE COLABORACIÓN…………………………………………......67
DIAGRAMAS DE ESTADO…………………………………………………….....72
DIAGRAMAS DE ACTIVIDADES…………………………………………………76
CONSTRUCCIÓN………………………………………………………………….80
ÍNDICE DE FIGURAS……………………………………………………………...87
PRUEBAS FUNCIONALES……………………………………………………….89
38
ESPECIFICACIÓN
DE
REQUERIMIENTOS
39
IDENTIFICACIÓN DE ACTORES
40
IDENTIFICACIÓN DE ACTORES
SISTEMA DE ADMINISTRACIÓN DE PACIENTES DEL ÁREA DE FISIOTERAPIA
DEL HOSPITAL ENRIQUE GARCÉS “FISIOSYS”
Recepcionista
Fisioterapista
Actor Principal Realiza las siguientes actividades:
−−−− Registrar y actualizar información de pacientes.
−−−− Registrar y actualizar información del personal médico
−−−− Consultar disponibilidad de turnos.
−−−− Reservar turnos
−−−− Registrar en la historia clínica los signos vitales de los
pacientes
Actor Principal Es el profesional que presta sus servicios y conocimientos en el
Área de Fisioterapia.
Realiza las siguientes actividades:
−−−− Consultar la historia clínica de un paciente.
−−−− Registrar motivo de consulta del paciente.
−−−− Registrar antecedentes médicos personales y familiares.
−−−− Registrar diagnóstico del paciente.
−−−− Registrar en la historia clínica terapia y evolución del
paciente en cada consulta.
−−−− Registrar en la historia clínica las recetas emitidas.
−−−− Planificar nueva cita médica.
41
Paciente
Administrador
Actor Iniciador Es la persona más importante ya que es quien provee la mayor
parte de la información necesaria.
Realiza las siguientes actividades:
−−−− Planificar próxima cita médica.
−−−− Reservar turnos para nueva cita médica.
Actor Principal Es el encargado de llevar las estadísticas de atención de los
pacientes, analizar la cantidad de trabajo por Fisioterapista; para
lo cual emite reportes con la información útil en su actividad.
42
DIAGRAMAS DE CASOS DE USO
43
SISTEMA DE ADMINISTRACIÓN DE PACIENTES DEL ÁREA DE
FISIOTERAPIA DEL HOSPITAL ENRIQUE GARCÉS “FISIOSYS”
ASIGNACIÓN DE TURNOS:
Consultar disponibilidad de turnos
Reservar Turno
Ingresar número de HC
Seleccionar Fisioterapista
Imprimir turno
Recepción
44
SISTEMA DE ADMINISTRACIÓN DE PACIENTES DEL ÁREA DE
FISIOTERAPIA DEL HOSPITAL ENRIQUE GARCÉS “FISIOSYS”
ATENCIÓN AL PACIENTE:
Registrar terapia y evolución del paciente
Registrar recetas emitidas
Planificar nueva cita médica
Registrar diagnóstico del paciente
Registrar antecedentes personales y familiares
Paciente
Ingresar Historia Clínica
Consulta Historia Clínica
Registra examen físico
Registrar motivo consulta
Fisioterapista
45
SISTEMA DE ADMINISTRACIÓN DE PACIENTES DEL ÁREA DE
FISIOTERAPIA DEL HOSPITAL ENRIQUE GARCÉS “FISIOSYS”
GENERACIÓN DE REPORTES:
Obtener listado de pacientes por estado
Obtener listado de pacientes por fisioterapista
Emitir listado de pacientes por edad
Imprimir historial de paciente
Obtener historial de Fisioterapista
Administración
Emitir listado de Fisioterapistas
46
DICCIONARIO DE
CASOS DE USO
47
DICCIONARIO DE CASOS DE USO
SISTEMA DE ADMINISTRACIÓN DE PACIENTES DEL ÁREA DE FISIOTERAPIA
DEL HOSPITAL ENRIQUE GARCÉS “FISIOSYS”
RECEPCIONISTA:
Ingresar número de HC.- ingresar el número de historia clínica del paciente para asignarle un turno.
Seleccionar Fisioterapista.- seleccionar de una lista el Fisioterapista que atiende
al paciente previo a la asignación de turnos.
Consultar disponibilidad de turnos.- obtención de la fecha y hora disponibles
para atender al paciente.
Reservar turno.- especifica la acción que realiza la Recepcionista de reservar el
turno y la acción de informar al paciente la fecha y hora para la respectiva
consulta médica.
Imprimir turno.- imprime el turno asignado al paciente en el que constan sus
nombres, nombre del Fisioterapista, fecha y hora de la consulta médica.
FISIOTERAPISTA:
Ingresar Historia Clínica.- ingresar el número de historia clínica del paciente para
consultar y actualizar la información requerida.
Consultar la Historia Clínica de un paciente.- especifica la acción de obtener la
información contenida en la historia clínica del paciente, la que es utilizada para
llevar el seguimiento del mismo.
Registrar motivo de consulta.- permite al Fisioterapista conocer el motivo
(patología) por el cual acude el paciente a solicitar atención.
48
Registrar antecedentes médicos personales y familia res.- información que
facilita al Fisioterapista determinar el posible origen y tratamiento de la
enfermedad.
Registrar diagnóstico del paciente.- especifica la acción de ingresar información
del estado actual del paciente.
Registrar examen físico.- ingresar la valoración de cada uno de los aspectos
referentes al examen físico que se realiza al paciente.
Registrar recetas emitidas.- ingreso de la descripción y forma de administración
de cada producto farmacéutico enviado al paciente.
Registrar la terapia y evolución del paciente.- se refiere a ingresar para cada
paciente el tipo de terapia a aplicarse y la evolución del mismo al cabo de cada
sesión.
Planificar nueva cita médica.- indica la acción de obtener la disponibilidad de
turnos para nueva cita médica y que es utilizada por el Fisioterapista para
determinar la factibilidad de reservar el turno.
ADMINISTRACIÓN:
Emitir listado de pacientes por edad.- imprime una lista de pacientes agrupados
por rango de edad.
Obtener listado de pacientes por estado.- imprime el listado de pacientes
agrupados por estado (REGISTRADO, EN REHABILITACIÓN, REHABILITADO).
Obtener listado de pacientes por fisioterapista.- imprime un reporte que indica
la lista de pacientes que están bajo responsabilidad de cada Fisioterapista.
Imprimir historial de paciente.- imprime un reporte que contiene las fechas de
consulta del paciente con la valoración de los datos de salud y evolución del
mismo.
49
Obtener historial de Fisioterapista.- emite un reporte que contiene información
relativa al historial del Fisioterapista a lo largo del tiempo de servicio dentro de la
Institución
Emitir listado de Fisioterapistas.- imprime un reporte que contiene fecha de
ingreso, estado del Fisioterapista (Activo, Pasivo, Sancionado, Despedido,
Jubilado) y cargo que desempeña.
50
ANÁLISIS Y DISEÑO
51
MODELO ESTÁTICO
52
DIAGRAMA DE CLASES
53
DIAGRAMA DE CLASES
SISTEMA DE ADMINISTRACIÓN DE PACIENTES DEL ÁREA DE FISIOTERAPIA
DEL HOSPITAL ENRIQUE GARCÉS “FISIOSYS”
Estado_civilCod_e_civil : intDescripcion : char(11)
ingresar()desplegar()
GéneroCod_género : intDescripcion_genero : char(9)
ingresar()desplegar()
Teléfonocod_telef : intcedula_per : char(10)Num_telefono : char(9)Referencia_telef : char(20)
ingresar()actualizar()borrar()
PersonaId_persona : char(10)Cod_estado_civil : intCod_género : intNombres : char(30)Apellidos : char(30)Fecha_nacimiento : dateOcupación : char(20)Dirección : char(20)Lugar_nacimiento : char(20)
ingresar()consultar()actualizar()desplegar()borrar()
1..*1 1..*1
1..*1 1..*1
0..*1 0..*1
Datos_ClínicosCod_h_clínica : intcod_datosclinicos : intTemperatura : intPeso : floatTalla : floatPulso : intPuntos_dolor : varchar(40)Sensibilidad : char(17)Grado_de_dolor : char(10)Resp_neurologicas : char(10)Funcional_Testmusc : varchar(60)Medicacion : varchar(50)nom_terapia1 : varchar(25)nom_terapia2 : varchar(25)nom_terapia3 : varchar(25)Evolucion_obs : varchar(100)
FisioterapistaCod_fisiot : intcedula : char(10)Cargo : char(15)fecha_ingreso : dateCod_estado : intObservaciones : varchar(60)Fecha_rige : smalldatetimeFecha_fin : smalldatetime
EstadoCod_estado : intDescrip_estado : char(17)
ingresar()desplegar()
1..*1
1..*1
TurnosCod_turno : intCod_fisiot : intCod_estado : intFecha_hora : smalldatetimeHora : char(5)Cod_paciente : int
consultar()desplegar()ingresar()borrar()
1
1..*
1
1..*
Historia_ClínicaCod_h_clínica : intCod_paciente : intMotivo_consulta : varchar(80)Antec_personales : varchar(50)Antec_familiares : varchar(50)Diagnostico : varchar(40)
Generar()Consultar()Actualizar()Desplegar()Borrar()
1
1
1
1
EdadCod_rango_edad : intRango_edad : char(15)
ingresar()desplegar()
Instruccioncod_instruccion : intNivel_de_instruccion : char(10
ingresar()desplegar()
PacienteCod_paciente : intCod_estado : intFamiliar : char(30)Instrucción : char(15)cod_instruccion : intcod_fisiot_intcod_rango_edad : int
1..*1 1..*1
1..*1 1..*1
0..*
1
0..*
1
1
0..1
1
0..1
1..*
1
1..*
1
1
1..*
1
1..*
T_USUARIOCod_usuario : intNombre_usuario : char(15)Contraseña : char(10)Tipo_acceso : char(15)
ingresar()borrar()
HISTORIAL_FISIOTcod_obs : intnum_cedula : char(10)Nombres : varchar(30)Apellidos : varchar(30)Observaciones : varchar(80)Fecha_rige : smalldatetimeFecha_fin : smalldatetimeEstado_fisioterapista : char(10)
ingresar()consultar()desplegar()
PROVINCIACod_provincia : intDescripcion_prov : char(20)
ingresar()desplegar()
54
DIAGRAMA DE OBJETOS
55
DIAGRAMA DE OBJETOS
SISTEMA DE ADMINISTRACIÓN DE PACIENTES DEL ÁREA DE FISIOTERAPIA
DEL HOSPITAL ENRIQUE GARCÉS “FISIOSYS”
PersonaId_persona : 1712457225Cod_estado_civil : 1Cod_género : 1Nombres : DAVIDApellidos : TAMAYOFecha_nacimiento : 15/02/1970Ocupación : ABOGADODirección : CHILLOGALLOLugar_nacimiento : QUITO
ingresar()consultar()actualizar()desplegar()borrar()
Estado_civilCod_e_civil = 1Descripcion : Soltero
ingresar()desplegar()
GéneroCod_género : 1Descripcion_genero : Masculino
ingresar()desplegar()
Teléfonocod_telef : 1cedula_per : 1712457225Num_telefono : 2457895Referencia_telef : OFICINA
ingresar()actualizar()borrar()
1..*1 1..*1
1..*1 1..*1
0..*1 0..*1
Datos_ClínicosCod_h_clínica : 1cod_datosclinicos : 1Fecha_cons : 20/03/2006Temperatura : 37Peso : 70.5Talla : 1.62Pulso : 120Puntos_dolor : R DORSALSensibilidad : NORMALGrado_de_dolor : AGUDOResp_neurologicas : ACORDESFuncional_Testmusc : MOV PARCIALMedicacion : NINGUNAnom_terapia1 : COMP QUIMICASnom_terapia2 : PARAFINAnom_terapia3 : MASAJEEvolucion_obs : CONTINUA TERAPIA
FisioterapistaCod_fisiot : 1cedula : 1714854478Cargo : FISIOTERAPISTAfecha_ingreso : 01/01/2000Cod_estado : 4Observaciones : REGISTRADOFecha_rige : 01/01/2000Fecha_fin : 01/01/2001
EstadoCod_estado : 4Descrip_estado : ACTIVO
ingresar()desplegar()
1..*
1
1..*
1
TurnosCod_turno : 1Cod_fisiot : 1Cod_estado : 2Fecha_hora : 20/03/2006Hora : 08:30Cod_paciente : 1
consultar()desplegar()ingresar()borrar()
1
1..*
1
1..*
Historia_ClínicaCod_h_clínica : 1Cod_paciente : 1Motivo_consulta : CONSULTAAntec_personales : NINGUNOAntec_familiares : NINGUNODiagnostico : DORSALGIA
Generar()Consultar()Actualizar()Desplegar()Borrar()
1
1
1
1
EdadCod_rango_edad : 4Rango_edad : 15 a 44 años
ingresar()desplegar()
Instruccioncod_instruccion : 4Nivel_de_instruccion : SUPERIOR
ingresar()desplegar()
PacienteCod_paciente : 1Cod_estado : 1Familiar : MARIA GARCIAcod_instruccion : 4cod_fisiot : 1cod_rango_edad : 4
1..*1 1..*1
1..*1 1..*1
0..*
1
0..*
1
1
0..1
1
0..1
1..*
1
1..*
1
1
1..*
1
1..*
T_USUARIOCod_usuario : 1Nombre_usuario : ADMINISTRADORContraseña : admTipo_acceso : TOTAL
ingresar()borrar()
HISTORIAL_FISIOTcod_obs : 100num_cedula : 1710235684Nombres : MARIA GABRIELAApellidos : BUCHELIObservaciones : INCUMPLE NORMA REGLFecha_rige : 21/03/2006Fecha_fin : 24/03/2006Estado_fisioterapista : 6
ingresar()consultar()desplegar()
PROVINCIAcod_provincia : 1Descripcion_prov : AZUAY
ingresar()desplegar()
56
DICCIONARIO DE CLASES
57
DICCIONARIO DE CLASES
SISTEMA DE ADMINISTRACIÓN DE PACIENTES DEL ÁREA DE FISIOTERAPIA
DEL HOSPITAL ENRIQUE GARCÉS “FISIOSYS”
NOMBRE DE LA
CLASE
DESCRIPCIÓN
DATOS_CLINICOS Información de signos vitales y datos médicos del
paciente y que forman parte de la Historia Clínica
EDAD Rangos de edades
ESTADO Listado de estados del Paciente, Fisioterapista y turnos
ESTADO_CIVIL Lista de estado civiles existentes para una persona
FISIOTERAPISTA Clase que hereda atributos y comportamiento del la clase
Persona y contiene datos que identifican al Fisioterapista
GENERO Descripción del género de una persona
HISTORIA_CLINICA Contiene información útil en la atención del paciente
HISTORIAL_FISIOT
Almacena información relativa al historial del
Fisioterapista a lo largo del tiempo de servicio dentro de
la Institución
INSTRUCCION Descripción de los niveles de instrucción del paciente
PACIENTE Clase que hereda atributos y comportamiento del la clase
Persona y contiene datos que identifican al Paciente
PERSONA Clase padre que almacena datos informativos de cada
persona.
PROVINCIA Listado de provincias del Ecuador
TELEFONO Contiene el atributo multivalor teléfono con la
descripción respectiva
TURNOS Contiene información relativa a los turnos
T_USUARIO Listado de usuarios con sus permisos respectivos
58
DATOS_CLINICOS
Atributos Protegidos:
cod_datosclinicos Código de Datos Clínicos
Atributos Privados:
cod_h_clinica Número de Historia Clínica
Atributos Públicos:
Fecha_cons Fecha de consulta
Temperatura Valor de la toma de temperatura en ºC
Peso Peso del paciente en Kilogramos
Talla Estatura del paciente en metros
Pulso Número de pulsaciones por minuto del paciente
Sensibilidad Sensibilidad de la parte afectada del paciente
Puntos_dolor Puntos de dolor que presenta el paciente
Grado_de_dolor Descripción del grado de dolor
Resp_neurologicas Valoración de las respuestas neurológicas del paciente
Funcional_Testmusc Valoración del examen funcional y/o del test muscular
nom_terapia1 Terapia asignada al paciente
nom_terapia2 Terapia asignada al paciente
nom_terapia3 Terapia asignada al paciente
Evolucion_obs Evolución, observaciones del paciente
EDAD
Atributo Protegido:
cod_rango_edad Código del rango de edad
Atributos Públicos:
Rango_edad Descripción del rango de edad
Operaciones Públicas:
ingresar() Realiza la inserción de un registro en la tabla EDAD
59
desplegar() Visualizar el listado de rango de edades
ESTADO
Atributo Protegido:
cod_estado Código del estado
Atributos Públicos:
Descrip_estado Descripción del estado
Operaciones Públicas:
ingresar() Realiza la inserción de un registro en la tabla ESTADO
desplegar() Visualizar la lista de estados
ESTADO_CIVIL
Atributo Protegido:
cod_est_civil Código del estado civil
Atributo Público:
Descripcion Descripción del estado civil
Operaciones Públicas:
ingresar() Inserta un registro en la tabla ESTADO_CIVIL
desplegar() Visualizar la lista de estados civiles
FISIOTERAPISTA
Atributos Protegidos:
cod_fisiot Código del Fisioterapista
Atributos Privados:
60
cedula Cédula del Fisioterapista
cod_estado Código del estado correspondiente
Atributos Públicos:
Cargo Cargo que desempeña el Fisioterapista
Fecha_ingreso Fecha de ingreso al Hospital
Observaciones Observaciones para determinar el estado del médico
Fecha_rige Fecha desde la que rige un cierto estado
Fecha_fin Fecha de fin del estado asignado
Operaciones Públicas:
Hereda las operaciones de la clase padre PERSONA
GENERO
Atributo Protegido:
cod_genero Código del género de una persona
Atributo Público:
Descripcion_genero Descripción del género
Operaciones Públicas:
ingresar() Inserta un registro en la tabla GENERO
desplegar() Despliega los valores contenidos en la tabla GENERO
HISTORIA_CLINICA
Atributos Protegidos:
cod_h_clinica Código de Historia Clínica
Atributos Privados:
cod_paciente Número de Historia Clínica
61
Atributos Públicos:
Motivo_consulta Motivo por el que acude el paciente
Antec_personales Antecedentes médicos del paciente
Antec_familiares Antecedentes médicos núcleo familiar
Diagnostico Diagnóstico dado por el Médico Fisiatra
Operaciones Públicas:
Generar() Inserta un registro en la tabla HISTORIA_CLINICA
Consultar() Busca una historia clínica específica
Actualizar() Modifica la información de un registro existente
Desplegar() Muestra el conjunto de datos producto de la consulta
Borrar() Elimina registros de la tabla HISTORIA_CLINICA
HISTORIAL_FISIOT
Atributo Protegido:
cod_obs Número de observación
Atributos Públicos:
num_cedula Número de cédula del Fisioterapista
Nombres Nombres del Fisioterapista
Apellidos Apellidos del Fisioterapista
Observaciones Observaciones para determinar el estado del médico
Fecha_rige Fecha desde la que rige un cierto estado
Fecha_fin Fecha de fin del estado asignado
Estado_fisioterapista Descripción del estado asignado
Operaciones Públicas:
ingresar() Realiza la inserción de un registro
consultar() Busca el historial de un Fisioterapista específico
desplegar() Muestra el conjunto de datos producto de la consulta
62
INSTRUCCION
Atributo Protegido:
cod_instruccion Código del nivel de instrucción
Atributo Público:
Nivel_de_instruccion Nivel de instrucción
Operaciones Públicas:
ingresar() Inserta un registro en la tabla INSTRUCCION
desplegar() Despliega los valores contenidos en INSTRUCCIÓN
PACIENTE
Atributos Protegidos:
cod_paciente Número de Historia Clínica del paciente
Atributos Privados:
cedula Número de cédula
cod_estado Código de estado del paciente
cod_fisiot Código del Fisioterapista encargado
cod_instruccion Código del nivel de instrucción
cod_rango_edad Código del rango de edad
Atributos Públicos:
Familiar Nombre de un familiar del paciente
Operaciones Públicas:
Hereda las operaciones de la clase padre PERSONA
PERSONA
Atributos Protegidos:
cedula Número de cédula de la persona
63
Atributos Privados:
cod_est_civil Código de estado civil
cod_genero Código de género
Atributos Públicos:
Nombres Nombres de la persona
Apellidos Apellidos paterno y materno de la persona
Fecha_nac Fecha de nacimiento
Lugar_nacimiento Lugar de nacimiento
Ocupacion Profesión/Ocupación
Direccion Lugar de residencia
Operaciones Públicas:
ingresar() Inserta un nuevo registro
consultar() Busca la información de un registro
actualizar() Modifica la información de un registro existente
desplegar() Muestra el conjunto de datos producto de la consulta
borrar() Elimina registros
PROVINCIA
Atributos Protegidos:
Cod_provincia Código de la provincia
Atributos Públicos:
Descripcion_prov Nombre de la provincia
Operaciones Públicas:
ingresar() Inserta un nuevo registro
desplegar() Despliega la lista de provincias
64
TELEFONO
Atributos Protegidos:
cod_telef Código del registro de teléfono
Atributos Privados:
cedula_per Número de cédula de la persona
Atributos Públicos:
Num_telefono Número de teléfono
Referencia_telef Descripción, nombre de quien pertenece el # telefónico
Operaciones Públicas:
ingresar() Inserta un nuevo registro
actualizar() Modifica la información de un registro existente
borrar() Borra el registro
TURNOS
Atributos Protegidos:
cod_turno Código del turno
Atributos Privados:
cod_paciente Número de Historia Clínica
cod_fisiot Código del Fisioterapista
cod_estado Código de estado del turno
Atributos Públicos:
Fecha_hora Fecha asignada para el turno
Hora Hora asignada para el turno
Operaciones Públicas:
65
ingresar() Inserta un nuevo registro
consultar() Busca la información de un registro
desplegar() Muestra el conjunto de datos producto de la consulta
actualizar() Modifica la información de un registro existente
T_USUARIO
Atributos Protegidos:
Cod_usuario Código del usuario
Atributos Públicos:
Nombre_usuario Nombre del usuario
Contraseña Clave de acceso
Tipo_acceso Tipo de acceso asignado al usuario
Operaciones Públicas:
ingresar() Inserta un nuevo registro
borrar() Borra el registro
66
MODELO DINÁMICO
67
DIAGRAMAS DE INTERACCIÓN
68
DIAGRAMAS DE SECUENCIAS
69
DIAGRAMA DE SECUENCIAS
SISTEMA DE ADMINISTRACIÓN DE PACIENTES DEL ÁREA DE FISIOTERAPIA DEL HOSPITAL ENRIQUE GARCÉS “FISIOSYS”
ASIGNACIÓN DE TURNOS:
: Paciente_t : Recepcionista
: Turnos
Entrega Nº de Historia Clínica
Solicitar turno
consultar disponibilidad de turno
Mostrar disponibilidad
Reserva turno
Imprimir turno
Entrega turno
70
DIAGRAMA DE SECUENCIAS
SISTEMA DE ADMINISTRACIÓN DE PACIENTES DEL ÁREA DE FISIOTERAPIA DEL HOSPITAL ENRIQUE GARCÉS “FISIOSYS”
ATENCIÓN AL PACIENTE
: Recepcionista
: Fisioterapista
: Turnos : Historia_Clínica
Registrar signos vitales
Registra motivo de consulta
Registrar antecedentes personales y familiares
Registra diagnóstico
Registrar terapia y evolución
Actualizar HClínica
Mostrar Historia Clínica
Disponibilidad de turnos
71
DIAGRAMA DE SECUENCIAS
SISTEMA DE ADMINISTRACIÓN DE PACIENTES DEL ÁREA DE FISIOTERAPIA DEL HOSPITAL ENRIQUE GARCÉS “FISIOSYS”
GENERACIÓN DE REPORTES
: Administrador
: Fisioterapista : Paciente : Historia_Clínica
Ingresar información médico
Ingresar datos de pacientes
Obtener listado de pacientes por rango de edad
Obtener listado de pacientes atendidos por c/médico
Verificar existencia de médico
Verificar existencia de paciente
Imprimir lista de pacientes poe estado
Imprimir historial médico del paciente
Emitir historial del Fisioterapista
Imprimir listado del personal médico
72
DIAGRAMAS DE COLABORACIÓN
73
DIAGRAMA DE COLABORACIÓN
SISTEMA DE ADMINISTRACIÓN DE PACIENTES DEL ÁREA DE FISIOTERAPIA
DEL HOSPITAL ENRIQUE GARCÉS “FISIOSYS”
ASIGNACIÓN DE TURNOS:
: Paciente_t : Recepcionista
: Turnos
1: Entrega Nº de Historia Clínica2: Solicitar turno
7: Entrega turno
3: consultar disponibilidad de turno
4: Mostrar disponibilidad6: Imprimir turno
5: Reserva turno
74
DIAGRAMA DE COLABORACIÓN
SISTEMA DE ADMINISTRACIÓN DE PACIENTES DEL ÁREA DE FISIOTERAPIA
DEL HOSPITAL ENRIQUE GARCÉS “FISIOSYS”
ATENCIÓN AL PACIENTE:
: Recepcionista : Fisioterapista
: Historia_Clínica : Turnos
6: Actualizar HClínica
1: Registrar signos vitales
2: Registra motivo de consulta3: Registrar antecedentes personales y familiares
4: Registra diagnóstico5: Registrar terapia y evolución
7: Mostrar Historia Clínica
8: Disponibilidad de turnos
75
DIAGRAMA DE COLABORACIÓN
SISTEMA DE ADMINISTRACIÓN DE PACIENTES DEL ÁREA DE FISIOTERAPIA
DEL HOSPITAL ENRIQUE GARCÉS “FISIOSYS”
GENERACIÓN DE REPORTES:
: Administrador
: Fisioterapista
: Paciente
2: Verificar existencia de médico
4: Verificar existencia de paciente
: Historia_Clínica
1: Ingresar información médico
10: Emitir historial del Fisioterapista
9: Imprimir listado del personal médico
3: Ingresar datos de pacientes
5: Obtener listado de pacientes por rango de edad
8: Obtener listado de pacientes atendidos por c/médico6: Imprimir lista de pacientes poe estado
7: Imprimir historial médico del paciente
76
MODELO DE PROCESOS
77
DIAGRAMAS DE ESTADOS
78
DIAGRAMA DE ESTADOS
SISTEMA DE ADMINISTRACIÓN DE PACIENTES DEL ÁREA DE FISIOTERAPIA
DEL HOSPITAL ENRIQUE GARCÉS “FISIOSYS”
PACIENTE:
Registrado En Rehabilitación
Rehabilitado
Presenta nueva lesión
Médico asigna tipo de terapia
Finalizan sesiones de terapia
79
DIAGRAMA DE ESTADOS
SISTEMA DE ADMINISTRACIÓN DE PACIENTES DEL ÁREA DE FISIOTERAPIA
DEL HOSPITAL ENRIQUE GARCÉS “FISIOSYS”
FISIOTERAPISTA
80
DIAGRAMA DE ESTADOS
SISTEMA DE ADMINISTRACIÓN DE PACIENTES DEL ÁREA DE FISIOTERAPIA
DEL HOSPITAL ENRIQUE GARCÉS “FISIOSYS”
TURNOS
Disponible Reservado
Anulado
Paciente no acude a consulta
pago=v alor_consulta/reserv ar turno
81
DIAGRAMAS DE ACTIVIDADES
82
DIAGRAMA DE ACTIVIDADES
SISTEMA DE ADMINISTRACIÓN DE PACIENTES DEL ÁREA DE FISIOTERAPIA
DEL HOSPITAL ENRIQUE GARCÉS “FISIOSYS”
ASIGNACIÓN DE TURNOS:
Ingresar datos del paciente
Solicitar turno
Reservar turno
Obtener fecha alternativa
Verificar disponibilidad de paciente
Verificar disponibilidad de turno
Imprimir turno
Si
No
No
Si
83
DIAGRAMA DE ACTIVIDADES
SISTEMA DE ADMINISTRACIÓN DE PACIENTES DEL ÁREA DE FISIOTERAPIA
DEL HOSPITAL ENRIQUE GARCÉS “FISIOSYS”
ATENCIÓN AL PACIENTE:
Registrar signos vitales
Registrar motivo de consulta
Registrar antecedentes personales y familiares
Registra diagnóstico y examen físico
Registra terapia y evolución
Actualizar Historia Clínica
Consultar Historia Clínica
Obtener disponibilidad para nueva cita médica
84
DIAGRAMA DE ACTIVIDADES
SISTEMA DE ADMINISTRACIÓN DE PACIENTES DEL ÁREA DE FISIOTERAPIA
DEL HOSPITAL ENRIQUE GARCÉS “FISIOSYS”
GENERACIÓN DE REPORTES:
Ingresar Cod_paciente
Ingresar Cod_Fisioterapista
Verificar existencia de paciente
Verificar existencia de Fisioterapista
Obtener listado de pacientes atendidos por cada Fisioterapista
Obtener listado de pacientes por edad
Si
No
Si
No
85
CONSTRUCCIÓN
86
CONSTRUCCIÓN
SISTEMA DE ADMINISTRACIÓN DE PACIENTES DEL ÁREA DE
FISIOTERAPIA DEL HOSPITAL ENRIQUE GARCÉS “FISIOSYS”
FRONT END
Dim strqry1 As String Dim vector(10) As Integer Dim d, i Dim a As Integer Private Sub Cmblispacientes_Click() Txtcopianomcompac.Text = Cmblispacientes.List(Cmblispacientes.ListIndex) Call buscarpornombre End Sub Private Sub Cmdactuapellido_Click() Call guardaractape Toolbar1.Buttons("cancelar").Enabled = False mnucancelar.Enabled = False End Sub Private Sub Cmdbuscarapellido_Click() Call desplegarpac End Sub Private Sub Cmdguaradactualiz_Click() Call guardaractualizacion mnucancelar.Enabled = False End Sub Private Sub lst_1_DblClick() txt_1.Enabled = True txt_2.Enabled = True txt_1.Text = lst_2.List(lst_1.ListIndex) txt_2.Text = lst_3.List(lst_1.ListIndex) lst_2.RemoveItem (lst_1.ListIndex) lst_3.RemoveItem (lst_1.ListIndex) lst_1.RemoveItem (lst_1.ListIndex) End Sub Private Sub lstnompac_Click() Cmblispacientes.List(Cmblispacientes.ListIndex)
87
Txtcopianomcompac.Text = lstnompac.List(lstnompac.L istIndex) Call buscarpornombre End Sub Private Sub mnuanterior_Click() If pac_asl - 1 <> pac_tot Then Call ver(lst_pac.List(pac_asl - 1)) If pac_asl - 1 <> 0 Then pac_asl = pac_asl - 1 End If Else Call ver(CStr(pac_pri)) End If End Sub Private Sub mnuconsape_Click() Frabuspac.Visible = True Fradatospaciente.Visible = False Frareferencias.Visible = False Cmdguaradactualiz.Visible = False Txtcedupac.SetFocus Cmdbuscpaciente.Default = True Txtcedupac = "" Txtcedulap = "" Txtnombresp = "" Txtapellidosp = "" Txtlugarnacp = "" Txtfamiliarp = "" Txtfechanacp = "" Txtocupacionp = "" Txtdireccionp = "" End Sub Private Sub mnueliminar_Click() Call eliminarpaciente End Sub Private Sub mnupornompac_Click() Frabusape.Visible = True Fradatospaciente.Visible = False Frareferencias.Visible = False Cmdactuapellido.Visible = False Txtapellidopac = "" cmd_1.Visible = True 'comando agregar telefono Txtapellidopac.SetFocus Cmdbuscarapellido.Default = True End Sub Private Sub mnuprimer_Click() Call ver(CStr(pac_pri))
88
End Sub Private Sub mnusiguiente_Click() If pac_asl + 1 <= pac_tot Then Call ver(lst_pac.List(pac_asl + 1)) pac_asl = pac_asl + 1 Else Call ver(CStr(pac_ult)) End If End Sub Private Sub mnuultimo_Click() Call ver(CStr(pac_ult)) End Sub Private Sub Cmbfisioresponsable_Click() With Adopacfis.Recordset .MoveFirst .Move (Cmbfisioresponsable.ListIndex) Txtcodigofisio.Text = !cod_fisiot End With End Sub Private Sub cmd_1_Click() lst_2.AddItem txt_1.Text lst_3.AddItem txt_2.Text lst_1.Clear For i = 0 To lst_2.ListCount - 1 lst_1.AddItem "TELEFONO =" + lst_2.List(i) + " DESCRIPCION=" + lst_3.List(i) Next txt_1 = "" txt_2 = "" End Sub Private Sub Cmdbuscpaciente_Click() Call busquedapaciente End Sub Private Sub Form_Load() Call Conectar Width = Screen.Width * 0.83 ' Establecer el ancho del formulario. Height = Screen.Height * 0.95 ' Establecer el alto del formulario. Left = (Screen.Width - Width) / 2 ' Centrar el fo rmulario' horizontalmente. Top = (Screen.Height - Height) / 2 ' Centrar el f ormulario
89
mnuguardar.Enabled = False mnucancelar.Enabled = False lst_1.Enabled = False With Adoedad.Recordset .MoveFirst While Not Adoedad.Recordset.EOF Cmbedadpac.AddItem Adoedad.Recordset.Fields("Rango_edad").Value .MoveNext Wend End With With AdoGenero.Recordset .MoveFirst While Not AdoGenero.Recordset.EOF Cmbgenerop.AddItem AdoGenero.Recordset.Fields("Descripcion_genero").Va lue .MoveNext Wend With Adoestadocivilp.Recordset .MoveFirst While Not Adoestadocivilp.Recordset.EOF Cmbestadocivilp.AddItem Adoestadocivilp.Recordset.Fields("Descripcion").Val ue .MoveNext Wend End With With Adoinstruccion.Recordset .MoveFirst While Not Adoinstruccion.Recordset.EOF Cmbinstruccionp.AddItem Adoinstruccion.Recordset.Fields("Nivel_de_instrucci on").Value .MoveNext Wend End With With AdoEstado.Recordset .MoveFirst While Not AdoEstado.Recordset.EOF Cmbestadopac.AddItem AdoEstado.Recordset.Fields("Descrip_estado").Value .MoveNext Wend End With With Adopacfis.Recordset .MoveFirst While Not Adopacfis.Recordset.EOF Cmbfisioresponsable.AddItem Adopacfis.Recordset.Fields("Medico").Value
90
.MoveNext Wend End With End With Toolbar1.Buttons("guardar").Enabled = False Toolbar1.Buttons("cancelar").Enabled = False Call asl pac_pri = asl_pri() pac_ult = asl_ult() Call ver(CStr(pac_pri)) pac_asl = 1 pac_tot = lst_pac.ListCount - 1 End Sub Function ver(cod_pac As String) Dim id_pa As String Dim id_estado As String 'Dim id_fisio As String Dim id_inst As String Dim id_rango As String Dim id_ced As String Dim id_est_c As String Dim id_gen As String Dim rstqry9 As New ADODB.Recordset Dim rstqry10 As New ADODB.Recordset Dim rstqry11 As New ADODB.Recordset Dim rstqry12 As New ADODB.Recordset Dim rstqry13 As New ADODB.Recordset Dim rstqry14 As New ADODB.Recordset Dim rstqry15 As New ADODB.Recordset strqry1 = "select * from paciente where cod_pac iente = " + cod_pac + "" rstqry9.Open strqry1, Conn2, adOpenDynamic, , a dCmdText If Not rstqry9.EOF Then Txthistoriaclinicap.Text = rstqry9.Fields(" cod_paciente") Txtfamiliarp.Text = rstqry9.Fields("Familia r") Txtcedulap.Text = rstqry9.Fields("cedula") id_ced = rstqry9.Fields("cedula") id_pa = rstqry9.Fields("cod_paciente") id_estado = rstqry9.Fields("cod_estado") 'id_fisio = rstqry9.Fields("cod_fisiot") id_inst = rstqry9.Fields("cod_instruccion") id_rango = rstqry9.Fields("cod_rango_edad") End If rstqry9.Close strqry1 = "select Descrip_estado from estado wh ere cod_estado = " + id_estado + "" rstqry10.Open strqry1, Conn2, adOpenDynamic, , adCmdText If Not rstqry10.EOF Then Cmbestadopac.Text = rstqry10.Fields("Descri p_estado") End If
91
rstqry10.Close strqry1 = "select Nivel_de_instruccion from ins truccion where cod_instruccion = " + id_inst + "" rstqry11.Open strqry1, Conn2, adOpenDynamic, , adCmdText If Not rstqry11.EOF Then Cmbinstruccionp.Text = rstqry11.Fields("Nivel_de_instruccion") End If rstqry11.Close strqry1 = "select Rango_edad from edad where co d_rango_edad = " + id_rango + "" rstqry12.Open strqry1, Conn2, adOpenDynamic, , adCmdText If Not rstqry12.EOF Then Cmbedadpac.Text = rstqry12.Fields("Rango_ed ad") End If rstqry12.Close strqry1 = "select * from persona where cedula = '" + id_ced + "'" rstqry13.Open strqry1, Conn2, adOpenDynamic, , adCmdText If Not rstqry13.EOF Then Txtnombresp.Text = rstqry13.Fields("Nombres ") Txtapellidosp.Text = rstqry13.Fields("Apell idos") Txtfechanacp.Text = rstqry13.Fields("Fecha_ nac") Txtlugarnacp.Text = rstqry13.Fields("Lugar_ nacimiento") Txtdireccionp.Text = rstqry13.Fields("Direc cion") Txtocupacionp.Text = rstqry13.Fields("Ocupa cion") id_est_c = rstqry13.Fields("cod_est_civil") id_gen = rstqry13.Fields("cod_genero") End If rstqry13.Close strqry1 = "select Descripcion_genero from gener o where cod_genero = " + id_gen + "" rstqry14.Open strqry1, Conn2, adOpenDynamic, , adCmdText If Not rstqry14.EOF Then Cmbgenerop.Text = rstqry14.Fields("Descripc ion_genero") End If rstqry14.Close strqry1 = "select Descripcion from estado_civil where cod_est_civil = " + id_est_c + "" rstqry15.Open strqry1, Conn2, adOpenDynamic, , adCmdText If Not rstqry15.EOF Then Cmbestadocivilp.Text = rstqry15.Fields("Des cripcion") End If rstqry15.Close
92
PRUEBAS
93
INDICE DE FIGURAS
Figura 1. Pantalla de Paciente…………………………………………………………….89
Figura 2. Menú Archivo…………………………………………………………………..90
Figura 3. Barra de Herramientas………………………………………………………….90
Figura 4. Pantalla de Nuevo PACIENTE…………………………………………………90
Figura 5. Campo para ingresar el número de cédula……………………………...............91
Figura 6. Mensaje de cédula incorrecta………………………………… ….....................91
Figura 7. Formato del campo Fecha de Nacimiento……………………………………...91
Figura 8. Campo edad del paciente……………………………………………………….91
Figura 9. Lista de valores para asignar el rango de edad…………………………………92
Figura 10. Campo para asignación de Fisioterapista……………………………………..92
Figura 11. Alerta de que se debe ingresar números……………………………………....92
Figura 12. Inserción en la lista de Referencias Telefónicas……………………………...92
Figura 13. Información para registrar un nuevo paciente………………………………...93
Figura 14. Búsqueda de información del paciente…………………………………….….93
Figura 15. Formulario que contiene la información producto de la búsqueda realizada………...94
Figura 16. Mensaje de aceptación o no para actualizar el registro………………………94
Figura 17. Mensaje previo a la eliminación o no de un paciente……………………........95
94
PRUEBAS FUNCIONALES
Objetivo: Llevar a cabo la Prueba Funcional del módulo PACIENTE
Objetivo Específico: Verificar que el funcionamiento de las diferentes acciones
que se llevan a cabo en el Módulo PACIENTE sea óptimo y satisfactorio.
MÓDULO PACIENTE
Figura 1. Pantalla de Paciente
El módulo PACIENTE registra datos personales, referencias familiares y
telefónicas del paciente.
En la Fig. 1 se puede visualizar una barra de menú y una barra de herramientas
las cuales contienen las diferentes acciones que se llevan a cabo dentro del
módulo.
95
Menú Archivo: comprendido por Nuevo, Guardar y Salir
Fig. 2 Menú Archivo
Barra de Herramientas: comprendida por los botones: Nuevo, Guardar, Cancelar,
Eliminar, Anterior, Siguiente, Primero, Último, Buscar y Salir
Figura 3. Barra de Herramientas
Al elegir la acción Nuevo el campo Historia Clínica ya contiene el valor que corresponde
al paciente que va a ser registrado.
Figura 4. Pantalla de Nuevo PACIENTE
96
En el ingreso de la información requerida el primer campo es Nº Cédula, si se
ingresa un número de cédula que no consta en el Registro Civil:
Figura 5. Campo para ingresar el número de cédula
Se despliega el siguiente mensaje:
Figura 6. Mensaje de cédula incorrecta
Por el contrario, si se ingresa un número de cédula válido simplemente salta al
campo designado para los nombres del paciente.
Continuando con el ingreso de la información, se tiene el campo Fecha de
Nacimiento, la parte superior del mismo se indica el formato de fecha que se debe
ingresar:
Figura 7. Formato del campo Fecha de Nacimiento
Inmediatamente se despliega la edad del paciente en el campo Edad
Figura 8. Campo edad del paciente
97
Para asignar el rango de edad se considera el valor del campo edad
Figura 9. Lista de valores para asignar el rango de edad
Para la asignación del Fisioterapista se escoge el nombre y seguidamente
aparece el código del mismo.
Figura 10. Campo para asignación de Fisioterapista
En el ingreso de referencias telefónicas del paciente está el campo Nº Teléfono,
en el cual se valida el ingreso de números únicamente:
Figura 11. Alerta de que se debe ingresar números
Completando el campo Descripción y dando click en el botón de comando
Agregar , la información ingresada previamente se transfiere a la lista de
Referencias Telefónicas:
Figura 12. Inserción en la lista de Referencias Telefónicas
98
Terminado el ingreso de la información en el formulario PACIENTE se procede a
guardar el registro.
Figura 13. Información para registrar un nuevo paciente
Para verificar que la información se ha guardado correctamente se procede a
realizar la búsqueda, la cual puede ser por el número de cédula o por los apellidos
del paciente.
En la búsqueda por apellidos se ingresa el apellido paterno completo o sus
primeras letras. Al activar el botón de comando Buscar en la lista de la parte
inferior, se despliegan los pacientes con la información buscada.
Figura 14. Búsqueda de información del paciente
99
Al dar click en el nombre del paciente que está dentro de la lista se despliega el
formulario:
Figura 15. Formulario que contiene la información producto de la búsqueda realizada
Si es necesario, se actualizan los datos del paciente y a continuación se guardan
los cambios realizados dando click en el botón Actualizar de la barra de
herramientas y al mensaje: “Desea guardar los cambios realizados”, se presiona
el comando Sí.
Figura 16. Mensaje de aceptación o no para actualizar el registro
100
Para realizar la búsqueda por cédula del paciente la diferencia está en que no se
despliega una lista de los mismos ya que al realizar la validación de cédula al
momento de registra al paciente se anula la posibilidad de tener registros con el
mismo número de cédula. Se procede a realizar los cambios necesarios y al
momento de actualizar el registro también se presenta el mensaje de la Figura
16.
Para eliminar un registro hay dos opciones: recorrer los registros con los botones
y menús Anterior, Siguiente hasta encontrar el registro que se desea borrar o
mediante la búsqueda ya sea por cédula o por apellidos del paciente.
De cualquier forma el momento de eliminar un registro se despliega el mensaje:
Figura 17. Mensaje previo a la eliminación o no de un paciente
Los botones Anterior, Siguiente, Primero, Ultimo sirven también para verificar el
correcto registro, actualización o eliminación de la información.
En el caso de la barra de menú los procesos de inserción, búsqueda,
actualización y eliminación son idénticos al demostrado con la barra de
herramientas.
CONCLUSIÓN
En el módulo PACIENTE las acciones sujetas a la Prueba Funcional se
desarrollaron en forma óptima y satisfactoria no sólo desde el punto de vista del
correcto funcionamiento; sino también porque se despliega un conjunto de guías
para que el usuario ingrese y realice los procesos en forma adecuada.
101
MANUAL DE USUARIO
102
CONTENIDO
DESCRIPCIÓN GENERAL………………………………………………………...103
BARRA DE HERRAMIENTAS………………………………………..……….103
BARRA DE MENÚ……………………………………………………………...103
VALIDACIÓN DE DATOS……………………………………………………..107
Validación del campo Nº Cédula……………………………………………107
Validación de “ingreso solo números”……………………………………….107
INGRESO AL SISTEMA………………………………………………………..108
MENÚ USUARIOS……………………………………………………………..110
MENÚ ARCHIVO……………………………………………………………….111
MENÚ ADMINISTRAR………………………………………………………...111
MENÚ TURNOS………………………………………………………………..122
MENÚ REPORTES……………………………………………………………..125
MENÚ AYUDA…………………………………………………………..….…129
103
MANUAL DE USUARIO
SISTEMA DE ADMINISTRACIÓN DE PACIENTES DEL ÁREA DE FISIOTERAPIA
DEL HOSPITAL ENRIQUE GARCÉS “FISIOSYS”
DESCRIPCIÓN GENERAL
BARRA DE HERRAMIENTAS
Barra de Herramientas con botones que ejecutan el conjunto de acciones que
pueden llevarse a cabo dentro del Sistema de Administración de Pacientes. Los
botones pueden estar habilitados o deshabilitados dependiendo del proceso que
se ejecuta en un momento específico y su funcionalidad se describe a
continuación.
Figura 1. Barra de herramientas del sistema
NOMBRE DEL
BOTÓN ÍCONO DESCRIPCIÓN
Nuevo
Habilita todos los campos del formulario en pantalla para permitir el ingreso de la información
Guardar
Guarda la información que se ingresa en los campos del formulario
Cancelar
Omite la ejecución de los botones: Nuevo, Guardar, Eliminar, Buscar, Actualizar
Eliminar
Elimina el registro presente en el formulario que se visualiza
Anterior
Recorre los registros de las tablas en forma descendente
104
Siguiente
Recorre los registros de las tablas en forma ascendente
Primero
Muestra el primer registro de la tabla
Último
Muestra el último registro de la tabla
Buscar
Busca un conjunto de información en base a la cédula
Buscar
Busca un conjunto de información en base a los apellidos
Actualizar
Actualiza la información que se presenta en pantalla
Salir
Descarga el formulario en pantalla y muestra el menú principal
BARRA DE MENÚ
Los menús de esta barra ejecutan las mismas funciones que los botones de la
barra de herramientas.
Figura 2. Barra de menú
105
VALIDACIÓN DE DATOS En todos los formularios del sistema existen campos cuyo contenido debe ser
validado, si la información que ingresa el usuario no es correcta, el sistema
despliega una serie de mensajes que informan al usuario su equivocación.
Validación del campo Nº Cédula:
Para el campo Nº Cédula se verifica que la información ingresada corresponda a
una cédula válida en el Registro Civil.
Figura 3. Campo para el ingreso del número de cédula de identidad
Si la información ingresada es la correcta el cursor se coloca en el campo
siguiente, de lo contrario se despliega el siguiente mensaje:
Figura 4. Mensaje de cédula incorrecta Validación de “ingreso solo números” Existen campos en los que se debe ingresar específicamente números y
siguiendo un formato sugerido como son los campos de: Fecha Nacimiento,
Número telefónico.
Figura 5. Campos para ingresar fecha de nacimiento y número telefónico
Si el usuario digita un texto, el sistema devuelve el siguiente mensaje:
106
Figura 6. Alerta de que se debe ingresar números
INGRESO AL SISTEMA Formas de ingresar al sistema:
• Dar doble click en el icono de FISIOSYS que esta en el Escritorio
• Click en Inicio, Todos los Programas y escogemos FISIOSYS
Figura 7. Ingreso al sistema
Al cargarse el sistema se presenta la siguiente pantalla:
Figura 8. Pantalla de presentación
107
Al presionar cualquier tecla o dar un click en la pantalla se carga el formulario de
INICIO DE SESIÓN, se escoge el usuario del combo y se ingresa la contraseña
en el campo de texto Contraseña:
Figura 9. Pantalla de Inicio de Sesión de Usuario
Si la contraseña no corresponde al usuario seleccionado, al dar clic en Acepta r se
devuelve el siguiente mensaje:
Figura 10. Información de clave incorrecta
Si el inicio de sesión es correcto, se visualiza la pantalla de MENÚ PRINCIPAL
del sistema en donde se encuentran la barra de menú que contiene: Usuarios,
Archivo, Administrar, Turnos, Reportes y Ayuda; dependiendo del perfil de
usuario el sistema le asigna un tipo de acceso determinado al usuario.
En la parte inferior de la barra de menús se visualiza una animación de imágenes
asociadas con un texto (PACIENTE, FISIOTERAPISTA, SIGNOS VITALES,
HISTORIAS CLÍNICAS, TURNOS, REPORTES) al dar un click en un texto se
accede a su evento correspondiente en el menú.
Este Manual muestra el perfil del usuario ADMINISTRADOR, ya que es el único
que tiene acceso total al sistema facilitándose así la visualización de todas las
funcionalidades de FISIOSYS.
108
Figura 11. Pantalla de Menú Principal
1. MENÚ Usuarios
Es el primer elemento del menú principal de FISIOSYS el mismo que está
formado por:: Registrar nuevo usuario y la lista perfiles de usuario que tienen
acceso al sistema (Administrador, Recepción, Fisioterapista).
Figura 12. Menú Usuario
Al escoger Registrar nuevo usuario se carga el formulario para el ingreso de un
nuevo usuario, se presiona el botón Nuevo y se ingresa la información respectiva
en los campos dispuestos; el campo ACCESO representa el perfil del usuario.
109
Figura 13. Pantalla para crear un nuevo usuario
Si se desea guardar el registro se presiona el botón Guardar , si se desea crear
otro usuario se escoge el botón Nuevo , caso contrario para salir de esta pantalla
presionar Salir para regresar a la pantalla del MENÚ PRINCIPAL.
Para los submenús: Administrador, Recepcionista, Fisioterapista se despliega la
pantalla de INICIO DE SESIÓN para poder cambiar de sesión de usuario si fuera
el caso.
2. MENÚ Archivo
Contiene solamente el elemento Salir.
Figura 14. Menú Archivo
3. MENÚ Administrar
Contiene los elementos: Pacientes, Fisioterapista, Signos Vitales e Historia
Clínica que se detallan a continuación.
110
Figura 15. Menú Administrar
− Pacientes: corresponde al primer elemento del Menú Administrar aquí se
administra toda la información personal del paciente, se despliega la pantalla:
Figura 16. Pantalla de Paciente
En formulario de la Figura16 se encuentra una barra de herramientas y una barra
de menús descritas anteriormente. Para ingresar un nuevo paciente se presiona
el botón Nuevo o en el Menú Archivo se selecciona la opción Nuevo
seguidamente se despliega el siguiente mensaje que permite confirmar si se
desea o no añadir un nuevo paciente:
111
Figura 17. Pantalla de Paciente
Al escoger Sí añadir un registro se habilitan todos los campos del formulario y el
campo Historia Clínica Nº presenta automáticamente el número asignado al nuevo
paciente, este campo aparece deshabilitado ya que es un número secuencial y no
puede ser cambiado.
Figura 18. Pantalla para ingreso de nuevo paciente
112
Se completa la información en los campos dispuestos, tomando en cuenta las
reglas de validación de los mismos y se procede a guardar el registro.
Si se desea hacer una consulta de la información de un paciente, hay dos
opciones buscar por número de cédula o por los apellidos del paciente, si escoge
la búsqueda por apellidos se despliega la siguiente pantalla:
Figura 19. Pantalla de búsqueda por apellidos del paciente
Al digitar el o los apellidos del paciente y después de presionar el botón de
comando Buscar se despliega una lista de pacientes, se escoge el paciente
dando un click en un elemento de la lista y a continuación se visualiza el
formulario que contiene la información del paciente seleccionado.
Figura 20. Pantalla para actualizar datos del paciente
113
Se modifican los datos que sean necesarios, para actualizar las referencias
telefónicas del paciente se da doble click en el registro que desea modificar
mismo que se encuentra en la lista Referencias Telefónicas , la información se
transfiere a los campos Nº Teléfono y Descripción:
Figura 21. Modificación de las referencias telefónicas del paciente
Se modifica la información de los cuadros de texto y se presiona el botón de
comando Agregar para actualizar la información.
Finalmente al dar click en el botón Actualizar de la barra de herramientas, se
despliega el siguiente mensaje para confirmar o no la actualización del registro.
Figura 22. Mensaje de confirmación de actualización Cuando ya existe el registro del paciente utilizando los botones de la barra de
herramientas: Anterior, Siguiente, Primero, Último se visualiza el orden de los
pacientes registrados y a la vez se puede eliminar un registro si fuera necesario,
presionando el botón Eliminar de la barra de herramientas se elimina el registro
en pantalla, previo a esto el sistema despliega el mensaje de confirmación de
eliminación del registro.
Figura 23. Mensaje para confirmar la eliminación de un paciente
114
− Fisioterapistas: es el segundo elemento del menú Administrar, en este menú
se administra la información del Fisioterapista y su proceso es similar al del
menú Pacientes , el formulario que corresponde a este menú es:
Figura 24. Pantalla Fisioterapista
La diferencia con el menú Pacientes es el campo Observaciones en donde se
asigna el estado del Fisioterapista, esta información es utilizada para llevar el
historial del Fisioterapista y además para el control de turnos.
Figura 25. Campo Observaciones
115
Para asignar un estado específico al Fisioterapista: se escoge una opción de la
lista que presenta el combo OPCIONES, a continuación en el campo de texto se
ingresa un texto de observaciones para describir la opción seleccionada del
combo.
Figura 26. Combo OPCIONES y campo observaciones Al presionar el botón Asignar se despliegan los campos correspondientes a
Fecha_rige y Fecha_fin mismos que especifican el período en el cual el
Fisioterapista tendrá asignado el estado.
Figura 27. Campos Fecha_rige y Fecha_fin
Para guardar los cambios realizados se presiona el botón :
Figura 28. Botón Actualizar
Al presionar el botón Actualizar se despliega el mensaje para confirmar la actualización del registro.
Figura 29. Mensaje para confirmar actualización de Fisioterapista
116
− Signos Vitales: en este menú se lleva el registro de signos vitales
(temperatura, peso, estatura, y pulso) de los pacientes.
Para insertar un nuevo registro: en el menú Archivo se da un click en Nuevo y
se despliega la pantalla siguiente:
Figura 30. Formulario de consulta de paciente Se ingresa el número de historia clínica del paciente y se presiona el botón de
comando Buscar con lo cual se visualiza la pantalla que contiene la información
del paciente de quien se va a registrar sus signos vitales.
Se ingresan los valores en los campos dispuestos y se presiona el botón Guardar
para registrar los signos vitales del paciente en su historia clínica.
Figura 31. Formulario de Signos Vitales
117
Si no desea ingresar otro registro, en el menú Archivo se escoge Salir para
volver a la pantalla de Menú Principal.
− Historia Clínica: ya registrados los signos vitales del paciente, el
Fisioterapista procede a consultar su Historia Clínica para registrar la
información pertinente.
Figura 32. Pantalla de Historia Clínica
Para consultar la Historia Clínica del paciente, hay dos opciones consulta por
historia clínica y consulta por apellidos; al dar click en el Consulta HC de la barra
de herramientas de la pantalla Historia Clínica aparece el mensaje:
Figura 33. Mensaje de consulta por historia clínica
118
Al presionar Sí , se carga la pantalla con los resultados de la consulta; pero al
escoger No, se despliega el mensaje:
Figura 34. Mensaje de consulta por apellidos
Y se habilita el botón Consulta Apellidos de la barra de herramientas, al presionar
este botón se visualiza la pantalla para ingresar los apellidos y realizar la consulta:
Figura 35. Pantalla para consulta por apellidos
Dando un click en un elemento de la lista se carga la pantalla con la información
del paciente seleccionado y se ingresa la información requerida por los campos:
Motivo de consulta, Antecedentes Personales, Antecedentes familiares y
Diagnóstico.
119
Figura 36. Pantalla de Historia Clínica ficha información
En la ficha Examen Físico se ingresa las valoraciones que corresponden a los
campos que aparecen en pantalla, se asigna la terapia al paciente y se presiona
el botón OK para guardar la información referente al examen físico.
Figura 37. Pantalla de Historia Clínica ficha Examen Físico
120
En la ficha Historial y Evolución dar click en el botón Ver Historial para desplegar
el historial de atenciones del paciente y poder registrar la evolución u
observaciones referentes al estado del mismo.
Figura 38. Pantalla de Historia Clínica ficha Evolución y Observaciones
Finalmente se guardan los cambios realizados, dando un click en el botón
Guardar de la barra de herramientas.
4. MENÚ Turnos
Contiene los elementos: Ver disponibilidad, Generar Turno, Cambiar Turno.
Figura 39. Menú Turnos
121
− Generar Turno: presionamos el botón Nuevo y en la pantalla de búsqueda se
ingresa el número de historia clínica del paciente.
Figura 40. Pantalla de turnos
Luego de hacer la consulta de paciente se despliega la pantalla siguiente:
Figura 41. Pantalla para generar turno
122
En esta pantalla se selecciona el Fisioterapista asignado al paciente; cabe
recalcar que en el combo no aparecerán los Fisioterapistas que estén
sancionados o hayan pedido permiso, dando click en un día del calendario se
despliega el cuadro Disponibilidad de turnos, en donde se visualiza la hora de los
turnos disponibles, seleccionar la hora finalmente reservar el turno presionando el
botón Guardar.
Se imprime el turno y se lo entrega al paciente.
Figura 42. Turno impreso
Si el Fisioterapista no tiene turnos disponibles para un día específico, al dar click
en la fecha del calendario se despliega el mensaje:
Figura 43. Aviso de no disponibilidad de turnos
123
Para cambios de turno el proceso es similar al de Generar turno.
5. MENÚ Reportes
Está conformado por los submenús: Pacientes, Fisioterapistas e Historial.
Figura 44. Menú Reportes
− Pacientes: está conformado de: Por Rango de edad, Por estado, Por Médico
Figura 45. Submenú Pacientes
Por rango de Edad: imprime una lista de pacientes agrupados por rango de
edad.
Figura 46. Lista de pacientes por rango de edad
124
Por Estado: imprime una lista de pacientes agrupados por estado
Figura 47. Lista de pacientes por estado
Por Médico: imprime una lista de pacientes agrupados por Fisioterapista
Figura 48. Lista de pacientes por Fisioterapista
125
− Fisioterapistas: imprime el listado de Fisioterapistas con información del
cargo que desempeña, su estado.
Figura 49. Listado de Fisioterapistas
− Historial: está conformado por Paciente y Fisioterapista.
Figura 50. Submenú Historial
126
Paciente: imprime el historial médico del paciente.
Figura 51. Historial médico del paciente
Fisioterapista: imprime el historial del Fisioterapista, mismo que incluye
los diferentes estados por los que ha pasado el médico
Figura 52. Historial del Fisioterapista
127
6. MENÚ Ayuda
Contiene el submenú Acerca de FISIOSYS
Figura 53. Menú Ayuda
Acerca de FISIOSYS: contiene información del Sistema de Administración de
Pacientes FISIOSYS.
Figura 54. Pantalla Acerca de FISIOSYS
128
MANUAL DE INSTALACIÓN
129
CONTENIDO
DESCRIPCIÓN GENERAL……………………………………………………....130
PREPARACIÓN PARA LA INSTALACIÓN……………………………………130
INICIO DE LA INSTALACIÓN………………………………………………….131
PROCESO DE INSTALACIÓN………………………………………………….132
VERIFICACIÓN DE LA INSTALACIÓN……………………………………….133
130
MANUAL DE INSTALACIÓN
DESCRIPCIÓN GENERAL PREPARAR LA INSTALACIÓN: Para la instalación se requiere un CD que contiene el Setup del
Sistema y se verifica su contenido:
Figura 1. Preparación para la instalación
Se ejecuta el Setup dando doble click en el icono A continuación se presenta la pantalla de copia de archivos:
Figura 2. Pantalla de copia de archivos
131
Previo a comenzar la instalación se despliega el aviso: “Cerrar todas las
aplicaciones abiertas para que la instalación se efectúe correctamente”, dar click
en Aceptar para continuar con el proceso de instalación.
Figura 3. Aviso de cerrar todas las aplicaciones
BIENVENIDA A LA INSTALACIÓN: Al dar un click en aceptar; se despliega la pantalla de bienvenida a la instalación
del sistema.
Figura 4. Pantalla Bienvenida a la instalación
132
Luego se presiona el botón :
Figura 5. Botón que inicia el proceso de instalación Inmediatamente se presenta la pantalla en la que se debe seleccionar el grupo de
programas:
Figura 6. Pantalla para seleccionar grupo de programas
PROCESO DE INSTALACIÓN: En la siguiente pantalla se muestra el proceso de instalación:
Figura 7. Pantalla de instalación de la aplicación
133
Cuando se han transferido todos los archivos y si no existe ningún error en la
instalación parece el mensaje de instalación finalizada correctamente:
Figura 8. Mensaje de instalación satisfactoria
VERIFICACIÓN DE LA INSTALACIÓN
Finalmente se verifica la instalación: Inicio, Programas y aparece en la lista la aplicación instalada.
Figura 8. Verificación de la instalación
134
ANEXOS
135
ANÁLISIS DE COSTOS
136
ANÁLISIS DE COSTOS
RECURSOS VALOR
Humanos: Analista
Programador
$ 360.00
$ 3200.00
$ 3560.00
Hardware: Computador 40 GB en disco duro
128 MB en Ram
Tarjeta de Red
Procesador Pentuim IV o más
Impresora a tinta
Monitor de 14 PDG
Teclado
Mouse
$ 700.00
Software: Rational Rose
Visual Basic 6.0
SQL Server 2000
$ 200.00
$ 500.00
$ 750.00
$ 1450.00
Gastos Varios: Hojas de papel bond
Diskettes y Cds
Cartuchos de Impresora
Luz, alimentación, transporte
$ 150.00
$ 500.00 $ 650.00
TOTAL $ 6360.00
COSTO DE RECURSOS HUMANOS: Analista: Costo por hora $ 10.00 Programador: Costo por hora $ 10.00
Total de horas 36 Total de horas 320
Costo: $ 360.00 Costo: $ 3200.00
137
COSTO DEL SOFTWARE:
Total: $ 1450
Costo por hora= 1450/3 = 483.33
483.33/12/20/4 = $ 0.50 Costo por hora del software
COSTO DEL HARDWARE:
Total: $ 700
Costo por hora= 700/12/20/4 = $ 0,72 Costo por hora del hardware