FACULTAD DE INGENIERÍA Y CIENCIAS...

FACULTAD DE INGENIERÍA Y CIENCIAS AGROPECUARIAS “APLICACIÓN WEB DE ADMINISTRACIÓN ONLINE DE CITAS MEDICAS PARA UN CONSULTORIO MEDICO GINECOLÓGICO” Trabajo de Titulación presentado en conformidad con los requisitos establecidos para optar por el título de Sistemas de Computación e Informática Profesora Guía: Ing. Rosita Yalile Rodas Mahauad. MBA Autor: Andrés Eduardo Garzón Játiva 2013

Transcript of FACULTAD DE INGENIERÍA Y CIENCIAS...

Page 1: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

FACULTAD DE INGENIERÍA Y CIENCIAS AGROPECUARIAS

“APLICACIÓN WEB DE ADMINISTRACIÓN ONLINE DE CITAS MEDICAS PARA UN CONSULTORIO MEDICO GINECOLÓGICO”

Trabajo de Titulación presentado en conformidad con los requisitos establecidos para optar por el título de Sistemas de Computación e Informática

Profesora Guía:

Ing. Rosita Yalile Rodas Mahauad. MBA

Autor:

Andrés Eduardo Garzón Játiva

2013

Page 2: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

ii

DECLARACIÓN DEL PROFESOR GUIA

“Declaro haber dirigido este trabajo a través de reuniones periódicas con el

estudiante Andrés Eduardo Garzón Játiva, orientando sus conocimientos y

competencias para un eficiente desarrollo del tema escogido y dando

cumplimiento a todas las disposiciones vigentes que regulan los Trabajos de

Titulación”

…………………………………………………

Rosita Yalile Rodas Mahauad

Ingeniera en Sistemas. MBA

CI: 110321720-2

Page 3: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

iii

DECLARACIÓN DE AUTORÍA DEL ESTUDIANTE

“Declaro que este trabajo es original, de mi autoría, que se han citado las

fuentes correspondientes y que en su ejecución se respetaron las disposiciones

legales que protegen los derechos de autor vigentes.”

…………………………………………………

Andrés Garzón Játiva

CI: 171585732-0

Page 4: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

iv

AGRADECIMIENTOS

A Dios.

Por consentir alcanzar este

momento tan personal en mi vida.

Por los éxitos y los momentos

dificultosos que me han enseñado a

apreciarlo cada día más.

A mis maestros.

Gracias por el espacio que supieron

darme para apoyarme en este duro

recorrido, así como por su sabio

conocimiento que pudieron

transmitirme.

A mis amigos.

Por el apoyo mutuo en nuestra

formación profesional y por

demostrar una amistad duradera y

verdadera.

A la Universidad de las Américas por

ayudarme a ser un profesional

excelente que ayudara a

engrandecer el país.

¡Gracias!

Andrés Garzón Játiva

Page 5: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

v

DEDICATORIA

A Dios.

Por su infinito amor y bondad que

me permitieron llegar a este punto

gozando de completa salud para

lograr mis objetivos.

A mi madre.

Por educarme en valores, por darme

su apoyo incondicional en todo

momento, por sus consejos, por la

estimulación constante que me ha

permitido ser una persona de bien.

Por los ejemplos de perseverancia y

constancia que la caracterizan y que

me ha infundado siempre, por el

valor mostrado para salir adelante y

por su amor.

¡Gracias a ustedes!

Andrés Garzón Játiva

Page 6: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

vi

RESUMEN

El sistema de administración online de citas médicas del consultorio

ginecológico, optimiza y estandariza el flujo de la información dentro de cada

uno de los procesos de manejo de usuarios, reservación de citas médicas,

administración de médicos, secretarias, creación de especialidades médicas.

Fue desarrollado utilizando herramientas libres y de alta tecnología como son

MySQL, Php y AJAX, además de incorporar una completa y sofisticada

metodología de desarrollo de software denominada: XP

(eXtremeProgramming).

El objetivo del Sistema de administración de citas online es contar con una

herramienta informática eficiente que permita la obtención de información

verídica y actualizada para un funcionamiento acorde a las necesidades de las

personas que interactúan en el consultorio ginecológico.

Page 7: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

vii

ABSTRACT

The management system online appointments of gynecological surgery,

optimizes and standardizes the information flow within each of the processes

of user management, booking appointments, medical management, secretaries,

creation of medical specialties. It was developed using free tools and high

technology such as MySQL, PHPand AJAX, while incorporating a full and

sophisticated software development methodology called: XP (eXtreme

Programming).

The objective of the management system of online dating is to have an efficient

software tool that allows to obtain accurate and updated information for

operation according to the needs of people interacting in the gynecological

clinic.

Page 8: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

ÍNDICE

INTRODUCCIÓN 1

1. Capítulo I. Marco Teórico 8

1.1. Aplicaciones Web 8

1.1.1. Características 9

1.1.2. Ventajas 10

1.2. Arquitectura del Software 11

1.2.1. Model View Controler (MVC) 11

1.2.2. Ciclo de Vida de MVC 12

1.3. Ventajas y Desventajas 13

1.3.1. Ventajas 13

1.3.2. Desventajas 14

1.4. Metodología de Desarrollo XP 14

1.4.1. Características 14

1.4.2. Fases de la metodología XP 15

1.5. Herramientas de Desarrollo 16

1.5.1. Lenguaje de Programación de Servidor PHP 16

1.5.2. Lenguaje de Programación de Cliente JavaScript 17

1.5.3. Gestor de Base de Datos MySQL 18

1.5.4. AJAX, acrónimo de Asynchronous JavaScript And XML 18

1.5.5. Servidor Web Apache 19

2. Capítulo II. Análisis y Diseño 21

2.1. Fase Exploratoria 21

2.1.1. Análisis de los Requerimientos 21

2.1.2. Alcance 23

2.1.3. Historias de Usuario 24

Page 9: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

2.2. Fase de Planificación 35

2.2.1. Diagramas de Casos de Uso 35

2.2.2. Diagrama de Clases 42

2.2.3. Bases de Datos 42

2.2.3.1. Modelo Entidad Relación 43

2.2.3.2. Diccionario de Datos 44

2.2.4. Prototipo de la Pantalla Principal del Sistema 52

2.2.5. Interfaces del Sistema 52

2.2.6. Descripción de los controles del sistema propuesto 55

2.3. Fase de Iteraciones 58

3. Capítulo III. Desarrollo 60

3.1. Documentos del diseño final del Sistema 60

3.2. Descripción detallada de la lógica de cada Tarea 61

3.3. Descripción de las Entradas y Salidas 80

3.4. Listado de Programas 86

3.5. Cadenas de Ejecución 87

4. Capítulo IV. Implementación y Pruebas 88

4.1. Fase de puesta en producción 88

4.1.1. Implementación del Sistema 88

4.1.2. Servidor de Base de Datos 88

4.1.3. Servidor de Archivos 92

4.2. Plan de Pruebas en el Hosting 94

4.2.1. Resultados de las pruebas de cada módulo 95

4.2.2. Resultados de las pruebas de Integración 95

4.3. Plan detallado de Contingencias 96

Page 10: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

5. Capítulo V. Conclusiones y Recomendaciones 105

5.1. Conclusiones 105

5.2. Recomendaciones 107

REFERENCIAS 108

ANEXOS 110

Page 11: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

INDICE DE TABLAS

Tabla 1. Costos de desarrollo de la aplicación ................................................... 7 Tabla 2. Tablas de la Base de Datos ............................................................... 44 Tabla 3. Tabla Usuarios ................................................................................... 46 Tabla 4. Tabla perfiles ...................................................................................... 46 Tabla 5. Tabla usuarios_perfiles ...................................................................... 47 Tabla 6. Tabla historias_medicas ..................................................................... 47 Tabla 7. Tabla historias_medicas_examenes .................................................. 48 Tabla 8. Tabla examenes ................................................................................. 48 Tabla 9. Tabla categorias ................................................................................. 48 Tabla 10. Tabla pacientes ................................................................................ 49 Tabla 11. Tabla medicos_citas ......................................................................... 49 Tabla 12. Tabla medicos .................................................................................. 50 Tabla 13. Tabla especialidades ........................................................................ 50 Tabla 14. Tabla medicos_especialidades ........................................................ 51 Tabla 15. Tabla secretarias .............................................................................. 51 Tabla 16. Tabla secretarias_medicos ............................................................... 51 Tabla 17. Historias de Usuario del Sistema ..................................................... 58

Page 12: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

INDICE DE FIGURAS

Figura 1. Esquema general de las tecnologías Web. ........................................ 9 Figura 2. MVC .................................................................................................. 11 Figura 3. Ciclo de vida MVC ............................................................................. 13 Figura 4. Diagrama Principal de Casos de Uso del Sistema ............................ 36 Figura 5. Diagrama de Casos de Uso del perfil Invitado .................................. 37 Figura 6. Diagrama de Casos de Uso del perfil Administrador ......................... 38 Figura 7. Diagrama de Casos de Uso del perfil Paciente ................................. 39 Figura 8. Diagrama de Casos de Uso del perfil Médico ................................... 40 Figura 9. Diagrama de Casos de Uso del perfil Secretaria .............................. 41 Figura 10: Diagrama de Clases ........................................................................ 42 Figura 11. Diagrama Entidad Relación de la Base de Datos ........................... 43 Figura12. PantallaRegístrateahora ................................................................... 52 Figura 13. Pantalla de perfil Administrador....................................................... 53 Figura 14. Pantalla del perfil médico ................................................................ 54 Figura 15. Pantalla del perfil Secretaria ........................................................... 54 Figura16. Pantalla del perfil Paciente ............................................................... 55 Figura 17. Cronograma de Gant de Iteraciones ............................................... 59 Figura 18. Pantalla de Ingreso al Sistema ........................................................ 60 Figura 19. Pantalla del submenú Registros Administradores ........................... 61 Figura 20. Pantalla de Ingreso de Datos del Administrador ............................. 62 Figura 21. Pantalla del submenú Registros Secretarias ................................... 62 Figura 22. Pantalla de Ingreso de Datos de la Secretaria ................................ 63 Figura 23. Pantalla del submenú Registros Médicos ....................................... 63 Figura 24. Pantalla de Ingreso de Datos del Médico ........................................ 64 Figura 25. Pantalla del submenú Registros Pacientes ..................................... 64 Figura 26. Pantalla de Ingreso de Datos del Paciente ..................................... 65 Figura 27. Pantalla del submenú Registros Especialidades ............................. 65 Figura 28. Pantalla de Ingreso de una nueva especialidad .............................. 66 Figura 29. Pantalla del submenú Registros Categorías de Exámenes ............ 66 Figura 30. Pantalla de Ingreso de una nueva Categoría de Examen ............... 67 Figura 31. Pantalla del submenú Registros Exámenes .................................... 67 Figura 32. Pantalla de Ingreso de un Nuevo Examen Médico.......................... 68 Figura 33. Pantalla que muestra cada registro ................................................. 68 Figura 34. Pantalla para editar cada registro.................................................... 69 Figura 35. Pantalla para eliminar cada registro ................................................ 69 Figura 36. Pantalla del submenú Usuarios Administradores ............................ 70 Figura 37. Pantalla del submenú Usuarios Secretarias .................................... 71 Figura 38. Pantalla del submenú Usuarios Médicos ........................................ 71 Figura 39. Pantalla del submenú Usuarios Pacientes ...................................... 72 Figura 40. Pantalla Nuevo Registro .................................................................. 72 Figura 41. Pantalla que muestra cada Registro ............................................... 73

Page 13: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

Figura 42. Pantalla para editar cada registro.................................................... 73 Figura 43. Pantalla para eliminar cada registro ................................................ 74 Figura 44. Pantalla del submenú Asignación de Médicos a Secretarias .......... 75 Figura 45. Pantalla de Nuevo Registro ............................................................. 75 Figura 46. Pantalla que muestra cada registro ................................................. 76 Figura 47. Pantalla para editar cada registro.................................................... 76 Figura 48. Pantalla para eliminar cada registro ................................................ 77 Figura 49. Pantalla del submenú Asignación de Especialidades a Médicos .... 77 Figura 50. Pantalla de Nuevo Registro ............................................................. 78 Figura 51. Pantalla para eliminar cada registro ................................................ 78 Figura 52. Pantalla del submenú Asignación de Horarios a Médicos ............... 79 Figura 53. Pantalla que muestra cada registro ................................................. 79 Figura 54. Pantalla para editar cada registro.................................................... 80 Figura 55. Pantalla del submenú Registrar Cita Médica .................................. 81 Figura 56. Pantalla del submenú Administrar Cita médica ............................... 82 Figura 57. Pantalla de Reporte de Cita Médica ................................................ 82 Figura 58. Pantalla de modificar cita medica .................................................... 83 Figura 59. Pantalla de Submenú Crear un Historia Médica ............................. 83 Figura 60. Pantalla de submenú ver historias médicas .................................... 84 Figura 61. Pantalla de Reporte de Historia Médica .......................................... 84 Figura 62. Pantalla del submenú Respaldo de Base de Datos ........................ 85 Figura 63. Pantalla del submenú Modificar Datos Personales ......................... 85 Figura 64. Pantalla del submenú Modificar Password ...................................... 86 Figura 65. Pantalla de Ingreso a Cpanel .......................................................... 88 Figura 66. Pantalla de Administración del Cpanel ............................................ 89 Figura 67. Pantalla de MySQL ......................................................................... 89 Figura 68. Pantalla para crear el usuario de la Base de datos ......................... 90 Figura 69. Pantalla de los permisos del usuario ............................................... 90 Figura 70. Pantalla de PhpMyAdmin ................................................................ 91 Figura 71. Pantalla de las Tablas de la Base de Datos .................................... 91 Figura 72. Pantalla de Servidor FTP WSFTP Pro ............................................ 92 Figura 73. Pantalla de Administración de Datos del Servidor FTP ................... 93 Figura 74. Pantalla de Transferencia de los archivos al Servidor Web ............ 93 Figura 75. Pantalla Inicial del Sistema de Administración de Citas Online ....... 94 Figura 76. Pantalla Inicial del Servidor de Hosting ........................................... 99 Figura 77. Pantalla de Administración de CPanel ............................................ 99 Figura 78. Pantalla del PhpMyAdmin ............................................................. 100 Figura 79. Pantalla de las Bases de Datos .................................................... 100 Figura 80. Pantalla de exportación de tablas ................................................. 101 Figura 81. Pantalla para guardar el script ...................................................... 101 Figura 82. Pantalla del servidor FTP .............................................................. 102 Figura 83. Pantalla del Explorador de Archivos del Servidor FTP .................. 103

Page 14: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

1

INTRODUCCIÓN

En el área de salud en Ecuador, no se están generando proyectos informáticos

que ayuden a la sociedad en sus labores diarias, permaneciendo este sector

rezagado y desaprovechando las herramientas tecnológicas actuales para

mejorar la calidad de atención al cliente.

El presente proyecto pretende desarrollar un Sistema que posibilite la gestión

de los procesos internos de un centro de salud, en el cual se administraran de

una manera online las citas médicas de un consultorio médico ginecológico. El

cual nos ayudará en gran medida a acabar con las largas filas en esta entidad

de salud, brindando comodidad total a sus usuarios en la asignación de citas

médicas y así evitar este grave problema.

Este Sistema permitirá mejorar el cubrimiento de las necesidades de la entidad

médica y su relación con los usuarios, así como ayudará a integrarlas

funciones de todos los integrantes del consultorio con el fin de alcanzar un

control adecuado de las acciones que se realiza, tanto de los usuarios internos

así como de los pacientes externos en los aspectos relacionados con la

prestación de los servicios y la administración de las citas médicas.

El objetivo de realizarlo de una manera online es por una de las particulares

más interesantes que ofrece Internet como es la facilidad para divulgar

información actualizada, y sobre todo de brindar servicios en línea, con el

manejo de la web 2.0, ya que hoy en la actualidad no basta con tener un sitio

web en internet, se necesita interactuar en todo momento con los diferentes

usuarios de la web.

Es así que las aplicaciones web ya son una alternativa, son una necesidad que

poco a poco en nuestro país han ido desarrollándose, hasta un punto que casi

todas las actividades económicas las podemos desarrollar desde un

computador conectado al internet.

Page 15: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

2

Antecedentes

En un inicio los sitios web eran tan solo páginas webs estáticas, cada vez que

se deseaba cambiar la información de una o varias páginas, lo que se hacía

era editar el código fuente del o los archivos HTML y subirlo nuevamente al

servidor web.

Esta forma de realizar estas actualizaciones era ineficiente y poco práctica, ya

