Post on 01-May-2020
CAPÍTULO IV DESARROLLO DE UN SISTEMA PARA ARCHIVO,
CONSULTA MÉDICA Y ENTREGA DE MEDICAMENTOS EN
FARMACIA, PARA AGILIZAR EL PROCESO DE ATENCIÓN A
PACIENTES EN EL HOSPITAL FRANCISCO MENÉNDEZ DE
AHUACHAPÁN
1. GENERALIDADES
El presente capitulo contiene el esquema general de la solución a la problemática
encontrada en la investigación realizada, en el proyecto, “Desarrollo de un sistema
para archivo, consulta médica y entrega de medicamentos en farmacia, para agilizar
el proceso de atención a pacientes en el Hospital Francisco Menéndez de
Ahuachapán”.
Se ha concretado que el desarrollo de la aplicación contribuirá al mejor desempeño y
servicio en las áreas involucradas, además de beneficiar a los habitantes del
departamento de Ahuachapán, ya que se disminuirá el tiempo en la realización de
una consulta médica, y muchos otros beneficios que se mencionan con más detalle
mas adelante en este documento.
La propuesta anteriormente descrita es el resultado de una investigación de campo,
la cual estuvo orientada a conocer las diferentes problemáticas en las que se ven
involucrados los empleados que trabajan en las áreas de archivo, consulta medica y
farmacia del Hospital Nacional Francisco Menéndez de Ahuachapán.
Así también se ha tomado en cuenta como punto prioritario las necesidades de
atención de los pacientes que se acercan a recibir un servicio en el centro
hospitalario del departamento de Ahuachapán.
2. OBJETIVOS DEL PROYECTO.
2.1 OBJETIVO GENERAL:
Automatizar el sistema de archivo, consulta médica y entrega de medicamento en
farmacia a pacientes del Hospital Nacional Francisco Menéndez de Ahuachapán,
para agilizar el proceso que conllevan a la calidad de prestación de servicios de
atención a pacientes.
2.2 OBJETIVOS ESPECIFICOS:
• Realizar una investigación de campo tomando como objeto de estudio las
personas que laboran en las áreas antes mencionadas y pacientes a ser
atendidos en ellas para identificar los requerimientos necesarios para el
desarrollo de la herramienta de software adecuada.
• Desarrollar el módulo de archivo que permita a los empleados de dicha área,
agilizar los procesos que en este se realizan, tales como búsquedas de
expedientes, creación de historiales clínicos, prestamos de documentos
médicos entre otros.
• Desarrollar el módulo consulta médica que ayude a realizar un mejor control
de las citas que en el consultorio médico se asignen y a la vez proporcionar
automáticamente al módulo de farmacia la descarga de medicamentos; Así
como vincular el módulo que actualmente se encuentra implantado en
farmacia con el módulo de consulta médica y presentar los resultados de cada
uno de los módulos a desarrollar.
3. BENEFICIOS DEL PROYECTO.
Los resultados esperados al finalizar el proyecto de diseño del Sistema de salud
para archivo, consulta médica y farmacia son:
• Satisfacer al paciente en el proceso de archivo, consulta médica y entrega de
medicamento en farmacia con la disminución de tiempo de espera en el
centro hospitalario.
• Auxiliar a los empleados que se desempeñan en las áreas de archivo,
consulta médica y farmacia con una herramienta que les permita reducir los
tiempos que utilizan en los procesos que realizan con los pacientes.
• Se evitará a través del uso de este software la generación de problemas
como: la sobrecarga de documentos en las áreas involucradas, la falta de
atención al paciente, la saturación de trabajo por parte de los empleados.
• Se tendrá la interconexión de las tres áreas mencionadas con el fin de
compartir la información requerida por cada una de éstas.
4. ALCANCES DEL PROYECTO
4.1 ALCANCES
Con este proyecto se espera lograr una propuesta que permita la modernización del
sistema de salud en las áreas de archivo, consulta médica y farmacia del Hospital
Nacional Francisco Menéndez, el desarrollo de este proyecto concluirá en una
herramienta de software para el uso de las áreas mencionadas.
Directamente se espera dar solución a la problemática que el Hospital Nacional
Francisco Menéndez siempre ha tenido, la cual es el consumo de tiempo excesivo en
la atención a sus usuarios y por ende la insatisfacción por parte de estos cuando
hacen uso del Centro Hospitalario.
Así mismo se pretende crear una solución más eficaz al problema de la entrega de
medicamentos en el área de farmacia y también las excesivas colas de pacientes
que se acumulan en las diferentes áreas lo cual ocasiona que el servicio no sea el
que los pacientes esperan.
Debido a la naturaleza del proyecto se espera sea implantado en corto tiempo ya que
de ser ejecutado los habitantes del departamento de Ahuachapán podrán gozar de
los beneficios que este presenta.
El sistema se implantara una vez que los recursos necesarios sean proporcionados
por el ministerio de salud o cualquier organismo que proporcione donaciones para
ejecutar la fase final y su posterior mantenimiento.
5. DESARROLLO DEL SISTEMA AUTOMATIZADO PARA ATENCION
DE PACIENTES DEL CENTRO HOSPITALARIO FRANCISCO
MENÉNDEZ DE AHUACHAPÁN
5.1 ESTUDIO DE FACTIBILIDAD
En los siguientes puntos se realizara un estudio sobre lo factible de la
implementación del sistema automatizado para atención de pacientes del centro
hospitalario Francisco Menéndez del departamento de Ahuachapán, como punto de
partida se realizo un estudio de factibilidad técnica para determinar que equipo se
necesita para ejecutar el proyecto, seguidamente un estudio sobre factibilidad
económica para la determinación de costos y por ultimo un estudio sobre factibilidad
operativa con esta ultima se observara la oportunidad de implementación del sistema
automatizado en las áreas mencionadas con anterioridad.
5.2 FACTIBILIDAD TÉCNICA
El sistema automatizado para atención de pacientes SAHFRAMEN9, se basa en el
modelo cliente/servidor el cual centraliza los datos en un servidor al que los clientes
solicitan información, debido a la utilización de este modelo se hace necesario que la
información que viaja del y hacia el servidor fluya a gran velocidad y partiendo de
una arquitectura de datos desconectados la cual es pretende utilizar para obtener un
mayor rendimiento, es muy importante el almacenamiento temporal en memoria. Por
lo consiguiente es de mucho peso que el equipo servidor sea provisto de un tamaño
de memoria RAM que permita este almacenamiento.
Actualmente en el centro hospitalario cuenta con equipo en las áreas de archivo y
farmacia.
En el área de archivo el equipo se encuentra fuera de uso, debido a que se
encuentra con problemas de hardware, en el área de farmacia el equipo es utilizado
para fines administrativos por lo que se hace necesario adquirir nuevo equipo para
todas las áreas involucradas en la solución que se presenta en este documento, a
continuación se muestra el modelo Cliente/Servidor para la estructura de la red.
Figura12. Modelo Cliente/Servidor
Para implantar esta solución se necesitará el siguiente equipo:
• 11 Estaciones de trabajo
• 1 Servidor
• Switch 16 puertos
• 7 Impresores
• 12 UPS
A continuación se presentan las características técnicas mínimas para el equipo de
las estaciones de trabajo, se ha tomado en cuenta la arquitectura de datos en la cual
trabajarán las diferentes estaciones (11 estaciones de trabajo)
• Procesador Intel Celeron 1 GHZ o superior
• Disco Duro 10 GB
• Memoria RAM 128 MB DDR
• Tarjeta de red 10/100
• Monitor SVGA
• Teclado
• Mouse
• Sistema Operativo (Microsoft Windows XP o Superior)
• Microsoft .NET Framework Versión 1.0
Para el equipo servidor se necesitara las siguientes características técnicas mínimas,
debido a la alta demanda de información y al alto grado de seguridad que este debe
tener se ha optado por el siguiente equipo (1 servidor):
• Procesador Pentium D 925 Dual Core 3.0GHZ/ 2X2MB/ 800Mhz FSB
9 Sistema Automatizado Hospital Francisco Menéndez
• Disco Duro 80GB, SATA, 3.5-inch, 7.2K RPM (HDD)
• Memoria RAM 1GB DDR2,533MHZ
• CD-RW/DVD de 24X
• Tarjeta de Red Integrada 10/100/1000
• Monitor SVGA
• Teclado
• Mouse
• UPS
• Sistema Operativo (Microsoft Small Business Server 2003)
• Microsoft Access 2003
Requerimientos mínimos para el equipo de impresión (7 Impresores)
• Impresor canon PIXMA iP1300
El equipo utilizado para la conexión de las diferentes Terminales y servidor deberá
tener las siguientes características técnicas para que la red tenga un buen
rendimiento (1 Switch)
• SWITCH Puertos 10/100/1000 (16 puertos)
• Auto-Negociación (Velocidad, modo duplex y control de flujo)
• Capacidad de Transferencia (23.7 Mpps)
• Capacidad de Switcheo (32 Gbps)
Las características mínimas del equipo de protección para todo el conjunto que
conforma la arquitectura de la red será la siguiente (12 UPS)
• UPS 620VA
5.3 SELECCIÓN DE LA METODOLOGIA DE ANALISIS DE SISTEMA
Para la evaluación de cada alternativa se realizara un análisis FODA (Fortalezas,
Oportunidades, Debilidades, Amenazas).
Las metodologías a evaluar son:
• METODOLOGIA ESTRUCTURADA
• METODOLOGIA ORIENTADA A OBJETOS
• METODO ESTRUCTURADO
A continuación se presentan algunas características y componentes que son
utilizados en el método estructurado para el análisis de sistemas.
El análisis y diseño estructurado proporciona un enfoque sistemático para el diseño y
construcción de sistemas de cómputo de calidad. A lo largo de las fases de análisis y
diseño, el analista debe proceder paso a paso obteniendo retroalimentación de los
usuarios y analizando el diseño, buscando omisiones y errores. El pasar demasiado
rápido a la siguiente fase puede requerir que el analista tenga que regresar para
volver a trabajar en partes anteriores del diseño. Supongamos que se omitieron
elementos cuando el analista estaba examinando los detalles de los datos usados en
el sistema. Si el analista se dio cuenta que estos elementos se olvidaron después de
que habían sido escritos los programas, tendrán que ser modificadas las
presentaciones de archivos, reportes y pantallas, así como los archivos de datos de
prueba, programas y documentación. Esas correcciones pueden llevarse 100 horas
y, en cambio la edición de ellas a los materiales de diseño y a los programas para
que fueran parte del diseño original desde el principio hubiera tomado solamente
cuatro horas.
• Representación grafica de sistemas
Un sistema o subsistema, tal como existe dentro de la organización corporativa,
puede ser representado gráficamente en varias formas. Los diversos modelos
gráficos muestran las fronteras del sistema y la información usada dentro del
sistema.
• Los sistemas y el diagrama del flujo de datos a nivel contexto
El primer modelo es el diagrama de flujo de datos a nivel contexto (también llamado
modelo ambiental). Los diagramas de flujos de datos se enfocan en los datos
fluyendo hacia adentro y fuera del sistema y el procesamiento de los datos. Estos
componentes básicos de todo programa de computadora pueden ser descritos a
detalle y usados para analizar el problema con respecto a su precisión y totalidad.
El diagrama a nivel de contexto emplea solamente tres símbolos:
1- Un rectángulo con esquinas redondeadas.
2- Un cuadrado con dos orillas sombreadas.
3- Una flecha.
• Los sistemas y el modelo entidad – relación
Una manera en que un analista de sistemas puede definir las fronteras adecuadas
del sistema es usar un modelo entidad- relación. Los elementos que conforman un
sistema organizacional pueden ser llamados entidades. Una entidad puede ser una
persona, un lugar o una cosa, tal como un pasajero de una línea aérea, un destino o
un avión. En forma alterna, una entidad puede ser un evento, tal como el mes, un
periodo de ventas o la falta de una maquina. Una relación es la asociación que
describe la interacción entre las entidades.
El formato estándar para trazar un diagrama entidad- relación (o E_R), usa
solamente dos símbolos: un rectángulo y un rombo. El rectángulo es usado para
mostrar una entidad, y el rombo representa la relación entre esa entidad y otra
entidad. El diagrama siempre es trazado poniendo en la parte superior a la entidad
primaria.
• El enfoque de flujo de datos para la determinación de requerimientos
Cuando los analistas de sistemas tratan de comprender los requerimientos de
información de los usuarios, deben ser capaces de conceptualizar la forma en que
los datos se mueven a través de la organización, los procesos o transformaciones
que sufren los datos y lo que la investigaciones de datos relevantes proporcionan
una narración verbal del sistema, una representación visual puede cristalizar esta
información en una forma útil. Mediante una técnica de análisis estructurado llamada
diagrama de flujo de datos (DFD), el analista de sistemas puede reunir una
representación gráfica de los procesos de datos a lo largo de la organización. El
enfoque de flujo de datos enfatiza la lógica subyacente del sistema. Mediante el uso
de combinaciones de solamente cuatro símbolos, el analista de sistemas puede crear
una representación pictórica de los procesos que eventualmente proporcionan
documentación firme del sistema.
• LENGUAJE ESTRUCTURADO
Cuando la lógica de proceso involucra formulas o iteraciones, o cuando las
decisiones estructuradas no son compleja, una técnica adecuada para el análisis del
proceso de decisión es el uso del lenguaje estructurado. Como su nombre lo indica,
el lenguaje estructurado esta basado en:
1- Lógica estructurada o instrucciones organizadas en procedimientos anidados
y agrupados.
2- Enunciados en lenguaje simple, tales como sumar, multiplicar, mover.
Etcétera.
• Árboles de decisión
Los árboles de decisión se usan cuando suceden ramificaciones complejas en un
proceso de decisión estructurado. Los árboles también son útiles cuando es esencial
mantener una cadena de decisiones en una secuencia particular. Aunque el árbol de
decisión deriva su nombre de los árboles naturales son trazados generalmente de
lado, con la raíz del árbol al lado izquierdo del papel y ramificaciones hacia la
derecha. Esta orientación permite al analista escribir en las ramas para describir las
condiciones y acciones.
FORTALEZAS
• Método común de análisis de sistemas, lo cual permite que la mayor parte de
los analistas lo entiendan.
• Es un método fácil de entender y fácil de implementar.
• La documentación sobre este método es abundante.
OPORTUNIDADES
• Permite realizar un desarrollo estándar, y aceptable.
• Contar con una herramienta de análisis que ayude a los programadores a
entender lo que se quiere diseñar.
• Fomenta buenas prácticas para desarrolladores de sistemas.
• Las correcciones se realizan en la parte de diseño.
DEBILIDADES
• Método anticuado utilizado para el análisis de sistemas, con las nuevas
tendencias de desarrollo los métodos estructurados no permiten modelar
fases dinámicas que para los programadores sean de gran utilidad, el cambio
en un una parte de un nivel superior en el diseño implica una restructuración
que conlleva mucho esfuerzo y tiempo.
• Una vez que se crea el diseño el programador estará limitada a usar el diseño
que se creo, de lo contrario la modificación del diseño requiere modificaciones
mayores en todo el desarrollo.
• Es un método no flexible.
• Ciertas características importantes no son abarcadas por esta metodología.
• No permite tener diferentes vistas sobre el todo y las partes del sistema que se
analiza.
AMENAZAS
No permitir la evolución del sistema en un caso más específico, sabiendo en la
actualidad existen numerosos métodos orientados a objetos y que las tendencias
continúan a usar estos métodos, es muy indispensable que un sistema sea
desarrollado desde la perspectiva Orientada a Objetos.
Las correcciones no son flexibles, esto es que una vez se termine de corregir las
partes que en algún momento ocasionaron un mal diseño, se prosigue con el resto
de la metodología.
• METODO ORIENTADO A OBJETOS (con UML)
En el capitulo 2 de este documento se han abordado los diferentes componentes y
características del lenguaje unificado de modelado, en esta sección se presenta un
panorama resumido del método orientado a objetos.
Han existido dos grandes cambios desde aquellos sistemas meramente algorítmicos
donde todo el esfuerzo de desarrollo se centraba en la escritura de programas que
realizaran algún tipo de cálculo. El primero de ellos es la aparición del modelo
relacional, un modelo con fuerte base matemática que supuso el desarrollo las bases
de datos y propició la aparición de los grandes sistemas de información. El segundo
cambio es sobre los lenguajes de programación, la aparición de los Lenguajes
Orientados a Objetos UML (Unified Modeling Languaje, Lenguaje Unificado de
Modelado). Lo que UML proporciona son las herramientas necesarias para poder
obtener los planos del software equivalentes a los que se utilizan en la construcción,
la mecánica o la industria aerospacial. UML abarca todas las fases del ciclo de vida
de un proyecto, soporta diferentes maneras de visualización dependiendo de quién
tenga que interpretar los planos y en que fase del proyecto se encuentre.
• Modelado
Para producir software que cumpla su propósito hay que obtener los requisitos del
sistema, esto se consigue conociendo de una forma disciplinada a los usuarios y
haciéndolos participar de manera activa. Se construyen modelos para poder
comunicarnos con otros, para explicar el comportamiento del sistema a desarrollar,
para comprender, nosotros mismos, mejor ese sistema, para controlar el riesgo y en
definitiva para poder atacar problemas que sin el modelado su resolución seria
imposible, tanto desde el punto de vista de los desarrolladores.
• Ventajas de la orientación a objetos
Las ventajas más importantes de la programación orientada a objetos son las
siguientes:
• Mantenibilidad (facilidad de mantenimiento). Los programas que se diseñan
utilizando el concepto de orientación a objetos son más fáciles de leer y
comprender y el control de la complejidad del programa se consigue gracias a la
ocultación de la información que permite dejar visibles sólo los detalles más
relevantes.
• Modificabilidad (facilidad para modificar los programas). Se pueden realizar
añadidos o supresiones a programas simplemente añadiendo, suprimiendo o
modificando objetos.
• Resusabilidad. Los objetos, si han sido correctamente diseñados, se pueden usar
numerosas veces y en distintos proyectos.
• Fiabilidad. Los programas orientados a objetos suelen ser más fiables ya que se
basan en el uso de objetos ya definidos que están ampliamente testados.
Estas ventajas son directas a los programadores. Estos, se podría decir, que son los
ejecutores de un determinado proyecto software. Pero la orientación a objetos no
sólo reporta beneficios a los programadores. En las etapas de análisis, previas a la
codificación, el utilizar un modelado orientado a objetos reporta grandes beneficios
ya estas mismas ventajas son aplicables a todas las fases del ciclo de vida de un
proyecto software. La tendencia actual es a tratar temas conceptuales de primer
plano (o sea, en las fases de análisis) y no temas finales de implementación. Los
fallos durante la etapa de implementación son más difíciles de corregir y más
costosos que si se dan en las etapas previas. El modelado orientado a objetos tiende
al refinamiento sucesivo de manera que se llega a la etapa de implementación con
un diseño lo suficientemente explícito para que no existan casos inesperados y todo
independientemente del lenguaje de programación (salvo en etapas muy próximas a
la implementación donde no hay más remedio que contar con el soporte que se
recibe del lenguaje elegido).
FORTALEZAS
• Es un método moderno de desarrollo de sistemas que permite mucha
flexibilidad.
• Permite seleccionar entre una variedad de modelos para el desarrollo del
sistema.
• Utilizar UML ayuda a tener un control total en todas las fases del ciclo de vida
del sistema.
• Existe una gran cantidad de documentación sobre esta metodología.
• Es una metodología estándar y muy conocida e utilizada.
• Se adapta al sistema que se desarrolla.
OPORTUNIDADES
• Permite crear un sistema flexible al cambio.
• Tener adaptabilidad en la incorporación e integración con nuevos sistemas.
• Se puede modificar una parte sin afectar el todo.
• Interactuar mejor con los usuarios del sistema y con todo el equipo de
desarrollo.
• Permite observar los avances en cualquier instante del desarrollo.
• Se crean modelos y con esto se tiene un panorama simple o abstracto del
sistema.
DEBILIDADES
• Una gran parte de la comunidad de analistas, desarrolladores optan por
seguir utilizando métodos estructurados como metodologías de desarrollo.
• Existe cierta complejidad de los componentes que se modelan.
• Los lenguajes de programación deben ser con características Orientados a
Objetos.
AMENAZAS
• Las empresas que actualmente usan el análisis estructurado no son
consientes de los beneficios que se obtiene de usar métodos modernos para
el desarrollo de sistemas.
Conclusión
Una vez realizado el análisis de las metodologiaza, se ha tomado la decisión de optar
por un método moderno y flexible en este caso el método orientado a objetos
utilizando para ello el lenguaje unificado de modelado (uml).
5.3.1 ENTORNO TECNOLOGICO PARA EL DESARROLLO E
IMPLANTACION DE LA APLICACIÓN
Para la selección del lenguaje de programación, el sistema gestor de base de datos y
el sistema operativo se usara la técnica de evaluación: Análisis de características
(ingeniería de software shari lawrence).
El análisis de características es un tipo simple de valoración la cual se utiliza para
tasar y categorizar los atributos de varios productos a fin de facilitar la decisión
acerca de que herramienta utilizar.
Para realizar este análisis se realizan los siguientes pasos:
1) Identificación de herramientas posibles y descripción de estas.
2) Listar atributos claves que deberá tener la herramienta o atributos clave a
evaluar.
3) Crear listado de evaluación y Listado de Importancia.
4) Crear matriz de evaluación.
5) Realizar el cálculo de, cada uno de los elementos del listado de importancia
con el listado de evaluación y sumar cada resultado y totalizarlo al final de
cada herramienta a evaluar.
6) Una vez realizado el cálculo el que obtenga mayor puntaje será la herramienta
que se utilizará.
5.3.1 1. SELECCIÓN DEL LENGUAJE DE PROGRAMACION
En esta sección se realizara un estudio sobre la elección del lenguaje de
programación con el cual se pretende codificar la aplicación.
1) Conociendo la metodología a utilizar en el desarrollo del sistema automatizado
la cual consiste en el modelado con UML, se presentan algunos lenguajes de
programación que permiten llevar los modelos a código fuente, como
alternativas para la codificación de la aplicación, se han tomado en cuenta tres
lenguajes los cuales se mencionan a continuación:
• SUN, JAVA
Los orígenes de Java se remontan al año 1990, cuando un equipo de la compañía
Sun Microsystems investigaba, bajo la dirección del ingeniero James Gosling, en el
diseño y elaboración de software para pequeños dispositivos electrónicos de
consumo. En un primer momento se pensó en la utilización de lenguajes de
programación como C o C++, pero para poder compilar un programa en estos
lenguajes es preciso adaptarlo a las características de la plataforma en la que debe
funcionar, esta situación constituía un gran inconveniente para las compañías
dedicadas a la construcción de dispositivos electrónicos, pues cada pocas semanas
aparecen en el mercado versiones más potentes y baratas de los chips utilizados, y
por lo tanto, el software que se había diseñado para un chip determinado debía
modificarse y adaptarse para explotar las características de los chips de reciente
aparición. Se hace patente la necesidad de introducir un nuevo lenguaje de
programación, que permita desarrollar programas independientes del tipo de
plataforma. Los dispositivos que se pretenden fabricar son calculadoras, relojes,
equipos de música, cafeteras, etc., que no tienen una gran capacidad computacional,
por lo que el nuevo lenguaje debe ser capaz de generar programas pequeños y
rápidos, además de ser fiables y robustos.
Java es un lenguaje de programación orientado a objetos de propósito general,
según indican desde Sun Microsystems, Java es un lenguaje creado para realizar
una programación en Internet rápida y fácil, rápida y fácil si ya poseemos
conocimientos previos de C++ y de programación. Aunque no se debe considerar a
Java como una herramienta exclusiva y únicamente para la programación en
Internet, ya que su uso, lejos de restringirse a este campo, puede y debe extenderse
a problemas y situaciones de todo tipo, por lo tanto para evitar confusiones el
lenguaje Java se podría definir mejor de la siguiente forma: Java es un lenguaje de
programación orientado a objetos, de propósito general que presenta características
especiales que lo hacen idóneo para su uso en Internet. Una de estas características
son los applets. Un applet es un programa dinámico e interactivo que se puede
ejecutar dentro de una página Web que se carga en un navegador Web, y otra
característica para la utilización de Java en Internet son los servlets. Un servlets es
una aplicación Java que se ejecuta sobre un servidor y que atiende una serie de
peticiones realizadas desde un cliente que será un navegador Web. A diferencia de
los applets los servlets no presentan interfaz gráfico. Java toma prestadas
características y sintaxis de diferentes lenguajes de programación. La sintaxis básica
de Java está sacada del lenguaje C/C++ aunque al contrario de estos lenguajes Java
es un lenguaje fuertemente tipado. Al ser un lenguaje de Programación Orientada a
Objetos, la unidad básica dentro de la programación en Java va a ser la clase y el
objeto. Java está compuesto por un gran número de clases que se agrupan y
clasifican en paquetes, en el capítulo dedicado a la POO con Java veremos como se
estructura la jerarquía de clases que presenta el lenguaje.
Una polémica entorno a Java se produjo cuando Microsoft lanzó su versión del
lenguaje, a través de su herramienta de desarrollo Visual J++. Desde esta
herramienta corremos el peligro de generar código Java que sí sea dependiente de la
plataforma, en este caso de la plataforma Windows, y si estamos utilizando el
lenguaje Java es porque nos interesa su característica de independencia de la
plataforma, por lo tanto hay que ser cuidadosos en este aspecto. Las aplicaciones
Java son programas más generales que los applets. No requieren un navegador para
ejecutarse sólo necesitan de un intérprete de Java para la plataforma en la que se
ejecutarán, y pueden emplearse para realizar todo tipo de aplicaciones posibles. Una
de las primeras aplicaciones Java que se realizaron fue el navegador Web HotJava.
Una aplicación Java consiste en una o más clases, lo único que se necesita para
ejecutar una aplicación es tener una clase que funcione como punto de arranque
para el resto del programa.
Características sobresalientes de la plataforma JavaBeans: inicialmente se puede definir un JavaBean como un componente
software reutilizable, que puede ser manipulado visualmente en una herramienta de
desarrollo. Consta de una colección de una o más clases Java que suelen
encontrarse en un único fichero JAR (Java Archive). Un JavaBean sirve como un
objeto independiente y reusable. El API de los JavaBeans define un modelo de
componentes software para Java JDBC 2.0: JDBC es un API para ejecutar
sentencias SQL (Structured Query Language), que ofrece un interfaz estándar para
el acceso a bases de datos. Ofrece un acceso uniforme a un amplio número de
bases de datos. El código de este API está completamente escrito en Java, de hecho
se encuentra en el paquete java.sql, por lo tanto ofrece también independencia de la
plataforma. Está basado y es muy similar a ODBC (Open Database Connectivity).
Usando JDBC es muy sencillo enviar sentencias SQL a cualquier base de datos
relacional, gracias al API de JDBC no es necesario escribir un programa que acceda
a una base de datos Sybase, otro programa que acceda a una base de datos Oracle
u otro que acceda a una base de datos Informix, el mismo programa servirá para
ejecutar las sentencias SQL sobre todas estas bases de datos. Básicamente JDBC
permite: establecer una conexión con una base de datos, enviar sentencias SQL y
procesar los resultados. En la versión 2.0 de JDBC se ha mejorado el acceso a datos
haciéndolo más potente a través de la creación de diferentes tipos de cursores para
acceder a los datos.
• Microsoft Visual C Sharp
El lenguaje C# se presenta como el último invento en materia de lenguajes de
programación, y constituye también la más reciente y ambiciosa apuesta en este
sentido por parte de Microsoft. Quizás, lo primero que habría que aclarar, es que,
de todo el .NET Framework, es la única parte que puede considerarse terminada,
hasta el punto de que el propio Visual Studio .NET ha sido construido al 90% en
C# y el 10% restante en C++. Por otro lado, el lenguaje merece el calificativo de
estándar, en el sentido de que –al igual que algunos otros aspectos del entorno-
está siendo sometido a estandarización por parte de ECMA, la misma entidad de
normalización que llevó a cabo la estandarización de Javascript.
Características generales
Existen características comunes a todos los lenguajes del entorno .NET, que
lógicamente, ha heredado C#, y otras fruto de la propia concepción del lenguaje, sus
herencias de otros lenguajes y sus mejoras. Respecto a las características
heredadas cabe destacar: Exquisita implantación de la OOP, sin excepciones. En
C#, todo son objetos, incluyendo los tipos predefinidos. Se admite la herencia simple
de clases, y la múltiple de interfaces. Todos los objetos derivan de un objeto base:
System.Object. La palabra reservada internal permite establecer ámbitos de acceso
para los módulos de ensamblado. Sintaxis muy similar a Java y C++, pero
simplificada respecto a C++, con un juego de operadores abreviado. Nuevas
estructuras de control, como el bucle foreach para recorrer colecciones. Incorpora el
concepto de Property que existía en Visual Basic para normalizar el acceso a las
propiedades de una clase. Sobrecarga: C# (a diferencia de otros lenguajes del
entorno, como Visual Basic, o de fuera del entorno, como Java), permite la
sobrecarga de operadores.
Comprobación de rango de acceso en Arrays, de conversión de tipos, de
inicialización de variables, y de control de desbordamiento (overflow) C# como parte
del entorno .NET permite la conexión de dato utilizando ADO.NET el cual se describe
a continuación. ADO .NET es la nueva versión del modelo de objetos ADO (ActiveX
Data Objects), es decir, la estrategia que ofrece Microsoft para el acceso a datos.
ADO .NET ha sido ampliado para cubrir todas las necesidades que ADO no ofrecía,
ADO .NET está diseñado para trabajar con conjuntos de datos desconectados, lo
que permite reducir el tráfico de red.
El modelo de objetos de ADO .NET es mucho más rico que el de ADO. Incorpora
nuevas clases de datos y encapsula mucha más potencia de uso a la par que corrige
pequeños defectos de las versiones anteriores. Aprovechando la nueva arquitectura
de servicios de la plataforma .NET, ADO .NET puede ser usado como un servicio del
sistema, pudiendo ser utilizado por cualquier aplicación escrita en cualquier lenguaje.
En ADO .NET se emplean los DataSets en lo que en ADO se emplea Recordset. No
es sólo un cambio de nombre. En memoria y en rendimiento las cosas han cambiado
mucho. Un Recordset de ADO sólo puede contener un único resultado (fruto de
consultas complejas o no). En cambio, un DataSet puede representar un espacio de
múltiples tablas simultáneamente. Esto permite obtener una representación de
espejo de la base de datos a la que representa. En ADO .NET todos los accesos a
datos se realizan en contextos desconectados de la base de datos. En ADO, es
posible tener estructuras desconectadas, pero es una elección a tomar. Por defecto,
ADO está pensado para contextos con conexión. Además, ADO .NET realiza todos
los accesos a los servicios de datos a través del objeto DataSetCommand, lo que
permite personalizar cada comando en función del rendimiento y la necesidad del
programa (en ADO, el Recordset puede modificar datos a través de su API de
cursores, lo que muchas veces no es óptimo). ADO .NET está basado en una
arquitectura desconectada de los datos. En una aplicación de datos se ha
comprobado que mantener los recursos reservado mucho tiempo implica reducir el
número de usuarios conectados y aumenta el proceso del sistema al mantener una
política de bloqueos y transacciones. Al mismo tiempo, si la aplicación mantiene más
de un objeto simultáneamente, se encuentra con el problema de tener que estar
continuamente conectando con el servidor para alimentar las relaciones existentes
entre ambas, subiendo y bajando información vía RPC. Con ADO .NET se consigue
estar conectado al servidor sólo estrictamente necesario para realizar la operación de
carga de los datos en el DataSet.
De esta manera se reducen los bloqueos y las conexiones a la mínima expresión. Se
pueden soportar muchos más usuarios por unidad de tiempo y disminuyen los
tiempos de respuesta, a la par que se aceleran las ejecuciones de los programas. De
siempre, el recoger información de una base de datos ha ido destinado a realizar un
proceso con dicha información: mostrarla por pantalla, procesarla o enviarla a algún
componente. Frecuentemente, la aplicación no necesita una única fila, sino un buen
conjunto de ellas. Además, también frecuentemente, ese conjunto de filas procede
no de una tabla sino de una unión de múltiples tablas (join de tablas). Una vez que
estos datos son cargados, la aplicación los trata como un bloque compacto. En un
modelo desconectado, es envidiable el tener que conectar con la base de datos cada
vez que avanzamos un registro para recoger la información asociada a ese registro
(condiciones del join). Para solucionarlo, lo que se realiza es almacenar
temporalmente toda la información necesaria donde sea necesario y trabajar con
ella. Esto es lo que representa un DataSet en el modelo ADO .NET.
Un DataSet es una caché de registros recuperados de una base de datos que actúa
como un sistema de almacenamiento virtual, y que contiene una o más tablas
basadas en las tablas reales de la base de datos. Y que, además, almacena las
relaciones y reglas de integridad existentes entre ellas para garantizar la estabilidad
e integridad de la información de la base de datos. Muy importante es recalcar, que
los DataSets son almacenes pasivos de datos, esto es, que no se ven alterados ante
cambios subyacentes de la base de datos. Es necesario recargarlos siempre que
queramos estar “al día” en cuanto a datos se refiere.
• Microsoft Visual Basic.NET
Con la aparición de .NET Framework, y de Visual Basic .NET, como una de las
herramientas estrella para el desarrollo sobre esta nueva plataforma de trabajo,
estamos asistiendo a una evolución/revolución sin precedentes en el mundo de la
informática, que sitúa a este clásico de la programación en una posición difícil de
igualar y menos aún de superar. Visual Basic .NET (VB.NET a partir de ahora), como
cada nueva versión de las que han aparecido en el mercado de este producto,
incorpora, como es natural, un buen conjunto de novedades. Sin embargo, la
inclusión de Visual Basic en el entorno de .NET, añade también un compendio de
drásticos cambios para los programadores de versiones anteriores, derivados en su
conjunto, de la necesidad de afrontar con garantías de éxito el desarrollo de la nueva
generación de aplicaciones para Internet, objetivo perseguido por todas las
herramientas de desarrollo actuales.
Tales cambios, como decimos, son necesarios para la plena integración de Visual
Basic con el resto de lenguajes del entorno de .NET; un alto porcentaje, suponen la
mejora sobre ciertas características del lenguaje y la eliminación de aspectos
obsoletos, arrastrados por una compatibilidad, que en ocasiones como la actual, es
necesario dejar atrás; en otros casos, se trata de adaptar nuestras costumbres a
nuevos modos y hábitos de programar.
• Las soluciones aportadas por VB.NET
VB.NET aporta un buen número de características que muchos programadores de
VB hemos demandado desde hace largo tiempo. En cierto modo, algunas de estas
incorporaciones hemos de agradecérselas a la plataforma .NET, ya que al integrar
VB dentro del conjunto de lenguajes de .NET Framework, dichos cambios han sido
necesarios, no ya porque los necesitara VB, sino porque eran requisitos derivados de
la propia arquitectura de .NET. Entre las novedades aportadas por VB.NET tenemos
plenas capacidades de orientación a objetos (Full-OOP), incluyendo por fin, herencia;
Windows Forms o la nueva generación de formularios para aplicaciones Windows;
soporte nativo de XML; gestión de errores estructurada; un modelo de objetos para
acceso a datos más potente con ADO.NET; posibilidad de crear aplicaciones de
consola (ventana MS-DOS); programación para Internet mediante Web Forms; un
entorno de desarrollo común a todas las herramientas de .NET, etc. Pero todas las
mejoras efectuadas en VB.NET, han hecho que esta herramienta sufra una
renovación tan profunda, que marcan un punto de inflexión importante, haciendo que
muchos programadores opinen que estamos ante un nuevo lenguaje, más que una
nueva versión. A pesar de ciertas opiniones negativas, procedentes de los sectores
más conservadores de la comunidad VB, debemos recordar que el paso de VB3 a
VB4 también supuso importantes y profundos cambios en el modo en el que se
desarrollaban las aplicaciones por aquel entonces; sin embargo, todas aquellas
innovaciones han sido asumidas por el colectivo de desarrolladores y en la
actualidad sería impensable abordar la realización de un programa sin ellas.
Respecto a las motivaciones tecnológicas, la necesidad de poner a disposición del
programador una plataforma de desarrollo con plena potencia para abarcar los
requerimientos de las nuevas aplicaciones que están a punto de llegar, y que no
soporte incómodos, los tres derivados de antiguos modelos de programación, ha
desembocado en una tecnología totalmente nueva, que no arrastra pesadas
incompatibilidades, pero que sin embargo, permite la ejecución de componentes
basados en el anterior modelo de programación.
Al igual que C# y todos la familia de visual studio.Net, Visual Basic.Net no hace la
excepción en utilizar el renovado acceso a datos de ADO.NET que se describió
cuando se estudiaron las características de C Sharp. Visual Basic.Net utiliza las
mismas características de conexión de datos y la misma plataforma de ejecución
con las mismas sintaxis que habitualmente están acostumbrados los programadores
que utilizaron las versiones anteriores a la versión .NET
Existen multitud de lenguajes de programación: Visual Basic .NET (el motivo del
presente texto), C# .NET, Visual C++, Java, Pascal, FORTRAN, etc. Debido a este
hecho, cabría formularnos a continuación la siguiente cuestión: “ya que debemos
usar un lenguaje comprensible para el ordenador al desarrollar el programa, ¿no
sería más fácil que existiera un único lenguaje con el que poder desarrollar todos los
programas?, ¿por qué existe tal profusión de lenguajes de programación?”. Como
respuesta, podemos establecer una analogía entre varios oficios que utilicen
herramientas manuales. Cada oficio tiene una tarea concreta que resolver, y para
ello, el trabajador emplea un conjunto de herramientas especializadas que le ayudan
en dicha labor. El mismo caso podemos aplicar al desarrollo de programas. No es lo
mismo crear un programa para realizar la facturación de una empresa; que tener que
efectuar una serie de operaciones relacionadas directamente con los componentes
físicos del equipo; o elaborar cálculos científicos avanzados. Por este motivo, para
cada uno de estos problemas encontraremos un lenguaje que esté especializado en
alguna de estas áreas: gestión, matemático, hardware, etc.; y será ese el lenguaje
que debamos emplear, ya que estará dotado de un conjunto de utilidades que
ayuden al programador en los aspectos concretos que deba resolver.
2) Atributos a evaluar
ATRIBUTO CONCEPTO
Portabilidad Capacidad de ser utilizado con diversas plataformas de ambiente operativo.
Escalabilidad Capacidad de adaptación u agregación de nuevos componentes que mejoren el
lenguaje.
Rendimiento en el manejo de base
de datos
Rapidez en el acceso y en la ejecución de consultas a la base de datos.
Conectividad Capacidad de conectarse a diferentes sistemas gestores de bases de datos así
también la conexión ODBC (Open Data Base Connection).
Documentación Cantidad de información técnica relacionada al lenguaje.
Soporte Técnico Evalúa el soporte técnico que se puede obtener del lenguaje evaluado.
Costo Evalúa el costo promedio de la herramienta, tomando en cuenta que cuanto mas alto es
el criterio de evaluación es mas bajo el costo de la herramienta.
Listado de evaluación Listado de Importancia
3) Matriz de evaluación
Característica o Atributo Sun Microsystems,
JAVA
Microsoft C Sharp.NET
Microsoft
Visual Basic.NET
IMPORTANCIA
Portabilidad 4,16 3,12 3,12 4
Escalabilidad 3,18 4,24 4,24 6
Conectividad 2,12 4,24 4,24 6
Rendimiento en el
manejo de base de
datos
4,24 4,24 4,24 6
Documentación 2,8 2,8 3,12 4
Soporte 1,2 2,4 3,6 2
Costo 4,24 3,18 3,18 6
Puntaje 104 114 120
Criterio Ponderación
Regular 1
Bueno 2
Muy bueno 3
Excelente 4
Criterio Ponderación
Baja 2
Media 4
Alta 6
Con los resultados obtenidos del análisis anterior se puede concluir que la
herramienta mas adecuada para la codificación de la aplicación es Visual Basic.Net.
5.3.1.2 SELECCIÓN DEL SISTEMA GESTOR DE BASE DE DATOS
Una vez elegido el lenguaje de programación con el cual se codificara la aplicación
se pasa a la selección del sistema gestor de base de datos, para ello se sigue
utilizando la técnica de análisis de características:
4) Conociendo la metodología a utilizar en el desarrollo del sistema automatizado
la cual consiste en el modelado con UML, se presentan algunos lenguajes de
programación que permiten llevar los modelos a código fuente, como
alternativas para la codificación de la aplicación, los sistemas gestores de
bases de datos a evaluar, posteriormente se muestran los atributos para la
evaluación y por ultimo la matriz de evaluación. se han tomado en cuenta tres
lenguajes los cuales se mencionan a continuación:
• Microsoft SQL SERVER 2000
SQL Server es un Sistema de Gestión de Bases de Datos Relacionales (SGBDR),
desarrollado por Microsoft, que permite, como su propio nombre indica, la gestión de
un entorno de bases de datos relacional. SQL Server abarca, tanto el área de diseño,
como la de administración, proporcionando un interfaz bastante amigable con el
usuario. ¿Por qué se llama SQL Server?. Pues bien, se llama SQL porque utiliza este
lenguaje para la definición y manejo de los datos, y se llama Server porque dispone
de una parte servidora que se encarga de atender a los procesos clientes, que son
los que realizan las peticiones a éste; es decir, sigue una arquitectura
cliente/servidor. SQL Server utiliza una extensión al SQL estándar, que se denomina
Transact SQL. Esto quiere decir que soporta el SQL de ANSI, pero además se le han
añadido ciertas funciones adicionales, no contempladas en el estándar, y que son
específicas para este producto, es decir, si ejecutamos una sentencia del conjunto
adicional (Transact SQL) en otro SGBRD, éste no la entendería.
Como podemos comprobar, el mercado de la informática ha ido cambiando
sorprendentemente desde hace unos pocos años. Cuando surgió aquella maquina
que hoy denominamos PC, nadie podía imaginar que iba a desbancar de su puesto a
las grandes plataformas como el Sistema 36 de IBM VAX de Digital. Por aquel
entonces, principios de los ochenta, empezaban a implantarse las bases de datos
relacionales, sobre todo con ORACLE, pero ni por asomo podían ser utilizadas en los
PCs. ORACLE fue el nombre que se le dio a un proyecto, destinado a investigar el
modelo relacional, por aquel entonces algo utópico. Sin embargo, ante la falta de
resultados positivos, se decidió cancelar proyecto, y venderlo a Relational Software
Inc. (RSI).
En 1979, RSI lanzó al mercado la versión 2 ORACLE, que fue la primera base de
datos relacional en utilizar el lenguaje SQL. Fue un poco tarde cuando RSI decidió
cambiar su nombre por el de su producto estrella, ORACLE. Sin embargo, aparición
de dBase, de Ashton - Tate, supuso una revolución en el mundo de las bases de
datos para originando una batalla para ganar posiciones en este mercado. En el año
1988, ante el boom del PC, Ashton - Tate, IBM, Microsoft y Sybase, deciden aliarse
para sacar un nuevo producto al mercado: una base de datos relacional, para PC.
Este hecho supuso nacimiento de SQL - Server. A su vez, IBM y Microsoft se
comprometieron a desarrollar un nuevo entorno, dirigido a las bases de datos, capaz
de soportar SQL - Server, y le dieron el nombre de OS/2. A su vez, SQL Server fue
avanzando, adaptándose a las nuevas tendencias del mercado. Fue entonces
cuando la aparición de Windows NT reemplazó a OS/2 como soporte para SQL
Server. Desde entonces y hasta hoy, los SGBD relacionales más vendidos resultan
ser ORACLE y SQL Server.
• Características
SQL - Server 2000 introduce nuevas librerías de red, que permiten definir un entorno
distribuido de forma eficiente, posibilitando una gran conectividad, tanto de
servidores como de aplicaciones, en este tipo de entornos. Una funcionalidad nueva
que aparece en esta versión del SGBD es la de permitir al usuario definir sus propias
funciones. De esta forma se pueden definir funciones que oculten parte de la
complejidad que puede entrañar una consulta, no sólo para la posterior reutilización
de la misma, sino también teniendo en cuenta la abstracción para otros
programadores que puedan precisar su uso.
SQL - Server 2000 soporta tres nuevos tipos de datos con respecto a la anterior
versión, la 7, que son el bigint o entero de 8 bytes, sql_variant, que soporta el
almacenamiento de valores de distintos tipos, y table, que permite el almacenamiento
temporal de resultados para su uso posterior. Las nuevas características de
indexación permiten crear índices sobre campos calculados (no existen como tal en
la base de datos, sino que se calculan a partir de otros valores), así como especificar
si se desea construir estos índices de manera paralela, lo que aumenta la velocidad
de procesado. SQL - Server 2000 utiliza Kerberos como servidor de autenticación,
para acreditar el acceso al servidor que se realiza desde el cliente, así como diversas
técnicas de seguridad.
• ORACLE
El servidor Oracle es un sistema de gestión de Bases de Datos, relacional - objeto,
que suministra una aproximación abierta y compresiva del manejo de información.
• Usuarios de la Base de Datos Oracle
Un usuario de base de datos se puede conectar a un servidor Oracle de una de las
siguientes maneras:
• Conexión directamente en el host, esto es, la máquina que ejecuta el servidor
oracle.
• Usando una conexión a dos niveles (cliente - servidor), donde la máquina en la
que el usuario está conectado, está conectada directamente a la que está
ejecutando el servidor oracle.
• Utilizando una conexión a tres niveles, en la que la máquina del usuario se
comunica a una aplicación o un servidor de red, que a su vez está conectado a
través de una red a la máquina que ejecuta el servidor oracle. Los usuarios de la
Base de Datos envían comandos SQL directamente utilizando una herramienta
como SQL*PLUS, o utilizando una aplicación que contiene sentencias SQL. El
servidor oracle procesa estos comandos y devuelve los resultados a los usuarios.
• Conexión a una Base de Datos
Pasos para conectarse a una Base de Datos:
• Iniciar una herramienta como SQL*Plus o ejecutar una aplicación desarrollada
utilizando una herramienta como Developer/2000 Forms, creando un user
process. En un modelo cliente - servidor, la herramienta o la aplicación se ejecuta
en la máquina del cliente.
• En la configuración más básica, cuando un usuario se anota en el servidor Oracle
especificando un nombre de usuario, clave y una base de datos, se crea un
proceso en la máquina que es ejecutada en el servidor Oracle. Este proceso
recibe el nombre de server process. Este proceso del servidor se comunica con el
servidor Oracle en nombre del proceso del usuario que se ejecuta en el cliente.
• Sesiones
Una sesión es una conexión especificada de un usuario con un Servidor Oracle.
Comienza cuando el usuario es validado por el Servidor Oracle, y finaliza cuando el
usuario se desconecta o se produce una interrupción anormal. Para un usuario de
bases de datos son posibles varias sesiones concurrentes si éste se anota desde
varias herramientas, aplicaciones o terminales al mismo tiempo. Excepto para alguna
herramienta de administración de bases de datos especializada, el inicio de una
sesión en una BD requiere que el servidor Oracle esté disponible para ser utilizado.
• Soluciones De Problemas
El mensaje de error Oracle “ORA-01034: Oracle no disponible” ocurre cuando un
usuario o una aplicación intenta conectarse a un servidor Oracle que no está
disponible para ser utilizado. Para resolver esto, el administrador de la base de datos
necesita arrancar el servidor Oracle.
PROCESO DEL USUARIO (conocido como cliente tiene las siguientes propiedades) Se ejecuta en la máquina del cliente, en la máquina donde se conectó. Se crea
cuando se invoca una aplicación o herramienta. Ejecuta la herramienta o aplicación
(SQL*PLUS, OEMGR, Developer/2000). Incluye el Programa Interfaz del Usuario
(UPI). Genera llamadas al servidor Oracle.
• PROCESO DEL SERVIDOR
Tiene las siguientes características:
• Se ejecuta en la misma máquina que el servidor Oracle.
• En la más sencilla configuración conocida como un servidor dedicado, cada
proceso del servidor da servicio solo a un proceso de usuario. El proceso servidor
da comienzo cuando el usuario solicita conexión y generalmente se termina
cuando el usuario se desconecta.
• �Cada proceso del servidor utiliza un área de memoria denominada el Area Global
del Programa (PGA). El PGA se describe en una sección posterior a cada
sección.
• El proceso del servidor utiliza el Programa Interfaz Oracle (OPI), que es usado
para comunicarse con el Servidor Oracle, a instancia del proceso del usuario.
• El proceso del servidor devuelve la información del estado y los resultados al
proceso del usuario.
El servidor Oracle consta de una “instance” y una base de datos Oracle. El Oracle
Instance consta de una estructura de memoria llamada Area Global del Sistema
(SGA), y de unos procesos background utilizados por el servidor Oracle para manejar
una base de datos. Cada Oracle Instance, que se identifica por su ORACLE_SID,
puede abrir y utilizar solo una base de datos en cualquier punto y momento.
• Área Global del Sistema (SGA)
Las estructuras de memoria de un instance Oracle están contenidas en la región de
memoria llamada SGA, que contiene datos de información de control para el servidor
Oracle. La SGA está situada en la memoria virtual del ordenador, donde reside el
servidor Oracle. La SGA está compuesta de varias estructuras de memoria,
incluyendo:
• Pool compartida: utilizada para almacenar la sentencia SQL más recientemente
ejecutada y los datos más recientemente utilizados del diccionario de datos.
• Buffer de redo log: utilizado para registrar los cambios hechos en la base de
datos.
• Procesos Background
Los procesos background de un instance realizan funciones que son necesarias para
atender las solicitudes de varios usuarios concurrentes, sin comprometer la
integridad y rendimiento de todo el sistema. Cada instance Oracle puede utilizar
varios procesos background, dependiendo de la configuración, pero cada una tiene,
por defecto, esos cinco procesos:
1. Escritor de Base de Datos (DBWR): responsable de escribir los cambios de datos
en la Base de Datos.
2. Escritor de Redo Log (LGWR): graba los cambios registrados en el buffer redo log
sobre los ficheros de redo log.
3. Monitor de Sistema (SMON): su función principal es controlar la consistencia e
iniciar la recuperación de la base de datos cuando esta abierta.
4. Monitor de Procesos (PMON): limpia los recursos si uno de los procesos falla.
5. Proceso de “checkpoints” (CKPT): responsable de actualizar la información del
estado de la BD cuando los cambios en el buffer de datos sean grabados de
forma permanente en la BD. Una base de datos Oracle, representa las
estructuras físicas y está compuesta de ficheros del sistema operativo.
• Ficheros de la Base de Datos
Los ficheros que constituyen la base de datos contienen datos del usuario e
información adicional que es necesaria para asegurar una operación adecuada de la
misma. Una Base de Datos Oracle consta de los siguientes tipos de ficheros:
• Ficheros de datos : almacena el diccionario de datos, objetos del usuario e
imágenes anteriores de datos que son modificados por las transacciones
actuales. Una BD tiene al menos un fichero de datos.
• Ficheros redo log: contienen una grabación de los cambios hechos en la BD
para asegurar su reconstrucción de datos en caso de fallos (una BD necesita el
menos dos ficheros redo log).
• Ficheros de control: contienen la información necesaria para mantener y
verificar la integridad de la BD (una BD necesita al menos un fichero de control).
Microsoft, Access 2003
• Características de Access
Las siguientes características corresponden a Microsoft Access:
• La ventana de la Base de datos es similar a la de Outlook.
• Soporte de nombres de archivos extensos.
• Posibilidad de crear accesos directos del escritorio para objetos de Access.
• Posibilidad de crear grupos de objetos personales dentro de la ventana Base de
datos.
• Posibilidad de establecer propiedades iniciales de la base de datos tales como
Maletín para mantener los datos y objetos de la replica sincronizados con la copia
original.
• Asistente para bases de datos que proporciona un “salto inicial” pudiendo crear
más de 20 tipos de aplicaciones comunes.
• Opción Autocorrección de nombre para extender otras aplicaciones basadas en
Windows a través de la automatización.
• Soporte para hipervínculos a través del producto.
• Posibilidad de crear páginas de acceso a datos HTML dinámicas para publicar los
datos en una intranet local.
• Integración con la facilidad de ayuda del Ayudante de Office.
• Opción Compacta al cerrar para mantener el tamaño mínimo de la base de datos.
• Posibilidad de especificar el número de bases de datos que desea visualizar en la
lista de bases de datos utilizadas recientemente.
• Posibilidad de crear un archivo de proyecto Access (extensión.adp) que combine
directamente las vistas y las tablas en una base de datos SQL Server en su
computadora local o a través de una red.
• Características de Windows
Access aprovecha la ventaja de muchas de las características que ofrece el entorno
Windows en cuanto a facilidad de uso. Si ha utilizado otros productos para Windows,
tales como Microsoft Excel o Microsoft Word, ya estará familiarizado con los menús,
barras de herramientas y listas desplegables de Access. Incluso si es nuevo en el
entorno de Windows, descubrirá que las técnicas que necesita para trabajar con lo
datos, le resultara muy familiar las características cortar, copiar y pegar para mover y
copiar datos y objetos dentro de Access. Además, Access proporciona la
característica de arrastrar y soltar, lo que será de gran ayuda a la hora de diseñar
consultas, formularios, informes y macros. Por ejemplo, podemos seleccionar un
campo de una tabla y, a continuación, arrastrar ese campo y soltarlo en la posición
en la que deseamos que aparezcan esos datos en un informe. También puede
seleccionar cualquier formulario o informe que utilice con frecuencia, y arrastrarlo
hacia su escritorio para que pueda acceder a él de forma fácil.
Una vez seleccionado un tipo de datos, Access visualiza en la parte inferior de la
ventana varios cuadros de propiedad en el área Propiedades del campo. Estos
cuadros permiten establecer las propiedades y de este modo establecer las
propiedades y de este modo personalizar el campo. Access muestra diferentes
cuadros, dependiendo del tipo de datos seleccionado; algunas de las propiedades
mostradas permiten valores predeterminados.
La columna Descripción de cada campo le brinda la posibilidad de introducir una
frase descriptiva para cada campo. Access visualiza esta descripción en la barra de
estado (en la parte inferior de la ventana de Access) siempre que seleccionamos
este campo en una consulta en vista Hoja de datos o en un formulario en vista
Formulario o en vista lo que escribe Hoja de datos. Lo que describe en el campo
Descripción podría obtener grandes dividendos dependiendo del tipo de “mini ayuda”
que obtengan los usuarios de la base de datos en la barra de estado. Además,
puesto que estos datos se muestran de forma automática. Probablemente no sea
una buena idea escribir algo así como No tengo la menor idea de que es lo que hace
este campo, ya que esta frase aparecerá más tarde en la barra de estado.
• Elección para el nombre de los campos
Microsoft Access ofrece la gran flexibilidad en la asignación de nombres a los
campos. Un nombre de campo puede tener una longitud de hasta 64 caracteres, y
puede incluir cualquier combinación de letras, números, espacios, y caracteres
especiales excepto un punto (.), un signo de admiración (!), una tilde (´), y corchetes
([ ]); sin embargo, el nombre no puede comenzar por espacio, y no puede incluir
caracteres de control (los valores ANSI entre el 0 y el 31). Normalmente, debería
asignar nombres descriptivos a los campos y utilizar el mismo nombre para un
campo que se repite en más de una tabla. Debería evitar, además, utilizar nombres
de campos que puedan coincidir con cualquier nombre interno de Microsoft Access o
Visual Basic. Por ejemplo, todos los objetos disponen de una propiedad Nombre, de
modo que seria aconsejable que denominase aquellos campos que contienen
nombres como NombreCliente o NombreClub. Además, debería evitar nombres que
coincidan con las funciones incorporadas, como por ejemplo Fecha, Hora, Ahora o
Espacio. La ayuda de Microsoft Access ofrece una lista de todos los nombres de las
funciones incorporadas.
Aunque en Access se puede utilizar en blanco en cualquier posición dentro de los
nombres de Access, debería inclinarse por no incluir espacios en parte de las bases
de datos SQL a las cuales Microsoft Access puede vincularse no soportan espacios
en los nombres. Si más tarde desea desplazar su aplicación a un verdadero entorno
cliente – servidor y almacenar sus datos en una base de datos SQL tal como Oracle
o Microsoft SQL Server, tendrá que cambiar el nombre de todas las tablas de su
base de datos que incluyan algún espacio en blanco. El nombre de los campos de
una tabla se propaga a las consultas, formularios, informes y paginas de acceso a
datos que se diseñen utilizando estas tablas. De modo que cualquier nombre que
decida cambiar en una tabla posteriormente, también deberá cambiarlo en todas las
consultas, formularios, informes y paginas de acceso a datos en los que interviene.
Access ofrece una nueva opción denominada Seguimiento para la Autocorrección de
nombre que hace que Access siga la pista y corriga las referencias de nombre de
campo en consultas, formularios e informes. Si elige Opciones en el menú
Herramientas y, a continuación, selecciona esta opción en la ficha General, Access
mantendrá un número de identificación único interno para todos los nombres de
campo. Cuando cambie un nombre de campo en una tabla, Access propagara el
cambio del nombre de forma automática. Sin embargo, esto requiere algunos ajustes
adicionales en todas las tablas, consultas, formularios e informes, de forma que
preste una especial atención en la elección de nombres cuando diseñe sus tablas.
• Cadenas de longitud cero y nulas
Las bases de datos relacionales soportan un valor especial en los campos de la
tabla, denominado NULO, que indica un valor desconocido. Los valores Nulos tienen
propiedades especiales. Un valor Nulo no puede ser igual a ningún otro valor, ni
incluso a otro Nulo. Esto significa que se puede vincular (enlazar) dos tablas
basándose en valores nulos. Además, la comprobación “A = B”, cuando A o B o
ambos contienen un valor nulo, da por resultado Falso, Finalmente, los valores nulos
no participan en los cálculos agregados que implican funciones tales como suma o
Promedio (media). Sin embargo, podemos comprobar la existencia de un valor nulo
comparándolo con la palabra reservada NULL o utilizando la función incorporada
IsNull (es Nulo).
En contraposición, podemos igualar los campos Memo o Texto a cadenas de longitud
cero para indicar que el valor del campo es conocido pero el campo esta vacío. Es
posible unir tablas basándose en cadenas de longitud cero y comparar la igualdad de
dos cadenas de longitud cero. No obstante, para los campos Memo, Texto e
Hipervínculo, debemos establecer la propiedad Permitir longitud cero a Sí para
permitir que los usuarios introduzcan cadenas de longitud cero. Si no hace estos,
Access convierte cualquier cadena de longitud cero, o cadena de todos blanco,
introducida por el usuario en un valor Nulo antes de ser almacenado en la base de
datos. Además, si establece la propiedad requerido de un campo de texto a Si,
Access almacena una cadena de longitud cero si el usuario introduce “” o blancos en
el campo.
Es muy importante diferenciar los Nulos de las cadenas de longitud cero por la
siguiente razón: suponga que dispone de una base de datos que almacena el
resultado de un estudio sobre las preferencias de los automóviles. Para las personas
encuestadas que no han respondido a la pregunta sobre las preferencias del color,
seria apropiado almacenar un valor Nulo, no deseara comparar las respuestas
basadas en una respuesta “incierta”, ni tampoco incluir la fila en los cálculos de
totales o promedios. Por otra parte, es posible que algunas personas puedan haber
respondido a la pregunta sobre su preferencia en el color: ”Me es indiferente”. En
este caso, tiene una respuesta conocida que es “ninguno”, y que seria apropiado
almacenar todas las respuestas “Me es indiferente” e incluir estas respuestas en los
totales y promedios.
5) Atributos a evaluar
ATRIBUTO CONCEPTO
Portabilidad Se refiere a la capacidad de emigrar de una plataforma a otra, con transferencia de la
base de datos.
Escalabilidad Capacidad de escalar de un procesador hasta un multiprocesador y operar con
múltiples servidores.
Conectividad Capacidad de traslado de datos, almacenamiento y rendimiento entre versiones.
Relacionalidad Evalua si el sistema gestor de base de datos es relacional.
Soporte Técnico Evalúa el soporte técnico que se puede obtener del sistema gestor evaluado.
Costo Evalúa el costo promedio de la herramienta, tomando en cuenta que cuan mas alto es
el criterio de evaluación es mas bajo el costo de la herramienta.
Atomicidad Se refiere a la consistencia de datos luego de un fallo en el sistema gestor de base de
datos, evalúa la capacidad de restaurar los datos al estado de consistencia.
Integridad Es la capacidad de que una vez satisfechas las ligaduras de consistencia y
desarrollado el sistema, permita sin dificultad modificar los programas para añadir
nuevas relaciones.
Listado de evaluación Listado de Importancia
Criterio Ponderación
Regular 1
Bueno 2
Muy bueno 3
Excelente 4
6) Matriz de evaluación
Característica o Atributo
Microsoft, SQL
SERVER 2000
Microsoft, Access 2003
ORACLE
IMPORTANCIA
Portabilidad 3,6 3,6 4,8 2
Escalabilidad 4,8 3,6 4,8 2
Conectividad 4,16 4,12 4,16 4
Relacionalidad 4,24 4,24 4,24 6
Soporte Técnico 2,12 4,24 2,24 6
Costo 1,6 3,18 1,6 6
Atomicidad 4,24 4,24 4,24 6
Integridad 4,24 4,24 4,24 6
120 138 134
Criterio Ponderación
Baja 2
Media 4
Alta 6
Con los resultados obtenidos del análisis anterior se puede concluir que la
herramienta mas adecuada como sistema gestor de base de datos es Microsoft
Access 2003.
5.3.1.3 SELECCIÓN DE SISTEMAS OPERATIVOS
Ya que se han evaluado las herramientas anteriores la elección del sistema operativo
no requiere de un análisis exhaustivo ya que se sabe por la naturaleza de la
aplicación trabajara bajo el modelo cliente-servidor y para ello se tendrán claramente
dos tipos de sistema operativo para la ejecución de la aplicación.
Por la parte del servidor se utilizara:
Microsoft Windows 2003 Server,
• Ya que este permite a las estaciones de trabajo ejecutar aplicaciones sobre él
y ahorrar así tiempo en la conexión que se debe hacer cuando una aplicación
corre bajo su propia plataforma.
• Además permite mantener el sistema gestor de base de datos alejado del
usuario, teniendo así un control total de la seguridad de la estructura de datos,
así como de estos.
• Windows 2003 Server permite lograr escalabilidad en cuanto agregación de
estaciones de trabajo que puedan integrar no a la aplicación que se estudia en
este proyecto así como aplicaciones existentes en diferentes áreas como
nuevas aplicaciones.
• Otra característica muy importante del sistema operativo Windows 2003
Server, es que permite la recuperación de estados anteriores, con esto se
puede restaurar el sistema en forma muy fácil y rápido.
• Una ventaja muy importante que es de mucho peso para que se utilice este
sistema operativo es la disminución de costos por parte de la institución en
donde se implantara el sistema, ya que al utilizar Terminal services, un
servicio que esta integrado en el sistema operativo, el cual permite compartir
aplicaciones con terminales, posibilitara el uso de nuevo equipo de distintas
áreas, y con ello integrar nuevas aplicaciones o herramientas que estas
necesiten siempre siendo administradas por Windows Server 2003.
Por la parte del cliente o estaciones de trabajo se utilizara:
• Microsoft Windows 98, me, XP o Superior
En el caso de las estaciones de trabajo, se podrá utilizar uno de los sistemas
operativos descritos anteriormente, en el caso de Microsoft Windows 98 y Me, se
deberá tener muy en cuenta la instalación de la herramienta Escritorio Remoto, ya
que esta permitirá la conexión con el Servidor, en el caso de Microsoft Windows XP o
Superior esta herramienta viene integrada con el sistema operativo.
5.4 FACTIBILIDAD ECONÓMICA
Es muy importante contar con la estimación de los costos necesarios para llevar a
cabo la implementación, la naturaleza de la organización se presta para adquirir el
equipo por ser una institución pública de salud.
Solamente se incluirán los costos por implantación, equipo, software adicional y
mantenimiento, ya que se parte que el costo de desarrollo del sistema automatizado
SAHFRAMEN ya ha sido cubierto, ya que el sistema será donado a la institución por
el equipo del proyecto que presenta este documento.
5.4.1 COSTOS DE HARDWARE
En la factibilidad técnica se ha especificado el equipo necesario que se utilizara para
llevar a cabo la implantación de la aplicación en el centro hospitalario, a continuación
se detallan los costos para el equipo en el mismo orden. Se han cotizado diferentes
equipos y compañías vendedoras de hardware y se ha llegado a la aceptación del
siguiente equipo.
A continuación se detalla el equipo que se utilizara en las diferentes áreas
Área Equipo Cantidad
Archivo
Estaciones de trabajo
Impresor
UPS
2
1
2
Chequeo General (Signos Vitales) Estaciones de trabajo
UPS
1
1
Consultorios Médicos
Estaciones de trabajo
Impresor
UPS
5
5
5
Citas y Colas
Estaciones de trabajo
UPS 2
2
Farmacia
Estaciones de trabajo
Impresor
UPS
1
1
1
Informática
Servidor
UPS
1
1
Una vez se ha obtenido los requerimientos de hardware y especificado en las
diferentes áreas que éste se usara, se detallan los costos de estos equipos.
5.4.1.1 COSTO ESTACIONES DE TRABAJO
Cantidad Especificaciones para el equipo de las estaciones de trabajo
Unidad Total
11 MotherBoard Foxconn $320.00 $3,520.00 Procesador: CELERON D 1.6Ghz 533Mhz
(420)
Memoria 512MB de un solo canal DDR2 Monitor: CRT Samsung de 17", (16"
visible) (E773)
Disco Duro: 80GB Serial ATA Cache
(7200RPM) (80S)
Audio Integrado (IS) Disco Óptico CD--ROM
Mouse Teclado
Sistema Operativo 11
Windows Vista Home Starter $53.02 $583.22 7 Impresor HP Deskjet D1460 $41.00 $287.00 11 UPS FORZA 500 VA SL-501 $38.02 $418.22
Total $4,808.44
5.4.1.2 COSTO SERVIDOR
Cantidad Especificaciones para el equipo Servidor Unidad Total
1 PowerEdge 440SC $1,410.24 $1,410.24 Procesador
Procesador Intel® Pentium® doble núcleo E2160, 1.8GHz, 1MB Cache, 800MHz FSB
Memoria
2GB DDR2,533MHZ,2X512MB ECC (1G2D5S)
Disco Duro 160GB, SATA, 3.5-inch, 7.2K RPM Hard Drive (2 HDD
Dispositivo Óptico CD-RW/DVD de 16X (CDDVD)
Monitor: Monitor LCD analógico Dell 17 pulgadas de panel plano
Adaptador de red integrado de un solo puerto Gigabit
Mouse: Mouse mecánico de dos botones, con conexión USB, negro
Especificaciones para el equipo Servidor de base de datos
Teclado: Teclado USB, negro Sistema Operativo : Windows Small Business Server 2003 1 Microsoft Access 2003 $459.38 $459.38 1 UPS FORZA 500 VA SL-501 $38.02 $38.02
Total $1,907.64
5.4.1.3 COSTO EQUIPO DE RED
Cantidad Costo Equipo de Red unidad Total
1000 Cable UTP/Conectores/mts. $0.40 $400.00
1 Switch
PowerConnectTM 2716
Switch Gigabit Ethernet de 16 Puertos
$190,97 $190.97
978 CANALETAS/mts. $ 0.72 $978.00
Total $1,568.97
5.4.1.4 COSTOS DE IMPLANTACIÓN
Cantidad Función Costo
1 Personal para la creación de la Red $350.00
1 Personal para instalaciones eléctricas $35.00
1 Personal Implementador de Sistema (personal de área
de informática del centro hospitalario)
* Con perfil de Instalador de Aplicaciones
* Con perfil en el administrador de Base de Datos en
Microsoft Access 2003
$0.00
20 Manuales de usuario $40
1 Instructor para capacitación del sistema Sistema
(personal de área de informática del centro hospitalario)
$0.00
Total $425
5.4.1.5 DETALLE DE LA INVERSIÓN TOTAL
Costo Total
Costo Equipo para Estaciones de Trabajo $4,808.44
Costo Equipo para Servidor $1,907.64
Costo Equipo de Red $1,568.97
Costos de Implantación $425.00
TOTAL INVERSIÓN $8,710.05
5.4.1.6 ANÁLISIS COSTO/BENEFICIO SOCIAL
Tomando como base el tipo de institución la cual pertenece al ámbito publico
gubernamental, se plantea un análisis costo beneficio de carácter social, en el cual
se evalúa los beneficios sociales del proyecto y no así los beneficios económicos que
produce la implantación del sistema automatizado por su naturaleza social.
En el apartado anterior titulado “factibilidad económica”, se ha detallado los costos de
la inversión total para la implantación del proyecto, a continuación se especifican los
costos por mantenimiento e insumos y por ultimo se detallan los beneficios sociales
que el proyecto aporta:
a) Costos por mantenimiento e insumos
Costos por Insumos
Insumo Cantidades /mes Costo/Unidad Total
Resma de Papel
Tamaño carta base 20
1 $5.00 $5.00
Cartuchos de Tinta
14 $10.00 $140.00
TOTAL $145.00
Costos por mantenimiento
Mantenimiento Cantidades /6
mes
Costo/Unidad Total
Estaciones de trabajo 11 $20.00 $220.00
Servidor 1 $40.00 $40.00
Base de datos 1 $60.00 $60.00
Impresores 7 $10.00 $70.00
Equipo de Red 1 $50.00 $50.00
TOTAL $440.00
Costos Anuales
Tipo de Costo Costo Mensual Costo anual
Costos por insumo $145.00 $1740.00
Costo por mantenimiento $73.33 $879.99
TOTAL $2619.99
b) Beneficios Sociales del Proyecto
• El principal beneficio en la implantación del proyecto es la donación del
sistema automatizado a la institución por el grupo de trabajo que presenta este
proyecto, tomando en cuenta que la instalación de dicho sistema, únicamente
se podrá realizar en el Hospital Nacional Francisco Menéndez de la Ciudad de
Ahuachapán. Con esta donación la institución no incurrirá en costos por
desarrollo, lo cual permite que en la inversión del proyecto, se disminuyan los
costos de una manera considerable.
• Otro beneficio que aportará la implantación del proyecto será la prestación de
un mejor servicio para los usuarios del centro hospitalario, ya que con las
encuestas administradas a las personas que fueron entrevistadas se pudo
comprobar que cuando hacen uso del sistema actual, tienen necesidad de
esperar demasiado tiempo en el centro hospitalario, con el sistema que se
implantará se disminuirán estos tiempos de espera en gran medida logrando
así una mayor satisfacción de las personas que hacen uso del servicio
público.
• Un beneficio muy importante para los pacientes o usuarios del servicio y para
la población que hace uso del centro hospitalario en general, es la
disponibilidad de medicamentos en la farmacia, con el sistema automatizado
se proveerá al área de consultorios médicos un stock real de lo que presenta
farmacia en cualquier momento, dejando así a elección del medico poder
recetar medicamentos equivalentes y así los usuarios obtener en todo
momento un servicio completo.
• La interconexión de información entre las áreas de archivo, consultora medica
y farmacia en las cuales el paciente o usuario de servicio publico es atendido,
permitirá una vez implantado el sistema, una mayor rapidez por parte de los
empleados que se encuentran en dichas áreas teniendo herramientas ágiles
que ayudaran a facilitar la obtención de información mediante reportes y otro
tipo de información que el sistema automatizado permite generar, además con
esto se eliminaran muchos errores de papeleo que a veces ocurren con los
diferentes documentos que son utilizados en el proceso.
• El departamento de Ahuachapán será el beneficiario directo en la implantación
del sistema automatizado ya que la productividad de dicho departamento es
afectada por la salud de los habitantes de dicha localidad, teniendo un mejor
servicio de salud todas las personas podrán incorporarse al sector productivo
y así beneficiar al departamento en general.
Con los costos y beneficios analizados anteriormente y tomando en cuenta la
naturaleza de la institución, se planteó un análisis de costos y beneficios del tipo
social llamado también evaluación socioeconómica de proyectos los cuales se miden
en la medida que contribuyen al logro de los objetivos de una sociedad y no
evaluando así los beneficios económicos que se obtienen de un proyecto.
5.5 DEPRECIACIONES DE EQUIPO
A continuación se presenta las depreciaciones para los equipos en los cuales se
implantara el sistema automatizado SAHFRAMEN, en cada sección se colocara un
enunciado con el equipo que se estará analizando, seguido de los respectivos
valores de depreciación, el análisis completo de la depreciación y por ultimo un
estudio de utilidad en caso de existir.
Antes de presentar las depreciaciones se describirán las formulas utilizadas para la
depreciación de equipos así como los conceptos y el coeficiente de depreciación
para equipos de computo utilizado en El Salvador para depreciaciones con el método
de línea recta.
• COSTO INICIAL: Es el valor que los equipos a evaluar tienen antes de una
depreciación, es el costo neto del equipo.
VALOR RESIDUAL: Representa el valor de reventa, es el valor que posee cierto bien
después de un tiempo determinado, y es menor al tiempo de la vida útil del equipo.
• VIDA UTIL: Es el valor del equipo cuando debe ser desechado.
• COSTO DEPRECIABLE: Es el valor que puede ser depreciable según
reglamentos contables, este se calcula en base al tipo de bien y años de vida de
este.
• COEFICIENTE DE DEPRECIACION: Coeficiente asignado a bienes para la
depreciación de bienes.
• TIEMPO A DEPRECIAR = Valor de tiempo de depreciación de un bien, dado por
reglamentos contables).
TAZA DE DEPRECIACION: 10% (tasa de depreciación de equipo de cómputo en
El Salvador)
VALOR RESIDUAL: COSTO INICIAL * TAZA DE DEPRECIACION
COSTO DEPRECIABLE: COSTO INICIAL-VALOR RESIDUAL
DEPRECIACION: COSTO DEPRECIABLE / TIEMPO A DEPRECIAR
• DEPRECIACION DE EQUIPO DE CÓMPUTO PARA ESTACIONES DE TRABAJO
EQUIPO NO INCLUYE:
IMPRESOR
UPS
NUMERO DE EQUIPOS: 11
COSTO INICIAL DE EQUIPO: $414.02
TAZA DE DEPRECIACION: 10%
TIEMPO A DEPRECIAR: 2 AÑOS
COSTO DEPRECIABLE: ($414.02 * 11)- $455.42=$ 4098.80
DEPRECIACION: $4098.80 / 2=$2049.40
VALOR RESIDUAL: $414.02 * 11 * 10% = $455.42
BIEN A DEPRECIAR
VALOR DEPRECIACION AÑO 1 AÑO 2 VALOR ACUMULADO
COMPUTADORA Foxconn
CELERON D 1.6Ghz 533Mhz
4098.80 2049.40 2049.40 2049.40 4098.80
Se puede tasar que el valor acumulado de la depreciación es igual al valor del costo
depreciable, lo cual indica que a partir del año 3 el equipo podrá ser reemplazado
obteniendo una utilidad por valor residual de $455.42.
• DEPRECIACION DE EQUIPO DE CÓMPUTO PARA SERVIDOR
EQUIPO NO INCLUYE:
MICROSOFT ACCESS 2003
UPS
NUMERO DE EQUIPOS: 1
COSTO INICIAL DE EQUIPO: $1,410.24
TAZA DE DEPRECIACION: 10%
TIEMPO A DEPRECIAR: 2 AÑOS
COSTO DEPRECIABLE: ($1,410.24 * 1)- $141.02=$ 1,269.22
DEPRECIACION: $1,269.22/ 2=$634.61
VALOR RESIDUAL: $1,410.24 * 1 * 10% = $141.02
BIEN A DEPRECIAR VALOR DEPRECIACION AÑO 1 AÑO 2 VALOR ACUMULADO
COMPUTADORA
Servido PowerEdge
440SC, Intel®
Pentium® doble
núcleo E2160,
1.8GHz
1,269.22 634.61 634.61 634.61 1,269.22
Se puede tasar que el valor acumulado de la depreciación es igual al valor del costo
depreciable, lo cual indica que a partir del año 3 el equipo podrá ser reemplazado
obteniendo una utilidad por valor residual de $141.02.
• DEPRECIACION IMPRESORAS
NUMERO DE EQUIPOS: 7
COSTO INICIAL DE EQUIPO: $41.00
TAZA DE DEPRECIACION: 10%
TIEMPO A DEPRECIAR: 2 AÑOS
COSTO DEPRECIABLE: ($41 * 7)- $28.70=$ 258.30
DEPRECIACION: $258.30 / 2=$129.15
VALOR RESIDUAL: $41 * 7 * 10% = $28.70
BIEN A
DEPRECIAR
VALOR DEPRECIACIO
N
AÑO 1 AÑO
2
VALOR
ACUMULA
DO
Impresor HP
DeskJet D1460
258.30 129.15 129.15 129.1
5
258.30
Se puede tasar que el valor acumulado de la depreciación es igual al valor del costo
depreciable, lo cual indica que a partir del año 3 el equipo podrá ser reemplazado
obteniendo una utilidad por valor residual de $28.70.
• DEPRECIACION UPS
NUMERO DE EQUIPOS: 12
COSTO INICIAL DE EQUIPO: $38.02
TAZA DE DEPRECIACION: 10%
TIEMPO A DEPRECIAR: 2 AÑOS
COSTO DEPRECIABLE: ($38.02 * 12)- $45.62=$ 410.62
DEPRECIACION: $258.30 / 2=$205.31
VALOR RESIDUAL: $38.02 * 12 * 10% = $45.62
BIEN A DEPRECIAR VALOR DEPRECIACION AÑO 1 AÑO 2 VALOR ACUMULADO
UPS FORZA 500
VA SL-501
410.62 129.15 129.15 129.15 410.62
Se puede tasar que el valor acumulado de la depreciación es igual al valor del costo
depreciable, lo cual indica que a partir del año 3 el equipo podrá ser reemplazado
obteniendo una utilidad por valor residual de $46.62.
• DEPRECIACION SWITCH
NUMERO DE EQUIPOS: 1
COSTO INICIAL DE EQUIPO: $190.97
TAZA DE DEPRECIACION: 10%
TIEMPO A DEPRECIAR: 2 AÑOS
COSTO DEPRECIABLE: ($190.97* 1)- $19.07=$ 171.90
DEPRECIACION: $171.90 / 2=$85.95
VALOR RESIDUAL: $190.97 * 1 * 10% = $19.07
BIEN A
DEPRECIAR
VALOR DEPRECIACIO
N
AÑO 1 AÑO
2
VALOR
ACUMULA
DO
UPS FORZA 500
VA SL-501
171.90 129.15 85.95 85.95 171.90
Se puede tasar que el valor acumulado de la depreciación es igual al valor del costo
depreciable, lo cual indica que a partir del año 3 el equipo podrá ser reemplazado
obteniendo una utilidad por valor residual de $19.07.
5.6 FACTIBILIDAD OPERATIVA
• Según la información obtenida en la investigación de campo que se realizo se
puede observar que la mayoría del personal que labora en las diferentes áreas
ha tenido capacitaciones en el uso de computadoras por lo que la
implementación del sistema se muestra que la capacitación en el uso del
sistema automatizado SAHFRAMEN tendrá buenos resultados y no tendrá
tanta complicación.
• Una de los factores muy importantes para los usuarios del nuevo sistema es
la adaptación a los procesos automatizados, pero debido a que dichos
procesos se asemejan a la realidad les será fácil acostumbrarse a su uso.
• Gracias a la aceptación por parte del personal se tendrá una buena
participación y colaboración para la implantación del nuevo sistema
automatizado.
DESARROLLO DEL SISTEMA AUTOMATIZADO
Para la realización del desarrollo del sistema en los apartados posteriores se estarán
detallando cada una de las fases del ciclo de vida, se comienza especificando los
requerimientos que surgen a partir de las diferentes necesidades en las que se ven
involucradas las personas que intervienen en el uso del sistema, ya sea como
prestador de servicio o como cliente, seguidamente se realizara un estudio sobre la
selección del entorno tecnológico para el desarrollo y ejecución de la aplicación, y
por ultimo se plantea el modelado del sistema, con esto se pretende tener un
esquema general de la aplicación que a la vez ayude a comprender los distintos
procesos que se realizan en el sistema automatizado.
6. ESPECIFICACION DE REQUERIMIENTOS
Cada vez que un paciente ingresa al centro hospitalario tiene que pasar por un
proceso para recibir atención medica, cada área en la que el paciente se mueve es
un eslabón del sistema manual que actualmente se encuentra implantado en el
centro hospitalario.
Lo que se pretende es automatizar el proceso por el cual el paciente hace su
recorrido hasta llegar al último punto de una consulta, la cual es el área de farmacia.
Con ello se podrá agilizar la atención a los diferentes pacientes que abordan el
centro hospitalario.
Para la extracción de estos requerimientos se ha partido de las distintas opiniones
tomando en cuenta los modelos que se mencionan en los apartados posteriores y así
también diferentes manuales de procedimientos con los que cuenta las diferentes
áreas involucradas en el proceso.
6.1 ALCANCES DEL SISTEMA AUTOMATIZADO
Las áreas del centro hospitalario que se pretende cubrir con el sistema automatizado
son las siguientes:
• Archivo
• Chequeo General
• Citas y Colas
• Consultorios Médicos
• Farmacia
En cada una de estas áreas se realizan diferentes funciones las cuales proporcionan
a los pacientes los servicios que estos requieren.
Se describirá las funciones que se automatizaran partiendo de la información
recolectada.
6.2 ARCHIVO
Para esta área se pretende automatizar la creación de expedientes y el
mantenimiento de estos, además la impresión de los diferentes documentos que el
personal debe crear al momento de la inscripción de un paciente o cuando un
paciente recibe una consulta medica, el préstamo de expedientes a las diferentes
áreas es una de las funciones que ayudaran a un mejor manejo de los documentos al
personal, así también se creara un reporte para saber rápidamente que pacientes
tendrán citas en una fecha especifica y por ultimo un reporte sobre los pacientes que
se atienden diariamente con esto se podrán tener datos reales de los pacientes q se
atienden en cualquier día. Además se pretende agilizar las búsquedas de
documentos.
6.3 CHEQUEO GENERAL (SIGNOS VITALES)
Para el área de signos vitales se pretende que esta tenga un control exacto de los
pacientes que han sido extendidos del área de archivo y además registrar los signos
vitales de los pacientes, una vez ingresados los signos estarán disponibles para los
médicos a los que se asigne el paciente.
6.4 CITAS Y COLAS
Se automatizara las colas de pacientes previos a recibir una consulta medica, desde
el área de chequeo general se asignara automáticamente la asignación de turno por
orden de llegada, con esto el personal encargado de las colas sabrá exactamente
que paciente ha llegado a la cola en que momento, así también se pretende crear un
libro de citas electrónico integrado al sistema el cual mostrará las fechas disponibles
para la asignación de citas y el mantenimiento de este, este libro electrónico de citas
estará conectado con el área de archivo para que verifiquen las citas que se han
registrado.
6.5 CONSULTORIOS MÉDICOS
El consultorio medico pretende ser una de las áreas mas importantes del sistema
automatizado, ya que desde esta área se pretende la conexión con el inventario de la
farmacia, dicha conexión servirá para que el personal medico pueda verificar la
existencia de medicamentos que pretenda recetar y así poder brindar a los pacientes
en todo momento los medicamentos que estos necesitan, además de saber de la
existencia de medicamentos la creación de la receta medica pretende ser una
herramienta muy significativa a la hora del despacho en farmacia, ya que cada receta
que se cree se pretende este en farmacia luego de la creación.
Otra función del consultorio medico que se pretende agregar al nuevo sistema
automatizado es la verificación de historiales médicos anteriores o procesados, para
que el medico pueda tener de forma rápida un diagnostico que se ha creado con
anterioridad y así tomar decisiones importantes.
Por ultimo la impresión de las recetas médicas e historiales pretende ser una
herramienta de mucha legibilidad a la hora de consultarse.
6.6 FARMACIA
Por ultimo en el área de farmacia se pretende entre muchas funciones verificar las
recetas que los médicos crean en cualquier momento, con esto el paciente no tendrá
que esperar ni hacer una segunda cola en farmacia para recibir sus medicamentos,
ya que segundos de que un medico cree una receta, el personal de farmacia podrá
verificar los medicamentos que ésta contiene y así hacer las búsquedas respectivas
en los estantes, se pretende que en el momento que el paciente aborde la farmacia
no tenga que esperar tanto tiempo como actualmente espera para recibir sus
medicamentos.
Otra función que se pretende adaptar al sistema automatizado en el área de
farmacia, es la devolución de medicamento al inventario por recetas vencidas y el
control de estas. Por ultimo se pretende crear un registro de las transacciones que se
realizan al inventario, tales como envió de medicamentos a otras áreas del hospital,
control de medicamentos destruidos, control de nuevos inventarios y existencia de
medicamentos, para ello se pretende dotar al personal de reportes que ayudaran a
obtener información muy importante a la hora de tomar decisiones.
7. MODELADO DE SISTEMA AUTOMATIZADO SAHFRAMEN
• Los modelos nos permiten especificar la estructura o el comportamiento de un
sistema.
• Los modelos nos proporcionan plantillas que nos guían en la construcción de
un sistema.
• Se ha utilizado el lenguaje de modelado unificado (UML) para el modelado del
sistema automatizado.
• Se construyen modelos para poder comunicarnos con otros, para explicar el
comportamiento del sistema a desarrollar, para comprender, nosotros mismos,
mejor ese sistema.
Ya que un modelo es una simplificación de la realidad este proporcionara los planos
del sistema tanto para entender la estructura de lo que se pretende desarrollar como
para comunicar el funcionamiento de este, a otras personas involucradas.
En el modelo que se presenta en las siguientes páginas se han incluido elementos
con los cuales se pretende explicar los procesos reales que actualmente se utilizan
en el sistema manual y así también los procesos que se automatizarán.
7.1 DIAGRAMA DE ACTIVIDADES
Un diagrama de actividades muestra las operaciones que se pasan entre objetos, un
diagrama de actividades muestra el flujo de actividades de un proceso, Las
actividades producen finalmente alguna acción, que está compuesta de
computaciones atómicas ejecutables que producen un cambio en el estado del
sistema o la devolución de un valor.
Un diagrama de actividades se compone de diferentes elementos los cuales se
detallaran a continuación.
7.2 ESTADO DE ACCIÓN
Se representa con una figura en forma de píldora (un símbolo con líneas
horizontales arriba y abajo y lados convexos). Dentro de esa figura se puede escribir
cualquier expresión, Los estado de acción no se pueden descomponer. Además, los
estados de acción son atómicos, lo que significa que pueden ocurrir eventos, pero no
se interrumpe la ejecución del estado de acción. En este modelo se han utilizado las
figuras correspondientes al programa Microsoft Visio 2003, para la figura 13 de
Estado de Acción se usará la siguiente notación:
Recibir Receta
Figura13. Estado de acción
7.3 TRANSICIONES
Cuando se completa la acción o la actividad de un estado, el flujo de control pasa
inmediatamente al siguiente estado de acción o estado de actividad. Este flujo se
especifica con transiciones que muestran el camino de un estado de actividad o
estado de acción al siguiente, las transiciones de un estado a otro se representar
mediante una flecha dirigida hacia el estado donde ocurre dicha transición, ver figura
14.
Figura 14. Transiciones
7.4 ESTADO INICIAL-FINAL
Para representar el inicio y el final de un diagrama de actividad se utiliza la siguiente
notación, ver figura 15.
Estado Inicial Estado Final
Figura 15. Estado final-inicial
7.5 BIFURCACIÓN
Las transiciones secuenciales son frecuentes, pero no son el único camino que se
necesita para modelar un flujo de control. Como en los diagramas de flujo, se puede
incluir una bifurcación, que especifica caminos alternativos, elegidos según el valor
de alguna expresión booleana, para representar una bifurcación se utilizara la
notación, ver figura 16.
Disponible
Figura 16. Bifurcación
7.6 DIVISIÓN Y UNIÓN
Las transiciones secuenciales y las bifurcaciones son los caminos más utilizados en
los diagramas de actividades. Sin embargo, también es posible encontrar flujos
concurrentes, especialmente cuando se modelan flujos de trabajo de procesos de
negocio. En UML se utiliza una barra de sincronización para especificar la división y
unión de estos flujos de control paralelos. Una barra de sincronización se representa
como una línea horizontal o vertical ancha, ver figura 17.
Figura 17. División y unión
7.7 CALLES
Una cosa especialmente útil cuando se modelan flujos de trabajo de procesos de
organizaciones, es dividir los estados de actividad de un diagrama de actividades en
grupos, donde cada uno representa la parte de la organización responsable de esas
actividades. Cada calle tiene un nombre único dentro del diagrama, ver figura 18.
Figura 18. Calles
8. DESCRIPCIÓN DE DIAGRAMA DE ACTIVIDADES
A continuación se presentarán los diferentes diagramas de actividades de los
procesos que se llevan a cabo por el sistema manual actualmente y así también los
procesos automatizados.
Se mostrara primero el diagrama de actividades y seguidamente la descripción de
este. Los diagramas hacen un seguimiento paso a paso de las actividades que se
realizan para llevar a cabo el proceso de atención de un paciente y así también se
determinan las diferentes bifurcaciones que se pueden presentar en el mismo
proceso.
Se ha divido en dos partes para tener una mejor compresión de los estados, las
transiciones y todas acciones que se llevan acabo en el proceso.
Se podrá notar como se ha dividido el diagrama en calles y con esto determinar que
entidad es la que realiza la acción en un momento determinado y que respuestas
envía o recibe, además se especifican las diferentes uniones o divisiones de
acciones con las cuales se tiene un esquema mas amplio para entender que es lo
que ocurre en cualquier momento, se muestran los puntos iniciales y finales de las
actividades, las cuales pueden terminar en cualquier parte del diagrama.
Figura 19. DIAGRAMA DE ACTIVIDADES ATENCION A PACIENTE - SISTEMA MANUAL PARTE I
Nuevo Nuevo
Control
Figura 20. DIAGRAMA DE ACTIVIDADES ATENCION A PACIENTE – SISTEMA MANUAL PARTE II
PAC IEN TETR ABAJO
SO C IALAR C H IVAD O R C H EQ U EAD O R C ITAD OR
Ingresar a consulto rio
R ecibir R eceta
Presentar Receta
R ecib ir M edic ina
Salir
R ecib ir docuem entos Px
Enviar D ocs a M édico
R evisar Control
R ecib ir D ocs
C ontrol
R evisar libro de control
M ÉD IC O D ISPEN SAD O R
Entregar R eceta
D isponib le
Entregar D ocsBuscar horario m as próxim o
Asignar cita
Enviar D ocs
R ecib ir R eceta
Buscar m edicam entos
Selecolectar m edic ina
Em pacar m edic ina
Entregar m edic ina a Px
Registrar descarga
A
B
C
N oSi
N oS i
El diagrama de actividades para atención de pacientes se divide en dos partes, para
realizar la descripción se especificará inicialmente el diagrama de la parte I y se fue
necesario que se especificara que se trata del diagrama II, seguidamente se
describirán los estados del diagrama II.
9. DESCRIPCIÓN DIAGRAMA DE ACTIVIDADES ATENCIÓN A PACIENTES –
SISTEMA MANUAL PARTE I
1. El paciente entra al centro hospitalario.
2. Seguidamente recibe una charla.
3. Una enfermera de servicio social hace entrega de una ficha.
4. Si el paciente es nuevo se le hace entrega de una ficha cualquiera, si al
paciente se le ha asignado una cita con el medico se le especifica en la ficha.
5. Luego el paciente aborda el área de archivo, en el cual se le hace la búsqueda
del expediente.
6. Si el paciente es nuevo el personal de archivo solicita los datos para
expediente.
6.1 El paciente proporciona los datos para que se cree el expediente.
6.2 El personal de archivo crea el expediente con los datos proporcionados.
6.3 El personal de archivo crea una tarjeta de citas.
6.4 El personal de archivo crea una hoja para un nuevo historial clínico.
6.5 El personal de archivo extiende los documentos (realiza el préstamo).
7. El personal de chequeo general (signos vitales) recibe los documentos.
8. Realiza la toma de signos vitales al paciente en turno.
9. Registra los signos vitales en historial.
10. El personal de chequeo general, envía los documentos hacia el personal de
citas.
11. El personal encargado de las citas recibe los documentos del paciente.
12. Seguidamente el personal de citas ordena en la cola al paciente.
13. Verifica los turnos de los pacientes.
14. Realiza las llamadas a los pacientes según el turno en la cola.
15. El paciente ingresa al consultorio (Diagrama de actividades parte II ).
16. El personal de citas envía los documentos del paciente hacia el medico
(Diagrama de actividades parte II ).
17. El medico recibe los documentos del paciente.
18. El medico examina al paciente.
19. El medico hace el diagnostico del paciente y registra el mismo en el historial.
20. Crear una receta de ser necesario.
21 Si el medico necesita que el paciente se presente a una consulta posterior
asigna cita y luego envía los documentos del paciente hacia el personal de
citas.
Si no desea asignar cita solo envía los documentos del paciente hacia el
personal de Citas.
10. DESCRIPCIÓN DIAGRAMA DE ACTIVIDADES ATENCIÓN A PACIENTES –
PARTE II
22. El personal de citas recibe los documentos del paciente.
23. Seguidamente revisa los documentos para comprobar si se deberá registrar
una cita en un libro de citas.
23.1. Si el medico ha asignado cita al paciente, el personal revisa el libro de
citas para comprobar un horario disponible y así poder asignar la cita.
23.2. Si encuentra el horario que el medico a especificado asigna la cita con
ese horario.
23.3. Si no encuentra horario, busca el horario más próximo y luego asigna la
cita.
24. El personal de citas hace entrega de los documentos del paciente al área de
archivo.
24.1. El personal de archivo recibe los documentos médicos y finaliza la operación
de préstamo de documentos.
25. El personal de citas selecciona de los documentos la receta médica y hace
entrega al paciente.
26. El paciente recibe la receta.
27. El paciente aborda el área de farmacia y presenta la receta que se le ha
entregado.
28. El personal de farmacia recibe la receta.
29. Busca los medicamentos.
30. Recolecta los medicamentos.
31. Empaca los medicamentos.
32. Hace entrega de medicamentos al paciente.
33. Registra la descarga en el inventario.
34. El paciente recibe los medicamentos y finaliza el proceso de atención.
A continuación se presentan un conjunto de diagramas de actividades que servían para cubrir los detalles más
específicos de procesos que no se describieron en el diagrama general de atención de pacientes, ver figura 21.
Figura 19
Descargar de Inventario
Revisar recetas
Clasificar por producto
Verificar inventario
Actualizar inventario
Descontar de inventario
Recibir doumentos de Px
Revisar documentos
Buscar posición en estante
Colocar documentos en archivero
Almacenar documentos
Buscar expediente de Px
Revisar datos en archiveros
extrar documentos de archivero
Proporcionar documento de paciente
Extrar documentos
11. DESCRIPCIÓN DIAGRAMA DE ACTIVIDADES DESCARGA DE
INVENTARIO
1. Revisar recetas.
2. Clasificar por producto (medicamento).
3. Verificar inventario.
4. Descontar de inventario.
5. Actualizar inventario.
12. DESCRIPCIÓN DE DIAGRAMA ALMACENAR DOCUMENTOS
1. Recibir documentos de pacientes.
2. Revisar que los documentos estén correctamente conforme a la entrega.
3. Buscar posición en estantes.
4. Colocar documento en archivero.
Descripción de diagrama extraer documentos
1. Buscar expediente de paciente documentos de pacientes.
2. Revisar datos en archivero.
3. Extraer documentos de archivero.
4. Proporcionar documento de paciente.
Figura 22. DIAGRAMA DE ACTIVIDADES SISTEMA AUTOMATIZADO
Encontrado
Control
13. DESCRIPCIÓN DIAGRAMA DE ACTIVIDADES –SISTEMA
AUTOMATIZADO
1. Inicialmente el recepcionista o personal de archivo puede buscar o crear un
nuevo expediente
2. Si realiza una búsqueda y esta es exitosa se podrán realizar tareas como
modificar, extender, devolver documentos
2.1. Luego de realizar la búsqueda podrá devolver un expediente y finalizar el
proceso de atención o extensión de documentos.
2.2. Luego de realizar la búsqueda podrá modificar un expediente
2.2.1. Seguidamente actualizar el expediente.
2.3. Extender un expediente puede realizarse después de crear un expediente o
después de realizar una búsqueda de un expediente.
2.4. Cuando se extiende un expediente se imprimirá luego un historial clínico.
3. Puede iniciar el proceso creando un expediente.
4. Seguidamente se imprimen los diferentes documentos que se necesitan.
5. Impresión de historial.
6. Impresión de expediente.
7. Impresión de tarjeta de citas.
8. Impresión de tarjeta índice.
9. Luego de realizar las impresiones podrá extender un expediente con esto dar por
iniciado el proceso de atención en las siguientes secciones.
10. Luego de extender el expediente la sección de chequeo general podrá verificar la
existencia en consulta de los pacientes extendidos.
11. Para llenar los signos vitales de un paciente el personal de chequeo seleccionará
un historial.
12. Modificará los datos del historial.
13. Actualizara el historial.
14. Y automáticamente se agregara el expediente a la cola.
15. Una vez agregado el paciente a la cola el medico verifica la existencia de
pacientes asignados.
16. Si ha ingresado un paciente al consultorio selecciona el historial.
17. Modifica el historial con el diagnostico.
18. Actualiza el historial.
19. Imprime el historial.
20. Crear una receta de ser necesario.
20.1. Selecciona los medicamentos que contendrá la receta.
20.2. Imprimir la receta.
21. El personal encargado de las citas verifica la cola.
22. Examina si encuentra control de cita del paciente.
23. Si existe control de cita, busca la disponibilidad.
23.1. Selecciona el horario.
23.2. Crear la cita.
23.3. Guarda la cita.
24. Extrae de la cola al paciente.
25. El personal de farmacia verifica las recetas a dispensar.
26. Selecciona la receta.
27. Si la receta se encuentra vencida devuelve los medicamentos al inventario.
28. Si la receta no se encuentra vencida y es solicitada es dispensada.
Encontrado
Figura 23
Imprimir
Figura 24
14. DESCRIPCIÓN DIAGRAMA DE ACTIVIDADES – MANTENIMIENTO
DE MEDICAMENTOS
1. Buscar medicamento.
2. Si el medicamento no es
encontrado se crea el
medicamento.
Se actualiza el medicamento
3 Si el medicamento es
encontrado se presentan las
opciones de:
• Abastecer stock.
• Seleccionar destino.
• Quitar medicamento.
• Destruir medicamento.
• Actualizar medicamentos.
15. DESCRIPCIÓN DIAGRAMA DE ACTIVIDADES – GENERAL DE
REPORTES
1. Filtrar reporte.
2. Generar reporte.
3. Puede imprimir el reporte o
finalizar el proceso.
4. Imprimir reporte.
5. Finalizar.
Imprimir
Imprimir
16. DESCRIPCIÓN DIAGRAMA DE ACTIVIDADES – GENERAL
MANTENIMIENTOS (AREAS DE ENVIO, GRUPOS DE MEDICAMENTO, PARENTESCOS, CARGOS Y HORARIOS).
1 Seleccionar Elemento a modificar, si el
elemento no se encuentra en puede
crearlo.
2 Modificar o Adicionar Elemento
3 Guardar cambios.
17. DESCRIPCIÓN DIAGRAMA DE ACTIVIDADES – CREAR RECETA
5 Seleccionar Medicamentos.
6 Asignar cantidad.
7 Adicionar a lista.
8 Procesar medicamentos, si no es
posible adicionar medicamento, sacar
medicamento de lista.
9 Adicionar nuevo medicamento.
10 Procesar hasta obtener resultado
exitoso.
11 Imprimir receta.
18. DESCRIPCIÓN DE DIAGRAMAS
Una vez se han descrito los diferentes diagramas de actividades, se describirán los
diagramas de casos de uso para tener una mejor compresión de lo que se realiza en
el sistema, se partirá con los diagramas de actividades para automatización del
diseño y descripción de los casos de uso, que pretenden ser otra herramienta para la
comprensión del proceso que conlleva dar servicio en los diferentes secciones del
centro hospitalario.
18.1 PARA LOS DIFERENTES DIAGRAMAS SE USARA LA
SIGUIENTE NOTACIÓN:
COMPONENTE FUNCIÓN REPRESENTACIÓN O FIGURA
CASO DE USO
Un caso de uso especifica el
comportamiento de un sistema o
una parte del mismo, y es una
descripción de un conjunto de
secuencias de acciones,
incluyendo variantes, que
ejecutan un sistema para
producir un resultado observable
de valor para un actor.
ACTOR
Un actor representa un conjunto
coherente de roles que los
usuarios de los casos de uso
juegan al interactuar con éstos.
Normalmente, un actor
representa un rol que es jugado
por una persona, un dispositivo
hardware o incluso otro sistema
al interactuar con nuestro
sistema.
COMPONENTE FUNCIÓN REPRESENTACIÓN O FIGURA
INCLUSIÓN Y
EXTENSIÓN
La extensión corresponde al
comportamiento de
especialización de un caso de
uso o funciones especializadas
del caso de uso, por ejemplo
para una creación de expediente
una función especializada será la
de actualizar que al mismo
tiempo puede ser utilizada por
otros casos de uso como por
ejemplo devolver documentos
prestados.
La inclusión y la extensión son
dos distintas formas de organizar
el comportamiento de un caso de
uso, la inclusión corresponde a
los sub. –comportamientos que
serán parte de un caso de uso,
por ejemplo la impresión conlleva
al uso de documentos que se
desean imprimir. O dicho de otra
forma la inclusión establece lo
que un objeto tiene incluido en
su comportamiento y que podrá
ser usado en el momento que se
requiera.
Inclusión
Extensión
ESCENARIO
Un escenario es una secuencia
específica de acciones que
ilustra un comportamiento.
18.2 DIAGRAMA DE CASOS DE USO ÁREA ARCHIVO
Figura 25. Diagrama de Casos de Uso área de Archivo
ARCHIVO
USO PROPÓSITO PRECONDICIONES
Imprimir
Realizar las impresiones de los
distintos documentos que se necesita
para una consulta medica.
Búsqueda de expediente,
impresora en línea,
documento preformateado
en impresor.
Buscar Realizar las búsquedas de los
expedientes.
Datos del paciente.
Filtrar
reporte por
citados
Filtrar los datos para generación de
un reporte de pacientes citados.
Fecha de consulta.
Crear
documentos
Creación de documentos para la
realización de una consulta.
Datos de paciente.
Modificar
expediente
Cambio de datos por solicitud de
paciente o por solicitud de personal.
Datos que se van a
modificar.
Extender
documentos
Realizar un préstamo de documentos,
para consulta o para prepósitos del
personal medico u otros.
Búsqueda de expediente.
USO PROPÓSITO PRECONDICIONES
Devolver
documentos
Realizar la devolución de documentos
a la sección de archivo.
Búsqueda de expediente
verificación de
documentos.
Actualizar
Actualización de los diferentes
procesos que conllevan una
actualización.
Realizar un proceso que
requiera actualización.
18.3 DIAGRAMA DE CASOS DE USO MANTENIMIENTO DE PARENTESCOS
Figura 26. Diagrama de casos de uso mantenimiento de empleados.
MANTENIMIENTO DE PARENTESCOS
USO PROPÓSITO PRECONDICIONES
Seleccionar
parentesco
Selección de parentesco el cual se
modificara.
Ninguna
Crear
parentesco
Crear un nuevo parentesco. Ninguna
Asignar/Modific
ar parentesco
Ingresar datos a modificar o datos del
nuevo parentesco.
Seleccionar
parentesco
Actualizar Actualiza la información parentesco
modificado o creado.
Asignar/Modificar
parentesco
18.4 DIAGRAMA DE CASOS DE USO MANTENIMIENTO DE AREA DE CHEQUEO
Figura 27. Diagrama de casos de uso área chequeo
CONTROL DE CASOS DE USO ÁREA CHEQUEO
USO PROPÓSITO PRECONDICIONES
Buscar historial
clínico
Verificar la existencia de paciente
en el área de chequeo general.
Datos de paciente
Modificar historial
clínico
Ingresar los datos de signos vitales
del paciente.
Búsqueda de historial,
Paciente examinado
Actualizar historial
clínico
Guardar los datos ingresados del
paciente.
Modificar historial
Devolución de
Historial
Devolver Historiales de pacientes
que no se presentan al chequeo.
Paciente ausente
18.5 DIAGRAMA DE CASOS DE USO CONTROL DE CITAS Y COLAS
Figura 28. Diagrama de casos de uso control de citas y colas.
CONTROL DE CITAS Y COLAS
USO PROPÓSITO PRECONDICIONES
Ver cola Verificar la existencia de nuevos
pacientes.
Ninguna
Seleccionar
expediente
Seleccionar el expediente para
asignar una cita o quitar de
cola.
Verificar que el medico asigno
cita o no.
Quitar de
cola
Quitar de la lista de pacientes
sin atender.
Seleccionar expediente.
Crear cita Crear cita que personal medico
asigne.
Verificar la existencia de la
asignación.
Seleccionar
horario
disponible
Seleccionar el horario que el
medico asigno en el consultorio
o un horario mas próximo.
Proceso crear cita.
18.6 DIAGRAMA DE CASOS DE USO MANTENIMIENTO DE HORARIOS
Figura 29. Diagrama de casos de uso mantenimiento de empleados.
MANTENIMIENTO HORARIOS
USO PROPÓSITO PRECONDICIONES
Modificar
horario
Modificar hora. Seleccionar horario
Crear horario Crear un nuevo horario. Ninguna
Ingresar/Modifi
car horario
Ingresar datos a modificar o datos del
nuevo horario.
Ninguna
Actualizar Actualiza la información horario
modificado o creado.
Asignar/Modificar
horario
18.7 DIAGRAMA DE CASOS DE USO CONSULTORIO MÉDICO
Figura 30. Diagrama de casos de uso consultorio médico
MANTENIMIENTO DE CONSULTORIO MÉDICO
USO PROPÓSITO PRECONDICIONES
Ver historiales
nuevos
Verificar nuevos historiales de los pacientes
que ya ha pasado por el proceso de
chequeo general.
Ninguna
Buscar historial
clínico
Buscar un historial con el fin de realizar
diferentes acciones como, modificación,
verificación de historiales anteriores, o
creación de receta medica.
Datos del paciente en
turno
Ver historiales
anteriores
Permite obtener un reporte de todos los
historiales del paciente seleccionado que
hayan sido procesados o creados.
Buscar historial clínico
Crear Crear diagnostico del paciente en turno. Buscar historial clínico
Modificar
historial clínico
Modificar historial con signos vitales
ingresados.
Búsqueda de paciente,
diagnostico realizado
Actualizar
historial clínico
Guardar los cambios que se hacen al
historial modificado.
Historial modificado
Imprimir historial
clínico
Realizar una impresión en el documento
preformateado con los datos que se han
guardado.
Paciente en turno
USO
PROPÓSITO
PRECONDICIONES
Crear receta Creación de una receta medica para la
dispensación de medicamentos en
farmacia.
Diagnostico e impresión
de historial realizado.
Criterio médico
Buscar
medicamentos
Búsqueda de medicamentos que serán
agregados a una receta medica.
Crear receta
Asignar cantidad Asignar la cantidad de medicamento que se
le proporcionará al paciente.
Buscar medicamentos
Procesar receta Descontar de inventario de farmacia los
medicamentos con las cantidades
especificadas.
Asignar cantidades
Concluir
Diagnostico
Dar por revisado y llenado cada uno de los
datos para el paciente que se atiende, sin
crear una receta médica.
Diagnostico e impresión
de historial realizado.
18.8 DIAGRAMA DE CASOS DE USO DISPENSAR RECETAS
Figura 31. Diagrama de casos de uso dispensar recetas.
MANTENIMIENTO DISPENSAR RECETAS
USO PROPÓSITO PRECONDICIONES
Buscar receta
Obtener la lista de medicamentos que
serán dispensados y así poder realizar
una búsqueda física en los estantes de
la farmacia.
Datos de paciente
Dispensar
Receta
Entregar medicamentos a paciente y
registrar entrega. Búsqueda de receta
Devolver
medicamentos
a inventario
Regresar medicamentos a inventario
de recetas vencidas con el fin de
eliminar recetas obsoletas.
Búsqueda de receta,
clasificación vencida
Mostrar reporte
recetas
filtradas
Obtener una lista de recetas vencidas,
con datos del paciente para su
respectiva devolución.
Ninguna
Imprimir
recetas
vencidas
Obtener un documento impreso para la
verificación física de las recetas y
mayor facilidad de manipulación de la
lista de recetas vencidas.
Mostrar reporte recetas
filtradas
18.9 DIAGRAMA DE CASOS DE USO TRANSACCIONES DE INVENTARIO
Figura 32. Diagrama de casos de uso mantenimiento de inventario.
MANTENIMIENTO DE TRANSACCIONES DE INVENTARIO
USO PROPÓSITO PRECONDICIONES
Buscar
medicamento
Obtener el medicamento que se va
manipular, ya sea para agregar,
quitar o enviar hacia un área
especifica.
Datos de medicamento
Agregar
Crear inventario con medicamentos
agregados.
Búsqueda de medicamentos,
datos de área, fecha de
transacción.
Enviar
Destruir o enviar medicamentos a
cierta área.
Búsqueda de medicamentos,
datos de área, fecha de
transacción.
Actualizar
Actualizar datos que se han
modificado ya sea por agregar,
quitar del stock o por creación de
nuevos medicamentos.
Agregar/Enviar
18.10 DIAGRAMA DE CASOS DE USO MANTENIMIENTO DE INVENTARIO
Figura 33. Diagrama de casos de uso mantenimiento de empleados.
MANTENIMIENTO DE INVENTARIO
USO PROPÓSITO PRECONDICIONES
Buscar
medicamento
Obtener el medicamento que se va
a modificar.
Datos de medicamento
Modificar
Permitir las modificaciones de
datos del medicamento
seleccionado.
Búsqueda de medicamentos.
Crear Adicionar un registro con un
medicamento nuevo.
Selección de grupo a que
pertenece.
Actualizar Actualizar datos de medicamento
creado o modificado.
Modificar o crear
medicamento.
18.11 DIAGRAMA DE CASOS DE USO MANTENIMIENTO GRUPOS DE
MEDICAMENTOS
Figura 34. Diagrama de casos de uso mantenimiento de empleados.
MANTENIMIENTO GRUPOS DE MEDICAMENTOS
USO PROPÓSITO PRECONDICIONES
Seleccionar
grupo
Selección de grupo el cual se
modificara.
Ninguna
Asignar/Modific
ar grupo
Ingresar datos a modificar o datos del
nuevo grupo.
Seleccionar grupo
Crear grupo Crear un nuevo grupo. Ninguna
Actualizar Actualiza la información grupo
modificado o creado.
Asignar/Modificar
grupo
18.12 DIAGRAMA DE CASOS DE USO MANTENIMIENTO AREA DE ENVIOS
Figura 35. Diagrama de casos de uso mantenimiento de empleados
MANTENIMIENTO AREAS ENVIOS
USO PROPÓSITO PRECONDICIONES
Seleccionar
Área envío
Selección de Área envío el cual se
modificara.
Ninguna
Asignar/Modific
ar Área envío
Ingresar datos a modificar o datos del
nuevo Área envío.
Seleccionar Área
envío
Crear Área
envío
Crear una nueva Área envío. Ninguna
Actualizar Actualiza la información Área envío
modificada o creada.
Asignar/Modificar
Área envío
18.13 DIAGRAMA DE CASOS DE USO MANTENIMIENTO DE
EMPLEADOS/USUARIOS
Figura 36. Diagrama de casos de uso mantenimiento de empleados
MANTENIMIENTO EMPLEADOS/USUARIOS
USO PROPÓSITO PRECONDICIONES
Modificar
empleado
Dispone los datos para la modificación
de estos.
Ninguna
Crear
empleado
Crear un nuevo registro de empleado. Seleccionar empleado
Asignar/Modific
ar empleado
Ingresar datos a modificar o datos del
nuevo empleado.
Modificar o crear
empleado
Actualizar Actualiza la información del empleado
modificado o creado.
Asignar/Modificar
empleado
18.14 DIAGRAMA DE CASOS DE USO MANTENIMIENTO DE CARGOS
Figura 37. Diagrama de casos de uso mantenimiento de empleados/usuarios
MANTENIMIENTO CARGOS
USO PROPÓSITO PRECONDICIONES
Seleccionar
cargo
Selección de cargo el cual se
modificara.
Ninguna
Crear cargo Crear un nuevo cargo. Ninguna
Asignar/Modific
ar cargo
Ingresar datos a modificar o datos del
nuevo cargo.
Seleccionar cargo
Actualizar Actualiza la información del cargo
modificado o creado.
Asignar/Modificar
cargo
18.15 DIAGRAMA DE CASOS DE USO MANTENIMIENTO DE USUARIOS
Figura 38. Diagrama de caso de uso de mantenimiento usuarios.
MANTENIMIENTO USUARIOS
USO PROPÓSITO PRECONDICIONES
Ingresar datos
de usuario
Ingreso de usuario a modulo. Ninguna
Modificar
contraseña
Permitir modificar contraseña de usuario
ingresado.
Usuario ingresado
Actualizar Actualiza la contraseña modificada. Modificar contraseña
19. DIAGRAMA DE CLASES
Una clase es una descripción de un conjunto de objetos que comparten los mismos
atributos, operaciones, relaciones y semántica.
Los atributos representan propiedades comunes a todos los objetos de una
determinada clase, por ejemplo todos los monitores tienen la propiedad dimensión,
que se suele medir en pulgadas. Una operación es una implementación de un
servicio que puede ser requerido a cualquier objeto de la clase para que muestre su
comportamiento. Una operación representa algo que el objeto puede hacer.
Por ejemplo, un comportamiento esperado por cualquier usuario de un monitor es
que este se pueda encender y apagar.
19.1 RELACIONES
Como ya hemos comentado anteriormente, las relaciones son la manera de
representar las interacciones entre las clases.
19.2 DIAGRAMA DE CLASES (SISTEMA AUTOMATIZADO
SAHFRAMEN)
Figura 39. Diagrama de Clases automatizado SAHFRAMEN
19.3 DIAGRAMA DE CLASES IMPLEMENTACIÓN (SISTEMA
AUTOMATIZADO SAHFRAMEN)
+cargardatos()+crear()+modificar()+actualizar()+prestamos()+devoluciones()
-dataset
+cargarhistorial()+llenarsignos()+modificardiagnostico()
-dataset+cargardatos()+cargarcola()+quitarcola()
-dataset-datatable +cargarcontroldecitas()
+cargardatosgenerales()+modificardisponibilidad()
-dataset-datatable
+cargardatos()+crear()+modificar()+actualizar()
-dataset
+crear()+modificar()+actualizar()
-noReceta-codMedico-noExpediente-...
+crear()+actualizar()
-dataset
+cargardatos()+crearMedicamento()+quitarStock()+agregarsStock()+actualizar()
-dataset
1
*
1
*
1
*
1
*
1
*
1
*
1
*
1
*
1
*
+cargardatos()+crear()+modificar()+actualizar()
-dataset
1
*
+cargardatos()+actualizar()+modificar()
-dataset-...
+cargardatos()+actualizar()+modificar()+crear()
-dataset
*
*
+cargardatos()+crear()+modificar()+actualizar()
-dataset
+cargardatos()+crear()+modificar()+actualizar()
-dataset
+crear()+modificar()+actualizar()
-dataset-datatable
1
*
+crear()+modificar()+actualizar()
-dataset
1
*
+cargardatos()+crear()+modificar()+actualizar()
-dataset
1
*
1
*
*
1
1
*
*1
*
1
1
*
Figura 40. Diagrama de Clases implementado
19.4 MODELO ENTIDAD RELACIÓN (SISTEMA AUTOMATIZADO
SAHFRAMEN )
Figura 41. Modelo Entidad Relación
20. ESTRUCTURA DE DATOS
A continuación se presentara la estructura de las diferentes tablas utilizadas por el
sistema. El sistema almacena toda la información en estas tablas y por esta razón se
hace necesario tener una descripción completa de dichas tablas.
20.1 ESTRUCTURA DE TABLA CONTROL DE CITAS
Clave Primaria:
fecha, hora, noExpediente
Función: Almacenar los datos de las
asignaciones de las citas y el mantenimiento de
libro de citas
Nombre
lógico del
Campo
Nombre Físico
del Campo Tipo de Datos Tamaño Descripción
Código
Medico CodMedico Texto
3
Caracteres
Código de medico
quien asigna la cita
fecha
fecha Fecha/Hora Fecha corta
Fecha de la cita
Hora hora Texto 2
Caracteres
Hora de creación de
cita
Numero del
Expediente noExpediente Texto
9
Caracteres
Numero de
expediente del
paciente con cita
correlativo correlativo Numérico Entero
Largo
Orden de llegadas
de los pacientes.
20.2 ESTRUCTURA DE TABLA CONTROL DE COLA
Clave Primaria:
noExpediente
Función: almacenar los datos de la cola de
pacientes y asignación de citas por parte del
médico
Nombre del
Campo
Nombre Físico
del Campo
Tipo de
Datos Tamaño Descripción
Numero de
expediente noExpediente Texto 9 caracteres
Numero de
expediente del
paciente
Código
Medico codMedico Texto 3 Caracteres
Código del medico
asignado para tender
el paciente
Orden de
Cola ordenCola Numérico Entero Largo
Orden de llegada del
paciente
Control de
Cita controldeCita Numérico Entero Largo
Número de días del
control de citas…si el
médico le asigna una
segunda consultas
Estado estado Texto 15 caracteres
Estado en la cola,
pendiente.
Estado q denota que
el paciente no ha
recibido atención
medica
Fecha Cola fechaCola Fecha/Ho
ra ______
Fecha en que se
presenta la cola de
los pacientes citados.
20.3 ESTRUCTURA DE TABLA HISTORIAL CLÍNICO
Clave Primaria:
NoExpediente, fecha
Función: almacenar los datos de los historiales
clínicos que se generan para el paciente
Nombre del
Campo
Nombre Físico
del Campo
Tipo de
Datos Tamaño Descripción
Numero de
Expediente noExpediente Texto
9
Caracteres
Numero del expediente
del paciente
Fecha fecha Fecha/Hora Fecha
corta
Fecha de creación del
historial
Temperatura Temperatura Numérico Entero
Largo
Temperatura del
paciente
Pulso Pulso Numérico Entero
Largo
Pulso del paciente
Respiración Respiracion Numero Entero
Largo
Respiración del
paciente
Peso Peso Numero Entero
Largo
Peso del paciente
Estatura Estatura Numérico Entero
Largo
Estatura del paciente
Presión Arterial presionArterial Numérico Entero
Largo
Presión arterial del
paciente
Diagnostico Diagnóstico Memo ------ Diagnostico dado por
medico que lo atendió
Estado Estado Texto 15
Variable para controlar
los prestamos de
historial, EN consulta,
procesado
Código del
Medico codMedico Texto
3
Caracteres
Código del medico que
atiende al paciente
20.4 ESTRUCTURA DE TABLA EXPEDIENTE
Clave Primaria: noExpediente Función: almacenar los datos del expediente
Nombre del
campo Nombre Físico del Campo Tipo de datos Tamaño Descripción
Numero de
expediente noExpediente Texto 9 Caracteres
Numero de expediente medico
Primer Apellido primerApellido Texto 30 Caracteres Primer apellido
Segundo
Apellido segundoApellido Texto 30 Caracteres
Segundo Apellido
Nombres nombres Texto 30 Caracteres Nombres
Sexo sexo Texto 10 Caracteres Sexo-masculino -femenino
Fecha de
Nacimiento fechaNacimiento Fecha/hora Fecha corta
Fecha Nacimiento
Horas horas Numérico Entero Largo Horas
Estado Civil estadoCivil Texto 15 Caracteres
Estado Civil Ejem: soltero(a),
Casado(a), divorciado(a).
Documento de
Identidad documentoIdentidad Texto 20 Caracteres
Documento de Identidad del Paciente
Numero de
identidad nodocumentoIdentidad Texto 15 Caracteres
Numero de Identidad del paciente
Clave Primaria: noExpediente Función: almacenar los datos del expediente
Ocupación ocupación Texto 50 Ocupación
Dirección
Habitual dereccionHabitual Texto 50
Dirección
Teléfono teléfono Numérico Entero Largo Teléfono
Código de
Archivador codArchivador Texto 3 Caracteres
Persona que tomo los datos en el
sistema.
Fecha de
Inscripción fechaInscripcion Fecha/Hora
Fecha de inscripción del paciente
Observaciones observaciones Texto 50 Caracteres Observaciones sobre el paciente o
expediente.
Estado estado Texto 15 Caracteres
Variable para controlar los prestamos
de expedientes, disponible, en
consulta, no disponible, procesado.
20.5 ESTRUCTURA DE TABLA DETALLE EXPEDIENTE
Clave Primaria: noExpediente, correlativo Función: almacenar los datos dependientes de la tabla expediente
Campo Nombre Físico del Campo Tipo de datos Tamaño Descripción
Numero de
expediente noExpediente Texto 9 Caracteres
Numero de expediente medico
correlativo correlativo Texto 50 caracteres Orden de los expedientes de los
pacientes
Primer
Apellido primerApellido Texto 15 Caracteres
Primer Apellido del Paciente
Segundo
Apellido segundoApellido Texto 15 Caracteres
Segundo apellido del Paciente
Nombres Nombres Texto 30 Caracteres Nombres del Paciente
Dirección direccion Texto 80 Caracteres Dirección del paciente
Teléfono telefono Número Entero Largo Teléfono
Documento
de Identidad
PPD
documentoIdentificacionPPD Texto 20 Caracteres
Documento de identidad de la
persona que proporciono los datos
paciente al centro hospitalario
Num. De
Doc. de Id.
PPD
noDocumentoIdentidadPPD Texto 15 caracteres
Numero de identificación de la
persona que proporciono los datos
Parentesco parentesco texto 2 caracteres Parentesco con el paciente
20.6 ESTRUCTURA DE TABLA RECETA MÉDICA
Clave Primaria:
noReceta
Función: almacenar los datos de las recetas
que se generan por los médicos
Nombre del
Campo
Nombre Físico
del Campo Tipo de Datos Tamaño Descripción
Número de
Receta noReceta Numerico Entero Largo
Numero de la
receta dada al
paciente
Código del
Medico codMedico Texto 3 Caracteres
Código del
medico que
genera la
receta
Numero de
Expediente noExpediente Texto 9 Caracteres
Código del
expediente de
paciente
Fecha de
creación de la
receta
fechaCreacion Fecha/Hora Fecha corta
Fecha de
creación de la
receta
Fecha de
Expedición fechaExpedicion Fecha/Hora Fecha corta
Fecha en que
la receta
expira
Estado estado Texto 20 Caracteres
Estado de la
receta,
vencida,
pendiente
20.7 ESTRUCTURA DE TABLA DETALLE RECETA
Clave Primaria:
NoReceta, codMedicamento
Función: almacenar los datos de las recetas
que se generan por los médicos
Nombre del
Campo
Nombre Físico
del Campo Tipo de Datos Tamaño Descripción
Número de
Receta noReceta Numérico Entero Largo
Numero de la
receta dada al
paciente
Código
Medicamento codMedicamento Texto 8 Caracteres
Código del
medicamento
de la receta a
entregar al
paciente.
Cantidad
Recetada
cantidadRecetad
a numérico Entero Largo
Cantidad de
medicamento
recetado al
paciente
estado estado Texto 15 Caracteres
Variable para
verificar el
control del
código del
medicamento
y el numero de
receta
20.8 ESTRUCTURA DE TABLA MEDICAMENTO GRUPO
Clave Primaria:
codGrupo
Función: almacenar los datos de los grupos de
medicamentos
Nombre del
Campo
Nombre Físico
del Campo
Tipo de
Datos Tamaño Descripción
Código del
Grupo codGrupo Numérico Entero
Código según el grupo de
medicamentos
Nombre del
Grupo nombreGrupo Texto
100
Caracter
es
Nombre del grupo de
medicamentos
20.9 ESTRUCTURA DE TABLA MEDICAMENTO CÓDIGO
Clave Primaria:
codMedicamento
Función: almacenar los datos de los
diferentes medicamentos que existen en
farmacia
Nombre del
Campo
Nombre Físico del
Campo
Tipo de
Datos Tamaño Descripción
Código del
Grupo codGrupo Numérico Entero
Código del Grupo
de medicamento
Código de
medicamento codMedicamento Texto
8
Caracteres
Código del
medicamento
Nombre
Genérico nombreGenérico Texto
250
Caracteres
Nombre Genérico
del medicamento.
Concentración concentración Texto 20
Caracteres
Concentración del
medicamento
Forma
Farmacéutica
formaFarmaceutic
a Texto
250
Caracteres
Tableta, solución
inyectable etc.
Presentación presentacion Texto 200
Caracteres
Presentación de
los medicamentos
Función: almacenar los datos de
empleados que usaran el
sistema
Función: almacenar los datos de los
diferentes medicamentos que existen en
farmacia
Nombre del
Campo
Nombre Físico del
Campo
Tipo de
Datos Tamaño Descripción
Existencia existencia Numérico
Entero
Largo
Existencia de
medicamento en
farmacia según el
inventario.
20.10 ESTRUCTURA DE TABLA EMPLEADO
Clave Primaria:
codEmpleado
Función: almacenar los datos de empleados que
usaran el sistema
Nombre del
Campo
Nombre Físico
del Campo
Tipo de
Datos Tamaño
Descripción
Código de
Empleado codEmpleado Texto 3 Caracteres
Código que se asigna
a un empleado del
centro hospitalario.
Primer
Apellido primerApellido Texto 30 Caracteres
Primer apellido del
empleado.
Segundo
Apellido segundoApellido Texto 30 Caracteres
Segundo apellido del
empleado.
DUI DUI Texto 10 Caracteres
Documento de
identidad del
empleado.
Dirección direccion Texto 50 Caracteres Dirección exacta del
empleado.
Teléfono
Uno telefonoUno Numérico Entero Largo
Teléfono del
empleado.
Clave Primaria:
codEmpleado
Función: almacenar los datos de empleados que
usaran el sistema
Nombre del
Campo
Nombre Físico
del Campo
Tipo de
Datos Tamaño
Descripción
Código del
Cargo codCargo Texto 5 Caracteres
Código del Cargo del
empleado.
Usuario usuario Texto 20 Caracteres Nombre del usuario del
empleado.
Contraseña contraseña Texto 20 Caracteres Contraseña del usuario
del paciente.
20.11 ESTRUCTURA DE LA TABLA ÁREA DE ENVIO
Clave Primaria:
codLugar
Función: almacenar los nombres de usuarios
y contraseñas que se usaran en el sistema,
para los empleados (No Médicos)
Nombre del
Campo
Nombre Físico
del Campo
Tipo de
Datos Tamaño Descripción
Código del
Lugar codLugar Texto 4 Caracteres
Código del área
de envío de
receta medica
interna.
Lugar de Envío lugarEnvio Texto 50 Caracteres
Lugar del área de
envío de la receta
medica interna.
20.12 ESTRUCTURA DE LA TABLA HORARIO
Clave Primaria:
hora
Función: almacenar los nombres de usuarios
y contraseñas que se usaran en el sistema,
para los empleados (No Médicos)
Nombre del
Campo
Nombre Físico
del Campo
Tipo de
Datos Tamaño Descripción
Hora hora Texto 2 Caracteres Hora del control
de cita.
horario horario Fecha/Hora Hora Corta
Hora en que se
presenta e
control de la cita.
20.13ESTRUCTURA DE LA TABLA PARENTESCO
Clave Primaria:
parentesco
Función: almacenar los nombres de usuarios y
contraseñas que se usaran en el sistema, para
los empleados (No Médicos)
Nombre del
Campo
Nombre Físico
del Campo
Tipo de
Datos Tamaño Descripción
Parentesco parentesco Texto 2 Caracteres
Parentesco con el
paciente
ingresado.
Descripción descripción Texto 50 Caracteres
Descripción del
parentesco con el
paciente.
20.14 ESTRUCTURA DE LA TABLA RECETA MEDICA INTERNA
Clave Primaria:
Correlativo_medicamento
Función: almacenar los nombres de usuarios
y contraseñas que se usaran en el sistema,
para los empleados (No Médicos)
Nombre del
Campo
Nombre Físico del
Campo
Tipo de
Datos Tamaño Descripción
Código del
Medicamento codMedicamento Texto 8 Caracteres
Código del
Medicamento de
la receta.
Cantidad
Recetada cantidadRecetada Texto 50 Caracteres
Cantidad de
medicamento
recetado.
Código del
Dispensador codDispensador Texto 3 Caracteres
Código del
Dispensador de
la receta.
Fecha de
Creación fechaCreacion Fecha/Hora Fecha corta
Fecha de
creación de la
receta.
Código de
Envío codEnvio Texto 4 Caracteres
Código del área
que envía la
receta.
Correlativo del
medicamento
Correlativo_medica
mento
Auto
numérico Entero Largo
Correlativo del
medicamento.
20.15 ESTRUCTURA DE LA TABLA DEL RESPONSABLE DE LA
RECETA
Clave Primaria:
noReceta, codDispensador
Función: almacenar los nombres de
usuarios y contraseñas que se usaran en el
sistema, para los empleados (No Médicos)
Nombre del
Campo
Nombre Físico
del Campo
Tipo de
Datos Tamaño Descripción
Número de la
Receta noReceta Texto Entero Largo Número de receta.
Código del
Dispensador codDispensador Numerico 3 Caracteres
Código del
Dispensador de la
receta.
20.16 ESTRUCTURA DE LA TABLA CARGOS
Clave Primaria:
codCargo
Función: almacenar los nombres de usuarios
y contraseñas que se usaran en el sistema,
para los empleados (No Médicos)
Nombre del
Campo
Nombre Físico
del Campo
Tipo de
Datos Tamaño Descripción
Código del
Cargo codCargo Texto 5 Caracteres
Código del cargo
del empleado.
Descripción descripción Texto 25
Caracteres
Descripción del
cargo del
empleado.
21. MODELO DE DESPLIEGUE
Figura 42. Diagrama de Despliegue
22. PLAN DE IMPLANTACION
Una vez obtenido los recursos necesarios para la implantación del sistema
automatizado, se procederá a la ejecución de esta en todas las áreas involucradas
del centro hospitalario.
Los perfiles y funciones necesarias para realizar la implantación son las siguientes:
El plan anteriormente expuesto puede estar sujeto a cambios por parte de la administración o por el área de
informática con que cuenta la institución.
Id Tarea Perfil Duración Comienzo Fin Costo
1 Implantación de Proyecto SAHFRAMEN 87 días mar 15/01/08 mié 14/05/08 $425.00
2 Revision,aprobacion y compa de equipo 23 días mar 15/01/08 jue 14/02/08 $0.00
3 Revision de Proyecto Dirección Centro Hospitalario 4 días mar 15/01/08 vie 18/01/08 $0.00
4 Evaluacion de Proyecto por equipo de informática,direccion y presupuestos Jefe Informática+Administrador Centro Hospitalario+Personal de Presupuestos3 días lun 21/01/08 mié 23/01/08 $0.00
5 Aprobacion de Proyecto Dirección Centro Hospitalario 1 día jue 24/01/08 jue 24/01/08 $0.00
6 Cotizacion de equipo para implantacion Personal de Informática Centro Hospitalario 3 días vie 25/01/08 mar 29/01/08 $0.00
7 Gestion de compra de equipo de computo Personal de Informática Centro Hospitalario 6 días mié 30/01/08 mié 06/02/08 $0.00
8 Compra de equipo Dirección Centro Hospitalario 6 días jue 07/02/08 jue 14/02/08 $0.00
9 instalaciones electricas 4 días vie 15/02/08 mié 20/02/08 $35.00
10 Gestion y contratacion de personal para supervision e instalaciones electricas para montar equipo Personal de Informática Centro Hospitalario 2 días vie 15/02/08 lun 18/02/08 $0.00
11 Estudio de instalacion Electricista 1 día vie 15/02/08 vie 15/02/08 $11.67
12 Compra de equipo para instalaciones electricas Dirección Centro Hospitalario 1 día lun 18/02/08 lun 18/02/08 $0.00
13 Ejecucion de instalacion electrica Electricista 2 días mar 19/02/08 mié 20/02/08 $23.33
14 instalación de red 23 días jue 21/02/08 lun 24/03/08 $350.00
15 Gestion de personal para instalación de estaciones de trabajo y servidor Personal de Informática Centro Hospitalario 5 días jue 21/02/08 mié 27/02/08 $0.00
16 Instalacion de estaciones de trabajo y servidor Técnico en Redes 7 días jue 28/02/08 vie 07/03/08 $102.94
17 Estudio de arquitectura de red y recursos para instalar la red Técnico en Redes 2 días lun 10/03/08 mar 11/03/08 $41.17
18 Compra de recursos para instalar red Dirección Centro Hospitalario 3 días mié 12/03/08 vie 14/03/08 $0.00
19 Ejecucion de instalación de red Técnico en Redes 3 días lun 17/03/08 mié 19/03/08 $144.13
20 Realizacion de pruebas de conexión Técnico en Redes 3 días jue 20/03/08 lun 24/03/08 $61.76
21 Instalación y pruebas de sistema SAHFRAMEN 12 días mar 25/03/08 mié 09/04/08 $0.00
22 Instalacion de sistema SAHFRAMEN en equipo servidor Personal de Informática Centro Hospitalario 1 día mar 25/03/08 mar 25/03/08 $0.00
23 Pruebas de preliminares de sistema instalado Personal de Informática Centro Hospitalario 2 días mié 26/03/08 jue 27/03/08 $0.00
24 Creacion de usuarios en servidor Personal de Informática Centro Hospitalario 3 días vie 28/03/08 mar 01/04/08 $0.00
25 Asignacion de sistema automatizado SAHFRAMEN a cada usuario en servidor Personal de Informática Centro Hospitalario 1 día mié 02/04/08 mié 02/04/08 $0.00
26 Verificacion de aplicación ejecutandose en estaciones de trabajo Personal de Informática Centro Hospitalario 2 días jue 03/04/08 vie 04/04/08 $0.00
27 Pruebas de sistema SAHFRAMEN Personal de Informática Centro Hospitalario 3 días lun 07/04/08 mié 09/04/08 $0.00
28 Capacitación de usuarios 18 días jue 10/04/08 lun 05/05/08 $40.00
29 Organización de agenda para realizar capacitacion e impresión de manuales Personal de Informática Centro Hospitalario 1 día jue 10/04/08 jue 10/04/08 $40.00
30 Capacitacion de area archivo Personal de Informática Centro Hospitalario 2 días vie 11/04/08 lun 14/04/08 $0.00
31 Capacitacion area chequeo general Personal de Informática Centro Hospitalario 2 días mar 15/04/08 mié 16/04/08 $0.00
32 Capacitacion area citas y colas Personal de Informática Centro Hospitalario 2 días jue 17/04/08 vie 18/04/08 $0.00
33 Capacitacion area consultorios medicos Personal de Informática Centro Hospitalario 6 días lun 21/04/08 lun 28/04/08 $0.00
34 Capacitacion area farmacia Personal de Informática Centro Hospitalario 5 días mar 29/04/08 lun 05/05/08 $0.00
35 Pruebas y uso de sistema automatizado para atención de pacientes 7 días mar 06/05/08 mié 14/05/08 $0.00
36 Pruebas individuales con asesoria (si es requerida) Personal Areas involucradas 7 días mar 06/05/08 mié 14/05/08 $0.00
37 Uso del sistema automatizado para atencion de pacientes Personal Areas involucradas 0 días mié 14/05/08 mié 14/05/08 $0.00
22.1 GRAFICO DE GANTT PARTE I
22.2 GRAFICO DE GANTT PARTE II
23. CONCLUSIONES FINALES
Una vez finalizado el desarrollo del sistema automatizado, pueden obtenerse
conclusiones que formaran una idea global de lo que se ha realizado y de los efectos
que se podrán producir si se lleva acabo una implantación:
• Que la atención a paciente, en el Hospital Francisco Menéndez actualmente
necesita de un sistema automatizado para agilizar sus procesos de atención.
• Que debido a la naturaleza de la institución se pueden gestionar los recursos
necesarios para llevar a cabo una implantación del sistema automatizado
desarrollado en este proyecto de graduación.
• Que el sistema automatizado que se ha desarrollado cubre las necesidades
de las diferentes áreas en la que un paciente es atendido.
• Que las personas involucradas en el proceso podrán tener una herramienta
que facilite sus tareas cotidianas.
• Que un paciente podrá realizar una consulta medica en la mitad de tiempo que
como actualmente lo hace.
• Que los médicos tendrán una herramienta que les permita saber en cualquier
momento la existencia de medicamentos y así poder en todo momento ofrecer
dichos medicamentos a los pacientes y evitar recetar medicamentos
inexistentes que los adquieran en farmacias externas.
• Implementar la herramienta que se ha desarrollado puede contribuir
económicamente y socialmente a la población ahuachapaneca como gasto
innecesario de papeleo, aglomeración de pacientes en espera de ser
atendidos entre otros.
• Y por ultimo se puede concluir que la creación de un modelo para el desarrollo
de la aplicación ayuda entender claramente los procesos que se desarrollan
en el centro Hospitalario y con ello desarrollar una aplicación apegada a la
realidad de la institución.
24. RECOMENDACIONES FINALES
Un factor muy importante en todas las sociedades del mundo es la salud, por esta
razón muchas instituciones a nivel mundial realizan donaciones a instituciones de
salud, por lo tanto en el hospital nacional francisco Menéndez hospital se reciben
diferentes tipos de donaciones y a la vez la administración tiene la oportunidad de
hacer gestiones para adquisición de recursos por lo cual se puede recomendar lo
siguiente:
• Realizar las gestiones necesarias, para la adquisición de los recursos de la
implantación de la herramienta tecnológica desarrollada.
• Brindar al personal contratado para la implantación del sistema los
documentos necesarios que se presentan a lo largo del desarrollo del
sistema.
• Capacitar en conocimientos de computación, al personal que labora en las
áreas involucradas en este proyecto, previo a la implantación y capacitación
sobre el sistema, con esto se tendrá una mayor facilidad de adaptación.
• Proveer al área de informática con capacitaciones sobre las herramientas que
se han utilizado en el desarrollo del sistema automatizado, y así poder en un
futuro incorporar módulos o funciones nuevas al sistema desarrollado.