Universidad Tecnológica de Querétaro Firmado digitalmente por Universidad Tecnológica de Querétaro Nombre de reconocimiento (DN): cn=Universidad Tecnológica de Querétaro, o=Universidad Tecnológica de Querétaro, ou, email=webmaster@uteq.edu.mx, c=MX Fecha: 2011.08.29 09:33:11 -05'00' UNIVERSIDAD TECNOLÓGICA DE QUERÉTARO Voluntad. Conocimiento. Servicio. DESARROLLO DE UN SISTEMA PARA EL CONTROL DE ALUMNOS. INSTITUTO DE DESARROLLO HUMANO Memoria de Estadía para obtener el Título de Técnico Superior Universitario en Tecnologías de la Información y Comunicación Área Sistemas Informáticos. ALMA TERESA GONZÁLEZ SOLÍS. UNIVERSIDAD TECNOLÓGICA DE QUERÉTARO Voluntad. Conocimiento. Servicio. DESARROLLO DE UN SISTEMA PARA EL CONTROL DE ALUMNOS. INSTITUTO DE DESARROLLO HUMANO Memoria de Estadía para obtener el Título de Técnico Superior Universitario en Tecnologías de la Información y Comunicación Área Sistemas Informáticos. Asesor de empresa PROFRA. JENNY ARAGÒN Asesor de universidad ING. MA. AUXILIO PEREZ RIOS Alumno ALMA TERESA GONZÀLEZ SOLÌS. DEDICATORIAS Y AGRADECIMIENTOS Mi tesis la dedico con todo mi amor y cariño: A mi padre José Antonio González Licea que desde el cielo sé que está orgulloso deseando lo mejor para mí y en su memoria he logrado concluir una nueva etapa. Agradezco a mi madre Ana Luisa Solís, por darme buenos consejos, saber guiarme y su apoyo incondicional, por todos esos momentos en los que me ha ayudado a levantarme de esas grandes caídas, por ser no sólo mi madre si no una verdadera amiga que no dudo y siempre confió en mí, sin ella no habría llegado hasta aquí. A la familia De La Guardia Solís, por su apoyo inigualable. A mis profesoras y tutoras Ma. Auxilio Pérez Ríos y Yolanda Alejandrina Montes Swan por el gran apoyo que me brindan. Al Ing. José Cortés, a las profesoras Jenny Aragón y Laura Villanueva, por darme la oportunidad de desarrollar este proyecto en la Institución. Por último y sin olvidar a una amiga grandiosa, por todo su apoyo incondicional, por sus consejos, por animarme y no dejarme caer. Por estar ahí en todo momento, Ma. Del Carmen Aguilar Martínez. ÍNDICE RESUMEN……………………………………………………………………………..7 ABSTRACT……………………………………………………………………………7 CAPÍTULO I INSTITUTO DE DESARROLLO HUMANO 1.1 IDH………………………………………………………………………………….8 1.1.1 Giro de la empresa ………………………………………………………8 1.1.2 Enfoque organizacional…………………………………………………..8 1.1.3 Misión……………………………………………………………………..9 1.1.4 Visión………………………………………………………………………9 1.2 Organigrama de IDH …………………………………………………………….9 CAPÍTULO II DESARROLLO DE UN SISTEMA PARA EL CONTROL DE ALUMNOS 2.1 Análisis de necesidades……………………………………………………….11 2.1.1 Definición del proyecto…………………………………………………11 2.1.2 Objetivos………………………………………………………………….12 2.2 Plan de trabajo............................................................................................13 2.2.1 Diagrama de Gantt………………………………………………………13 2.2.2 Recursos Humanos y Materiales………………………………………14 CAPITULO III DESARROLLO DEL PROYECTO 3.1 Determinación del sistema propuesto………………………………………...16 3.1.1 Propósito general del sistema…………………………………………….16 3.1.2 Alcance del sistema………………………………………………………..16 3.2 Diseño del sistema propuesto....................................................................17 3.2.1 Requisitos funcionales…………………………………………………….17 3.2.2 Requisitos no funcionales…………………………………………………17 3.2.3 Prototipos de pantallas……………………………………………………..19 3.2.4 Casos de uso………………………………………………………………..25 3.2.5 Diagrama de clases…………………………………………………………28 3.2.6 Diagrama de Secuencia Gral………………………………………………29 3.2.7 Diagrama Relacional………………………………………………………..30 3.3 Implementación del sistema…………………………………………………….31 CAPITULO IV CONCLUSIONES 4.1 Dificultades………………………………………………………………………..33 4.2 Logros obtenidos…………………………………………………………………33 4.3 Análisis de riesgos……………………………………………………………….34 4.4 Recomendaciones……………………………………………………………….34 4.5 Conclusiones……………………………………………………………………..34 Resumen En el siguiente trabajo se da a conocer,cómo se llevó acabo el desarrollo de un sistema para el Instituto de Desarrollo Humano. Este sistema se desarrolló para poder llevar el control de los alumnos de la institución. Como primer paso hay que conocer un poco acerca de los procesos que se llevan a cabo y como se encuentra distribuida la empresa. Posteriormente identificar el problema que existe dentro de la empresa para así poder establecer los objetivos y comenzar a definir los requerimientos del sistema. Dentro de este documento escrito se muestran diferentes diagramas donde se puede visualizar más a fondo la funcionalidad del software IDH. En términos generales, se presenta el análisis, diseño e implementación de dicho software. En un documento por separado, se entrega un manual de usuario donde se explica paso a paso el funcionamiento del software. Por último se muestran conclusiones, recomendaciones así como logros obtenidos del proyecto final. (Palabras clave: actitud, éxito, reto) Abstract The main goal of the following project isto develop a system for the IDH (Human Development Institute) to help the administrator to keep students’ attendance and payment records in an easy and efficient way. In order to accomplish this target it is needed first to know about the institute’s administrative background, then to identify the problem within the current procedure and finally to develop a system that satisfies the administrator’s requirements. In a separate document, it will be is given a manual which explains step by step how the software operates. In general terms, it is presented the analysis, design and implementation of such software. At the end of the paper you will find the conclusions, recommendations and achievements of this final project. (Keywords: attitude, success, challenge) 7 CAPÍTULO I ANTECEDENTES IDH 1.1 IDH 1.1.1 Giro de la empresa El Instituto de DesarrolloHumano es un organismo internacional que tiene más de treinta años de trayectoria en la transmisión y enseñanza de valores trascendentales, elementos esenciales en la vida del ser humano que busca un desarrollo integral y una cultura de paz. Su significativo aporte al crecimiento armónico de la sociedad se basa en un sistema educativo que lleva a cabo las prácticas de disciplinas ancestrales, el IDH ha contribuido a que miles de personas logren una plenitud en su calidad de vida. Esta institución se ha extendido en las principales ciudades, de diversos países del mundo como son: Chile, Argentina, Ecuador, Perú, Colombia, Venezuela, México, Canadá, Suecia, Alemania, Suiza y Australia. La sede que se encuentra en Querétaro está ubicada en Abelardo Ávila No. 30 col. Centro 1.1.2 Enfoque organizacional El Instituto de Desarrollo Humano es parte de un vanguardista sistema educativo, cuyos objetivos fundamentales están orientados a la transformación y realización integral del ser humano. A través de una serie de conocimientos ancestrales, disciplinas psicofísicas milenarias y la vivencia de virtudes, se contribuye al logro de una cultura universal de paz y sabiduría. El Instituto de Desarrollo Humano contempla al ser humano de una forma integral, con 6 áreas que atender para su crecimiento interior, que son: emocional, mental, física, medio ambiente, espiritual y área social. 8 1.1.3 Misión Contribuir a la formación de una humanidad más consiente de sí misma; una sociedad mundial donde convivan en armonía las más diversas expresiones culturales, ideológicas y filosóficas con una plena responsabilidad y cuidado de su ambiente natural. 1.1.4 Visión Promover una mejor calidad de vida a través de la integración de hábitos de vida más saludables. 1.2 Organigrama de IDH Dir. Gral. Sede Sria. De Administración Dir. Instituto deyoga Encargado De Recepción Prof. De disciplina Encargado de talleres. Auxiliar administrativo Fig.1.1 organigrama del IDH 9 Encargado de mantenimiento CAPÍTULO II DESARROLLO DE UN SISTEMA PARA EL CONTROL DE ALUMNOS. 2.1 Análisis de necesidades 2.1.1 Definición del proyecto El área administrativa funciona de tal manera que el personal asignado sólo lleva un sencillo registro en hojas de Excel donde se capturan losdatos personales tanto de alumnos como profesores, el registro de datos médicos de los alumnos, así como su asistencia, los pagos realizados por el mismo y los talleres o disciplinas a los que pertenece. Actualmente se apoyan con una herramienta sencilla llamada Excel, con la que llevan un registro básico de los alumnos de la institución, por el momento les es de gran ayuda los filtros que se pueden manejar, pero con el tiempo se han dado cuenta que para accesar a la información se requiereque sea de manera rápida, eficiente y segura, en general el sistema actual es muy rudimentario, sin seguridad y poco confiable para ofrecer un servicio de calidad a sus clientes (alumnos). Por esta razón, el IDH acepto formalmente una propuesta para diseñar e implementar un sistema automatizado de control de alumnos. Esto garantizará que los procesos administrativos sean eficientes, seguros y ágiles. 11 2.1.2 Objetivos 1.- Llevar un registro de la información tanto de alumnos, profesores como de los empleados del instituto. 2.- Llevar un control completo y actualizado de los pagos que van realizando los alumnos. 3.- Poder ingresar y modificar la información de manera ágil y eficiente. 12 2.2 Plan de trabajo A continuación se presenta el diagrama de Gantt y sus especificaciones. 2.2.1 Diagrama de Gantt Fig 2.2 En la siguiente figura se muestra el diagrama Gantt donde se especifican las tareas a realizar y el tiempo que se llevará para realizar cada una de estas a lo largo del proyecto. 13 2.2.2 Recursos Humanos y Materiales. Enseguida se presenta la lista de recursos necesarios para el desarrollo de proyecto. 1 PC características: Intel, 2GB de memoria de RAM, 80 GB en Disco Duro. Software My SQL, Office, Eclipse (Java), Gantt Project, Visio. 1 impresora y hojas de papel. 1 Analista-Programador. 14 CAPÍTULO I II DESARROLLO DEL PROYECTO 15 3.1 Determinación de los requerimientos de información. 3.1.1 Propósito general del sistema Este sistema se encargará de eficientar los procesos relacionados con el control de los alumnos. Por medio de un menú en el sistema se podrá seleccionar sobre quien se desea realizar algún movimiento, por ejemplo: alumnos, profesores, cursos, pagos etc. Esto porque con la herramienta con la que se trabaja actualmente que es Excel se tienen que abrir diferentes libros, este menú es una buena opción que resolvería este problema, una vez que se eligió sobre quien se trabajará tendrá acceso rápido para que los datos se ingresen, modifiquen, se den de baja o bien que se pueda realizar una búsqueda. Toda esta información que se capturará estará almacenada en una base de datos que cada vez que se realice un movimiento por medio del sistema automáticamente se modificará en dicha base de datos, así se tendrá la información en tiempo y forma. 3.1.2 Alcance del sistema El sistema brindará una interfaz gráfica por medio de la cual el usuario podrá llevar el registro de los datos almacenados en la base de datos del instituto. Se podrá llevar el registro completo de los alumnos como sus datos personales, datos médicos, información de su credencial, las disciplinas, talleres o actividades extras que toman, así como su registro de asistencia. De los profesores y empleados sólo se registran sus datos personales. Se podrá accesar a la información para poder darla de alta, baja, modificarla y consultarla. 16 3.2 Sistema Propuesto 3.2.1 Requisitos funcionales El sistema presentará en su pantalla principal la opción para introducir su Usuarioy contraseña que se deberá validar para poder ingresar al sistema. Al ingresar al sistema se podrán seleccionar entre las siguientes actividades: R1. Dar de alta empleados R2. Dar de baja empleados R3. Consultar empleados R4. Modificar empleados R5. Dar de alta clase muestra R6.Dar de alta datos personales del alumno R7. Dar de baja datos personales del alumno R8. Consultar datos personales del alumno R9. Modificar datos personales R10. Dar de alta datos médicos del alumno R11. Dar de alta asistencia del alumno R12. Modificar asistencia R13. Dar de alta pagos del alumno R14. Dar de baja pagos del alumno R15. Consultar pagos del alumno R16. Modificar pagos del alumno R17. Dar de alta los cursos que se imparten en el Instituto R18. Dar de alta información del profesor R19. Dar de baja información del profesor R20. Consultar información del profesor R21.Modificar información del profesor 3.2.2 Requisitos no funcionales Funcionalidad El objetivo primordial de sistema de recepción IDH es el reducir el tiempo de consulta para que el usuario tenga la información de manera rápida. Facilidad de uso Las interfaces del sistema estarán desarrolladas de una manera amigable para el usuario y junto con el orden lógico en el que se encuentran los menús, favorecen el uso intuitivo del software. Así como el fácil y rápido registro de los datos, además contaran con un manual de usuario físico. 17 Seguridad. Los empleados necesitarán de un nombre de usuario y una contraseña para poder acceder a la información. Interfaces de usuario Las interfaces generales del sistema que se implementarán para la empresa se presentan en las pantallas hechas en el programa Eclipse usando lenguaje Java. Dichas pantallas tendrán un gesto amable, sencillo y fácil de usar. • Se usaran colores pertinentes para la vista de quien utilice el sistema. • Los botones estarán distribuidos dentro de menús desplegables y organizados por su función. InterfacesSoftware El sistema está realizado en Java ya que constantemente tendrá interacción con este mismo para modificaciones que se deseen realizar en un futuro. También tendrá interacción constante con el MySQL que es donde se guardarán todos los registros insertados mediante el mismo sistema, esto para poder realizar respaldos de toda la información generada tras el paso del tiempo. Mantenibilidad El sistema posee la capacidad de ser modificado. Estas modificaciones serán fáciles de realizar ya que el desarrollo de éste está basado en un lenguaje de programación amigable. Las modificaciones pueden incluir las correcciones, mejoras o adaptación del software a los cambios en el ambiente, y en los requisitos y las especificaciones funcionales. 18 3.2.3 Prototipos de Pantallas (P1. Pantalla inicio del sistema) (P2. Pantalla menú del sistema) 19 (P3. Pantalla Administración del alumno) 20 (P4. Pantalla Registro de datos Médicos) 21 (P5. Pantalla Administración del Profesor) (P6. Pantalla Administración de usuario) 22 (P7. Pantalla administrar pagos) (P8. Pantalla Administrar clase de muestra) 23 (P9. Pantalla Registrar curso) 24 3.2.4 Diagramas de Casos de Uso SISTEMA IDH Validar usuario Administrar empleado Recepcionista Dar de Alta clase muestra Administrar datos del alumno Registrar datos médicos Administrador Registrar asistencia Administrarpagos Registrar cursos Administrar profesores BD Fig.3.3 la figura muestra el diagrama de Casos de Uso general del sistema IDH. 25 Administrar empleado Dar de Alta Dar de baja Administrador Consultar BD Modificar Fig. 3.4 En este diagrama se muestra de manera específica el caso de uso Administrar empleado. Administrar alumno Dar de Alta Recepcionista Dar de baja Administrador Consultar Modificar BD Fig. 3.5 En este diagrama se muestra de manera específica el caso de uso Administrar Alumno. 26 Administrar pagos Dar de Alta Recepcionista Dar de baja Administrador Consultar Modificar BD Fig. 3.6 En este diagrama se muestra de manera específica el caso de uso Administrar pagos. Administrar profesor Dar de Alta Recepcionista Dar de baja Administrador Consultar Modificar BD Fig. 3.7 En este diagrama se muestra de manera específica el caso de uso Administrar Profesor. 27 3.2.5 Diagrama de Clases. a_pagos m_pagos c_pagos b_pagos -JP1: JPanel = new JPanel() -Aceptar: JButton = new JButton() -salir: JButton = new JButton() -id_pago: JTextField = new JTextField() -cantidad: JTextField = new JTextField() -fecha_ini: JTextField = new JTextField() -fecha_fin: JTextField = new JTextField() -obs: JTextField = new JTextField() -id_alumno: JTextField = new JTextField() -id_empleado: JTextField = new JTextField() -JP1: JPanel = new JPanel() -Aceptar: JButton = new JButton() -salir: JButton = new JButton() -id_pago: JTextField = new JTextField() -cantidad: JTextField = new JTextField() -fecha_ini: JTextField = new JTextField() -fecha_fin: JTextField = new JTextField() -obs: JTextField = new JTextField() -id_alumno: JTextField = new JTextField() -id_empleado: JTextField = new JTextField() -JP1: JPanel = new JPanel() -Aceptar: JButton = new JButton() -salir: JButton = new JButton() -id_pago: JTextField = new JTextField() -cantidad: JTextField = new JTextField() -fecha_ini: JTextField = new JTextField() -fecha_fin: JTextField = new JTextField() -obs: JTextField = new JTextField() -id_alumno: JTextField = new JTextField() -id_empleado: JTextField = new JTextField() <<create>>+m_pagos() <<create>>+c_pagos() <<create>>+b_pagos() m_alumno -JP1: JPanel = new JPanel() -Aceptar: JButton = new JButton() -salir: JButton = new JButton() -id: JTextField = new JTextField() -nom: JTextField = new JTextField() -ap_pat: JTextField = new JTextField() -ap_mat: JTextField = new JTextField() -direccion: JTextField = new JTextField() -tel: JTextField = new JTextField() -cel: JTextField = new JTextField() -email: JTextField = new JTextField() -ocupacion: JTextField = new JTextField() -fecha: JTextField = new JTextField() -fecha_in: JTextField = new JTextField() -JP1: JPanel = new JPanel() -Aceptar: JButton = new JButton() -salir: JButton = new JButton() -id_pago: JTextField = new JTextField() -cantidad: JTextField = new JTextField() -fecha_ini: JTextField = new JTextField() -fecha_fin: JTextField = new JTextField() -obs: JTextField = new JTextField() -id_alumno: JTextField = new JTextField() -id_empleado: JTextField = new JTextField() <<create>>+a_pagos() ppal clase_muestra -JP1: JPanel = new JPanel() -Aceptar: JButton = new JButton() -salir: JButton = new JButton() -id_clas_mu: JTextField = new JTextField() -nombre_cli: JTextField = new JTextField() -ap_pat: JTextField = new JTextField() -ap_mat: JTextField = new JTextField() -tel: JTextField = new JTextField() -e_mail: JTextField = new JTextField() -curso: JTextField = new JTextField() -fecha: JTextField = new JTextField() -id_em: JTextField = new JTextField() <<create>>+clase_muestra() <<create>>+m_alumno() +main(args: String) a_alumno pestañas_pagos -JP1: JPanel = new JPanel() -Aceptar: JButton = new JButton() -id: JTextField = new JTextField() -medico: JButton = new JButton() -nom: JTextField = new JTextField() -ap_pat: JTextField = new JTextField() -ap_mat: JTextField = new JTextField() -direccion: JTextField = new JTextField() -tel: JTextField = new JTextField() -cel: JTextField = new JTextField() -email: JTextField = new JTextField() -ocupacion: JTextField = new JTextField() -fecha: JTextField = new JTextField() -fecha_in: JTextField = new JTextField() <<create>>+a_alumno() -alta: a_pagos() -baja: b_pagos() -modifi: m_pagos() -consulta: c_pagos() <<create>>+pestañas_pagos() login -JP1: JPanel = new JPanel() -Aceptar: JButton = new JButton() -salir: JButton = new JButton() -nick: JTextField = new JTextField() -pass: JPasswordField = new JPasswordField() pestañas_alumno c_alumno -JP1: JPanel = new JPanel() -Aceptar: JButton = new JButton() -salir: JButton = new JButton() -id: JTextField = new JTextField() -nom: JTextField = new JTextField() -ap_pat: JTextField = new JTextField() -ap_mat: JTextField = new JTextField() -direccion: JTextField = new JTextField() -tel: JTextField = new JTextField() -cel: JTextField = new JTextField() -email: JTextField = new JTextField() -ocupacion: JTextField = new JTextField() -fecha: JTextField = new JTextField() -fecha_in: JTextField = new JTextField() Asistencia -JP1: JPanel = new JPanel(new BorderLayout()) -guardar: JButton = new JButton() -b1: JButton = new JButton() -id_prof: JTextField = new JTextField() -id_curso: JTextField = new JTextField() -dia: JTextField = new JTextField() -hora: JTextField = new JTextField() <<create>>+login() -alta: a_alumno() -baja: b_alumno() -modificar: m_alumno() -consulta: c_alumno() <<create>>+Asistencia() menu_admon -JP1: JPanel = new JPanel() -alumno: JButton = new JButton() -prof: JButton = new JButton() -empleado: JButton = new JButton() -pagos: JButton = new JButton() -clase_m: JButton = new JButton() -asis: JButton = new JButton() -curso: JButton = new JButton() -datos_medicos: JButton = new JButton() <<create>>+pestañas_alumno() Curso -JP1: JPanel = new JPanel() -Aceptar: JButton = new JButton() -salir: JButton = new JButton() -id_curso: JTextField = new JTextField() -nombre: JTextField = new JTextField() -tipo: JTextField = new JTextField() <<create>>+Curso() <<create>>+menu_admon() datos_medicos <<create>>+c_alumno() b_alumno pestañas_empleado -JP1: JPanel = new JPanel() -baja: JButton = new JButton() -buscar: JButton = new JButton() -id: JTextField = new JTextField() -nom: JTextField = new JTextField() -ap_pat: JTextField = new JTextField() -ap_mat: JTextField = new JTextField() -direccion: JTextField = new JTextField() -tel: JTextField = new JTextField() -cel: JTextField = new JTextField() -email: JTextField = new JTextField() -ocupacion: JTextField = new JTextField() -fecha: JTextField = new JTextField() -fecha_in: JTextField = new JTextField() <<create>>+b_alumno() pestañas_profesor -alta: a_empleado() -baja: b_empleado() -modifi: m_empleado() -consulta: c_empleado() -alta: a_profesor() -baja: b_profesor() -modifi: m_profesor() -consulta: c_profesor() <<create>>+pestañas_empleado() <<create>>+pestañas_profesor() a_profesor b_profesor m_profesor c_profesor -JP1: JPanel = new JPanel() -Aceptar: JButton = new JButton() -salir: JButton = new JButton() -id: JTextField = new JTextField() -nom: JTextField = new JTextField() -ap_pat: JTextField = new JTextField() -ap_mat: JTextField = new JTextField() -direccion: JTextField = new JTextField() -tel: JTextField = new JTextField() -tipo: JTextField = new JTextField() -JP1: JPanel = new JPanel() -Aceptar: JButton = new JButton() -salir: JButton = new JButton() -id: JTextField = new JTextField() -nom: JTextField = new JTextField() -ap_pat: JTextField = new JTextField() -ap_mat: JTextField = new JTextField() -direccion: JTextField = new JTextField() -tel: JTextField = new JTextField() -tipo: JTextField = new JTextField() -JP1: JPanel = new JPanel() -Aceptar: JButton = new JButton() -salir: JButton = new JButton() -id: JTextField = new JTextField() -nom: JTextField = new JTextField() -ap_pat: JTextField = new JTextField() -ap_mat: JTextField = new JTextField() -direccion: JTextField = new JTextField() -tel: JTextField = new JTextField() -tipo: JTextField = new JTextField() -JP1: JPanel = new JPanel() -Aceptar: JButton = new JButton() -salir: JButton = new JButton() -id: JTextField = new JTextField() -nom: JTextField = new JTextField() -ap_pat: JTextField = new JTextField() -ap_mat: JTextField = new JTextField() -direccion: JTextField = new JTextField() -tel: JTextField = new JTextField() <<create>>+a_profesor() <<create>>+b_profesor() <<create>>+m_profesor() <<create>>+c_profesor() b_empleado a_empleado c_empleado -JP1: JPanel = new JPanel() -Aceptar: JButton = new JButton() -salir: JButton = new JButton() -id: JTextField = new JTextField() -nom: JTextField = new JTextField() -ap_pat: JTextField = new JTextField() -ap_mat: JTextField = new JTextField() -direccion: JTextField = new JTextField() -tel: JTextField = new JTextField() -nick: JTextField = new JTextField() -pass: JTextField = new JTextField() -tipo: JTextField = new JTextField() -JP1: JPanel = new JPanel() -Aceptar: JButton = new JButton() -salir: JButton = new JButton() -id: JTextField = new JTextField() -nom: JTextField = new JTextField() -ap_pat: JTextField = new JTextField() -ap_mat: JTextField = new JTextField() -direccion: JTextField = new JTextField() -tel: JTextField = new JTextField() -nick: JTextField = new JTextField() -pass: JTextField = new JTextField() -tipo: JTextField = new JTextField() -JP1: JPanel = new JPanel() -Aceptar: JButton = new JButton() -salir: JButton = new JButton() -id: JTextField = new JTextField() -nom: JTextField = new JTextField() -ap_pat: JTextField = new JTextField() -ap_mat: JTextField = new JTextField() -direccion: JTextField = new JTextField() -tel: JTextField = new JTextField() -nick: JTextField = new JTextField() -pass: JTextField = new JTextField() -tipo: JTextField = new JTextField() <<create>>+b_empleado() <<create>>+a_empleado() -JP1: JPanel = new JPanel() -Aceptar: JButton = new JButton() -salir: JButton = new JButton() -id: JTextField = new JTextField() -nom: JTextField = new JTextField() -ap_pat: JTextField = new JTextField() -ap_mat: JTextField = new JTextField() -direccion: JTextField = new JTextField() -tel: JTextField = new JTextField() -nick: JTextField = new JTextField() -pass: JTextField = new JTextField() -tipo: JTextField = new JTextField() -b3: JButton = new JButton() <<create>>+c_empleado() <<create>>+m_empleado() m_empleado Fig. 3.8 En la figura anterior se muestra el diagrama de Clases del sistema IDH. 28 -JP1: JPanel = new JPanel() -Aceptar: JButton = new JButton() -salir: JButton = new JButton() -x1: JTextField = new JTextField() -x2: JTextField = new JTextField() -x3: JTextField = new JTextField() -x4: JTextField = new JTextField() -x5: JTextField = new JTextField() -x6: JTextField = new JTextField() -x7: JTextField = new JTextField() -x8: JTextField = new JTextField() -x9: JTextField = new JTextField() -x10: JTextField = new JTextField() -x11: JTextField = new JTextField() -x12: JTextField = new JTextField() -x13: JTextField = new JTextField() -x14: JTextField = new JTextField() -x15: JTextField = new JTextField() -x16: JTextField = new JTextField() -x17: JTextField = new JTextField() <<create>>+datos_medicos() 3.2.6 Diagrama de Secuencia Gral. : Usuario : Login Ingresar Usypass : Menú : BD IDH Conectar a BD IDH Hacer consulta de US yPass. Llamar menú Gral. Desplegar menú Gral. Seleccionar opción menú Gral. Mostrar opción de menú Gral. Seleccionar Panel de menú Gral. Introducir Registros Solicita Almacenamiento Realiza Consulta Envía mensaje ok o error Retorna Ok Fig. 3.9 En la figura anterior se muestra el diagrama de secuencia general del sistema IDH. 29 3.2.7Diagrama Relacional Fig. 3.10 En la figura anterior se muestra el diagrama relacional de la base de datos. 30 3.3 Implementación del sistema Hardware El sistema IDH se implementará en un equipo con el que ya cuenta la Institución, no será necesario adquirir uno nuevo ya que se verificó y si cuenta con las capacidades necesarias para la correcta implementación del sistema. Software Sistema operativo: Windows XP o superior. Software Autorizado: My SQL, java (eclipse, galileo). Personal que participa Administrador Us. Recepcionista Realizador de software Estos serán los responsables del uso, mantenimiento y manejo de forma completa del sistema, teniendo en cuenta que los realizador del software o bien alguna persona ajena pero con conocimiento en el área serán los encargados de las modificaciones y soluciones de problemas en el momento en que se presenten, en cuanto a los usuarios tendrán una breve capacitación para su uso correcto. 31 CAPÍTULO IV CONCLUSIONES 4.1 Dificultades La mayor dificultad que se presentó fue la falta de conocimiento sobre el lenguaje Java. Otra de las dificultades fue el no recordar completamente las bases del diseño de la base de datos, aunque fue más sencillo resolver el problema sólo con la consulta de un libro. Por último la dificultad no menos importante fue la conexión de la base de datos con el sistema creado en Java, desconocía el proceso de cómo llevar a cabo dicha conexión. 4.2 Logros obtenidos Por medio del sistema diseñado se logra realizar el registro de los datos de los alumnos, profesores y usuarios, se dan de alta, baja, modifican, consultan y se realiza la búsqueda. Los datos médicos del alumno al igual se dan de alta. La clase muestra se puede registrar de forma automatizada. Se logró registrar de forma muy general y básica la asistencia de los alumnos. Se puede realizar el registro de los pagos que se realizan. Además el sistema cuenta con seguridad ya que los usuarios cuentan con un nombre de usuario y una contraseña con la cual podrán ingresar y hacer uso del sistema. La información es almacenada en una base de datos que fue diseñada en SQL. 33 4.3 Análisis de riesgos Un factor importante que pudo haber sido una limitante de no llegar a alcanzar los objetivos o el alcance del proyecto es la falta de conocimiento sobre el lenguaje Java, así que tuve que realizar diversas consultas, asesorías etc. Como consecuencia la falta de tiempo es otro de estos factores. Un riesgo más es el cambio de los requerimientos a medio desarrollo, y por último deficiencias en el equipo de trabajo. 4.4 Recomendaciones Este proyecto no tomarlo como sólo un proyecto escolar más, si no tener en cuenta que esté servirá para resolver la problemática de la empresa y poder facilitar los procesos así como automatizar toda la información. 4.5 CONCLUSIONES Para iniciar tengo en cuenta y muy presente que no importa el tamaño ni la empresa a la cual se es asignado, lo importante para mí fue haber tenido la oportunidad de desarrollar mi proyecto mediante la aplicación de mis conocimientos. Este proyecto fue un reto para mí, ya que hasta el momento no había desarrollado un sistema desde cero, en ocasiones sólo aportaba algunas ideas pero nunca lo había realizado sola. Hoy puedo decir que he aprendido a involucrarme más en cada proyecto escolar porque afuera son de gran ayuda. Este proyecto fue un reto para mí y estoy satisfecha con el trabajo realizado porque sé que será de gran utilidad para la empresa. 34 MATERIAL DE CONSULTA 35 Bibliografías: Gottfried Byron, Curso de Programación Java, MC Graw Hill, México, 2001. Vázquez José Luis, Sistema de Base de Datos, Prentice Hall, México, 2001. 36