que conlleva el trabajo de muchas personas en lo que tiene que ver con

contenidos textuales, gráficos y el personal de desarrollo del mismo lo que nos

lleva a establecer que el coste de actualización de dichos sistemas era muy

costoso e incurría en mucho tiempo. Los sitios web de estas características son

denominados sitios web estáticos, no porque el contenido no se actualiza con

una cierta periodicidad, sino porque no brinda la posibilidad de interactuar

visitantes, usuarios y el sitio en sí mismo.

Pero si deseamos hacer un sitio web de actualidad, necesitamos contar con

páginas dinámicas que sea fácil de actualizar, recuperar y eliminar información

anterior. Y para un manejo habitual una solución eficiente es contar con un sitio

web dinámico con acceso a bases de datos.

En la actualidad existen sin numerosas maneras de crear sitios web dinámicos

y aplicaciones web. Como por ejemplo podría citar a Microsoft que tiene su

propia plataforma .NET la cual tiene un alto precio económico, soportando

diferentes lenguajes con la tecnología ASP.Net, de software libre tenemos por

ejemplo a PHP, y finalmente podemos hablar de tecnología Java. Tecnologías

y posibilidades hay muchas, por lo tanto debemos seleccionar la que más se

adecue a nuestros requerimientos.

Planteamiento del problema

El consultorio médico ginecológico posee una alta demanda de sus servicios

profesionales, actualmente solo dispone de un sistema de citas por teléfono o

Page 16: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

3

personalmente, conllevando esto a mantener ocupada la línea telefónica por

mucho tiempo, y en momentos el paciente prefiere asistir directamente al

consultorio para solicitar y ser atendido al mismo tiempo, teniendo como

resultado la espera de los pacientes por más de una hora para ser atendidos.

Justificación

El consultorio médico ginecológico posee una alta demanda de sus servicios

profesionales, y actualmente no cuentan con un sistema informático online, que

brinde de forma rápida, transparente y segura la administración de citas

médicas. Es así que se plantea la necesidad de emprender un SISTEMA DE

ADMINISTRACIÓN ONLINE DE CITAS MEDICAS, como una alternativa

eficiente, eficaz e innovadora de optimizar la atención a los pacientes.

La facilidad y necesidad del uso del internet, hace que cada día más personas

estén acostumbradas a realizar varias de sus tareas o actividades personales,

tales como consultas y pagos de servicios básicos, transferencias bancarias,

compras y ventas de productos, entre otros desde sus casas u oficinas con tan

solo ingresar a la web.

Usar software libre para desarrollar aplicaciones web nos brinda muchas

ventajas, entre las que se destacan: libertad de uso del código y redistribución,

ahorro económico, libertad de tecnología, soporte de código por usuarios

externos como comunidades, sistemas más seguros, al no basarse en licencias

podemos tener mayor libertad para realizar nuestros proyectos.

Por tal motivo las tecnologías a utilizar en el desarrollo del sistema son PHP

para el manejo del Back End del servidor Web, MySQL de servidor de base de

datos, JavaScript como lenguaje de cliente y AJAX como intermediario entre el

cliente y los datos del servidor.

El sistema que se plantea servirá para la gestión y administración de las citas

médicas de un consultorio desarrollado en PHP bajo licencia GPL. Ya que nos

Page 17: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

4

permite combinar las bondades del lenguaje PHP para el desarrollo del Back

End, y la potente base de datos My SQL, así como también el manejo de

Javascript y AJAX para dar una mejor presentación del Front End al usuario

final.

A la vez que dichas tecnologías son fáciles de implementar en cualquier

plataforma tanto Linux como Windows, ya que se utiliza el Servidor Web

Apache que es muy estable con PHP3 y PHP4.

La interfaz que se presentará al usuario final será muy sencilla y fácil de usar

para que el mismo pueda interactuar con el sistema de una manera más

amena, dando la posibilidad de que la atención y la reservación de las citas

sean más eficientes y en menor tiempo cumpliendo con estándares de calidad.

Lo cual con lleva a que se mejoren muchos aspectos:

· Disminuir el tiempo de asignación de servicios a los pacientes.

· Rápida ejecución del proceso de facturación.

· La unificación del personal médico a las tecnologías de la información

implementando sistemas informáticos eficientes.

· No se tendrán duplicados del historial médico de los pacientes lo que ayuda

a que los tiempos de atención disminuyan y se de una mejor atención a los

mismos al tener un historial completo.

· Se atenderá a un mayor número de pacientes con la organización de los

mismos y la administración por parte del sistema.

Objetivos

Objetivo General

Desarrollar e implementar una Aplicación web que permita administrar las citas

médicas para un consultorio médico ginecológico.

Page 18: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

5

Objetivos Específicos

· Analizar y definir con claridad los diferentes procesos del consultorio médico

ginecológico que actualmente se utilizan.

· Seleccionar y utilizar una metodología de desarrollo de aplicaciones web.

· Desarrollar una aplicación web que permita la administración de citas

médicas según los perfiles de usuario establecidos

· Implementar y poner en correcto funcionamiento la aplicación web en el

Internet.

Hipótesis

Si el consultorio médico ginecológico contará con una aplicación Web, podría

difundir, controlar y administrar remotamente las citas e historial clínico de sus

pacientes. Además, permitiría obtener reportes en cualquier momento sobre la

atención brindada de sus profesionales hacia sus clientes o pacientes.

Alcance

La Aplicación web deberá estar basada en el cumplimiento de los requisitos

previamente establecidos, la aplicación estará enfocada principalmente en

diseñar y desarrollar un sistema que posibilite al CONSULTORIO MEDICO

GINECOLÓGICO administrar eficientemente las citas e historial clínico de sus

pacientes.

Algunas funciones principales que debe realizar este sistema son las

siguientes: gestionar correctamente las diferentes cuentas de usuario según los

perfiles que se establezcan, permitir al Médico administrar los diferentes

historiales clínicos de sus pacientes y obtener reportes instantáneos de sus

citas realizadas, suspendidas o eliminadas correspondientes, como también

permitir al paciente hacer una cita online al consultorio médico ginecológico, y

obtener de forma personalizada su historial médico.

Page 19: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

6

El desarrollo de la presente aplicación web, se basará en la aplicación de la

Metodología XP “eXtremeProgramming”, la misma que consta de las siguientes

fases: Planificación, Diseño, Desarrollo y Pruebas.

Se utilizará esta metodología por su simplicidad, comunicación y la

realimentación o reutilización del código desarrollado.

Recursos

Dentro de los diferentes recursos para el desarrollo del Sistema tenemos que

tomar muy en cuenta no solo el recurso tecnológico sino a su vez el recurso

humano que en parte es el mayor componente dentro del desarrollo de un

proyecto.

Puesto que el sistema será desarrollado en su totalidad con herramientas de

software libre los costos serán de una manera estimativa.

Estudio de los costos estimados del Sistema

Para llevar a cabo un despliegue óptimo de la infraestructura, se sugiere utilizar

las siguientes especificaciones recomendadas.

Page 20: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

7

Tabla1.Costos de desarrollo de la aplicación

COSTOS ACTUAL

(USD)

REAL

(USD)

Hardware 1 PC Robustecido para Servidor

de BDD MySQL y Servidor Web

Apache

1400 1400

1 PC como cliente Web 850 0

1 Impresora Láser Samsung

ML-2010

80 0

1 Flash Memory Kingston 1 GB 9 0

Subtotal 2339 1400

Software 1 Sistema Operativo Windows 199 0

1 Servidor Web Apache 0 0

1 PHP 5.0 0 0

1 MySQL 0 0

1 Microsoft Office 2007 224 0

1 Adobe CS3 349 0

1 Software adicional 100 100

Subtotal 872 100

Capacitación a

desarrolladores

Cursos 400 400

Proyecto Papelería y suministros de oficina 500 500

Subtotal (PARCIAL) 4111 2400

Imprevistos 10% 0 240

TOTAL 4111 2640

Page 21: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

8

1. Capítulo I. Marco Teórico

1.1. Aplicaciones Web

Una Aplicación Web podría ser un desarrollo de software en la que los usuarios

interactúan con ella por medio de un servidor web utilizando Internet o

una intranet como medio de comunicación. Dicho en otros términos, es un

sistema de software que se desarrolla con herramientas soportadas por el

Servidor Web y que se ejecutan en un navegador o browser.

Se han vuelto populares este tipo de aplicaciones por los beneficios que

conllevan como el uso de un browser o navegador web como cliente, la libre

utilización de cualquier plataforma como puede ser Windows o Linux, la

facilidad de no tener que instalar un el software a los clientes con solo

actualizar en el servidor se actualiza la aplicación.

La utilización de un navegador web supone muchas cosas con respecto al

desarrollo de la aplicación en lo que tiene que ver con las tecnologías web, ya

que el navegador solo interpreta lenguaje HTML, y el sistema se desarrolla en

tecnologías como PHP, ASP o JSP entonces para su presentación en el

browser se deben de llevar muchos procesos complejos para que se genere el

lenguaje HTML.

Además el uso de estas tecnologías a nivel de servidor Web se da un nuevo

desarrollo que se denominaría páginas dinámicas las cuales no tienen que ser

cargadas continuamente en el cliente sino que solo se actualizan cuando este

lo amerite.

Otro aspecto que completa el panorama son las inclusiones del lado del

cliente, ClientSide, que se refieren a las posibilidades de que las páginas lleven

incrustado código que se ejecuta en el cliente, como por ejemplo JavaScript y

programas Java.

Page 22: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

9

MYSQL

Java Script

HTML

AplicaciónCGI

SERVIDOR WEB

PHP

CLIENTESERVIDOR DATOS

HTTP

Figura1. Esquema general de las tecnologías Web.

1.1.1. Características

Entre las principales características de una aplicación web podemos describir

las siguientes:

· El usuario accede a la aplicación de una forma ágil solo utilizando su

navegador web o browser.

· El uso de internet como medio posibilita que el cliente de la aplicación

acceda a ella desde cualquier parte del mundo.

· Se desarrolla una única aplicación web a nivel del Servidor Web, dando la

posibilidad de tener miles de usuarios que accedan a ella y no tengan que

estar actualizando constantemente.

· El uso de tecnologías de desarrollo web como PHP, JavaScript, DHTML,

Ajax hace que el sistema sea potente a nivel de usuario final.

· Las tecnologías web dan un gran beneficio de libertad de plataformas

pudiendo la aplicación presentarse en cualquiera de ellas.

Page 23: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

10

1.1.2. Ventajas

Entre las diferentes ventajas que presentan las aplicaciones web tenemos las

siguientes:

Compatibilidad multiplataforma: La aplicación puede ser ejecutada en

diferentes plataformas tanto Windows o Linux.

Actualización: Estas aplicaciones al ser instaladas en el Servidor Web

siempre se actualizan sin necesidad de que el usuario final tenga nada que

hacer.

Acceso inmediato y desde cualquier lugar: Estas tecnologías dan la

posibilidad que al ser instalada en un servidor Web, estas pueden tener miles

de usuarios que acceden a ella por medio de internet.

Menos requerimientos de hardware: Los recursos que utilizan dichas

aplicaciones son mínimos ya que solo se acceden por medio de un navegador

el cual no utiliza muchos recursos de computador del usuario final, el que

realiza el mayor trabajo y utiliza mayores recursos es el Servidor Web en el que

se encuentra alojada dicha aplicación.

Menos Bugs (errores):Estas aplicaciones presenten menos problemas

técnicos, debido a que si aparecen errores en la aplicación esta puede ser

corregida directamente en el servidor Web y de esa manera beneficiar a todos

los usuarios que dependan de ella.

Seguridad en los datos: Los datos que generan dichas aplicaciones web son

alojados en servidores Web con sistemas de seguridad altamente fiables dando

así una alta seguridad a la aplicación y así evitar los problemas que

comúnmente se dan en computadores personales.

Page 24: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

11

1.2. Arquitectura del Software

“La arquitectura de software es el conjunto de decisiones de diseño que,

si son tomadas de forma equivocada, pueden provocar que su proyecto

sea cancelado”(Ortigosa, 2008)

La arquitectura del software conlleva a establecer el diseño que tendrá el

sistema en todos sus niveles como el manejo de cada uno de los componentes

que interactuaran en el cómo interfaces, base de datos, etc.

1.2.1. Model View Controler (MVC)

“Modelo Vista Controlador (MVC) es un patrón de arquitectura de

software que separa los datos de una aplicación, la interfaz de usuario, y

lalógica en tres componentes distintos. El patrón de llamada y retorno

MVC, se ve frecuentemente en aplicaciones web, donde la vista es la

página HTML y el código que provee de datos dinámicos a la página. El

modelo es el Sistema de Gestión de Base de Datos y la Lógica de

negocio, y el controlador es el responsable de recibir los eventos de

entrada desde la vista.”(Ortigosa, 2008)

Figura2. MVC

Tomado (Prestashop 5 Estrellas, 2010)

Page 25: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

12

Modelo: Es la representación de como el sistema va a operar e interactuar con

los diferentes componentes que conforman dicho sistema, dicho en otras

palabras son las reglas del negocio.

Vista: Tiene que ver con las interfaces de la aplicación y la forma en la cual

interactuaran cada una, dando una mejor interacción con el usuario final.

Controlador: Corresponde a eventos los cuales pueden ser las acciones que

realizara el usuario dentro del sistema e invocará peticiones tanto al Modelo

como a la Vista.

1.2.2. Ciclo de Vida de MVC

“La primera etapa del ciclo de vida se da cuando el usuario hace una

solicitud al controlador con información sobre lo que el usuario desea

realizar. Entonces el Controlador decide a quién debe delegar la tarea y

es aquí donde el Modelo empieza su trabajo. En esta etapa, el Modelo se

encarga de realizar operaciones sobre la información que maneja para

cumplir con lo que le solicita el Controlador. Una vez que termina su labor,

le regresa al Controlador la Información resultante de sus operaciones, el

cual a su vez redirige a la Vista. La Vista transforma los datos en

información visualmente entendible para el usuario. Finalmente, la

representación gráfica es transmitida de regreso al Controlador y éste se

encarga de transmitírsela al usuario. El ciclo entero puede empezar

nuevamente si el usuario así lo requiere.”(Prestashop 5 Estrellas, 2010)

Page 26: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

13

Figura3. Ciclo de vida MVC

Tomado de (Ortigosa, 2008)

El flujo del ciclo de vida MVC se podría definir de la siguiente manera:

1. Interacción entre el usuario y la interfaz del sistema como cuando pulsa un

botón, o un enlace.

2. El controlador recoge el informe de la acción solicitada por el usuario.

3. El controlador accede al modelo, actualizándolo, modificándolo de forma

adecuada a la acción solicitada por el usuario.

4. El controlador delega a los objetos de la vista la tarea de desplegar la

interfaz de usuario.

5. La interfaz de usuario espera nuevas interacciones del usuario,

comenzando el ciclo nuevamente.

1.3. Ventajas y Desventajas

1.3.1. Ventajas

· Separa la interfaz, la lógica de negocio y la presentación.

· Simplicidad para implantar representaciones de los mismos datos.

Page 27: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

14

· Habilidad para la realización de pruebas unitarias de los componentes.

· Reutilización de los componentes.

· Sencillez en la manutención de los sistemas.

· Habilidad para desarrollar prototipos rápidos.

1.3.2. Desventajas:

· Al utilizar una estructura predefinida, incrementa la complejidad del sistema.

· La curva de aprendizaje para los nuevos desarrolladores se estima mayor

que la de modelos más simples como Web forms.

· La distribución de componentes obliga a crear y mantener un mayor número

de ficheros.

1.4. Metodología de Desarrollo XP

“XP es una metodología ágil centrada en potenciar las relaciones

interpersonales como clave para el éxito en desarrollo de software,

promoviendo el trabajo en equipo, preocupándose por el aprendizaje de

los desarrolladores, y propiciando un buen clima de trabajo. XP se basa

en realimentación continua entre el cliente y el equipo de desarrollo,

comunicación fluida entre todos los participantes, simplicidad en las

soluciones implementadas y coraje para enfrentar los cambios. XP se

define como especialmente adecuada para proyectos con requisitos

imprecisos y muy cambiantes, y donde existe un alto riesgo

técnico.”(Letelier, P. y Penadés, C., 2010)

1.4.1. Características

La metodología de XP tiene las siguientes características:

· “Pruebas Unitarias: Son pruebas que se realizan a los principales

procesos estableciendo de alguna manera los posibles errores que se

puedan dar en un futuro.

Page 28: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

15

· Re fabricación: Tiene que ver con la reutilización del código en futuros

proyectos debido a que el modelo de así lo plantea.

