Story Transcript
UNIVERSIDAD CENTRAL DEL ECUADOR FACULTAD DE INGENIERÍA, CIENCIAS, FÍSICAS Y MATEMÁTICA CARRERA DE INGENIERÍA INFORMÁTICA SISTEMA DE SEGUIMIENTO Y REGISTRO DE LOS PRODUCTOS DE INVESTIGACIÓN REALIZADOS COMO TESIS EN EL INSTITUTO SUPERIOR DE POSTGRADO DE LA FACULTAD DE INGENIERIA CIENCIAS FISICAS Y MATEMATICA
TRABAJO DE GRADUACIÓN PREVIO A LA OBTENCIÓN DEL TÍTULO DE INGENIERO INFORMÁTICO AUTOR:
CHAVEZ CISNEROS WELLINGTON PATRICIO TUTOR:
ING. GORDILLO TORRES JORGE EDUARDO
QUITO-ECUADOR 2015
i
DEDICATORIA
Gracias a DIOS, por darme esta oportunidad y guiar mí camino para llegar a este momento.
A mis padres por su sacrificio y apoyo incondicional a pesar de mis errores y mis caídas han estado siempre ahí, luchando conmigo porque también ha sido una lucha suya, y a mi querido hermano Wilson que nunca me ha dejado solo y siempre me daba apoyo tanto moral y económico.
Dedico este trabajo de graduación a mis queridos hijos, Karla Noemí y Carlos Adrián por ser los pilares que han dado luz y sentido a mi vida y ser mi inspiración para seguir adelante.
A mi esposa Rosa Varela, quien estuvo a mi lado apoyándome en cada paso que daba para la culminación de mi carrera.
Wellington Chávez
ii
AGRADECIMIENTO
Agradezco de manera muy especial a la Universidad Central del Ecuador, a la Facultad de Ingeniería Ciencias Físicas y Matemáticas y a su vez a la Carrera de Ingeniería en Informática, por haberme impartido todo el conocimiento que a través de sus docentes me brindaron.
Quiero agradecer infinitamente al Ing. Santiago Morales quien hizo posible que este proyecto viera la luz, y quien me presto todo su apoyo y voluntad para poder desarrollar este proyecto.
Al Ing. Jorge Gordillo por haberme guiado como tutor en el desarrollo del mismo, que siempre estaré agradecido por toda su colaboración que me presto para que el proyecto finalizara con mucho éxito.
A todos mis amigos quienes de alguna u otra forma me ayudaron para poder realizar este trabajo.
¡A TODOS GRACIAS!
iii
iv
CERTIFICACION DEL TUTOR
v
SOLICITUD DE CALIFICACION REVISORES
vi
RESULTADO DEL TRABAJO DE GRADUACION
vii
CONTENIDO DEDICATORIA --------------------------------------------------------------------------------ii AGRADECIMIENTO-------------------------------------------------------------------------iii AUTORIZACIÓN DE LA AUTORÍA INTELECTUAL---------------------------------iv CERTIFICADO DEL TUTOR---------------------------------------------------------------v SOLICITUD DE CALIFICACIÓN REVISORES---------------------------------------vi RESULTADO DEL TRABAJO DE GRADUACION----------------------------------vii CONTENIDO---------------------------------------------------------------------------------viii LISTA DE FIGURAS-----------------------------------------------------------------------xiii LISTA DE TABLAS--------------------------------------------------------------------------xv RESUMEN------------------------------------------------------------------------------------xvi ABSTRACT----------------------------------------------------------------------------------xvii CERTIFICADO DE TRADUCCIÓN---------------------------------------------------xviii CERTIFICADO DE SUFICIENCIA EN INGLES------------------------------------xix INTRODUCCIÓN----------------------------------------------------------------------------1
viii
CAPÍTULO I------------------------------------------------------------------------------------2 1. PRESENTACIÓN DEL PROBLEMA-------------------------------------------------2 1.1 Planteamiento de Problema-----------------------------------------------------------2 1.2 Formulación del Problema-------------------------------------------------------------2 1.3 Sistematización del Problema--------------------------------------------------------3 1.4 Interrogantes de la Investigación----------------------------------------------------3 1.5 Objetivos de la Investigación---------------------------------------------------------4 1.5.1 Objetivo General--------------------------------------------------------------4 1.5.2 Objetivos Específicos-------------------------------------------------------4 1.6 Alcance-------------------------------------------------------------------------------------5 1.7 Justificación e Importancia------------------------------------------------------------7 CAPÍTULO II-----------------------------------------------------------------------------------8 2. REVISIÓN BLIBLIOGRÁFICA--------------------------------------------------------8 2.1 Antecedentes-----------------------------------------------------------------------------8 2.2 Uso de tecnologías web----------------------------------------------------------------8 2.2.1 Tecnologías java para la web--------------------------------------------------9 2.2.2 Aplicaciones basadas en arquitectura multinivel------------------------10 2.3 El lenguaje de Modelado Unificado (UML) --------------------------------------11 2.3.1 Diagramas de Contexto------------------------------------------------------------11 2.3.2 Diagramas de Comportamiento--------------------------------------------------12 2.3.2.1 Diagramas de Flujos de Datos----------------------------------------13 2.3.2.2 Diagramas de Maquinas de Estado---------------------------------13 ix
2.3.3 Diagramas de Datos----------------------------------------------------------------14 2.3.4 Diagramas de Comportamiento de Objetos----------------------------------15 2.4 Diagramas de Casos de Uso--------------------------------------------------------16 2.5 Patrones de Diseño en java---------------------------------------------------------17 2.6 Herramientas Usadas en el desarrollo--------------------------------------------18 2.6.1 Lenguaje de programación Java---------------------------------------18 2.6.2 JBoss--------------------------------------------------------------------------20 2.6.3 Entorno de Desarrollo jee-------------------------------------------------21 2.6.3.1 Librerias Jee------------------------------------------------------22 2.6.4 IDE de desarrollo Eclipse Luna-----------------------------------------23 2.6.5 PostgreSQL------------------------------------------------------------------25 2.6.5.1 Características de PostgreSQL------------------------------25 2.6.6 Framework JavaServer faces (JSF) -----------------------------------27 2.6.7 Modelador de Base de Dato Power Designer-----------------------28 CAPÍTULO III--------------------------------------------------------------------------------30 3. MARCO METODOLÓGICO----------------------------------------------------------30 3.1 Marco Teórico---------------------------------------------------------------------------30 3.2 Metodología-----------------------------------------------------------------------------31 CAPÍTULO IV--------------------------------------------------------------------------------34 4. ESPECIFICACIONES FUNCIONALES--------------------------------------------34 4.1 Modelo de la Propuesta--------------------------------------------------------------34
x
4.2 Requerimientos-------------------------------------------------------------------------34 4.3 Casos de Uso del Proyecto---------------------------------------------------------36 CAPÍTULO V---------------------------------------------------------------------------------56 5. DIAGRAMAS-----------------------------------------------------------------------------56 5.1 Modelo Entidad Relación Proyecto------------------------------------------------56 5.2 Diagramas de Secuencia Proyecto------------------------------------------------57 CAPÍTULO VI--------------------------------------------------------------------------------70 6. MARCO ADMINISTRATIVO----------------------------------------------------------70 6.1 Recursos---------------------------------------------------------------------------------70 6.2 Presupuestos----------------------------------------------------------------------------70 6.3 Cronograma-----------------------------------------------------------------------------72 CAPITULO VII-------------------------------------------------------------------------------73 7. CONCLUSIONES Y RECOMENDACIONES-------------------------------------73 7.1 Conclusiones----------------------------------------------------------------------------73 7.2 Recomendaciones---------------------------------------------------------------------73 BIBLIOGRAFÍA-----------------------------------------------------------------------------74
xi
ANEXOS--------------------------------------------------------------------------------------76 ANEXO A. Manual de Usuario----------------------------------------------------77-117 ANEXO B. Manual de Instalación----------------------------------------------118-153 ANEXO C. Manual de Técnico -------------------------------------------------154-168
xii
LISTADO DE FIGURAS Figura 1: Arquitectura de 3 capas Figura 2: Ejemplo de un diagrama de Contexto Figura 3: Ejemplo de un diagrama de flujo de datos Figura 4: Ejemplo de un diagrama de máquinas de estado Figura 5: Ejemplo de un diagrama de datos Figura 6: Ejemplo de un diagrama de casos de uso Figura 7: Caso de uso para sistema de seguimiento Figura 8: Entorno de desarrollo java Figura 9: Arquitectura JEE Figura 10: Arquitectura de PostgreSQL Figura 11: Caso de uso Rol Administrador Figura 12: Caso de uso Rol Docente Figura 13: Caso de uso Rol Estudiante Figura 14: Diagrama de modelo Entidad-Relación Figura 15: Diagrama de secuencias de registro administrador Figura 16: Diagrama de secuencias de Crear o Actualizar Catalogo Figura 17: Diagrama de secuencias de Crear o Actualizar Lugar Geográfico Figura 18: Diagrama de secuencias de crear o Actualizar Estudiante Figura 19: Diagrama de secuencias de crear o Actualizar Docente Figura 20: Diagrama de secuencias autenticar Docente Figura 21: Diagrama de secuencias ingresar tema Figura 22: Diagrama de secuencias ingresar seguimiento Figura 23: Diagrama de secuencias visualizar estadísticas
xiii
Figura 24: Diagrama de secuencias visualizar seguimiento Figura 25: Diagrama de secuencias autenticar estudiante Figura 26: Diagrama de secuencias visualizar tema Figura 27: Diagrama de secuencias visualizar seguimientos Figura 28: cronograma de desarrollo del proyecto
xiv
LISTADO DE TABLAS Tabla 1: APIs JEE Tabla 2: Versiones Eclipse Tabla 3: limitantes de PostgreSQL Tabla 4: Librerías de etiquetas facelets Tabla 5: Estimación de costos
xv
RESUMEN
SISTEMA DE SEGUIMIENTO Y REGISTRO DE LOS PRODUCTOS DE INVESTIGACIÓN REALIZADOS COMO TESIS EN EL INSTITUTO DE POSTGRADO DE LA FACULTAD DE INGENIERIA CIENCIAS FISICAS Y MATEMATICAS.
El presente trabajo previo a la graduación, tiene como objetivo principal reducir notablemente la redundancia de información, con el fin de obtener un repositorio de información, donde se encuentre todos los datos principales del estudiante, además de adjuntar de forma confiable la información de seguimiento de los productos de investigación realizados como tesis de los estudiantes del Instituto de Postgrado de la Facultad de Ingeniería Ciencias Físicas y Matemáticas.
Para esto hemos realizado una aplicación web, confiable y amigable con los recursos del Instituto y con todo el personal, con el fin de optimizar su tiempo en el sistema y que dicha información se maneje de una forma muy eficaz.
El presente trabajo, aporta de manera confiable al Instituto de Postgrado de la Facultad de Ingeniería de la Universidad Central del Ecuador para una mejora continua y una mejoría en la toma de decisiones a fututo.
DESCRIPTORES: SISTEMA WEB/ SEGUIMIENTO DE LOS PRODUCTOS DE INVESTIGACION/ FRAMEWORK J2ee/ FRAMEWORK JSF/ EJB/ JPA/ HIBERNATE/ POSTGRESQL.
xvi
ABSTRACT
MONITORING SYSTEM AND RECORD OF RESEARCH PRODUCTS CARRIED OUT AS THESIS IN THE INSTITUTE OF POSTGRADUATE OF THE FACULTY OF ENGINEERING, PHYSICAL AND MATHEMATICAL SCIENCES.
This word prior to graduation, has as a main objective reducing the information redundancy, in order to have a repository of general information, where are all the main student`s data, as well attach reliably monitoring information of the research products achieved as thesis of postgraduate Institute of the faculty of Engineering, Physical and Mathematical Sciences.
Therefore, we achieved a reliable and friendly web system, with the resources of the Institute and all the staff, in order to optimize its time in the system and that above mentioned information will be manage effectively.
This Word, contributes reliably to the Institute of postgraduate of the faculty of Engineering of Universidad Central of Ecuador fora continuous improvement in the decision making in the future
KEY WORDS: WEB SYSTEM/ MONITORING OF THE INVESTIGATION PRODUCTS/ FRAMEWORK J2ee/ FRAMEWORK JSF/ EJB/ JPA/ HIBERNATE/ POSTGRESQL.
xvii
CERTIFICADO DE TRADUCCION RESUMEN AL INGLES
xviii
xix
xx
INTRODUCCIÓN En la actualidad el uso de los Equipos de Computación son de fundamental importancia, para toda persona que estudie y trabaje, gracias a que esta es una herramienta de gran utilidad para el aprendizaje y el procesamiento de información, lo cual ayuda a formar y a incrementar el intelecto de los usuarios, en diferentes campos como por ejemplo las empresas que generan un producto específico, y también alguna institución educativa u organismo público o privado.
Con el uso de estos sistemas de computación actuales y los numerosos beneficios de la informática, los usuarios más comunes como lo son los estudiantes, han logrado reducir la complejidad en las actividades académicas gracias a que se logra obtener la información en forma rápida, eficaz y segura, permitiendo así cumplir sus objetivos y metas por las cuales fueron creadas en menos tiempo.
En el campo de la educación, el uso de las tecnologías de la información, se ha convertido en una necesidad y en una demanda de todos los actores del sistema educativo.
Por su parte el Instituto Superior de Postgrado de la facultad, en la actualidad maneja los procesos de registro de las tesis en forma manual, lo cual genera la acumulación y/o desperdicio de recursos como el papel y el tiempo, esto conlleva a adquirir nuevas tecnologías informáticas de implementación de sistemas, que permitan lograr que los procesos sean más rápidos y efectivos.
Esto se realizará a través del análisis de los requerimientos presentados por el Instituto Superior de Postgrado de la facultad, la respectiva recolección de datos que nos permitirá construir diagramas y consolidar la unificación de procesos que maneja el Instituto. 1
CAPITULO I PRESENTACION DEL PROBLEMA 1.1 Planteamiento del Problema Históricamente, en el Instituto Superior de Postgrado de la facultad, la recolección de la información de identificación y procedencia estudiantil, se lo viene realizando en forma manual y sin posibilidades de conservación de sus archivos. El procedimiento utilizado, a más de ser obsoleto y fungible, impide una información condensada y actualizada para que la administración académica la utilice en la remediación presente y futura del desperdicio académico y de su impacto en el desarrollo socioeconómico de la comunidad académica y de su entorno.
Este proyecto propone implementar y dotar al Instituto Superior de Postgrado de un sistema informático que permita llevar el seguimiento y registro de los productos de investigación presentados como tesis en forma automatizada, garantizando confiabilidad, consolidación y seguridad de la información.
1.2 Formulación del Problema
Mediante el control manual de seguimiento y registro de las tesis realizadas por los profesionales en el Instituto Superior de Postgrado de la facultad y el manejo de información a través de documentos que se generan al inicio, durante y al final de las mismas se presentan las siguientes situaciones:
No contar con información digitalizada que en muchos de los casos es requerida en forma inmediata.
2
No disponer de
una base de datos sólida en la cual se pueda
almacenar toda la información sobre las tesis realizadas en el Instituto Superior de Postgrado.
Tomando en consideración estas situaciones, se ha visto la necesidad de construir e implementar una herramienta informática que permita controlar y registrar las tesis, de forma que, el seguimiento y administración de las mismas sea eficiente y efectivo.
1.3 Sistematización del Problema
Para dar solución a este problema en el presente proyecto de investigación y desarrollo tenemos los siguientes puntos. Tener almacenada la información en un solo repositorio para concatenar con el sistema de seguimiento realizado por el tesista, con el fin de estructurarla de tal forma que se pueda utilizar con futuros sistemas desarrollados por el Instituto Superior de Postgrado de la facultad de Ingeniería. Una aplicación web con herramientas open source que permita registrar y dar seguimiento a los estudiantes que se encuentran realizando su proyecto de investigación en el Instituto Superior de postgrado.
1.4 Interrogantes de la Investigación
Verificar si existe redundancia de información de los estudiantes egresados del Instituto Superior de Postgrado. Administrar dicha información de una manera óptima con la informática
3
Incentivar al alumno con su trabajo de investigación y ayudarlo a cumplir con las metas establecidas Tener ideas claras de lo que ocurre con su entorno para poder realizar su trabajo de investigación y llevar una estadística de las mismas ¿Cómo identificar si no existe fuga de información por parte de los estudiantes que ya han realizado su proyecto de investigación en el Instituto?
1.5 OBJETIVOS DE LA INVESTIGACIÓN
1.5.1 Objetivo General Desarrollar e implementar un sistema de registro y seguimiento de los productos de investigación realizados como tesis en el instituto Superior de Postgrado, de manera que facilite al personal administrativo de la unidad llevar un correcto control de las mismas en forma automatizada, optimizando y produciendo información consolidada para la toma de decisiones, que reduzca tiempo y esfuerzo, y a la vez que garantice la permanencia de datos y de información de manera segura en el tiempo.
1.5.2 Objetivos Específicos
Realizar el levantamiento real y actualizado de todos los productos de investigación realizados como tesis, los mismos que servirán de plataforma sobre la cual se apoye la propuesta de cambio con la ayuda de la tecnología actual. Desarrollar la aplicación considerando los lineamientos impuestos en el diseño y tomando en cuenta siempre
los requisitos
funcionales y no funcionales que contempla la fase de análisis.
4
Verificar el correcto funcionamiento del sistema mediante pruebas que permitan comprobar la calidad, confiabilidad y estabilidad de la aplicación. Implementar y capacitar en este sistema de información a la planta administrativa, de tal forma que se constituya en la herramienta que facilite la ejecución de los procesos de seguimiento y registro de los productos de investigación presentados como tesis en forma rápida y efectiva.
Guardar la información para su utilización en la implementación de políticas educativas y la toma de decisiones en la gestión académica.
1.6 Alcance
Contar con un Sistema orientado en la web que permita al personal administrativo controlar y mantener el registro actual de los productos de investigación realizados como tesis en el Instituto Superior de Postgrado de la Facultad, así como también registrar los docentes que dirigen dichas tesis, mantener un correcto control de las mismas. . El sistema comprende los siguientes módulos: Módulo de configuración y administración Registro de las tesis: Este proceso permite registrar las tesis en forma parcial de cada profesional y a su vez, llevar el control en forma ordenada de los productos de investigación realizados como tesis en el Instituto. Ficha Socioeconómica: El proceso permitirá registrar información confidencial y más detallada del profesional y su entorno de trabajo.
5
Módulo de generación de estadísticas
El sistema facilitará la generación de estadísticas las cuales pueden ser consultados por los profesionales vía internet, el cual ellos sabrán el estado en el que se encuentra.
Toda esta información será almacenada en forma permanente de modo que en cualquier momento que se desee acceder a ella con el objeto de consultarla, su acceso sea rápido y sujeto a lo que demande el profesional, docente y administrativo del Instituto en el tiempo.
El sistema planteado propone hacer uso correcto de toda la información que existe
para el beneficio de los estudiantes y del Instituto como entidad
administrativa. La aplicación web planteada se encargara de dar solución al problema planteado y esta a su vez consta de:
a) Modulo de Administrador para ingresar al aplicativo el usuario con rol de
administrador
deberá
ingresar
su
usuario
y
password
correctamente, el cual será el encargado de hacer el registro de información en el sistema como es el de estudiantes, docentes, nombres de maestrías, parámetros generales del sistema etc. Así como también actualizar dichos registros.
b) Modulo de Docente para ingresar al aplicativo el usuario con rol de docente deberá ingresar su usuario y password correctamente, el cual será el encargado de hacer el registro del tema y a su vez registrar las diferentes fechas en que se hacen los seguimientos, también podrá visualizar el seguimiento que se hace a los demás estudiantes del Instituto.
6
c) Modulo Estudiante para ingresar al aplicativo el usuario con rol de estudiante deberá ingresar su usuario y password correctamente, el cual solo se ha asignado permisos para visualizar el estado en el que se encuentra su tema de tesis y los seguimientos respectivos que se han ido haciendo durante su proyecto.
1.7 Justificación e importancia
El Instituto Superior de Postgrado de la facultad de Ingeniería Ciencias Físicas y Matemática, contribuye al desarrollo social a través de la formación académica de los profesionales con un alto espíritu de superación. Actualmente el Instituto no cuenta con un sistema de información, por lo que la mayoría de sus procesos no se lo realiza en forma automática. La Estructuración y desarrollo del Sistema de seguimiento y registro de los productos de investigación realizados como tesis en el Instituto Superior de Postgrado de la Facultad, es una aplicación de apoyo para la Dirección del Instituto, pues permitirá un manejo óptimo y eficiente de la información digitalizada, que al ser ingresada de manera progresiva y recurrente, reflejará datos confiables y veraces respaldados por las seguridades exigidas en los procesos de análisis de los sistemas automatizados.
7
CAPITULO II REVISION BIBLIOGRAFICA 2.1 Antecedentes Históricamente, en el Instituto Superior de Postgrado de la facultad, la recolección de la información de identificación y procedencia estudiantil, se lo viene realizando en forma manual y sin posibilidades de conservación de sus archivos.
El procedimiento utilizado, a más de ser obsoleto y fungible, impide una información condensada y actualizada para que la administración académica la utilice en la remediación presente y futura del desperdicio académico y de su impacto en el desarrollo socioeconómico de la comunidad académica y de su entorno.
Este proyecto propone implementar y dotar al Instituto Superior de Postgrado de un sistema informático que permita llevar el seguimiento y registro de los productos de investigación presentados como tesis en forma automatizada, garantizando confiabilidad, consolidación y seguridad de la información.
2.2 Uso de tecnologías web
En los tiempos actuales estamos viviendo de un cambio acelerado en lo que respecta a implementación de nuevas tecnologías. Estos cambios acelerados forman parte de una era tecnológica en la que los usuarios finales no están acostumbrados a utilizar o manejar dichas tecnologías. Dichos
cambios
tecnológicos conlleva al usuario final a buscar nuevos métodos o formas de aprender en el campo tecnológico. Un ejemplo que podemos mencionar es que se ha logrado entrelazar al usuario con información hipermedia (incluyendo texto, imágenes, audio y vídeo).
8
La comunicación hombre-máquina se ha hecho necesaria desde años atrás y es precisamente mediante un lenguaje de programación como se logra esta interacción de un modo satisfactorio. Los programadores necesitan conocer los lenguajes de programación para mediante términos definidos por el lenguaje dar solución a un problema determinado. El lenguaje java es un lenguaje orientado a objetos que actualmente tiene gran uso debido precisamente a la capacidad de sus programas para ser ejecutados en cualquier tipo de máquina. El uso de frameworks permite el desarrollo rápido de aplicaciones y la reutilización de componentes, a la vez que está suministrando al sistema una arquitectura determinada.
En informática, la World Wide Web (WWW) o Red informática mundial comúnmente conocida como la Web, es un sistema de distribución de documentos de hipertexto o hipermedios interconectados y accesibles vía
Internet. Con un navegador web, un usuario
web
compuestos
de
páginas
web
visualiza que
sitios
pueden
contener texto, imágenes, vídeos u otros contenidos multimedia, y navega a través
de
esas
páginas
usando
hiperenlaces1.
2.2.1 Tecnologías java para la web
La Plataforma Java se compone de un amplio abanico de tecnologías, cada una de las cuales ofrece una parte del complejo de desarrollo o del entorno de ejecución en tiempo real. Por ejemplo, los usuarios finales suelen interactuar con la máquina virtual de Java y el conjunto estándar de bibliotecas. Además, las aplicaciones Java pueden usarse de forma variada, como por ejemplo ser incrustadas en una página web. Para el desarrollo de aplicaciones,
se
utiliza
un
conjunto
de
herramientas
conocidas
como JDK (Java Development Kit, o herramientas de desarrollo para Java)2.
1 2
https://es.wikipedia.org/wiki/World_Wide_Web https://es.wikipedia.org/wiki/Plataforma_Java
9
2.2.2 Aplicaciones basadas en arquitectura multinivel (n-capas)
Utilizar la plataforma Java Enterprise Edition (JEE 6.0) permite una concepción del sistema en n- capas, en específico se usará una arquitectura en
tres
capas,
cuyo
objetivo
principal
es
la
separación
de
la lógica de negocios de la lógica de diseño; un ejemplo básico de esto consiste en separar la capa de datos de la capa de presentación al usuario. La ventaja principal de este estilo es que el desarrollo se puede llevar a cabo en varios niveles y, en caso de que conlleve algún cambio, solo se ataca al nivel requerido sin tener que revisar más código. Esto, permite redistribuir el trabajo de creación de una aplicación por niveles; de este modo, cada grupo de trabajo está totalmente abstraído del resto de los niveles.
Capa de presentación: presenta el sistema al usuario, le comunica la información y captura la información del usuario en un mínimo de proceso. Esta capa se comunica únicamente con la capa de negocio.
Capa de negocio: se reciben las peticiones del usuario y se envían las respuestas tras el proceso. Se denomina capa de negocio porque es aquí donde se establecen todas las reglas que deben cumplirse. Esta capa se comunica con la capa de presentación, para recibir las solicitudes y presentar los resultados, y con la capa de datos, para solicitar al gestor de base de datos para almacenar o recuperar datos de él.
Capa de datos: es donde residen los datos y es la encargada de acceder a los mismos. Está formada por uno o más gestores de bases de datos que realizan todo el almacenamiento de datos, reciben solicitudes de almacenamiento o recuperación de información desde la capa de negocio.
10
Figura 1 Arquitectura de 3 capas
2.3 EL Lenguaje de Modelado Unificado (UML)
El Lenguaje de Modelado Unificado (UML:Unified Modeling Language) es la sucesión de una serie de métodos de análisis y diseño orientadas a objetos que aparecen a fines de los 80's y principios de los 90s.UML es llamado un lenguaje de modelado, no un método. Los métodos consisten de ambos de un lenguaje de modelado y de un proceso. El lenguaje de modelado es la notación (principalmente gráfica) que usan los métodos para expresar un diseño. El proceso indica los pasos que se deben seguir para llegar a un diseño3.
2.3.1 Diagramas de Contexto
Una primera etapa es la especificación de un sistema, se debe decidir sobre las fronteras del sistema. Esto implica trabajar con los participantes del sistema para determinar sobre cuál funcionalidad se incluirá en el sistema y cuál
es
la
que
ofrece
el
entorno
del
sistema.
Los diagramas de contexto, por lo general, muestran como el entorno incluye varios sistemas automatizados. Por consiguiente, los diagramas de contexto simples se usan junto con otros modelos, como los modelos de proceso
3
http://www.docirs.com/uml.htm
11
Empresarial. Éstos describen procesos humanos y automatizados que se usan en sistemas particulares de software4.
Figura 2: Ejemplo de un diagrama de contexto
2.3.2 Diagramas de Comportamiento
Los
diagramas
de
comportamiento
se
utilizan
para
describir
el
comportamiento del sistema en su totalidad. Aquí se analizan los tipos de diagramas de comportamiento: diagramas de flujos de datos, que modelan el procesamiento de los datos en el sistema, y diagramas de máquinas de estado, que modelan cómo el sistema reacciona a los eventos. Estos diagramas pueden usarse de forma separada o conjuntamente, dependiendo del tipo de sistema que se esté desarrollando5.
4 5
https://prezi.com/uvchtx3smiki/modelos-de-contexto/ Ian Somerville,(2005) ,(pag. 157)
12
2.3.2.1
Diagramas de Flujo de Datos
Los diagramas de flujo de datos se utilizan para mostrar cómo fluyen los datos a través de una secuencia de pasos de procesamiento. Por ejemplo, un paso de procesamiento podría ser filtrar registros duplicados en una base de datos de clientes. Los datos se transforman en cada paso antes de moverse a la siguiente etapa. Estos pasos de procesamiento o transformaciones representan procesos software o funciones cuando los diagramas de flujos de datos se utilizan para documentar un diseño software. Sin embargo en un modelo de análisis, el procesamiento se puede llevar a cabo por las personas o por las computadoras6.
Figura 3: Ejemplo de un diagrama de flujo de datos
2.3.2.2 Diagramas de Maquinas de Estado Un diagrama de máquina de estados es un comportamiento que especifica las secuencias de estados por las que pasa un objeto a lo largo de su vida en respuesta a eventos, junto con sus respuestas a esos eventos. Un estado es una condición o situación en la vida de un objeto durante la cual satisface una condición, realiza alguna actividad o espera algún evento.
6
Ian Somerville,(2005) ,(pag. 158)
13
Un evento es la especificación de un acontecimiento significativo que ocupa un lugar en el tiempo y en el espacio. Es la aparición de un estímulo que puede (o no) activar una transición de estado7.
Figura 4: Ejemplo de un diagrama de máquinas de estado
2.3.3 Diagramas de Datos Un modelo de base de datos es un tipo de modelo de datos que determina la estructura lógica de una base de datos y de manera fundamental determina el modo de almacenar, organizar y manipular los datos. La técnica de modelado de datos más ampliamente usada es el modelado Entidad-Relación-Atributo (modelado ERA), que muestra las entidades de datos, sus atributos asociados8.
7 8
http://www.codecompiling.net/files/slides/UML_clase_03_UML_actividades_estados.pdf Ian Somerville,(2005) ,(pag. 161)
14
Figura 5: Ejemplo de un diagrama de datos
2.3.4 Diagrama de Comportamiento de Objetos Los diagramas de secuencia muestran las interacciones entre un conjunto de objetos, ordenadas según el tiempo en que tienen lugar. En los diagramas de este tipo intervienen objetos, que tienen un significado parecido al de los objetos representados en los diagramas de colaboración, es decir son instancias concretas de una clase que participa en la interacción. El objeto puede existir sólo durante la ejecución de la interacción, se puede crear o destruir durante la ejecución de la interacción. Un diagrama de secuencia representa una forma de indicar el período durante el que un objeto está desarrollando una acción directamente o a través de un procedimiento9.
9
http://www.monografias.com/trabajos5/insof/insof.shtml#ixzz3hQulhHLX
15
Figura 6: Ejemplo de un diagrama de secuencia
2.4 Diagramas de Casos de Uso
Los diagramas de casos de uso es una secuencia de transacciones que son desarrolladas por un sistema en respuesta a un evento que inicia un actor sobre el propio sistema. Los diagramas de casos de uso sirven para especificar la funcionalidad y el comportamiento de un sistema mediante su interacción con los usuarios y otros sistemas. O lo que es igual, un diagrama que muestra la relación entre los actores y los casos de uso en un sistema. Una relación es una conexión entre los elementos del modelo, por ejemplo la relación
y
la
generalización
son
relaciones.
Los diagramas de casos de uso se utilizan para ilustrar los requerimientos del sistema al mostrar cómo reacciona una respuesta a eventos que se producen en el mismo. En este tipo de diagrama intervienen algunos conceptos nuevos: un actor es una entidad externa al sistema que se modela y que puede interactuar con él; un ejemplo de actor podría ser un usuario o cualquier otro sistema. Las relaciones entre casos de uso y actores pueden ser las siguientes:
Un actor se comunica con un caso de uso. Un caso de uso extiende otro caso de uso.
16
Un caso de uso usa otro caso de uso10
Figura 7: Ejemplo de un diagrama de caso de uso Los casos de uso identifican las interacciones particulares con el sistema.
2.5 Patrones de Diseño java
Un patrón de diseño es una descripción de clases y objetos comunicándose entre sí adaptada para resolver un problema de diseño general en un contexto particular. El uso de patrones ayuda a obtener un software de calidad (reutilización y extensibilidad). Un patrón de diseño es una abstracción de una solución en un nivel alto. Los patrones solucionan problemas que existen en muchos niveles de abstracción. Hay patrones que abarcan las distintas etapas del desarrollo; 10
http://www.monografias.com/trabajos5/insof/insof.shtml
17
desde el análisis hasta el diseño y desde la arquitectura hasta la implementación. El grupo de GoF clasificaron los patrones en 3 grandes categorías basadas en su PROPÓSITO: creacionales, estructurales y de comportamiento. •
Creacionales: Patrones creacionales tratan con las formas de crear instancias de objetos. El objetivo de estos patrones es de abstraer el proceso de instanciación y ocultar los detalles de cómo los objetos son creados o inicializados.
•
Estructurales: Los patrones estructurales describen como las clases y objetos pueden ser combinados para formar grandes estructuras y proporcionar nuevas funcionalidades. Estos objetos adicionados pueden ser incluso objetos simples u objetos compuestos.
•
Comportamiento: Los patrones de comportamiento nos ayudan a definir la comunicación e iteración entre los objetos de un sistema. El propósito de este patrón es reducir el acoplamiento entre los objetos11.
2.6 HERRAMIENTAS UTILIZADAS EN EL DESARROLLO
2.6.1 Lenguaje de Programación Java
Java es un lenguaje de programación orientado a objetos que fue diseñado específicamente para tener tan pocas dependencias de implementación como fuera posible. Su intención es permitir que los desarrolladores de aplicaciones escriban el programa una vez y lo ejecuten en cualquier dispositivo (conocido en inglés como WORA, o "write once, run anywhere"), lo que quiere decir que el
código
que
es
ejecutado
en
una
plataforma
no
tiene
que
ser recompilado para correr en otra. Java es, a partir de 2012, uno de los lenguajes de programación más populares en uso, particularmente para 11
http://java.ciberaula.com/articulo/diseno_patrones_j2ee/
18
aplicaciones de cliente-servidor de web, con unos 10 millones de usuarios reportados. El lenguaje de programación Java fue originalmente desarrollado por James Gosling de Sun Microsystems (la cual fue adquirida por la compañía Oracle) y publicado en 1995 como un componente fundamental de la plataforma Java de Sun Microsystems. Su sintaxis deriva en gran medida de C y C++, pero tiene menos utilidades de bajo nivel que cualquiera de ellos. Las aplicaciones de Java son generalmente compiladas a bytecode (clase Java) que puede ejecutarse en cualquier máquina virtual Java (JVM) sin importar la arquitectura de la computadora subyacente. La compañía Sun desarrolló la implementación de referencia original para los compiladores de Java, máquinas virtuales, y librerías de clases en 1991 y las publicó por primera vez en 1995. A partir de mayo de 2007, en cumplimiento con las especificaciones del Proceso de la Comunidad Java, Sun volvió a licenciar la mayoría de sus tecnologías de Java bajo la Licencia Pública General de GNU. Otros también han desarrollado implementaciones alternas a estas tecnologías de Sun, tales como el Compilador de Java de GNU y el GNU Classpath12.
Figura 8 Entorno de desarrollo en java
12
https://es.wikipedia.org/wiki/Java_(lenguaje_de_programaci%C3%B3n)
19
Ventajas de utilizar java
Lenguaje multiplataforma, significa que se ejecuta en la mayoría de sistemas operativos. Software open source, no es necesario pagar o adquirir una licencia para poder desarrollar en el lenguaje orientad a objetos java. Es un lenguaje muy poderoso para el desarrollo de aplicaciones web. Posee una librería (API) y utilitarios muy completas y de alto nivel que facilitan la programación.
Desventajas de Utilizar Java
Es un lenguaje de ejecución lenta, ya que es un leguaje compilado y utiliza la máquina virtual de Java, a diferencia de lenguajes como “C”. Lenguaje complicado de aprender, por su complicada sintaxis, sin embargo la estructura de java es completa y organizada y semejante a el lenguaje de C++, por lo que si se tiene conocimiento previo en C++.
2.6.2 JBoss
JBoss es una nueva y poderosa aplicación para la construcción de la próxima generación de aplicaciones Web 2.0 de la unificación y la integración de tecnologías, como Java Script asíncrono y XML (AJAX), Java Server Faces (JSF), Enterprise Java Beans (EJB3), Java Portlets y Business Process Management (BPM). Es un framework que integra y unifica los distintos estándares de la plataforma Java EE, pudiendo trabajar con todos ellos siguiendo el mismo modelo de programación. Ha sido diseñado intentado simplificar al máximo el desarrollo de aplicaciones, basando el diseño en POJOs con anotaciones. Estos componentes se usan desde la capa de persistencia hasta la de presentación,
20
poniendo todas las capas en comunicación directa. El núcleo principal de Jboss está formado por las especificaciones EJB3 y JSF13.
Características de JBoss:
Open source. Escalable. Alto desempeño. Arquitectura Modular. Confiable a nivel de empresa. Soporte completo para JMX (Java Management eXtensions). 2.6.3 Entorno de desarrollo jee
Plataforma de programación utilizada para desarrollar y ejecutar software de aplicaciones en el lenguaje de programación java. Utiliza una arquitectura de n-capas distribuidas apoyada ampliamente en componentes de software modulares que se ejecutan sobre un servidor de aplicaciones. La plataforma java EE esta definida por una especificación. Similar a otras especificaciones del java community process, java EE es considerado como un estándar.
Desde 2014, la versión actual de la Plataforma Java Standard Edition se le conoce como Java EE 8.
13
http://www.monografias.com/trabajos98/tecnologias-y-herramientas-desarrolloaplicaciones-web-java/tecnologias-y-herramientas-desarrollo-aplicaciones-web-java.shtml
21
2.6.3.1 APIs de Jee
Nombre
Descripción
javax.ejb
Contenedor de objetos distribuidos
javax.naming
Directorio de la interface
java.sql
Definen APIs de JDBC
java.transaction
Definen paquetes de transacción
javax.xml
Definen paquetes API JAXP
javax.jms
Definen paquetes API JMS
javax.persistence
Gestiona la interacción entre los proveedores
TABLA 1: APIs JEE
Figura 9: Arquitectura JEE
22
2.6.4 IDE de desarrollo Eclipse Luna El proyecto de eclipse Luna incluye un soporte oficial para Java 8 en las herramientas de desarrollo Java, plug-in de herramientas de desarrollo, objeto Equipos, Eclipse Marco de Comunicación, la integración Maven, xtext, Xtend, Web Tools Platform, y Memory Analyzer. El compilador de Eclipse incluye mejoras del lenguaje, búsqueda y refactorización, Quick Assist y limpiar migrar clases anónimas a las expresiones lambda y la espalda, y nuevas opciones formateador para lambdas. Características de Eclipse Luna: •
Soporte completo para Java ™ 8
•
Ofrece un nuevo tema de editores divididos, números de línea activada de forma predeterminada, y la capacidad para ocultar la barra de "acceso rápido".
•
Permite a los arquitectos crear fácilmente modelado gráfico mediante el aprovechamiento de las tecnologías Eclipse Modeling Framework (EMF) y la gráfica Modeling Framework (GMF)
•
Incluye una implementación completa del Marco de base de R6, así como varias implementaciones de servicios compendio
•
Integra el buscador de fragmento de código Snipmatch y añade la capacidad de contribuir fácilmente nuevos fragmentos de un repositorio compartido.
•
Proporciona implementaciones de código abierto de los protocolos de mensajería abiertos y estándar que apoyan las necesidades actuales y emergentes de la integración M2M con Web y middleware empresarial y aplicaciones.
•
Formas EMF como parte de la plataforma de cliente EMF ofrece una forma completamente nueva para el desarrollo eficiente de las interfaces de usuario basadas en formularios.
•
La especificación UML 2.5 es ahora compatible y diagramas UML puede ser validado en contra de la línea aérea de contacto integrado en los perfiles UML.
23
•
El banco de trabajo Eclipse ofrece un nuevo tema oscuro que incluye un ajuste de resaltado de sintaxis apropiado para el editor de varios lenguajes de programación.
•
La liberación Gyrex 1.3 ahora incluye un bus de eventos distribuidos que aprovecha el nuevo soporte WebSocket completa para la comunicación más fácil a través de los nodos de un clúster.
•
Memory Analyzer ahora analiza vuelcos de almacenamiento dinámico de Java 8, incluyendo las clases de colección de Java 8.
•
Ahora hay una aplicación independiente C / C ++ depurador añade a la CDT. Ahora es posible para depurar una aplicación a través de la línea de comandos y tener una interfaz de usuario de Eclipse depurador emergente14.
Versión
Fecha
Versión
lanzamiento
plataforma
Neon
Junio 2016
4.6
Neon projects
Mars
24/06/2015
4.5
Mars projects
Luna
25/06/2014
4.4
Luna projects
Kepler
26/06/2013
4.3
Kepler projects
Juno
27/06/2012
4.2
Juno projects
Indigo
22/06/2011
3.7
Indigoprojects
Helios
23/06/2010
3.6
Helios projects
Galileo
24/06/2009
3.5
Galileo projects
Ganymede
25/06/2008
3.4
Ganymede projects
Europa
29/06/2007
3.3
Europa projects
Callisto
30/06/2006
3.2
Callisto projects
Eclipse 3.1
28/06/2005
3.1
Eclipse 3.0
28/06/2004
3.0
Tabla 2: Versiones Eclipse
14
https://projects.eclipse.org/releases/luna&prev=search
24
de Proyectos
2.6.5 PostgreSQL
PostgreSQL es un sistema gestor de base de datos relacional y orientado a objetos, desarrollado en código abierto. Las características de postgreSql le hacen en una base de datos potente y robusta del mercado. Presenta características como: estabilidad, potencia, robustez, facilidad de administración e implementación de estándares han sido las características que más se han tenido en cuenta durante su desarrollo. PostgreSQL funciona muy bien con grandes cantidades de datos y una alta concurrencia de usuarios accediendo a la vez al sistema.
2.6.5.1 Características de PostgreSQL
Es una base de datos 100% Soporta distintos tipos de datos. Incluye herencia entre tablas. Copias de seguridad en caliente (Online/hot backups) Unicode Juegos de caracteres internacionales Regionalización por columna Multi-Version Concurrency Control (MVCC) Multiples métodos de autentificación Acceso encriptado via SSL SE-postgres Completa documentación Licencia BSD Disponible para Linux y UNIX en todas sus variantes (AIX, BSD, HPUX, SGI IRIX, Mac OS X, Solaris, Tru64) y Windows 32/64bit.
25
Ventajas de utilizar PostgreSQL Ideal para tecnologías Web. Fácil de Administrar. Su sintaxis SQL es estándar y fácil de aprender. Footprint bajo de memoria, bastante poderoso con una configuración adecuada. Multiplataforma. Capacidades de replicación de datos. Soporte empresarial disponible.
Desventajas de utilizar PostgreSQL
En comparación con MySQL es más lento en inserciones y actualizaciones, ya que cuenta con cabeceras de intersección que no tiene MySQL. Soporte en línea: Hay foros oficiales, pero no hay una ayuda obligatoria. Consume más recursos que MySQL. La sintaxis de algunos de sus comandos o sentencias no es nada intuitiva.
Figura 10: Arquitectura de PostgreSQL 26
2.6.6 Framework JavaSever faces (JSF) Es una tecnología y framework para aplicaciones web, su función se basa en simplificar
el
desarrollo
de
interfaces
de
usuario
en
aplicaciones web. JSF usa JavaServer Pages (JSP) como única tecnología que permite hacer un despliegue de las páginas, así también se puede acomodar a otras tecnologías como XUL (acrónimo de XML-based Userinterface Language, lenguaje basado en XML para la interfaz de usuario). Las JSF incluyen: Un conjunto de APIs para representar componentes de una interfaz de usuario y administrar su estado. Un conjunto por defecto de componentes para la interfaz de usuario. Dos bibliotecas de etiquetas personalizadas para JavaServer Pages que permiten expresar una interfaz JavaServer Faces dentro de una página JSP. Un modelo de eventos en el lado del servidor. Administración de estados. Beans administrados. La especificación de JSF fue desarrollada por la Java Community Process como JSR 127, que definía JSF 1.0 y 1.1, JSR 252que define JSF 1.2 y JSR 314 para JSF 2.0 OBJETIVOS Definen un conjunto simple de clases de Java para componentes de la interfaz de usuario. Proporcionan un conjunto de componentes para la interfaz de usuario, incluyendo los elementos estándares de HTML para representar un formulario. Proporcionan un modelo de JavaBeans para enviar eventos desde los controles de la interfaz de usuario del lado del cliente a la aplicación del servidor.
27
Definen APIs para la validación de entrada, incluyendo soporte para la validación en el lado del cliente. Especificar un modelo para la internacionalización y localización de la interfaz de usuario. Automatizar la generación de salidas apropiadas para el objetivo del cliente, teniendo en cuenta todos los datos de configuración disponibles del cliente, como versión del navegador15.
2.6.7 Modelador de base de datos Power Designer
Power Designer, es la herramienta de modelado número uno de la industria, permite a las empresas, de manera más fácil, visualizar, analizar y manipular metadatos, logrando un efectiva arquitectura empresarial de información. PowerDesigner para Arquitectura Empresarial también brinda un enfoque basado en modelos, el cual permite alinear al negocio con la tecnología de información, facilitando la implementación de arquitecturas efectivas de información empresarial. Brinda potentes técnicas de análisis, diseño y gestión de metadatos a la empresa. PowerDesigner combina varias técnicas estándar de modelamiento con herramientas líder de desarrollo, como .NET, Sybase WorkSpace, Sybase Powerbuilder, Java y Eclipse, para darle a las empresas soluciones de análisis de negocio y de diseño formal de base de datos. Además trabaja con más de 60 bases de datos relacionales.
15
https://es.wikipedia.org/wiki/JavaServer_Faces
28
Beneficios: Alinea el negocio y la tecnología de información para mejorar la productividad. Brinda soporta abierto a ambientes heterogéneos de todas clases. Es altamente personalizable, permitiendo acogerse a los estándares y regulaciones. Facilita la arquitectura empresarial, documentando los sistemas existentes. Aumenta la agilidad del negocio con “Link & Sync” y análisis de impacto.
29
CAPITULO III MARCO METODOLOGICO
3.1 Marco Teórico La unidad de control y registro del Instituto Superior de postgrado tiene especial importancia dentro de la estructura general de profesionales, al ser la unidad administrativa y académica encargada de la recepción, clasificación y distribución de los documentos y expedientes relacionados u originados en el Instituto, del registro de toda la información de los tesistas, de la guarda, conservación y custodia de las tesis y expedientes de los alumnos y profesores que han concluido su función activa y de extender las constancias y certificados de la información que maneje siempre que no tenga carácter de reservada.
El SISTEMA DE SEGUIMIENTO Y REGISTRO DE LOS PRODUCTOS DE INVESTIGACION REALIZADOS COMO TESIS EN EL INSTITUTO SUPERIOR DE POSTGRADO DE LA FACULTAD DE INGENIERÍA CIENCIAS FÍSICAS Y MATEMÁTICAS será la solución que agiliza los procesos de seguimiento y control, que va a proporcionar herramientas útiles para la toma de decisiones a nivel académico, e involucrará a todos los actores de la Institución.
El Instituto Superior de Postgrado encontrará en el Sistema de seguimiento y Registro de los productos de investigación realizados como tesis, un producto de calidad con valor agregado, adaptable según los solicitados.
30
requerimientos
3.2 Metodología La metodología es el conjunto de reglas y pasos estrictos que se siguen para Desarrollar una aplicación informática completa. Hay diversas metodologías, algunas incluso registradas (hay que pagar por utilizarlas). La serie de pasos a seguir son (relacionados con el ciclo de vida de la aplicación): [1] Análisis [2] Diseño [3] Codificación [4] Ejecución [5] Prueba [6] Mantenimiento
[1] Análisis El análisis estudia los requisitos que ha de cumplir el sistema. Es la fase inicial del desarrollo:
[2] Diseño En esta fase se crean esquemas que simbolizan a la aplicación. En estos esquemas se pueden simbolizar: la organización de los datos de la aplicación, el orden de los procesos que tiene que realizar la aplicación, la estructura física (en cuanto a archivos y carpetas) que utilizará la aplicación, etc.
[3] Codificación Escritura de la aplicación utilizando un lenguaje de programación (JAVA, etc.). Si se utiliza un lenguaje orientado a objetos, la herramienta de diseño debe ser una herramienta que permita utilizar objetos.
[4] Ejecución Tras la escritura del código, mediante un software especial se traduce a código interpretable por el ordenador (código máquina). En este proceso pueden detectarse errores en el código que impiden su transformación. En 31
ese caso el software encargado de la traducción (normalmente un compilador o un intérprete) avisa de esos errores para que el programador los pueda corregir.
[5] Prueba Se trata de testear la aplicación para verificar que su funcionamiento es el correcto. Para ello se comprueban todas las entradas posibles, comprobando que las salidas son las correspondientes.
[6] Mantenimiento En esta fase se crea la documentación del programa. Gracias a esa documentación se pueden corregir futuros errores o renovar el programa para incluir mejoras detectadas, operaciones que también se realizan en esta fase.
El desarrollo del proyecto a realizarse será en base al modelo en ESPIRAL, que conlleva las siguientes fases:
La atención se centra en la evaluación y reducción del riesgo del proyecto, dividiendo el proyecto en segmentos más pequeños y proporcionar más facilidad de cambio durante el proceso de desarrollo, así como ofrecer la oportunidad de evaluar los riesgos y con un peso de la consideración de la continuación del proyecto durante todo el ciclo de vida.
Cada viaje alrededor de la espiral atraviesa cuatro cuadrantes básicos:
1) Determinar objetivos, alternativas, y desencadenantes de la iteración. 2) Evaluar alternativas; Identificar y resolver los riesgos. 3) Desarrollar y verificar los resultados de la iteración. 4) Plan de la próxima iteración.
Cada ciclo comienza con la identificación de los interesados y sus 32
condiciones de ganancia y termina con la revisión.
Las herramientas de software y hardware a utilizar en el proyecto así mismo con el lenguaje de programación son: Lenguaje de programación: JAVA EE IDE de desarrollo: Eclipse Luna. framework: JavaServer Faces (JSF) Base de Datos: PostGresSql Servidor de aplicaciones: JBoss Modelador de Base de Datos: Power Designer Sistema Operativo: Windows 7 Computadora portátil (con tarjeta de red). Computadora de escritorio (con tarjeta de red). Dispositivos de almacenamiento. Impresora.
33
CAPITULO IV ESPECIFICACIONES FUNCIONALES
4.1 Modelo de la propuesta El sistema de
seguimiento y registro de los productos de investigación
realizados como tesis en el Instituto Superior de Postgrado de la Facultad de Ingeniería Ciencias Físicas y Matemática, es una herramienta útil y de fácil manejo, para los empleados, docentes y estudiantes que forman parte del instituto, así como también para personas ajenas a este ya que su información estará presente para cualquier consulta que deseen realizar. El sistema en cuestión pretende socializar a la comunidad del Instituto Superior de Postgrado a realizar proyectos de cuarto nivel, que incentiven y mejoren su calidad de vida.
4.2 Requerimientos
La toma de requerimientos es una parte fundamental en el desarrollo de aplicaciones informáticas, ya que estas definirán las funciones que harán que el sistema interactúe con el usuario de una forma ágil y que la información que va a ser ingresada en él, sea de la más confiable y segura. Ya que de eso depende un buen sistema de información y que con el tiempo ayudará a tomar decisiones futuras, y a su vez esta información esté al alcance de todos. Para la toma de requerimientos nos basamos esencialmente en tres fases:
1.
Obtención de los requerimientos por parte de los usuarios. Para ello, es necesario tener una serie de entrevistas a usuarios potenciales, en este caso los usuarios potenciales son el director del Instituto Superior de Postgrado. 34
2.
Especificar los requerimientos funcionales, en esta fase lo que se hace es ir documentando cada uno de los requerimientos funcionales del sistema, esta fase se centra más en lo que es la parte funcional del sistema. Por ejemplo, en un sistema de control del tráfico aéreo, un requerimiento funcional especificaría que una base de datos del plan de vuelo debe usarse para almacenar los planes de vuelo de todos los aviones que entran al espacio aéreo controlado.
3.
Analizar los requerimientos, estableciendo un profundo estudio de los requerimientos, de forma que se dividan en sus más pequeños componentes.
En el momento de la toma de requerimientos hay que tener en cuenta algunos puntos:
Los documentos, así como el prototipo, se pondrán bajo control de cambios a partir de su primera versión. Es fundamental no esperar a fases posteriores, ya que el versionado no es sólo para controlar lo entregado al cliente, sino que nos evita múltiples problemas, proporciona agilidad, y apenas nos quita tiempo, esto puede retrasar el desarrollo del proyecto. El prototipo no necesita tener código. Existen herramientas de prototipo basadas en flujos de acciones, flujos de procesos. Pero también las hay que simplemente dibujan pantallas, no requiere instalación16.
16
http://calidadysoftware.blogspot.com/2012/10/como-hacer-una-toma-de-requisitos.html
35
4.3 Diagramas de Casos de Uso del Sistema
Rol Administrador AUTENTIFICACION DEL SISTEMA
IDENTIFICACION Y PASSWORD
CREAR/UPDATE CATALOGOS CREAR/UPDATE CATALAGOS
CREAR/UPDATE LUGAR GEOGRAFICO CREAR/UPDATE LUGAR GEOGRAFICO ADMINISTRADOR
CREAR/UPDATE ESTUDIANTES
CREAR/UPDATE ESTUDIANTES
CREAR/UPDATE DOCENTES CREAR/UPDATE DOCENTES
Figura 11 Caso de Uso Rol Administrador
36
Caso de uso:
Ingresar al sistema
Descripción:
Ingresar Usuario y contraseña
Actores:
Secretaria del Instituto
Precondiciones:
Es Necesario que el usuario se encuentre autentificado
Flujo principal:
1. El usuario ingresa contraseña para
la
autenticación
del
sistema. 2. El Usuario ingresa la siguiente información: Usuario, contraseña 3. El sistema comprueba que los datos
estén
correctos
y
permite el ingreso al sistema. Flujo alternativo
El sistema comprueba que los datos sean correctos y los almacena, caso contrario muestra un mensaje de advertencia y permite que se ingrese nuevamente la información.
Post condiciones:
El usuario administrador es enviado al panel de opciones del sistema.
Caso de uso:
Crear Catálogos
Descripción:
Registra
Información
catálogos del sistema:
37
de
los
Actores:
Secretaria del Instituto
Precondiciones:
Necesario
que
el
usuario
se
encuentre autentificado Flujo principal
1. El
usuario
opción
para
selecciona crear
la
nuevo
catálogo. 2. El
sistema
muestra
el
formulario para ingresar la información: Facultad, Profesión, Estado Tema, nombre maestría. 3. El sistema comprueba que los datos estén correctos y los almacena. Flujo alternativo
El sistema comprueba que los datos sean correctos y los almacena, caso contrario muestra un mensaje de advertencia y permite que se ingrese nuevamente la información.
Post condiciones:
El catalogo ha sido creado.
Caso de uso:
Actualizar Catalogo.
Descripción:
El usuario actualiza la información de los catálogos del sistema.
38
Actores:
Secretaria del Instituto
Precondiciones:
Necesario
que
el
usuario
se
encuentre autentificado Flujo principal
1. El
usuario
selecciona
la
opción para actualizar un catálogo. 2. El
sistema
muestra
el
formulario con la información del catálogo a utilizar. 3. El actor actualiza la siguiente información. Facultad, Profesión, Estado Tema, nombre maestría. 4. El sistema comprueba que los datos estén correctos y los almacena. Flujo alternativo
El sistema comprueba que los datos sean correctos y los almacena, caso contrario muestra un mensaje de advertencia y permite que se ingrese nuevamente la información.
Post condiciones:
El catalogo ha sido actualizado al sistema.
Caso de uso:
Crear Lugar Geográfico.
Descripción:
El Usuario registra Información del lugar geográfico al sistema.
39
Actores:
Secretaria del Instituto
Precondiciones:
Necesario
que
el
usuario
se
encuentre autentificado Flujo principal
1. El
usuario
opción
selecciona
para
crear
la
nuevo
Lugar Geográfico. 2. El
sistema
muestra
el
formulario para ingresar la información: Id, descripción corta, descripción larga, nivel. 3. El sistema comprueba que los datos estén correctos y los almacena. Flujo alternativo
El sistema comprueba que los datos sean correctos y los almacena, caso contrario muestra un mensaje de advertencia y permite que se ingrese nuevamente la información.
Post condiciones:
El Lugar Geográfico ha sido creado.
Caso de uso:
Actualizar Lugar Geográfico.
Descripción:
El usuario actualiza la información Lugar Geográfico del sistema.
Actores:
Secretaria del Instituto
Precondiciones:
Necesario que el usuario encuentre autentificado 40
se
Flujo principal
1. El
usuario
selecciona
la
opción para actualizar un Lugar Geográfico. 2. El
sistema
muestra
el
formulario con la información del
Lugar
Geográfico
a
actualiza
la
actualizar. 3. El
usuario
siguiente información. Id, descripción corta, descripción larga, nivel. 4. El sistema comprueba que los datos estén correctos y los actualiza. Flujo alternativo
El sistema comprueba que los datos sean correctos y los almacena, caso contrario muestra un mensaje de advertencia y permite que se ingrese nuevamente la información.
Post condiciones:
El
Lugar
Geográfico
ha
sido
actualizado al sistema.
Caso de uso:
Crear Estudiante.
Descripción:
Registra Información del estudiante al sistema.
Actores:
Secretaria del Instituto
Precondiciones:
Necesario que el usuario encuentre autentificado 41
se
Flujo principal
1. El
usuario
opción
selecciona
para
crear
la
nuevo
estudiante. 2. El
sistema
muestra
el
formulario para ingresar la información: Lugar, cedula, nombres, apellidos. Teléfono, dirección, celular, facultad, profesión. 3. El sistema comprueba que los datos estén correctos y los almacena. Flujo alternativo
El sistema comprueba que los datos sean correctos y los almacena, caso contrario muestra un mensaje de advertencia y permite que se ingrese nuevamente la información.
Post condiciones:
El estudiante ha sido creado.
Caso de uso:
Actualizar Estudiante.
Descripción:
El usuario actualiza la información del Estudiante del sistema.
Actores:
Secretaria del Instituto
Precondiciones:
Necesario que el usuario encuentre autentificado
42
se
Flujo principal
1. El
usuario
selecciona
la
opción para actualizar un Estudiante. 2. El
sistema
muestra
el
formulario con la información del Estudiante a actualizar. 3. El
Usuario
actualiza
la
siguiente información. Lugar, cedula, nombres, apellidos. Teléfono, dirección, celular, facultad, profesión. 4. El sistema comprueba que los datos estén correctos y los actualiza. Flujo alternativo
El sistema comprueba que los datos sean correctos y los almacena, caso contrario muestra un mensaje de advertencia y permite que se ingrese nuevamente la información.
Post condiciones:
El Estudiante ha sido actualizado al sistema.
Caso de uso:
Crear Docente.
Descripción:
Registra Información del Docente al sistema.
Actores:
Secretaria del Instituto
Precondiciones:
Necesario que el usuario encuentre autentificado 43
se
Flujo principal
1. El
usuario
opción
selecciona
para
crear
la
nuevo
Docente. 2. El
sistema
muestra
el
formulario para ingresar la información: Lugar, cedula, nombres, apellidos. Teléfono, dirección, celular, facultad, 3. El sistema comprueba que los datos estén correctos y los almacena. Flujo alternativo
El sistema comprueba que los datos sean correctos y los almacena, caso contrario muestra un mensaje de advertencia y permite que se ingrese nuevamente la información.
Post condiciones:
El Docente ha sido creado.
Caso de uso:
Actualizar Docente.
Descripción:
Actualiza la información del docente del sistema.
Actores:
Secretaria del Instituto
Precondiciones:
Necesario que el usuario
se
encuentre autentificado Flujo principal
1. El
usuario
selecciona
la
opción para actualizar un Docente.
44
2. El
sistema
muestra
el
formulario con la información del Docente a actualizar. 3. El
usuario
actualiza
la
siguiente información. Lugar, cedula, nombres, apellidos. Teléfono, dirección, celular, facultad. 4. El sistema comprueba que los datos estén correctos y los actualiza. Flujo alternativo
El sistema comprueba que los datos sean correctos y los almacena, caso contrario muestra un mensaje de advertencia y permite que se ingrese nuevamente la información.
Post condiciones:
El Docente ha sido actualizado al sistema.
45
Rol Docente
AUTENTICACION DEL SISTEMA IDENTIFICACION Y PASSWORD
INGRESAR TEMA INGRESAR TEMA DOCENTE TUTOR
INGRESAR SEGUIMIENTO iNGRESAR SEGUIMIENTO
OBSERVAR ESTADISITCAS ESTADISITICAS
OBSERVAR SEGUIMIENTOS SEGUIMIENTOS
Figura 12: Caso de Uso Rol Docente
Caso de uso:
Ingresar al sistema
Descripción:
Ingresar Usuario y contraseña
Actores:
Docente del instituto
Precondiciones:
Necesario
que
el
usuario
se
encuentre autentificado Flujo principal:
1. El usuario ingresa contraseña para
la
autenticación
del
sistema. 2. El usuario ingresa la siguiente información:
46
Usuario, contraseña 3. El sistema comprueba que los datos
estén
correctos
y
permite el ingreso al sistema. Flujo alternativo
El sistema comprueba que los datos sean correctos y los almacena, caso contrario muestra un mensaje de advertencia y permite que se ingrese nuevamente la información.
Post condiciones:
El usuario Docente es enviado al panel de opciones del sistema.
Caso de uso:
Ingresar Tema
Descripción:
Una vez en el formulario de tema el Docente podrá escoger el tema y el estudiante al cual él va a dirigir para hacer el ingreso respectivo.
Actores:
Docente del instituto
Precondiciones:
Necesario
que el usuario
se
encuentre autentificado Flujo principal:
1. El usuario ingresa contraseña para
la
autenticación
del
sistema. 2. Usuario ingresa la siguiente información:
47
Estado, Estudiante, Maestría, Tema, fecha inicio, fecha fin, Abstract. 3. El sistema comprueba que los datos
estén
correctos
y
permite el ingreso al sistema. Flujo alternativo
El sistema comprueba que los datos sean correctos y los almacena, caso contrario muestra un mensaje de advertencia y permite que se ingrese nuevamente la información.
Post condiciones:
El tema es ingresado al sistema.
Caso de uso:
Ingresar seguimiento
Descripción:
Una vez en el formulario seguimiento el Docente podrá escoger el tema, estudiante al cual él va a dirigir, para hacer el ingreso respectivo.
Actores:
Docente del instituto
Precondiciones:
Necesario
que el usuario
se
encuentre autentificado Flujo principal:
1. El usuario ingresa contraseña para
la
autenticación
del
sistema. 2. El usuario ingresa la siguiente información:
48
Tema, Docente, fecha, Descripción documento,
observaciones
y
el
documento de revisión. 3. El sistema comprueba que los datos
estén
correctos
y
permite el ingreso al sistema. Flujo alternativo
El sistema comprueba que los datos sean correctos y los almacena, caso contrario muestra un mensaje de advertencia y permite que se ingrese nuevamente la información.
Post condiciones:
El
seguimiento
del
tema
es
ingresado al sistema.
Caso de uso:
Actualizar seguimiento
Descripción:
Una vez en el formulario seguimiento el Docente podrá escoger el tema, estudiante al cual él va a dirigir, para hacer la actualización respectiva.
Actores:
Docente del instituto
Precondiciones:
Necesario
que el usuario
se
encuentre autentificado Flujo principal:
1. El usuario ingresa contraseña para
la
autenticación
del
sistema. 2. El usuario ingresa la siguiente información:
49
Tema, Docente, fecha, Descripción documento,
observaciones
y
el
documento de revisión. 3. El sistema comprueba que los datos
estén
correctos
y
permite el ingreso al sistema. Flujo alternativo
El sistema comprueba que los datos sean correctos y los almacena, caso contrario muestra un mensaje de advertencia y permite que se ingrese nuevamente la información.
Post condiciones:
El
seguimiento
del
tema
es
actualizado al sistema.
Caso de uso:
Consultar Estadísticas
Descripción:
Una vez al hacer clic en estadísticas el sistema mostrara las gráficas de los estadísticos e imprime en pdf.
Actores:
Docente del instituto
Precondiciones:
Necesario
que el usuario
se
encuentre autentificado Flujo principal:
1. El usuario ingresa contraseña para
la
autenticación
del
sistema. 2. El sistema comprueba que los datos estén correctos los visualiza en una gráfica. 50
Flujo alternativo
El sistema comprueba que los datos sean correctos y los almacena, caso contrario muestra un mensaje de advertencia y permite que se ingrese nuevamente la información.
Post condiciones:
Las estadísticas del sistema han sido mostradas.
Caso de uso:
Consultar Seguimientos
Descripción:
Una vez al hacer clic seguimientos el sistema mostrara la información del tema y las revisiones hechas por el Docente Tutor e imprime en pdf.
Actores:
Docente del instituto
Precondiciones:
Necesario
que el usuario
se
encuentre autentificado Flujo principal:
1. El usuario ingresa contraseña para
la
autenticación
del
sistema. 2. El sistema comprueba que los datos estén correctos los visualiza en una pantalla. Flujo alternativo
El sistema comprueba que los datos sean correctos y los almacena, caso contrario muestra un mensaje de advertencia y permite que se ingrese nuevamente la información.
51
Post condiciones:
Los seguimientos y revisiones de la tesis han sido mostrados.
52
Rol Estudiante
AUTENTICACION AL SISTEMA IDENTIFICACION Y PASSWORD
VISUALIZAR TEMA ESTUDIANTE
VISUALIZAR TEMA
VISUALIZAR SEGUIMIENTO VISUALIZAR SEGUIMIENTO
Figura 13: Caso de Uso Rol Estudiante
Caso de uso:
Ingresar al sistema
Descripción:
Ingresar Usuario y contraseña
Actores:
Estudiante del instituto
Precondiciones:
Necesario
que el usuario
se
encuentre autentificado Flujo principal:
El usuario ingresa contraseña para
la
autenticación
del
sistema. El usuario ingresa la siguiente información: Usuario, contraseña El sistema comprueba que los datos
estén
correctos
y
permite el ingreso al sistema.
53
Flujo alternativo
El sistema comprueba que los datos sean correctos y los almacena, caso contrario muestra un mensaje de advertencia y permite que se ingrese nuevamente la información.
Post condiciones:
El usuario Estudiante es enviado al panel de opciones del sistema.
Caso de uso:
Visualizar Tema
Descripción:
Una vez al hacer clic en Tema el sistema mostrara la información del tema y estado en el que se encuentra su tema e imprime en pdf.
Actores:
Estudiante del instituto
Precondiciones:
Necesario
que el usuario
se
encuentre autentificado Flujo principal:
1. El usuario ingresa contraseña para
la
autenticación
del
sistema. 2. El sistema comprueba que los datos estén correctos los visualiza en una pantalla. Flujo alternativo
El sistema comprueba que los datos sean correctos y los almacena, caso contrario muestra un mensaje de advertencia y permite que se ingrese nuevamente la información.
54
Post condiciones:
El estudiante y el estado del tema han sido mostrados.
Caso de uso:
Consultar Seguimiento
Descripción:
Una vez al hacer clic seguimiento el sistema mostrara la información del tema y las revisiones hechas por el Docente Tutor e imprime en pdf.
Actores:
Estudiante del instituto
Precondiciones:
Necesario
que el usuario
se
encuentre autentificado Flujo principal:
1. El actor ingresa contraseña para
la
autenticación
del
sistema. 2. El sistema comprueba que los datos estén correctos los visualiza en una pantalla. Flujo alternativo
El sistema comprueba que los datos sean correctos y los almacena, caso contrario muestra un mensaje de advertencia y permite que se ingrese nuevamente la información.
Post condiciones:
Los seguimientos y revisiones de la tesis han sido mostrados.
55
est_id ID_LUGAR PAD_CODIGO est_cedula est_nombres est_apellidos est_telefono est_direccion est_celular AUD_USU_CREA AUD_USU_MODI AUD_FECHA_CREA AUD_FECHA_MODI
TEMA
int te_id int est_id varchar(6) PAD_CODIGO VA(13) tem_descripcion VA(64) FK_REFERENCE_9 tem_fecha_presentación VA(64) tem_fecha_maxima_aprobacion VA(10) tem_observaciones VA(64) AUD_USU_CREA VA(10) AUD_USU_MODI int AUD_FECHA_CREA int AUD_FECHA_MODI datetime datetime
PAD_CODIGO PARA_ID PAD_DES_CORT A PAD_DES_LARGA AUD_USU_CREA AUD_USU_MODI AUD_FECHA_CREA AUD_FECHA_MODI
int int varchar(6) varbinary(64) datetime datetime varbinary(255) int int datetime datetime
PARAMET RO SEGUIMIENTO
DOCENT E
LUGAR_GEOGRAFICO ID_LUGAR LUG_ID_LUGAR DES_CORTA DES_LARGA NIVEL AUD_USU_CREA AUD_USU_MODI AUD_FECHA_CREA AUD_FECHA_MODI
int int varchar(64) varchar(200) int int int datetime datetime
doc_id PAD_CODIGO PAR_PAD_CODIGO doc_nombres doc_apellidos doc_cedula doc_celular doc_telefono doc_direccion doc_estado AUD_USU_CREA AUD_USU_MODI AUD_FECHA_CREA AUD_FECHA_MODI
int varchar(6) varchar(6) VA(64) VA(64) VA(12) VA(10) VA(9) VA(64) va(4) int int datetime datetime
int va(6) va(255) va(255)
FK_REFERENCE_18
FK_REFERENCE_11
FK_RELATIONSHIP_28 FK_REFERENCE_14
varchar(6) int varchar(64) varchar(255) int int datetime datetime
FK_REFERENCE_12
te_id doc_id seg_fecha seg_documento seg_path_documento seg_observaciones AUD_USU_MODI AUD_USU_CREA AUD_FECHA_CREA AUD_FECHA_MODI
int int datetime varchar(64) varchar(255) varbinary(255) int int datetime datetime
PAR_ID PAR_DES_CORTA PAR_DES_LARGA PAR_SIMBOLO FK_RELATIONSHIP_8 AUD_USU_CREA AUD_USU_MODI AUD_FECHA_CREA AUD_FECHA_MODIF
int varchar(64) varchar(255) varchar(6) int int datetime datetime
FK_REFERENCE_15 FK_REFERENCE_16 FK_REFERENCE_17 PERFIL_RECURSO
FK_REFERENCE_13
RECU_ID PAD_CODIGO AUD_USU_CREA AUD_USU_MODI AUD_FECHA_CREA AUD_FECHA_MODIF
USUARIO usu_id emp_id PAD_CODIGO PAR_PAD_CODIGO usu_descripcion usu_login usu_password AUD_USU_CREA AUD_USU_MODI AUD_FECHA_CREA AUD_FECHA_MODI
int int varchar(6) varchar(6) VA(64) VA(16) VA(8) int int datetime datetime
FK_REFERENCE_19
FK_REFERENCE_20
int varchar(6) int int datetime datetime
CAPITULO V
ESTUDIANTE
DIAGRAMAS
56
Figura 14: Diagrama de modelo Entidad-Relación
param par_id par_nemonico par_descripcion par_valor
PARAMETRO_DET ALLE
5.1 Modelo Conceptual (modelo entidad-relación)
FK_REFERENCE_23
5.2 Diagramas de Secuencia del Modelo entidad- relación
Registro administrador
Figura 15: Diagrama de secuencia Registro administrador.
57
Crear o Actualizar Catálogos
CLIENTE
BASEDE DATOS
SERVIDOR
BASE DE DATOS
1. CREAR/UPDATE CATALOGO
1.1 RESPONSE
2. REGISTRAR CATALOGO 2.1 VALIDAR DATOS 2.1.1 PERSIST DATOS
2.1.1.1. DATOS OK
2.1.1.1.1. REGRESAR MENU
2.1.1.1.2 EXCEPCION INFORMACION NO VALIDA
Figura 16: Diagrama de secuencia crear o actualizar catalogo
58
Crear o Actualizar Lugar Geográfico
CLIENTE
BASEDE DATOS
SERVIDOR
BASE DE DATOS
1. CREAR/UPDATE LUGAR GEOGRAFICO
1.1 RESPONSE
2. REGISTRAR LUGAR GEOGRAFICO 2.1 VALIDAR DATOS 2.1.1 PERSIST DATOS
2.1.1.1. DATOS OK
2.1.1.1.1. REGRESAR MENU
2.1.1.1.2 EXCEPCION INFORMACION NO VALIDA
Figura 17: Diagrama de secuencia crear o actualizar Lugar Geográfico.
59
Crear o Actualizar Estudiante CLIENTE
BASEDE DATOS
SERVIDOR
BASE DE DATOS
1. CREAR/UPDATE ESTUDIANTE
1.1 RESPONSE
2. REGISTRAR LUGAR ESTUDIANTE 2.1 VALIDAR DATOS 2.1.1 PERSIST DATOS
2.1.1.1. DATOS OK
2.1.1.1.1. REGRESAR MENU
2.1.1.1.2 EXCEPCION INFORMACION NO VALIDA
Figura 18: Diagrama de secuencia crear o actualizar Estudiante.
60
Crear o Actualizar Docente CLIENTE
BASEDE DATOS
SERVIDOR
BASE DE DATOS
1. CREAR/UPDATE DOCENTE
1.1 RESPONSE
2. REGISTRAR LUGAR DOCENTE 2.1 VALIDAR DATOS 2.1.1 PERSIST DATOS
2.1.1.1. DATOS OK
2.1.1.1.1. REGRESAR MENU
2.1.1.1.2 EXCEPCION INFORMACION NO VALIDA
Figura 19: Diagrama de secuencia crear o actualizar Docente.
61
Autenticación docente
CLIENTE
BASEDE DATOS
SERVIDOR
BASE DE DATOS
DOCENTE TUTOR
1. PETICION HTTP
1.1 RESPONSE
2. USER AND PASS DOCENTE TUTOR 2.1 VALIDAR DATOS 2.1.1 PERSIST DATOS
2.1.1.1. DATOS OK
2.1.1.1.1. REGRESAR MENU
2.1.1.1.2 EXCEPCION INFORMACION NO VALIDA
Figura 20: Diagrama de secuencia autenticar docente.
62
Ingresar Tema CLIENTE
BASEDE DATOS
SERVIDOR
BASE DE DATOS
1. INGRESAR TEMA
1.1 RESPONSE
2. INGGRESAR DATOS VALIDOS 2.1 VALIDAR DATOS 2.1.1 PERSIST DATOS
2.1.1.1. DATOS OK
2.1.1.1.1. REGRESAR MENU
2.1.1.1.2 EXCEPCION INFORMACION NO VALIDA
Figura 21: Diagrama de secuencia ingresar tema.
63
Ingresar Seguimiento CLIENTE
BASEDE DATOS
SERVIDOR
BASE DE DATOS
1. INGRESAR SEGUIMIENTO
1.1 RESPONSE
2. INGRESAR DATOS VALIDOS 2.1 VALIDAR DATOS 2.1.1 PERSIST DATOS
2.1.1.1. DATOS OK
2.1.1.1.1. REGRESAR MENU
2.1.1.1.2 EXCEPCION INFORMACION NO VALIDA
Figura 22: Diagrama de secuencia ingresar seguimiento.
64
Visualizar Estadísticas CLIENTE
BASEDE DATOS
SERVIDOR
BASE DE DATOS
1. visualizarestadisticas
1.1 RESPONSE
2. GRAFICAS ESTADISTICAS 2.1 VALIDAR DATOS 2.1.1 PERSIST DATOS
2.1.1.1. DATOS OK
2.1.1.1.1. REGRESAR MENU
2.1.1.1.2 EXCEPCION INFORMACION NO VALIDA
Figura 23: Diagrama de secuencia visualizar estadísticas.
65
Visualizar Seguimientos CLIENTE
BASEDE DATOS
SERVIDOR
BASE DE DATOS
1. VISUALIZAR SEGUIMIENTOS
1.1 RESPONSE
2.PANTALA DE SEGUIMIENTOS 2.1 VALIDAR DATOS 2.1.1 PERSIST DATOS
2.1.1.1. DATOS OK
2.1.1.1.1. REGRESAR MENU
2.1.1.1.2 EXCEPCION INFORMACION NO VALIDA
Figura 24: Diagrama de secuencia visualizar seguimientos.
66
Autenticación Estudiante
CLIENTE
BASEDE DATOS
SERVIDOR
BASE DE DATOS
ESTUDIANTE
1. PETICION HTTP
1.1 RESPONSE
2.USUARIO Y PASSWORD ESTUDIANTE 2.1 VALIDAR DATOS 2.1.1 PERSIST DATOS
2.1.1.1. DATOS OK
2.1.1.1.1. REGRESAR MENU
2.1.1.1.2 EXCEPCION INFORMACION NO VALIDA
Figura 25: Diagrama de secuencia autenticación estudiante.
67
Visualizar Tema CLIENTE
BASEDE DATOS
SERVIDOR
BASE DE DATOS
1. VISUALIZAR TEMA
1.1 RESPONSE
2.PANTALLA DE TEMAS 2.1 VALIDAR DATOS 2.1.1 PERSIST DATOS
2.1.1.1. DATOS OK
2.1.1.1.1. REGRESAR MENU
2.1.1.1.2 EXCEPCION INFORMACION NO VALIDA
Figura 26: Diagrama de secuencia visualizar tema.
68
Visualizar Seguimientos CLIENTE
BASEDE DATOS
SERVIDOR
BASE DE DATOS
1. VISUALIZAR SEGUIMIENTOS
1.1 RESPONSE
2.PANTALA DE SEGUIMIENTOS 2.1 VALIDAR DATOS 2.1.1 PERSIST DATOS
2.1.1.1. DATOS OK
2.1.1.1.1. REGRESAR MENU
2.1.1.1.2 EXCEPCION INFORMACION NO VALIDA
Figura 27: Diagrama de secuencia visualizar seguimientos.
69
CAPITULO VI MARCO ADMINISTRATICO
6.1 Recursos
El principal recurso utilizado en el desarrollo del sistema de seguimiento y registro de los productos de investigación realizados como tesis en el Instituto Superior de Postgrado de la Facultad de Ingeniería Ciencias Físicas y Matemática, es sin duda alguna el esfuerzo humano que pone el tesista. Para el desarrollo de mi sistema se ha tomado en cuenta varios factores que ayudaron a que este proyecto termine de la mejor manera, dando lugar a llevar una correcta planificación tanto en la parte inicial como en la parte final del desarrollo de mi proyecto de investigación. Todo esto se ha cumplido de la mejor manera en el tiempo y espacio establecido. Por ley académica, para el desarrollo de la tesis solo debe ser un estudiante, con utilización de herramientas tecnológicas open source.
6.2 PRESUPUESTO
El Presupuesto constituye una de las herramientas fundamentales de las que dispone un profesional que se dedique hacer su desarrollo. En muchos casos constituye nuestra primera toma de contacto y nuestra carta de presentación de cara al cliente. Un presupuesto mal redactado o con un precio incorrecto hará que nuestra relación se acabe antes de comenzar. También es fundamental el tiempo que tardemos en entregar el presupuesto, pues si se dilata excesivamente, el cliente tomará partida por otros que ya tenga en mano. 70
No.
RUBROS DE GASTOS
CANTIDAD
VALOR UNITARIO ($)
VALOR RUBRO ($)
RECURSO HUMANO 1
Tutor de Trabajo de Graduación
60 H.
-
-
Tribunal de Trabajo de Graduación
30 H.
-
-
600 H.
-
-
Investigador Graduación) SUBTOTAL
(autor
del
trabajo
de
-
RECURSO MATERIALES Material de Escritorio:
2
- Resma de Papel
5
4.80
24.00
- Cartuchos de tinta B/N
3
42.80
128.40
- Cartuchos de tinta a color
3
42.80
128.40
- Internet
7(Meses)
55.00
385.00
- Fotocopias de Libros
400
0.15
60.00
- Transcripción Borrador Trabajo de Grado
20 H.
1.50
30.00
Material Bibliográfico:
- Documentos (Borradores, anillados, CD’s)
7 (Meses)
200.00
200.00
Empastados del Trabajo de Grado
3
20.00
60.00
SUBTOTAL
1015.80
OTROS 3
Servicios Básicos (Luz, teléfono, etc)
7(Meses)
30.00
210.00
Transporte
480
0.50
240.00
SUBTOTAL
450.00
TOTAL GASTOS
1465.80
IMPREVISTOS (12%)
175.90
TOTAL DEL PRESUPUESTO
1641.70
Tabla 4: estimación de costos. Cabe indicar que el tesista hará uso de sus propios recursos donde se hara responsable directo y cubrirá con todos los gastos planificados para el desarrollo de su proyecto de investigación.
FINANCIAMIENTO: INSTITUTO SUPERIOR DE POSTGRADO: 0.00 USD. TESISTA: 1641,70 USD.
71
6.3 CRONOGRAMA
FIGURA 28: Cronograma marco de desarrollo del proyecto
72
CAPITULO VII
CONCLUSIONES Y RECOMENDACIONES
7.1 Conclusiones
El uso correcto de la metodología planteada ayudo a culminar con el mejor de los éxitos, desde la etapa inicial hasta la etapa final en el desarrollo del sistema. La presentación final del sistema a los usuarios finales, ayudo de manera satisfactoria para que mi proyecto culminara con éxito. El sistema de seguimiento y registro de los productos de investigación realizados como tesis en el Instituto Superior de Postgrado ha sido desarrollado de tal manera que agilice el registro y procesamiento de información, así como también llevar un correcto control de las mismas.
7.2 Recomendaciones
En cualquier desarrollo de software es importante ir documentado cada fase del
proyecto, para así no tener inconvenientes durante el
desarrollo del mismo. Hay que poner mayor énfasis en las primeras etapas del desarrollo de software, ya que es ahí donde se definen las funcionalidades totales del sistema. Una aplicación web para aprovechar al máximo su funcionamiento debe ser probado en varios navegadores (Mozilla Firefox, google Chroome, etc.
73
BIBLIOGRAFIA
1. SOMMERVILLE IAN, (2005). Ingeniería del Software.
2. DEITEL, Paul; Harvey. (2008).Como programar en java Séptima Edición.
3. PRESSMAN, Roger S. MCGRAW-HILL, 2005. INGENIERÍA DEL SOFTWARE, 6ª edición
4. APLICACIONES JAVA, http://www.monografias.com/trabajos98/tecnologias-y-herramientasdesarrollo-aplicaciones-web-java/tecnologias-y-herramientas-desarrolloaplicaciones-web-java.shtml#ixzz3hQDBUZFr
5. HERRAMIENTAS DE DESARROLLO, http://www.monografias.com/trabajos98/tecnologias-y-herramientasdesarrollo-aplicaciones-web-java/tecnologias-y-herramientas-desarrolloaplicaciones-web-java.shtml
6. PLATAFORMA JAVA, https://es.wikipedia.org/wiki/Plataforma_Java
7. LENGUAJE DE MODELADO UNIFICADO, http://www.docirs.com/uml.htm
8. PATRONES DE DISEÑO, http://java.ciberaula.com/articulo/diseno_patrones_j2ee/
9. LENGUAJE DE PROGRAMACIÓN JAVA, https://es.wikipedia.org/wiki/Java_(lenguaje_de_programaci%C3%B3n)
10. FRAMEWORK JAVASERVER FACES, https://es.wikipedia.org/wiki/JavaServer_Faces
11. POSTGRESQL, http://postgresql-dbms.blogspot.com/p/limitacionespuntos-de-recuperacion.html
74
12. REQUERIMIENTOS DE SOFTWARE, http://calidadysoftware.blogspot.com/2012/10/como-hacer-una-toma-derequisitos.html
13. ECLIPSE LUNA, https://projects.eclipse.org/releases/luna&prev=search
14. DIAGRAMAS DE CONTEXTO, https://prezi.com/uvchtx3smiki/modelosde-contexto/
75
ANEXOS
76
ANEXO A MANUAL DE USUARIO 1. INTRODUCCION El propósito del presente manual es ofrecer una orientación en el empleo y manejo del Sistema de seguimiento de los productos de investigación realizados como tesis en el Instituto Superior de postgrado de la Facultad de Ingeniería Ciencias Físicas y Matemática, así de la misma manera obtener una información académica clara y precisa. Es de mucha importancia consultar la guía que contiene este manual esto ayudará al usuario a despejar todas las dudas existentes y a obtener mejores resultados en el manejo y eficacia del sistema. El presente manual comprende: Guía de todas y cada uno de los símbolos que se presentan en el sistema Conocer cómo utilizar el sistema, mediante una descripción detallada e ilustrada de las opciones.
REQUERIMIENTOS Java JDK Versión 7 (conocido también como 1.7) RAM: 128 MB Espacio en disco: 128 MB
Fuente: https://www.java.com/es/download/help/sysreq.xml JBoss Version 7 JDK 6 o superior RAM: 512 MB Espacio en disco: 100 MB disco CPU: 400 MHz
Fuente:http://docs.jboss.org/jbportal/v2.7.0/referenceGuide/html/supportedve rsions.html 77
PostgreSQL 9.4 RAM: 1 GB (en caso de ser server dedicado) Espacio en Disco: depende del crecimiento de la base de datos. CPU: 2GHz
Fuente:http://www.thoughtworks.com/products/docs/mingle/13.3/help/system _requirements.html
ACCESO AL SISTEMA Al aparecer la ventana de navegación, digitar la dirección IP del servidor, el puerto del servidor, y el nombre del proyecto.
A continuación aparecerá de manera inmediata la pantalla de ingreso al sistema.
78
Figura 29: Pantalla de Inicio del sistema
USUARIO ADMINISTRADOR Debe ingresar al sistema colocando su usuario y contraseña respectivamente. En el primer lugar vamos a trabajar con el usuario administrador: Usuario: admin Password: admin
Figura 30: Inicio sesión Administrador
79
Luego de dar clic en seguir usándola.
se podrá ingresar a la aplicación y
NOTA: mostrara un mensaje de advertencia si el usuario o el password han sido ingresado de manera errónea como se muestra en la figura.
Si el usuario y password fueron bien ingresando nos llevara a la siguiente pantalla.
Figura 31: Pantalla de Inicio Administrador Como observamos esta es la pantalla de inicio para el rol de administrador quien va ser el encargado de hacer los respectivos ingresos. El usuario administrador podrá modificar su password si así lo desee para
ello nos vamos a que se encuentra en la parte superior derecha de la pantalla de inicio.
80
Figura 32: cambio de usuario y password Administrador PANEL DE OPCIONES: En esta figura se muestras las opciones en las cuales el usuario administrador va a trabajar.
Figura 33: Lista de opciones Administrador OPCION PARAMETRO En esta opción el usuario definiría los parámetros generales del sistema es decir para nuestro caso crearemos maestrías 2015.
Para ello damos clic en registro necesario.
y se nos abrirá la pantalla para hacer el
81
Figura 34: Ingreso parámetro general del sistema
Al dar clic en éxito.
nuestro parámetro general será guardado con
Se lo puede visualizar en la siguiente pantalla.
Figura 35: Visualiza parámetro general ingresado Como observamos en nuestra pantalla existen acciones que nosotros podemos utilizar las mismas nos permitirán actualizar y borrar los parámetros que hemos ingresado.
Al hacer click en nos imprime un archivo en pdf con todos los parámetros del sistema que hemos ingresado.
82
Figura 36: Guardar Archivo pdf Listado parametros
Escogemos la opción de abrir o guardar. Y se nos visualizara.
Figura 37: Archivo pdf listado de parametros
OPCION CATALOGOS Este menú de catálogos es muy importante ya que aquí vamos a definir las entidades con las cuales vamos a trabajar en nuestro sistema, como es la de ingresar:
83
Figura 38: Opciones de Catalogo
Empezaremos ingresando un estado del empleado si se encuentra activo o no activo. Para ello damos clic en datos.
y se despliega la pantalla e ingresamos los
Figura 39: Ingreso estado empleado
Al dar clic en cómo se creó.
este será almacenado con éxito. Y observamos
84
Figura 40: Estado empleado ingresado Como observamos en nuestra pantalla existen acciones que nosotros podemos utilizar las mismas nos permitirán actualizar y borrar los parámetros que hemos ingresado.
Ahora vamos a ingresar un estado del tema esta puede estar en ingresado, rechazado o aprobado. Para ello damos clic en datos.
y se despliega la pantalla e ingresamos los
Figura 41: Ingreso estado tema
Al dar clic en cómo se creó.
este será almacenado con éxito. Y observamos
85
Figura 42: Estado tema Ingresado
Como observamos en nuestra pantalla existen acciones que nosotros podemos utilizar las mismas nos permitirán actualizar y borrar los parámetros que hemos ingresado. Ahora vamos a ingresar una facultad. Para ello damos clic en los datos.
y se despliega la pantalla e ingresamos
Figura 43: Ingreso de facultad
Al dar clic en cómo se creó.
este será almacenado con éxito. Y observamos
86
Figura 44: Facultad Ingresada
Como observamos en nuestra pantalla existen acciones que nosotros podemos utilizar las mismas nos permitirán actualizar y borrar los parámetros que hemos ingresado. Ahora vamos a ingresar un estado del docente este puede estar activo o no activo. Para ello damos clic en los datos.
y se despliega la pantalla e ingresamos
Figura 45: Ingreso Estado docente
Al dar clic en cómo se creó.
este será almacenado con éxito. Y observamos
87
Figura 46: Estado docente Ingresado
Como observamos en nuestra pantalla existen acciones que nosotros podemos utilizar las mismas nos permitirán actualizar y borrar los parámetros que hemos ingresado. Ahora vamos a ingresar un perfil este puede ser administrador docente y estudiante. Para ello damos clic en los datos.
y se despliega la pantalla e ingresamos
Figura 47: Ingreso Perfil docente
Al dar clic en cómo se creó.
este será almacenado con éxito. Y observamos
88
Figura 48: Perfil docente Ingresado Como observamos en nuestra pantalla existen acciones que nosotros podemos utilizar las mismas nos permitirán actualizar y borrar los parámetros que hemos ingresado. Ahora vamos a ingresar una profesión. Para ello damos clic en los datos.
y se despliega la pantalla e ingresamos
Figura 49: Ingreso Profesion
Al dar clic en cómo se creó.
este será almacenado con éxito. Y observamos
89
Figura 50: Profesión Ingresada
Como observamos en nuestra pantalla existen acciones que nosotros podemos utilizar las mismas nos permitirán actualizar y borrar los parámetros que hemos ingresado. Ahora vamos a ingresar un nombre de una nueva maestría. Para ello damos clic en los datos.
y se despliega la pantalla e ingresamos
Figura 51: Ingreso Nombre de Maestria
Al dar clic en cómo se creó.
este será almacenado con éxito. Y observamos
90
Figura 52: Nombre de Maestría Ingresado
Como observamos en nuestra pantalla existen acciones que nosotros podemos utilizar las mismas nos permitirán actualizar y borrar los datos que hemos ingresado.
Como podemos observar en la pantalla de catálogos existe una opción de imprimir en pdf.
Figura 53: Generar archivo pdf Listado de Catálogos
Esto nos permite generar un archivo en pdf que nos muestra la información de todos los catálogos que hemos ingresado.
91
Figura 54: Guardar archivo pdf Listado de Catalogos
Podemos guardar y visualizar el documento.
Figura 55: Archivo pdf listado de Catálogos OPCION LUGAR GEOGRAFICO En esta opción lo que vamos a ingresar es la ciudad de residencia para ello empezamos. 92
Figura 56: Visualiza Lugares Geográficos Ingresados Para ello damos clic en los datos.
y se despliega la pantalla e ingresamos
Figura 57: Ingreso Lugar Geografico
NOTA: En el campo nivel se indica la posición con la cual aparecerá los campos en nuestro caso seleccionamos nivel 1.
Al dar clic en cómo se creó.
este será almacenado con éxito. Y observamos
93
Figura 58: Lugar Geográfico Ingresado Como observamos en nuestra pantallas existen acciones que nosotros podemos utilizar las mismas nos permitirán actualizar y borrar los datos que hemos ingresado.
Como podemos observar en la pantalla de catálogos existe una opción de imprimir en pdf.
Figura 59: genera archivo pdf Listado Lugar Geografico
Esto nos permite generar un archivo en pdf que nos muestra la información de todos los catálogos que hemos ingresado.
94
Figura 60: Guardar archivo pdf Lugar
Podemos guardar y visualizar el documento.
Figura 61: Archivo pdf Lugar Geográfico OPCION ESTUDIANTE En esta opción haremos el ingreso de todos los estudiantes del Instituto.
95
Figura 62: Visualiza Estudiantes ingresados Para ello damos clic en los datos.
y se despliega la pantalla e ingresamos
Figura 63: Ingreso Estudiante
Al dar clic en cómo se creó.
este será almacenado con éxito. Y observamos
96
Figura 64: Estudiante Ingresado En caso de que por error no se haya digitado un dato el sistema nos muestra un mensaje de advertencia, para la cual tocara volver hacer el ingreso respectivo.
Figura 65: Mensaje de advertencia Estudiante
Como observamos en nuestra pantallas existen acciones que nosotros podemos utilizar las mismas nos permitirán actualizar y borrar los datos que hemos ingresado.
Como podemos observar en la pantalla de catálogos existe una opción de imprimir en pdf. 97
Figura 66: Genera pdf Listado Estudiantes Esto nos permite generar un archivo en pdf que nos muestra la información de todos los catálogos que hemos ingresado.
Figura 67: Guarda archivo pdf Listado Estudiantes
Podemos guardar y visualizar el documento.
98
Figura 68: Archivo pdf Listado Estudiantes
OPCION DOCENTE En esta opción haremos el ingreso de todos los estudiantes del Instituto.
Figura 69: Visualiza Docentes Ingresados Para ello damos clic en los datos.
y se despliega la pantalla e ingresamos
99
Figura 70: Ingreso Docente
Al dar clic en cómo se creó.
este será almacenado con éxito. Y observamos
Figura 71: Docente Ingresado
En caso de que por error no se haya digitado un dato el sistema nos muestra un mensaje de advertencia, para la cual tocara volver hacer el ingreso respectivo.
100
Figura 72: mensaje de Advertencia Docente Como observamos en nuestra pantallas existen acciones que nosotros podemos utilizar las mismas nos permitirán actualizar y borrar los datos que hemos ingresado.
Como podemos observar en la pantalla de catálogos existe una opción de imprimir en pdf.
Figura 73: Genera archivo pdf Listado Docentes Esto nos permite generar un archivo en pdf que nos muestra la información de todos los catálogos que hemos ingresado. 101
Figura 74: Guardar archivo pdf Listado Docentes Podemos guardar y visualizar el documento.
Figura 75: Archivo pdf Listado Docentes
GENERAR ESTADISITICAS Para ello vamos a la opción de estadísticas y se genera la siguiente pantalla.
102
Figura 76: Visualiza estadísticas de Maestrías
103
Figura 77: Grafico de estadísticas Maestrías por Estado
Al igual que en las anteriores opciones se puede generar archivos en pdf
104
Figura 78: Guardar archivo pdf estadisiticas
Podemos guardar y visualizar el documento.
Figura 79: archivo pdf Estadísticas
105
USUARIO DOCENTE Para el ingreso del usuario docente, este debe estar registrado en el sistema y su primer ingreso será con su número de cedula tanto para el usuario y el password. Para nuestro ejemplo utilizamos: USUARIO: 0400051363 PASSWORD: 0400051363
Figura 80: Inicio sesión Docente
Luego de dar clic en seguir usándola.
se podrá ingresar a la aplicación y
NOTA: mostrara un mensaje de advertencia si el usuario o el password han sido ingresado de manera errónea como se muestra en la figura.
Si el usuario y password fueron bien ingresando nos llevara a la siguiente pantalla.
106
Figura 81: Pantalla de inicio docente
El usuario administrador podrá modificar su password si así lo desee para
ello nos vamos a que se encuentra en la parte superior derecha de la pantalla de inicio.
Figura 82: Cambio de usuario y password docente
PANEL DE OPCIONES En esta figura se muestras las opciones en las cuales el usuario docente va a trabajar.
107
Figura 83: Opciones docente OPCION TEMA En esta opción se va a ingresar el tema del estudiante del cual el docente va a dirigir su proyecto de tesis.
Figura 84: Visualiza temas Ingresados Para ello damos clic en los datos.
y se despliega la pantalla e ingresamos
Figura 85: Ingreso de Tema
108
Al dar clic en cómo se creó.
este será almacenado con éxito. Y observamos
Figura 86: Tema Ingresado
OPCION SEGUIMIENTO En esta opción se va a proceder hacer el seguimiento respectivo del proyecto de tesis.
Figura 87: Visualiza Seguimientos Ingresados Para ello damos clic en los datos.
y se despliega la pantalla e ingresamos
Figura 88: Ingreso Seguimiento
109
Para subir el archivo pdf seleccionamos archivo.
y ubicamos el
Figura 89: Ubicamos archivo pdf a subir
Damos clic en abrir.
Figura 90: Visuliza archivo pdf a subir
Para subirlo al sistema damos click en empieza a subirse.
y el archivo
Figura 91: Archivo pdf subido
Al dar clic en cómo se creó.
este será almacenado con éxito. Y observamos
110
Figura 92: Revisión de tema Ingresada Cabe indicar que el tesista va a tener varias revisiones durante su proyecto de tesis las cuales se van a ir almacenando en el sistema hasta su culminación para nuestro ejemplo ingresamos tres revisiones tal como se indica.
Figura 93: Visualiza revisiones ingresadas
Como observamos en nuestra pantallas existen acciones que nosotros podemos utilizar las mismas nos permitirán actualizar y borrar los datos que hemos ingresado. De igual manera se puede obtener el archivo en pdf de las revisiones hechas sobre el proyecto de tesis.
Figura 94: Genera archivo pdf temas
111
Figura 95: Guardar archivo pdf Temas
Podemos guardar y visualizar el documento.
Figura 96: Archivo pdf Temas
OPCION DE SEGUIMIENTOS DE TESIS En esta opción se nos va a presentar el listado de las revisiones hechas por el docente la cual nos va a permitir descargar el documento en pdf que se subió al sistema.
112
Figura 97: Visualiza Listado de revisiones
APROBAR O RECHAZAR TEMA Para aprobar o rechazar un tema nos dirigimos a la opción tema y escogemos la siguiente acción.
Figura 98: Aprobar o rechazar tema
Nos desplegara la siguiente pantalla.
Figura 99: Aprobar o rechazar tema
Al dar clic en este será almacenado con éxito. Y observamos cómo el tema ya desaparece de la lista por cuanto ya fue aprobado.
GENERAR ESTADISITICAS Para ello vamos a la opción de estadísticas y se genera la siguiente pantalla y observamos como el proyecto de tesis ha sido aprobado.
113
Figura 100: Visualiza temas Ingresados/aprobados
USUARIO ESTUDIANTE Para el ingreso del usuario estudiante, este debe estar registrado en el sistema y su primer ingreso será con su número de cedula tanto para el usuario y el password. Para nuestro ejemplo utilizamos: USUARIO: 1721411545 PASSWORD: 1721411545
Figura 101: Ingreso Estudiante
Luego de dar clic en seguir usándola.
se podrá ingresar a la aplicación y
NOTA: mostrara un mensaje de advertencia si el usuario o el password han sido ingresado de manera errónea como se muestra en la figura.
114
Si el usuario y password fueron bien ingresando nos llevara a la siguiente pantalla.
Figura 102: Pantalla de inicio Estudiante
El usuario administrador podrá modificar su password si así lo desee para
ello nos vamos a encuentra en la parte superior derecha de la pantalla de inicio.
que se
Figura 103: Cambio de usuario y password Estudiante
PANEL DE OPCIONES En esta figura se muestras las opciones en las cuales el usuario docente va a trabajar.
115
Figura 104: Opciones Estudiante
OPCION TEMA En esta opción el estudiante solo podrá consultar el estado de su proyecto de tesis.
Figura 105: Visualiza temas Ingresados/Aprobados
En la parte acciones aprobado.
nos desplegara en detalle nuestro tema
Figura 106: detalles de tema
OPCION SEGUIMIENTO En esta opción al estudiante se le desplegara en la pantalla la lista de las revisiones periódicas que el ha presentado y su tutor ha ingresado al sistema de la misma manera podrá descargar los archivos pdf.
116
Figura 107: Visualiza revisión del estudiante
117
ANEXO B MANUAL DE INSTALACION EJECUCIÓN DEL PROGRAMA FUENTE Para la creación de la aplicación SEGUIMIENTO TESIS, se necesita tener instaladas las siguientes herramientas de desarrollo: El Kit de desarrollo de Java (JDK), en el desarrollo del sistema la versión instalada es jdk-7u45-windows-i586.exe IDE de desarrollo Eclipse, cuya versión es eclipse-jee-Luna-SR1win32.zip Servidor de Aplicaciones jboss-as-7.1.1.Final.zip Base de datos PostgreSQL 9.4.
INSTALACIÓN DEL JDK El primer paso es descargar el JDK del sitio oficial: Fuente:http://www.oracle.com/technetwork/java/javase/downloads/jdk7downloads-1880260.html
Figura 108: instalador jdk Ejecutar el archivo descargado jdk-7-windows-x64.exe, para instalar el JDK. Clic en Next.
118
Figura 109: Pantalla de bienvenida a la instalación de jdk.
Ingresar la ruta posible de instalación del software. Clic en Next.
Figura 110: Ruta de instalación y características a instalar
119
Ingresar la ruta de instalación del JRE de Java. Clic en Next.
Figura 111: Validación e Instalación de ambiente
Luego de varios minutos la instalación ha terminado con éxito. Clic en finish.
Figura 112: Instalación exitosa
120
Debe configurar las variables de entorno necesarias para levantar el servidor de aplicaciones JBoss 7.1, siguiendo los siguientes pasos: Clic en el botón Inicio. Clic derecho en Equipo y seleccionar Propiedades. Clic en Configuración avanzada del sistema. Se debe llegar a esta pantalla:
Figura 113: Propiedades del sistema operativo Clic en Variables de entorno.
121
Figura 114: Variables de Entorno
Clic en Nueva e introducir JAVA_HOME en el nombre de la variable Clic en Aceptar.
Figura 115: Nueva variable de usuario En la sección de Variables del sistema seleccionar la variable Path, dentro de esta seleccionar la opción Editar y agregar: %JAVA_HOME%\bin. Clic en Aceptar.
122
Figura 116: Variable de Entorno
Figura 117: Variable path editada Verificar que la instalación este correcta en el CMD ingresando el comando: java –versión.
123
Figura 118: Versión de java instalada
INSTALACIÓN DE POSTGRESQL 9.4 El primer paso es descargar el PostgreSQL desde el sitio oficial: http://www.postgresql.org/download/windows/
Figura 119: Instalador de postgresql
Ejecutar el archivo descargado para instalar. Si el sistema operativo necesita software complementario lo instalará previamente.
124
Figura 120: Software necesario para postgresql Clic en siguiente:
Figura 121: Pantalla de bienvenida a postgresql Ingresar el directorio de instalación de PostgresSQL. Clic en Siguiente.
125
Figura 122: Directorio de Instalación
Ingresar directorio de datos. Clic en Siguiente.
Figura 123: Directorio de datos
Ingresar la contraseña para el súper usuario, que será con la que se inicie para administrar la base de datos. Clic en Siguiente. Contraseña: admin 126
Figura 124: Contraseña de súper usuario
Ingresar el puerto para la conexión del servidor. Por defecto es 5432. Clic en Siguiente.
Figura 125: Configuración del puerto escucha
127
Clic en siguiente.
Figura 126: Configuración regional Clic en Siguiente, para empezar la instalación.
Figura 127: Instalación en proceso Clic en terminar. 128
Figura 128: Instalación finalizada
CONFIGURACIÓN DE POSTGRESQL 9.4 Acceder a PostgreSQL 9.4: botón Inicio – Todos los programas – PostgreSQL 9.4 y ejecutar el pgAdmin III.
Figura 129: Accediendo a Postgresql
129
Clic derecho sobre PostgreSQL 9.4 (localhost: 5432) y seleccionar Connect.
Figura 130: Conexión a la administración del motor de base de datos
Introducir la clave del súper usuario definida en el proceso de instalación y seleccionar OK con el password que se ingresó en la instalación.
Figura 131: Introduccion de la clave de super usuario
130
INSTALACIÓN DE JBOSS AS 7.1 El primer paso es descargar JBoss desde su página oficial: http://www.jboss.org/jbossas/downloads/
Figura 132: Instalador de jboss 7.1 Descomprimir el archivo jboss-as-7.1.1.Final.zip y copiar la carpeta en el disco (C:),
Figura 133: Directorio de jboss
Para iniciar JBoss se procede a ejecutar el archivo standalone.bat en la consola de Windows, para la consola de Linux se debe ejecutar el archivo standalone.sh que se encuentran dentro del directorio bin del servidor de aplicaciones JBoss.
131
Figura 134: Arranque de jboss as 7 en la consola de Windows
Acceder a http://localhost:8080/ para verificar que JBoss arrancó correctamente.
Figura 135: arranque de jboss as 7 en el navegador
INSTALACIÓN DEL ENTORNO DE DESARROLLO INTEGRADO ECLIPSE (LUNA) Descargar Eclipse desde el sitio oficial: http://www.eclipse.org/downloads/
Figura 136: Instalador de eclipse luna 132
Extraer el archivo comprimido y ejecutar el archivo de inicio de la aplicación eclipse.exe (Crear acceso directo en el escritorio) en Windows, carpeta en el Disco (C:),
Figura 137: Directorio de eclipse
133
CARGA Y COMPILACIÓN DEL PROYECTO
RESTAURACION DE LA BASE DE DATOS Para restaurar nuestra base de datos del proyecto debemos ejecutar PostgreSql.
Figura 138: pantalla de inicio de pgadminIII
Una vez abierto creamos una nueva base de datos con el nombre seguimiento.
134
Figura 139: Crear Base de datos.
Clic en ok.
135
Figura 140: Base de datos creada.
Observamos cómo se creó nuestra base de datos.
Ahora vamos a restaurar nuestra base de datos, para ello damos clic derecho en el nombre de la base de datos y seleccionamos la opción de restore.
136
Figura 141: Restaurar Base de Datos.
Seleccionamos el backup de nuestra base de datos.
Figura 142: Selección del backup de la base de datos
137
Figura 143: Directorio del backup
Damos clic en restore y vemos como nuestra base de datos empieza a restaurarse.
Figura 144: restauración de la Base de datos Damos clic en done para terminar la restauración Cerramos y volvemos abrir postgresql.
138
Figura 145: Base de datos restaurada
COMPILACIÓN DEL PROYECTO EN ECLIPSE LUNA
Se procede a cargar el proyecto de Java, para ello debemos seguir el procedimiento que se detalla a continuación con el objetivo de actualizar o realizar el mantenimiento del sistema: Ejecutar el IDE de desarrollo (Eclipse Luna), desde el menú de Programas o desde el acceso directo creado en el escritorio.
139
Figura 146: ejecución de eclipse Como siguiente paso,
necesita
seleccionar el espacio de
trabajo
(workspace), es decir el directorio donde se encuentra el proyecto, para este caso se ha creado una carpeta llamada Solución en la que se encuentra alojado el proyecto Seguimiento.
Figura 147: Directorio del proyecto
140
Una vez que se ha accedido a la interfaz del IDE de desarrollo se debe cargar el proyecto, para ello, en la interfaz seleccionar el menú File – Import…
Figura 148: Importar el proyecto
Escogemos la opción Exisiting Projects into Workspace y damos clic en next.
141
Figura 149: Selección del directorio del proyecto.
Seleccionamos la carpeta que contiene el proyecto y damos clic en finish.
Esperamos unos segundos y vemos como nuestro proyecto se importo correctamente.
142
Figura 150: Proyecto importado correctamente.
Es necesario crear un nuevo servidor dentro de eclipse que permita ejecutar y probar el sistema, para ello seleccionar la pestaña Servers en la parte inferior derecha de la interfaz.
Figura 151: Agregar servidor Jbos
En nuestro caso como es la primera vez que instalamos eclipse el servidor jboss debemos instalarlo, para ello damos clic en No server are available. Clic this link to créate a new server.
143
Figura 152: Instalación servidor jboss Damos clic en la opción Download aditional server adapter, esperamos que se carguen las extensiones.
144
Figura 153: Extensiones de jboss. Seleccionamos JbossAs tolos y damos clic en next.
145
Figura 154: Instalación de la extensión de jboss. Escogemos la opción de aceptar los términos de licencia y damos clic en finish.
Figura 155: Instalar extensión de Jboss Damos clic en ok.
146
Figura 156: Instalación en curso de la extensión de Jboss. Esperamos unos segundos y nos pedirá que reiniciemos eclipse damos clic en yes.
Figura 157: Instalación completada En la sección new server (clic derecho sobre la sección y seleccionar la opción en mención), tomar en cuenta que el proyecto debe ubicarse en el panel derecho como Configurado, finalizar el procedimiento.
147
Figura 158: Nuevo servidor Jboss Damos clic en next.
148
Figura 159: Selección del directorio del servidor Jboss. Seleccionamos el directorio donde se encuentra nuestro servidor Jboss y escogemos la opción de ejecución JavaSE-1.7, damos click en next.
149
Figura 160: Agrega el proyecto Seguimiento. Clic en finish y tenemos nuestro servidor JBoss instalado. Para ejecutar nuestro proyecto sobre el servidor JBoss damos clic derecho en el nombre del proyecto y escogems la opción run as.
Figura 161: Ejecución del proyecto. 150
Seleccionamos run on server.
Figura 162: Selección del servidor. Seleccionamos JBoss AS 7.1 y damos click en next.
151
Figura 163: Agregar Proyecto. Observamos cómo se agregó nuestro proyecto, damos clic en finish.
Figura 164: Iniciando Servidor. Una vez que el servidor se inició nuestro proyecto se ejecuta correctamente.
152
Figura 165: Pantalla de inicio de sección. Listo podemos seguir trabajando en nuestro proyecto.
153
ANEXO C MANUAL TÉCNICO INTRODUCCIÓN El documento actual es una herramienta de soporte técnico para la creación del Sistema de seguimiento y registro de los productos de investigación realizados como tesis. El Sistema Seguimiento es una aplicación basada en Web que permite consolidar la información de los estudiantes egresados del Instituto, además hacer uso de esta para crear y dar seguimiento a los proyectos de tesis propuestos por los mismos estudiantes para dar paso al proceso de graduación de la Maestría. Los módulos que contempla la aplicación son: Modulo Administrador El cual será el encargado de ingresar todos los parámetros iniciales del sistema además de ingresar los estudiantes y docentes del instituto. Modulo Docente Ingresa de tema Dar seguimiento del tema. Visualizar seguimientos. Aprobar o rechazar el tema de tesis. Visualizar estadísticas. Modulo Estudiante Visualizar si tema fue ingresado, aprobado o rechazado. Visualizar seguimientos. El desarrollo de estos módulos fue realizado de acuerdo a los requerimientos y funcionalidad entregada por secretariado del Instituto.
HERRAMIENTAS
154
Para la creación del Sistema Seguimiento, se
necesita instalar las
herramientas necesarias para el correcto funcionamiento que se detallan a continuación: El kit de desarrollo de Java “JDK” (La versión que se utilizó para el desarrollo es jdk1.7.0); Eclipse luna( Para el desarrollo ) Servidor de Aplicaciones jboss-as-7.1.1.Final. CARGA DEL PROYECTO EN ECLIPSE Una vez instaladas las herramientas antes mencionadas, se procede a cargar el proyecto de java, donde se podrá crear o se realiza el mantenimiento del sistema Seguimiento, para lo cual es necesario realizar los siguientes pasos: 1) Iniciar la herramienta de desarrollo Eclipse, desde el menú de Programas o desde el acceso directo que se crea en el escritorio:
2) Se presenta la ventana donde que solicita la dirección de la carpeta donde se encuentra el proyecto Seguimiento, por defecto se crea una carpeta en la unidad
donde
se
instaló
Eclipse
con
un
path
similar
a
C:\Users\BILLY\workspace, si el proyecto está en esta ubicación dar clic en Ok, caso contrario presionar sobre dar clic en Browser, y buscar la ubicación de la carpeta donde se encuentre el proyecto, en este caso se tiene una carpeta de proyectos en la unidad principal: 155
3) Cerrar la pestaña Welcome, para ingresar al entorno de desarrollo tal como se indica en la siguiente figura:
4) A continuación se realiza la carga del proyecto para lo cual es necesario dirigirse a Import en el menu File. 5) Luego se presenta un cuadro de diálogo que solicitara que tipo de proyecto se va a importar, en el cual se debe seleccionar Existing Projects into Workspace, como se muestra a continuación:
156
6) Una vez seleccionado el tipo de proyecto a importar, será necesario ingresar la ubicación en la que se encuentra; presionar en Browse para ubicar el directorio de proyecto.
157
7) Una vez seleccionado aparecerá la ubicación del proyecto a importar; seleccionar la opción Add Project to working sets, que se encuentra ubicada en la parte inferior, para copiarlo al workspace y finalmente clic en finalizar.
158
Una vez realizada esta operación con el proyecto Seguimiento se presenta el proyecto en el área de explorador de paquetes (Package Explorer) tal como se puede ver en la siguiente figura:
ESTRUCTURA DE LAS CARPETAS DEL PROYECTO Una parte importante que se debe indicar para la creación del Sistema Seguimiento, es la estructura de archivos del proyecto, y la utilización que tiene cada una de ellas, a continuación se presentará una explicación de la estructura del Proyecto Seguimiento. Una vez cargado el proyecto en Eclipse, se presenta el mismo con una estructura de carpetas que se puede apreciar en la siguiente figura:
159
Seguimiento En esta carpeta encontramos el código fuente del proyecto, dividido en subcarpetas que contienen las diferentes clases de archivos de acuerdo a su uso. Existen las siguientes subcarpetas que son: Java Resources src contiene los paquetes de la aplicación como: modelo, servicios, servicios.impl, util. El formato para nombrar al paquete esta dado en base a la siguiente especificación para estructurar de una forma ordenada los paquetes en el proyecto: Seguimiento .
160
En el paquete Controller se encuentran las clases de persistencia que hacen referencia a las entidades de la Base de Datos a través del mapeo. En el paquete Dao se encuentran las interfaces donde se definen los diferentes servicios de la aplicación. En el paquete Entity se encuentran las implementaciones de las respectivas interfaces. En el paquete util se encuentra clases comunes para proyecto como cifrado de contraseñas, constantes, etc.
La entidad (entity) de Proyectos, se describe de la siguiente manera:
161
La clase Session contienen la lógica del negocio definida en los SessionBeans con la implementación del tipo de interfaz Local, ejecutada desde el lado del servidor. Interface del Dao Proyecto
162
Implementación del Dao Proyecto
La implementación de la lógica del negocio -métodos- se la realiza en los SessionBeans. Además aquí se describen las referencias de la persistencia – esquema de Base de Datos que hace referencia al módulo- que se va utilizar, todos los EJB que se van a manejar para este SessionBean. Dentro del src, encontramos un archivo de configuración denominado hibernate.cfg.xml
163
hibernate.cfg.xml.- describe la configuración de la persistencia que se está manejando para este proyecto, hablamos de un esquema llamado: Seguimiento. El esquema maneja sus respectivas entidades.
Java Resources->SRC, contiene archivos con extensión .java, y corresponde a los bean que brindan la funcionalidad a las páginas XHTML. Su nombre se define de la siguiente manera: . Los cuales guardan información, utilizan un API para representar componentes de la Interfaz de Usuario y manejar sus estados, manejar sus eventos; también realizan la validación del lado del servidor, la conversión de datos y definir la navegación entre páginas. Por cada página XHTML existe un bean.
164
WebContent.- aquí se encuentran las páginas xhtml, los cuales darán el aspecto visual al sistema, para cada formulario. La carpeta css contiene los estilos que son utilizados en las páginas xhtml.
165
Dentro de la carpeta protected encontramos las páginas Web que presentan la interfaz para el usuario.
La subcarpeta CSS, contiene el archivo con los estilos de diseño que se manejan en el proyecto.
166
La carpeta WEB- INF, contiene archivos de configuraciones que se detallan a continuación:
167
faces - config.xml, es el archivo de configuración de jsf. web.xml, archivo de configuración de componentes del proyecto para el despliegue de la aplicación, describe al contenedor Web, sus elementos y el modo en que se accede a los mismos. Además, define aspectos de seguridad, ficheros de bienvenida, parámetros iniciales y parámetros de contexto.
168