Loading…

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

Like this document? Why not share!

Like this? Share it with your network

Share

Residencia profesional saga medica

on

  • 782 views

proyecto de residencia profesional Sistema de Agenda y Administración Médica SAGA MEDICA Instituto Tecnológico de Tapachula

proyecto de residencia profesional Sistema de Agenda y Administración Médica SAGA MEDICA Instituto Tecnológico de Tapachula

Statistics

Views

Total Views
782
Views on SlideShare
782
Embed Views
0

Actions

Likes
0
Downloads
27
Comments
1

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft Word

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Residencia profesional saga medica Document Transcript

  • 1. INSTITUTO TECNOLÓGICO DETAPACHULACARRERA:ING. EN SISTEMAS COMPUTACIONALESLUGAR DE RESIDENCIA:SANATORIO SANTA ISABELPROYECTO DE RESIDENCIA:“SISTEMA DE AGENDA Y ADMINISTRACIÓNMÉDICA SAGA-MÉDICA”RESIDENTE:09510197EXAL ALEJANDRO SAENZ MATUZASESOR ACADÉMICO ASESOR EXTERNOTapachula, Chiapas, Junio de 2013ING. ROBERTO DE JESÚSAGUILAR DILLMANNDR. OSCAR GURRÍA PENAGOS
  • 2. RESIDENCIA PROFESIONALÍNDICE DE FIGURASFigura 1- Organigrama del sanatorio Santa Isabel............................................................. 7Figura 2- Macrolocalización del Sanatorio Santa Isabel..................................................... 8Figura 3- Microlocalización del Sanatorio Santa Isabel...................................................... 9Figura 4- Plano del sanatorio............................................................................................. 9Figura 5- Modelo general de un sistema.......................................................................... 14Figura 6- Representación de los casos de uso ................................................................ 18Figura 7- Implementación del Patrón Singleton en PHP5 ................................................ 22Figura 8- Implementación de PDO en PHP 5................................................................... 26Figura 9- Diagrama de Casos de uso General................................................................. 33Figura 10- Arquitectura del sistema ................................................................................. 35Figura 11- Patrón MVC.................................................................................................... 36Figura 12- Diagrama de clases de SAGA Médica............................................................ 37Figura 13- Modelo Relacional de SAGA Médica .............................................................. 38Figura 14- Página de inicio de sesión .............................................................................. 39Figura 15- Página principal .............................................................................................. 40Figura 16- Página de catálogos ....................................................................................... 40Figura 17- Almacenamiento de los catálogos .................................................................. 41
  • 3. RESIDENCIA PROFESIONALÍNDICEINTRODUCCIÓN .................................................................................................... 1CAPITULO 1. DESCRIPCIÓN DEL PROYECTO ................................................... 21.1. Objetivos................................................................................................... 31.1.1. Objetivo General.................................................................................. 31.1.2. Objetivos Específicos .......................................................................... 31.2. Problemas a Resolver.............................................................................. 31.3. Justificación ............................................................................................. 41.4. Alcances y Limitaciones del proyecto ................................................... 41.4.1. Alcances.............................................................................................. 41.4.2. Limitaciones......................................................................................... 5CAPITULO 2. DATOS GENERALES DE LA EMPRESA....................................... 62.1. Nombre o Razón Social ........................................................................... 72.2. Descripción del Área de Trabajo ............................................................ 72.3. Organigrama de la Empresa.................................................................... 72.4. Misión de la Empresa............................................................................... 72.5. Macro y Micro Localización..................................................................... 82.5.1. Macrolocalización ................................................................................ 82.5.2. Microlocalización ................................................................................. 82.6. Plano del Sanatorio Santa Isabel............................................................ 92.7. Antecedentes Generales de la Institución ........................................... 10CAPITULO 3. FUNDAMENTO TEÓRICO ............................................................ 113.1. Antecedentes Investigativos................................................................. 123.1.1. www.comfama.com ........................................................................... 123.1.2. www.sanitas.es.................................................................................. 12
  • 4. RESIDENCIA PROFESIONAL3.1.3. www.sat.gob.mx ................................................................................ 133.2. Concepto de Sistema............................................................................. 133.3. Concepto de Sistema de Información .................................................. 143.4. Categorías de los Sistemas................................................................... 143.5. Sistemas de Información Estratégicos ................................................ 153.6. Casos de Uso ......................................................................................... 173.7. Patrones de Diseño................................................................................ 193.8. Framework.............................................................................................. 243.9. JQuery..................................................................................................... 243.10. PDO ...................................................................................................... 25CAPITULO 4. DESCRIPCIÓN DE LAS ACTIVIDADES REALIZADAS............... 274.1. Análisis de Requisitos........................................................................... 284.1.1. Recolección de Información .............................................................. 294.1.2. Resultados Obtenidos del Análisis de la Información Recolectada ... 294.1.3. Requerimientos del Sistema.............................................................. 304.2. Diseño arquitectónico............................................................................ 354.2.1. Arquitectura del Sistema.................................................................... 354.2.2. Diseño de Clases............................................................................... 364.2.3. Modelo Relacional de la Base de Datos ............................................ 384.2.4. Diseño de Interfaces.......................................................................... 394.3. Codificación y Prueba............................................................................ 42CAPITULO 5. CONCLUSIONES Y RECOMENDACIONES................................. 465.1. Conclusiones.......................................................................................... 465.2. Recomendaciones.................................................................................. 47BIBLIOGRAFÍA .................................................................................................... 48
  • 5. RESIDENCIA PROFESIONALANEXOS ............................................................................................................... 49Anexo IEntrevista Para Obtención de Requerimientos................................ 50Anexo IIMuestra Expediente Clínico de Paciente del Sanatorio Santa Isabel........................................................................................................................... 56Anexo IIIEspecificación de los Casos de Uso.............................................. 59Anexo IVDiagrama de Secuencias................................................................. 76Anexo VDiccionario de Datos......................................................................... 85Anexo VIManual de Usuario ......................................................................... 105
  • 6. RESIDENCIA PROFESIONALACRÓNIMOS(PDO)PHP Data Objects /Objetos de Datos de PHP.(PHP) Hypertext Pre-processor/ Pre Procesador de Hipertexto.(SAGA) Sistema de Agenda y Administración Médica.(SGBD) Sistema Gestor de Base de Datos.
  • 7. RESIDENCIA PROFESIONAL1INTRODUCCIÓNEl mundo empresarial es cada vez más complejo, los directivos de lasempresas tienen que acceder a la información con más intensidad y rapidez parala toma de decisiones. Las instituciones de salud, específicamente los Hospitales ySanatorios particulares, son en la actualidad, por la complejidad que hanalcanzado, organizaciones que tienen que ser administrados como cualquierempresa de envergadura, ameritan el uso de computadoras para manejar grandesvolúmenes de datos en forma compleja, lo que obliga a los administradores aproyectar las partes de modo que se integren bien entre sí.Es por ello que el presente trabajo constituye una propuesta para implementar unSistema de Información de apoyo en la gestión de citas médicas he historialclínico de los pacientes del Sanatorio Santa Isabel, para que se desarrollen consuficiente rapidez y amplitud los procesos de información que satisfagan lasnecesidades del área en estudio.Normalmente los procesos de calendarización de citas médicas se realizanmediante la utilización de hojas de cálculo, y en otros casos, en hojas de papel, locual resulta tedioso he ineficaz para realizar dicho proceso.Con lo que respecta al proceso de manejo de historiales clínicos, los datos decada paciente son capturados en hojas de Word, y cada historial es clasificado encarpetas por nombre, lo cual hace lento el proceso de atención a la persona queestá recibiendo consulta médica.Con el desarrollo de SAGA Médica el control de la información es de mayorcalidad, reduciendo tiempos de búsqueda de datos así como el riesgo detransposición de citas agendadas.
  • 8. RESIDENCIA PROFESIONAL2CAPITULO 1. DESCRIPCIÓN DEL PROYECTOEn este capítulo se presenta la descripción del proyecto “Sistema de Agenda yAdministración Médica – SAGA Médica”, en donde se da a conocer las razonespor la cual se decidió desarrollar la investigación, resaltando los objetivos que setrazaron en el inicio del proyecto; se da a conocer también los problemas que sepretenden resolver con la implementación del proyecto, así como los alcances quese esperan sean alcanzados y las limitantes que podrían perjudicar el desarrollode dicho proyecto.1.1 Objetivos.1.1.1 Objetivo General.1.1.2 Objetivos Específicos.1.2 Problemas a Resolver.1.3 Justificación.1.4 Alcances y Limitaciones del Proyecto.1.4.1 Alcances.1.4.2 Limitaciones.
  • 9. RESIDENCIA PROFESIONAL31.1. Objetivos1.1.1. Objetivo GeneralSistematizar los procesos de información realizados por el personal del SanatorioSanta Isabel, mediante el uso de software.1.1.2. Objetivos EspecíficosBrindar un mejor servicio al paciente.Acortar el tiempo que transcurre cada cita.Evitar transposición en la calendarización de citas.Mejorar la búsqueda del expediente de cada paciente.Reducir costos de operación (papelería).1.2. Problemas a ResolverActualmente el sanatorio lleva el control de las citas y las recetas médicas quesuministra a sus pacientes mediante el programa informático Word.Los pasos realizados en cada cita médica son los siguientes:1. Llenar una ficha de identificación.2. Vaciar los datos de la ficha en una hoja de Word.3. Apuntar los datos clínicos del padecimiento actual.4. Antecedentes clínicos.5. Exploración física.6. Estudios de laboratorio de gabinete (análisis clínicos, etc.).7. Diagnostico.8. Plan de Tratamiento.9. Elaboración de la receta correspondiente.10.Fecha de la próxima cita.
  • 10. RESIDENCIA PROFESIONAL4En varias ocasiones han tenido problemas de calendarización, ya que, pordescuido, han antepuesto horarios de dos o más pacientes. Esto es ocasionadopor la forma en que se tiene estructurado cada expediente de los pacientes, yaque están separados por carpetas, en las que incluye un documento por cada citay receta realizada. Otro problema que se presenta en cada una de las citas, es lapérdida de tiempo valioso, ya que la búsqueda del expediente, del paciente enturno, es tediosa.1.3. JustificaciónLlevar el control de cada cita y receta médica con herramientas ofimáticas nosiempre es la mejor opción para un profesional de la medicina. Puede llegar a sertediosa la utilización de dichas herramientas, ya que no están hechas para llevarese tipo de control.Desarrollar un sistema a la medida que controle las citas médicas, y queadministre cada una de las recetas que se suministren a los pacientes, podríareducir considerablemente el tiempo que el doctor brinda a cada uno de lospacientes, mejorando su productividad como profesional.1.4. Alcances y Limitaciones del proyecto1.4.1. AlcancesLos beneficios que conllevará realizar este sistema serán principalmente a lospacientes, ya que se les ofrecerá un mejor servicio médico, mejorando la rapidezen cada consulta médica, así también como una mejor administración de susexpedientes clínicos.
  • 11. RESIDENCIA PROFESIONAL51.4.2. LimitacionesLos médicos tienen poca familiarización en la utilización de sistemas informáticos;como ellos mencionan, en lo que lleva de vida profesional, han utilizadoúnicamente la suite ofimática Office para realizar trabajos. Al momento de utilizarel nuevo sistema pueden tener dificultades en su utilización, que se tratará deresolver con la creación de un manual de usuario.Otra de las limitaciones que se presentan es el tiempo establecido por el institutotecnológico de Tapachula para lograr los alcances establecidos del proyecto, elcual es limitado, ya que el número de módulos necesarios para tener un sistemaque satisfaga completamente las necesidades de los médicos del Sanatorio SantaIsabel es considerable.
  • 12. RESIDENCIA PROFESIONAL6CAPITULO 2. DATOS GENERALES DE LA EMPRESAEn este capítulo se describen los datos generales de la dependencia denominada“Sanatorio Santa Isabel” con el objetivo de dar a conocer las actividades que sedesarrollan en dicha empresa, su estructura organizacional, además de suubicación exacta para futuras visitas.2.1 Nombre o Razón Social.2.2 Descripción del Área de Trabajo.2.3 Organigrama de la Empresa.2.4 Misión de la Empresa.2.5 Macro y Micro Localización.2.5.1 Macrolocalización.2.5.2 Microlocalización.2.6 Plano del sanatorio Santa Isabel.2.7 Antecedentes Generales de la Institución.
  • 13. RESIDENCIA PROFESIONAL72.1. Nombre o Razón SocialEl Sanatorio Santa Isabel se dedica al servicio médico, quirúrgico y hospitalario.2.2. Descripción del Área de TrabajoEl Sanatorio Santa Isabel cuenta con 2 consultorios médicos de diferenteespecialidad, El Dr. Oscar Gurría Penagos (Cirugía General) y el Dr. WerclainGurría Penagos (Ginecología), además de un médico de guardia, el Dr. BraulioTrujillo. El edificio también cuenta con sala de operaciones para llevar a cabocirugías, y cuartos con sus respectivas camas para brindar servicio hospitalario.2.3. Organigrama de la Empresa2.4. Misión de la EmpresaCuidar la salud de las personas en beneficio de la familia.Figura 1- Organigrama del sanatorio Santa Isabel
  • 14. RESIDENCIA PROFESIONAL82.5. Macro y Micro Localización2.5.1. MacrolocalizaciónEl Sanatorio Santa Isabel se encuentra ubicado en la ciudad de Tapachula,Chiapas (Figura 2).2.5.2. MicrolocalizaciónEl Sanatorio Santa Isabel tiene como dirección la 15° Calle Poniente No. 13 entre4° y 6° Avenida Norte CP 30700, Colonia Centro (Figura 3).Figura 2- Macrolocalización del Sanatorio Santa Isabel
  • 15. RESIDENCIA PROFESIONAL92.6. Plano del Sanatorio Santa IsabelEl sanatorio Santa Isabel está dividida en las siguientes partes (Figura 4):2 Consultorios.1 Sala de quirófano.8 Cuartos de internación.Figura 3- Microlocalización del Sanatorio Santa IsabelFigura 4- Plano del sanatorio
  • 16. RESIDENCIA PROFESIONAL102.7. Antecedentes Generales de la InstituciónEl Sanatorio Santa Isabel es fundado el 13 de septiembre de 1997 por La señoraLaura Angélica García Arjona, el Dr. Werclain Gurría Penagos y el Dr. OscarGurría Penagos, este último desempeñándose como director hasta el día de hoy.El principal objetivo de este Sanatorio, como toda institución de salud, es el brindarun servicio médico de calidad.
  • 17. RESIDENCIA PROFESIONAL11CAPITULO 3. FUNDAMENTO TEÓRICOEn este capítulo se plantearán los estudios e investigaciones, antecedentes yteorías que darán respaldo al desarrollo del proyecto; los conceptos presentadosampliarán el horizonte del estudio, además de establecer hipótesis que sesometerán a prueba más adelante en la realidad.3.1.Antecedentes Investigativos.3.1.1. www.comfama.com3.1.2. www.sanitas.es3.1.3. www.sat.gob.mx3.2. Concepto de Sistema.3.3. Concepto de Sistema de Información.3.4. Categorías de los Sistemas.3.5. Sistemas de Información Estratégicos.3.6.Casos de Uso.3.7. Patrones de Diseño.3.8.Framework.3.9.JQuery.3.10.PDO.
  • 18. RESIDENCIA PROFESIONAL123.1. Antecedentes InvestigativosDe acuerdo a la investigación realizada en Internet se encontraron algunos sitiosWeb, los cuales ofrecen servicios relacionados con los que se pretendeimplementar en este proyecto.3.1.1. www.comfama.comEs el sitio Web de la caja de compensación familiar del Departamento deAntioquía, Colombia, al cual se le han incorporado dos nuevos servicios: Elservicio de solicitudes médicas y asesoría virtual en línea. Ambos servicios, estánencaminados al desarrollo de nuevas oportunidades de atención, facilitando lostrámites y diversificando las oportunidades de acceso a los diferentes programasque ofrece COMFAMA tal y como se señala a continuación.Citas médicas por InternetCon el servicio de solicitud de citas, los afiliados, los no afiliados y los usuarios delos Centros Integrales de Salud, tendrán la posibilidad de pedir, consultar,modificar y cancelar las citas médicas en línea.Asesor virtualIgualmente, un asesor virtual, les permitirá a los navegantes dewww.comfama.com, obtener ayuda e información en línea sobre diferentesprogramas de la Caja.3.1.2. www.sanitas.es
  • 19. RESIDENCIA PROFESIONAL13Es el sitio Web de la organización SANITAS en España, en donde se presta elservicio de solicitudes de citas para permitir a sus pacientes una atención ágil, demodo que no deben solicitar atención médica de forma presencial sino virtual.3.1.3. www.sat.gob.mxEs el sitio web del Servicio de Administración Tributaria el cual tiene un servicio enel que los usuarios pueden solicitar citas sin la necesidad de presentarsepersonalmente a las oficinas de dicha institución. Primeramente se selecciona elservicio en el cual está interesado, a continuación se escoge una fecha en la cualhaya disponibilidad; después de realizado estos pasos, se confirma la cita y elsistema manda un link de confirmación al correo electrónico proporcionado por elusuario. También existe la posibilidad de consultar y eliminar citas.3.2. Concepto de Sistema[1]Es un conjunto de componentes que interaccionan entre sí para lograr unobjetivo en común, aunque existe una gran variedad de sistema, la mayoría deellos puede representarse a través de un modelo formado por 5 bloques como sepuede visualizar en la figura 5: elementos de entrada, elementos de salida,sección de transformación, mecanismos de control y objetivos.
  • 20. RESIDENCIA PROFESIONAL14Figura 5- Modelo general de un sistema3.3. Concepto de Sistema de Información[2]Es un conjunto de elementos orientados al tratamiento y administraciónde datos e información, organizados y listos para su posterior uso, generados paracubrir una necesidad (objetivo). Dichos elementos formarán parte de alguna deestas categorías:Personas.Datos.Actividades o técnicas de trabajo.Recursos materiales en general (típicamente recursos informáticos y decomunicación, aunque no tienen por qué ser de este tipo obligatoriamente).Todos estos elementos interactúan entre sí para procesar los datos (incluyendoprocesos manuales y automáticos) dando lugar a informaciónmás elaborada ydistribuyéndola de la manera más adecuada posible en una determinadaorganización en función de sus objetivos.3.4. Categorías de los Sistemas[3]Desde un punto de vista empresarial.Según la función a la que vayan destinados o el tipo de usuario final del mismo,los sistemas de información pueden clasificarse en:Sistema de procesamiento de transacciones (TPS).- Gestiona lainformación referente a las transacciones producidas en una empresa uorganización.
  • 21. RESIDENCIA PROFESIONAL15Sistemas de información gerencial (MIS).- Orientados a solucionarproblemas empresariales en general.Sistemas de soporte a decisiones (DSS).- Herramienta para realizar elanálisis de las diferentes variables de negocio con la finalidad de apoyar elproceso de toma de decisiones.Sistemas de información ejecutiva (EIS).- Herramienta orientada a usuariosde nivel gerencial, que permite monitorizar el estado de las variables de unárea o unidad de la empresa a partir de información interna y externa a lamisma.Estos sistemas de información no surgieron simultáneamente en el mercado; losprimeros en aparecer fueron los TPS, en la década de los 60, sin embargo, con eltiempo, otros sistemas de información comenzaron a evolucionar.Sistemas de automatización de oficinas (OAS).- Aplicaciones destinadas aayudar al trabajo diario del administrativo de una empresa u organización.Sistema Planificación de Recursos (ERP).- Integran la información y losprocesos de una organización en un solo sistema.Sistema experto (SE).- Emulan el comportamiento de un experto en undominio concreto.Los últimos fueron los SE, que alcanzaron su auge en los 90 (aunque estosúltimos tuvieron una tímida aparición en los 70 que no cuajó, ya que la tecnologíano estaba suficientemente desarrollada).3.5. Sistemas de Información Estratégicos[3]UnSistema de información estratégicopuede ser considerado como el uso de latecnología de la información para soportar o dar forma a la estrategia competitivade la organización, a su plan para incrementar o mantener la ventaja competitiva obien reducir la ventaja de sus competidores.
  • 22. RESIDENCIA PROFESIONAL16Su función primordial no es apoyar la automatización de los procesos operativos niproporcionar información para apoyar a la toma de decisiones (aunque puedellevar a cabo dichas funciones), sino crear una diferencia con respecto a loscompetidores de la organización (o salvar dicha diferencia) que hagan másatractiva a ésta para los potenciales clientes. Por ejemplo, en la banca, hace añosque se implantaron los cajeros automáticos, pero en su día, las entidades queprimero ofrecieron este servicio disponían de una ventaja con respecto a suscompetidores, y hoy día cualquier entidad que pretenda ofrecer serviciosbancarios necesita contar con cajeros automáticos si no quiere partir con unadesventaja con respecto al resto deentidades de este sector. En este sentido, loscajeros automáticos se pueden considerar sistemas de información estratégicos.Su función es lograr ventajas que los competidores no posean, tales comoventajas en costos y servicios diferenciados con clientes y proveedores. Apoyan elproceso de innovación de productos dentro de la empresa. Suelen desarrollarsedentro de la organización, por lo tanto no pueden adaptarse fácilmente a paquetesdisponibles en el mercado. Entre las características más destacables de estossistemas se pueden señalar:Cambian significativamente el desempeño de un negocio al medirse poruno o más indicadores clave, entre ellos, la magnitud del impacto.Contribuyen al logro de una meta estratégica.Generan cambios fundamentales en la forma de dirigir una compañía, laforma en que compite o en la que interactúa con clientes y proveedores.Otra clasificación, según el entorno de aplicación.Entorno transaccional: Una transacción es un suceso o evento quecrea/modifica los datos. El procesamiento de transacciones consiste encaptar, manipular y almacenar los datos, y también, en la preparación de
  • 23. RESIDENCIA PROFESIONAL17documentos; en el entorno transaccional, por tanto, lo importante es quédatos se modifican y cómo, una vez que ha terminado la transacción.Los TPS son los SI típicos que se pueden encontrar en este entorno.Entorno decisional: Este es el entorno en el que tiene lugar la toma dedecisiones; en una empresa, las decisiones se toman a todos los niveles yen todas las áreas (otra cosa es si esas decisiones son estructuradas o no),por lo que todos los SI de la organización deben estar preparados paraasistir en esta tarea, aunque típicamente, son los DSS los que se encargande esta función. Si el único SI de una compañía preparado para ayudar a latoma de decisiones es el DSS, éste debe estar adaptado a todos los nivelesjerárquicos de la empresa.3.6. Casos de Uso[4]Un caso de uso es una secuencia de interacciones entre un sistema y alguien oalgo que usa alguno de sus servicios. Un caso de uso es iniciado por un actor. Apartir de ese momento, ese actor, junto con otros actores intercambia datos ocontrol con el sistema.El nombre de un caso de uso se expresa con un verbo en gerundio, seguidogeneralmente por el principal objeto o entidad del sistema que es afectado por elcaso. Gráficamente, los casos de uso se representan con un óvalo, con el nombredel caso en su interior como se muestra en la figura 6.
  • 24. RESIDENCIA PROFESIONAL18Es importante notar que el nombre del caso siempre está expresado desde elpunto de vista del actor y no desde el punto de vista del sistema. Por eso elsegundo caso de uso se llama recibiendo información de pedidos y no generandoinformación de pedidos.Los casos de uso tienen las siguientes características:Están expresados desde el punto de vista del actor.Se documentan con texto informal.Describen tanto lo que hace el actor como lo que hace el sistema cuandointeractúa con él, aunque el énfasis está puesto en la interacción.Son iniciados por un único actor.Están acotados al uso de una determinada funcionalidad –claramentediferenciada– del sistema.ActoresUn actor es una agrupación uniforme de personas, sistemas o máquinas queinteractúan con el sistema que estamos construyendo de la misma forma.Por ejemplo, para una empresa que recibe pedidos en forma telefónica, todos losoperadores que reciban pedidos y los ingresen en un sistema de ventas, si puedenhacer las mismas cosas con el sistema, son considerados un único acto.Los actores se representan con dibujos simplificados de personas, llamados eninglés “stick man” (hombres de palo).Figura 6- Representación de los casos de uso
  • 25. RESIDENCIA PROFESIONAL193.7. Patrones de Diseño[5]Los patrones de diseño son el esqueleto de las soluciones a problemascomunes en el desarrollo de software. En otras palabras, brindan una solución yaprobada y documentada a problemas de desarrollo de software que están sujetosa contextos similares. Se debe tener presente los siguientes elementos de unpatrón: su nombre, el problema (cuando aplicar un patrón), la solución (descripciónabstracta del problema) y las consecuencias (costos y beneficios).Ventajas de utilizar Patrones de diseñoLa gran ventaja del uso de patrones es que minimizan el riesgo de generar un maldiseño y permiten comunicar experiencias entre diseñadores.Es posible elegir el patrón más adecuado a nuestras necesidades, estos son losaspectos de un patrón que se deben evaluar:Resistencia al cambio: se debe elegir el patrón que facilite lo más posiblesfuturos cambios. Los cambios en un diseño no son probables, son seguros, seproducen con toda seguridad. A la hora de diseñar una solución a un problema esconveniente abstraer el problema concreto a otro más genérico y resolver esteúltimo. Los patrones consiguen precisamente esto.Reutilización: este aspecto requiere una aclaración importante. La reutilización decódigo resulta prácticamente imposible. En cambio, los diseños son mucho másreutilizables, pero ni siquiera tanto como las propias ideas. Se debe tender areutilizar las ideas. Por eso, cuando hacemos un diseño debemos pensar en quenos debe ser útil para futuros proyectos, en su esencia o filosofía, no en suestructura o implementación. Así, lo conveniente es buscar patrones nuevos endiseños nuevos, documentarlos y almacenarlos como una parte importante denuestra experiencia. Son como una "álbum de fotos" de nuestros viajes.
  • 26. RESIDENCIA PROFESIONAL20Clasificación de los patrones de diseño:1. Patrones Creacionales: Inicialización y configuración de objetos.2. Patrones Estructurales: Separan la interfaz de la implementación. Seocupan de cómo las clases y objetos se agrupan, para formar estructurasmás grandes.3. Patrones de Comportamiento: Más que describir objetos o clases,describen la comunicación entre ellos.Patrones Creacionales1. Fábrica Abstracta (Abstract Factory)El problema a solucionar por este patrón es el de crear diferentes familias deobjetos, como por ejemplo la creación de interfaces gráficas de distintos tipos(ventana, menú, botón, etc.).2. Método de Fabricación (Factory Method)Parte del principio de que las subclases determinan la clase a implementar (Figura7).3. Prototipado (Prototype)Se basa en la clonación de ejemplares copiándolos de un prototipo.4. Singleton
  • 27. RESIDENCIA PROFESIONAL21[6]El patrón de diseño singleton (instancia única) está diseñado para restringir lacreación de objetos pertenecientes a una clase o el valor de un tipo a un únicoobjeto.Su intención consiste en garantizar que una clase sólo tenga una instancia yproporcionar un punto de acceso global a ella.El patrón singleton se implementa creando en nuestra clase un método que creauna instancia del objeto sólo si todavía no existe alguna. Para asegurar que laclase no puede ser instanciada nuevamente se regula el alcance del constructor(con atributos como protegido o privado).La instrumentación del patrón puede ser delicada en programas con múltiples hilosde ejecución. Si dos hilos de ejecución intentan crear la instancia al mismo tiempoy esta no existe todavía, sólo uno de ellos debe lograr crear el objeto. La soluciónclásica para este problema es utilizar exclusión mutua en el método de creaciónde la clase que implementa el patrón.Las situaciones más habituales de aplicación de este patrón son aquellas en lasque dicha clase controla el acceso a un recurso físico único (como puede ser elratón o un archivo abierto en modo exclusivo) o cuando cierto tipo de datos debeestar disponible para todos los demás objetos de la aplicación.El patrón singleton provee una única instancia global gracias a que:La propia clase es responsable de crear la única instancia.Permite el acceso global a dicha instancia mediante un método de clase.Declara el constructor de clase como privado para que no sea instanciabledirectamente.
  • 28. RESIDENCIA PROFESIONAL22Una implementación del patrón singleton en PHP5 se muestra en la figura 8:5. MVC (Modelo Vista Controlador)Este patrón plantea la separación del problema en tres capas: la capa modelo, querepresenta la realidad; la capa controlador, que conoce los métodos y atributos delmodelo, recibe y realiza lo que el usuario quiere hacer; y la capa vista, quemuestra un aspecto del modelo y es utilizada por la capa anterior parainteraccionar con el usuario.Patrones EstructuralesAdaptador (Adapter): Convierte una interfaz en otra.Puente (Bridge): Desacopla una abstracción de su implementaciónpermitiendo modificarlas independientemente.Objeto Compuesto (Composite): Utilizado para construir objetos complejosa partir de otros más simples, utilizando para ello la composición recursiva yuna estructura de árbol.Figura 7- Implementación del Patrón Singleton en PHP5
  • 29. RESIDENCIA PROFESIONAL23Envoltorio (Decorator): Permite añadir dinámicamente funcionalidad a unaclase existente, evitando heredar sucesivas clases para incorporar la nuevafuncionalidad.Fachada (Facade): Permite simplificar la interfaz para un subsistema.Peso Ligero (Flyweight): Elimina la redundancia o la reduce cuandotenemos gran cantidad de objetos con información idéntica.Apoderado (Proxy): Un objeto se aproxima a otro.Patrones de ComportamientoCadena de responsabilidad (Chain of responsibility): La base es permitirque más de un objeto tenga la posibilidad de atender una petición.Orden (Command): Encapsula una petición como un objeto dando laposibilidad de “deshacer” la petición.Intérprete (Interpreter): Intérprete de lenguaje para una gramática simple ysencilla.Iterador (Iterator): Define una interfaz que declara los métodos necesariospara acceder secuencialmente a una colección de objetos sin exponer suestructura interna.Mediador (Mediator): Coordina las relaciones entre sus asociados. Permitela interacción de varios objetos, sin generar acoples fuertes en esasrelaciones.Recuerdo (Memento): Almacena el estado de un objeto y lo restauraposteriormente.Observador (Observer): Notificaciones de cambios de estado de un objeto.Estado (Server): Se utiliza cuando el comportamiento de un objeto cambiadependiendo del estado del mismo.Estrategia (Strategy): Utilizado para manejar la selección de un algoritmo.Método plantilla (Template Method): Algoritmo con varios pasossuministrados por una clase derivada.
  • 30. RESIDENCIA PROFESIONAL24Visitante (Visitor): Operaciones aplicadas a elementos de una estructura deobjetos heterogénea.3.8. Framework[7]Se define como estructura conceptual y tecnológica de soporte definido,normalmente con artefactos o módulos de software concretos, que puede servir debase para la organización y desarrollo de software. Típicamente, puede incluirsoporte de programas, bibliotecas, y un lenguaje interpretado, entre otrasherramientas, para así ayudar a desarrollar y unir los diferentes componentes deun proyecto.Son diseñados con la intención de facilitar el desarrollo de software, permitiendo alos diseñadores y programadores pasar más tiempo identificando requerimientosde software que tratando con los tediosos detalles de bajo nivel de proveer unsistema funcional.3.9. JQuery[8]JQuery es un framework de JavaScript para facilitar, entre otros, el acceso a loselementos del DOM, los efectos, interactuar con los documentos HTML,desarrollar animaciones y agregar interacción con la tecnología AJAX a páginasweb.JQuery consiste en un único fichero JavaScript que contiene las funcionalidadescomunes de DOM, eventos, efectos y AJAX. La característica principal de labiblioteca es que permite cambiar el contenido de una página web sin necesidadde recargarla, mediante la manipulación del árbol DOM y peticiones AJAX. Paraello utiliza las funciones $() o JQuery ().
  • 31. RESIDENCIA PROFESIONAL253.10. PDO[9]La extensión Objetos de Datos de PHP (PDO por sus siglas en inglés) defineuna interfaz ligera para poder acceder a bases de datos en PHP. Cada controladorde bases de datos que implemente la interfaz PDO puede exponer característicasespecíficas de la base de datos, como las funciones habituales de la extensión.Obsérvese que no se puede realizar ninguna de las funciones de la bases dedatos utilizando la extensión PDO por sí misma; se debe utilizar un controlador dePDO específico de la base de datos para tener acceso a un servidor de bases dedatos.PDO proporciona una capa de abstracción de acceso a datos, lo que significa que,independientemente de la base de datos que se esté utilizando, se usan lasmismas funciones para realizar consultas y obtener datos. PDO no proporcionauna abstracción de bases de datos; no reescribe SQL ni emula característicasausentes. Se debería usar una capa de abstracción totalmente desarrollada sifuera necesaria tal capacidad.PDO viene con PHP 5.4, y está disponible como una extensión PECL para PHP5.0; requiere las características nuevas de OO del núcleo de PHP 5, por lo que nose ejecutará con versiones anteriores de PHP.En la Figura 8 se observa cómo seimplementa PDO en PHP5.
  • 32. RESIDENCIA PROFESIONAL26Figura 8- Implementación de PDO en PHP 5
  • 33. RESIDENCIA PROFESIONAL27CAPITULO 4. DESCRIPCIÓN DE LAS ACTIVIDADESREALIZADASEl objetivo de este capítulo es presentar las actividades que se realizaron duranteel desarrollo del proyecto, los cuales sustentarán la validez y confiabilidad delestudio. Primeramente se presentará una previa de cada actividad y sedesglosarán detalladamente los pasos que se realizaron en cada una de ellas; seincluyen imágenes y tablas de los procedimientos llevados a cabo, con surespectiva descripción.Dentro del marco del desarrollo del presente trabajo se realizaron las actividadesque a continuación se detallan.4.1.Análisis de Requisitos.4.1.1. Recolección de Información.4.1.2. Resultados Obtenidos del Análisis de la Información Recolectada.4.1.3. Requerimientos del Sistema.4.2.Diseño arquitectónico.4.2.1. Arquitectura del Sistema.4.2.2. Diseño de Clases.4.2.3. Modelo Relacional de la Base de Datos.4.2.4. Diseño de Interfaces.4.3.Codificación y Prueba.
  • 34. RESIDENCIA PROFESIONAL284.1. Análisis de RequisitosPara estudiar los tipos de requisitos que habría que recolectar en el desarrollo deSistemas de información, lo primero que habría que tener en cuenta es, por unlado, estudiar las necesidades de almacenamiento y funcionalidad, importantes entodos los sistemas de información, pero además hay que recabar informaciónreferente a esos aspectos que acercan a los sistemas de información.[10]El análisis de requisitos proporciona una representación de la información,función y comportamiento el cual puede trasladar a diseños arquitectónicos, deinterfaz y en el nivel de componentes.El modelo de análisis debe cumplir tres objetivos:1) Describir lo que quiere el cliente.2) Establecer una base para la creación de un diseño de software3) Definir un conjunto de requisitos que puedan validarse una vez construidoel software.En el análisis de requisitos se aplican las técnicas de recolección de datos. Estainformación la podemos obtener por medio de entrevistas al personal de laempresa o con datos que la empresa maneje en documento que servirá de guíapara obtener información.La información que la empresa pueda brindar será primordial para establecer losrequerimientos del desarrollo del sistema de información.
  • 35. RESIDENCIA PROFESIONAL294.1.1. Recolección de InformaciónPara recolectar la información necesaria, se realizó una entrevista con losaspectos fundamentales para el desarrollo de este estudio, con el fin de aplicarlaal Dr. Oscar Gurría Penagos, Médico y Director del Sanatorio Santa Isabel.Nota: Para mayor información sobre la entrevista realizada, Ver Anexo I4.1.2. Resultados Obtenidos del Análisis de la Información RecolectadaInicialmente se realizó un levantamiento de requerimientos para el sistema,logrando tener una primera visión del negocio.Tras el análisis de la información recolectada se decide realizar visitas al SanatorioSanta Isabel para observar personalmente los procesos que fueron resaltados enla información que proporcionó el Dr. Oscar Gurría Penagos.A continuación, se presentan los detalles que se pudieron observar en elprocedimiento que realiza el personal del sanatorio que no fueron descritos en laentrevista, y que serán de gran ayuda para el desarrollo del proyecto:Cada médico tiene asignado una secretariaLos pacientes pueden solicitar reservaciones de citas personalmente o porteléfono.El proceso de asignación de una cita tarda en promedio de 2 a 5 minutos.El día de la cita del paciente, la secretaria llena un formato con los datos delpaciente, y luego se los proporciona a su respectivo médico.Al término de una consulta, el paciente realiza el pago de este a lasecretaria, quien por último entrega el respectivo comprobante de pago.Al igual que las consultas médicas, en las cirugías se cobra, el serviciocorrespondiente (cirugía mayor o menor) y su respectiva hospitalización.
  • 36. RESIDENCIA PROFESIONAL30En total se realizaron 4 visitas (2 para la entrevista y 2 para la observación de losprocedimientos del personal), y se llegó a la conclusión de que ya no erannecesarias más visitas, puesto que los requerimientos del sistema estáncompletos.Nota: Para Observar el formato de ejemplo del expediente clínico de un pacientedel Sanatorio Santa Isabel, ver anexo número II.4.1.3. Requerimientos del SistemaComo resultado del análisis de requisitos se obtuvieron los siguientes entregables:1.- Requerimientos funcionales.2.- Casos de usos.3.- Diagramas de secuencia.Los cuales permitieron establecer una base para la creación de un diseño desoftware en la siguiente etapa.Requerimientos funcionalesR1.- En el sistema existirán 3 tipos de usuarios: Administrador, Médico y Gestor decitas.R2.- El administrador será el encargado de ingresar al sistema a nuevosadministradores, Médicos y gestores de citas.R3.- Al momento de dar de alta a un gestor de citas (en este caso es lasecretaria), se le asignará a los médicos con los cuales trabajará.
  • 37. RESIDENCIA PROFESIONAL31R4.- Un paciente podrá reservar únicamente una cita en un día con unespecialista.R5.- La única manera en que un paciente podrá tener dos o más citas reservadasen el mismo día, será que estas sean con diferentes especialistas.R6.- El gestor de citas únicamente podrá gestionar las citas, así también como alos pacientes de los respectivos médicos a los cuales fue asignado.R7.- El gestor de citas podrá realizar reportes de citas del día, así como las citaspendientes en total.R8.- El médico podrá iniciar una consulta, según la hora estipulada en una cita.R9.- El médico podrá gestionar las consultas médicas.R10.- El médico podrá gestionar los antecedentes clínicos de los pacientes.R11.- En cada consulta, el médico podrá formular una receta e imprimirla.R12.- El médico podrá gestionar los resultados de ultrasonido, así también comolos resultados de laboratorio entregados por el paciente.R13.- El médico podrá agendar citas para cirugías a los pacientes.R14.- El médico podrá modificar, eliminar o consultar las cirugías las cuales hayareservado.R15.- El médico no podrá transponer horarios de cirugías, cuando se trate delmismo cirujano.
  • 38. RESIDENCIA PROFESIONAL32R16.- El médico podrá gestionar los datos de las cirugías de los pacientes.R17.- El médico podrá realizar reportes de las cirugías que estén pendientes porrealizarse.R18.- El médico podrá realizar reportes del historial clínico de los pacientes.R19.- El médico podrá gestionar los pagos hechos por los pacientes.R20.- Por cada consulta y cirugía (cirugía mayor o menor), el paciente realiza unpago.R21.- El médico podrá realizar reportes de las ganancias obtenidas según el lapsode tiempo que se requiera.Casos de uso[10]En lugar de examinar un problema mediante un modelo convencional del tipoentrada-procesamiento-salida (flujo de información) o un modelo derivado enforma exclusiva de las estructuras jerárquicas de información, el análisis orientadoa objetos construye un modelo orientado a las clases que se basa en lacomprensión de los conceptos orientados a objetos.Por lo cual se procedió a la creación de escenarios en la forma de casos de uso(Figura 9).
  • 39. RESIDENCIA PROFESIONAL33uc Casos de usoMédicoSecretariaGestor decitasAdministrar PacienteAdministrar cobrosAdministrar resultados deultrasonidoAdministrar pruebas delaboratorioBuscar pacienteAdministrar cirugíasAdministrar ConsultasAdministrar citasmédicasConsulta calendario de citasAdministrar Fechas decirugíaConsulta de calendario decirugíasReporte de cirugíaspendientesGenerar reportesPara poder realizar lasacciones de todos loscasos de uso, esnecesario que elusuario esté logueadoExportar lista depacientesSe generan reportesde:-Citas del dia-Citas pendientes-Cobros por paciente-GananciasAdministrar recetas«include»«include»«include»«include»«include»«include»«include»«include»Figura 9- Diagrama de Casos de uso General
  • 40. RESIDENCIA PROFESIONAL34Nota: Para mayor información sobre la documentación de los casos de uso, veranexo número III.Para el diseño de los diagramas de casos de uso se hizo uso de la herramientaCASE Enterprise Architecten su versión 7.5.Diagramas de secuencia.Una vez que se han identificado los eventos al examinar un caso de uso, esnecesario hacer una transición al comportamiento dinámico del sistema. Paralograrlo se diseñaron los llamados diagramas de secuencia. Dichos diagramas sonuna representación de cómo los eventos causan un flujo de un evento a otro comouna función de tiempo.Nota: Para mayor información sobre los diagramas de secuencia realizados en elanálisis de requisitos, ver anexo número IV.Para el diseño de los diagramas de secuencia se hizo uso de la herramientaCASE Enterprise Architecten su versión 7.5.
  • 41. RESIDENCIA PROFESIONAL354.2. Diseño arquitectónicoCon los entregables de la actividad anterior se estableció la base para la creaciónde un diseño de software.Para el diseño Arquitectónico del sistema se contemplaron dos elementosprincipales:Interfaces usables.Un diseño minimalistico para la fácil utilización del sistema por parte delusuario final.4.2.1. Arquitectura del SistemaEl sistema fue diseñado con la arquitectura cliente/servidor de tres capas (Figura10), siendo estas las siguientes:arch compNavegador WebSistema Gestor de Basede DatosPágina Estática(HTML)Servidor WebPágina Dinámica(PHP)Figura 10- Arquitectura del sistema
  • 42. RESIDENCIA PROFESIONAL36capa de presentación: Esta etapa es con la que interactúan los usuariosdel sistema. Está formada por el navegador, el cual traduce el código HTMLen algo visual.Capa del servidor web: aquí se encuentra la lógica del negocio requeridapara atender la solicitud de los usuarios y retornar a la capa depresentación los resultados esperados. Dicha capa, en el proyecto, estáconformada por el servidor de páginas web Apache 2.2.17 y por PHP 5.3.5.Capa de base de datos:en el proyecto esta capa está conformada por elsistema gestor de base de datos MySQL 5.0.7. Cabe destacar que esposible implementar cualquier otro SGBD (PostgreSQL, SQL Server,Oracle, etc.) gracias a la implementación del patrón de diseño MVC (Figura11).4.2.2. Diseño de ClasesPara el diseño de los diagramas de clases se hizo uso de la herramienta CASEEnterprise Architecten su versión 7.5.En la figura 12 se observa el diagrama de clases diseñado para SAGA Médica.Figura 11- Patrón MVC
  • 43. RESIDENCIA PROFESIONAL37class ClasesPaciente- Nombre: string- ApePat: string- ApeMat: string- Direccion: string- Ciudad: string- Edad: int- Sexo: string- EdoCivil: string- Ocupacion: string- Telcasa: int- Telcel: int- Email: string+ exportaPacientesPDF() : void+ exportaPacientesXLS() : voidCita- Fecha: date- Inicio: time- Fin: time- Status: string- Nota: text+ reportediaCita() : void+ reportependienteCita() : void+ exportaCitaXLS() : voidPago- Fecha: date- Hora: time- Nota: text+ reporteGanancia() : void+ imprimirRecibo() : voidUltrasonido- Datos: textLaboratorio- Datos: textConsulta- Fecha: date- Hora: time- Temperatura: int- Talla: int- Peso: int- Imc: int- Ta: string- Sintomas: text- Inspeccion: text- Palpacion: text- Auscultacion: text- Percusion: text- Plan: text- Diagnostico: text+ reporteConsultas() : voidCirugia- Fecha: date- Inicio: time- Fin: time- Instrumentista: string- Anestesiologo: string- TipoAnestesia: text- Hallazgos: text- Sangrado: text- Complicaciones: text- Edosalud: text- Pronostico: text- Indicaciones: text- FechaEgreso: date- HoraEgreso: time- ObsPostOperatoria: text- PlanEgreso: text- DxPre: string- DxPost: stringAntecedente- Heredofamiliar: text- Patologico: text- Nopatologico: textCitaCirugia- Fecha: date- Hora: time- Nota: text+ reportediaAcirugia() : void+ reportependienteAcirugia() : voidReceta- Contenido: text- Fecha: date- Hora: time+ imprimirReceta() : voidMyPDO+ agregarRegistro() : void+ eliminarRegistro() : void+ consultarRegistro() : void+ contarRegistro() : void+ modificarRegistro() : voidPDOTrabaj ador- Nombre: string- Direccion: string- Ciudad: string- TelCasa: int- TelCel: int- Email: string- Cedula: int- Especialidad: string- User: string- Pass: string- Status: string+ login() : void+ logout() : voidMedicina- Nombre: string- Componente: text- Presentacion: text- Viadmin: stringTipoCirugia- Nombre: string- Detalle: textTipoUltrasonido- Nombre: string- Detalle: textServ icio- Nombre: string- Precio: doubleTipoLaboratorio- Nombre: string- Detalle: textPerfil- Nombre: stringPriv iliegio- Nombre: stringTodas las clases (excepto PDO) heredan los métodos yatributos de la clase MyPDO, el cual hereda los métodosy atributos de la clase PDOHorario- Hora: timeFigura 12- Diagrama de clases de SAGA Médica
  • 44. RESIDENCIA PROFESIONAL384.2.3. Modelo Relacional de la Base de DatosFigura 13- Modelo Relacional de SAGA Médica
  • 45. RESIDENCIA PROFESIONAL39Para el diseño relacional de la base de datos (Figura 13) se hizo uso de laherramienta CASE MySQL Workbenchen su versión 5.2, la cual facilitó lacreación, el diseño y el mantenimiento de nuestra base de datos y laadministración de la misma, además de la obtención del diccionario de datosNota: Para mayor información sobre el diccionario de datos, ver anexo número V.4.2.4. Diseño de InterfacesPara la implementación de la interfaz se realizó un análisis funcional y usable quetuviera un impacto corto en la curva del aprendizaje del usuario final ante elsistema teniendo como resultado los siguientes diseños de interfaces.El diseño de la interfaz de usuario se utilizó el lenguaje de marcado HTML,además del lenguaje de etiquetas CSS para el estilo de cada pantalla.A continuación se ilustran los bosquejos de pantallas.Figura 14- Página de inicio de sesión
  • 46. RESIDENCIA PROFESIONAL40Figura 15- Página principalFigura 16- Página de catálogos
  • 47. RESIDENCIA PROFESIONAL41Figura 17- Almacenamiento de los catálogos
  • 48. RESIDENCIA PROFESIONAL424.3. Codificación y PruebaEn esta etapa se genera el código correspondiente a cada uno de loscomponentes del sistema de información, identificados en la etapa de diseñoarquitectónico.Una vez de haberse diseñado una arquitectura óptima para el sistema, se inició labúsqueda de un patrón de diseño que cubriera las siguientes necesidades:1. Curva de aprendizaje óptima.2. Fácil implementación.3. Que agilice el tiempo de desarrollo.4. Que se adapte a las necesidades del sistema a desarrollarLas herramientas utilizadas para llevar a cabo esta actividad son las siguientes:El lenguaje de programación utilizado para el desarrollo de SAGA Médica fuePHP5. Además se utilizó el lenguaje JavaScript para hacer la interfaz de usuariomás dinámica, implementando el Framework JQuery, que ayuda a reducir códigoy mejorar su entendimiento.El sistema gestor de base de datos utilizado fue MySQL en su versión 5.0.7. Cabemencionar que se puede utilizar cualquier otro SGBD, ya que fue implementadoPDO como interfaz para acceder a la base de datos (en este caso el controladorpara MySQL, si se desease cambiar de SGBD, solo basta utilizar su respectivocontrolador).Para que estas herramientas trabajen juntas, y así el sistema funcionecorrectamente, es necesario utilizar un servidor web, en esta ocasión el elegidofue Apache, en su versión 2.2.17. En la decisión de utilizar este servidor no fuenecesario realizar un estudio de los diferentes servidores que existen en el
  • 49. RESIDENCIA PROFESIONAL43mercado, ya que Apache viene integrado con el lenguaje interpretado PHP y conMySQL como SGBD por defecto, herramientas escogidas previamente para eldesarrollo del sistema.Para el desarrollo de la aplicación, se implementaron bibliotecas de componentescomo JQuery y JQuery UI que le añaden un conjunto de plug-ins, widgets yefectos visuales. También se implementaron plug-in para el JQuery de JavaScriptcomo son las tablas de datos conocidas también como DataTables, que es unaherramienta muy flexible, basado en los fundamentos de la mejora progresiva, loque añadirá controles avanzados de interacción a cualquiera de las tablas enHTML.Se decidió implementar el patrón de diseño Singleton, ya que es un patrón que norequiere un estudio profundo para poder utilizarlo, y es relativamente sencilla suimplementación; además, está comprobada su efectividad para solucionarproblemas de desarrollo. Otra de las razones para haber optado por dicho patrónes la manera en la que ayuda a reducir código, agilizando el tiempo decodificación, y, como el sistema será orientado a objetos, se adapta muy bien a lasnecesidades de desarrollo.El sistema de información También está basado en el patrón de diseño MVC queobliga a dividir y organizar el código de acuerdo a las convenciones establecidaspor un framework. El código de la presentación se guarda en la vista, el código demanipulación de datos se guarda en el modelo y la lógica de procesamiento de laspeticiones constituye el controlador.La organización del código fuente en unaestructura de tipo proyecto y se almacena los archivos del proyecto en unaestructura estandarizada.Dentro de la organización que se tiene del código, está representada en lasiguiente estructura:
  • 50. RESIDENCIA PROFESIONAL44Una base de datos, En este caso fue MySQL.Archivo estáticos (HTML, imágenes, archivos de JavaScript, hojas deestilos, etc.).Clases y librerías PHP.Librerías externas (scripts desarrollados por terceros)Archivos de configuración.Este sistema de información proporciona una estructura para organizar de formalógica todos los contenidos, además de ser consistente con la arquitectura MVCutilizada y con la agrupación Modelo / Vista / Controlador. Cada vez que se creaun nuevo módulo, se genera de forma automática la parte correspondiente de esaestructura. Además, la estructura se puede personalizar completamente, parareorganizar los archivos y directorios.Integración del softwareEl presente sistema se desarrolló bajo el paradigma orientado a objetos basado endos patrones de diseños (MVC, Singleton), lo cual facilito el desarrollo modular delmismo; así como la integración.PruebaLas pruebas realizadas en este sistema de software fueron las pruebas alfa. En elcual se corrigieron problemas de programación y diseño, durante este período losdatos fueron analizados al igual que la codificación para ver que no existierandiferencias con los resultados de entrada y de salida.Las pruebas alfa se llevan a cabo por los usuarios finales del software en loslugares de trabajo de los clientes. En este proceso no nos encontramos presentespara no sesgar las pruebas, recomendándoles capturas de pantallas y lasanotaciones sobre las actividades que desarrollaba en ese momento.
  • 51. RESIDENCIA PROFESIONAL45Así también se implementaron pruebas beta que es una aplicación en vivo delsoftware en un entorno que no puede ser controlado por el desarrollador. El clienteregistra todos los problemas que encuentra durante la prueba beta e informa aintervalos regulares al desarrollador.
  • 52. RESIDENCIA PROFESIONAL46CAPITULO 5. CONCLUSIONES Y RECOMENDACIONES5.1. ConclusionesEl proceso de elaboración del Proyecto se enfocó en el esfuerzo de construir loselementos críticos estructuralmente y del comportamiento de los llamadosElementos Arquitecturales antes de construir elementos menos importantes.Existe gran variedad de herramientas tanto de licencia libre como propietarias,todas enfocadas a apoyar el desarrollo de software. Cada organización es laencargada de determinar porque rama enfocarse a la hora de implementar sussoluciones de software.Así mismo se conocen herramientas que ofrecen más ventajas que otras encuanto a la facilidad de diseño, entendimiento de la sintaxis, utilidades, nivel dealmacenamiento, transportabilidad desde y hacia diversas plataformas, entreotras. Es función del desarrollador definir por cuales herramientas inclinarse, detal manera que se logre construir software de calidad que satisfaga lasnecesidades de su organización.Toda aplicación antes de salir a producción tiene todo un proceso de análisis derequerimientos, estudios de factibilidad, implementación de prototipos,determinación de los factores críticos de éxito, diseño, plan de pruebas, que elusuario final no ve, lo que permite establecer que el proceso de construcción desoftware es un proceso complejo y más aún cuando lo que más interesa es poderlograr que se cumpla con las necesidades por las que fue concebido.
  • 53. RESIDENCIA PROFESIONAL475.2. RecomendacionesLas recomendaciones técnicas para el uso eficaz del sistema de información sonlas siguientes:1. Leer manual de usuario2. Realizar el respaldo de información cotidianamente.3. Establecer contraseñas fáciles de recordar.
  • 54. RESIDENCIA PROFESIONAL48BIBLIOGRAFÍA[1] cie.unam.mx. (20 de Febrero de 2013). Obtenido dehttp://www.cie.unam.mx/~ojs/pub/Termodinamica/node9.html[2] freetutes.com. (24 de Mayo de 2013). Obtenido dehttp://www.freetutes.com/systemanalysis/classifications-of-system.html[3] Langefors, B. (1973). Theoretical Analysis of Information Systems.SueciaLund y Filadelfia: Studentlitteratur.[4] uchile.cl. (19 de Abril de 2013). Obtenido dehttp://users.dcc.uchile.cl/~psalinas/uml/casosuso.html[5] Tedeschi, N. (12 de Junio de 2013). msdn.microsoft.com. Obtenido dehttp://msdn.microsoft.com/es-es/library/bb972240.aspx[6] Wikipedia. (12 de Marzo de 2013). wikipedia.org. Obtenido dehttp://es.wikipedia.org/wiki/Singleton[7] Wikipedia. (13 de Abril de 2013). wikipedia.org. Obtenido dehttp://es.wikipedia.org/wiki/Framework[8] Murphey, R. (2011). Fundamentos de JQuery.Licencia Creative Commons.[9] Group, php. (16 de Mayo de 2013). php.net. Obtenido dehttp://php.net/manual/es/intro.pdo.php[10] S. Pressman, R. (2005). Ingeniería del software: Un enfoque práctico (Sextaed.). Mc Graw Hill.
  • 55. RESIDENCIA PROFESIONAL49ANEXOS
  • 56. RESIDENCIA PROFESIONAL50Anexo IEntrevista Para Obtención deRequerimientos
  • 57. RESIDENCIA PROFESIONAL51Objetivo de la entrevista: Recopilar información que permita conocer elfuncionamiento del Sanatorio Santa Isabel, centrándose en el proceso decalendarización de citas médicas y cirugías, además del procedimiento para larealización de consultas médicas. Esta información será utilizada en el proyecto deresidencia:“Sistema de Agenda y Administración Médica – SAGA médica”1. ¿Qué problemas ha tenido al momento de reservar las citas médicas?Hay ocasiones en las que se reservan dos citas en el mismo día y a la mismahora, ya que no se tiene un sistema que controle que no se emparejen las horas.2. ¿Cómo lleva el control de las citas médicas?La secretaria lleva el control de las citas médicas de cada paciente, tiene a lamano un calendario y revisa los días que están disponibles, y en una libretaapunta la fecha y la hora de las citas.3. ¿Cuántas citas son reservadas al día?Entre 4 y 8 citas.4. ¿Cuántas cancelaciones de citas tiene al mes?Hablando en porcentaje, un 10% aproximadamente. Normalmente es por cambiode fecha.5. ¿Tiene alguna política con respecto a las citas médicas?Bueno, solamente con lo que respecta a que un paciente no tenga dos o más citasmédicas en el mismo día con un mismo médico.6. ¿Qué procedimiento utiliza para almacenar el expediente clínico desus pacientes?En una hoja de Word®vacío los datos generales del paciente y lo pongo en unacarpeta. En otra hoja de Word anoto los datos de la consulta y lo almaceno en lamisma carpeta.
  • 58. RESIDENCIA PROFESIONAL527. ¿Qué procedimiento utiliza actualmente en cada consulta médica?1. Llenar una ficha de identificación2. Vaciar los datos de la ficha en una hoja de Word3. Apuntar los datos clínicos del padecimiento actual4. Antecedentes clínicos5. Exploración física6. Estudios de laboratorio de gabinete (análisis clínicos, etc.)7. Diagnostico8. Plan de Tratamiento9. Elaboración de la receta correspondiente10.Fecha de la próxima cita8. El proceso actual para la gestión de consultas médicas, lo considera:a) Ágil y sencillob) Ágil, pero no es tan sencilloc) Demorado y complicadod) Demorado, pero sencillo9. ¿Qué problemas ha tenido con el procedimiento que usted lleva acabo, me refiero a cómo almacena los expedientes?Se me dificulta el estar buscando por carpeta el expediente de mi paciente enturno.10.¿Cuáles son los datos generales que le pide al paciente?Nombre y apellidosEdadDirecciónOcupaciónEstado civilTeléfono de casa o celularSexo
  • 59. RESIDENCIA PROFESIONAL5311.¿Qué datos captura en cada consulta?TemperaturaTensión arterialPesoTallaInspecciónAuscultaciónPalpaciónPercusiónDiagnosticoReceta prescritaSi es paciente nuevo, tomo sus antecedentes clínicos, como lo son antecedentesheredofamiliares, antecedentes personales patológicos y antecedentes personalesno patológicos.12.¿Cuántas consultas realiza al día?Aproximadamente entre 5 y 10 consultas médicas.13.¿Cuánto tiempo tarda una consulta?Entre 30 minutos y 1 hora aproximadamente14.¿Los pacientes tienen un número de identificación?No, identifico a mis pacientes sólo por su nombre.15.¿Qué datos toma para cada cirugía?Diagnostico preoperatorio.Diagnostico postoperatorio.HallazgosOperación realizadaCirujanoAyudante
  • 60. RESIDENCIA PROFESIONAL54InstrumentistaAnestesiólogoTipo de anestesiaComplicacionesSangradoEstado de saludPronostico16.¿Cómo lleva el control de las cirugías?Igual que las citas médicas, se programan para una fecha y hora determinada enla cual el cirujano esté disponible, se anotan en una libreta y en un calendario.17.¿Qué datos guarda cuando recibe los exámenes de laboratorio delpaciente?Guardo el nombre del laboratorio, el tipo de examen realizado y todo el contenidode los resultados.18.¿Qué datos guarda cuando recibe el ultrasonido entregado por elpaciente?El nombre del médico que realizó el ultrasonido y los hallazgos.19.¿Realiza algún reporte periódicamente?Si, realizo un reporte de las consultas realizadas durante el mes, así como unreporte de las cirugías realizadas. Se realizan dichos reportes ya que se entreganmensualmente a Salubridad cuando lo solicita.20.¿Por cuales servicios usted realiza cobros a los pacientes?Cobro por consulta, además se cobra por cirugía y hospitalización.21.¿Cuáles son los precios por cada servicio?Consulta medicina general: $300.00Derecho cirugía menor: $490.00Derecho cirugía mayor: $590.00
  • 61. RESIDENCIA PROFESIONAL5522.¿Qué datos anota en las recetas que prescribe?Anoto la fecha en que entrego la receta, el nombre del medicamento, lapresentación (jarabe, capsulas, etc.), la vía de administración (oral, cutánea, etc.)y la dosis.
  • 62. RESIDENCIA PROFESIONAL56Anexo IIMuestra Expediente Clínicode Paciente del Sanatorio SantaIsabel
  • 63. RESIDENCIA PROFESIONAL57CORONADO C. REYNAF24a.- Col. Pobres Unidos, Tapachula.IntendenteSoltera19/11/12 Nota inicial y preoperatoria:1.58m Antecedentes:87.5 kg Sobrepeso 29.5 kgSíndrome de Intestino Irritable con estreñimiento de larga evoluciónNiega DM, hipertensión, alergias.MC: Dolor en HD sec a colecistopatía.EF Obesa, sin ictericia, con dolor en HD sin megalias ni plastrones, ni IP.Usg hepatobiliar del Dr. Toledo del 24/oct/12: CCL con lito enclavado en cuellovesicular.Vesícula con pared delgada, Colédoco 2 mm, Bazo, Páncreas normales.Dx.- CCL agudizada.Plan: Laboratorio y Usg con RHH.Colecistectomía / Pati2dh ωεςα18.5/22/11/12 Hb12.5, Ht42%, GB8600, Plat381mil, Sangre O+, TP12” (11.5), TTP30.3 (25-35),Gluc 99.Usg Dr RHH 22/Nov/12:-Vesícula 62x32mm, pared delgada con varios litos,Colédoco 5mm,Porta 11mm,-Hígado Graso difuso severo (Grado III)-Páncreas y Riñones normales.Conclusión: ObesidadColecistitis crónica litiásica agudizadaHígado graso severo Grado IIISx intestino irritable con E.Plan: Colecistectomía el lunes 26 a las 8 de la mañana.Indicaciones para su ingreso:a. Ingres a las 8 de la mañanab. Signos vitalesc. Avisar al anestesiólogod. 1000 ml Hartman para 8 hse. Ceftrex 1 gr IV a su ingresof. Ranisen 1 amp IV a su ingreso26/11/12 Nota postoperatoria:IC: 21:00hs Dx preoperatorio: CCLTC: 22:40hs Dx postoperatorio: CCLOperación realizada: Colecistectomía abiertaHallazgos: Vesícula de 6x4 cm, pared delgada, 4 litos de 8-10 mmformado de microlitos, Cístico de 2mm, Colédoco 6 mm.Cirujano: Dr. Gurría, Dr. Medina, Dr. Trujillo, Enf MagalyAnestesia: BPD por Dra. Tania Hernández López
  • 64. RESIDENCIA PROFESIONAL58Complicaciones: NingunaSangrado: 10-20 mlEstado de salud: DelicadoPronóstico: Bueno.Indicaciones postoperatorias:a. Ayunob. SV cada 30 minutos en hoja separada.c. Cambio de apósitos PRNd. Reportarme sangrado1. 1000 ml glucosa 5% para 8 hs1000 ml mixto para 8 hs1000 ml glucosa 5% para 8 hs2. Ketorolaco 60 mg IV cada 6 hs3. Ranisen 1 amp IV cada 12 hs4. Metoclopramida 10 mg IV cada 8 hs28/11/12 PQ2, sin complicaciones, ingesta bien tolerada, excretas normales, SV normales,sin sangrado, retiro 10:59hs Penrose sin problema. Sin irritación peritoneal.Plan de egreso: *MHD para colitis con E*Cita el 4 de dica las 10 hs*Actron plus Cáps 1x2x5*Eborix (cleboprida) 500 mcg 1x3x20*Liberan (simeticona) Tab. Mast. 2x4 htc
  • 65. RESIDENCIA PROFESIONAL59Anexo IIIEspecificación de losCasos de Uso
  • 66. RESIDENCIA PROFESIONAL60ActoresACT-0001 AdministradorVersión 1.0 ( 06/03/2013 )Autores Exal Alejandro Saenz MatuzFuentesDescripción Este actor representa a la persona que Gestionará a los usuarios,así como a los aspectos de catálogos del sistemaComentarios NingunoActor AdministradorACT-0002 MédicoVersión 1.0 ( 06/03/2013 )Autores Exal Alejandro Saenz MatuzFuentesDescripción Este actor representa A quien gestionará a los pacientes, citasmédicas, consultas, cirugías, cobros, recetas, pruebas delaboratorio y ultrasonidos.Comentarios NingunoActor MédicoACT-0003 Gestor de citasVersión 1.0 ( 06/03/2013 )AutoresFuentesDescripción Este actor representa A una secretaria. Podrá gestionarúnicamente a pacientes y citas médicas.Comentarios NingunoActor Gestor de citas
  • 67. RESIDENCIA PROFESIONAL61ACT-0004 UsuarioVersión 1.0 ( 06/03/2013 )Autores Exal Alejandro Saenz MatuzFuentesDescripción Este actor representa a todos los actores que utilizarán el sistemaComentarios NingunoActor UsuarioCasos de usoUC-0001 LogueoVersión 1.0 ( 06/03/2013 )Autores Exal Alejandro Saenz MatuzFuentesDependencias NingunoDescripción El sistema deberá comportarse tal como se describe en elsiguiente caso de uso cuando El siguiente caso de uso comienzacuando un usuario solicita realizar algún tipo de operación en elsistema. o durante la realización de los siguientes casos de uso:[UC-0002] Administrar paciente, [UC-0003] Buscar paciente, [UC-0004] Exportar lista de pacientes, [UC-0005] Administrar pagos,[UC-0006] Consulta de calendario de citas, [UC-0007] Administrarcitas médicas, [UC-0008] Generar reportes, [UC-0010]Administrar consulta, [UC-0011] Administrar pruebas delaboratorio, [UC-0012] Administrar resultados de ultrasonido, [UC-0013] Administrar recetas, [UC-0014] Consulta de calendario decirugías, [UC-0015] Administrar fechas de cirugía, [UC-0016]Reporte de cirugías pendientes, [UC-0017] Solicitud de cita, [UC-0019] Consulta de cita, [UC-0020] Cancelación de citaPrecondición El usuario debe estar registrado en el sistemael usuario debe tener su respectivo nombre de usuario ycontraseñaSecuencianormalPaso Acción1 El actor Usuario (ACT-0004) abre la página del sistema2 El sistema Solicita que el usuario se identifiqueingresando su usuario y contraseña.3 El actor Usuario (ACT-0004) da clic en el botón entrar.4 El sistema Muestra la página de inicio donde seencuentran los menús, y el espacio de trabajo5 El actor Usuario (ACT-0004) Selecciona alguna opción delmenú que requiere
  • 68. RESIDENCIA PROFESIONAL62Postcondición El usuario que ingresa al sistema podrá realizar los movimientosque necesite.Excepciones Paso Acción2 Si Cancelación de logueo, el actor Usuario (ACT-0004)Puede cancelar el proceso en cualquier momentopulsando el botón Cancelar reiniciando de esta forma elcaso de uso., a continuación este caso de uso queda sinefecto2 Si nombre de usuario o contraseña incorrectos, el sistemaMostrará un mensaje con el aviso de error, a continuacióneste caso de uso continúaRendimiento Paso Tiempo máximo2 2 segundo(s)4 1 segundo(s)Frecuenciaesperada5 veces por día(s)Importancia importanteUrgencia inmediatamenteEstado en construcciónEstabilidad altaComentarios NingunoCU LogueoUC-0002 Administrar pacienteVersión 1.0 ( 14/03/2013 )Autores Exal Alejandro Saenz MatuzFuentesDependencias NingunoDescripción El sistema deberá comportarse tal como se describe en elsiguiente caso de uso cuando Se necesita gestionar a lospacientes del sistemaPrecondición El gestor de citas debe de estar logueadoEl paciente debe de estar dado de alta en el sistemaSecuencianormalPaso Acción1 Si Gestor de citas no está logueado en el sistema, serealiza el caso de uso Logueo (UC-0001)2 Se realiza el caso de uso Buscar paciente (UC-0003)3 El sistema Despliega una tabla con los datos del paciente,además de sus respectivas opciones de modificar,eliminar y consultar.Postcondición Se ha realizado alguna operación de alta, baja, modificación oconsulta del pacienteExcepciones Paso Acción
  • 69. RESIDENCIA PROFESIONAL633 Si El paciente es nuevo, el actor Gestor de citas (ACT-0003) Da clic en el botón "nuevo paciente" para ingresarloal sistema, a continuación este caso de uso continúaRendimiento Paso Tiempo máximo3 1 segundo(s)Frecuenciaesperada30 veces por día(s)Importancia vitalUrgencia inmediatamenteEstado en construcciónEstabilidad altaComentarios NingunoCU Administrar pacienteUC-0003 Buscar pacienteVersión 1.0 ( 14/03/2013 )Autores Exal Alejandro Saenz MatuzFuentesDependencias NingunoDescripción El sistema deberá comportarse tal como se describe en elsiguiente caso de uso cuando Se requiere realizar un movimientode Alta, baja, modificación o consulta de paciente o durante larealización de los siguientes casos de uso: [UC-0002] Administrarpaciente, [UC-0005] Administrar pagos, [UC-0010] Administrarconsulta, [UC-0011] Administrar pruebas de laboratorio, [UC-0012] Administrar resultados de ultrasonido, [UC-0013]Administrar recetasPrecondición El gestor de citas debe de estar logueado en el sistemaEl paciente debe de estar dado de alta en el sistemaSecuencianormalPaso Acción1 Si Gestor de citas no está logueado en el sistema, serealiza el caso de uso Logueo (UC-0001)2 El actor Gestor de citas (ACT-0003) Accede a la secciónPacientes en el menú principal3 El sistema Visualiza un campo de texto para introducir elnombre del paciente a gestionar4 El actor Gestor de citas (ACT-0003) Introduce el nombredel paciente a gestionar5 El actor Gestor de citas (ACT-0003) Da clic en el botón"buscar"Postcondición El gestor de citas podrá realizar cualquier movimiento sobre elpacienteExcepciones Paso Acción
  • 70. RESIDENCIA PROFESIONAL645 Si Cancelación de búsqueda de paciente, el actor Gestorde citas (ACT-0003) Puede cancelar el proceso encualquier momento pulsando el botón Cancelarreiniciando de esta forma el caso de uso, a continuacióneste caso de uso queda sin efectoRendimiento Paso Tiempo máximo3 1 segundo(s)Frecuenciaesperada40 veces por día(s)Importancia vitalUrgencia inmediatamenteEstado en construcciónEstabilidad altaComentarios NingunoCU Buscar pacienteUC-0004 Exportar lista de pacientesVersión 1.0 ( 14/03/2013 )Autores Exal Alejandro Saenz MatuzFuentesDependencias NingunoDescripción El sistema deberá comportarse tal como se describe en elsiguiente caso de uso cuando Se requiera conocer los datos detodos los pacientes del sistemaPrecondición El gestor citas debe de estar logueado en el sistemaSecuencianormalPaso Acción1 Si Gestor de citas no está logueado en el sistema, serealiza el caso de uso Logueo (UC-0001)2 El actor Gestor de citas (ACT-0003) Se dirige al menúprincipal y selecciona la opción "pacientes"3 El actor Gestor de citas (ACT-0003) Selecciona delsubmenú la opción "Exportar lista de pacientes a PDF" o"Exportar lista de pacientes a EXCEL"4 El sistema genera un archivo .pdf o .xls (según sea elcaso) con los datos de los pacientes, así como sucorrespondiente expediente clínicoPostcondiciónExcepciones Paso Acción- -Rendimiento Paso Tiempo máximo4 2 segundo(s)Frecuenciaesperada1 veces por día(s)
  • 71. RESIDENCIA PROFESIONAL65Importancia importanteUrgencia inmediatamenteEstado en construcciónEstabilidad altaComentarios NingunoCU Exportar lista de pacientesUC-0005 Administrar pagosVersión 1.0 ( 14/03/2013 )Autores Exal Alejandro Saenz MatuzFuentesDependencias NingunoDescripción El sistema deberá comportarse tal como se describe en elsiguiente caso de uso cuando Se llevará a cabo la administraciónde los cobros realizados a los pacientesPrecondición El médicodebe de estar logueado en el sistemaEl paciente debe de estar dado de alta en el sistemaSecuencianormalPaso Acción1 Si Médico no está logueado en el sistema, se realiza elcaso de uso Logueo (UC-0001)2 Se realiza el caso de uso Buscar paciente (UC-0003)3 El actor Médico (ACT-0002) Selecciona al paciente al cualse le realizará el cobro4 El sistema Visualiza la lista de todos los pagos realizadospor el paciente, con sus respectivas opciones de eliminar,modificar y consultar5 El actor Médico (ACT-0002) , para ingresar un nuevopago, debe de dar clic en el botón "nuevo pago"Postcondición Se ha realizado alguna operación de alta, baja, modificación oconsulta de cobroExcepciones Paso Acción5 Si Cancelación de cobro, el actor Médico (ACT-0002)Puede cancelar el proceso en cualquier momentopulsando el botón Cancelar reiniciando de esta forma elcaso de uso, a continuación este caso de uso queda sinefectoRendimiento Paso Tiempo máximo4 1 segundo(s)Frecuenciaesperada30 veces por día(s)Importancia vitalUrgencia inmediatamenteEstado en construcción
  • 72. RESIDENCIA PROFESIONAL66Estabilidad altaComentarios NingunoCU Administrar pagosUC-0006 Consulta de calendario de citasVersión 1.0 ( 14/03/2013 )Autores Exal Alejandro Saenz MatuzFuentesDependencias NingunoDescripción El sistema deberá comportarse tal como se describe en elsiguiente caso de uso cuando Se requiera consultar citas odurante la realización de los siguientes casos de uso: [UC-0007]Administrar citas médicasPrecondición El Gestor de cobros debe de estar logueado en el sistemaSecuencianormalPaso Acción1 Si Gestor de citas no está logueado en el sistema, serealiza el caso de uso Logueo (UC-0001)2 El actor Gestor de citas (ACT-0003) Selecciona la opción"citas" del menú principal3 El sistema Visualiza las opciones del menú "citas"4 El actor Gestor de citas (ACT-0003) Selecciona "vercalendario"5 El sistema Visualiza el calendario de citas6 El actor Gestor de citas (ACT-0003) puede seleccionarentre 3 formas de vista de calendario, por día, por semanay por mesPostcondiciónExcepciones Paso Acción5 Si Regreso a pantalla de inicio, el actor Gestor de citas(ACT-0003) Da clic en el botón "inicio" del menú principal,a continuación este caso de uso queda sin efectoRendimiento Paso Tiempo máximo3 1 segundo(s)5 1 segundo(s)Frecuenciaesperada40 veces por día(s)Importancia vitalUrgencia inmediatamenteEstado en construcciónEstabilidad altaComentarios NingunoCU Consulta de calendario de citas
  • 73. RESIDENCIA PROFESIONAL67UC-0007 Administrar citas médicasVersión 1.0 ( 14/03/2013 )Autores Exal Alejandro Saenz MatuzFuentesDependencias NingunoDescripción El sistema deberá comportarse tal como se describe en elsiguiente caso de uso cuando el Gestor de citas necesita realizaruna acción de alta, baja, modificación o consulta de citasPrecondición El gestor de citas debe de estar logueado en el sistemaSecuencianormalPaso Acción1 Si El gestor de citas no está logueado en el sistema, serealiza el caso de uso Logueo (UC-0001)2 Se realiza el caso de uso Consulta de calendario de citas(UC-0006)3 El actor Gestor de citas (ACT-0003) Selecciona la fecha yhora a gestionar4 El sistema Visualiza un formulario con los campos de horade inicio y fin de cita5 El actor Gestor de citas (ACT-0003) Ingresa los datos dehora de inicio y hora fin de cita, y si es requerido, algúncomentario para la cita6 El actor Gestor de citas (ACT-0003) Guarda la cita dandoclic en el botón "guardar"7 El sistema Envía un recordatorio de cita correo electrónicoal paciente 24 horas antes de que inicie la citaPostcondición Se ha realizado alguna operación de alta, baja, modificación oconsulta de citaExcepciones Paso Acción4 Si Cita existente, el sistema Muestra los datos de la citacon sus respectivas opciones de modificar y eliminar cita,a continuación este caso de uso continúaRendimiento Paso Tiempo máximo4 1 segundo(s)7 5 segundo(s)Frecuenciaesperada20 veces por día(s)Importancia vitalUrgencia inmediatamenteEstado en construcciónEstabilidad altaComentarios NingunoCU Administrar citas médicas
  • 74. RESIDENCIA PROFESIONAL68UC-0008 Generar reportesVersión 1.0 ( 14/03/2013 )Autores Exal Alejandro Saenz MatuzFuentesDependencias NingunoDescripción El sistema deberá comportarse tal como se describe en elsiguiente caso de uso cuando Se requiera saber la informaciónde citas del día, citas pendientes o gananciasPrecondición El gestor de citas debe de estar logueado en el sistemaSecuencianormalPaso Acción1 Si El gestor de citas no está logueado en el sistema, serealiza el caso de uso Logueo (UC-0001)2 El actor Gestor de citas (ACT-0003) Selecciona la opción"Reportes" del menú principal3 El sistema Visualiza una lista de opciones, como citas deldía o citas pendientes4 El actor Gestor de citas (ACT-0003) Selecciona una de lasopciones5 El sistema Exporta los datos a un archivo .pdf y losvisualiza en el navegadorPostcondiciónExcepciones Paso Acción- -Rendimiento Paso Tiempo máximo3 1 segundo(s)5 2 segundo(s)Frecuenciaesperada2 veces por día(s)Importancia vitalUrgencia inmediatamenteEstado en construcciónEstabilidad altaComentarios NingunoCU Generar reportesUC-009 Administrar consultaVersión 1.0 ( 14/03/2013 )Autores Exal Alejandro Saenz MatuzFuentesDependencias NingunoDescripción El sistema deberá comportarse tal como se describe en elsiguiente caso de uso cuando Se necesita gestionar las consultas
  • 75. RESIDENCIA PROFESIONAL69médicasPrecondición El médico debe de estar logueadoEl paciente debe de estar dado de alta en el sistemaSecuencianormalPaso Acción1 Si Médico no está logueado en el sistema, se realiza elcaso de uso Logueo (UC-0001)2 Se realiza el caso de uso Buscar paciente (UC-0003)3 El actor Médico (ACT-0002) Selecciona al paciente al cualle brindará la consulta4 El sistema Visualiza varias secciones relacionados alpaciente5 El actor Médico (ACT-0002) Entra en la sección"Consultas"6 El sistema Visualiza todas las consultas realizadas alpaciente, con sus respectivas opciones de modificar yeliminar, además de la opción "nueva consulta"7 El actor Médico (ACT-0002) Selecciona "Nueva consulta"8 El sistema Visualiza un formulario donde se introducen losdatos correspondientes a la consulta actual9 El actor Médico (ACT-0002) Introduce los datos deconsulta10 El actor Médico (ACT-0002) Guarda la consulta dando clicen el botón "Guardar"Postcondición Se ha realizado alguna operación de alta, baja, modificación oconsulta de consulta médicaExcepciones Paso Acción7 Si Se requiere modificación o eliminación de consulta , elactor Médico (ACT-0002) Selecciona la opción modificar oeliminar consulta, a continuación este caso de usocontinúaRendimiento Paso Tiempo máximo4 1 segundo(s)6 1 segundo(s)8 1 segundo(s)Frecuenciaesperada20 veces por día(s)Importancia vitalUrgencia inmediatamenteEstado en construcciónEstabilidad altaComentarios NingunoCU Administrar consultaUC-0010 Administrar pruebas de laboratorio
  • 76. RESIDENCIA PROFESIONAL70Versión 1.0 ( 14/03/2013 )Autores Exal Alejandro Saenz MatuzFuentesDependencias NingunoDescripción El sistema deberá comportarse tal como se describe en elsiguiente caso de uso cuando Se necesita gestionar las pruebas delaboratorioPrecondición Se necesite gestionar las pruebas de laboratorioSecuencianormalPaso Acción1 Si Médico no está logueado en el sistema, se realiza el caso deuso Logueo (UC-0001)2 Se realiza el caso de uso Buscar paciente (UC-0003)3 El actor Médico (ACT-0002) Selecciona al paciente el cual leentrega los resultados de laboratorio4 El sistema Visualiza varias secciones relacionados al paciente5 El actor Médico (ACT-0002) Entra en la sección "Pruebas delaboratorio"6 El sistema Visualiza todas las pruebas de laboratorio capturadasdel paciente, con sus respectivas opciones de modificar y eliminar,además de la opción "ingresar nueva prueba"7 El actor Médico (ACT-0002) Selecciona "Ingresar nueva prueba"8 El sistema Visualiza un formulario donde se introducen los datos dela prueba9 El actor Médico (ACT-0002) Introduce los datos de la prueba10 El actor Médico (ACT-0002) Guarda los datos dando clic en elbotón "Guardar"Postcondición Se ha realizado alguna operación de alta, baja, modificación oconsulta de pruebas de laboratorioExcepciones Paso Acción7 Si Se requiere modificación o eliminación de consulta , el actorMédico (ACT-0002) Selecciona la opción modificar o eliminarprueba, a continuación este caso de uso continúaRendimiento Paso Tiempo máximo4 1 segundo(s)6 1 segundo(s)8 1 segundo(s)Frecuenciaesperada5 veces por día(s)Importancia vitalUrgencia inmediatamenteEstado en construcciónEstabilidad altaComentarios NingunoCU Administrar pruebas de laboratorio
  • 77. RESIDENCIA PROFESIONAL71UC-0011 Administrar resultados de ultrasonidoVersión 1.0 ( 14/03/2013 )Autores Exal Alejandro Saenz MatuzFuentesDependencias NingunoDescripción El sistema deberá comportarse tal como se describe en elsiguiente caso de uso cuando Se necesita gestionar resultadosde ultrasonidoPrecondición El médico debe de estar logueadoEl paciente debe de estar dado de alta en el sistemaSecuencianormalPaso Acción1 Si Médico no está logueado en el sistema, se realiza elcaso de uso Logueo (UC-0001)2 Se realiza el caso de uso Buscar paciente (UC-0003)3 El actor Médico (ACT-0002) Selecciona al paciente el cualle entrega los resultados de ultrasonido4 El sistema Visualiza varias secciones relacionados alpaciente5 El actor Médico (ACT-0002) Entra en la sección"Resultados de ultrasonido"6 El sistema Visualiza todos los resultados de ultrasonidocapturados del paciente, con sus respectivas opciones demodificar y eliminar, además de la opción "ingresarnuevos resultados"7 El actor Médico (ACT-0002) Selecciona "Ingresar nuevosresultados"8 El sistema Visualiza un formulario donde se introducen losdatos de los resultados9 El actor Médico (ACT-0002) Introduce los datos de losresultados10 El actor Médico (ACT-0002) Guarda los datos dando clicen el botón "Guardar"Postcondición Se ha realizado alguna operación de alta, baja, modificación oconsulta de resultados de ultrasonidoExcepciones Paso Acción7 Si Se requiere modificación o eliminación de resultado deultrasonido, el actor Médico (ACT-0002) Selecciona laopción modificar o eliminar resultado, a continuación estecaso de uso continúaRendimiento Paso Tiempo máximo4 1 segundo(s)6 1 segundo(s)8 1 segundo(s)
  • 78. RESIDENCIA PROFESIONAL72Frecuenciaesperada5 veces por día(s)Importancia vitalUrgencia inmediatamenteEstado en construcciónEstabilidad altaComentarios NingunoCU Administrar resultados de ultrasonidoUC-0012 Administrar recetasVersión 1.0 ( 15/03/2013 )Autores Exal Alejandro Saenz MatuzFuentesDependencias NingunoDescripción El sistema deberá comportarse tal como se describe en elsiguiente caso de uso cuando Se necesita gestionar las recetasmédicasPrecondición El médico debe de estar logueadoEl paciente debe de estar dado de alta en el sistemaSecuencianormalPaso Acción1 Si Médico no está logueado en el sistema, se realiza elcaso de uso Logueo (UC-0001)2 Se realiza el caso de uso Buscar paciente (UC-0003)3 El actor Médico (ACT-0002) Selecciona al paciente4 El sistema Visualiza varias secciones relacionadas alpaciente5 El actor Médico (ACT-0002) Entra en la sección "Recetasmédicas"6 El sistema Visualiza todas las recetas prescritas alpaciente, con sus respectivas opciones de modificar yeliminar, además de la opción "ingresar nueva receta"7 El actor Médico (ACT-0002) Selecciona "Ingresar nuevareceta"8 El sistema Visualiza un formulario donde se introducen losdatos de la receta9 El actor Médico (ACT-0002) Introduce los datos de lareceta10 El actor Médico (ACT-0002) Guarda los datos dando clicen el botón "Guardar receta"11 El sistema Visualiza los datos de la receta12 El actor Médico (ACT-0002) Imprime la recetaPostcondición Se ha realizado alguna operación de alta, baja, modificación oconsulta de receta médica
  • 79. RESIDENCIA PROFESIONAL73Excepciones Paso Acción7 Si Se requiere modificación o eliminación de algunareceta, el actor Médico (ACT-0002) Selecciona la opciónmodificar o eliminar, a continuación este caso de usocontinúaRendimiento Paso Tiempo máximo4 1 segundo(s)6 1 segundo(s)8 1 segundo(s)11 2 segundo(s)Frecuenciaesperada20 veces por día(s)Importancia vitalUrgencia inmediatamenteEstado en construcciónEstabilidad altaComentarios NingunoCU Administrar recetasUC-0013 Consulta de calendario de cirugíasVersión 1.0 ( 15/03/2013 )Autores Exal Alejandro Saenz MatuzFuentesDependencias NingunoDescripción El sistema deberá comportarse tal como se describe en elsiguiente caso de uso cuando Se requiera consultar fechas decirugías o durante la realización de los siguientes casos de uso:[UC-0015] Administrar fechas de cirugíaPrecondición El médico debe de estar logueado en el sistemaSecuencianormalPaso Acción1 Si Médico no está logueado en el sistema, se realiza elcaso de uso Logueo (UC-0001)2 El actor Médico (ACT-0002) Selecciona la opción"Cirugías" del menú principal3 El sistema Visualiza el calendario de cirugías4 El actor Médico (ACT-0002) Puede seleccionar entre 3formas de vista de calendario, por día, por semana y pormesPostcondiciónExcepciones Paso Acción3 Si Regreso a pantalla de inicio, el actor Médico (ACT-0002) Da clic en el botón "inicio" del menú principal, acontinuación este caso de uso queda sin efecto
  • 80. RESIDENCIA PROFESIONAL74Rendimiento Paso Tiempo máximo3 1 segundo(s)Frecuenciaesperada10 veces por día(s)Importancia vitalUrgencia inmediatamenteEstado en construcciónEstabilidad altaComentarios NingunoCU Consulta del calendario de cirugíasUC-0014 Administrar fechas de cirugíaVersión 1.0 ( 15/03/2013 )Autores Exal Alejandro Saenz MatuzFuentesDependencias NingunoDescripción El sistema deberá comportarse tal como se describe en elsiguiente caso de uso cuando el médico necesita realizar unaacción de alta, baja, modificación o consulta de calendarizaciónde cirugíaPrecondición El médico debe de estar logueado en el sistemaSecuencianormalPaso Acción1 Si Médico no está logueado en el sistema, se realiza elcaso de uso Logueo (UC-0001)2 Se realiza el caso de uso Consulta de calendario decirugías (UC-0014)3 El actor Médico (ACT-0002) Selecciona la fecha y hora agestionar4 El sistema Visualiza un formulario con los campos defecha de cirugía y observaciones5 El actor Médico (ACT-0002) Ingresa los datos requeridosen el formulario6 El actor Médico (ACT-0002) Guarda la fecha de cirugíadando clic en el botón "guardar"Postcondición Se ha realizado alguna operación de alta, baja, modificación oconsulta de fecha de cirugíaExcepciones Paso Acción4 Si Fecha de cirugía existente , el sistema Muestra losdatos de la cita con sus respectivas opciones de modificary eliminar fecha de cirugía, a continuación este caso deuso continúaRendimiento Paso Tiempo máximo4 1 segundo(s)
  • 81. RESIDENCIA PROFESIONAL75Frecuenciaesperada5 veces por día(s)Importancia vitalUrgencia inmediatamenteEstado en construcciónEstabilidad altaComentarios NingunoCU Administrar fechas de cirugíaUC-0015 Reporte de cirugías pendientesVersión 1.0 ( 16/03/2013 )Autores Exal Alejandro Saenz MatuzFuentesDependencias NingunoDescripción El sistema deberá comportarse tal como se describe en elsiguiente caso de uso cuando Se necesita generar reportes decirugías pendientesPrecondición El médico debe de estar logueado en el sistemaSecuencianormalPaso Acción1 Si Médico no está logueado en el sistema, se realiza elcaso de uso Logueo (UC-0001)2 El actor Médico (ACT-0002) Selecciona la opción"Cirugías" del menú principal3 El actor Médico (ACT-0002) Da clic en la opción "Reportede cirugías pendientes"4 El sistema Exporta los datos a un archivo .pdf y losvisualiza en el navegadorPostcondiciónExcepciones Paso Acción- -Rendimiento Paso Tiempo máximo4 2 segundo(s)Frecuenciaesperada1 veces por día(s)Importancia vitalUrgencia inmediatamenteEstado en construcciónEstabilidad altaComentarios NingunoCU Reporte de cirugías pendientes
  • 82. RESIDENCIA PROFESIONAL76Anexo IVDiagrama de Secuencias
  • 83. RESIDENCIA PROFESIONAL77Diagrama de secuencia LogueoDiagrama de secuencia Administrar pacientesd LogueoUsuario IU Navegador Entidad Usuario IU Espacio detrabajo1: Abrir página del sistema()2: Formulario de logueo()3: Ingresar usuario y contraseña()4: Validar Usuarioy contraseña()5: Accesar al sistema()6: Visualizaespacio detrabajo()sd Administrar pacienteIU Menú pacientes Lista de pacientesGestor de citas y cobros IU Gestión depacienteCRUD PacienteIU SecciónpacientesPaciente1: Selecionar "buscarpaciente"()2: Visualizaformulario debusqueda()3: Ingresa nombre de paciente()4: busca paciente()5: Resultado de busqueda()6: Visualizar datos depaciente()7: Visualizar opciones degestión()8: Seleccionaropción()
  • 84. RESIDENCIA PROFESIONAL78Diagrama de secuencia Buscar pacienteDiagrama de secuencia Exportar lista de pacientessd Buscar PacienteGestor de citas y cobros IU Menú pacientes Lista de pacientesIU Secciónpacientes1: Seleccionar "buscarpaciente"()2: Visualiza formulario debusqueda()3: Ingresa nombre depaciente()4: buscapaciente()5: Resultadodebusqueda()sd Exportar lista de pacientesGestor de citas y cobros IU Menú pacientes Libreria deexportaciónIU Navegador1: Seleccionar "Exportar lista de pacientes"()2: Genera archivo con datos depacientes()3: Opción dedescarga()4: Aceptar descarga()
  • 85. RESIDENCIA PROFESIONAL79Diagrama de secuencia Administrar pagosDiagrama de secuencia Consulta de calendario de citassd Consulta calendario de citasGestor de citas y cobros IU Menú principal IU Calendario decitas1: Selecciona opcióncitas()2: Visualizar lista de opcionesMenú citas()3: Seleccionar opción "vercalendario"()4: Visualizarcalendario()5: Opciones devisualización()6: Selecciona opción de visualización()sd Administrar pagosGestor de citas y cobros IU Menú pacientes Lista de pacientesIU SecciónpacientesIU Gestión decobrosCRUD cobros1: Selecionar "buscar paciente"()2: Visualiza formulario de busqueda()3: Ingresa nombre de paciente()4: busca paciente()5: Resultado de busqueda()6: Seleccionarpaciente()7: Visualiza opciones de gestión depagos()8: Seleciona opción()
  • 86. RESIDENCIA PROFESIONAL80Diagrama de secuencia Administrar citas médicasDiagrama de secuencia Generar reportessd Administrar citas médicasGestor de citas y cobros IU Menú principal IU Calendario decitasEntidad citaIU Formulario decitaEntidad Fecha Correo recordatorio Paciente1: Seleccionaopción citas()2: Mostrar lista deopciones Menú citas()3: Seleccionaropción "vercalendario"()4: Visualizarcalendario()5: Opcionesdevisualización()6: Seleccionaopción devisualización()7: Mostrarfechas()8:Seleccionarfecha() 9: Visualizarformulario deregistro()10:Completarformulario()11:Guardarcita()Generarcorreo()programar envio 24horas antes de cita()Enviarcorreo()sd Generar reportesGestor de citas y cobros IU Menú principal Libreria deexportaciónIU Navegador1: Selecciona opciónreportes()2: Visualizar lista de opciones demenú "reportes"()3: selecciona opción()4: Genera archivo con datos delreporte()5: Opción de descarga()6: Aceptar descarga()7: Visualizar datos dereporte()
  • 87. RESIDENCIA PROFESIONAL81Diagrama de secuencia Administrar consultaDiagrama de secuencia Administrar pruebas de laboratoriosd Administrar ConsultaIU Menú pacientes Lista de pacientesIU SecciónpacientesMédico IU GestiónconsultasEntidad consulta1: Selecionar "buscar paciente"()2: Visualiza formulario de busqueda()3: Ingresa nombre de paciente()4: busca paciente()5: Resultado de busqueda()6: Seleccionar paciente()7: Visualizar lista de consultasy opción nueva consulta()8: Seleccionar nuevaconsulta()9: Visualizar formulario deconsulta()10: Introducir datos deconsulta()11: Guardar consulta()sd Administrar pruebas de laboratorioIU Menú pacientes Lista de pacientesIU SecciónpacientesMédico IU Gestión pruebasde laboratorioEntidad Prueba delaboratorio1: Selecionar "buscar paciente"()2: Visualiza formulario de busqueda()3: Ingresa nombre de paciente()4: Busca paciente()5: Resultado de busqueda()6: Seleccionar paciente()7: Visualiza lista de pruebas guardadas y opción nueva prueba()8: Selecciona nueva prueba()9: Visualizar formulario()10: Introducir datos de prueba()11: Guardar datos de prueba()
  • 88. RESIDENCIA PROFESIONAL82Diagrama de secuencia Administrar resultados de ultrasonidoDiagrama de secuencia Administrar recetassd Administrar pruebas de ultrasonidoIU Menú pacientes Lista de pacientesIU SecciónpacientesMédico IU Gestiónresultados deultrasonidoEntidad resultadosde ultrasonido1: Selecionar "buscar paciente"()2: Visualiza formulario de busqueda()3: Ingresa nombre de paciente()4: busca paciente()5: Resultado de busqueda()6: Seleccionar paciente()7: Visualiza resultados guardados y opción nuevo resultado()8: Seleccionar nuevo resultado()9: Visualizar formulario()10: Introducirdatos deresultados()11: Guardar datos de resultado()sd Administrar recetasIU Menú pacientes IU SecciónpacientesMédico Lista de pacientes IU Gestión recetas Entidad Receta1: Selecionar "buscar paciente"()2: Visualiza formulario de busqueda()3: Ingresa nombre de paciente()4: busca paciente()5: Resultado de busqueda()6: Seleccionar paciente()7: Visualiza todas las recetas prescritas y opción nueva receta()8: Selecciona nueva receta()9: Visualiza formulario()10: Introducir datos de receta()11: Imprimir receta()12: Guardar datos de receta()
  • 89. RESIDENCIA PROFESIONAL83Diagrama de secuencia Consulta de calendario de cirugíasDiagrama de secuencia Administrar fechas de cirugíasd Consulta calendario de cirugíasMédico IU Menú principal IU Calendario decirugías1: Selecciona opción cirugías()2: Visualizar opciones de menú cirugías()3: Seleccionar opción "Consulta de calendario()4: Visualizar calendario()5: Opciones de visualización()6: Selecciona opción de visualización()sd Administrar fechas para cirugíaMédico IU Menú principal IU Calendario decirugíasEntidad Fechacirugía1: Selecciona opción cirugías()2: Visualiza opcionesde menú cirugía()3: Seleccionar opción "Consulta de calendario()4: Visualizar calendario()5: Opciones de visualización()6: Seleccionar opciónde visualización()7: Mostrar fechas()8: Seleccionar fecha()9: Visualizar formulario de registro()10: completar formulario()11: Reservarcirugía()
  • 90. RESIDENCIA PROFESIONAL84Diagrama de secuencia Reporte de cirugías pendientessd Reporte cirugías pendientesMédico IU Menú principal Libreria deexportaciónIU Navegador1: Selecciona opcióncirugías()2: Visualiza lista de opciones menú cirugías()3:Selecciona opción "cirugíaspendientes"()4: Genera archivocon las cirugíaspor llevarse acabo()5: Opción de descarga()6: Aceptar descarga()7: Visualizar datos de reporte()
  • 91. RESIDENCIA PROFESIONAL85Anexo VDiccionario de Datos
  • 92. RESIDENCIA PROFESIONAL86tblc_horarioContiene el horario de los trabajadoresColumnnameDataType PK NN UQ BIN UN ZF AI Default Commentid_horario INT ✔ ✔ Almacenael númerodeidentificación delusuariohora TIME ✔ Almacenala hora delhorariotbls_trabajador_id_trabINT ✔ Claveforánea deltrabajador
  • 93. RESIDENCIA PROFESIONAL87tblc_medicinaEsta tabla contiene el catálogo de medicinasColumnnameDataType PK NN UQ BIN UN ZF AI Default Commentid_medicina INT ✔ ✔ ✔ Almacena elnúmero deidentificaciónde la medicinanombre VARCHAR(45) ✔ Almacena elnombrecomercial dela medicinacomponente TEXT Almacena elnombre de loscomponentesde la medicinapresentacion TEXT Almacena losdetalles depresentaciónen farmaciasde la medicinaviadmin VARCHAR(45) Almacena lainformación devia deadministraciónde la medicina
  • 94. RESIDENCIA PROFESIONAL88tblc_pacienteEsta tabla contiene los datos de los pacientesColumn name DataType PK NN UQ BIN UN ZF AI Default Commentid_paciente INT ✔ ✔ ✔ Almacena elnúmero deidentificacióndel pacientenombre VARCHAR(45)✔ Almacena elnombre de piladel pacienteapepat VARCHAR(45)✔ Almacena elapellidopaterno delpacienteapemat VARCHAR(45)✔ Almacena elapellidomaterno delpacientedireccion VARCHAR(140)Almacena ladireccióncompleta delpacienteciudad VARCHAR(45)Almacena laciudad donderadica elpacienteedad INT Almacena laedad delpacientesexo VARCHAR(9)Almacena elsexo delpacienteedocivil VARCHAR(45)Almacena elestado civil delpacienteocupacion VARCHAR(140)Almacena eltrabajo u oficioque elpacientedesempeñatelcasa VARCHAR(10)Almacena elteléfono decasa delpacientetelcel VARCHAR( Almacena el
  • 95. RESIDENCIA PROFESIONAL8910) teléfonocelular delpacienteemail VARCHAR(45)Almacena elcorreoelectrónico delpacienteingreso DATE Almacena lafecha deingreso alsistema delpacientetblc_servicioEsta tabla contiene el catálogo de serviciosColumnnameDataType PK NN UQ BIN UN ZF AI Default Commentid_servicio INT ✔ ✔ ✔ Almacena elnúmero deidentificación delconcepto depagonombre VARCHAR(45) ✔ Almacena elnombre delconcepto depagoprecio DOUBLE ✔ Almacena elprecio delconcepto depago
  • 96. RESIDENCIA PROFESIONAL90tblc_tipocirugiaEsta tabla contiene el catálogo de tipos de cirugíaColumnnameDataType PK NN UQ BIN UN ZF AI Default Commentid_tipocirugia INT ✔ ✔ ✔ Almacena elnúmero deidentificacióndel tipo decirugíanombre VARCHAR(140) ✔ Almacena elnombre deltipo decirugíadetalle TEXT Almacenalos detallesdel tipo decirugíatblc_tipolaboratorioEsta tabla contiene el catálogo de los tipos de prueba de laboratorioColumnnameDataType PK NN UQ BIN UN ZF AI Default Commentid_tipolab INT ✔ ✔ ✔ Almacena elnúmero deidentificación deltipo de muestrade laboratorionombre VARCHAR(45) ✔ Almacena losdetalles del tipode muestra delaboratoriodetalle TEXT Almacena losdetalles del tipode ultrasonido
  • 97. RESIDENCIA PROFESIONAL91tblc_tipoultasonidoEsta tabla contiene el catálogo de tipos de ultrasonidoColumnnameDataType PK NN UQ BIN UN ZF AI Default Commentid_tipoultra INT ✔ ✔ ✔ Almacena elnúmero deidentificación deltipo deultrasonidonombre VARCHAR(45) ✔ Almacena elnombre del tipode ultrasonidodetalle TEXT Almacena losdetalles del tipode ultrasonidotbld_perfil_privilegioTabla de detalle perfil-privilegioColumn name DataType PK NN UQ BIN UN ZF AI Default Commentperfil_id_perfil INT ✔ ✔ Claveprimariaforáneade perfilprivilegio_id_privilegio INT ✔ ✔ Claveprimariaforáneadeprivilegio
  • 98. RESIDENCIA PROFESIONAL92tbld_receta_medicinaTabla de detalle receta-medicinaColumn name DataType PK NN UQ BIN UN ZF AI DefaultCommentreceta_id_receta INT ✔ ✔ Claveprimariaforánea derecetamedicina_id_medicina INT ✔ ✔ Claveprimariaforánea demedicinalapso VARCHAR(140)Almacenael lapsode unatoma aotra de lamedicinaduración VARCHAR(140)Almacenael tiempoquedurará eltratamiento
  • 99. RESIDENCIA PROFESIONAL93tblh_antecedenteEsta tabla contiene los antecedentes de los pacientesColumn name DataType PK NN UQ BIN UN ZF AI Default Commentid_antecedente INT ✔ ✔ ✔ Almacena elnúmero deidentificación delantecedenteheredofamiliar TEXT Almacena losantecedentesheredofamiliaresdel pacientepatologico TEXT Almacena losantecedentespatologicos delpacientenopatologico TEXT Almacena losantecedentes nopatologicos delpacienteid_paciente_fk INT ✔ ✔ Clave foránea depaciente
  • 100. RESIDENCIA PROFESIONAL94tblh_cirugiaEsta tabla contiene las cirugías realizadas a los pacientesColumn name DataTypePK NN UQ BIN UN ZF AI DefaultCommentid_cirugia INT ✔ ✔ ✔ Almacena elnúmero deidentificación de lacirugíafecha DATE Almacena la fechade la cirugíainicio TIME Almacena la horade inicio de lacirugíafin TIME Almacena la horade término de lacirugíainstrumentistaVARCHAR(140)Almacena elnombre delinstrumentista dela cirugíaanestesiologo VARCHAR(140)Almacena elnombre delanestesiólogo dela cirugíatipoanestesia TEXT Almacena el tipode anestesia de lacirugíahallazgos TEXT Almacena loshallazgosencontrados en lacirugíasangrado TEXT Almacena losdetalles desangrado de lacirugíacomplicacionesTEXT Almacena losdetalles decomplicaciones dela cirugíaedosalud TEXT Almacena elestado de saluddel pacientedespués de lacirugíapronostico TEXT Almacena los
  • 101. RESIDENCIA PROFESIONAL95pronósticos postoperatoriosindicaciones TEXT Almacena lasindicaciones postoperatoriasfechaegreso DATE Almacena la fechade egreso delpacientehoraegreso TIME Almacena la horade egreso delpacienteobspostoperatoriaTEXT Almacena lasobservaciones deegresoplanegreso TEXT Almacena lasindicaciones quedebe seguir elpaciente despuésdel egresodxpre VARCHAR(45)Almacena el Dx depreoperatoriodxpost VARCHAR(45)Almacena el Dxpost operatorioid_pago_fk INT ✔ Clave foránea depagoid_tipocirugia_fkINT ✔ Clave foránea detipocirugiaid_citacirugia_fkINT ✔ Clave foránea decitacirugiaid_paciente_fkINT ✔ Clave foránea depacienteid_trab_fk INT ✔ Clave foránea detrabajador
  • 102. RESIDENCIA PROFESIONAL96tblh_citaContiene las citas médicas reservadas a los pacientesColumn name DataType PK NN UQ BIN UN ZF AI Default Commentid_cita INT ✔ ✔ ✔ Almacena elnúmero deidentificaciónde la citafecha DATE ✔ Almacena lafechaprogramadapara la citainicio TIME ✔ Almacena lahoraprogramadapara darcomienzo a lacitafin TIME ✔ Almacena lahoraprogramadapara dartermino a lacitastatus VARCHAR(45) Almacena elstatus de lacitanota TEXT Almacena elstatus de lacitaid_paciente_fk INT ✔ Clave foráneade pacienteid_trab_fk INT ✔ Clave foráneade trabajador
  • 103. RESIDENCIA PROFESIONAL97tblh_citacirugiaEsta tabla contiene las citas para cirugía de los pacientesColumn name DataType PK NN UQ BIN UN ZF AI Default Commentid_citacirugia INT ✔ ✔ ✔ Almacena elnúmero deidentificación de lacita para cirugíafecha DATE ✔ Almacena la fechade la cita paracirugíahora TIME ✔ Almacena la horade la cita paracirugíanota TEXT Almacena algunanota para la cita decirugíaid_paciente_fk INT ✔ Clave foránea depacienteid_trab_fk INT ✔ Clave foránea detrabajador
  • 104. RESIDENCIA PROFESIONAL98tblh_consultaEsta tabla contiene las consultas realizadas a los pacientesColumn name DataType PK NN UQ BIN UN ZF AI Default Commentid_consulta INT ✔ ✔ ✔ Almacena elnúmero deidentificaciónde la consultafecha DATE ✔ Almacena lafecha en quese realiza laconsultahora TIME ✔ Almacena lahora en queinicia laconsultatemp INT Almacena latemperaturadel pacientetalla INT Almacena laaltura delpacientepeso INT Almacena elpeso delpacienteimc VARCHAR(45) Almacena elIMC (indice demasacorporal) delpacienteta VARCHAR(45) Almacena latensiónarterial delpacientesintomas TEXT Almacena lossintomas quepresenta elpacienteinspeccion TEXT Almacena losdatos deinspecciónhecho alpacientepalpacion TEXT Almacena losdatos depalpación
  • 105. RESIDENCIA PROFESIONAL99hecho alpacienteauscultacion TEXT Almacena losdatos deauscultaciónhecho alpacientepercusion TEXT Almacena losdatos depercusiónhecho alpacienteplan TEXT Almacena elplan que sedeberá llevara cabo paraseguir con eltratamiento alpacientediagnostico TEXT Almacena, siexiste en laconsulta, eldiagnosticodado por elmédicoid_cita_fk INT ✔ Clave foráneade citaid_paciente_fk INT ✔ Clave foráneade pacienteid_pago_fk INT ✔ Clave foráneade pagoid_trab_fk INT ✔ Clave foráneade trabajador
  • 106. RESIDENCIA PROFESIONAL100tblh_laboratorioEsta tabla contiene los resultados de laboratorio entregados por los pacientesColumn name DataType PK NN UQ BIN UN ZF AI Default Commentid_lab INT ✔ ✔ ✔ Almacena elnúmero deidentificación delresultado delaboratoriodatos TEXT ✔ Almacena losdatos del resultadode laboratorioid_paciente_fk INT ✔ ✔ Clave foránea depacienteid_tipolab_fk INT ✔ Clave foránea detipolabtblh_pagoEsta tabla contiene los pagos realizados por los pacientesColumn name DataType PK NN UQ BIN UN ZF AI Default Commentid_pago INT ✔ ✔ ✔ Almacena elnúmero deidentificación delpagofecha DATE ✔ Almacena la fechadel pagohora TIME ✔ Almacena la horadel pagonota TEXT Almacena algunanota del pagoid_servicio INT ✔ Clave foránea deservicio
  • 107. RESIDENCIA PROFESIONAL101tblh_recetaEsta tabla contiene las recetas prescritas a los pacientesColumn name DataType PK NN UQ BIN UN ZF AI Default Commentid_receta INT ✔ ✔ ✔ Almacena elnúmero deidentificación de larecetacontenido TEXT ✔ Almacena elcontenido de larecetafecha DATE ✔ Almacena la fechaen que fueprescrita la recetahora TIME ✔ Almacena la horaen que fueprescrita la recetaid_consulta_fk INT ✔ Clave foránea deconsultatblh_ultrasonidoEsta tabla contiene los ultrasonidos entregados por los pacientesColumn name DataType PK NN UQ BIN UN ZF AI Default Commentid_ultra INT ✔ ✔ ✔ Almacena elnúmero deidentificación delultrasonidodatos TEXT Almacena losdatos delultrasonidoid_paciente_fk INT ✔ ✔ Clave foránea depacienteid_tipoultra_fk INT ✔ Clave foránea detipoultra
  • 108. RESIDENCIA PROFESIONAL102tbls_perfilEsta tabla contiene los perfiles que puede tener cada trabajador en el sistemaColumn name DataType PK NN UQ BIN UN ZF AI Default Commentid_perfil INT ✔ ✔ ✔ Almacena elnúmero deidentificacióndel perfilNombre_perfil VARCHAR(45) ✔ Almacena elnombre deperfiltbls_privilegioEsta tabla contiene los privilegios que puede tener cada perfilColumnnameDataType PK NN UQ BIN UN ZF AI Default Commentid_privilegio INT ✔ ✔ ✔ Almacena elnúmero deidentificación delprivilegionombre VARCHAR(45) ✔ Almacena elnombre delprivilegio
  • 109. RESIDENCIA PROFESIONAL103tbls_trabajadorEsta tabla contiene a los trabajadores del sanatorio (médicos, cirujanos,secretarias, enfermeras)ColumnnameDataType PK NN UQ BIN UN ZF AI Default Commentid_trab INT ✔ ✔ ✔ Almacena elnúmero deidentificacióndel trabajadornombre VARCHAR(140) ✔ Almacena elnombre deltrabajadordireccion TEXT Almacena ladirección deltrabajadorciudad VARCHAR(45) Almacena laciudad donderadica eltrabajadortelcasa VARCHAR(10) Almacena elteléfono decasa deltrabajadortelcel VARCHAR(10) Almacena elteléfono celulardel trabajadoremail VARCHAR(50) Almacena elcorreoelectrónico deltrabajadorcedula VARCHAR(10) Almacena lacedulaprofesional deltrabajadorespecialidad VARCHAR(45) Almacena laespecialidaddel trabajadoruser VARCHAR(45) ✔ Almacena elnombre deusuario deltrabajadorpass VARCHAR(10) ✔ Almacena lacontraseña deltrabajadorstatus VARCHAR(45) ✔ Almacena el
  • 110. RESIDENCIA PROFESIONAL104status deltrabajadorid_trab_fk INT Clave foráneade trabajadorid_perfil_fk INT ✔ Clave foráneade perfil
  • 111. RESIDENCIA PROFESIONAL105Anexo VIManual de Usuario
  • 112. RESIDENCIA PROFESIONAL106SAGA MédicaSistema de Agenda y Administración Médica