· Programación en pares: una particularidad de esta metodología es que

propone la programación en pares, la cual consiste en que dos

desarrolladores participen en un proyecto en una misma estación de

trabajo. Cada miembro lleva a cabo la acción que el otro no está haciendo

en ese momento.”(EcuRed, s.f.)

1.4.2. Fases de la metodología XP

Fase de exploración

Es la fase en la que se define el alcance general del proyecto. En esta fase, el

cliente define lo que necesita mediante la redacción de sencillas “historias de

usuarios”. Los programadores estiman los tiempos de desarrollo en base a esta

información.

Debe quedar claro que las estimaciones realizadas en esta fase son primarias

(ya que estarán basadas en datos de muy alto nivel), y podrían variar cuando

se analicen más en detalle en cada iteración.Esta fase dura típicamente un par

de semanas, y el resultado es una visión general del sistema, y un plazo total

estimado.

Fase de planificación

La planificación es una fase corta, en la que el cliente, los gerentes y el grupo

de desarrolladores acuerdan el orden en que deberán implementarse las

historias de usuario, y, asociadas a éstas, las entregas. Típicamente esta fase

consiste en una o varias reuniones grupales de planificación. El resultado de

esta fase es un Plan de Entregas.

Page 29: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

16

Fase de iteraciones

Esta es la fase principal en el ciclo de desarrollo de XP. Las funcionalidades

son desarrolladas en esta fase, generando al final de cada una un entregable

funcional que implementa las historias de usuario asignadas a la iteración.

Como las historias de usuario no tienen suficiente detalle como para permitir su

análisis y desarrollo, al principio de cada iteración se realizan las tareas

necesarias de análisis, recabando con el cliente todos los datos que sean

necesarios. El cliente por lo tanto, también debe participar activamente durante

esta fase del ciclo. Las iteraciones son también utilizadas para medir el

progreso del proyecto. Una iteración terminada sin errores es una medida clara

de avance.

Fase de puesta en producción

“Si bien al final de cada iteración se entregan módulos funcionales y sin

errores puede ser deseable por parte del cliente no poner el sistema en

producción hasta tanto no se tenga la funcionalidad completa. En esta

fase no se realizan más desarrollos funcionales, pero pueden ser

necesarias tareas de ajuste.”(Joskowicz, 2005)

1.5. Herramientas de Desarrollo

1.5.1. Lenguaje de Programación de Servidor PHP

“El PHP (acrónimo de PHP: HypertextPreprocessor), es un lenguaje

interpretado de alto nivel es un script incrustado dentro del HTML. La

mayor parte de su sintaxis ha sido tomada de C, Java y Perl con algunas

características específicas de sí mismo. La meta del lenguaje es permitir

rápidamente a los desarrolladores la generación dinámica de

páginas”(Sabana, 2006)

Page 30: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

17

“Una de sus características más potentes es su suporte para gran

cantidad de bases de datos. Entre su soporte pueden mencionarse

InterBase, mSQL, MySQL, Oracle, Informix, PosgreSQL, entre otras. PHP

también ofrece la integración con las varias bibliotecas externas, que

permiten que el desarrollador haga casi cualquier cosa desde generar

documentos en pdf hasta analizar código XML.”(Maestros del Web, s.f.)

La sintaxis de PHP es parecida a la de ASP debido a que el código se incrusta

en el lenguaje HTML.

El diseño fácil de implementar lo vuelve un lenguaje fácil de aprender y de

poder corregir los errores en el desarrollo. Con ser un lenguaje de software

libre tiene una gran cantidad de desarrolladores que tienen comunidades en las

cuales se pueden encontrar solución a muchas interrogantes.

PHP también utiliza las sesiones de HTTP, conectividad de Java, expresiones

regulares, LDAP, SNMP, IMAP, protocolos de COM (bajo Windows).

1.5.2. Lenguaje de Programación de Cliente JavaScript

El lenguaje JavaScript se utiliza en un desarrollo web para darle más movilidad

a las páginas, creando acciones para los usuarios. No requiere de compilación

ya que el lenguaje funciona del lado del cliente, los navegadores son los

encargados de interpretar estos códigos.

“Muchos confunden el JavaScript con el Java pero ambos lenguajes son

diferentes y tienes sus características singulares. JavaScript tiene la ventaja de

ser incorporado en cualquier página web, puede ser ejecutado sin la necesidad

de instalar otro programa para ser visualizado.

Java por su parte tiene como principal característica ser un lenguaje

independiente de la plataforma. Se puede crear todo tipo de programa que

Page 31: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

18

puede ser ejecutado en cualquier ordenador del mercado: Linux, Windows,

Apple, etc. Debido a sus características también es muy utilizado para internet.

Como síntesis se pude decir que JavaScript es un lenguaje interpretado,

basado en prototipos, mientras que Java es un lenguaje más orientado a

objetos.”(Maestros del Web, s.f.)

1.5.3. Gestor de Base de Datos MySQL

MySQL es muy utilizado en aplicaciones web, como Drupal o phpBB, en

plataformas (Linux/Windows-Apache-MySQL-PHP/Perl/Python). Su popularidad

como aplicación web está muy ligada a PHP, que a menudo aparece en

combinación con MySQL.

MySQL es una base de datos muy rápida en la lectura cuando utiliza el motor

no transaccional MyISAM.

En aplicaciones web hay baja concurrencia en la modificación de datos y en

cambio el entorno es intensivo en lectura de datos, lo que hace a MySQL ideal

para este tipo de aplicaciones. Sea cual sea el entorno en el que va a utilizar

MySQL, es importante adelantar monitoreo sobre el desempeño para detectar y

corregir errores tanto de SQL como de programación.

1.5.4. AJAX, acrónimo de Asynchronous JavaScript And XML

“AJAX no constituye una tecnología en sí, pero es un término que engloba

a un grupo de éstas que trabajan conjuntamente.

AJAX, acrónimo de Asynchronous JavaScript And XML (JavaScript y XML

asíncronos), es una técnica de desarrollo web para crear aplicaciones

interactivas. Éstas se ejecutan en el cliente, es decir, en el navegador del

usuario, y mantiene comunicación asíncrona con el servidor en segundo

plano. De esta forma, es posible realizar cambios sobre la misma página

sin necesidad de recargarla. Esto significa aumentar la interactividad,

Page 32: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

19

velocidad y usabilidad en la misma. AJAX es una combinación de tres

tecnologías ya existentes:

XHTML (o HTML) y hojas de estilos en cascada (CSS) para el diseño que

acompaña a la información.

Document Object Model (DOM) accedido con un lenguaje de scripting por parte

del usuario, especialmente implementaciones ECMA Script como JavaScript,

para mostrar e interactuar dinámicamente con la información presentada.

El objeto XML Http Request para intercambiar datos asincrónicamente con el

servidor web. En algunos frameworks y en algunas situaciones concretas, se

usa un objeto iframe en lugar del XMLHttpRequest para realizar dichos

intercambios.

XML es el formato usado comúnmente para la transferencia de vuelta al

servidor, aunque cualquier formato puede funcionar, incluyendo HTML pre

formateado, texto plano, JSON y hasta EBML.”(Web Experto, s.f.)

1.5.5. Servidor Web Apache

“Es un software libre servidor HTTP de código abierto para plataformas

Unix (BSD, GNU/Linux, etc.), Windows, Macintosh y otras, que

implementa el protocolo HTTP/1.1 y la noción de sitio virtual.” (Ms4W, s.f.)

Apache es el servidor web hecho por excelencia, su configurabilidad, robustez

y estabilidad hacen que cada vez millones de servidores reiteren su confianza

en este programa.

Características:

· Corre en una multitud de Sistemas Operativos, lo que lo hace prácticamente

universal.

Page 33: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

20

· Apache es una tecnología gratuita de código fuente abierta. Esto le da una

transparencia a este software de manera que si queremos ver que es lo que

estamos instalando como servidor, lo podemos saber.

· Apache es un servidor altamente configurable de diseño modular. Es muy

sencillo ampliar las capacidades del servidor Web Apache.

· Apache trabaja con gran cantidad de Perl, PHP y otros lenguajes de script.

· Apache te permite personalizar la respuesta ante los posibles errores que

se puedan dar en el servidor.

· Tiene una alta configurabilidad en la creación y gestión de logs.

· Se pueden extender las características de Apache hasta donde nuestra

imaginación y conocimientos lleguen.

Page 34: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

21

2. Capítulo II. Análisis y Diseño

2.1. Fase Exploratoria

2.1.1. Análisis de los Requerimientos

Para poder tener una idea clara y entender el funcionamiento del consultorio

médico ginecológico en el cual se implantará el SISTEMA DE

ADMINISTRACIÓN ONLINE DE CITAS MÉDICAS, fue necesario realizar

visitas periódicas y observar de una manera detenida el trabajo de cada una de

las personas que lo integran, para así poder definir cuáles son los procesos

que se dan al momento de hacer una reservación de una cita médica.

La información se la obtuvo realizando entrevistas a los actores que integran el

consultorio tanto internos(Administrador, Médico, Secretaria) como externos

(Pacientes), de esa manera se pudo determinar la secuencia de los procesos,

así como las necesidades que existen para solucionarlas mejorando y

automatizando dichos procesos.

En primera instancia se estableció la distribución de los médicos dentro de la

edificación del consultorio médico ginecológico, los cuales se ubican en

diferentes plantas del edificio de acuerdo a sus especialidades médicas. En

cada una de estas plantas se encuentra una secretaria que es quien realiza las

reservaciones de las citas médicas, de acuerdo a los horarios de cada uno de

los médicos.

Todo este proceso de reservación se lo realiza de una manera manual, lo que

contribuye a que se den errores al momento de realizar las reservaciones,

como pueden ser cruce de horarios de los pacientes, se puede dar que los

médicos no se encuentren presentes en el consultorio para atender las citas,

etc.

Page 35: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

22

Para poder optimizar estos procesos de reservación, se establecieron algunas

pautas importantes dentro del sistema como los siguientes:

· El sistema contará con los siguientes perfiles de usuario:

o Administrador

o Paciente

o Médico

o Secretaria

o Invitado

· El perfil de usuario Invitado se lo utilizará al momento de ingresar al sistema

por primera vez en el “Regístrate ahora”, luego una vez haya llenado los

datos del formulario de ingreso pasará a ser paciente.

· El Administrador es el único que puede crear a los médicos y secretarias ya

que esta es una tarea propiamente administrativa; a la vez que también

podrá crear pacientes.

· El perfil de usuario Administrador es el único que podrá realizar todas las

tareas que posee el sistema.

· Los perfiles de usuario Paciente, Médico o Secretaria podrán realizar

determinadas tareas del sistema las cuales se le vera con más claridad en

los Diagramas de Casos de uso.

· Cada uno de los usuarios de los perfiles antes mencionados deberán

encontrarse activos, caso contrario no se les permitirá ingresar a sus

respectivos módulos.

· Los usuarios de cada uno de los perfiles del sistema tendrán que logear

separa ingresar al mismo, el sistema de reservaciones online verificará el

tipo de perfil de usuario, además comprobará si se encuentra activo, una

vez establecido esto le dará ingreso al módulo que le corresponda a este

perfil de usuario; caso contrario no le permitirá ingresar a dicho módulo y le

regresara a la página de logeo.

· El paciente se registra directamente desde la Web llenando un formulario,

no tendrá que realizar su registro en el Consultorio Médico Ginecológico.

Page 36: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

23

· Los médicos establecerán sus horarios de atención en el consultorio médico

ginecológico; pero dicho ingreso de horarios los puede realizar el

administrador, la secretaria o el respectivo médico.

· La secretaria puede realizar una reservación de un cita médica en el

sistema solicitada por un paciente vía telefónica.

· El sistema verificara los horarios de atención de los médicos, y la

disponibilidad de los mismos, y aceptará o rechazará la reservación de la

cita médica por parte del paciente, o de la secretaria.

· La reservación de la cita médica una vez aceptada por el sistema tomara un

estado de registrada, esperando a que se establezca lo que cambiara de

estado a ejecutada, en caso de que el paciente no llegara a la cita la

reservación cambiara el estado a incumplida.

· Las reservaciones de las citas médica también pueden ser canceladas por

los pacientes o los médicos eso si el sistema verificará un tiempo prudente

para que se puede cancelar por ejemplo 2 horas antes de la cita para los

pacientes, y así a la reservación de la cita se le pondrá el estado de

cancelada por paciente o cancelada por médico.

2.1.2. Alcance

La Aplicación web deberá estar basada en el cumplimiento de los requisitos

previamente establecidos, la aplicación estará enfocada principalmente en

diseñar y desarrollar un sistema que posibilite al CONSULTORIO MEDICO

GINECOLÓGICO administrar eficientemente las citas e historial clínico de sus

pacientes.

Algunas funciones principales que debe realizar este sistema son las

siguientes: gestionar correctamente las diferentes cuentas de usuario según los

perfiles que se establezcan, permitir al Médico administrar los diferentes

historiales clínicos de sus pacientes y obtener reportes instantáneos de sus

citas realizadas, suspendidas o eliminadas correspondientes, como también

Page 37: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

24

permitir al paciente hacer una cita online al consultorio médico ginecológico,

obtener de forma personalizada su historial clínico.

El desarrollo de la presente aplicación web, se basará en la aplicación de la

Metodología XP “eXtremeProgramming”, la misma que consta de las siguientes

fases: Planificación, Diseño, Desarrollo y Pruebas. Se utilizará esta

metodología por su simplicidad, comunicación y la realimentación o

reutilización del código desarrollado.

2.1.3. Historias de Usuario

· Yo Administrador registro un nuevo usuario para que puede acceder al

sistema

· Yo Administrador registro una nueva especialidad para ser asignada a los

médicos

· Yo Administrador registro una nueva categoría de exámenes para ser

asignadas a los exámenes de los pacientes

· Yo Administrador asigno secretarias a médico para su atención.

· Yo Administrador asigno especialidades al médico para saber que

especialidades posee.

· Yo Administrador asigno horarios a médicos para la atención de consultas a

los pacientes.

· Yo Paciente registro una nueva cita médica para ser atendido por el médico.

· Yo Médico registro una nueva historia médica para el historial del paciente

atendido.

· Yo Médico cancelo cita médica para no poder atender en un horario

establecido.

· Yo secretaria modifico datos personales para estar actualizado.

Page 38: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

25

Historia de usuario

Numero:1 Nombre: Registro de nuevo usuario

Usuario: Administrador

Modificación de historia numero: Iteración asignada:

Prioridad en Negocio: Alta

(Alta / Media / Baja)

Puntos Estimados:1

Riesgo en Desarrollo: Medio

(Alto / Medio / Bajo)

Puntos Reales:3

Descripción: El administrador tendrá la opción de registrar nuevos usuarios, al

ingresar a esta opción se desplegara una plantilla de datos para llenar como

ser el nombre, apellido paterno, apellido materno, CI, fecha de nacimiento, etc.

Una vez llenados los datos el administrador podrá seleccionar la opción de

enviar que le desplegara un mensaje que pide confirmación y luego procederá

a almacenar los datos. El mensaje tendrá la opción de cancelar para poder

realizar cambios si se detectan errores en los datos llenados.

Una vez almacenado un nuevo empleado se desplegara un listado de todos los

usuarios creados.

Observaciones:

Page 39: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

26

Historia de usuario

Numero:2 Nombre: registro una nueva

especialidad

Usuario: Administrador

Modificación de historia numero: Iteración asignada:

Prioridad en Negocio: Media

(Alta / Media / Baja)

Puntos Estimados:14

Riesgo en Desarrollo: Medio

(Alto / Medio / Bajo)

Puntos Reales:16

Descripción: El administrador tendrá la opción de registrar nuevas

especialidades, al ingresar a esta opción se desplegara una plantilla de datos

para llenar con el nombre de la especialidad y un estado. Una vez llenados los

datos el administrador podrá seleccionar la opción de enviar que le desplegara

un mensaje que pide confirmación y luego procederá a almacenar los datos.

Una vez almacenada la especialidad se desplegara un listado de todas las

especialidades.

Observaciones:

Page 40: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

27

Historia de usuario

Numero: 3 Nombre: registro una nueva categoría de

exámenes

Usuario: Administrador

Modificación de historia numero: Iteración asignada:

Prioridad en Negocio: Baja

(Alta / Media / Baja)

Puntos Estimados:15

Riesgo en Desarrollo: Bajo

(Alto / Medio / Bajo)

Puntos Reales:15

Descripción: El administrador tendrá la opción de registrar nuevas categorías

de exámenes, al ingresar a esta opción se desplegara una plantilla de datos

para llenar con el nombre de la categoría y un estado. Una vez llenados los

datos el administrador podrá seleccionar la opción de enviar que le desplegara

un mensaje que pide confirmación y luego procederá a almacenar los datos.

Una vez almacenada la categoría se desplegara un listado de todas las

categorías de exámenes.

Observaciones:

Page 41: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

28

Historia de usuario

Numero: 4 Nombre: asigno secretarias a médico

Usuario: Administrador

Modificación de historia numero: Iteración asignada:

Prioridad en Negocio: Media

(Alta / Media / Baja)

Puntos Estimados:8

Riesgo en Desarrollo: Medio

(Alto / Medio / Bajo)

Puntos Reales:8

Descripción: El administrador tendrá la opción de asignar secretarias a los

médicos, al ingresar a esta opción se desplegara una plantilla de datos para

seleccionar secretaria, médico y un estado. Una vez seleccionados los datos el

administrador podrá seleccionar la opción de enviar que le desplegara un

mensaje que pide confirmación y luego procederá a almacenar los datos.

Una vez almacenada la asignación se desplegara un listado de las secretarias

con los médicos asignados.

Observaciones:

Page 42: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

29

Historia de usuario

Numero: 5 Nombre: asigno especialidades al

médico

Usuario: Administrador

Modificación de historia numero: Iteración asignada:

Prioridad en Negocio: Baja

(Alta / Media / Baja)

Puntos Estimados:11

Riesgo en Desarrollo: Bajo

(Alto / Medio / Bajo)

Puntos Reales:13

Descripción: El administrador tendrá la opción de asignar especialidades a los

médicos, al ingresar a esta opción se desplegara una plantilla de datos para

seleccionar la especialidad y el médico. Una vez seleccionados los datos el

administrador podrá seleccionar la opción de enviar que le desplegara un

mensaje que pide confirmación y luego procederá a almacenar los datos.

Una vez almacenada la asignación se desplegara un listado de las

especialidades y a cual pertenece cada médico.

Observaciones:

Page 43: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

30

Historia de usuario

Numero: 6 Nombre: asigno horarios a médicos

Usuario: Administrador

Modificación de historia numero: Iteración asignada:

Prioridad en Negocio: Alta

(Alta / Media / Baja)

Puntos Estimados:3

Riesgo en Desarrollo: Alto

(Alto / Medio / Bajo)

Puntos Reales:3

Descripción: El administrador tendrá la opción de asignar horarios a los

médicos, al ingresar a esta opción se desplegara una plantilla de datos para

seleccionar un intervalo de tiempo que es el tiempo estimado que el Medico

necesita para atender a un paciente, las horas de inicio y fin de la atención en

la mañana y en la tarde, y un estado. Una vez seleccionados los datos el

administrador podrá seleccionar la opción de actualizar que le desplegara un

mensaje que pide confirmación y luego procederá a almacenar los datos.

Una vez almacenada la asignación se desplegara el horario de atención de

cada médico.

Observaciones:

Page 44: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

31

Historia de usuario

Numero: 7 Nombre: registro una nueva cita

médica

Usuario: Paciente

Modificación de historia numero: Iteración asignada:

Prioridad en Negocio: Alta

(Alta / Media / Baja)

Puntos Estimados:2

Riesgo en Desarrollo: Alto

(Alto / Medio / Bajo)

Puntos Reales:2

Descripción: El paciente tendrá la opción de registrar una nueva cita médica,

al ingresar a esta opción se desplegara una plantilla de datos para seleccionar

al médico, la fecha de la cita médica y la hora a la cual será atendido. Una vez

seleccionados los datos el paciente podrá seleccionar la opción de registrar cita

médico que le desplegara un mensaje que pide confirmación y luego procederá

a almacenar los datos.

Observaciones:

Page 45: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

32

Historia de usuario

Numero: 8 Nombre: registro una nueva historia

médica

Usuario: Medico

Modificación de historia numero: Iteración asignada:

Prioridad en Negocio: Media

(Alta / Media / Baja)

Puntos Estimados:5

Riesgo en Desarrollo: Medio

(Alto / Medio / Bajo)

Puntos Reales:7

Descripción: El médico tendrá la opción de ingresar una historia médica del

paciente atendido, al ingresar a esta opción se desplegara una plantilla de

datos para seleccionar al paciente, la fecha de la cita médica y la hora a la cual

fue atendido, y se ingresarán los datos más relevantes de dicha cita. Una vez

registrados los datos el médico podrá seleccionar la opción de registrar historia

médica que le desplegara un mensaje que pide confirmación y luego procederá

a almacenar los datos.

Observaciones:

Page 46: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

33

Historia de usuario

Numero: 9 Nombre: cancelo cita médica

Usuario: Medico

Modificación de historia numero: Iteración asignada:

Prioridad en Negocio: Media

(Alta / Media / Baja)

Puntos Estimados:10

Riesgo en Desarrollo: Bajo

(Alto / Medio / Bajo)

Puntos Reales:11

Descripción: El médico tendrá la opción de cancelar una cita médica, al

ingresar a esta opción se desplegara una plantilla de datos para seleccionar las

citas médicas registradas. Una vez seleccionada la cita a cancelar el médico

podrá seleccionar la opción de cancelar cita médica que le desplegara un

mensaje que pide confirmación y luego procederá registrarse la cita cancelada.

Observaciones:

Page 47: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

34

Historia de usuario

Numero: 10 Nombre: modifico datos personales

Usuario: Secretaria

Modificación de historia numero: Iteración asignada:

Prioridad en Negocio: Media

(Alta / Media / Baja)

Puntos Estimados:6

Riesgo en Desarrollo: Medio

(Alto / Medio / Bajo)

Puntos Reales:6

Descripción: La secretaria tendrá la opción de modificar sus datos personales,

al ingresar a esta opción se desplegara una plantilla de datos para actualizar

los datos personales de la secretaria. Una vez ingresados los datos a actualizar

la secretaria podrá seleccionar la opción de actualizar que le desplegara un

mensaje que pide confirmación y luego procederá a actualizarse los datos en la

base de datos.

Observaciones:

Page 48: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

35

Después de haber establecido estas pautas para el sistema se desarrollaron

los respectivos Diagramas de Casos de Uso para poder tener una idea más

clara y visual de cómo son los procesos y a lo que se enfocará el sistema de

reservaciones online.

2.2. Fase de Planificación

2.2.1. Diagramas de Casos de Uso

“Los Diagramas de Casos de Uso hacen que se muestren las

interacciones entre los casos de uso y los actores. Los casos de uso

representan:

· La funcionalidad del sistema y

· Los requisitos del sistema desde la perspectiva del usuario.”(Romero,

2004)

Los Casos de Uso guían el diseño, implementación y prueba de un sistema.

Los Casos de Uso constituyen un elemento integrador y una guía del trabajo.

Los actores identificados para el desarrollo de los Diagramas de Casos de Uso

son los siguientes:

· Administrador

· Paciente

· Médico

· Secretaria

· Invitado

Page 49: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

36

Los diagramas de casos de uso identificados son los siguientes:

Figura 4. Diagrama Principal de Casos de Uso del Sistema

Asignar Médicos a secretarias

Modificar Datos Personales

Modificar Password

Usuario

Invitado

Registrar Pacientes

Ingresar Especialidades de los médicos

Ingresar Exámenes

Asignar Especialidades a médicos

Imgresar los horarios de los Médicos

Secretaria

Ingresar Categorias de Exámenes

Crear Historia médica

Medico

Registrarse por primera vez

Registrar cita médica

Ver historias médicasAdministrador

Administrar citas médicas

Paciente

Realizar Respaldo Base de Datos

Administrar Perfiles de usuarios

Registrar Administradores

Registrar Médicos

Registrar Secretarias

Super Administrador

Page 50: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

37

Figura5. Diagrama de Casos de Uso del perfil Invitado

verificar que no exista otro usuario con el mismo nombre

Dar opciones de nombres de usuario

Generar contraseña aleatoriamente

Registrar como paciente

Confirmar e-mail

enviar e-mail de registro

Invitado

Hacer clic en registrarse ahora

Ingresar Datos personales del usuario

Page 51: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

38

Figura6. Diagrama de Casos de Uso del perfil Administrador

Administrar Perfiles de usuarios

Asignar Médicos a secretarias

Asignar Especialidades a médicos

Imgresar los horarios de los Médicos

Modificar Datos Personales

Modificar Password

Ver historias médicas

Administrar citas médicas

Registrar cita médica

Crear Historia médica

Realizar Respaldo Base de Datos

Registrar Pacientes

Registrar Secretarias

Registrar Médicos

Registrar Administradores

Ingresar Especialidades de los médicos

Ingresar Exámenes

Ingresar Categorias de Exámenes

Administrador

Page 52: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

39

Figura7. Diagrama de Casos de Uso del perfil Paciente

Solicitar Cita médica por via Teléfonica

Ver historia médica

Modificar Datos Personales

Modificar Password

Médico

Cambiar Estado la Cita Médica aCancelada por Médico

Cambiar de Estado de la Cita Médica a Cancelada por Paciente

Secretaria

Cancelar Reservación Cita Médica

Paciente

Verificar Horarios de Médicos

Verificar la Disponibilidad de los Médicos

Cambiar Estado de la Cita Médica a registrada

Realizar Reservación Cita Médica

Page 53: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

40

Figura8. Diagrama de Casos de Uso del perfil Médico

Modificar Datos Personales

Modificar Password

Ingresar su Horario de Atención

Seleccionar su EspecialidadIngresar Categorias de Exámenes

Ingresar Exámenes

Asignar Exámenes a Categorias

Ingresar Pacientes

Ver historias médicas de los Pacientes

Actualiza Historias Médicas de los Pacientes

Crear Historias Médicas de los Pacientes

Cambia de Estado de la Cita Médica a Cancelada por médico

Cancelar Reservación Cita Médica

Paciente

Médico

Cambiar de Estado de la Cita Médica a Ejecutada

Revisar Reservación cita médica

Page 54: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

41

Figura9. Diagrama de Casos de Uso del perfil Secretaria

Paciente

Administrar citas médicas

Realizar Reservación cita médica

Solicitar reservación de Cita Médica via telefonica

Modificar Horarios de los Médicos

Modific ar Especial idades de los médicos

Ingresar Especial idades de los médicos

Modificar Datos Personales

Modificar Password

Ingresar Exámenes

Ingresar Categorias de Exámenes

Ingresar Pacientes

Secretaria

Page 55: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

42

2.2.2. Diagrama de Clases

“Los diagramas de Clases son creados para proporcionar la vista de alguna o

de todas las clases que conforman el modelo”(Romero, 2004)

Figura10: Diagrama de Clases

2.2.3. Bases de Datos

A continuación se presenta el Modelo de Datos Relacional que representa la

estructura de los datos que manejará el sistema.

Page 56: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

43

2.2.3.1. Modelo Entidad Relación

Figura11.Diagrama Entidad Relación de la Base de Datos

examenes_ibfk_1

historias_medicas_examenes_ibfk_1

historias_medicas_examenes_ibfk_2

medicos_citas_ibfk_1

medicos_especialidades_ibfk_1

medicos_especialidades_ibfk_2

secretarias_medicos_ibfk_1

secretarias_medicos_ibfk_2

usuarios_perfi les_ibfk_2

usuarios_usuarios_ibfk_1

vta_historias_medicas

id_historia_medicaid_medicoid_pacientemotivodiagnosticomedicamentosalergiasobservacionesmedico_ncpaciente_ncfecha

int(5)int(5)int(5)texttexttexttexttextvarchar(101)varchar(101)date

vta_medicos

id_medicoid_usuariointervalo_minutoshora_inicio1hora_fin1hora_inicio2hora_fin2estadoapellidosnombrestelefonocelularemaildireccionciudadfotografiafecha_nacimientomedico_nc

int(5)varchar(10)int(2)timetimetimetimevarchar(10)varchar(50)varchar(50)varchar(9)varchar(9)varchar(50)varchar(100)varchar(50)varchar(250)datevarchar(101)

vta_medicos_citas

id_historia_medicaid_medicoid_pacientemotivodiagnosticomedicamentosalergiasobservacionesapellidosnombresfecha

int(5)int(5)int(5)texttexttexttexttextvarchar(50)varchar(50)date

vta_medicos_citas_adv

id_medico_citaid_medicoid_pacientefecha_citahota_citafecha_registroestadopaciente_ncmedico_nc

int(5)int(5)int(5)datetimedatetimevarchar(10)varchar(101)varchar(101)

vta_pacientes

id_pacienteid_usuarioapellidosnombrestelefonocelularemaildireccionciudadfotografiafecha_nacimientopaciente_c

int(5)varchar(10)varchar(50)varchar(50)varchar(9)varchar(9)varchar(50)varchar(100)varchar(50)varchar(250)datevarchar(101)

categorias

id_categorianombre_categoriaestado

int(2)varchar(50)varchar(10)

<pk>

especialidades

id_especialidadnombre_especialidadestado

int(2)varchar(50)varchar(10)

<pk>

examenes

id_examenid_categorianombre_examenestado

int(2)int(2)varchar(50)varchar(10)

<pk><ak,fk>

historias_medicas

id_historia_medicaid_medicoid_pacientemotivodiagnosticomedicamentosalergiasobservacionesfecha

int(5)int(5)int(5)texttexttexttexttextdate

<pk><ak1><ak2>

historias_medicas_examenes

id_historia_medicaid_examen

int(5)int(2)

<pk,ak2,fk1><pk,ak1,fk2>

medicos

id_medicoid_usuariointervalo_minutoshora_inicio1hora_fin1hora_inicio2hora_fin2estado

int(5)varchar(10)int(2)timetimetimetimevarchar(10)

<pk><ak>

medicos_citas

id_medico_citaid_medicoid_pacientefecha_citahota_citafecha_registroestado

int(5)int(5)int(5)datetimedatetimevarchar(10)

<pk><ak1,fk><ak2>

medicos_especialidades

id_medicoid_especialidad

int(5)int(2)

<pk,ak2,fk1><pk,ak1,fk2>

pacientes

id_pacienteid_usuario

int(5)varchar(10)

<pk><ak>

perfiles

id_perfi lnombre_perfi lurl

int(1)varchar(50)varchar(100)

<pk>

secretarias

id_secretariaid_usuario

int(5)varchar(10)

<pk><ak>

secretarias_medicos

id_secretariaid_medicoestado

int(5)int(5)varchar(10)

<pk,ak2,fk1><pk,ak1,fk2>

usuarios

id_usuarioapellidosnombrestelefonocelularemaildireccionciudadfotografiafecha_nacimiento

varchar(10)varchar(50)varchar(50)varchar(9)varchar(9)varchar(50)varchar(100)varchar(50)varchar(250)date

<pk>

usuarios_perfi les

id_usuarioid_perfi luserpassestado

varchar(10)int(1)varchar(50)varchar(50)varchar(10)

<pk,ak2,fk2><pk,ak1,fk1>

Page 57: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

44

2.2.3.2. Diccionario de Datos

Nombre del Proyecto:

SISTEMA DE ADMINISTRACIÓN ONLINE DE CITAS MÉDICAS

Lenguaje de Programación:

PHP versión 5.2.5

Nombre Programa:

Sistema Citas Médicas

Motor de Base de Datos:

Servidor de Base de Datos MySQL

Nombre de la Base de Datos:

citas_medicas

Tabla2.Tablas de la Base de Datos

N° Nombre Descripción Clave Primaria

1 usuarios Almacena los datos

personales de todos los

usuarios del sistema

id_usuario

2 perfiles Guarda los tipos de perfiles

de usuario del sistema

id_perfil

3 usuarios_perfiles Almacena los usuarios del

sistema y sus respectivas

contraseñas.

id_usuario, id_perfil

4 historias_medicas Contiene las historias

médicas de los pacientes.

id_historia_medica

5 historias_medicas_ex

amenes

Es una tabla relacional

entre las historias médicas

id_historia_medica,

id_examen

Page 58: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

45

de los pacientes y sus

respectivos exámenes

médicos.

6 exámenes Almacena los exámenes

médicos de los pacientes.

id_examen

7 categorías Se usa para categorizar los

diferentes tipos de

exámenes médicos que

existen en el consultorio.

id_categoria

8 pacientes Almacena una id_paciente y

el id_usuario de la tabla

usuarios

id_paciente

9 Medicos_citas Guarda las reservaciones

de las citas médicas

id_medico_cita

10 médicos Almacena una id_medico y

el id_usuario de la tabla

usuarios, también almacena

el horario de atención del

médico.

id_medico

11 especialidades Contiene las diferentes

especialidades de los

médicos

id_especialidad

12 medicos_especialidad

es

Es una tabla relacional de

los médicos con sus

respectivas especialidades.

id_medico,

id_especialidad

13 secretarias Almacena una id_secretaria

y el id_usuario de la tabla

usuarios

id_secretaria

14 secretarias_medicos Contiene la asignación de

las secretarias con los

médicos con los cuales

trabajará.

id_secretaria,

id_medico

Page 59: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

46

Usuarios

Tabla3.TablaUsuarios

Campos Descripción Tipo de Dato

id_usuario Clave primaria varchar(10)

apellidos Apellidos de los usuarios varchar(50)

nombres Nombres de los usuarios varchar(50)

telefono Teléfono del usuario varchar(9)

celular Celular del usuario varchar(9)

email Correo electrónico del usuario varchar(50)

direccion Dirección de la casa del usuario varchar(100)

ciudad Ciudad donde vive el usuario varchar(50)

fotografia Ubicación de la fotografía del usuario varchar(250)

fecha_nacimiento Fecha de nacimiento del usuario date

Perfiles

Tabla4.Tablaperfiles

Campos Descripción Tipo de Dato

id_perfil Clave primaria int(1)

nombre_perfil Contiene los diferentes perfiles de

usuario del sistema

varchar(50)

url Almacena las direcciones de las

páginas de los perfiles de usuario

varchar(100)

Page 60: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

47

Usuarios Perfiles

Tabla5.Tablausuarios_perfiles

Campos Descripción Tipo de Dato

id_usuario Clave foránea de la tabla usuarios varchar(10)

id_perfil Clave foránea de la tabla perfiles int(1)

user Clave primaria, login del usuario varchar(50)

pass Password del usuario varchar(50)

estado Se le asigna dos estados (activo,

desactivo)

varchar(10)

Historias Médicas

Tabla6.Tablahistorias_medicas

Campos Descripción Tipo de Dato

id_historia_medica Clave primaria int(5)

id_medico Clave foránea de la tabla medicos int(5)

id_paciente Clave foránea de la tabla pacientes int(5)

motivo Motivo de la visita médica text

diagnostico Diagnóstico del médico text

medicamentos Medicamentos recetados text

alergias Alergias que tenga el paciente text

observaciones Observaciones hechas por el médico text

fecha Fecha en la que se ingresó la historia date

Page 61: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

48

Historias médicas exámenes

Tabla7.Tablahistorias_medicas_examenes

Campos Descripción Tipo de Dato

id_historia_medica Clave primaria y clave foránea de la

tablahistorias_medicas

int(5)

id_examen Clave primaria y clave foránea de la

tabla examenes

int(2)

Exámenes

Tabla8.Tablaexamenes

Campos Descripción Tipo de Dato

id_examen Clave primaria int(2)

id_categoria Clave foránea de la tabla categorias int(2)

nombre_examen Nombre del examen médico varchar(50)

estado Se le asigna dos estados (activo,

desactivo)

varchar(10)

Categorías

Tabla9.Tablacategorias

Campos Descripción Tipo de Dato

id_categoria Clave primaria int(2)

nombre_categoria Nombre de las Categorías de

exámenes médicos que existen en el

consultorio

varchar(50)

estado Se le asigna dos estados (activo,

desactivo)

varchar(10)

Page 62: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

49

Pacientes

Tabla10.Tablapacientes

Campos Descripción Tipo de Dato

id_paciente Clave primaria int(5)

id_usuario Clave foránea de la tabla usuarios varchar(10)

Médicos citas

Tabla11.Tablamedicos_citas

Campos Descripción Tipo de Dato

id_medico_cita Clave primaria int(5)

id_medico Clave foránea de la tabla medicos int(5)

id_paciente Clave foránea de la tabla pacientes int(5)

fecha_cita Fecha de la cita médica date

hora_cita Hora de la cita médica time

fecha_registro Fecha en la cual se hizo la reservación datetime

estado Se le asigna los estados (registrada,

ejecutada, incumplida, cancelada por

paciente, cancelada por médico)

varchar(10)

Page 63: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

50

Médicos

Tabla12.Tabla medicos

Campos Descripción Tipo de Dato

id_medico Clave primaria int(5)

id_usuario Clave foránea de la tabla usuarios varchar(10)

intervalo_minutos Tiempo de trabajo del médico int(2)

hora_inicio1 Hora de inicio del primer turno del

médico

time

hora_fin1 Hora de fin del primer turno del médico time

hora_inicio2 Hora de inicio del segundo turno del

médico

time

hora_fin2 Hora de fin del segundo turno del

médico

time

estado Se le asigna dos estados (activo,

desactivo)

varchar(10)

Especialidades

Tabla13.Tablaespecialidades

Campos Descripción Tipo de Dato

id_especialidad Clave primaria int(2)

nombre_especialid

ad

Almacena las diferentes

especialidades médicas

varchar(50)

estado Se le asigna dos estados (activo,

desactivo)

varchar(10)

Page 64: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

51

Médicos especialidades

Tabla14.Tablamedicos_especialidades

Campos Descripción Tipo de Dato

id_medico Clave primaria y clave foránea de la

tabla medicos

int(5)

id_especialidad Clave primaria y clave foránea de la

tabla especialidades

int(2)

Secretarias

Tabla15.Tablasecretarias

Campos Descripción Tipo de Dato

id_secretaria Clave primaria int(5)

id_usuario Clave foránea de la tabla usuarios varchar(10)

Secretarias Médicos

Tabla16.Tablasecretarias_medicos

Campos Descripción Tipo de Dato

id_secretaria Clave primaria y clave foránea de la

tabla secretarias

int(5)

id_medico Clave primaria y clave foránea de la

tabla medicos

int(5)

estado Registra un estado activo Varchar(10)

Page 65: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

52

2.2.4. Prototipo de la Pantalla Principal del Sistema

Después de realizar un análisis exhaustivo del sistema se diseñó un prototipo

de cómo será la pantalla principal del sistema:

En primera instancia se muestra el prototipo de la pantalla de ingreso al

sistema en la cual el perfil de usuario invitado podría acceder al vínculo de

regístrate ahora e ingresar sus datos personales, para así convertirse en un

paciente del sistema.

Figura12.Pantalla Regístrate ahora

2.2.5. Interfacesdel Sistema

El sistema de reservación de citas online está estructurado por tareas, que

serán ejecutadas por los diferentes perfiles de usuario.

Las tareas se habilitan dependiendo del perfil.

Page 66: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

53

Los perfiles ordenados desde el que tiene más acceso hasta el que tiene

menos son:

· Administrador

· Secretaria

· Médico

· Paciente

· Invitado

Cabe decir que el perfil invitado solo se lo utilizará para cuando se ingresa por

primera vez en el sistema, el cual una vez llenado los datos personales que

indique el formulario pasaría a convertirse en perfil paciente.

La siguiente pantalla nos muestra todas las tareas que puede realizar el

administrador.

Figura13. Pantalla de perfil Administrador

Page 67: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

54

Esta pantalla nos muestra las tareas que puede realizar el médico.

Figura14. Pantalla del perfil médico

En esta pantalla vemos las tareas que puede realizar la secretaria.

Figura15.Pantalla del perfil Secretaria

Page 68: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

55

Y por último tenemos la pantalla de las tareas que realiza el Paciente.

Figura16. Pantalla del perfil Paciente

2.2.6. Descripción de los controles del sistema propuesto

Los usuarios deberán logearse para ingresar al sistema. El sistema verificará

el tipo de usuario y si éste está activo. Si alguno de los datos esperados no es

correcto, el sistema volverá a la página de logeo. Si los datos son correctos, el

sistema cargará las tareas dependiendo del tipo de usuario.

1.- Perfil Administrador.- cuenta con las siguientes tareas:

· Registros

o Administradores

o Secretarias

o Médicos

o Pacientes

o Especialidades

o Categorías de Exámenes

Page 69: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

56

o Exámenes

· Usuarios

o Administradores

o Secretarias

o Médicos

o Pacientes

· Asignaciones

o Médicos a Secretarias

o Especialidades a Médicos

o Horarios a Médicos

· Procesos

o Registrar Cita Médica

o Administrar Citas Médicas

o Respaldo de Base de Datos

· Personal

o Modificar Datos Personales

o Modificar Password

· Salir

2.- Perfil Médico.- cuenta con las siguientes tareas:

· Registros

o Pacientes

o Especialidades

o Categorías de Exámenes

o Exámenes

· Asignaciones

o Especialidades a Médicos

o Horarios a Médicos

· Procesos

o Ver Historias Médicas

o Crear Historia Médica

Page 70: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

57

· Personal

o Modificar Datos Personales

o Modificar Password

· Salir

3.- Perfil Secretaria.- cuenta con las siguientes tareas:

· Registros

o Pacientes

o Especialidades

o Categorías de Exámenes

o Exámenes

· Asignaciones

o Especialidades a Médicos

o Horarios a Médicos

· Procesos

o Registrar Cita Médica

o Administrar Citas Médicas

· Personal

o Modificar Datos Personales

o Modificar Password

· Salir

4.- Perfil Paciente.- cuenta con las siguientes tareas:

· Procesos

o Registrar Cita Médica

o Administrar Citas Médicas

o Ver Historias Médicas

· Personal

o Modificar Datos Personales

o Modificar Password

· Salir

Page 71: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

58

2.3. Fase de Iteraciones

Tabla177.Historias de Usuario del Sistema

Historia de Usuario Valoración

Yo Administrador registro un nuevo usuario para que puede

acceder al sistema

1

Yo Paciente registro una nueva cita médica para ser

atendido por el médico.

2

Yo Administrador asigno horarios a médicos para la

atención de consultas a los pacientes.

3

Yo Médico registro una nueva historia médica para el

historial del paciente atendido.

5

Yo secretaria modifico datos personales para estar

actualizado.

6

Yo Administrador asigno secretarias a médico para su

atención.

8

Yo Médico cancelo cita médica para no poder atender en

un horario establecido.

10

Yo Administrador asigno especialidades al médico para

saber que especialidades posee.

11

Yo Administrador registro una nueva especialidad para ser

asignada a los médicos.

14

Yo Administrador registro una nueva especialidad para ser

asignada a los médicos

15

Page 72: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

59

Figura17. Cronograma de Gant de Iteraciones

Page 73: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

60

3. Capítulo III. Desarrollo

3.1. Documentos del diseño final del Sistema

Después de realizar el análisis y establecer el diseño del sistema se llegó a

constituir cómo será el Sistema de Administración de Citas Médicas, de

acuerdo a los requerimientos establecidos por todos los participantes tanto

internos como externos.

En primera instancia se tiene la pantalla de inicio en la cual se ingresara el

usuario y el password, para que así el sistema pueda verificar que tipo de perfil

de usuario es y permitirle realizar las tareas asignadas para este usuario.

Figura18. Pantalla de Ingreso al Sistema

Cuando se ha verificado el usuario y el password se ingresara al sistema de

administración de citas médicas. El contenido de cada una de las tareas del

sistema lo desarrollamos a continuación.

Page 74: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

61

3.2. Descripcióndetallada de la lógica de cada Tarea

El Sistema se encuentra compuesto de las siguientes tareas que detallaremos

a continuación:

Registros

Este menú se lo usa para enlistar los datos de los diferentes perfiles de

usuarios que posee el sistema, también presenta el listado de especialidades

de los médicos, exámenes y categorías de exámenes que se realizan en el

consultorio.

Los perfiles de usuario serán enlistados en primera instancia. En cada uno de

los ítems del menú se mostrará un vínculo de Nuevo Registro adicional al

listado que se utiliza para el ingreso de los datos de un nuevo administrador del

sistema, una secretaria, un médico o un paciente.

Administradores

Presenta el listado de los administradores del sistema.

Figura19. Pantalla del submenú Registros Administradores

Page 75: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

62

Ingreso nuevo administrador.

Figura20. Pantalla de Ingreso de Datos del Administrador

Secretarias

Presenta el listado de las secretarias del consultorio.

Figura21. Pantalla del submenú Registros Secretarias

Page 76: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

63

Ingreso nueva secretaria.

Figura22. Pantalla de Ingreso de Datos de la Secretaria

Médicos

Presenta el listado de los médicos del consultorio.

Figura23. Pantalla del submenú Registros Médicos

Page 77: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

64

Ingreso nuevo médico.

Figura24. Pantalla de Ingreso de Datos del Médico

Pacientes

Presenta el listado de los pacientes del consultorio.

Figura25.Pantalla del submenú Registros Pacientes

Page 78: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

65

Ingreso nuevo paciente.

Figura26. Pantalla de Ingreso de Datos del Paciente

Especialidades

Nos presenta un listado de las especialidades de los médicos del consultorio.

Aquí se encuentran las especialidades de cada uno de los médicos sin

especificar a qué médico pertenece cada una.

Figura27. Pantalla del submenú Registros Especialidades

Page 79: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

66

Ingresar una nueva especialidad.

Figura28. Pantalla de Ingreso de una nueva especialidad

Categorías de exámenes

Presenta un listado de las categorías de los exámenes médicos del consultorio.

Figura29.Pantalla del submenú Registros Categorías de Exámenes

Page 80: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

67

Ingresar nueva categoría de examen. Cuando se crea la nueva categoría se

debe seleccionar el estado activo para que la categoría pueda ser seleccionada

después en el ingreso de los exámenes médicos de dicha categoría.

Figura30. Pantalla de Ingreso de una nueva Categoría de Examen

Exámenes

Presenta un listado de los exámenes médicos realizados en el consultorio. Aquí

está un listado completo de todos los exámenes que se realizan o son pedidos

por los médicos del consultorio.

Figura31. Pantalla del submenú Registros Exámenes

Page 81: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

68

Ingreso nuevo examen médico. Al momento de ingresar un nuevo examen

médico se debe seleccionar a que categoría de exámenes pertenece dicho

examen y se debe seleccionar el estado activo para que pueda ser utilizado en

el sistema.

Figura32. Pantalla de Ingreso de un Nuevo Examen Médico

Además, tenemos tres iconos que nos permiten realizar las siguientes

acciones:

Permite ver cada uno de los registros.

Figura33. Pantalla que muestra cada registro

Page 82: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

69

Editar cada uno de los registros.

Figura34. Pantalla para editar cada registró

Eliminar cada uno de los registros.

Figura35. Pantalla para eliminar cada registro

Page 83: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

70

Usuarios

Este menú contiene los perfiles de usuario del sistema. Como se vio

anteriormente en el menú registros se ingresan los datos de los perfiles de

usuario, aquí se enlista cuáles son los usuarios de dichos perfiles y se puede

cambiar a estos usuarios su tipo de perfil dependiendo las circunstancias.

Administradores

Se obtiene un listado de los usuarios que serán administradores del sistema.

Figura36.Pantalla del submenú Usuarios Administradores

Page 84: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

71

Secretarias

Se obtiene un listado de los usuarios que serán secretarias del sistema.

Figura37.Pantalla del submenú Usuarios Secretarias

Médicos

Se obtiene un listado de los usuarios que son médicos para el sistema.

Figura38. Pantalla del submenú Usuarios Médicos

Page 85: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

72

Pacientes

Se obtiene un listado de los usuarios que son pacientes del sistema.

Figura39. Pantalla del submenú Usuarios Pacientes

Como ya se mencionó anteriormente si se desea cambiar a un usuario su tipo

de perfil tendremos que hacer clic en el Nuevo registro dependiendo el tipo de

perfil que queramos cambiar, por ejemplo si un usuario es secretaria y

queremos que se vuelva paciente tendremos que ingresar al submenú paciente

y hacer clic en nuevo registro y se nos muestra la pantalla para realizar dicho

cambio.

Figura40. Pantalla Nueva Registro

Page 86: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

73

Igualmente en cada uno de los listados de perfiles tenemos los iconosde:

Permite ver cada uno de los registros.

Figura41.Pantalla que muestra cada Registro

Editar elpassword y el estado (activo, desactivo).

Figura42. Pantalla para editar cada registro

Page 87: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

74

Eliminar cada uno de los registros.

Figura43.Pantalla para eliminar cada registro

Asignaciones

Este menú contiene la forma en la cual se encuentra organizado el consultorio

médico. Nos presenta que secretaria es la asignada para cada médico, las

especialidades que poseen los médicos y los horarios en los cuales los

médicos atienden en el consultorio.

Este menú es usado para administrar el funcionamiento de consultorio y no

solo para presentar reportes de cada una de los elementos mencionados

anteriormente.

Médicos a secretarias

Presenta un listado de las secretarias asignadas a cada médico.

Puede darse el caso de que una secretaria trabaje para distintos doctores y no

de que un doctor trabaje con distintas secretarias.

Page 88: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

75

Figura44. Pantalla del submenú Asignación de Médicos a Secretarias

El momento de hacer clic en nuevo registro se creará una nueva asignación de

secretarias a médicos dentro del sistema.

Figura45. Pantalla de Nuevo Registro

Page 89: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

76

En este submenú tenemos los iconos de que permite ver los registros

del sistema.

Figura46. Pantalla que muestra cada registro

Que nos permite editar el estado de la asignación que puede ser activo

o desactivo.

Figura47. Pantalla para editar cada registro

Page 90: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

77

Y el icono que sirve para eliminar las asignaciones de las secretarias a

los médicos.

Figura48. Pantalla para eliminar cada registro

Especialidades a médicos

Presenta el listado de las especialidades que posee cada uno de los médicos

que atienden en el consultorio.

Figura49. Pantalla del submenú Asignación de Especialidades a Médicos

Page 91: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

78

Para asignar una nueva especialidad a los médicos se hace clic en nuevo

registro y se selecciona la especialidad y el médico.

Figura50. Pantalla de Nuevo Registro

En este submenú solo tenemos el icono que nos permite eliminar la

asignación de la especialidad de los médicos.

Figura51. Pantalla para eliminar cada registro

Page 92: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

79

Horarios a médicos

Presenta el reporte de los horarios de atención de los médicos del consultorio.

Figura52. Pantalla del submenú Asignación de Horarios a Médicos

Aquí en este apartado del sistema se tiene dos iconos los cuales realizan las

siguientes acciones.

Nos presenta el horario de atención de cada uno de los médicos del

consultorio.

Figura53. Pantalla que muestra cada registro

Page 93: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

80

Edita el horario de atención de los médicos del consultorio.

Figura54. Pantalla para editar cada registro

El resto de tareas se lo explicara en las entradas y salidas por ser la parte

medular del sistema en las cuales se realiza los procesos de citas médicas y

los reportes de las mismas.

3.3. Descripción de las Entradas y Salidas

Aquí se especificaran los procesos primordiales que se ejecutaran dentro del

sistema de administración de citas médicas. En cada proceso se deberá

seleccionar o ingresar datos primordiales para la ejecución de los mismos. A

continuación se detalla cada uno de ellos.

Procesos

Este menú presenta los procesos que se realizaran dentro del consultorio

médico.

Registrar Cita Médica

Es el proceso en el cual el paciente solicita una cita con su respectivo médico

en el consultorio, seleccionando de antemano el horario en el cual podrá asistir.

Page 94: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

81

El sistema verificara la disponibilidad de ese horario y nos aceptara la

reservación.

Figura55. Pantalla del submenú Registrar Cita Médica

Entradas: Paciente, Fecha de la Cita Médica,Medico, Hora de la Cita Médica.

Salidas: Reporte de la Cita Médica.

Administrar Citas Médicas

En este proceso se puede gestionar las citas registradas en el sistema de

reservación online. El paciente realiza el registro de su cita médica, el sistema

verifica dicha reservación, y después la secretaria puede revisar y modificar las

citas médicas que aparecen registradas en el sistema.

Como una primera pantalla tenemos un reporte de todas las citas médicas

registradas.

Page 95: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

82

Figura56. Pantalla del submenú Administrar Cita médica

Figura57. Pantalla de Reporte de Cita Médica

Este link Confirmar permite modificar el estado de la cita médica del reporte de

todas las citas médicas.

Page 96: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

83

Figura58. Pantalla de modificar cita medica

Crear una Historia Medica

Este proceso se usa para crear las citas médicas de los pacientes cuando se

realiza una consulta con los médicos del consultorio ginecológico.

Las historias médicas solo se crean después que el paciente fue atendido por

el médico especialista. Una vez finalizada la consulta la cita médica se modifica

su estado a ejecutada.

Figura59. Pantalla de Submenú Crear un Historia Médica

Page 97: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

84

Entradas: Motivo, Diagnostico, Medicamentos, Alergias, Observaciones.

Salidas: Reporte de Historia Médica.

Ver Historia Medica

Este proceso nos presenta las historias médicas de los pacientes que son

atendidos en el consultorio.

Figura60. Pantalla de submenú ver historias médicas

El Icono nos permite modificar la historia médica de cada uno de los

pacientes del consultorio.

Figura61. Pantalla de Reporte de Historia Médica

Page 98: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

85

Respaldo de Base de Datos

Genera el respaldo de la base de datos.

Figura62. Pantalla del submenú Respaldo de Base de Datos

Personal

Este menú se refiere a los datos personales del usuario que utilizará el sistema.

Modificar Datos Personales

Presentan los Datos personales del usuario que ingreso al sistema, para que él

los pueda modificar.

Figura63.Pantalla del submenú Modificar Datos Personales

Page 99: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

86

Entradas: Apellidos, Nombres, Teléfono, Celular, Email, Dirección, Ciudad,

Fecha de nacimiento, Fotografía.

Modificar Password

Presenta el password del usuario que ingreso al sistema la misma que puede

ser modificada.

Figura64. Pantalla del submenú Modificar Password

Entradas: Password.

3.4. Listado de Programas

El desarrollo del sistema de reservaciones de Citas Online se lo realizó en un

servidor local con XAMPP.

XAMPP es un servidor independiente de plataforma, software libre, que

consiste principalmente en la base de datos MySQL, el servidor web Apache y

los intérpretes para lenguajes de script: PHP y Perl.

Page 100: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

87

“Adicionalmente a las tres herramientas básicas instaladas, se usaron

algunas utilidades como: PHPmyAdmin, Open SSL, PERL o Webalizer.”

(Apache Friends, s.f.)

3.5. Cadenas de Ejecución

Para ejecutar el sistema de Administración de citas online en las terminales se

debe abrir un browser de navegación de internet como Internet Explorer,

Mozilla Firefox o Google Chrome y digitar la siguiente dirección:

· http://www.ginecojat.com

Page 101: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

88

4. Capítulo IV. Implementación y Pruebas

4.1. Fase de puesta en producción

4.1.1. Implementación del Sistema

El Sistema de Administración de Citas Online se lo implementó en un Hosting

en la Web el mismo que fue previamente contratado. El dominio bajo el cual se

publica el sistema eswww.ginecojat.com.

Implementación en el servidor web del Hosting contratado

La implementación consta de 2 partes: Servidor de Base de datos y Servidor de

Archivos

4.1.2. Servidor de Base de Datos

Paso1.- Ingresamos al panel de control a través de la siguiente url:

www.ginecojat.com/cpanel, e ingresamos los siguientes datos:

Usuario: ginecoja

Password: 7^hNMQbs$&sU

Figura65. Pantalla de Ingreso a Cpanel

Page 102: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

89

Paso2.- La siguiente pantalla permite ingresar al Motor de Base de Datos

MySQL paracrear la base de datos que utilizará el sistema.

Figura 66. Pantalla de Administración del Cpanel

Paso3.- Aquí se procederá a crear la base de datos con el nombre de

ginecoja_citas

Figura 67. Pantalla de MySQL

Page 103: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

90

Paso 4.- En la anterior pantalla procedemos a crear el usuario que accederá a

la base de datos anteriormente creada.

Usuario: ginecoja_andres

Password: 12sisginec1

Figura68. Pantalla para crear el usuario de la Base de datos

Paso 5.-Damos clic en “Añadir” para añadir un usuario a la Base de Datos y

procedemos a asignar permisos al usuario creado anteriormente para trabajar

con la base de datos ya creada.

Figura69. Pantalla de los permisos del usuario

Page 104: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

91

Paso 6.- En la pantalla principal del panel de control del Hosting hacemos Click

en el acceso: PhpMyAdmin. Esta acción abrirá una nueva ventana que

permitirá administrar vía web la base de datos.Damos Click en la base de

datos: ginecoja_citas, seguidamente hacemos Click en Importar para poder

subir la base de datos local en archivo .sql al servidor de base de datos en la

web.

Figura70. Pantalla de PhpMyAdmin

Una vez cargada la base de datos nos aparecerá la siguiente pantalla con

todas sus tablas.

Figura71. Pantalla de las Tablas de la Base de Datos

Page 105: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

92

4.1.3. Servidor de Archivos

Paso 1.- Abrimos un programa de trasferencia de archivos FTP, en este caso

WSFTP, nos aparecerá la siguiente pantalla, en la que tenemos que ingresar

los siguientes datos:

Host: ftp.ginecojat.com

Usuario: ginecoja

Password: 7^hNMQbs$&sU

Figura72. Pantalla de Servidor FTP WSFTP Pro

Page 106: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

93

Paso 2.- Cuando ingresamos nos aparece una pantalla que muestra en la parte

izquierda la estructura de archivos de nuestro computador y en la parte

derecha la estructura de archivos del servidor web.

Figura73. Pantalla de Administración de Datos del Servidor FTP

Paso 3.-En la parte del servidor de archivos de la web hacemos Click en

public_html y procedemos a transferir los archivos desde el computador

personal al servidor web.

Figura74. Pantalla de Transferencia de los archivos al Servidor Web

Page 107: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

94

Paso 4.- Una vez finalizado la transferencia de archivo procedemos abrir un

navegador web para acceder a la aplicación implementada en el servidor web.

La URL es la siguiente: http://www.ginecojat.com y se presentara la siguiente

pantalla:

Figura75. Pantalla Inicial del Sistema de Administración de Citas Online

4.2. Plan de Pruebas en el Hosting

“En las metodologías tradicionales, la fase de pruebas, incluyendo la

definición de los tests, es usualmente realizada sobre el final del proyecto,

o sobre el final del desarrollo de cada módulo. La metodología XP

propone un modelo inverso, en el que, lo primero que se escribe son los

test que el sistema debe pasar. Luego, el desarrollo debe ser el mínimo

necesario para pasar las pruebas previamente definidas.”(Joskowicz,

2005)

Al momento de las pruebas en el consultorio se utilizó datos de prueba y luego

datos reales que permitieron ir depurando procesos en cada una de las tareas

del sistema hasta cumplir con todos los requerimientos propuestos.

Page 108: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

95

Cada una de las pruebas se las realizó tomando en cuenta los diferentes

procesos que se dan en la rutina diaria de trabajo del consultorio; para así

poderlos automatizar en una manera más precisa.

En un inicio se instaló y configuró todos los requerimientos tanto a nivel de

hardware como de software en todas las terminales que van a tener instalado

el sistema; una vez completada esta labor se pudo comenzar a realizar las

pruebas de funcionamiento del sistema.

Paralelamente en todas las pruebas antes señaladas se realizó la

comprobación de las validaciones de los cuadros de entrada de los datos,

verificando que sean los correctos para cada una de las instancias.

Para verificar la integración de las tareas que conforman el sistema se realizó

diferentes tipos de pruebas, dando como resultado una depuración exitosa de

la codificación del sistema.

4.2.1. Resultados de las pruebas de cada módulo

En el momento de las pruebas se utilizó primero datos de prueba y luego datos

reales que permitieron ir afinando los procesos de cada módulo hasta cumplir

con los requerimientos de los usuarios.

4.2.2. Resultados de las pruebas de Integración

Para verificar la integración de los módulos que conforman el sistema se

realizaron diferentes tipos de pruebas primero con datos de prueba y luego con

datos reales dando como resultado una depuración exitosa de la codificación

del sistema.

Page 109: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

96

4.3. Plan detallado de Contingencias

“Un plan de contingencia es el proceso de determinar qué hacer si una

catástrofe se abate sobre la empresa y es necesario recuperar la red y los

sistemas.”(Monografías.com, s.f.)

El plan de Contingencia del Sistema de Administración de Citas Médicas que

se aplicará es el que se detalla a continuación:

El consultorio médico ginecológico se dedica a la atención de pacientes para lo

cual utiliza un Sistema informático de Administración de Citas Médicas online,

que brinda de forma rápida, transparente y segura la administración de citas

médicas. Una caída del sistema podría provocar muchos inconvenientes al

momento de la atención de dichos pacientes. Un análisis de riesgos

identificaría lo siguiente:

Activos e interdependencias

Este análisis demuestra que una amenaza materializada en el servidor de

hosting podría llegar a afectar los procesos de registro de citas online y la

administración de las reservaciones realizadas. Aunque esto no impida la

atención a los pacientes en el consultorio ginecológico, supondría una

interrupción temporal en los procesos antes mencionados. Además afectaría

negativamente a la imagen corporativa provocando la pérdida de pacientes.

Así, se evaluaría las amenazas y su impacto:

Amenazas:

· Los archivos de la aplicación web fueron borrados o alterados.

· La estructura y los registros de la base de datos sean alterados o borrados.

· No se cuente con un respaldo de archivos y registros de la base de datos

reciente.

Page 110: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

97

Impacto:

· Perdida de un porcentaje de clientes.

· Imposibilidad de realizar reservaciones online durante la caída del sistema.

· Imposibilidad de administrar las reservaciones realizadas.

· Reconstrucción manual de reservaciones de los pacientes a partir de otras

fuentes.

Todas estas consecuencias pueden valorarse en términos monetarios, que

junto a la probabilidad de materialización ofrecen una estimación del riesgo.

El plan de contingencias contendría someramente las siguientes

contramedidas:

Medidas técnicas:

· Identificar el punto de inseguridad por donde se realizó el ataque al servidor

de Hosting.

· Corregir fallas en el sistema de administración de citas médicas.

· Solicitar al proveedor aumentar la seguridad en el Servidor de Hosting.

· Respaldo de archivos del sistema.

· Respaldo de la estructura y los datos de la Base de Datos

Medidas organizativas:

· Precontrato de un Hosting alternativo en caso de caída del sistema.

· Procedimiento de copia de respaldo.

· Procedimiento de actuación en caso de caída del sistema.

Page 111: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

98

Medidas humanas:

· Formación para actuar en caso de caída del sistema.

· Designación de un responsable de realizar manualmente las citas médicas

en caso de la caída del sistema.

· Asignación de roles y responsabilidades para la copia de respaldo.

Los subplanes contendrían las siguientes previsiones:

Plan de respaldo:

· Realización de copias de respaldo.

· Revisión de las copias de respaldo.

Plan de emergencia:

· Activación del precontrato de Hosting alternativo.

· Restauración de las copias de respaldo.

· Reanudación de la actividad.

Plan de recuperación:

· Evaluación de daños.

· Traslado de datos desde la ubicación de emergencia a la habitual.

· Reanudación de la actividad.

· Desactivación del precontrato de alquiler de Hosting.

Para realizar las copias de respaldo tanto de los archivos del sistema así como

de la Base de Datos se realizará lo siguiente:

Page 112: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

99

· Respaldar la estructura y registros de la base de datos de la aplicación

que se encuentra en el servidor del Hosting

Ingresar al Hosting: ginecojat.com/cpanel, hacer click en el enlace

PhpMyadmin, lo cual abrirá la siguiente ventana.

Figura76. Pantalla Inicial del Servidor de Hosting

Figura77. Pantalla de Administración de CPanel

Page 113: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

100

Hacerclick en el nombre de la base de datos.

Figura78. Pantalla del PhpMyAdmin

Hacer click en el enlace: Exportar.

Figura79. Pantalla de las Bases de Datos

Page 114: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

101

Hacer click en el enlace: Continuar

Figura80. Pantalla de exportación de tablas

Se abrirá la siguiente ventana, que nos permite guardar el script en el computar

personal

Figura81. Pantalla para guardar el script

Page 115: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

102

Finalmente hacemos click en aceptar y guardamos en el computador personal.

Una vez guardada el script de la base de datos, procedemos a restaurar dicho

script en cualquier servidor de base de datos disponible. Para lo cual se deberá

seguir los siguientes pasos:

Crear una base de datos llamada: ginecoja_citas

Importar el script guardado en los anteriores pasos en la base de datos creada.

· Respaldar archivos de la aplicación web que se encuentran en el

servidor web del Hosting vía FTP.

Abrir un programa cualquiera cliente FTP, y conectarse al servidor web del

Hosting.

Figura82. Pantalla del servidor FTP

Page 116: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

103

Hacer click en public_html, seleccionar todas las carpetas disponibles y

moverles hacia una carpeta en el computador personal

Figura 83. Pantalla del Explorador de Archivos del Servidor FTP

· En caso que el sistema no esté en línea, producto que los archivos de

la aplicación web fueron borrados o alterados.

Borrar todos los archivos y capetas del servidor web del Hosting que se

encuentran dentro del directorio: public_html

Subir los archivos de la aplicación web al servidor web del Hosting, tal como se

indica en el manual de implementación.

Cambiar el Password de acceso al Hosting.

· En caso que la estructura y los registros de la base de datos sean

alterados o borrados.

Borrar todas las tablas de la base de datos en línea del servidor web

Restaurar o importar el último script generado desde el enlace: respaldo de

base de datos, en la aplicación web online.

Page 117: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

104

Por lo tanto se recomienda realizar respaldos de la base de datos de forma

continua.

· En caso que la aplicación web o base de datos sea altera por un

atacante, y no se cuente con un respaldo de archivos y registros de la

base de datos reciente.

Solicitar al proveedor de Hosting restaurar los archivos y base de datos a una

fecha no mayor a 7 días anteriores de la solicitud.

Page 118: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

105

5. Capítulo V. Conclusiones y Recomendaciones

5.1. Conclusiones

· Para realizar el estudio de vialidad del Sistema de Reservación de Citas

Médicas Online, hay que tener en cuenta a todos los involucrados dentro y

fuera de la organización, tanto Médicos, Secretarias, Pacientes; para

obtener una información acorde a la realidad del Consultorio.

· El Uso de la Metodología XP nos facilita el desarrollo del Sistema por su

simplicidad y agilidad, ya que en comparación con metodologías clásicas

(modelo en cascada, evolutivo, en espiral, iterativo, etc.) aparecen como

pesadas y poco eficientes.

· XP apuesta a la sencillez en el diseño, en el código, en los procesos, etc. La

sencillez es esencialpara que todos puedan entender el código, y se trata

de mejorar mediante recodificaciones continuas.

· La agilidad de la metodología XP se basa en que se pueden realizar

cambios a los requerimientos del sistema aún en fases tardías

deldesarrollo.

· Un correcto análisis nos permite conseguir un diseño de los Diagramas que

componen el Sistema de una manera más acorde a las necesidades del

consultorio y de los usuarios cumpliendo con todas las expectativas

propuestas, dotando de una herramienta visual al programador.

· El uso de software libre en el proyecto se dio en gran medida por los

beneficios que conlleva, como por ejemplo el costo de software libre es

mucho menor que el de sus alternativas privadas, pudiéndose obtener

incluso de forma gratuita, la estabilidad, la compatibilidad, la seguridad, etc.

· El bajo o nulo coste de los productos libres permiten proporcionar a las

PYMES servicios y ampliar sus infraestructuras sin que se vean mermados

sus intentos de crecimiento por no poder hacer frente al pago de grandes

cantidades en licencias, y el soporte se vuelve más personalizado.

Page 119: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

106

· Al usar software libre el acceso al código fuente permite el desarrollo de

nuevos productos sin la necesidad de desarrollar todo el proceso partiendo

de cero.

· El uso de MVC presenta grandes ventajas al momento de desarrollar como

son: fácil y flexible estructuración del código, “separación de poderes”

(datos, implementación e interfaz), seguridad y ayuda para el programador.

· Al automatizar los procesos que antes se realizaban manualmente se

obtuvo un ahorro de tiempo y de costos al momento de realizar las

transacciones.

Page 120: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

107

5.2. Recomendaciones

· Para obtener información más clara y precisa de la aplicación que se

pretende desarrollar hay que realizar un estudio de viabilidad eficiente y

completa, en la cual se recogerá todas las necesidades de la empresa y de

sus involucrados tanto internos como externos.

· El involucramiento del cliente es fundamental para poderdesarrollar un

proyecto con la metodología XP.

· Se debe promover la programación basada enestándares, de manera que

sea fácilmente entendible por todo el equipo, y quefacilite la recodificación.

· Al usar la metodología XP se puede observar que la cantidad de defectos

encontrados en las pruebas es estadísticamente menor.

· Antes de desarrollar cualquier proyecto informático es necesario empaparse

bien con toda la información posible del tema al cual se va a hacer

referencia en el desarrollo de la aplicación de software.

· Se debe tener un claro conocimiento de las herramientas con las cuales se

desarrollará el proyecto de software para ahorrar tiempo en cuanto al

aprendizaje de las mismas y así poder acortar los tiempos en la entrega del

mismo.

· En el desarrollo de futuros proyectos de desarrollo de software se debería

ahondar más exhaustivamente en la investigación de herramientas de

software libre por los beneficios que éstas nos brindan.

Page 121: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

108

REFERENCIAS

Libros

· Charte, F. (2004).Proyectos profesionales con PHP 5. (1ª. ed.). Madrid –

España: Ediciones Anaya Multimedia.

· Coggeshall, J. (2005).La Biblia de PHP 5.(2ª. ed.). Madrid – España:

Ediciones Anaya Multimedia.

· Joskowicz, J. (2005). Reglas y Prácticas en eXtremeProgramming. (1ª.

ed.). Manitoba - Canada: Department of ComputerScience - University of

Manitoba, Winipeg.

· Letelier, P. y Penadés, C. (2010). Metodologías ágiles para el desarrollo

de software: eXtreme Programing (XP). (2ª. ed.). Valencia - España:

Universidad Politécnica de Valencia.

· Ortigosa, A. (2008). Programación Orientada a Objetos - Aplicaciones

distribuidas (1ª. ed.). Madrid - España: E.P.S. Universidad Autónoma de

Madrid.

· Romero, G. (2004). UML con RATIONAL ROSE. (1ª. ed.). Lima - Perú:

Grupo Editorial Megabyte.

· Sabana, M. (2006). PHP con PostgreSQL 8. (1ª. ed.). Lima - Perú:

Grupo Editorial Megabyte.

· Utley, C. (2001).Desarrollo de Aplicaciones Web con SQL Server 2000.

(1ª. ed.). Madrid – España: Ediciones Osborne, McGraw-Hill.

Page 122: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

109

Sitios Web

· Apache Friends. (s.f.). Obtenido de XAMPP:

http://www.apachefriends.org/es/xampp.html

· Ciberaula. (s.f.). Obtenido de Una Introducción a Apache de

http://linux.ciberaula.com/articulo/linux_apache_intro

· EcuRed. (s.f.). Obtenido de Metodologías de Desarrollo de Software:

http://www.ecured.cu/index.php/Metodolog%C3%ADas_de_desarrollo_d

e_software

· Maestros del Web. (s.f.). Obtenido de ¿Qué es PHP?:

http://www.maestrosdelweb.com/editorial/phpintro

· Maestros del Web. (s.f.). Obtenido de ¿Qué es JavaScript?:

http://www.maestrosdelweb.com/editorial/%C2%BFque-es-javascript

· Monografías.com. (s.f.). Obtenido de Plan de Contingencias:

http://www.monografias.com/trabajos11/plconting/plconting.shtml

· Prestashop 5 Estrellas. (29 de 03 de 2010). Obtenido de El Patrón MVC

(Modelo - Vista - Controlador):

http://prestashop5estrellas.wordpress.com/2010/03/29/el-patron-mvc-

modelo-vista-controlador

· Ms4W. (s.f.). Obtenido de Instalación del Servidor Web Apache:

http://maptools.org/ms4w

· Web Experto. (s.f.). Obtenido de ¿Qué es AJAX?:

http://www.webexperto.com/articulos/art/223/que-es-ajax

Page 123: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

110

ANEXOS

Page 124: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

111

ANEXO 1

Carta de Aceptación del Sistema

Quito, 2 de Abril del 2012.

Ingeniera en Sistemas. MBA

Rosita Yalile Rodas Mahauad

ASESORA DE TESIS PREVIA A LA OBTENCIÓN DEL TÍTULO DE

INGENIERO EN SISTEMAS DEL SEÑOR ANDRÉS GARZÓN JÁTIVA.

Presente.-

De mis consideraciones:

Con un atento y cordial saludo, me permito dirigirme ante usted, a la vez que le

deseo el mejor de los éxitos en sus actividades diarias.

Por medio de la presente tengo a bien poner en su conocimiento que:

Yo, Dr.………………….., Gerente del Consultorio Ginecológico, certifico que: el

Señor Egresado de la Carrera de Ingeniería En Sistemas Andrés Garzón Játiva

de la Universidad de las Américas, ha realizado las siguientes actividades en el

consultorio:

· Estudio de Vialidad

· Análisis

· Diseño

· Codificación

· Pruebas

· Instalación

· Mantenimiento

· Capacitación al Personal

Page 125: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

112

De la APLICACIÓN WEB DE ADMINISTRACIÓN ONLINE DE CITAS

MEDICAS misma que fue sugerida y planteada para mejorar los procesos de

reservación de citas del consultorio.

A la vez expreso mi complacencia con el mismo, ya que hasta la fecha ha sido

de gran utilidad en las labores que se realiza diariamente.

Es todo cuanto puedo certificar en honor a la verdad, pudiendo el interesado

hacer uso del presente como a bien tuviere.

Atentamente.

Dra. Rocío Játiva Dávila

GERENTE

Page 126: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

113

Código Fuente del Sistema

Código fuente del Archivo de Configuración de manejo de vistas y

Controladores de forma modularizada de la aplicación web.

<?php

define('IMAGENES_PATH_ORIGINAL',

realpath('./imagenes_usuarios/original/'));

define('IMAGENES_PATH', realpath('./imagenes_usuarios/'));

define('IMAGENES_CARPETA', 'imagenes_usuarios');

define('LIBRERIAS_PATH', realpath('./librerias/'));

// DEFINICIONES PARA EL MANEJO DEL TEMPLATE, CONTROLADORES

Y VISTAS

define('LAYOUT_PATH', realpath('./layouts/template_v1/'));

define('LAYOUT_PATH1', './layouts/template_v1/');

define('CONTROLADOR_PATH', '/controladores/');

define('CONTROLADOR_PATH1','modulos/controladores/');

define('VISTA_PATH', '/vistas/');

define('VISTA_PATH1', 'modulos/vistas/');

define('MODELO_PATH', realpath('./modulos/modelos/'));

define('MODULO_PATH', realpath('./modulos/'));

define('MODULO_DEFECTO', 'login');

define('LAYOUT_DEFECTO', 'plantilla_a.php');

define('LAYOUT_SIMPLE', 'layout_simple.php');

// DESIGNACIONES DE CONTROLADORES Y VISTAS SEGÚN EL

PROCESO ESCOGIDO DENTRO DE LA APLICACIÓN WEB

$conf['inicio'] = array(

'archivo' => VISTA_PATH.'inicio.php',

'layout' => LAYOUT_DEFECTO );

$conf['login'] = array(

'archivo' => VISTA_PATH.'login.php',

Page 127: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

114

'layout' => LAYOUT_DEFECTO );

$conf['r_salir'] = array(

'archivo' => VISTA_PATH.'salir.php',

'layout' => 'salir.php' );

$conf['r_adm_lis'] = array(

'archivo' =>VISTA_PATH.'administradores/listar.php',

'layout' => LAYOUT_DEFECTO );

$conf['r_adm_nue'] = array(

'archivo' =>VISTA_PATH.'administradores/nuevo.php',

'layout' => LAYOUT_DEFECTO );

$conf['r_sec_lis'] = array(

'archivo' =>VISTA_PATH.'secretarias/listar.php',

'layout' => LAYOUT_DEFECTO );

$conf['r_med_lis'] = array(

'archivo' => VISTA_PATH.'medicos/listar.php',

'layout' => LAYOUT_DEFECTO );

$conf['r_pac_lis'] = array(

'archivo' =>VISTA_PATH.'pacientes/listar.php',

'layout' => LAYOUT_DEFECTO );

$conf['r_esp_lis'] = array(

'archivo' =>VISTA_PATH.'especialidades/listar.php',

'layout' => LAYOUT_DEFECTO );

$conf['r_cat_lis'] = array(

'archivo' => VISTA_PATH.'categorias/listar.php',

'layout' => LAYOUT_DEFECTO );

Page 128: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

115

$conf['r_exa_lis'] = array(

'archivo' => VISTA_PATH.'examenes/listar.php',

'layout' => LAYOUT_DEFECTO );

$conf['u_adm_lis'] = array(

'archivo' => VISTA_PATH.'u_administradores/listar.php',

'layout' => LAYOUT_DEFECTO );

$conf['u_sec_lis'] = array(

'archivo' => VISTA_PATH.'u_secretarias/listar.php',

'layout' => LAYOUT_DEFECTO );

$conf['u_med_lis'] = array(

'archivo' => VISTA_PATH.'u_medicos/listar.php',

'layout' => LAYOUT_DEFECTO );

$conf['u_pac_lis'] = array(

'archivo' => VISTA_PATH.'u_pacientes/listar.php',

'layout' => LAYOUT_DEFECTO );

$conf['a_med_sec'] = array(

'archivo' => VISTA_PATH.'a_medicossecretarias/listar.php',

'layout' => LAYOUT_DEFECTO );

$conf['a_esp_med'] = array(

'archivo' => VISTA_PATH.'a_especialidadesmedicos/listar.php',

'layout' => LAYOUT_DEFECTO );

$conf['a_hor_med'] = array(

'archivo' => VISTA_PATH.'a_horariosmedicos/listar.php',

'layout' => LAYOUT_DEFECTO );

$conf['pe_datos'] = array(

Page 129: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

116

'archivo' => VISTA_PATH.'pe_datos/mostrar.php',

'layout' => LAYOUT_DEFECTO );

$conf['pe_password'] = array(

'archivo' => VISTA_PATH.'pe_password/mostrar.php',

'layout' => LAYOUT_DEFECTO );

$conf['pr_respaldo'] = array(

'archivo' => VISTA_PATH.'pr_respaldo/mostrar.php',

'layout' => LAYOUT_DEFECTO );

$conf['pr_registrar'] = array(

'archivo' => VISTA_PATH.'pr_citasmedicas/registrar.php',

'layout' => LAYOUT_DEFECTO );

$conf['pr_administrar'] = array(

'archivo' => VISTA_PATH.'pr_citasmedicas/administrar.php',

'layout' => LAYOUT_DEFECTO );

$conf['pr_verhistoria'] = array(

'archivo' => VISTA_PATH.'pr_citasmedicas/verhistoria.php',

'layout' => LAYOUT_DEFECTO );

$conf['pr_crearhistoria'] = array(

'archivo' => VISTA_PATH.'pr_citasmedicas/crearhistoria.php',

'layout' => LAYOUT_DEFECTO );

?>

Funciones utilizadas en el archivo de manejo de AJAX.

// FUNCION PARA TRABAJAR CON AJAX

functionobjetoAjax()

{

varxmlhttp=false;

Page 130: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

117

try{

xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");

}catch(e){

try{

xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");

}catch(E){

xmlhttp = false;

}

}

if (!xmlhttp&&typeofXMLHttpRequest!='undefined') {

xmlhttp = new XMLHttpRequest();

}

returnxmlhttp;

}

// FUNCION PARA UTENTIFICARSE AL INGRESAR AL SISTEMA

function Autentificarse(archivo)

{

divFormulario = document.getElementById('div_formulario');

divListar = document.getElementById('div_listar');

id1=document.frmformulario.usuario_x.value;

id2=document.frmformulario.password_x.value;

$.ajax({

url: archivo,

type: "POST",

cache: false,

data: "id1="+id1+"&id2="+id2,

success: function(datos)

{

alert(datos);

//divListar.innerHTML= '<imgsrc="anim.gif">';

$("#div_formulario").hide();

Page 131: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

118

$("#div_listar").show();

}

});

return false;

}

// FUNCION QUE PERMITE ACCEDER AL RESPALDO DE LA BASE DE

DATOS DE LA APLICACIÓN

function Generar(archivo)

{

divFormulario = document.getElementById('div_formulario');

divListar = document.getElementById('div_listar');

$.ajax({

url: archivo,

type: "POST",

cache: false,

data: "id1=1",

success: function(datos)

{

alert(datos);

//divListar.innerHTML= '<imgsrc="anim.gif">';

$("#div_formulario").hide();

$("#div_listar").show();

}

});

return false;

}

// FUNCION QUE SE UTILIZA PARA VER UN REGISTRO

functionVerDatos(id,archivo)

{

divFormulario = document.getElementById('div_formulario');

divListar = document.getElementById('div_listar');

ajax=objetoAjax();

Page 132: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

119

ajax.open("POST", archivo);

ajax.onreadystatechange=function()

{

if (ajax.readyState==4)

{

divFormulario.innerHTML = ajax.responseText

divFormulario.style.display="block";

divListar.style.display="none";

}

}

ajax.setRequestHeader("Content-Type","application/x-www-form-

urlencoded");

ajax.send("id="+id)

}

// FUNCION PARA MOSTRAR DATOS

functionMostrarDatos(id,archivo)

{

divFormulario = document.getElementById('div_formulario');

divListar = document.getElementById('div_listar');

ajax=objetoAjax();

ajax.open("POST", archivo);

ajax.onreadystatechange=function()

{

if (ajax.readyState==4)

{

divFormulario.innerHTML = ajax.responseText

divFormulario.style.display="block";

divListar.style.display="none";

}

}

ajax.setRequestHeader("Content-Type","application/x-www-form-

urlencoded");

ajax.send("id="+id)

Page 133: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

120

}

// FUNCIÓN PARA ACTUALIZAR UN REGISTRO

functionActualizarDatos(archivo)

{

divFormulario = document.getElementById('div_formulario');

divListar = document.getElementById('div_listar');

id=document.frmformulario.id.value;

ape=document.frmformulario.apellidos.value;

nom=document.frmformulario.nombres.value;

tel=document.frmformulario.telefono.value;

cel=document.frmformulario.celular.value;

ema=document.frmformulario.email.value;

dir=document.frmformulario.direccion.value;

ciu=document.frmformulario.ciudad.value;

fot=document.frmformulario.foto.value;

fec=document.frmformulario.fecha_nacimiento.value;

$.ajax({

url: archivo,

type: "POST",

cache: false,

data:

"id="+id+"&ape="+ape+"&nom="+nom+"&tel="+tel+"&cel="+cel+"&ema="+ema

+"&dir="+dir+"&ciu="+ciu+"&fot="+fot+"&fec="+fec,

success: function(datos)

{

alert(datos);

//divListar.innerHTML= '<imgsrc="anim.gif">';

$("#div_formulario").hide();

$("#div_listar").show();

}

});

return false;

}

Page 134: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

121

// FUNCIÓN PARA AGREGAR UN REGISTRO

functionAgregarDatos(archivo)

{

if(verificarformulario()==true)

{

divFormulario = document.getElementById('div_formulario');

divListar = document.getElementById('div_listar');

id=document.frmformulario.id.value;

ape=document.frmformulario.apellidos.value;

nom=document.frmformulario.nombres.value;

tel=document.frmformulario.telefono.value;

cel=document.frmformulario.celular.value;

ema=document.frmformulario.email.value;

dir=document.frmformulario.direccion.value;

ciu=document.frmformulario.ciudad.value;

fot_nom='';

fec=document.frmformulario.fecha_nacimiento.value;

$.ajax({

url: archivo,

type: "POST",

cache: false,

data:

"id="+id+"&ape="+ape+"&nom="+nom+"&tel="+tel+"&cel="+cel+"&ema="+ema

+"&dir="+dir+"&ciu="+ciu+"&fot_nom="+fot_nom+"&fec="+fec,

success: function(datos)

{

alert(datos);

$("#div_formulario").hide();

$("#div_listar").show();

}

});

}

}

Page 135: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

122

Glosario de Términos

Apple Inc.- es una empresa multinacional estadounidense con sede

en Cupertino, California, que diseña y produce equipos

electrónicos y software. Entre los productos de hardware más conocidos de la

empresa se cuenta con equipos Macintosh, el iPod, el iPhone y el iPad. Entre

el software de Apple se encuentran el sistema operativo Mac OS X, el sistema

operativo iOS.

ASP.NET.- es un framework para aplicaciones web desarrolladas y

comercializadas por Microsoft. Es usado por programadores para

construir sitios web dinámicos, aplicaciones web y servicios web XML. Apareció

en enero de 2002 con la versión 1.0 del .NET Framework, y es la tecnología

sucesora de la tecnología Active Server Pages (ASP). ASP.NET está

construido sobre el CommonLanguageRuntime, permitiendo a los

programadores escribir código ASP.NET usando cualquier lenguaje admitido

por el .NET Framework.

Browser.- Un navegador o navegador web (del inglés, web browser) es

una aplicación que opera a través de Internet, interpretando la información de

archivos y sitios web para que podamos ser capaces de leerla, (ya se

encuentre ésta alojada en un servidor dentro de la World Wide Web o en un

servidor local).

Callback.- En programación de computadoras, una devolución de llamada

o retrollamada (en inglés: callback) es una función "A" que se usa como

argumento de otra función "B". Cuando se llama a "B", ésta ejecuta "A". Para

conseguirlo, usualmente lo que se pasa a "B" es el puntero a "A".

CGI.- Interfaz de entrada común (en inglés Common Gateway Interface,

abreviado CGI) es una importante tecnología de la World Wide Web que

permite a un cliente (navegador web) solicitar datos de un programa ejecutado

Page 136: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

123

en un servidor web. CGI especifica un estándar para transferir datos entre el

cliente y el programa.

DHTML.- El HTML Dinámico o DHTML (del inglés Dynamic HTML) designa el

conjunto de técnicas que permiten crear sitios web interactivos utilizando una

combinación de lenguaje HTML estático, un lenguaje interpretado en el lado del

cliente (como JavaScript), el lenguaje de hojas de estilo en cascada (CSS) y la

jerarquía de objetos de un DOM.

DOM.- El DocumentObjectModel o DOM ('Modelo de Objetos del Documento' o

'Modelo en Objetos para la Representación de Documentos') es esencialmente

una interfaz de programación de aplicaciones (API) que proporciona un

conjunto estándar de objetos para representar documentos HTML y XML, un

modelo estándar sobre cómo pueden combinarse dichos objetos, y una interfaz

estándar para acceder a ellos y manipularlos. A través del DOM, los programas

pueden acceder y modificar el contenido, estructura y estilo de los documentos

HTML y XML, que es para lo que se diseñó principalmente.

Dominio.- Un dominio de Internet es una red de identificación asociada a un

grupo de dispositivos o equipos conectados a la red Internet. El propósito

principal de los nombres de dominio en Internet y del sistema de nombres de

dominio (DNS), es traducir las direcciones IP de cada nodo activo en la red, a

términos memorizables y fáciles de encontrar. Esta abstracción hace posible

que cualquier servicio (de red) pueda moverse de un lugar geográfico a otro en

la red Internet, aun cuando el cambio implique que tendrá una dirección IP

diferente.

Drupal.- es un sistema de gestión de contenido modular multipropósito y muy

configurable que permite publicar artículos, imágenes, u otros archivos y

servicios añadidos como foros, encuestas, votaciones, blogs y administración

de usuarios y permisos. Drupal es un sistema dinámico: en lugar de almacenar

sus contenidos en archivos estáticos en el sistema de ficheros del servidor de

Page 137: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

124

forma fija, el contenido textual de las páginas y otras configuraciones son

almacenados en una base de datos y se editan utilizando un entorno Web.

EBML.- corresponde a las siglas Extensible Binary Meta Language (Meta

Lenguaje Binario Extendible) y fue creado como una extensión binaria

simplificada de XML, para guardar y manipular datos jerárquicamente con

campos de longitud variable.

eXtremeProgramming.- Es un enfoque de la ingeniería de software formulado

por Kent Beck. Es el más destacado de los procesos ágiles de desarrollo de

software. Al igual que éstos, la programación extrema se diferencia de las

metodologías tradicionales principalmente en que pone más énfasis en la

adaptabilidad que en la previsibilidad.

Hosting.- El alojamiento web (en inglés web hosting) es el servicio que provee

a los usuarios de Internet un sistema para poder almacenar información,

imágenes, vídeo, o cualquier contenido accesible vía web. Es una analogía de

"hospedaje o alojamiento en hoteles o habitaciones" donde uno ocupa un lugar

específico, en este caso la analogía alojamiento web o alojamiento de páginas

web, se refiere al lugar que ocupa una página web, sitio web, sistema, correo

electrónico, archivos etc. en internet o más específicamente en un servidor que

por lo general hospeda varias aplicaciones o páginas web.

HTML.- siglas de HyperTextMarkupLanguage (lenguaje de marcado de

hipertexto), es el lenguaje de marcado predominante para la elaboración de

páginas web. Es usado para describir la estructura y el contenido en forma de

texto, así como para complementar el texto con objetos tales como imágenes.

IMAP.- Internet Message Access Protocol, o su acrónimo IMAP, es

un protocolo de red de acceso a mensajes electrónicos almacenados en un

servidor. Mediante IMAP se puede tener acceso al correo electrónico desde

cualquier equipo que tenga una conexión a Internet. IMAP tiene varias ventajas

sobre POP, que es el otro protocolo empleado para obtener correo desde un

Page 138: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

125

servidor. Por ejemplo, es posible especificar en IMAP carpetas del lado

servidor. Por otro lado, es más complejo que POP ya que permite visualizar los

mensajes de manera remota y no descargando los mensajes como lo hace

POP.

Interbase.- es un sistema de gestión de bases de datos relacionales (RDBMS)

desarrollado y comercializado por la compañía Borland Software Corporation y

actualmente desarrollado por su ex-filial CodeGear. Interbase se destaca de

otros DBMS's por su bajo consumo de recursos, su casi nula necesidad de

administración y su arquitectura multi-generacional. InterBase corre

en plataformas Linux, Microsoft Windows y Solaris.

Java.- es un lenguaje de programación orientado a objetos, desarrollado

por Sun Microsystems a principios de los años 90. El lenguaje en sí mismo

toma mucha de su sintaxis de C y C++, pero tiene un modelo de objetos más

simple y elimina herramientas de bajo nivel, que suelen inducir a muchos

errores, como la manipulación directa de punteros o memoria.Con respecto a la

memoria, su gestión no es un problema ya que ésta es gestionada por el propio

lenguaje y no por el programador.

JSON.- acrónimo de JavaScript ObjectNotation, es un formato ligero para el

intercambio de datos. JSON es un subconjunto de la notación literal de objetos

de JavaScript que no requiere el uso de XML.

LDAP.- son las siglas de Lightweight Directory Access Protocol (en

español Protocolo Ligero de Acceso a Directorios) que hacen referencia a un

protocolo a nivel de aplicación el cual permite el acceso a un servicio de

directorio ordenado y distribuido para buscar diversa información en un entorno

de red. LDAP también es considerado una base de datos (aunque su sistema

de almacenamiento puede ser diferente) a la que pueden realizarse consultas.

Licencia GPL.- La Licencia Pública General de GNU o más conocida por su

nombre en inglés GNU General Public License o simplemente sus siglas del

Page 139: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

126

inglésGNU GPL, es una licencia creada por la Free Software Foundation en

1989 (la primera versión), y está orientada principalmente a proteger la libre

distribución, modificación y uso de software. Su propósito es declarar que el

software cubierto por esta licencia es software libre y protegerlo de intentos de

apropiación que restrinjan esas libertades a los usuarios.

Linux.- es un núcleo libre de sistema operativo basado en Unix. Es uno de los

principales ejemplos de software libre. Linux está licenciado bajo la GPL v2 y

está desarrollado por colaboradores de todo el mundo. El desarrollo del día a

día tiene lugar en la Linux KernelMailingList Archive

Microsoft.- Microsoft Corporationes una empresa multinacional deorigen

estadounidense, fundada el 4 de abril de 1975 por Bill Gates,Steve

Ballmer y Paul Allen. Dedicada al sector de la informática, tiene su sede

en Redmond, Washington, Estados Unidos. Microsoft desarrolla, fabrica,

licencia y produce software y equipos electrónicos, siendo sus productos más

usados el sistema operativo Microsoft Windows y la suite Microsoft Office.

Open Source.- O Código abierto es el término con el que se conoce

al software distribuido y desarrollado libremente. El código abierto tiene un

punto de vista más orientado a los beneficios prácticos de compartir el código

que a las cuestiones éticas y morales las cuales destacan en el

llamado software libre.

Perl.- es un lenguaje de programación diseñado por Larry Wall en 1987. Perl

toma características del lenguaje C, del lenguaje interpretado bourneshell (sh),

AWK, sed, Lisp y, en un grado inferior, de muchos otros lenguajes de

programación. Estructuralmente, Perl está basado en un estilo de bloques

como los del C o AWK, y fue ampliamente adoptado por su destreza en el

procesador de texto y no tener ninguna de las limitaciones de los otros

lenguajes de script.

phpBB.- es un sistema de foros gratuito basado en un conjunto de paquetes

de código programados en el popular lenguaje de programación web PHP y

Page 140: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

127

lanzado bajo la Licencia pública general de GNU, cuya intención es la de

proporcionar fácilmente, y con amplia posibilidad de personalización, una

herramienta para crear comunidades. Su nombre es por la abreviación de PHP

BulletinBoard.

PhpMyAdmin.- es una herramienta escrita en PHP con la intención de manejar

la administración de MySQL a través de páginas web, utilizando Internet.

Actualmente puede crear y eliminar Bases de Datos, crear, eliminar y

alterar tablas, borrar, editar y añadir campos, ejecutar cualquier sentencia SQL,

administrar claves en campos, administrar privilegios, exportar datos en varios

formatos y está disponible en 62 idiomas. Se encuentra disponible bajo la

licencia GPL.

Python.- es un lenguaje de programación de alto nivel cuya filosofía hace

hincapié en una sintaxis muy limpia y que favorezca un código legible. Se trata

de un lenguaje de programación multiparadigma ya que soporta orientación a

objetos, programación imperativa y, en menor medida, programación funcional.

Es un lenguaje interpretado, usa tipado dinámico, es fuertemente

tipado y multiplataforma.

Redistribución.- es un concepto utilizado en la Antropología social que

presupone la existencia de un centro distribuidor de bienes en

una comunidad o sociedad, que previamente había recibido de los miembros

individuales o unidades familiares que la integran. La redistribución se

encuentra asociada a otras formas de integración económica como

la reciprocidad y el intercambio. La redistribución es un fenómeno frecuente en

las jefaturas, y en las sociedades primitivas suele estar considerada como la

forma de integración económica germinal del futuro Estado.

Servlets.- Los servlets son objetos que corren dentro y fuera del contexto de

un contenedor de servlets (ej: Tomcat) y extienden su funcionalidad. La

palabra servlet deriva de otra anterior, applet, que se refería a pequeños

Page 141: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

128

programas que se ejecutan en el contexto de un navegador web. Por

contraposición, un servlet es un programa que se ejecuta en un servidor.

SOAP.- (siglas de Simple Object Access Protocol) es

un protocolo estándar que define cómo dos objetos en diferentes procesos

pueden comunicarse por medio de intercambio de datos XML. Este protocolo

deriva de un protocolo creado por David Winer en 1998, llamado XML-RPC.

SOAP fue creado por Microsoft, IBM y otros y está actualmente bajo el auspicio

de la W3C. Es uno de los protocolos utilizados en los servicios Web.

SNMP.- El Protocolo Simple de Administración de

Red o SNMP (del inglés Simple Network Management Protocol) es un

protocolo de la capa de aplicación que facilita el intercambio de información de

administración entre dispositivos de red. Permite a los administradores

supervisar el funcionamiento de la red, buscar y resolver sus problemas, y

planear su crecimiento.

UML.- Lenguaje Unificado de Modelado (LUM o UML, por sus siglas en

inglés, UnifiedModelingLanguage) es el lenguaje de modelado de sistemas

de software más conocido y utilizado en la actualidad; está respaldado por

el OMG (Object Management Group). Es un lenguaje gráfico para visualizar,

especificar, construir y documentar un sistema. UML ofrece un estándar para

describir un "plano" del sistema (modelo), incluyendo aspectos conceptuales

tales como procesos de negocio, funciones del sistema, y aspectos concretos

como expresiones de lenguajes de programación, esquemas de bases de

datos y componentes reutilizables.

Unix.- es un sistema operativo portable, multitarea y multiusuario; desarrollado,

en principio, en 1969 por un grupo de empleados de los laboratorios

Bell de AT&T, entre los que figuran Ken Thompson, Dennis Ritchie y Douglas

McIlroy.

Page 142: FACULTAD DE INGENIERÍA Y CIENCIAS …dspace.udla.edu.ec/bitstream/33000/2602/8/UDLA-EC-TIS-2013-01.pdf · Este Sistema permitirá mejorar el cubrimiento de las necesidades de la

129

XHTML.- Siglas del ingléseXtensibleHyperTextMarkupLanguage. XHTML es

básicamente HTML expresado como XML valido. Su objetivo es avanzar en el

proyecto del World Wide Web Consortium de lograr una web semántica, donde

la información, y la forma de presentarla estén claramente separadas.

XMLHttpRequest (XHR).- también referida como XMLHTTP (Extensible

MarkupLanguage / Hypertext Transfer Protocol), es una interfaz empleada para

realizar peticiones HTTP y HTTPS a servidores Web. Para los datos

transferidos se usa cualquier codificación basada en texto, incluyendo: texto

plano, XML, JSON, HTML y codificaciones particulares específicas. La interfaz

se presenta como una clase de la que una aplicación cliente puede generar

tantas instancias como necesite para manejar el diálogo con el servidor.