UNIVERSIDAD CENTRAL DEL ECUADOR FACULTAD DE INGENIERÍA, CIENCIAS FÍSICAS Y MATEMÁTICA CARRERA DE INGENIERÍA INFORMÁTICA



Documentos relacionados
JAVA EE 5. Arquitectura, conceptos y ejemplos.

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.

Proyecto ELO-330 Administración Salas del Departamento de Electrónica RC1. Gerardo Lecaros Felipe Díaz

Modulo I. Introducción a la Programación Web. 1.1 Servidor Web.

MACROPROCESO GESTIÓN TECNOLÓGICA

Elementos requeridos para crearlos (ejemplo: el compilador)

1 GLOSARIO. Actor: Es un consumidor (usa) del servicio (persona, sistema o servicio).

Visión General de GXportal. Última actualización: 2009

"Diseño, construcción e implementación de modelos matemáticos para el control automatizado de inventarios

CURSO COORDINADOR INNOVADOR

SUPLEMENTO EUROPASS AL TÍTULO

PROCEDIMIENTO ESPECÍFICO. Código G Edición 0

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA

LINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN

TERMINOS DE REFERENCIA NUEVE (09) ANALISTAS PROGRAMADORES

CAPITULO I El Problema

SERVICIO NACIONAL DE APRENDIZAJE SENA SISTEMA INTEGRADO DE GESTIÓN Procedimiento Ejecución de la Formación Profesional Integral GUÍA DE APRENDIZAJE

Capítulo 5. Cliente-Servidor.

Diseño dinámico de arquitecturas de información

1 EL SISTEMA R/3 DE SAP AG

Modificación y parametrización del modulo de Solicitudes (Request) en el ERP/CRM Compiere.

Capitulo III. Diseño del Sistema.

WINDOWS : TERMINAL SERVER

La interoperabilidad se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la

Capitulo 5. Implementación del sistema MDM

SISTEMAS DE INFORMACIÓN II TEORÍA

CAPÍTULO I INTRODUCCIÓN

Anexo 4 Documento de Arquitectura

PROGRAMA FORMATIVO Desarrollo de aplicaciones empresariales Java J2EE 7 (ORACLE)

Sistema de Información Integrada del Área Social

Estándares para el Uso de Herramientas de Desarrollo y Plataformas de Aplicaciones Web

Proceso Unificado de Rational PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes:

App para realizar consultas al Sistema de Información Estadística de Castilla y León

PROGRAMA FORMATIVO Desarrollo de aplicaciones Web Java: WebServices con J2EE

Manual PARA EL ADMINISTRADOR DE LA WEB DE PRÁCTICAS PRE PROFESIONALES Y PASANTÍAS

PORTAL DE INTEGRACIÓN DE BANCOS DE INFORMACIÓN DISPERSOS A TRAVÉS DE WEB SERVICES Autor: Ing. Walther Antonioli Ravetto

La utilización de las diferentes aplicaciones o servicios de Internet se lleva a cabo respondiendo al llamado modelo cliente-servidor.

TEMA: DESARROLLO DE APLICACIONES WEB INTERACTIVAS UTILIZANDO LA TÉCNICA AJAX AUTOR: MERY SUSANA ZAMBONINO BAUTISTA

Metodología básica de gestión de proyectos. Octubre de 2003

Introducción al Desarrollo de Aplicaciones Web D R A. M A R I C E L A B R A V O

TECNÓLOGO EN INFORMÁTICA PLAN DE ESTUDIOS

A continuación resolveremos parte de estas dudas, las no resueltas las trataremos adelante

Desarrollo y servicios web Sesión 18

Capítulo 2. Planteamiento del problema. Capítulo 2 Planteamiento del problema

Sistema de gestión de tareas y proyectos

Workflows? Sí, cuántos quiere?

ORBERE. Memoria Técnica del Aplicativo de Gestión de la producción para ADIMDE

Windows Server Windows Server 2003

Guía de Apoyo Project Web Access. (Jefe de Proyectos)

UNIVERSIDAD CENTRAL DEL ECUADOR FACULTAD DE INGENIERÍA, CIENCIAS FÍSICAS Y MATEMÁTICA CARRERA DE INGENIERÍA INFORMÁTICA

Introducción a la Firma Electrónica en MIDAS

BearSoft. SitodeCloud. Rafael Rios Bascón Web: Móvil:


Plataforma desarrollo Java Formación elearning tutorizada en castellano. Fabricante: Java Grupo: Desarrollo Subgrupo: Master Java

PROGRAMA FORMATIVO Desarrollo de aplicaciones Móviles Java ME

Solución de una Intranet bajo software Open Source para el Gobierno Municipal del Cantón Bolívar [IOS-GMCB] Gobierno Municipal del Cantón Bolívar

Los mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas:

MS Project aplicado al Control de Proyectos

Capítulo VI. Conclusiones. En este capítulo abordaremos la comparación de las características principales y

Windows Server 2012: Infraestructura de Escritorio Virtual

Resumen General del Manual de Organización y Funciones

1. Definición. Open Source. Escalable. Alto desempeño. Arquitectura Modular. Producto de licencia de código abierto sin coste adicional.


E-learning: E-learning:

Capítulo I. Marco Teórico

OLIMPO Servidor Universal

1 Índice Introducción Propósito Alcance Modelo Arquitectónico Inicial... 3

Servinómina. Servicio de Visualización de Nóminas. (Servinómina) Agosto de Página 1 de 8 MINISTERIO DE HACIENDA Y ADMINISTRACIONES PÚBLICAS

CONCLUISIONES Y RECOMENDACIONES

Práctica 6 - Página Web

SUPLEMENTO EUROPASS AL TÍTULO

Sistema de marketing de proximidad

CAPITULO 4. ANALISIS COMPARATIVO Y SELECCION DE LA PLATAFORMA EDUCATIVA.

CONTRATACIÓN DESARROLLO DE APLICACIÓNES PARA DISPOSITIVOS MOVILES

Universidad de Carabobo Facultad Experimental de Ciencias y Tecnología Licenciatura en Computación

Arquitectura. 1.- Aplicaciones Web. Definición. Arquitectura clásica. Contenidos. 1.- Aplicaciones Web

Curso de Spring Framework

Curso Online de Microsoft Project

e-commerce, es hacer comercio utilizando la red. Es el acto de comprar y vender en y por medio de la red.

Primer avance de proyecto de software para la gestión de inscripciones en cursos

1. INTRODUCCIÓN Y OBJETIVOS

Sistema de Gestión de Proyectos Estratégicos.

<Generador de exámenes> Visión preliminar

Resumen de la solución SAP SAP Technology SAP Afaria. Gestión de la movilidad empresarial para mayor ventaja competitiva

Seminario Electrónico de Soluciones Tecnológicas sobre VPNs de Extranets

CAPÍTULO 3 VISUAL BASIC

I. OBJETIVOS INTRODUCCIÓN. Oscar Daniel Camuendo Vásquez

Documento de Arquitectura de Software. KunaySoft. Autores: Juan Camilo González Vargas. Javier Leonardo Parra Laguna

Unidad 1. Fundamentos en Gestión de Riesgos

CAPITULO IV CONCLUSIONES Y RECOMENDACIONES

INTRANET DE UNA EMPRESA RESUMEN DEL PROYECTO. PALABRAS CLAVE: Aplicación cliente-servidor, Intranet, Área reservada, Red INTRODUCCIÓN

REGISTRO DE PEDIDOS DE CLIENTES MÓDULO DE TOMA DE PEDIDOS E INTEGRACIÓN CON ERP

Guía de instalación 1

Herramienta de Gestión Integral de E-Business

Acerca de esté Catálogo

Ingeniería de Software. Pruebas

PREPARATORIA DIURNA DE CUAUTLA

FAMILIA PROFESIONAL: Informática y Comunicación CICLO SUPERIOR DESARROLLO DE APLICACIONES WEB DAW 350 HORAS

Artículos técnicos Grupo Danysoft: Soporte de Servidores de Aplicaciones con JBuilder

Técnica 2(Instrumental)

Transcripción:

UNIVERSIDAD CENTRAL DEL ECUADOR FACULTAD DE INGENIERÍA, CIENCIAS FÍSICAS Y MATEMÁTICA CARRERA DE INGENIERÍA INFORMÁTICA IMPLEMENTACIÓN DEL MÓDULO VINCULACIÓN CON LA SOCIEDAD PARA LA FÁCULTAD DE CULTURA FÍSICA DE LA UNIVERSIDAD CENTRAL DEL ECUADOR TRABAJO DE GRADUACIÓN PREVIO A LA OBTENCIÓN DEL TÍTULO DE INGENIERO INFORMÁTICO AUTOR: German Patricio Romero Quishpe TUTOR: Ing. René Alfonso Carrillo Flores, MSc. QUITO ECUADOR 2015

DEDICATORIA Al creador, que me ha dado fortaleza para seguir adelante en los momentos difíciles y de los cuales me ha enseñado a valorarlo cada día más. A mis padres Luís Romero y Rosario Quishpe quienes son el pilar más importante en mi vida y que día a día realizaron sus mayores esfuerzos para que yo pueda cumplir mis sueños; a ellos que siempre tuvieron una palabra de aliento en los momentos difíciles y que han sido incentivo en mi vida. A mi precioso hijo Derek Romero para quien ningún sacrificio es suficiente, que con su luz ha iluminado mi vida y hace mi camino más claro, quien fue el motor de motivación e incentivo emocional durante el desarrollo de este proyecto. A mi hermano Alexis Romero quien ha sabido darme fuerza y valor para no rendirme y cumplir los objetivos deseados. A mi abuelita y tía, Rosa Pedraza e Inés Quishpe, quienes con su infinito amor supieron cuidarme y protegerme a lo largo de mi infancia. A mi esposa, quien forma parte de mi vida, que con su apoyo constante y amor incondicional ha sido amiga y compañera inseparable, fuente de sabiduría, calma y consejo en todo momento. Germán Romero Q. ii

AGRADECIMIENTO Le doy gracias a mis padres por apoyarme en todo momento, por los valores que me han inculcado, por ser un excelente ejemplo de vida a seguir y por haberme dado la oportunidad de tener una excelente educación en el transcurso de mi vida. A las autoridades pertinentes de la Facultad de Educación Física de la Universidad Central del Ecuador por abrirme las puertas y brindarme la oportunidad de realizar este proyecto. A mi director y revisores de tesis, muchas gracias por los consejos y guías realizadas para la culminación de este proyecto. A la poderosa Universidad Central del Ecuador, Facultad de Ingeniería, Ciencias y Matemática, gracias por brindarme la oportunidad de formarme en tus prestigiosas aulas. Finalmente quiero agradecer a todas las personas que de una u otra forma colaboraron con mi persona durante toda mi vida estudiantil. Germán Romero Q. iii

AUTORIZACIÓN DE LA AUTORÍA INTELECTUAL Yo, GERMÁN PATRICIO ROMERO QUISHPE en calidad de autor del trabajo de investigación o tesis realizada sobre: SISTEMA PARA SEGUIMIENTO Y CONTROL DE GESTIONES DE LA VINCULACIÓN CON LA SOCIEDAD DE LA FACULTAD DE CULTURA FÍSICA DE LA UNIVERSIDAD CENTRAL DEL ECUADOR, por la presente autorizo a la UNIVERSIDAD CENTRAL DEL ECUADOR, hacer uso de todos los contenidos que me pertenecen o de parte de los que contiene esta obra, con fines estrictamente académicos o de investigación. Los derechos que como autor me corresponden, con excepción de la presente autorización, seguirán vigentes a mi favor, de conformidad con lo establecido en los artículos 5, 6, 8, 19 y demás pertinentes de la Ley de Propiedad Intelectual y su Reglamento. Quito, 19 días del mes de febrero de 2015. Germán Patricio Romero Quishpe C.I.: 1720812633 iv

CERTIFICACIÓN TUTOR v

INFORME FINAL POR PARTE DEL TUTOR vi

RESULTADO DEL TRABAJO DE GRADUACIÓN vii

CONTENIDO CONTRAPORTADA... i DEDICATORIA... ii AGRADECIMIENTO... iii AUTORIZACIÓN DE LA AUTORÍA INTELECTUAL... iv CERTIFICACIÓN TUTOR... v INFORME FINAL POR PARTE DEL TUTOR... vi RESULTADO DEL TRABAJO DE GRADUACIÓN... vii CONTENIDO... viii LISTA DE FIGURAS... xii LISTA DE TABLAS... xviii RESUMEN... xix ABSTRACT... xx CERTIFICADO DE TRADUCCIÓN... xxi CERTIFICADO DE FINALIZACIÓN Y ACEPTACIÓN POR PARTE DE LA FACULTAD DE CULTURA FÍSICA... xxiii INTRODUCCIÓN... 1 CAPÍTULO I... 3 1. PRESENTACIÓN DEL PROBLEMA... 3 1.1 PLANTEAMIENTO DEL PROBLEMA... 3 1.2 FORMULACIÓN DEL PROBLEMA... 3 1.3 SISTEMATIZACIÓN DEL PROBLEMA... 3 1.4 OBJETIVOS... 4 1.4.1 OBJETIVO GENERAL... 4 1.4.2 OBJETIVOS ESPECÍFICOS... 4 1.5 JUSTIFICACIÓN... 5 1.6 PROCESOS (APUNTE 2013)... 5 1.6.1 LA PRÁCTICA PREPROFESIONAL... 5 1.6.2 LA PASANTÍA TÉCNICA... 7 1.6.3 EL TRABAJO COMUNITARIO... 7 CAPÍTULO II... 9 2. MARCO TEÓRICO... 9 2.1 ANTECEDENTES... 9 viii

2.2 ANTECEDENTES DEL PROCESO DE SEGUIMIENTO A ESTUDIANTES EGRESADOS/GRADUADOS E INSERCIÓN LABORAL EN LA FACULTAD DE CULTURA FÍSICA... 10 2.3 HIPÓTESIS DE LA INVESTIGACIÓN... 10 2.4 FUNDAMENTACIÓN TEÓRICA... 10 2.4.1 APLICACIÓN WEB... 11 2.4.2 ARQUITECTURA DE UNA APLICACIÓN WEB... 11 2.4.3 INDEPENDENCIA DE CAPAS... 12 2.4.4 SERVICIO WEB... 13 2.4.5 SERVIDOR DE APLICACIONES... 14 2.4.6 ARQUITECTURA DE SIVSOFT... 18 2.4.7 LENGUAJE DE PROGRAMACIÓN JAVA... 21 2.4.8 PLATAFORMA JAVA... 22 2.4.9 MÁQUINA VIRTUAL JAVA JVM... 23 2.4.10 JSF JAVA SERVER FACES... 25 2.4.11 CASOS DE USO... 29 2.4.12 POSIBLES METODOLOGÍAS DE DESARROLLO DE SOFTWARE.30 CAPÍTULO III... 35 3. DISEÑO METODÓLOGICO... 35 3.1 DESCRIPCIÓN DE LA METODOLOGÍA PARA EL DESARROLLO DE SIVSOFT... 35 3.1.1 PROCESO UNIFICADO DE DESARROLLO DE SOFTWARE (RUP)...... 36 3.1.2 FASES DE LA METODOLOGÍA DE DESARROLLO RUP... 38 3.1.3 PLANIFICACIÓN DE FASES... 44 3.2 ESPECIFICACIONES DE SIVSOFT... 45 3.2.1 SENTENCIAS: SIVSOFT... 45 3.3 ANÁLISIS DE REQUERIMIENTOS... 47 3.4 REQUERIMIENTOS ESPECÍFICOS... 48 3.4.1 USABILIDAD DEL SISTEMA... 48 3.4.2 SEGURIDAD... 48 3.4.3 FUNCIONES... 48 3.5 MODELADO DEL ANÁLISIS... 49 ix

3.5.1 IDENTIFICACIÓN DE USUARIOS... 51 3.5.2 CASOS DE USO... 52 3.5.3 DIAGRAMAS Y CASOS DE USO DE SIVSOFT... 53 3.6 DIAGRAMAS DE SECUENCIA... 73 CAPÍTULO IV... 83 4. HERRAMIENTAS DE DESARROLLO... 83 4.1 INSTALACIÓN DE LAS HERRAMIENTAS DE DESARROLLO EMPLEADAS EN SIVSOFT... 83 4.1.1 INSTALACIÓN DEL JDK... 84 4.1.2 INSTALACIÓN DE POSTGRESQL 9.3.3-1... 92 4.1.3 CONFIGURACIÓN DE POSTGRESQL 9.3.3-1... 99 4.1.4 INSTALACIÓN DE JBOSS AS 7.1... 106 4.1.5 CONFIGURACIÓN DATASOURCE JBOSS AS 7.1... 109 4.1.6 INSTALACIÓN DEL ENTORNO DE DESARROLLO INTEGRADO ECLIPSE (INDIGO)... 113 4.1.7 INSTALACIÓN DE PENTAHO REPORT DESIGNER 5.2.0... 114 4.2 JAVASERVER FACES (JSF 2.0)... 117 4.3 PRIMEFACES... 118 4.4 AJAX... 118 4.5 JQUERY... 118 4.6 JAVA PERSISTENCE API... 119 4.7 ENTERPRISE JAVABEANS (EJB 3.1)... 119 CAPÍTULO V... 122 5. FUNCIONAMIENTO E IMPLEMENTACIÓN DEL SISTEMA... 122 5.1 DESCRIPCIÓN GENERAL DEL SISTEMA... 122 5.1.1 DESCRIPCIÓN DE SIVSOFT... 122 5.2 IMPLEMENTACIÓN DE SIVSOFT... 123 5.2.1 REQUERIMIENTOS DE HARDWARE Y SOFTWARE... 123 5.3 USO DEL SISTEMA... 123 5.3.1 MÓDULO ESTUDIANTES, EGRESADOS: ESTUDIANTES/ EGRESADOS/ INSTITUCIONES... 124 5.3.2 MÓDULO VINCULACIÓN... 131 5.3.3 MÓDULO ADMINISTRADOR... 150 5.3.4 CAMBIAR CONTRASEÑA... 156 x

CAPÍTULO VI... 157 6. CONLUSIONES Y RECOMENDACIONES... 157 6.1 CONCLUSIONES... 157 6.2 RECOMENDACIONES... 158 BIBLIOGRAFÍA... 159 ANEXOS... 161 ANEXO A... 162 1. MARCO ADMINISTRATIVO... 162 ANEXO B:... 165 2. BASE DE DATOS: SIVSOFT... 165 ANEXO C... 168 3. MANUAL TÉCNICO: SIVSOFT... 168 xi

LISTA DE FIGURAS CAPÍTULO I. 8 Figura 1.1 Comisión de Vinculación con la Sociedad...8 CAPÍTULO II. 9 Figura 2.1 Arquitectura tradicional de una Aplicación Web... 12 Figura 2.2 Estándares empleados en un Servicio Web... 14 Figura 2.3 Ecosistema CDI (Java EE 6)... 16 Figura 2.4 Arquitectura de SIVSOFT... 20 Figura 2.5 Componentes para la programación en Java... 21 Figura 2.6 Plataforma Java... 22 Figura 2.7 Progreso para desarrollo de un programa... 23 Figura 2.8 Arquitectura de JVM... 24 Figura 2.9 JSF Eventos y Navegación... 25 Figura 2.10 Ciclo de Vida del JSF... 28 Figura 2.11 Ciclo de Vida de RUP... 31 Figura 2.12 Esquema de trabajo SCRUM... 32 Figura 2.13 Esquema de trabajo ICONIX... 34 CAPÍTULO III..35 Figura 3.1 Arquitectura de RUP... 37 Figura 3.2 Fases de la metodología de desarrollo RUP... 38 Figura 3.3 Flujo de la Fase Inicial... 39 Figura 3.4 Flujo de la Fase de Elaboración... 39 Figura 3.5 Flujo de trabajo en la Fase de Elaboración... 40 Figura 3.6 Flujo de la Fase de Construcción... 41 Figura 3.7 Flujo de trabajo en la Fase de Construcción... 41 Figura 3.8 Flujo de la Fase de Transición... 42 Figura 3.9 Flujo de trabajo en la Fase de Transición... 43 Figura 3.10 Fases y Objetivos RUP... 44 Figura 3.11 Ciclo de Vida RUP a través del tiempo... 44 xii

Figura 3.12 Relaciones de trazabilidad entre los modelos de negocio y de requisitos.... 50 Figura 3.13 Flujo de trabajo de los Casos de Uso... 52 Figura 3.14 Diagrama de Casos de Uso General para el Módulo Administrador... 53 Figura 3.15 Diagrama de Casos de Uso General para el Módulo Vinculación... 54 Figura 3.16 Diagrama de Casos de Uso General para el Módulo Estudiante Supervisor... 55 Figura 3.17 Diagrama de Casos de Uso para el registro de documentos habilitantes. 56 Figura 3.18 Diagrama de Casos de Uso: Actualización Tipo Gestión Académica... 57 Figura 3.19 Diagrama de Casos de Uso: Ingreso y Actualización del Periodo Académico... 59 Figura 3.20 Diagrama de Casos de Uso: Ingreso, En Proceso y Aprobación de la Práctica Preprofesional... 60 Figura 3.21 Diagrama de Casos de Uso: Ingreso, En Proceso y Aprobación de la Pasantía... 61 Figura 3.22 Diagrama de Casos de Uso: Ingreso, En Proceso y Aprobación del Desarrollo Comunitario... 63 Figura 3.23 Diagrama de Casos de Uso: Registro y Activación del Estudiante... 65 Figura 3.24 Diagrama de Casos de Uso: Registro y Activación del Supervisor... 66 Figura 3.25 Diagrama de Casos de Uso: Registro y Activación de la Institución... 68 Figura 3.26 Diagrama de Casos de Uso: Gestionar Ingreso de Usuarios... 70 Figura 3.27 Diagrama de Casos de Uso: Generar Reportes... 72 Figura 3.28 Diagrama de Secuencia: Iniciar Sesión... 74 Figura 3.29 Diagrama de Secuencia: Registro Documentos Requeridos... 75 Figura 3.30 Diagrama de Secuencia: Registro Periodo Académico... 76 Figura 3.31 Diagrama de Secuencia: Registro, Activación de Estudiante Supervisor Institución... 77 Figura 3.32 Diagrama de Secuencia: Registro, En Proceso y Aprobación de una Gestión Académica... 78 Figura 3.33 Diagrama de Secuencia: Registro y Asignación de perfiles de usuarios.. 79 Figura 3.34 Diagrama de Secuencia: Generación de Reportes... 80 xiii

CAPÍTULO IV......83 Figura 4.1 Pantalla de bienvenida a la instalación del JDK... 84 Figura 4.2 Ruta de instalación y características a instalar... 85 Figuras 4.3 Validación e Instalación del ambiente... 86 Figura 4.4 Asignar dirección instalación del JDK... 86 Figura 4.5 Progreso de la Instalación del software... 87 Figura 4.6 Instalación exitosa... 87 Figura 4.7 Propiedades del Sistema Operativo... 88 Figura 4.8 Variables de entorno... 89 Figura 4.9 Nueva variable de usuario... 89 Figura 4.10 Variable Path editada... 90 Figura 4.11 Versión de Java instalada... 90 Figura 4.12 Componentes en sistema PostgreSQL... 91 Figura 4.13 Software necesario para PostgreSQL... 93 Figura 4.14 Pantalla de bienvenida a PostgreSQL... 94 Figura 4.15 Directorio de Instalación... 94 Figura 4.16 Directorio de Datos... 95 Figura 4.17 Contraseña de Superusuario... 95 Figura 4.18 Configuración de puerto escucha... 96 Figura 4.19 Configuración Regional... 96 Figuras 4.20 Instalación en Proceso... 97 Figura 4.21 Instalación Finalizada... 98 Figuras 4.22 Stack Builder... 99 Figuras 4.23 Accediendo a PostgreSQL 9.3.3-1... 99 Figura 4.24 Conexión a la administración del motor de base de datos... 100 Figura 4.25 Introducción de clave de súper usuario... 100 Figura 4.26 Nueva Base de Datos... 101 Figura 4.27 Nombre de la Nueva Base de Datos... 101 Figura 4.28 Restauración del backup... 102 Figuras 4.29 Selección del archivo correspondiente al backup... 103 Figura 4.30 Backup de la base de datos restaurado... 104 Figura 4.31 Arquitectura de Jboss AS 7... 105 Figuras 4.32 Directorios de JBoss As 7... 107 Figuras 4.33 Arranque de JBoss As 7 en el consola de Windows... 108 xiv

Figura 4.34 Arranque de JBoss As 7 en el navegador... 109 Figura 4.35 Editar module.xml... 110 Figura 4.36 Editar standalone.xml... 111 Figura 4.37 Configuración final de datasource... 112 Figuras 4.38 Pantallas de bienvenida de Eclipse Indigo... 113 Figuras 4.39 Carpeta de archivos de Pentaho Report Designer... 114 Figuras 4.40 Pantalla de Bienvenida de Pentaho Report Designer... 115 Figuras 4.41 Pantalla para generar un nuevo reporte... 115 Figuras 4.42 Pantalla para crear una nueva conexión a una base de datos... 116 Figuras 4.43 Pantalla ingreso de datos para la conexión a postgres... 117 Figuras 4.44 Pantalla de conexión exitosa... 117 Figura 4.45 Arquitectura de EJB... 120 Figura 4.46 Session Bean... 121 CAPÍTULO V. 122 Figura 5.1 Pantalla de Inicio de SIVSOFT... 125 Figura 5.2 Módulo Estudiantes - Supervisores... 125 Figura 5.3 Búsqueda de Estudiantes... 126 Figuras 5.4 Registro de Estudiante... 127 Figura 5.5 Activar Estudiante... 127 Figuras 5.6 Registro de Supervisor... 128 Figura 5.7 Activar Supervisor... 129 Figuras 5.8 Registro de Instituciones... 130 Figuras 5.9 Registro de la Práctica Preprofesional... 133 Figura 5.10 Asignar una Institución a la Práctica Preprofesional... 133 Figuras 5.11 Adjuntar documentos Habilitantes a la Práctica Preprofesional... 135 Figura 5.12 Aprobar una Práctica Preprofesional... 136 Figura 5.13 Generación del formato de una Práctica Preprofesional aprobada... 137 Figuras 5.14 Registro de una Pasantía... 139 Figura 5.15 Asignar una Institución a una Pasantía... 139 Figura 5.16 Adjuntar documentos Habilitantes a la Pasantía... 140 Figura 5.17 Aprobar una Pasantía... 141 Figura 5.18 Generación del formato de una Pasantía aprobada... 142 Figuras 5.19 Registro del Desarrollo Comunitario... 144 xv

Figura 5.20 Asignar una Institución al Desarrollo Comunitario... 144 Figura 5.21 Adjuntar documentos Habilitantes al Desarrollo Comunitario... 145 Figura 5.22 Aprobar un Desarrollo Comunitario... 146 Figura 5.23 Generación del formato de un Desarrollo Comunitario... 147 Figura 5.24 Tabla del Tipo de Gestión Académica... 148 Figura 5.25 Actualización de datos de una Gestión Académica... 149 Figura 5.26 Tabla Tipo Documento Requerido... 149 Figuras 5.27 Registro de un Documento Requerido... 150 Figura 5.28 Tabla del Periodo Académico... 150 Figura 5.29 Registro o Actualización de un Periodo Académico... 151 Figura 5.30 Módulo Administrador... 152 Figuras 5.31 Parámetros de la Aplicación... 153 Figuras 5.32 Registro o Actualización de Usuarios... 154 Figura 5.33 Asignación de Perfiles... 155 Figuras 5.34 Perfiles... 156 Figuras 5.35 Reportes... 157 Figura 5.36 Cambiar Contraseña... 158 xvi

LISTA DE TABLAS CAPÍTULO II. 9 Tabla 2.1 Comparación de los Servidores de aplicaciones Java EE... 17 CAPÍTULO III..35 Tabla 3.1 Definición del Problema... 45 Tabla 3.2 Posicionamiento de SIVSOFT... 46 Tabla 3.3 Identificación de Usuarios... 51 Tabla 3.4 Caso de Uso: Registro de documentos Habilitantes... 56 Tabla 3.5 Caso de Uso: Actualización Tipo Gestión Académica... 58 Tabla 3.6 Caso de Uso: Ingreso y Actualización del Periodo Académico... 59 Tabla 3.7 Caso de Uso: Ingreso, En Proceso y Aprobación de la Práctica Preprofesional... 61 Tabla 3.8 Caso de Uso: Ingreso, En Proceso y Aprobación de la Pasantía... 62 Tabla 3.9 Caso de Uso: Ingreso, En Proceso y Aprobación del Desarrollo Comunitario... 64 Tabla 3.10 Caso de Uso: Registro y Activación del Estudiante... 66 Tabla 3.11 Caso de Uso: Registro y Activación del Supervisor... 67 Tabla 3.12 Caso de Uso: Registro y Activación de la Institución... 69 Tabla 3.13 Caso de Uso: Gestionar Ingreso de Usuarios... 71 Tabla 3.14 Caso de Uso: Generar Reportes... 72 xviii

RESUMEN IMPLEMENTACIÓN DEL MÓDULO VINCULACIÓN CON LA SOCIEDAD PARA LA FÁCULTAD DE CULTURA FÍSICA DE LA UNIVERSIDAD CENTRAL DEL ECUADOR El presente proyecto tiene como finalidad dotar al personal del departamento de Vinculación de la Facultad de Cultura Física de la Universidad Central del Ecuador, de una herramienta informática denominada SIVSOFT, que consiste en una aplicación web JEE6 que permita dar un seguimiento y control adecuado de las gestiones que realicen los estudiantes en el ámbito social, es decir Prácticas Preprofesionales, Pasantías y Desarrollo Comunitario. El presente sistema se estará desarrollando bajo la metodología RUP, con herramientas libres de licenciamiento comercial como: JBoss AS7 - EJB 3.1 - Hibernate (JPA 2.0) - JSF 2.0 (Primefaces 3.5) HTML JavaScript jquery - PostgreSQL 9.3.3 - Elipse Indigo. Se documentará todo el proceso de construcción del aplicativo desde el análisis de los requerimientos de usuario, gestión del proyecto, análisis, diseño, desarrollo e implementación y se planteará las conclusiones y recomendaciones para garantizar el correcto funcionamiento de SIVSOFT. DESCRIPTORES: METODOLOGÍA DE DESARROLLO RUP / JEE6 / SIVSOFT / SERVIDOR DE APLICACIONES JBoss AS7 / ARQUITECTURA N CAPAS / SERVICIOS WEB / PostgreSQL xix

ABSTRACT IMPLEMENTATION OF MODULE RELATIONSHIP WITH SOCIETY OF THE CULTURE PHYSICAL FACULTY OF THE CENTRAL UNIVERSITY OF ECUADOR This project tries to provide the operation s personnel department of the CULTURE FHYSICAL FACULTY OF THE UNIVERSIDAD CENTRAL DEL ECUADOR a software tool called SIVSOFT. This tool is about of a JEE6 web application enabling a proper monitoring and control steps performed by the students in the social environment, especially for pre-professional practices, Internships and Community Development Practices. This system will be developed under the RUP methodology, with free tools business licensing as JBoss AS7 - EJB 3.1 - Hibernate (JPA 2.0) - JSF 2.0 (Primefaces 3.5) - HTML - JavaScript - jquery - PostgreSQL 9.3.3 - Ellipse Indigo. Throughout the construction process will be documented application from analyzing user requirements, project management, analysis, design, development, implementation, conclusions and recommendations will be raised to ensure the proper functioning of SIVSOFT. DESCRIPTORS: DEVELOPMENT METHODOLOGY RUP / JEE6 / SIVSOFT / JBoss AS7 APPLICATION SERVER / N LAYERS ARCHITECTURE / WEB SERVICES / PostgreSQL xx

CERTIFICADO DE TRADUCCIÓN xxi

xxii

CERTIFICACIÓN DE FINALIZACIÓN Y ACEPTACIÓN POR PARTE DE LA FACULTAD DE CULTURA FÍSICA xxiii

Sistema para seguimiento de gestiones de la vinculación con la sociedad INTRODUCCIÓN Es importante definir el significado de la Vinculación, ya que este constituye el generador de las acciones de prácticas Preprofesionales, pasantías técnicas y trabajo comunitario, que se realiza en el contexto social de la producción y los servicios en el área de influencia geográfica de la institución universitaria. El Desarrollo de aplicaciones web es hoy en día parte del mundo empresarial, la mayoría de usuarios se benefician hoy del enorme potencial y el sin número de beneficios al implementarlas. Su funcionalidad está directamente relacionada a la utilidad que ofrece al usuario de la aplicación, es una herramienta para manejar diferentes negocios en línea de forma automática. En base a las ventajas que tienen las aplicaciones web y el generador de acciones que constituye la vinculación a nivel universitario, la Facultad de Cultura Física de La Universidad Central del Ecuador quiere sustentar esta carencia con la implementación del sistema de seguimiento de estudiantes en gestiones de la sociedad SIFSOFT. 1 cuyo propósito es consolidar, automatizar, controlar y mantener toda la información dispersa en un solo almacén de datos de estudiantes que cursan los semestres de quinto a noveno. 1 SIVSOFT: Sistema parea seguimiento de gestiones de la vinculación con la sociedad. 1

Sistema para seguimiento de gestiones de la vinculación con la sociedad El presente proyecto se ha dividido en 6 capítulos, estructurados de la siguiente de manera: El Capítulo I presenta la situación actual de la Facultad de Cultura Física con respecto al seguimiento de sus estudiantes en el área de la gestión social; así como la descripción detallada de la solución a implementar definida y aprobada en el alcance del desarrollo, con su respectiva justificación y delimitación. El Capítulo II corresponde a la fundamentación teórica, en la misma se detalla los componentes estrictamente necesarios y empleados durante todo el desarrollo del proyecto; además se presenta la arquitectura diseñada para SIVSOFT. El Capítulo III detalla la metodología de desarrollo RUP que se emplea para el desarrollo de SIVSOFT, trasladándola al caso concreto del diseño de la arquitectura, desarrollo e implementación del sistema apegado a los estándares actuales de aplicaciones web. El Capítulo IV corresponde a las herramientas de desarrollo de software, cada una con sus respectivas instalaciones, así como configuraciones básicas para la ejecución de la aplicación web mediante los navegadores. El Capítulo V detalla la implementación de los módulos integrados en SIVSOFT, cada tipo de usuario de acuerdo al rol cumplirá y podrá hacer uso de las funciones definidas para cada uno. El Capítulo VI corresponde a las conclusiones y recomendaciones que se debe emplear con la finalidad garantizar el desempeño óptimo de SIVSOFT. 2

Sistema para seguimiento de gestiones de la vinculación con la sociedad CAPÍTULO I: 1. PRESENTACIÓN DEL PROBLEMA 1.1 PLANTEAMIENTO DEL PROBLEMA El departamento de Vinculación con la Sociedad de la Facultad de Cultura Física de la Universidad Central del Ecuador ha venido gestionando el seguimiento de los estudiantes de los diferentes semestres desde el 21 de Junio del 2011, fecha desde la cual esta Facultad se creó como tal. Desde esta fecha, hasta la actualidad, el control que se lleva en lo que respecta a la práctica Preprofesional, la pasantía técnica y el trabajo comunitario se lo ha venido desarrollando de forma manual y toda la información que se reúne se la almacena en carpetas tangibles. El problema que afronta esta facultad en lo que respecta a la Vinculación con la Sociedad es que no se tiene almacenado toda la información en un repositorio de datos, además no cuentan con un sistema informático que les permita controlar los diferentes procesos que manejan. Esta falta de control de información a su vez ocasiona que las autoridades encargadas del departamento de Vinculación con la Sociedad, no puedan tomar decisiones oportunas, de hacía que sector de la sociedad pueden apuntar con mayor fuerza para que los estudiantes puedan realizar sus pasantías y prácticas Preprofesionales. 1.2 FORMULACIÓN DEL PROBLEMA Cómo facilitar el seguimiento, apoyo a los estudiantes en la vinculación hacia la sociedad por parte del personal del departamento de vinculación de sociedad de la Facultad de Cultura Física de la Universidad Central del Ecuador con el uso de herramientas informáticas? 1.3 SISTEMATIZACIÓN DEL PROBLEMA Cómo está estructurada organizacionalmente la Facultad de Cultura Física? El desarrollo y la implementación del Sistema SIVSOFT facilitará el seguimiento y organización de los estudiantes en la vinculación con la 3

Sistema para seguimiento de gestiones de la vinculación con la sociedad sociedad? Por qué estudiar la vinculación de los estudiantes de quinto a noveno de la Facultad de Cultura Física? Qué lineamientos están relacionados con los organismos reguladores de acreditación en cuánto al seguimiento de estudiantes en la vinculación con la sociedad? 1.4 OBJETIVOS 1.4.1 OBJETIVO GENERAL El objetivo es ofrecer al departamento de Vinculación de la Facultad de Cultura Física de la Universidad Central del Ecuador un sistema informático; que ayude en la optimización de los procesos, control y seguimiento de los estudiantes, en lo que respecta a Prácticas Profesionales, Desarrollo Comunitario y Pasantías Pre Profesionales aplicando estándares y métodos, para así cumplir las necesidades del usuario de acuerdo a los requerimientos establecidos por ellos y sustentar futuros requerimientos. 1.4.2 OBJETIVOS ESPECÍFICOS Mejorar la calidad y cantidad de Información para que se pueda tomar decisiones oportunas para la buena administración del departamento de Vinculación. Diseñar una base de datos basándose en el formato y tipo de las fuentes de datos de la solución. Mantener una estructura organizada y bien definida en lo que respecta al control, seguimiento de los estudiantes en lo que se refiere a prácticas Preprofesional, pasantías y trabajo comunitario, para que en un futuro no se tenga redundancia de datos. Generar Informes en base a las necesidades que tengan las autoridades del departamento de Vinculación. Documentar todos los procesos desarrollados e implementados a fin de que el mantenimiento de la solución sea flexible. 4

Sistema para seguimiento de gestiones de la vinculación con la sociedad Implementación y mantenimiento de la aplicación web. 1.5 JUSTIFICACIÓN El departamento de Vinculación de la Facultad de Cultura Física de la Universidad Central del Ecuador no cuenta con un sistema, la mayoría de los procesos los realizan de manera manual, esto tiende a la generación de procedimientos repetitivos por parte del personal que a su vez generan procesos innecesarios que tienden a la pérdida de recursos. La falta de control y seguimiento hacia los estudiantes por parte de las autoridades ocasiona que la información que se obtiene por cada uno de los estudiantes no se lo puede registrar de forma automática y esto genera un exceso de datos redundantes, que con el transcurso del tiempo no se lo podrá controlar, gastando capital humano, tiempo y dinero en tareas como buscar información en carpetas, para obtener datos de un estudiante en partículas, el mismo que mediante un sistema informático, se lo puede obtener en cuestiones de segundos. El sistema en desarrollo intenta ayudar a las autoridades a entender los datos más rápidamente a fin de que puedan tomar mejores y rápidas decisiones, un mejor control, mejor seguimiento y, finalmente, mejorar sus movimientos hacia la consecución de objetivos de negocios. 1.6 PROCESOS (Apunte M. J., 2013) Los procesos que lleva a cabo la Facultad de Cultura Física de la Universidad Central del Ecuador son entre otros: 1.6.1. LA PRÁCTICA PREPROFESIONAL Es el proceso que consolida los modos de actuación profesional, en los mismos lugares típicos del ejercicio de la profesión, de manera planificada, controlada y evaluada por el Directorio de Carrera, bajo la responsabilidad del Vicedecanato de la Facultad, la Coordinación, la Dirección General Académica y la Comisión de la 5

Sistema para seguimiento de gestiones de la vinculación con la sociedad Vinculación que garanticen su realización. La práctica Preprofesional tendrá un avance gradual en el transcurso de la carrera de acuerdo con el desarrollo de las competencias por parte del estudiante, debiendo iniciarse desde el segundo o tercer semestre, dependiendo de la naturaleza de la carrera, con un mínimo de dos horas semanales. El número de horas de la práctica Preprofesional, se incrementará progresivamente en cada semestre de la carrera. La naturaleza de la práctica Preprofesional, estará relacionada siempre con los sectores: social, productivo o de servicios de la especialidad, para fortalecer los modos de actuación profesional vigente. El equipo de mentores supervisores de la práctica Preprofesional, estará conformado por los profesores de las material del eje de la profesión, seleccionados por los directores de carrera, avalados por el Consejo Directivo de Facultad y designados por la Comisión de Vinculación. Los alumnos practicantes, luego de un diagnostico exploratorio formularán los planes de práctica y presentaran por escrito en forma periódica, de acuerdo con las necesidades de la carrera. En estos se debe hacer constar: introducción, justificación, objetivos, fundamentación científico técnico del tema de la práctica, actividades, recurso, resultados esperados e informe final. El sistema de evaluación de las diferentes fases de la práctica Preprofesional, se regirá por escala de calificación sobre cuarenta puntos y más disposiciones reglamentarias de la Universidad Central del Ecuador. El estudiante para optar por la pasantía técnica, que se realizará en el último semestre, debe haber aprobado las fases anteriores del sistema de práctica Preprofesional. Los mentores supervisores de la práctica Preprofesional, informarán cada hemisemestre al Director de Carrera y éste presentará un informe a la Comisión de Vinculación al final del semestre. 1.6.2. LA PASANTÍA TÉCNICA 6

Sistema para seguimiento de gestiones de la vinculación con la sociedad Es la fase superior de la formación profesional, que se llevará a cabo de manera exclusiva en el último semestre de la carrera, con el propósito de consolidar los modos de actuación profesional, mediante la realización de trabajos profesionales en: gobiernos locales, empresas, instituciones, entidades sociales, productivas o de servicios, demostrando en su desempeño autónomo, nivel de experiencia en la aplicación de: los principios, leyes, teorías, métodos y modos de actuación de la profesión. 1.6.3. EL TRABAJO COMUNITARIO Es un proceso de interrelación entre: el Estado, la Universidad y la Comunidad, con el propósito de participar activa y comprometidamente en la solución de los problemas: locales, provinciales y regionales; y, consolidar los modos de actuación profesional y como ciudadano, mediante la realización de trabajos de beneficios social, especialmente en los sectores deprimidos. Para el trabajo en la comunidad, la universidad desplazará todo su potencial; científico, técnico, humano y de recursos, en la medida de sus posibilidades, para participar con el pueblo, en la búsqueda de soluciones a sus grandes problemas y necesidades. En las acciones efectivas de trabajo comunitario necesariamente intervienen autoridades, docentes, administrativos y estudiantes en los procesos de investigación, planificación, dirección, ejecución, seguimiento, control, evaluación y registro, de proyectos interdisciplinarios, con la participación directa de la comunidad. 7

Sistema para seguimiento de gestiones de la vinculación con la sociedad Figura 1.1 Comisión de Vinculación con la Sociedad 8

Sistema para seguimiento de gestiones de la vinculación con la sociedad CAPÍTULO II: 2. MARCO TEÓRICO 2.1 ANTECEDENTES El departamento de Vinculación con la Sociedad de la Facultad de Cultura Física genera el control y seguimiento de gestiones sociales de los estudiantes de forma manual, llevando gran cantidad de datos en hojas y almacenándolos en archiveros. Esto conforme el paso del tiempo, al querer realizar una búsqueda de información se vuelve complicado y además la información que se almacena se vuelve redundante. En vista de la enorme necesidad de responder a estos cuestionamientos, la Facultad de Cultura Física implementará un Sistema para e l Control y Seguimiento de los estudiantes que cursan quinto, sexto, séptimo y octavo semestre en lo que respecta las gestiones sociales como la práctica Preprofesional, la Pasantía y el Desarrollo Comunitario,. También se implementará el control, convenios que el departamento de vinculación realizará con las instituciones privadas o públicas donde el estudiante desarrollará las gestiones. Además se obtendrá un control del ingreso de supervisores que gestionaran el seguimiento de los estudiantes en el proceso de la aprobación de las gestiones, este control se manejará de acuerdo al semestre en el cual el estudiante lleva la gestión. Esta implementación ayudará al departamento de vinculación con la Sociedad a obtener mucho más rápido la información y un mejor control del estudiante, esto servirá para que las carencias que el estudiante presente a lo largo del desarrollo de cualquier gestión sean corregidas de excelente forma, tomando la mejor decisión paras ello. 9

Sistema para seguimiento de gestiones de la vinculación con la sociedad 10

Sistema para seguimiento de gestiones de la vinculación con la sociedad 2.2 ANTECEDENTES DEL PROCESO DE SEGUIMIENTO A ESTUDIANTES EN LA VINCULACIÓN CON LA SOCIEDAD EN LA FACULTAD DE CULTURA FÍSICA En base a varias entrevistas con el personal que conforma el departamento de Vinculación se pudo obtener información sobre la carencia de automatización en el proceso que se ejecuta para que los estudiantes realicen las diferentes comisiones, esto se lleva a cabo manualmente, obteniendo así datos redundantes y falta de información concisa; es por ello que con la implementación de SIVSOFT la facultad contará con un repositorio de datos para mejorar su la calidad de los datos y cumplir con las exigencias que en la actualidad son necesarias. 2.3 HIPÓTESIS DE LA INVESTIGACIÓN Mientras el sistema SIVSOFT se encuentre más orientado hacia la satisfacción de las necesidades de la Facultad de Cultura Física, se obtendrá un mejor ordenamiento y calidad de datos que servirán para la implementación de proyectos que ayuden a la vinculación de los estudiantes hacia la Sociedad. 2.4 FUNDAMENTACIÓN TEÓRICA El objetivo del modelo de seguimiento y control de las gestiones que se realizan en el departamento de vinculación es mejorar el ordenamiento de los datos, para poder cumplir con la toma de decisiones del personal y así mejorar el seguimiento hacia los estudiantes en el cumplimiento de la vinculación que tienen hacia la sociedad. El seguimiento a los estudiantes sirve para obtener un mejor control y apoyo por parte del personal, mediante reportes estadísticos que indique si el camino que se está marcando es el ideal e idóneo para el desempeño que cumplen los mismos. Las gestiones que los estudiantes cumplen con la sociedad son sumamente importante puesto que los ayuda en lo humano y académico, ya que obtienen experiencia en el campo laboral y pueden plasmar en la sociedad todo lo aprendido. 11

Sistema para seguimiento de gestiones de la vinculación con la sociedad 2.4.1 APLICACIÓN WEB Según Rafael Barzanallana. Universidad de Murcia, Informática, Ciencia, Escepticismo define: Una aplicación web es un conjunto de páginas que interactúan unas con otras y con diversos recursos en un servidor web, incluidas bases de datos. Esta interacción permite implementar características en su sitio como catálogos de productos virtuales y administradores de noticias y contenidos. Adicionalmente podrá realizar consultas a bases de datos, registrar e ingresar información, solicitudes, pedidos y múltiples tipos de información en línea en tiempo real. Una aplicación web es una aplicación informática distribuida cuya interfaz de usuario 10 es accesible desde un cliente web, normalmente un navegador 11 web. Entre las características más importantes se puede destacar son: Procesamiento en el servidor de aplicaciones. Se mantiene actualizadas y no requieren que el usuario deba descargar actualizaciones y realizar tareas de instalación. Acceso permanente a una base de datos. Menos requerimiento de hardware. Arquitectura por capas (generalmente 3 capas). Comunicación mediante HTTP 12 sobre TCP/IP 13. 2.4.2 ARQUITECTURA DE UNA APLICACIÓN WEB Una aplicación web es proporcionada por un servidor web y utilizadas por usuarios que se conectan desde cualquier punto vía clientes web (browser o navegadores) La arquitectura de un sitio web tiene tres componentes principales: 10 Interfaz de usuario: medio por el cual el usuario puede comunicarse con una máquina, un equipo o una computadora; comprende todos los puntos de contacto entre usuario y equipo. 11 Navegador web: Internet Explorer, Chrome, Firefox, Safari, Opera. 12 HTTP: Hypertext Transfer Protocol (en español Protocolo de Transferencia de Hipertexto), protocolo usado en cada una de las transacciones de la World Wide Web. 13 TCP/IP: Transmission Control Protocol/ Internet Protocol (en español Protocolo de Control de Transmisión / Protocolo de Internet), representan la base de Internet y sirven para enlazar terminales sobre redes de área local LAN y área extensa WAN. 12

Sistema para seguimiento de gestiones de la vinculación con la sociedad Figura 2.1 Arquitectura tradicional de una Aplicación Web 2.4.3 INDEPENDENCIA DE CAPAS Según Rafael Barzanallana. Universidad de Murcia, Informática, Ciencia, Escepticismo define: Capa de presentación El nivel de interfaz de usuario está compuesto por las páginas HTML dinámicas 15 que el usuario solicita a un servidor web y que visualiza en un cliente web (normalmente, un navegador web). Capa de negocio El nivel de la lógica de negocio está compuesto por los módulos que implementan la lógica de la aplicación y que se ejecutan en un servidor de aplicaciones. La capa de negocio he de ser independiente de la capa de presentación y viceversa. 15 HTML Dinámico: Dynamic HTML, designa el conjunto de técnicas que permiten crear sitios web interactivos utilizando una combinación de lenguaje HTML estático, un lenguaje interpretado en el lado del cliente (como JavaScript). 13

Sistema para seguimiento de gestiones de la vinculación con la sociedad Capa de datos El nivel de datos está compuesto por los datos, normalmente gestionados por un sistema de gestión de bases de datos (servidor de datos) que maneja la aplicación web. Comprende las responsabilidades: Integridad referencial. Procedimientos almacenados. Disparadores. Una aplicación Web recogerá datos del usuario (primer nivel), los enviará al servidor, que ejecutará un programa (segundo y tercer nivel) y cuyo resultado será formateado y presentado al usuario en el navegador. 2.4.4 SERVICIO WEB Según, wiki Servicio Web. (2013), define: Un servicio web (en inglés, Web Service o Web services) es una tecnología que utiliza un conjunto de protocolos y estándares que sirven para intercambiar datos entre aplicaciones. Distintas aplicaciones de software desarrolladas en lenguajes de programación diferentes, y ejecutadas sobre cualquier plataforma, pueden utilizar los servicios web para intercambiar datos en redes de ordenadores como Internet. Un servicio web ofrece una interfaz de programación de una determinada funcionalidad (servicio) accesible a través de Internet y basada en estándares W3C 16. 16 W3C: World Wide Web Consortium, es un consorcio internacional que produce recomendaciones para la World Wide Web. 14

Sistema para seguimiento de gestiones de la vinculación con la sociedad Figura 2.2 Estándares empleados en un Servicio Web Fuente http://www.ibm.com 2.4.5 SERVIDOR DE APLICACIONES Según, wiki Servidor de Aplicaciones. (2013), define: Un servidor de aplicaciones es un software que proporciona aplicaciones a los equipos o dispositivos cliente, por lo general a través de Internet y utilizando el protocolo HTTP. Los servidores de aplicación se distinguen de los servidores Web por el uso extensivo del contenido dinámico y por su frecuente integración con las bases de datos. Un servidor de aplicaciones es un producto basado en un componente que se encuentra en el plano medio de la arquitectura central de un servidor. Proporciona servicios de middleware 17, es decir; trabaja como un intermediario para la seguridad y el mantenimiento, además de proveer acceso a los datos. Un servidor de aplicaciones se encarga de gestionar la mayor parte de las funciones de la lógica de negocio y de acceso a los datos de la aplicación. -14-

Sistema para seguimiento de gestiones de la vinculación con la sociedad Dentro de los beneficios de la aplicación de la tecnología de los servidores de aplicación son la centralización 18 y la disminución de la complejidad en el desarrollo de las aplicaciones ya que proveen módulos que permite el desarrollo de las mismas. Servidores de Aplicación Java EE Como consecuencia del éxito del lenguaje de programación Java, el término servidor de aplicaciones usualmente hace referencia a un servidor de aplicaciones Java EE 19. Java EE provee estándares que permiten a un servidor de aplicaciones servir como contenedor de los componentes que conforman dichas aplicaciones. Estos componentes, escritos en lenguaje Java, usualmente se conocen como Servlets 20, Java Server Pages (JSPs) y Enterprise JavaBeans (EJBs) y permiten implementar diferentes capas de la aplicación, como la interfaz de usuario, la lógica de negocio, la gestión de sesiones de usuario como el acceso a bases de datos remotas. 18 Centralización: cualidad de permitir el control más sencillo ya que es la mejor forma de captar, manipular y usar la información cuando es necesario que un gran número de usuarios puedan acceder a ella. 19 Java EE: Java Platform Enterprise Edition (traducido como Java Empresarial), es una plataforma de programación para desarrollar y ejecutar software de aplicaciones en el lenguaje de programación Java. 20 Servlets: Representan una clase en el lenguaje de programación Java, utilizados para ampliar las capacidades de un servidor. -15-

Sistema para seguimiento de gestiones de la vinculación con la sociedad Figura 2.3 Ecosistema CDI (Java EE 6) Fuente http://elblogdelfrasco.blogspot.com/2012/07/spring-vs-java-ee.html Se presenta una tabla comparativa de los servidores de aplicaciones Java EE bajo los siguientes parámetros: Los costes de la licencia. Licencia de código fuente. Soporte técnico (desarrollo y/o apoyo a la producción disponible). Certified Java Version (6.0, 7.0 / HotSpot 21 / Proprietary JVM 22 ). 21 HotSpot: es una máquina virtual Java para equipos de sobremesa y servidores, mantenido y distribuido por Oracle Corporation; cuenta con técnicas como la compilación Just-in-time y optimización diseñada para mejorar el rendimiento. 22 JVM: Java Virtual Machine (en español máquina virtual java), es una máquina que puede ejecutar bytecode de Java. -16-

Sistema para seguimiento de gestiones de la vinculación con la sociedad Servidor de Aplicaciones GlassFish Server 3.01 GlassFish Server Open Source Edition 3.x WebSphere Application Server 8.x WebSphere Application Server Community Edition 3.0 Propietario Licencia Perfil Oracle Oracle IBM IBM OTN/Comercial GPL+CDDL Comercial (Producción + desarrollo) IBM International License Agreement for Non-Warranted Programs JEUS 7 TMAX Comercial Interstage Application Comercial Server powered by Fujitsu Windows Azure Interstage Application Server v 10.1 Fujitsu Comercial Geronimo 3.0-beta-1 Apache Apache 2.0 WebLogic Server 12.1.1 Comercial/ Libre Oracle para ucosminexus Application desarrollo Server v9.0 Hitachi Comercial JBoss Application Server 7.x RedHat LGPL JBoss Enterprise Application Platform 6 FP Full FP Full FP Full FP Full FP Full FP Full FP Full FP Full FP Full FP Full FP RedHat LGPL/Comercial Full FP Full GPL Resin Open Source Resin 4.0.17 Caucho version Resin Professional Commercial TomEE 1.0 Apache Apache 2.0 JOnAS 5.3.0-M8- SNAPHOT OW2 LGPL NetWeaver Cloud SAP Comercial WP WEB WP WEB WP WEB WP WEB S Java o Versión p Sí HotSpot o 6/7 r t No HotSpot e 6/7 Sí d IBM JVM 7 i s p Sí o IBM n JVM 7 Sí i HotSpot 6 b l Sí e HotSpot 6 * Sí HotSpot 6 No HotSpot 6 Sí HotSpot 6/7 Sí? Sí HotSpot 6 Sí HotSpot 6 Sí HotSpot 6 No HotSpot 6/7 No HotSpot 6/7 SAP Java Sí Server VM 1.6 Tabla 2.1 Comparación de los Servidores de aplicaciones Java EE Fuente http://blog.servidoresdeaplicaciones.com/tag/comparativa/ -17-

Sistema para seguimiento de gestiones de la vinculación con la sociedad 2.4.6 ARQUITECTURA DE SIVSOFT SIVSOFT desde el punto de vista lógico estará conformado: Capa Cliente Esta capa es la que hace referencia al computador desde el cual el personal administrativo del departamento de Vinculación y secretaria accede al sistema a través del uso de navegadores web. Servidor de Aplicaciones Dispositivo de software mediante el cual se desplegará la aplicación empresarial desarrollada en Java. Capa Web Es la capa donde se construye las páginas XHTML 23 mediante el uso del Framework JSF 24. Para el uso de AJAX 25 se usa la implementación de PrimeFaces 26. Backing Beans Son clases Java encargadas de implementar la funcionalidad de las páginas XHTML. Un Backing Bean es usualmente un Bean común de java que sirve de soporte para un objeto manejado dentro de la aplicación. Capa Negocio Es la capa donde se definen las reglas del negocio de la aplicación empresarial y será la encargada de recibir las peticiones del personal del departamento de vinculación y entregar una respuesta. 23 XHTML: extensible HyperText Markup Language, XHTML es básicamente HTML expresado como XML válido. 24 JSF: JavaServer Faces, es una tecnología y framework para aplicaciones Java basadas en web que simplifica el desarrollo de interfaces de usuario en aplicaciones Java EE. 25 AJAX: Asynchronous JavaScript And XML (en español JavaScript asíncrono y XML), es una técnica de desarrollo web para crear aplicaciones interactivas o RIA Rich Internet Applications. 26 PrimeFaces: componente para JavaServer Faces (JSF) de código abierto que cuenta con un conjunto de componentes enriquecidos que facilitan la creación de aplicaciones web. -18-

Sistema para seguimiento de gestiones de la vinculación con la sociedad EJB Enterprise JavaBeans Clases Java ligeras donde se programan las reglas del negocio de la aplicación, proporcionan un modelo de componentes distribuido estándar del lado del servidor, uno de sus objetivos es dotar al programador de un modelo que le permita abstraerse de los problemas generales de una aplicación empresarial (concurrencia, transacciones, persistencia) para centrarse en el desarrollo de la lógica del negocio. DAOs Data Access Object Son clases Java en las cuales se implementa el acceso a las tablas de la base de datos, suministra una interfaz común entre la aplicación y uno o más dispositivos de almacenamiento de datos. Base de Datos Es donde se van a almacenar los datos generados por la aplicación para su posterior uso en la generación de reportes. -19-

Sistema para seguimiento de gestiones de la vinculación con la sociedad Aplicación JavaEE Máquina_Cliente PrimeFaces Servidor de Aplicaciones Figura 2.4 Arquitectura de SIVSOFT -20-

Sistema para seguimiento de gestiones de la vinculación con la sociedad 2.4.7 LENGUAJE DE PROGRAMACIÓN JAVA Según, Universidad Complutense de Madrid Java. (2013), define: La principal característica de Java es la de ser un lenguaje compilado e interpretado. Todo programa en Java ha de compilarse y el código que se genera bytecode 27 es interpretado por una máquina virtual. De este modo se consigue la independencia de la máquina, el código compilado se ejecuta en máquinas virtuales que si son dependientes de la plataforma. Java es un lenguaje orientado a objetos de propósito general. Aunque Java comenzó a ser reconocido como un lenguaje de programación de Applets 28 que se ejecutan en el entorno de un navegador web, se puede utilizar para el desarrollo de cualquier tipo de proyecto. Figura 2.5 Componentes para la programación en Java Fuente http://jmaw.blogspot.com/2012/12/java-empresarial-los-componentesweb.html 27 Bytecodes: es un código intermedio más abstracto que el código máquina, permiten el ya conocido write once, run anywhere (compila una sola vez y ejecútalo donde quieras). 28 Applet: es un componente de una aplicación que se ejecuta en el contexto de otro Programa (un navegador web), está escrito en el lenguaje de programación Java y se ejecuta en el navegador web gracias a la Java Virtual Machine JVM, o en el AppletViewer de Sun. -21-

Sistema para seguimiento de gestiones de la vinculación con la sociedad 2.4.8 PLATAFORMA JAVA Los programas Java se compilan a un lenguaje intermedio, denominado Bytecode. Este código es interpretado por la máquina virtual de Java del entorno de ejecución JRE y así se consigue la portabilidad en distintas plataformas. El JRE es una pieza intermedia entre el código Bytecode y los distintos sistemas operativos existentes en el mercado. Un Programa Java compilado en Bytecode se puede ejecutar en sistemas operativos como Windows, Linux, Mac OS, Solaris, BlackBerry OS, ios o Android utilizando el entorno de ejecución Java JRE apropiado. La evolución del lenguaje de programación Java ha sido muy rápida, la plataforma de desarrollo Java, denominada Java Development Kit JDK se ha ampliado y cada vez incorpora a un número mayor de programadores en el mundo. En realidad Java no solo es un lenguaje de programación. Java es un lenguaje, una plataforma de desarrollo, un entorno de ejecución y un conjunto de librerías para el desarrollo de sistemas altamente sofisticados. Las librerías para desarrollo se denominan Java Application Programming Interface (Java API). Figura 2.6 Plataforma Java Fuente http://tutorial.saviasoft.com/java-basico/html/intro.html -22-

Sistema para seguimiento de gestiones de la vinculación con la sociedad El esquema muestra los elementos de la plataforma Java, desde el código fuente, el compilador, el API de Java, los programas compilados en Bytecode y el entorno de ejecución Java. Este entorno de ejecución JRE y la máquina virtual JVM permiten a un programa compilado Java se ejecute en distintos sistemas operativos. En Java, al igual que en otros lenguajes de programación; se sigue el siguiente proceso: Edición de código fuente. Compilación. Ejecución. Los programas Java se desarrollan y se compilan para obtener un código que se denomina Bytecode que es interpretado por una máquina virtual de Java (Java Virtual Machine). Figura 2.7 Progreso para desarrollo de un programa Fuente Facultad de Informática de la Universidad Complutense de Madrid 2.4.9 MÁQUINA VIRTUAL JAVA JVM Según, Wiki Máquina Virtual Java. (2013), define: Una máquina virtual Java puede ejecutar bytecode de Java, es el componente de ejecución del código de la plataforma Java. -23-

Sistema para seguimiento de gestiones de la vinculación con la sociedad Figura 2.8 Arquitectura de JVM Fuente Wikipedia La JVM es una de las piezas fundamentales de la plataforma Java. Se sitúa en un nivel superior al hardware del sistema sobre el que se pretende ejecutar la aplicación, y este actúa como un puente que entiende tanto el bytecode como el sistema sobre el que se pretende ejecutar. Así, cuando se escribe una aplicación Java, se hace pensando que será ejecutada en una máquina virtual Java en concreto, siendo ésta la que en última instancia convierte el código bytecode a código nativo del dispositivo final. -24-

Sistema para seguimiento de gestiones de la vinculación con la sociedad 2.4.10 JSF JAVA SERVER FACES QUÉ ES JSF? Java Server Faces es un framework o ambiente de trabajo, destinado a facilitar la construcción y desarrollo de interfaces para aplicaciones basadas en entornos web provistos por Java EE. JSF provee una arquitectura para manejar el estado de componentes, procesamiento de información, validación de información ingresada por el usuario, atención de eventos y navegación entre páginas. JSF tienen la solución de proveer un grupo muy extenso de herramientas predesarrolladas para facilitar la creación de interfaces; herramientas tales como: botones, cajas de texto, tablas de datos. Separa la lógica de presentación y de aplicación, facilitando la conexión entre las correspondientes capas. Figura 2.9 JSF Eventos y Navegación Fuente Aplicaciones Empresariales Java, Developer -25-

Sistema para seguimiento de gestiones de la vinculación con la sociedad JSF en un principio fue dirigido para proveer un estándar de controles para aplicaciones. Esto es, un grupo de herramientas predefinidas con comportamientos embebidos que fueran capaces de manipular datos implícitamente expresados en su implementación. Las tareas de manejo de procesos, comunicación de componentes o acceso a orígenes de datos se manejaba dentro de otros frameworks o ambientes de trabajo, como podían ser Struts 29 o WebWorks. De esta manera JSF solo se encargaba de enmascarar la última porción del manejo de las entradas y salidas de la capa Request/Response de la comunicación HTTP de las aplicaciones basadas en ambientes Web. Con el paso del tiempo, JSF ha ido proveyendo de soluciones para cada una de las partes involucradas en el proceso, como por ejemplo la capacidad de establecer comunicación con orígenes de datos que luego pueden ser manipulados desde las interfaces desarrolladas con los componentes de la aplicación. Los JSF no van a desplazar a otros frameworks, de hecho, los responsables del desarrollo del framework Struts ha participado activamente en el proyecto JSF desde sus inicios. Struts y JSF pueden combinarse para dotar a la aplicación de una extensa plataforma de desarrollo en donde todas las capas de la implementación tienen su espacio definido. Componentes de JSF JSF introduce dos nuevos términos al mundo del desarrollo de aplicaciones Java: Managed Bean. Backing Bean. 29 Struts: herramienta de soporte para el desarrollo de aplicaciones web bajo el patrón MVC Modelo Vista Controlador bajo la plataforma Java EE. -26-

Sistema para seguimiento de gestiones de la vinculación con la sociedad Managed Bean Un Managed Bean es objeto identificado para el ambiente de la aplicación, para el cual se describe: Una identificación. Un alcance (scope) que puede ser: request, sesión, application. Propiedades. Backing Bean Una página JSP Java Server Pages en una aplicación empresarial orientada a la web está especificada como un Managed Bean para la aplicación con un identificador que la describe para toda la aplicación en general. En este archivo JSP se dibujan todos los controles para proveer a la página la funcionalidad. Esta página tiene asociado un Backing Bean que es un Bean de Java, en este Bean se codifican los comportamientos específicos asociados a cada control del Managed Bean representado por la página JSP. La ventaja de los Backing Beans es que pueden ser compartidos por un mismo Managed Bean, de manera que para diferentes páginas se pueden agrupar comportamientos comunes en un mismo Bean que se comparte con ambos. Ciclo de vida del JSF Según, Uvigo Ciclo de vida del JSF. (2012), define: Resulta necesario entender el procesamiento de una página JSF, para ello se detalla su ciclo de vida compuesto por las siguientes fases: Restaurar los componentes de la vista (restore view) En esta etapa el controlador construye en memoria la estructura de componentes de la página. Aplicar los valores de la petición (apply request values) En esta etapa se recuperan los valores del request y se asignan a los Beans de la página. -27-

Sistema para seguimiento de gestiones de la vinculación con la sociedad Procesamiento de validaciones (process validations) Se verifican los parámetros de entrada según un conjunto de reglas definidas en un fichero de configuración. Actualizar los valores del modelo (update model values) Los valores leídos y validados son cargados en los Beans, se modifican los valores de los Beans asociados a los componentes de la vista con los valores locales. Invocación a la aplicación (invoke application) Se ejecutan las acciones y eventos solicitados para la página, si es necesario se realiza la navegación. Generación de la página (render response) En esta fase se genera la página que será enviada al usuario con todos sus elementos y valores actualizados. Figura 2.10 Ciclo de Vida del JSF Fuente https://plus.google.com/communities/109411962546214027347-28-

Sistema para seguimiento de gestiones de la vinculación con la sociedad 2.4.11 CASOS DE USO Según, wiki Casos de Uso. (2012), define: Un caso de uso es una descripción de los pasos o las actividades que deberán realizarse para llevar a cabo algún proceso. Los personajes o entidades que participarán en un caso de uso se denominan actores. En el contexto de la Ingeniería de Software, un caso de uso es una secuencia de interacciones que se desarrollarán entre un sistema y sus actores en respuesta a un evento que inicia un actor principal sobre el propio sistema. Los diagramas de casos de uso sirven para especificar la comunicación y el comportamiento de un sistema mediante su interacción con los usuarios y otros sistemas. 30 UML: Unified Modeling Language (en español Lenguaje Unificado de Modelado), es el lenguaje de modelado de sistemas de software más conocido y utilizado en la actualidad. -29-

Sistema para seguimiento de gestiones de la vinculación con la sociedad 2.4.12 POSIBLES METODOLOGÍAS DE DESARROLLO DE SOFTWARE Dentro del desarrollo del software y a la altiva necesidad de que los proyectos lleguen al éxito y obtener un producto de gran valor para los clientes, generan grandes cambios en las metodologías adoptadas por los equipos para cumplir sus objetivos, puesto que, unas se adaptan mejor que otras, al contexto del proyecto brindando mejores ventajas. Para el desarrollo del sistema SIVSOFT se puso en consideración tres tipos de metodologías de desarrollo debido a un mayor conocimiento y experiencia en las mismas, estas metodologías son: RUP SCRUM ICONIX Proceso Unificado de Rational (Rational Unified Process) RUP RUP (metodología tradicional) es un proceso formal que provee un acercamiento disciplinado para asignar tareas y responsabilidades dentro de una organización de desarrollo. Su objetivo es asegurar la producción del software de alta calidad que satisfaga los requerimientos de los usuarios finales (respetando cronograma y presupuesto). Fue desarrollado por Rational Software, y está integrado con toda la suite Rational de herramientas. Puede ser adaptado y extendido para satisfacer las necesidades de la organización que lo adopte (Customización). Es guiado por casos de uso y centrado en la arquitectura, y utiliza UML como lenguaje de notación. Fases Las cuatro fases del ciclo de vida son: Concepción Elaboración Construcción Transición -30-

Sistema para seguimiento de gestiones de la vinculación con la sociedad Figura 2.11 Ciclo de Vida de RUP Fuente Wikipedia Ventaja Desventajas Evaluación en cada fase que permite cambios de objetivos. Funciona bien en proyectos de innovación. Es sencillo, ya que sigue los pasos intuitivos necesarios a la hora de desarrollar el software. Seguimiento detallado en cada una de las fases. Excesiva flexibilidad para algunos proyectos. El cliente debe ser capaz de describir y entender a un gran nivel de detalle para poder acordar un alcance del proyecto con él. -31-

Sistema para seguimiento de gestiones de la vinculación con la sociedad SCRUM SCRUM (metodología ágil) es un proceso ágil y liviano que sirve para administrar y controlar el desarrollo del software. El desarrollo se realiza en forma iterativa e incremental (una iteración es un ciclo corto de construcción repetitivo). Cada ciclo o iteración termina con una pieza de software ejecutable que incorpora nueva funcionalidad. Las iteraciones en general tienen una duración entre 2 y 4 semanas. Figura 2.12 Esquema de trabajo SCRUM Fuente SOFTENG Software Engineers SCRUM tiene un conjunto de reglas muy pequeño y muy simple basado en los principios de inspección continua, adaptación, auto-gestión e innovación. El cliente se entusiasma y se compromete con el proyecto dado que ve crecer el producto iteración a iteración y encuentra las herramientas para alinear el desarrollo con los objetivos de negocio de su empresa. -32-

Sistema para seguimiento de gestiones de la vinculación con la sociedad ICONIX ICONIX (metodología ágil) es una metodología pesada-ligera de desarrollo de Software que se halla a medio camino entre RUP y XP 32. ICONIX deriva directamente del RUP y su fundamento es el hecho de que un 80% de los casos pueden ser resueltos tan solo con un uso del 20% del UML, con lo cual se simplifica muchísimo el proceso sin perder documentación al dejar solo aquello que es necesario. Esto simplifica un uso dinámico del UML de tal forma que siempre se pueden utilizar otros diagramas además de los ya estipulados si se cree conveniente. ICONIX se guía a través de casos de uso y sigue un ciclo de vida iterativo e incremental. El objetivo es que a partir de los casos de uso se obtenga el sistema final. Fases Análisis de requisitos. Análisis y diseño preliminar. Diseño. Implementación. 32 XP: extreme Programming (en español programación extrema), es una metodología de desarrollo de la ingeniería del software, siendo esta la más destacada de las metodologías ágiles dentro del desarrollo del software. -33-

Sistema para seguimiento de gestiones de la vinculación con la sociedad Figura 2.13 Esquema de trabajo ICONIX Fuente https://www.simple-talk.com/opinion/opinion-pieces/agile-development-andiconix/ -34-

Sistema para seguimiento de gestiones de la vinculación con la sociedad CAPÍTULO III: 3. DISEÑO METODÓLOGICO 3.1 DESCRIPCIÓN DE LA METODOLOGÍA PARA EL DESARROLLO DE SIVSOFT Contar con una base de información sistemática y objetiva para el desempeño del personal del departamento de Vinculación proporcionará elementos primordiales para la toma de decisiones. Además, permite fundamentar y llevar a cabo proyectos pertinentes y relevantes para elevar la calidad de la educación a nivel social. De acuerdo con los objetivos de este proyecto, el tipo de resultados que se van a ponderar serán en base a las gestiones que los estudiantes realicen en el transcurso de los semestres optados para la práctica Preprofesional, pasantías y desarrollo comunitario. Por tanto el sistema recolectar los datos mediante: Formularios o cuestionarios en los cuales se centra en los siguientes aspectos: Datos Personales del Alumno Datos Personales del Supervisor Información acerca de las Instituciones en las cuales se pretende gestionar. Tipos de Gestión dependiendo del semestre, Documentos que serán necesarios para la aprobación de las gestiones. -35-

Sistema para seguimiento de gestiones de la vinculación con la sociedad 3.1.1 PROCESO UNIFICADO DE DESARROLLO DE SOFTWARE (RUP) RUP es un proceso de desarrollo de software y junto con el Lenguaje Unificado de Modelado UML, constituye la metodología estándar para el análisis, implementación y documentación de sistemas orientados a objetos. RUP es un proceso para el desarrollo de un proyecto de software que define claramente quién, cómo, cuándo y qué debe hacerse en el proyecto. Las características de cada trabajo de investigación exigen que todo proceso deba ser necesariamente configurable. RUP es explícito en la definición del software y su trazabilidad, es decir, contempla en relación causal de los programas creados desde los requerimientos hasta la implementación y pruebas. Dentro de su arquitectura global se especifican dos dimensiones: El eje horizontal representa el tiempo y muestra los aspectos del ciclo vital del proceso a medida que avanza el desarrollo. El eje vertical representa las disciplinas que agrupan de forma lógica las actividades por naturaleza. En las primeras iteraciones 33 se emplea más tiempo en la toma de los requerimientos, mientras que en iteraciones posteriores se emplea más tiempo en la implementación. 33 Iteraciones: la iteración incluye las actividades de desarrollo que dan lugar al reléase de un producto; es decir, una versión estable y ejecutable del producto, junto con los demás elementos periféricos necesarios para utilizar este reléase. Una iteración de desarrollo es, de algún modo, un recorrido completo por todas las disciplinas: requisitos, análisis y diseño, implementación y realización de pruebas como mínimo. -36-

Sistema para seguimiento de gestiones de la vinculación con la sociedad Principales características Figura 3.1 Arquitectura de RUP Fuente IBM Corp. Forma disciplinada de asignar tareas y responsabilidades (quién hace qué, cuándo y cómo) Pretende implementar las mejores prácticas en Ingeniería de Software Desarrollo iterativo Administración de requisitos Uso de arquitectura basada en componentes Control de cambios Modelado visual del software Verificación de la calidad del software El RUP es un producto de Rational (IBM). Se caracteriza por ser iterativo e incremental, estar centrado en la arquitectura y guiado por los casos de uso. Incluye artefactos (que son los productos tangibles del proceso como por ejemplo, el modelo de casos de uso, el código fuente, etc.) y roles (papel que desempeña una persona en un determinado momento, una persona puede desempeñar distintos roles a lo largo del proceso) -37-

4 SIVSOFT Sistema para seguimiento de gestiones de la vinculación con la sociedad 3.1.2 FASES DE LA METODOLOGÍA DE DESARROLLO RUP RUP divide el proceso en 4 fases, dentro de las cuales se realizan varias iteraciones en número variable según el proyecto a desarrollar y en las que hace un mayor hincapié en las distintas actividades. Figura 3.2 Fases de la metodología de desarrollo RUP Fuente http://metodologirup.blogspot.com/ Fase Inicial En la fase inicial se debe alcanzar un acuerdo entre todos los interesados respecto a los objetivos del ciclo vital para el proyecto (SIVSOFT). Dentro de los principales objetivos se debe acotar: Establecer el ámbito de software y las condiciones de los límites del proyecto, incluidas una versión operativa, criterios de aceptación y lo que debe contener el producto (alcance). Planificar y preparar un caso de negocio. Sintetizar una arquitectura posible. Estimar los riesgos 34 potenciales (causas de incertidumbre). Preparar el entorno de soporte para el proyecto. 34 Riesgo: En esta directriz se describen los riesgos y se plantean brevemente las estrategias que se pueden utilizar para gestionar estos riesgos. Un riesgo es una variable que, dentro de la distribución normal, puede tomar un valor que ponga en peligro o elimine el éxito de un proyecto. -38-

Sistema para seguimiento de gestiones de la vinculación con la sociedad Figura 3.3 Flujo de la Fase Inicial Fuente IBM Corp. Fase de Elaboración En la segunda fase de la metodología de desarrollo RUP, se debe establecer una línea base para la arquitectura del sistema; la misma que deberá ir creciendo a partir de los requerimientos más significativos del sistema (aquellos que tienen mayor impacto en la arquitectura). Dentro de sus objetivos primordiales se debe mencionar: Garantizar que la arquitectura, los requerimientos sean escalables. Tratar todos los riesgos arquitectónicamente significativos en el proyecto. Perfeccionar la arquitectura y seleccionar los componentes. Establecer un entorno de soporte. Figura 3.4 Flujo de la Fase de Elaboración Fuente IBM Corp. En la Iteración de Elaboración [n] se incluye todas las actividades que se deben realizar durante la fase de elaboración proporcionando una base estable para el grueso del diseño y del esfuerzo de implementación. Al final de la fase de elaboración se encuentra el segundo objetivo importante del proyecto, el objetivo de la arquitectura del ciclo vital. En este punto se examinan los objetivos y el ámbito del sistema detallado, la elección de la arquitectura y la resolución de los principales riesgos. -39-

Sistema para seguimiento de gestiones de la vinculación con la sociedad Figura 3.5 Flujo de trabajo en la Fase de Elaboración Fuente IBM Corp. Fase de Construcción En la fase de construcción se clarifica los requisitos restantes y se completa el desarrollo del sistema a partir de la arquitectura definida en la fase de elaboración, de alguna manera, es un proceso de fabricación en el que se pone énfasis en la gestión de recursos y control de las operaciones para optimizar los costes, la planificación y el control de calidad. Dentro de sus objetivos se tiene: Conseguir versiones útiles de forma rápida y práctica. Completar el análisis, diseño, desarrollo y prueba de toda la funcionalidad necesaria. Decidir si el software, los sitios y los usuarios están listos para la aplicación. -40-

Sistema para seguimiento de gestiones de la vinculación con la sociedad Figura 3.6 Flujo de la Fase de Construcción Fuente IBM Corp. Estas son las actividades que deben realizarse durante la iteración en la fase de construcción: Figura 3.7 Flujo de trabajo en la Fase de Construcción Fuente IBM Corp. -41-

Sistema para seguimiento de gestiones de la vinculación con la sociedad En el objetivo de capacidad operativa inicial, el producto está preparado para entregarse al equipo de transición. Se han desarrollado todas las funciones y se han completado todas las pruebas de versión posibles. Además del software se debe desarrollar un manual de usuario y hay una descripción actual. Fase de Transición En la fase de transición se garantiza que el software está disponible para los usuarios finales (Administrador, Graduados/Egresados, Docentes, Empresas). La fase de transición puede acarrear varias iteraciones e incluye las pruebas del producto en preparación para el reléase, así como ajustes menores basados en la información de retorno de los usuarios finales. Dentro de los objetivos se debe mencionar: Pruebas de versión para validar el nuevo sistema contra las expectativas del usuario. Convertir bases de datos operativas. Formación de usuarios y mantenedores. Ajuste de actividades como la solución de defectos, mejora en el rendimiento. Finalizar el material de soporte para los usuarios finales. Figura 3.8 Flujo de la Fase de Transición Fuente IBM Corp. Al final de la fase de transición se encuentra el cuarto objetivo importante del proyecto, en este punto; se mide el grado de satisfacción del cliente como también si se debería iniciar otro ciclo de desarrollo. El Objetivo del producto es el resultado de la revisión y aceptación por parte del cliente de los entregables del proyecto. -42-

Sistema para seguimiento de gestiones de la vinculación con la sociedad Figura 3.9 Flujo de trabajo en la Fase de Transición Fuente IBM Corp. -43-

Sistema para seguimiento de gestiones de la vinculación con la sociedad 3.1.3 PLANIFICACIÓN DE FASES Desde la perspectiva de la gestión se acotó que el ciclo de vida del software bajo la metodología de desarrollo RUP se descompone en cuatro fases secuenciales, cada una concluida por uno de los objetivos principales. Al final de cada fase se lleva a cabo una valoración para determinar si los objetivos de la fase fueron alcanzados. Una valoración satisfactoria permite que el proyecto continúe a la fase siguiente. Figura 3.10 Fases y Objetivos RUP Fuente IBM Corp. Todas las fases no son idénticas en términos de planificación y esfuerzo, aunque esto varía considerablemente de acuerdo al proyecto a desarrollar, el ciclo inicial de desarrollo considerado para SIVSOFT llevará la siguiente distribución (ilustrada en la figura) considerando el esfuerzo y la planificación de acuerdo al tiempo definido para el desarrollo total. Figura 3.11 Ciclo de Vida RUP a través del tiempo Fuente IBM Corp. -44-

Sistema para seguimiento de gestiones de la vinculación con la sociedad 3.2 ESPECIFICACIONES DE SIVSOFT 3.2.1 SENTENCIAS: Sentencia que define el problema El problema de Afecta a El impacto asociado es Una solución adecuada sería No contar con una herramienta informática que permita la generación de gestiones académicas (Practicas Preprofesionales, Pasantías y Desarrollo Comunitario) para estudiantes de la Facultad de Cultura Física de la Universidad Central del Ecuador, no contar con una base de datos que permita almacenar la información precisa de las gestiones sociales de los estudiantes. Mantener a los estudiantes informados sobre las aprobaciones de las gestiones académicas que cumplen a través del periodo académico. A todos los estudiantes que cumplen los requisitos para realizar una gestión académica. Realizar un seguimiento histórico de los estudiantes tras cumplir todas las gestiones académicas. Realizar la automatización de los procesos del seguimiento y control de gestiones académicas, usar interfaces amigables y sencillas con las herramientas necesarias para la correcta ejecución. Tabla 3.1 Definición del Problema -45-

Sistema para seguimiento de gestiones de la vinculación con la sociedad Sentencia que define el posicionamiento del Producto SIVSOFT Para Quienes El nombre del producto Que No cómo SIVSOFT Estudiantes de Quinto, Sexto, Séptimo, Octavo y Noveno Semestre Personal del Departamento de Vinculación de la Facultad de Cultura Física de la Universidad Central del Ecuador. Sistema para seguimiento de gestiones de la vinculación con la sociedad. Gestiona y controla las gestiones de los estudiantes de la Facultad de Cultura Física de la Universidad Central del Ecuador. Los esfuerzos y procesos manuales y foráneos realizados hasta hoy. Permite automatizar los diferentes procesos que implican la puesta en marcha de las gestiones académicas del departamento de vinculación mediante la implementación de interfaces amigables, proporcionar un acceso rápido y actualizado de la información desde cualquier terminal con acceso a Internet por medio de los navegadores web. Tabla 3.2 Posicionamiento de SIVSOFT -46-

Sistema para seguimiento de gestiones de la vinculación con la sociedad 3.3 ANÁLISIS DE REQUERIMIENTOS El análisis de requerimientos permitió identificar a los objetos de dominio, las relaciones entre objetos que intervienen en el problema, los actores, los objetivos y las responsabilidades que realizan en cada uno de los procesos existentes en la facultad. Es importante mencionar que se utilizó el Modelo de Dominio 35 del RUP para la siguiente etapa de análisis. Dentro de los requerimientos básicos que se definieron con las autoridades del departamento de Vinculación con la Sociedad de la Facultad de Cultura Física que serán tomados en cuenta para el desarrollo del sistema son: Levantamiento de los procesos que se ejecutan. Ingreso y control de los estudiantes que entran en la etapa de cumplir con las pasantías técnicas, practicas Preprofesionales y trabajo comunitario. Ingreso y control de profesores supervisores para cada grupo de estudiantes en pasantías técnicas Ingreso y control de profesores supervisores para cada grupo de estudiantes en prácticas Preprofesionales. Control de las horas que deben cumplir los estudiantes en prácticas Preprofesionales, estas horas se incrementaran de acuerdo al semestre. Planificación de la práctica Preprofesional para los estudiantes de los distintos semestres, cabe recalcar que la práctica Preprofesional se inicia en el sexto semestre y avanza hasta el penúltimo semestre, con un mínimo de cinco horas semanales. Control de las horas que deben cumplir los estudiantes en pasantías técnicas. Planificación de las pasantías técnicas por parte de las autoridades del departamento de Cultura Física. -47-

Sistema para seguimiento de gestiones de la vinculación con la sociedad Entrega de Reportes de acuerdo al número de estudiantes que cumplieron las pasantías técnicas. Entrega de reportes de acuerdo al número de estudiantes que aprobaron las prácticas Preprofesionales. Entrega de reportes de acuerdo al número de estudiantes que terminaron los trabajos comunitarios Ejecución de pruebas para verificación de estabilidad del sistema Puesta en producción Capacitación a las autoridades del departamento de Vinculación de la Facultad de Cultura Física. 3.4 REQUERIMIENTOS ESPECÍFICOS 3.4.1 USABILIDAD DEL SISTEMA SIVSOFT ofrecerá una interfaz de usuario intuitiva para los usuarios finales, de tal manera que no haya ningún problema en el correcto uso del mismo, la navegabilidad por SIVSOFT será muy básica ya que cada uno de los usuarios de acuerdo a su respectivo rol tendrá acceso a las opciones disponibles. Es importante mencionar que el usuario puede acceder al sistema mediante el navegador web de su preferencia. 3.4.2 SEGURIDAD Para el acceso a SIVSOFT el usuario deberá llenar los campos de usuario y contraseña una vez registrado en el sistema (Administrador y Personal Departamento de Vinculación), se presentara el menú de acuerdo al rol asignado al usuario, caso contrario si el usuario o la contraseña son ingresados de forma errónea el sistema le enviara a una página de error de ingreso. 3.4.3 FUNCIONES Con la implementación de SIVSOFT se busca mejorar el seguimiento y control de los estudiantes en las gestiones que tienen que desempeñar como la Practica Preprofesional, Pasantía Técnica y el Trabajo Comunitario, además la asignación del -48-

Sistema para seguimiento de gestiones de la vinculación con la sociedad supervisor para cada gestión, que ayudará a equilibrar la carga de trabajo para cada uno de ellos. Se podrá obtener la institución en la cual se le asigna al estudiante para que cumpla cualquier gestión social, esto ayudará para el personal del departamento de vinculación pueda llevar un control de las instituciones ligadas a los estudiantes. Además se podrá obtener información de importancia al momento de subir los documentos obligatorios que e sistema pedirá para cada gestión, esto ayudara a tener un respaldo del trabajo que lleva cada estudiante. 3.5 MODELADO DEL ANÁLISIS Generalmente los casos de uso son representados de forma intuitiva a partir de la especificación del sistema y posteriormente, las entidades del modelo conceptual se extraen a partir a partir de las especificaciones de los casos de uso. Una vez identificados los procesos de negocio y descritos sus flujos de trabajo mediante diagramas de actividades, los casos de uso se estructuran a partir de las actividades de cada proceso, mientras que las entidades del modelo conceptual se obtienen los datos que fluyan entre las actividades. Además, se identifican las reglas del negocio y se incluyen en un glosario como parte de la especificación de los datos y las actividades. -49-

Sistema para seguimiento de gestiones de la vinculación con la sociedad Figura 3.12 Relaciones de trazabilidad entre los modelos de negocio y de requisitos Fuente Departamento de Informática y Sistemas de la Universidad de Murcia -50-

Sistema para seguimiento de gestiones de la vinculación con la sociedad 3.5.1 IDENTIFICACIÓN DE USUARIOS Los interesados están directamente involucrados en la definición y alcance del desarrollo del sistema. En la tabla se presenta el detalle de cada uno de los usuarios: Nombre Descripción Stakeholder 36 (Responsable) Administrador funcional del sistema Usuario Candidato Persona de la Facultad del Departamento de Vinculación de la Facultad de Cultura asignada por las autoridades para la Administración funcional del sistema. Personal de departamento de Vinculación o secretaria de la Facultad de Cultura Física. Tendrán acceso al módulo de gestión, estudiante-supervisor y reportes. Administrar funcionalmente el sistema, acceso total al sistema, dentro de sus funciones: acceso al módulo de administración de usuario, perfiles y variables de importancia para el sistema, así como del módulo de gestión y reportes Registrar una gestión para cualquier estudiante, así como generar documentos obligatorios para cada gestión, ingreso, aprobación de un estudiante, supervisor o institución y poder generar reportes para poder exportarlos a Excel o presentarlos en pdf. Tabla 3.3 Identificación de Usuarios 36 Stakeholder: Es aquella persona o entidad que está interesada en la realización de un proyecto o tarea, auspiciando el mismo ya sea mediante su poder de decisión y /o financiamiento o través de su propio esfuerzo. -51-

Sistema para seguimiento de gestiones de la vinculación con la sociedad 3.5.2 CASOS DE USO El diagrama de casos de uso representa la forma en como un Cliente (Actor) opera con el sistema en desarrollo, además de la forma, tipo y orden en como los elementos interactúan (operaciones o casos de uso). En ingeniería del software, un caso de uso es una técnica para la captura de requisitos potenciales de un nuevo sistema o una actualización de software. Para modelar los Casos de Uso se debe tomar en cuenta las siguientes recomendaciones: Un Caso de Uso describe un proceso completo que incluye varios pasos (flujo de trabajo). Un Caso de Uso no es un paso, operación o actividad individual en un proceso. No incluir como Caso de Uso las operaciones CRUD (Crear, buscar, actualizar y borrar). Figura 3.13 Flujo de trabajo de los Casos de Uso Fuente Departamento de Informática y Sistemas de la Universidad de Murcia -52-

Sistema para seguimiento de gestiones de la vinculación con la sociedad 3.5.3 DIAGRAMAS Y CASOS DE USO DE SIVSOFT DIAGRAMAS DE CASOS DE USO GENERAL DE SIVSOFT MÓDULO ADMINISTRADOR Object-Oriented Model Model: Modelo UML FCF VCS Package: Análisis Diagram: UC150 Administracíon del Sistema Author: Germán Romero Date: 20/03/2014 Version: 1.0 Definir y actualizar parámetros del sistema Definir acceso a opciones por perfil Crear usuarios y asignación de perfil ADMINISTRADOR DEL SISTEMA Habilitar Deshabilitar usuario Resetear clave de usuario Figura 3.14 Diagrama de Casos de Uso General para el Módulo Administrador -53-

Sistema para seguimiento de gestiones de la vinculación con la sociedad MÓDULO VINCULACIÓN Object-Oriented Model Model: Modelo UML FCF VCS Package: Análisis Diagram: UC040 Vinculación con la Sociedad Author: Germán Romero Date: 20/03/2014 Version: 1.0 Definir Documentos Habilitantes Gestión Definir Periodo Académico Crear Práctica Preprofesional Definir Gestiones VInculación con la Sociedad Procesar Práctica Preprofesional Aprobar Práctica Preprofesional USUARIO VINCULACIÓN Asignar Documentos Habilitantes por Gestión Asignar Institución por Institución Crear Pasantías Procesar Pasantías Aprobar Pasantías Crear Desarrollo Comunitario Procesar Desarrollo Comunitario Aprobar Desarrollo Comunitario Figura 3.15 Diagrama de Casos de Uso General para el Módulo Vinculación -54-

Sistema para seguimiento de gestiones de la vinculación con la sociedad MÓDULO ESTUDIANTE - SUPERVISOR Object-Oriented Model Model: Modelo UML FCF VCS Package: Análisis Diagram: UC050 Módulo Estudiante - Supervisor Author: Germán Romero Date: 20/03/2014 Version: 1.0 Crear Supervisor Activar Supervisor Editar Supervisor Crear Estudiante Activar Estudiante USUARIO VINCULACIÓN2 Editar Estudiante Crear Institución Activar Institución Editar Institución Figura 3.16 Diagrama de Casos de Uso General para el Módulo Estudiante Supervisor -55-

Sistema para seguimiento de gestiones de la vinculación con la sociedad DIAGRAMA Y CASO DE USO: MÓDULO VINCULACIÓN CREAR DOCUMENTOS HABILITANTES USUARIO VINCULACIÓN_ CREAR DOCUMENTOS HABILITANTES Figura 3.17 Diagrama de Casos de Uso para el registro de documentos habilitantes UC060 ACTORES DESCRIPCIÓN PRECONDICIÓN Crear Documentos Habilitantes Personal del Departamento de Vinculación con la Sociedad de la Facultad de Cultura Física. SIVSOFT cuenta con un debido procedimiento para la creación de documentos para cada gestión. Técnicamente no existe una precondición, SIVSOFT está orientado para el personal del Departamento de Vinculación con la Sociedad de la Facultad de Cultura Física. SECUENCIA PASO ACCIÓN NORMAL Se selecciona la gestión para la cual se quiere crear el 1 documento. Se presenta una tabla con los documentos 2 existentes en la gestión seleccionada. Se da clic en Insertar. Se ingresa los datos del nuevo documento para la 3 gestión seleccionada. 4 Se selecciona el botón Grabar para registrar el documento. El documento registrado puede ser eliminado o 5 utilizado en la gestión seleccionada. Tabla 3.4 Caso de Uso: Registro de documentos Habilitantes -56-

Sistema para seguimiento de gestiones de la vinculación con la sociedad ACTUALIZACIÓN DEL TIPO DE GESTIÓN ACADÉMICA: USUARIO VINCULACIÓN_ ACTUALIZACIÓN TIPO GESTIÓN ACADÉMICA Figura 3.18 Diagrama de Casos de Uso: Actualización Tipo Gestión Académica UC070 ACTORES DESCRIPCIÓN PRECONDICIÓN Actualización de información del tipo de gestión académica Personal del Departamento de Vinculación con la Sociedad de la Facultad de Cultura Física. SIVSOFT permite guardar y actualizar la información del tipo de gestión académica. Tener asignado un tipo de gestión académica. SECUENCIA PASO ACCIÓN 1 Se selecciona en la tabla el tipo de gestión académica. 2 3 Se presenta los datos del tipo de documento académico seccionado. El usuario modifica los datos pertinentes según la necesidad que se presente. -57-

Sistema para seguimiento de gestiones de la vinculación con la sociedad NORMAL 4 Finalmente se guarda las modificaciones realizadas para el tipo de gestión académica seleccionada. EXCEPCIÓN 5 6 PASO 4,5 El usuario puede crear gestiones utilizando los cambios seleccionados. Los cambios realizados para el tipo de gestión académica serán visualizados en las nuevas gestiones creadas. ACCIÓN Mientras los campos obligatorios no hayan sido llenados SIVSOFT no podrá actualizar la información. Tabla 3.5 Caso de Uso: Actualización Tipo Gestión Académica -58-

Sistema para seguimiento de gestiones de la vinculación con la sociedad INGRESO Y ACTUALIZACIÓN DEL PERIODO ACADÉMICO USUARIO VINCULACIÓN_ INGRESO PERIODO ACADÉMICO ACTUALIZACIÓN PERIODO ACADÉMICO Figura 3.19 Diagrama de Casos de Uso: Ingreso y Actualización del Periodo Académico UC080 ACTORES DESCRIPCIÓN Ingreso o Actualización del Periodo Académico para las gestiones del departamento de vinculación. Personal del Departamento de Vinculación con la Sociedad de la Facultad de Cultura Física. SIVSOFT permite guardar o actualizar la información que se ingresa de un periodo académico. PRECONDICIÓN Tener asignado un tipo de gestión académica. SECUENCIA PASO ACCIÓN El usuario selecciona o genera un periodo 1 académico, 2 Se presenta un campo con la descripción a ingresar o actualizar. Se graba o actualiza el periodo académico. 3 NORMAL EXCEPCIÓN 4 PASO 4,5,6,7 Finalmente el ingreso o actualización del periodo académico se visualizara en las nuevas gestiones académicas. ACCIÓN Mientras el campo obligatorio (Descripción) no hayan sido llenados SIVSOFT no podrá actualizar o ingresar la información. Tabla 3.6 Caso de Uso: Ingreso y Actualización del Periodo Académico -59-

Sistema para seguimiento de gestiones de la vinculación con la sociedad INGRESO, EN PROCESO Y APROBACIÓN DE LA PRÁCTICA PRE PROFESIONAL APROBAR PRÁCTICA PREPROFESIONAL GENERAR FORMATO PARA LA PRÁCTICA PREPROFESIONAL USUARIO VINCULACIÓN PROCESAR PRÁCTICA PREPROFESIONAL HABILITAR DOCUMENTOS REQUERIDOS PARA LA PRÁCTICA PREPROFESIONAL INGRESO PRÁCTICA PREPROFESIONAL ASIGNAR INSTITUCIÓN PARA LA PRÁCTICA PREPROFESIONAL Figura 3.20 Diagrama de Casos de Uso: Ingreso, En Proceso y Aprobación de la Práctica Preprofesional UC090 ACTORES Ingresar, Procesar y Aprobar una Práctica Preprofesional Personal del Departamento de Vinculación con la Sociedad de la Facultad de Cultura Física. DESCRIPCIÓN PRECONDICIÓN SIVSOFT permite ingresar, procesar y aprobar una práctica Preprofesional para el departamento de Vinculación de la Sociedad de la facultad de Cultura Física. Tener asignado un estudiante, supervisor, periodo académico, institución y al menos un documento requerido. SECUENCIA PASO ACCIÓN NORMAL 1 2 Una vez que el usuario ha creado un tipo de gestión académica y documentos habilitantes se procede a ingresar una práctica Preprofesional. Después que se ingresa la práctica Preprofesional, se procede a asignar una institución para poder procesar la práctica. -60-

Sistema para seguimiento de gestiones de la vinculación con la sociedad 3 Inmediatamente después de haber procesado la práctica se adjunta los documentos habilitantes. EXCEPCIÓN 4 5 PASO 4 Una vez cargado los documentos satisfactoriamente, se procede a aprobar la práctica. En este estado se genera el formato de la práctica para el estudiante. ACCIÓN Para poner en proceso la práctica se necesita asignar la institución, para aprobar la práctica se necesita adjuntar los documentos y para generar el formato es necesario tener aprobada la práctica Tabla 3.7 Caso de Uso: Ingreso, En Proceso y Aprobación de la Práctica Preprofesional INGRESO, EN PROCESO Y APROBACIÓN DE LA PASANTÍA APROBAR PASANTÍA GENERAR FORMATO PARA PASANTÍA USUARIO VINCULACIÓN3 PROCESAR PASANTÍA HABILITAR DOCUMENTOS REQUERIDOS PARA PASANTÍA INGRESO PASANTÍA ASIGNAR INSTITUCIÓN PARA PASANTÍA Figura 3.21 Diagrama de Casos de Uso: Ingreso, En Proceso y Aprobación de la Pasantía -61-

Sistema para seguimiento de gestiones de la vinculación con la sociedad UC090 ACTORES Ingresar, Procesar y Aprobar una Pasantía. Personal del Departamento de Vinculación con la Sociedad de la Facultad de Cultura Física. DESCRIPCIÓN PRECONDICIÓN SIVSOFT permite ingresar, procesar y aprobar una pasantía para el departamento de Vinculación de la Sociedad de la facultad de Cultura Física. Tener asignado un estudiante, supervisor, periodo académico, institución y al menos un documento requerido. SECUENCIA PASO ACCIÓN NORMAL 1 2 Una vez que el usuario ha creado un tipo de gestión académica y documentos habilitantes se procede a ingresar una pasantía. Después que se ingresa la pasantía, se procede a asignar una institución para poder procesar la pasantía. 3 Inmediatamente después de haber procesado la pasantía, se adjunta los documentos habilitantes. EXCEPCIÓN 4 5 PASO 4 Una vez cargado los documentos satisfactoriamente se procede a aprobar la pasantía. En este estado se genera el formato de la pasantía para el estudiante. ACCIÓN Para poner en proceso la pasantía se necesita asignar la institución, para aprobar la pasantía se necesita adjuntar los documentos y para poder generar el formato es necesario tener aprobada la pasantía. Tabla 3.8 Caso de Uso: Ingreso, En Proceso y Aprobación de la Pasantía -62-

Sistema para seguimiento de gestiones de la vinculación con la sociedad INGRESO, EN PROCESO Y APROBACIÓN DEL DESARROLLO COMUNITARIO APROBAR DESARROLLO COMUNITARIO GENERAR FORMATO PARA DESARROLLO COMUNITARIO USUARIO VINCULACIÓN4 PROCESAR DESARROLLO COMUNITARIO HABILITAR DOCUMENTOS REQUERIDOS PARA DESARROLLO INGRESO DESARROLLO COMUNITARIO ASIGNAR INSTITUCIÓN PARA DESARROLLO COMUNITARIO Figura 3.22 Diagrama de Casos de Uso: Ingreso, En Proceso y Aprobación del Desarrollo Comunitario UC100 ACTORES Ingresar, Procesar y Aprobar un desarrollo comunitario. Personal del Departamento de Vinculación con la Sociedad de la Facultad de Cultura Física. DESCRIPCIÓN PRECONDICIÓN SIVSOFT permite ingresar, procesar y aprobar un desarrollo comunitario para el departamento de Vinculación de la Sociedad de la facultad de Cultura Física. Tener asignado un estudiante, supervisor, periodo académico, institución y al menos un documento requerido. SECUENCIA PASO ACCIÓN NORMAL 1 2 Una vez que el usuario ha creado un tipo de gestión académica y documentos habilitantes se procede a ingresar un desarrollo comunitario. Después que se ingresa, se procede a asignar una institución para poder procesar el desarrollo comunitario. -63-

Sistema para seguimiento de gestiones de la vinculación con la sociedad EXCEPCIÓN 3 4 5 PASO 4 Inmediatamente después de haber procesado el desarrollo comunitario, se adjunta los documentos habilitantes. Una vez cargado los documentos satisfactoriamente se procede a aprobar el desarrollo comunitario. En este estado se genera el formato del desarrollo comunitario para el estudiante. ACCIÓN Para poner en proceso el desarrollo comunitario se necesita asignar la institución, para aprobar el desarrollo comunitario se necesita adjuntar los documentos y para poder generar el formato es necesario tener aprobada el desarrollo comunitario. Tabla 3.9 Caso de Uso: Ingreso, En Proceso y Aprobación del Desarrollo Comunitario -64-

Sistema para seguimiento de gestiones de la vinculación con la sociedad MODULO ESTUDIANTE SUPERVISOR REGISTRO Y ACTIVACIÓN DEL ESTUDIANTE EDITAR ESTUDIANTE ACTIVAR ESTUDIANTE INACTIVAR ESTUDIANTE USUARIO VINCULACIÓN5 INGRESO ESTUDIANTE Figura 3.23 Diagrama de Casos de Uso: Registro y Activación del Estudiante UC110 ACTORES DESCRIPCIÓN PRECONDICIÓN Registro y activación del estudiante. Personal del Departamento de Vinculación con la Sociedad de la Facultad de Cultura Física. SIVSOFT cuenta con un debido procedimiento para el registro y activación de un estudiante. Técnicamente no existe una precondición, ya que el estudiante es uno de los principales factores para la generación de gestiones. SECUENCIA PASO ACCIÓN 1 Se ingresa en el formulario para estudiante. 2 Se llena todos los datos obligatorios y de importancia del estudiante. -65-

Sistema para seguimiento de gestiones de la vinculación con la sociedad NORMAL Al momento de ejecutar el Grabar, se valida 3 que los campos obligatorios estén llenos, después los datos del estudiantes se almacenan en el sistema. 4 Un vez grabado con éxito, se ejecuta el botón activar, el cual cambia de estado (activo) al estudiante, para la creación de gestiones académicas. EXCEPCIÓN PASO 3 4 ACCIÓN En el caso de que no se ingrese los datos obligatorios, el estudiante no será registrado en el sistema. Si se inactiva el estudiante no se podrá generar gestiones. (práctica Preprofesional, pasantía y desarrollo comunitario) Tabla 3.10 Caso de Uso: Registro y Activación del Estudiante REGISTRO Y ACTIVACIÓN DEL SUPERVISOR EDITAR SUPERVISOR USUARIO VINCULACIÓN6 ACTIVAR SUPERVISOR INACTIVAR SUPERVISOR INGRESO SUPERVISOR Figura 3.24 Diagrama de Casos de Uso: Registro y Activación del Supervisor -66-

Sistema para seguimiento de gestiones de la vinculación con la sociedad UC120 ACTORES Registro y activación del estudiante. Personal del Departamento de Vinculación con la Sociedad de la Facultad de Cultura Física. DESCRIPCIÓN SIVSOFT cuenta con un debido procedimiento para el registro y activación de un estudiante. PRECONDICIÓN Técnicamente no existe una precondición, ya que el supervisor es uno de los principales factores para la generación de gestiones. SECUENCIA PASO ACCIÓN NORMAL EXCEPCIÓN 1 2 3 4 PASO 4 Se ingresa en el formulario para supervisor. Se llena todos los datos obligatorios y de importancia del supervisor. Al momento de ejecutar el Grabar, se valida que los campos obligatorios estén llenos, después los datos del supervisor se almacenan en el sistema. Un vez grabado con éxito, se ejecuta el botón activar, el cual cambia de estado (activo) al supervisor, para la creación de gestiones académicas. ACCIÓN Si se inactiva el supervisor no se podrá generar gestiones. (práctica Preprofesional, pasantía y desarrollo comunitario) Tabla 3.11 Caso de Uso: Registro y Activación del Supervisor -67-

Sistema para seguimiento de gestiones de la vinculación con la sociedad REGISTRO Y ACTIVACIÓN DE LA INSTITUCIÓN EDITAR INSTITUCIÓN USUARIO VINCULACIÓN APROBAR INSTITUCIÓN INACTIVAR INSTITUCIÓN INGRESO INSTITUCIÓN Figura 3.25 Diagrama de Casos de Uso: Registro y Activación de la Institución UC130 Registro y activación de la institución ACTORES DESCRIPCIÓN PRECONDICIÓN Personal del Departamento de Vinculación con la Sociedad de la Facultad de Cultura Física. SIVSOFT cuenta con un debido procedimiento para el registro y activación de una institución. Técnicamente no existe una precondición, ya que la institución es uno de los principales factores para la generación de gestiones. SECUENCIA PASO ACCIÓN -68-

Sistema para seguimiento de gestiones de la vinculación con la sociedad 1 Se ingresa en el formulario para la institución. NORMAL EXCEPCIÓN 2 3 4 PASO 4 Se llena todos los datos obligatorios y de importancia de la institución. Al momento de ejecutar el Grabar, se valida que los campos obligatorios estén llenos, después los datos de la institución se almacenan en el sistema. Un vez grabado con éxito, se ejecuta el botón activar, el cual cambia de estado (activo) a la institución, para la creación de gestiones académicas. ACCIÓN Si se inactiva el supervisor no se podrá generar gestiones. (práctica Preprofesional, pasantía y desarrollo comunitario) Tabla 3.12 Caso de Uso: Registro y Activación de la Institución -69-

Sistema para seguimiento de gestiones de la vinculación con la sociedad MÓDULO ADMINISTRADOR GESTIONAR INGRESO DE USUARIOS (PERSONAL DEL DEPARTAMENTO DE VINCULACIÓN) ASIGNAR PERFILES ASIGNAR ROLES ADMINISTRADOR DEL SISTEMA INGRESO USUARIO ACTIVAR USUARIO Figura 3.26 Diagrama de Casos de Uso: Gestionar Ingreso de Usuarios UC140 Gestionar Ingreso, activación y asignación de perfiles y roles. ACTORES DESCRIPCIÓN PRECONDICIÓN Usuario Administrador encargado de la parte funcional del sistema. SIVSOFT cuenta con un módulo para el usuario administrador con la finalidad de gestionar usuarios para que puedan navegar en el sistema El usuario administrador debe tener definidos los roles y perfiles para el usuario ha crear. SECUENCIA PASO ACCIÓN NORMAL 1 2 Una vez logueado el administrador del sistema debe dirigirse a Usuarios. En la opción Usuarios se presenta un formulario, donde se ingresa los datos obligatorios y de importancia de la persona. -70-

Sistema para seguimiento de gestiones de la vinculación con la sociedad EXCEPCIÓN 3 El administrador da la opción guardar en donde los datos son almacenados en el sistema. Después de ingresado los datos de la persona, se 4 procede a realizar la activación, en donde la contraseña coincide con el usuario para que pueda loguearse. Consecutivamente el administrador procede a 5 asignar roles y perfiles al usuario activado, dependiendo de la función que tenga que desempeñar en el sistema. Una vez configurado el usuario, el mismo procede 6 a loguearse y poder cambiar la contraseña, para poder ingresar de modo seguro. PASO 4 ACCIÓN El administrador tiene la opción de no activar el usuario si considera que no cumple con lo requerido. Tabla 3.13 Caso de Uso: Gestionar Ingreso de Usuarios -71-

Sistema para seguimiento de gestiones de la vinculación con la sociedad GENERAR REPORTES USUARIO VINCULACIÓN2 GENERAR REPORTE Figura 3.27 Diagrama de Casos de Uso: Generar Reportes UC150 Generar Reportes ACTORES DESCRIPCIÓN PRECONDICIÓN Personal del Departamento de Vinculación con la Sociedad de la Facultad de Cultura Física. SIVSOFT cuenta con un módulo para la generación de reportes. El usuario administrador debe iniciar sesión con las credenciales registradas. SECUENCIA PASO ACCIÓN 1 Una vez logueado el personal del departamento de vinculación debe dirigirse a la opción Reportes. NORMAL EXCEPCIÓN 2 3 5 6 PASO 3,4,5 En la opción Reportes se podrán generar los reportes que se solicitó para el departamento de vinculación de la Facultad de Cultura Física. Los reportes serán presentados de acuerdo al estudiante, supervisor o institución definido en la búsqueda. Consecutivamente estos reportes pueden ser importados a Excel. El usuario administrador generará reportes periódicos con la finalidad de conocer la situación actual de cada estudiante dependiendo la gestión asignada. ACCIÓN El usuario debe seleccionar el tipo de reporte que desea generar, caso contrario no puede generar los reportes. Tabla 3.14 Caso de Uso: Generar Reportes -72-

Sistema para seguimiento de gestiones de la vinculación con la sociedad 3.6 DIAGRAMAS DE SECUENCIA Según, Wikipedia Diagrama de secuencia (2011), define: El diagrama de secuencia es un tipo de diagrama usado para modelar la interacción entre los objetos en un sistema según UML. Un diagrama de secuencia muestra la interacción de un conjunto de objetos en una aplicación a través del tiempo y se modela para cada caso de uso. Mientras que el diagrama de casos de uso permite el modelado de una vista business del escenario, el diagrama de secuencia contiene detalles de implementación del escenario, incluyendo los objetos y clases que se usan para implementar el escenario y mensajes intercambiados entre los objetos. Si se dispone de la descripción de cada caso de uso como una secuencia de varios pasos, entonces se puede caminar sobre esos pasos para descubrir que objetos son necesarios para que se pueda seguir los pasos. Un diagrama de secuencia muestra los objetos que intervienen en el escenario. Para el desarrollo de SIVSOFT se considera los siguientes diagramas de secuencia que representan a los procesos que manejará el sistema: -73-

Sistema para seguimiento de gestiones de la vinculación con la sociedad INICIAR SESIÓN:PERSONAL VINCULACIÓN CON LA SOCIEDAD ADMINISTRADOR INICIO SESIÓN USUARIO VINCULACIÓN - ADMINISTRADOR INTERFAZ DE INICIO DE SESIÓN SIVSOFT BASE DE DATOS 1:Petición de inicio de sesión 1.1:Introducción de credenciales 1.1.1:Verificación de credenciales 1.1.2:Confirmación exitosa 2.1:Inicio de sesión aceptado 2:Inicio de sesión aceptado Figura 3.28 Diagrama de Secuencia: Iniciar Sesión -74-

Sistema para seguimiento de gestiones de la vinculación con la sociedad REGISTRO DOCUMENTOS REQUERIDOS REGISTRO DOCUMENTOS REQUERIDOS USUARIO (DEPARTAMENTO DE VINCUALCIÓN) INTERFAZ REGISTRO DOCUMENTACIÓN SIVSOFT BASE DE DATOS 1:Petición de registro 1.1:Llenar formulario 1.1.1:Verificación de campos (obligatorios y tipo) 2:Confirmación 2.1:Almacenamiento de datos 3.1.1:Registro aceptado 3.1:Registro aceptado 3:Registro aceptado Figura 3.29 Diagrama de Secuencia: Registro Documentos Requeridos -75-

Sistema para seguimiento de gestiones de la vinculación con la sociedad REGISTRO PERIODO ACADÉMICO REGISTRO PERIODO ACADÉMICO USUARIO (DEPARTAMENTO DE VINCUALCIÓN) INTERFAZ REGISTRO PERIODO SIVSOFT BASE DE DATOS 1:Petición de registro 1.1:Llenar formulario 1.1.1:Verificación de campos (obligatoriso y tipo) 2:Confirmación 2.1:Almacenamiento de datos 3.1.1:Registro aceptado 3.1:Registro aceptado 3:Registro aceptado Figura 3.30 Diagrama de Secuencia: Registro Periodo Académico -76-

Sistema para seguimiento de gestiones de la vinculación con la sociedad REGISTRO, ACTIVACIÓN DE ESTUDIANTE SUPERVISOR - INSTITUCIÓN REGISTRO, ACTIVACIÓN ESTUDIANTE, SUPERVISOR Y INSTITUCIÓN USUARIO (DEPARTAMENTO DE VINCUALCIÓN) INTERFAZ REGISTRO - ACTIVACIÓN SIVSOFT BASE DE DATOS 1:Petición de registro 1.1_Llenar formulario 1.1.1:verificación de campos (obligatorios y tipo) 2:Confirmación 2.1:Almacenamiento de datos 3.1.1:Registro aceptado 3.1:Registro aceptado 3:Registro aceptado 4:Activación 4.1:Petición activación 4.1.1:Verificación estado ingresado 5:Confirmación 5.1:Almacenamiento cambio estado activación 6.1.1:Activación aceptado 6.1:Activación aceptado 6:Activación aceptado Figura 3.31 Diagrama de Secuencia: Registro, Activación de Estudiante Supervisor Institución -77-

Sistema para seguimiento de gestiones de la vinculación con la sociedad REGISTRO, EN PROCESO Y APROBACIÓN DE UNA GESTIÓN ACADÉMICA REGISTRO - EN PROCESO - APROBACIÓN GESTIÓN ACADÉMICA USUARIO (DEPARTAMENTO DE VINCUALCIÓN) INTERFAZ REGISTRO - EN PROCESO - APROBACIÓN GESTIÓN SIVSOFT BASE DE DATOS 1:Petición Registro 1.1:Llenar formulario 1.1.1:Verificación de campos (obligatorios y tipo) 2:Confirmación 2.1:Almacenamiento de datos 3.1.1:Registro aceptado 3.1:Registro aceptado 3:Regitro aceptado 4:En Proceso 4.1:Petición en Proceso 4.1.1:Verificación estado Ingresado y asignación institución 5:Confirmación 5.1:Almacenamiento cambio estado en Proceso 6.1:En Proceso aceptado 6:En Proceso aceptado 6.1.1:En Proceso aceptado 7:Aprobación 7.1:Petición Aprobación 7.1.1:Verificación estado en Proceso y adjunto documentos requeridos 8:Confirmación 8.1:Almacenamiento cambio estado Aprobación 9.1:Aprobación aceptada 9:Aprobación aceptada 9.1.1:Aprobación aceptada Figura 3.32 Diagrama de Secuencia: Registro, En Proceso y Aprobación de una Gestión Académica -78-

Sistema para seguimiento de gestiones de la vinculación con la sociedad REGISTRO Y ASIGNACIÓN DE PERFILES DE USUARIOS REGISTRO Y ASIGNACIÓN DE PERFILES DE USUARIOS USUARIO VINCULACIÓN ADMINISTRADOR INTERFAZ DE USUARIO SIVSOFT BASE DE DATOS 1:Petición Registro 1.1:Llenar formulario 1.1.1:Verificación de campos (obligatorios y tipo) 2:Confirmación 2.1_Almacenamiento de datos 3.1:Registro aceptado 3:Registro aceptado 3.1.1:Registro aceptado 4:Perfiles 4.1:Petición y Selección de Perfiles 4.1.1:Verificación existencia perfiles 5:Confirmación 5.1:Almacenamiento perfiles usuario 6.1:Asignación Perfiles aceptado 6:Asignación Perfiles aceptado 6.1.1:Asignación Perfiles aceptado Figura 3.33 Diagrama de Secuencia: Registro y Asignación de perfiles de usuarios -79-

Sistema para seguimiento de gestiones de la vinculación con la sociedad GENERACIÓN DE REPORTES Generación de Reportes USUARIO (DEPARTAMENTO DE VINCUALCIÓN) INTERFAZ REPORTES SIVSOFT BASE DE DATOS 1:Petición Reporte 1.1:Llenar Busqueda Reporte 1.1.1:Busqueda información requerida 2.1.1:Reporte Generado 2.1:Reporte Generado 2:Confirmación Figura 3.34 Diagrama de Secuencia: Generación de Reportes -80-

CAPÍTULO IV: 4. HERRAMIENTAS DE DESARROLLO Para el diseño y desarrollo de SIVSOFT propuesto se hará uso de las siguientes herramientas: Lenguaje de Programación: Java Persistencia a la Base de Datos: Hibernate 37 (JPA 2.0) Clases de Negocio: EJB 3.1 Herramientas de vista: JSF 2.0 (Primefaces), HTML, JavaScript, JQuery. IDE de desarrollo: Eclipse Indigo Servidor de Aplicaciones: JBoss 7.1 Base de datos: PostgreSQL 9.3.3-1 Pentaho report designer 5.2 4.1 INSTALACIÓN DE LAS HERRAMIENTAS DE DESARROLLO EMPLEADAS EN SIVSOFT JAVA DEVELOPMENT KIT JDK Según, Wiki JDK. (2013), define: Se trata de un software que provee un conjunto de herramientas (programas y bibliotecas) que permiten desarrollar programas en lenguaje Java o aplicaciones web. En los sistemas operativos Microsoft Windows sus variables de entorno son: JAVAPATH: corresponde a la ruta completa del directorio donde estará instalado el JDK. CLASSPATH: bibliotecas o clases de usuario. PATH: variable donde se agrega la ubicación del JDK. 37 Hibernate: Herramienta de mapeo objeto-relacional para la plataforma Java. -83-

Java Development Kit incluye los siguientes programas: javac.exe: es el compilador de Java. java.exe: es el intérprete de Java. javadoc.exe: genera la documentación de las clases Java de un programa. appletviewer.exe: es un visor de applets para generar sus vistas previas, ya que un applet carece de un método main y no se puede ejecutar con el programa java. 4.1.1 INSTALACIÓN DEL JDK El objetivo del primer paso es descargar el JDK de acuerdo al Sistema Operativo que se usará para el desarrollo del sistema. Descargar la versión que corresponda aceptando los términos de licencia desde el sitio oficial de Oracle: http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html La versión del JDK que fue descargada es jdk-7u45-windows-i586.exe Se Ejecuta el archivo descargado jdk-7u45-windows-i586.exe y presenta la siguiente pantalla de bienvenida, continuar la instalación. Figura 4.1 Pantalla de bienvenida a la instalación del JDK -84-

Por defecto el sistema operativo muestra la ruta posible de instalación del software que puede ser modificada sin problema alguno, adicionalmente muestra las características a instalar; las mismas que pueden ser instaladas o removidas después de la instalación, continuar con la instalación. Figura 4.2 Ruta de instalación y características a instalar El proceso continúa con la validación e instalación del ambiente de desarrollo. -85-

Figuras 4.3 Validación e Instalación del ambiente Ahora muestra la posible ruta de instalación del JRE de Java, esta ruta se define por defecto, con la posibilidad de cambiar la misma si así lo requieren, para nuestro caso continuamos la instalación. Figura 4.4 Asignar dirección instalación del JDK -86-

Finalmente la interfaz muestra el progreso de la instalación una vez que han sido definidos y establecidos los parámetros requeridos. Figura 4.5 Progreso de la Instalación del software Luego de varios minutos la instalación ha terminado con éxito, el JDK ha sido instalado correctamente en el sistema operativo anfitrión. Figura 4.6 Instalación exitosa -87-

Ahora se debe configurar las variables de entorno 38 necesarias para el desarrollo, para ello se debe acceder a Configuración avanzada del sistema; por tanto los pasos que se debe seguir son: Clic en el botón Inicio. Clic derecho en Equipo y seleccionar Propiedades. En la parte superior izquierda buscar y dar un clic en Configuración avanzada del sistema; se debe obtener la siguiente pantalla: Figura 4.7 Propiedades del Sistema Operativo Una vez que se ha ingresado a Propiedades del sistema, verificar que nos encontramos en la pestaña de Opciones avanzadas, ahora se debe seleccionar la opción Variables de entorno, se presenta la siguiente pantalla. 38 Variable de Entorno: las variables de entorno forman un conjunto de valores dinámicos que normalmente afectan el comportamiento de los procesos en una computadora. -88-

Figura 4.8 Variables de entorno En la sección de variables de usuario debemos crear una nueva variable, para ello seleccionar la opción Nueva e introducir JAVA_HOME en el nombre de la variable y como valor de la misma la ruta de instalación del JDK, posteriormente seleccionar la opción Aceptar. Figura 4.9 Nueva variable de usuario -89-

Ahora que hemos agregado una nueva variable de usuario continuamos en la sección de Variables del sistema y seleccionamos la variable Path, dentro de esta seleccionar la opción Editar y agregar al final separando con un (;). %JAVA_HOME%\bin, finalmente clic en Aceptar. Figura 4.10 Variable Path editada Para verificar el funcionamiento se debe abrir una nueva ventana de CMD y escribir el comando java -version, cuyo resultado debe ser similar al de la pantalla siguiente: Figura 4.11 Versión de Java instalada 39 Licencia BSD: es la licencia de software otorgada principalmente para los sistemas BSD (Berkeley Software Distribution), tiene menos restricciones en comparación con otras como la GPL estando muy cercana al dominio público y permite el uso del código fuente en software no libre. -90-

POSTGRESQL PostgreSQL es un sistema de gestión de bases de datos objeto-relacional, distribuido bajo licencia BSD 39 y con su código fuente disponible libremente. Es el sistema de gestión de bases de datos de código abierto más potente del mercado y en sus últimas versiones no tiene nada que envidiarle a otras bases de datos comerciales. PostgreSQL utiliza un modelo cliente/servidor y usa multiprocesos en vez de multihilos para garantizar la estabilidad del sistema. Un fallo en uno de los procesos no afectará el resto y el sistema continuará funcionando. Figura 4.12 Componentes en sistema PostgreSQL Fuente http://www.postgresql.org.es/ -91-

Aplicación cliente: Esta es la aplicación cliente que utiliza PostgreSQL como administrador de bases de datos. Demonio postmaster: Es el proceso principal de PostgreSQL, es el encargado de escuchar por un puerto/socket por conexiones entrantes de clientes. Es el encargado de crear procesos hijos que se encargarán de autentificar estas peticiones, gestionar las consultas y mandar los resultados a las aplicaciones clientes. Ficheros de configuración: Los tres ficheros principales de configuración utilizados por PostgreSQL son: postgresql.conf pg_hba.conf pg_ident.conf Procesos hijos postgres: Procesos hijos que se encargan de autentificar a los clientes y gestionar las consultas como mandar los resultados a las aplicaciones clientes. PostgreSQL share buffer cache: Memoria compartida usada por PostgreSQL para almacenar datos en caché. Write-Ahead Log (WAL): Componente del sistema encargado de asegurar la integridad de los datos (recuperación de tipo REDO). Kernel disk buffer cache: Caché de disco del sistema operativo. Disco: Disco físico donde se almacenan los datos y toda la información necesaria para que PostgreSQL funcione. 4.1.2 INSTALACIÓN DE POSTGRESQL 9.3.3-1 El objetivo del primer paso es descargar el PostgreSQL desde el sitio oficial: http://www.postgresql.org/download/windows/ La versión de PostgreSQL descargada es postgresql-9.3.3-1-windows.exe -92-

Se Ejecuta el archivo descargado postgresql-9.3.3-1-windows.exe, si el sistema operativo anfitrión necesita software complementario lo instalará previamente, es importante mencionar que lo debemos ejecutar como administrador, para ello clic derecho sobre el archivo y seleccionar Ejecutar como administrador. Figura 4.13 Software necesario para PostgreSQL Una vez instalado el software previo necesario continúa la pantalla de bienvenida de PostgreSQL, clic en Siguiente. -93-

Figura 4.14 Pantalla de bienvenida a PostgreSQL Como siguiente paso muestra el directorio de instalación del software en el cual se guardarán las librerías, ejecutables y ficheros de configuración; es importante mencionar que esta ruta pude ser modificada definiendo un nuevo directorio de instalación. Figura 4.15 Directorio de Instalación -94-

Como siguiente paso muestra el directorio de datos, es importante mencionar que esta ruta pude ser modificada definiendo un nuevo directorio, clic en Siguiente. Figura 4.16 Directorio de Datos Se debe proporcionar la contraseña para el súper usuario que será la misma con la que debemos iniciar sesión para administrar la base de datos. Figura 4.17 Contraseña de Superusuario -95-

Muestra pos defecto el puerto de escucha que será usado para la conexión con el servidor, este puerto por defecto es el 5432, clic en Siguiente para continuar el proceso de instalación. Figura 4.18 Configuración de puerto escucha Muestra la pantalla de Configuración Regional, dejar la que viene por defecto y continuar la instalación. Figura 4.19 Configuración Regional -96-

Una vez que se han definido todos los parámetros iniciará la instalación de PostgreSQL en el computador. Figuras 4.20 Instalación en Proceso -97-

Finalmente la instalación de PostgreSQL se ha completado correctamente en el computador. Figura 4.21 Instalación Finalizada Cabe mencionar que finalizada la instalación se puede ejecutar el Stack Builder para descargar e instalar herramientas, controladores y aplicaciones complementarias a PostgreSQL. -98-

Figuras 4.22 Stack Builder 4.1.3 CONFIGURACIÓN DE POSTGRESQL 9.3.3-1 Como primer paso acceder a PostgreSQL 93.3-1, para ello ir al botón Inicio Todos los programas PostgreSQL 9.3 y ejecutar el pgadmin III. Figuras 4.23 Accediendo a PostgreSQL 9.3.3-1 Ahora dentro de la interfaz de pgadmin III debemos ubicarnos en Object browser Server Groups Servers clic derecho sobre PostgreSQL 9.3.3-1 localhost:5432) y seleccionar Connect. -99-

Figura 4.24 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. Figura 4.25 Introducción de clave de súper usuario -100-

Ahora se debe crear nuestra base de datos, para ello clic derecho sobre Databases y seleccionar la opción New Database. Figura 4.26 Nueva Base de Datos Dentro de New Database introducir un nombre para nuestra base de datos y verificar que el propietario es postgres. Figura 4.27 Nombre de la Nueva Base de Datos -101-

Finalmente la base de datos ha sido creada con éxito, es importante mencionar que la base de datos puede ser administrada desde ésta consola o si se prefiere existen consolas de administración para la base de datos. Para restaurar la base de datos es necesario ejecutar el Script correspondiente al backup del sistema desarrollado, para ello seleccionar la opción Restore. Figura 4.28 Restauración del backup -102-

Dentro de la nueva interfaz seleccionar File Open, con el objetivo de seleccionar el archivo a ser ejecutado. Figuras 4.29 Selección del archivo correspondiente al backup Una vez que se ha seleccionado el archivo.sql clic en Restore, ahora la base de datos empecerá a restaurar todos los datos, esto llevar algunos minutos. Finalmente la base de datos está lista con último respaldo generado en el Script, ahora es momento de trabajar con JBoss AS 7.1. -103-

Figura 4.30 Backup de la base de datos restaurado JBOSS APPLICATION SERVER 7.1 Según, Wiki JBoss Application Server. (2013), define: JBoss es un servidor de aplicaciones Java EE de código abierto implementado en Java puro. JBoss AS 7 es conocido por ser uno de los mejores servidores de aplicaciones Java EE con respecto a tiempo de arranque y el consumo de memoria. La configuración del servidor de aplicaciones JBoss es centralizada, simple y centrada en el usuario. Para la gestión y configuración JBoss dispone de una consola web fácil de usar y una herramienta de líneas de comandos CLI 40. En el proceso de arranque JBoss es altamente optimizada, los servicios se inician al mismo tiempo para eliminar esperas innecesarias y aprovechar el poder de los procesadores multi-core. JBoss AS 7 ofrece una reducción de 10 veces en el tiempo de inicio con respecto aversiones anteriores. 40 CLI: Interfaz de Líneas de Comandos, es un método que permite a las personas dar instrucciones a algún programa informático por medio de una línea de texto simple. Debe notarse que los conceptos CLI, Shell y Emulador de terminal no son lo mismo. -104-

Figura 4.31 Arquitectura de JBoss AS 7 Fuente Globalmentoring Cabe mencionar a los principales directorios de la estructura de JBoss AS 7, estos directorios son: bin representa al directorio que contiene los ejecutables utilizados por JBoss, siendo el más importante Script de arranque utilizado por éste. modules Contiene los diversos archivos JAR s que serán utilizados por los distintos clientes de los EJB s. deployments este directorio es ampliamente utilizado ya que sí se colocan los EJB s en forma de archivos jar, archivos war y archivos ear son ejecutados por Jboss. Una vez que se ha colocado el archivo ear en este directorio, Jboss automáticamente expande y lo ejecuta. -105-

4.1.4 INSTALACIÓN DE JBOSS AS 7.1 Como es prioritario, el primer paso es descargar JBoss desde su página oficial, para ello ingresar al siguiente portal: http://www.jboss.org/jbossas/downloads/ Ahora es importante descomprimir el archivo jboss-as-7.1.1.final.zip y copiar la carpeta en el disco (C:), como recomendación crear una nueva carpeta JavaEE en el Disco Local (C:) y pegar la carpeta descomprimida en la misma. Es importante acotar que JBoss es un servidor de aplicaciones y su instalación depende sólo de descomprimirlo y ejecutarlo. -106-

Figuras 4.32 Directorios de JBoss As 7 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. -107-

Figuras 4.33 Arranque de JBoss As 7 en el consola de Windows En la consola se puede verificar los errores de ejecución y los resultados de agregar el.ear (VCS-FCF.ear) al directorio deployments de JBoss mientras esté activo. Ahora acceder a http://localhost:8080/ para verificar que JBoss arrancó correctamente, es importante verificar que el puerto 8080 está libre para la aplicación. Mientras la consola de Windows esté siendo ejecutada JBoss continuará funcionando, una vez que cerremos la consola de Windows JBoss se detendrá. -108-

Figura 4.34 Arranque de JBoss As 7.1 en el navegador 4.1.5 CONFIGURACIÓN DATASOURCE JBOSS AS 7.1 En este caso configuraremos el Datasource con PostgreSQL, para ello debemos ubicarnos en la carpeta del servidor jboss-as-7.1.1.final, luego acceder a modules org y dentro de esta crear una nueva carpeta llamada postgresql. Dentro ésta nueva carpeta crear una nueva carpeta llamada main. El Path final es el siguiente: jboss-as-7.1.1.final/modules/org/postgresql/main/ Ahora debemos descargar el conector respectivo a la versión de PostgreSQL de su sitio oficial http://jdbc.postgresql.org/download.html, este lo pegamos en la carpeta main que fue creada anteriormente -109-

En la misma carpeta main crear un nuevo archivo con el nombre module.xml, para ello dentro de la carpeta main clic derecho Nuevo Documento de texto y lo cambiamos de nombre como de extensión a la solicitada (module.xml). Como recomendación para editar archivos.xml utilizar Notepad++, clic derecho sobre module.xml y seleccionar la opción Edit with Notepad++ con la finalidad de agregar el contenido: <module xmlns="urn:jboss:module:1.0" name="org.postgresql"> <resources> <resource-root path=" postgresql-9.3-1101.jdbc4.jar "/> </resources> <dependencies> <module name="javax.api"/> <module name="javax.transaction.api"/> </dependencies> </module> Una vez editado el archivo no olvidar guardar los cambios, para ello seleccionar la opción Guardar. Figura 4.35 Editar module.xml Como siguiente paso se debe editar el archivo standalone.xml, para ello ubicarnos dentro del siguiente directorio: jboss-as-7.1.1.final/standalone/configuration/standalone.xml -110-

Clic derecho sobre standalone.xml y seleccionar la opción Edit with Notepad++ con la finalidad de agregar el contenido, para ello buscar el tag drivers y buscar la siguiente estructura: <driver name="h2" module="com.h2database.h2"> <xa-datasource-class>org.h2.jdbcx.jdbcdatasource </xa-datasource-class> </driver> Una vez ubicada la misma agregar la siguiente estructura: <driver name="org.postgresql" module="org.postgresql"> <xa-datasource-class>org.postgresql.xa.pgxadatasource </xa-datasource-class> </driver> Figura 4.36 Editar standalone.xml Finalmente debemos colocar el código para el datasource al que se hará referencia por medio del contexto de la aplicación, es decir; al que llamaremos cuando necesitemos conectarnos. Para ello dentro del tag datasources colocar la siguiente estructura: -111-

<datasource jta="true" jndi-name="java:/vcsfcfds" pool-name="vcsfcf" enabled="true" use-ccm="false"> <connection-url>jdbc:postgresql://127.0.0.1:5432/fcf-vcs </connection-url> <driver-class>org.postgresql.driver</driver-class> <driver>postgresql-9.3-1101.jdbc4.jar</driver> <security> <user-name>postgres</user-name> <password>admin</password> </security> <validation> <validate-on-match>false</validate-on-match> <background-validation>false</background-validation> </validation> <statement> <share-prepared-statements>false</share-prepared-statements> </statement> </datasource> Figura 4.37 Configuración final de datasource Finalmente se ha configurado el datasource para la conexión de la aplicación, para llamar desde el persistence.xml debemos escribir la siguiente estructura. <jta-data- source>java:jboss/datasources/vcsfcfds </jta-data- source> IDE DE DESARROLLO: ECLIPSE INDIGO Según, la web oficial de Eclipse www.eclipse.org define: An IDE for everything and nothing in particular, es español un IDE para todo y para nada en particular; se dice que es un potente IDE sobre el que se pueden montar herramientas de desarrollo para cualquier lenguaje de programación mediante la implementación de plugins 41 necesarios. -112-

Eclipse es una plataforma tecnológica orientada a distintos propósitos, es usado para crear IDEs para diferentes SDKs como también para herramientas de desarrollo. El uso más común de Eclipse consiste en tareas de escritura de código, testeo de código y depuración de software generalmente con la plataforma Java. 4.1.6 INSTALACIÓN DEL ENTORNO DE DESARROLLO INTEGRADO ECLIPSE (INDIGO) Como primer paso Eclipse debe ser descargado desde el sitio oficial: http://www.eclipse.org/downloads/. El proceso de instalación es sencillo ya que basta con extraer el archivo comprimido y ejecutar el archivo de inicio de la aplicación eclipse.exe en Windows. Es recomendable crear una carpeta en el Disco (C:), en este caso la carpeta creada es Java y dentro de la misma se encuentran las carpetas eclipse, jboss-as-7.1.1.final. Figuras 4.38 Pantallas de bienvenida de Eclipse Indigo 41 plugins: considerados aplicaciones que se relacionan con otra parte para aportarle una función nueva y generalmente muy específica. -113-

4.1.7 INSTALACIÓN DE PENTAHO REPORT DESIGNER 5.2.0 Lo primero que se debe realizar es descargarse Pentaho report designer desde la página oficial: http://community.pentaho.com/projects/reporting/ El proceso de instalación es muy sencillo, una vez descargado, se descomprime el archivo, en la carpeta creada anteriormente (carpeta Java en el disco C) tenemos la siguiente estructura: Figuras 4.39 Carpeta de archivos de Pentaho Report Designer Ejecutamos (doble clic) el archivo report-designer (report-designer.sh para linux), al abrir el PRD, lo primero que nos muestra es la siguiente pantalla: -114-

Figuras 4.40 Pantalla de Bienvenida de Pentaho Report Designer Le damos clic en la opción New Report, nos aparece un reporte en blanco con el que vamos a empezar a generar los reportes. Figuras 4.41 Pantalla para generar un nuevo reporte -115-

Una vez ingresado, creamos una conexión a nuestra base de, para ello nos dirigimos al menú de estructura de datos, se da clic en la pestaña Data, luego en Add Datasource y luego clic en la opción JDBC. Figuras 4.42 Pantalla para crear una nueva conexión a una base de datos Se nos abre el administrador de Data Source, donde vienen todas las conexiones que se ha establecido y las consultas que se ha creado, lo primero que se tiene que hacer es una conexión a la base de datos, para crear la conexión se da clic en el + verde de la parte de Connections en donde se abre otra pantalla y se llena los parámetros solicitados -116-

Figuras 4.43 Pantalla ingreso de datos para la conexión a postgres. Una vez llenos los datos, se da clic en el botón Test para probar la conectividad, en caso de que la conexión esta correcta, se presentará el siguiente mensaje: Figuras 4.44 Pantalla de conexión exitosa Una vez generado la conexión se procede a desarrollar los reportes requeridos para el sistema. -117-

4.2 JAVASERVER FACES (JSF 2.0) JavaServer Faces (JSF) es un framework para aplicaciones Java basadas en web que simplifican el desarrollo de interfaces de usuario en aplicaciones Java EE. Que de la mano de XUL (Lenguaje basado en XML para la interfaz de usuario), serán las tecnologías que permiten el despliegue de las páginas web como interfaz de usuario. JavaServer Faces incluye: 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. Un conjunto de APIs para representar componentes de una interfaz de usuario y administrar su estado, manejar eventos, validar entrada, definir un esquema de navegación de las páginas y dar soporte para internacionalización y accesibilidad. 4.3 PRIMEFACES Primefaces es un componente para JavaServer Faces que cuenta con un conjunto de componentes enriquecidos que facilitan la creación de aplicaciones web. Primefaces permite la integración con RichFaces. Dentro de las propiedades de Primefaces: Conjunto de componentes ricos (Editor HTML, gráficas o paneles). Soporte de AJAX con despliegue parcial, lo que permite controlar cuáles componentes de la página actual se actualizarán y cuáles no. 25 temas prediseñados. Componentes para desarrollar aplicaciones web para móviles. -118-

4.4 AJAX JavaScript Asíncrono y XML es una técnica de desarrollo web para crear aplicaciones interactivas o RIA (Rich Internet Applications). La aplicación web se debe ejecutar en el cliente, es decir, en el navegador del usuario mientras se mantiene la comunicación asíncrona con el servidor en segundo plano, AJAX es la tecnología asíncrona que ofrece esta característica. De esta forma es posible realizar cambios sobre las páginas sin necesidad de recargarlas, mejorando la interactividad, velocidad y usabilidad de la aplicación. 4.5 JQUERY JQuery es una librería de JavaScript para acceder a los objetos del DOM de un modo simplificado. Las aplicaciones en la Internet son cada vez más complejas ya que se incorporan efectos visuales, drag and drop, animaciones y desarrollar todos estos conceptos puede resultar complicado. Es por ello que el empleo de librerías como el jquery facilita el desarrollo de la aplicación. La librería jquery presenta las siguientes funcionalidades: Menos líneas de código. Hace transparente el soporte de la aplicación para los navegadores. Provee un mecanismo para la captura de eventos. Provee un conjunto de funciones para animar el contenido de la página en una forma más sencilla. Integra funcionalidades para trabajar con AJAX. Para utilizar la librería en cada página agregar: <script type="text/javascript" src="jquery.js"></script> 4.6 JAVA PERSISTENCE API JPA, es la API de persistencia desarrollada para la plataforma Java EE, es un framework de Java que maneja los datos relacionales en las aplicaciones. Persistencia en este contexto cubrirá tres áreas importantes: -119-

La API en sí misma, definida en el paquete javax.persistence. El lenguaje de consulta Java Persistence Query Language. Metadatos objeto/relacional. El objetivo de usar esta API es seguir el patrón de mapeo objeto-relacional para no perder las ventajas de orientación a objetos al interactuar con la base de datos. 4.7 ENTERPRISE JAVABEANS (EJB 3.1) Los Enterprise JavaBeans (EJB) son componentes del lado del servidor para la plataforma Java EE, que apuntan a crear un desarrollo rápido y simple para aplicaciones distribuidas, transaccionales, seguras y portables. EJB 3.1 introduce el concepto de vista sin interfaz, que consiste en una variación de la vista local, la cual expone todos los métodos públicos de un bean. Los Session Beans no están obligados a implementar una interfaz. El contenedor de EJB provee una implementación a la referencia a una vista sin interfaz, lo que le permite al cliente invocar cualquier método público de un bean, y por supuesto contar con transacciones, seguridad y comportamiento con interceptores. Figura 4.45 Arquitectura de EJB Fuente Wikipedia Existen tres tipos de EJBs: EJB de entidad (Entity EJBs): Su objetivo es encapsular los objetos del lado del servidor que almacena los datos. -120-

Los EJB de entidad presentan la característica fundamental de la persistencia. EJB de sesión (Session EJBs): Son una tecnología EJB que permiten encapsular procesos de negocio. Figura 4.46 Session Bean Fuente Departamento de Sistemas de la Universidad de los Andes -121-

Gestionan el flujo de información en el servidor, generalmente sirven a los clientes como una fachada de los servicios proporcionados por otros componentes disponibles en el servidor. Puede haber dos tipos: Con estado (stateful). En un bean de sesión con estado, las variables de instancia del bean almacenan datos específicos obtenidos durante la conexión con el cliente. Sin estado (stateless). Los Beans de sesión sin estado son objetos distribuidos que carecen de estado asociado permitiendo por tanto que se los acceda concurrentemente. -122-

CAPÍTULO V: 5. FUNCIONAMIENTO E IMPLEMENTACIÓN DEL SISTEMA 5.1 DESCRIPCIÓN GENERAL DEL SISTEMA Este capítulo presenta el manual para el manejo y control de la aplicación del SISTEMA PARA SEGUIMIENTO DE GESTIONES DE LA VINCULACIÓN CON LA SOCIEDAD. 5.1.1 DESCRIPCIÓN DE SIVSOFT El sistema cuenta con 5 módulos definidos: Administrador- Reportes- Herramientas- Vinculación- Estudiantes, Supervisores que incorporan proceso homogéneos que facilitan actividades como: Registro, actualización, eliminación, activación de estudiantes. Registro, actualización, eliminación, activación de supervisores. Registro, actualización, eliminación, activación de instituciones en las cuales se registraran los estudiantes para cumplir las gestiones de vinculación con la sociedad. Registro, actualización de usuarios, además de la asignación de perfiles y roles que utilizarán para el correcto manejo del sistema SIFSOFT. Registro, actualización, eliminación, procesamiento y aprobación de las Prácticas Preprofesionales, ingresadas por los usuarios que cumplan el perfil indicado. Registro, actualización, eliminación, procesamiento y aprobación de Desarrollo Comunitario, ingresadas por los usuarios que cumplan el perfil indicado. Registro, actualización, eliminación, procesamiento y aprobación de Pasantías, ingresadas por los usuarios que cumplan el perfil indicado. Generación de reportes de acuerdo a ciertos parámetros determinados para la toma de decisiones, con el objetivo de encontrar las fortalezas y debilidades de los procesos de gestión para los estudiantes. -123-

5.2 IMPLEMENTACIÓN DE SIFSOFT Para la implementación de SIFSOFT es importante considerar los siguientes requerimientos mínimos del Servidor, equipo en el que será instalado el sistema. 5.2.1 REQUERIMIENTOS DE HARDWARE Y SOFTWARE El sistema para su correcto funcionamiento y despliegue debe cumplir con los siguientes requisitos de hardware y software: Requisitos de Hardware El equipo mínimo de hardware necesario es el siguiente: Memoria RAM 2 Gb o superior. Almacenamiento en disco 10Gb o superior. Procesador 2Ghz o superior. Requisitos de Software Para instalar el sistema se requiere que el servidor tenga instalado el siguiente software: Sistema Operativo Linux, Windows xp o superior. Java 6 o superior. Servidor de aplicaciones Jboss 7.1. Motor de base de datos PostgreSQL 9.3.3-1 5.3 USO DEL SISTEMA Una vez iniciado el Servidor de Aplicaciones JBoss 7.1, para efectos de demostración iniciar en el navegador de preferencia la siguiente dirección: http://localhost:8080/vcs-fcf/home/frame.jsf La pantalla de inicio muestra una interfaz de usuario sencilla con la finalidad de que usuarios finales puedan navegar por el sistema sin mayor dificultad. -124-

Figura 5.1 Pantalla Inicio de SIVSOFT La pantalla de bienvenida de SIVSOFT muestra una pantalla intuitiva y sencilla en donde el usuario que desee utilizar el sistema, como primer paso necesario se debe ingresar su usuario y contraseña. A continuación se ingresa en la página de inicio, donde se continúa con los módulos existentes. 5.3.1 MÓDULO ESTUDIANTES, SUPERVISORES: ESTUDIANTES/ SUPERVISORES/ INSTITUCIONES Figura 5.2 Módulo Estudiantes - Supervisores -125-

En el menú Estudiantes - Supervisores seleccionar la opción Estudiantes con la finalidad de proceder a realizar una búsqueda de estudiantes ingresados en el sistema. Figura 5.3 Búsqueda de Estudiantes Consecuentemente se procede a realizar una búsqueda del estudiante que desee actualizar los datos en el sistema. Si no se desea actualizar un estudiante se procede a ingresar un estudiante nuevo, para ello se da clic en Estudiante y aparece un formulario de ingreso de estudiante, una vez ingresado los datos de estudiante dependiendo de los campos obligatorios se da clic en Guardar para que se almacene en el sistema. -126-

Figura 5.4 Registro de Estudiante Ingresados todos los campos solicitados seleccionar la opción de Activar, por tanto el estudiante cambiará a estado Activo en donde automáticamente estará listo para poder ser ingresado en una Práctica Preprofesional, Desarrollo Comunitario o Pasantía, si no es activado el estudiante no se aparecerá al momento de crear las gestiones anteriores. Figura 5.5 Activar Estudiante -127-

A más de Activar o Guardar un estudiante se tiene otras opciones que se utilizan dependiendo la necesidad que se tenga, a continuación se presenta estas opciones: Eliminar.- Se procede a eliminar un estudiante siempre y cuando se encuentre en estado ingresado. Inactivar.- Se cambia a este estado siempre y cuando se encuentre el estudiante en estado Activo, Este estado deja inactivo al estudiante para poder ser implementado en cualquier gestión de la vinculación. Editar Estudiante.- Se cambia a este estado siempre y cuando se encuentre el estudiante en estado Activo, En este estado se puede modificar los datos del estudiante. Regresar.- Con este botón se regresa a la página anterior (Página de búsqueda de estudiantes). Una vez ingresado y activado el estudiante se puede proceder a crear un supervisor, para ello se da clic derecho en la opción Supervisores del menú Estudiantes - Supervisores. Consecuentemente se procede a realizar una búsqueda del supervisor ingresado en el sistema o ingresar uno nuevo. Para crear un supervisor se da clic derecho en la opción Supervisor, se ingresa a un formulario donde se procede a ingresar los datos solicitados del supervisor y se da clic derecho en Guardar. Figura 5.6 Registro de Supervisor -128-

Ingresados todos los campos solicitados seleccionar la opción de Activar, por tanto el supervisor cambia a estado Activo en donde automáticamente está listo para poder ser ingresado en una Práctica Preprofesional, Desarrollo Comunitario o Pasantía, si no es activado el supervisor no aparecerá al momento de crear las gestiones anteriores. Figura 5.7 Activar Supervisor A más de Activar o Guardar un supervisor se tiene otras opciones que se utilizarán dependiendo la necesidad que se tenga, a continuación se presenta estas opciones: Eliminar.- Se procede a eliminar un supervisor siempre y cuando se encuentre en estado ingresado. Inactivar.- Se cambia a este estado siempre y cuando se encuentre el supervisor en estado Activo, Este estado deja inactivo al supervisor para poder ser implementado en cualquier gestión de la vinculación. Editar Supervisor.- Se cambia a este estado siempre y cuando se encuentre el supervisor en estado Activo, En este estado se puede modificar los datos del supervisor. Regresar.- Con este botón se regresa a la página anterior (Página de búsqueda de supervisores). -129-

Una vez creado el estudiante y supervisor se puede proceder a crear una Institución, para ello se da clic izquierdo en Instituciones del menú Estudiantes - Supervisores. Consecuentemente se procede a realizar una búsqueda de las instituciones ingresadas en el sistema ingresar una nueva. Para crear una institución se da clic derecho en la opción Institución, se ingresa a un formulario donde se procede a ingresar los datos solicitados de la institución y se dará clic derecho en Guardar. Figuras 5.8 Registro de Instituciones -130-

A más de Activar o Guardar un Institución se tiene otras opciones que se utilizarán dependiendo la necesidad que se tenga, a continuación se presenta estas opciones: Eliminar.- Se procede a eliminar un Institución siempre y cuando se encuentre en estado ingresado. Inactivar.- Se cambia a este estado siempre y cuando se encuentre el Institución en estado Activo, Este estado deja inactivo al supervisor para poder ser implementado en cualquier gestión de la vinculación. Editar Institución.- Se cambia a este estado siempre y cuando se encuentre el Institución en estado Activo, En este estado se puede modificar los datos del supervisor. Regresar.- Con este botón se regresa a la página anterior (Página de búsqueda de instituciones). -131-

5.3.2 MÓDULO VINCULACIÓN Continuamos con el módulo Vinculación, para ello en el menú Estudiantes Supervisores se puede seleccionar la opción Práctica Preprofesional. Consecuentemente se presenta una pantalla de búsqueda de prácticas, en donde se procederá a buscar una Práctica Preprofesional, si este no es el caso se procederá a crear una nueva, para ellos se da clic izquierdo en Insertar, ingresado en esta opción aparece un formulario en el cual se ingresa los datos y se da clic en la opción Guardar. -132-

Figuras 5.9 Registro de la Práctica Preprofesional Después de haber creado la práctica Preprofesional se procede a asignar una institución para está, para ello se dirige a Asignar Institución que se encuentra en la parte superior de la práctica Preprofesional. En esta opción se escoge la opción Agregar, aquí se abre una pantalla flotante en donde se selecciona la institución, se da clic en Guardar y automáticamente la institución seleccionada se vincula con la práctica Preprofesional creada. Figura 5.10 Asignar una Institución a la Práctica Preprofesional -133-

Como siguiente paso se procede a cambiar de estado a la práctica Preprofesional (estado En Proceso), para ello se da clic en el botón En Proceso, una vez cambiado de estado el sistema nos va a pedir que ingresemos documentos habilitados automáticamente, se procede a adjuntar los documentos, para ello se da clic en los botones de más, en la cual se abre una ventana emergente y se procede a adjuntar los documentos uno por uno. -134-

Figuras 5.11 Adjuntar documentos Habilitantes a la Práctica Preprofesional Como siguiente paso se procede a aprobar la Practica Preprofesional, para ello se da clic en el botón Aprobar en la cual el sistema automáticamente envía un correo electrónico al estudiante ligado a la práctica, informándole de la aprobación. Este correo contiene información como el semestre en la cual se aprobó, las horas establecidas para la práctica y la institución donde se realizó, además de un mensaje en la cual se le informa al estudiante que si posee dudas se acerque al departamento de vinculación para obtener más información. -135-

Figura 5.12 Aprobar una Práctica Preprofesional Como siguiente paso en la opción de Formato ubicado en la parte superior de la práctica se actualiza un formato que se crea automáticamente y en la cual contiene información de los coordinadores y secretaria general que autorizan la aprobación de la práctica Preprofesional para el estudiante. -136-

Figura 5.13 Generación del formato de una Práctica Preprofesional aprobada Se tiene otras opciones que se utilizarán dependiendo la necesidad que se tenga, para poder utilizar en la Práctica Preprofesional, a continuación se presenta estas opciones: Eliminar.- Se procede a eliminar una Práctica Preprofesional siempre y cuando se encuentre en estado ingresado. Rechazar.- Se cambia a este estado siempre y cuando se encuentre la Práctica Preprofesional en estado En Proceso. Este estado deja rechazado la práctica, esto se puede dar cuando los documentos habilitados no son adjuntados totalmente. Anular.- Se cambia a este estado siempre y cuando se encuentre la Práctica Preprofesional en estado En Proceso. Este estado deja anulada la práctica, esto se puede dar cuando el estudiante incumplió con todos los reglamentos para poder continuar con el proceso. Regresar.- Con este botón se regresa a la página anterior (Página de búsqueda de Prácticas Preprofesionales). Imprimir.- Con este botón se procede a imprimir el formato, este botón aparece siempre y cuando la Práctica Preprofesional se encuentre en estado Aprobado. -137-

A continuación se puede seleccionar la opción Pasantías en el menú Vinculación. Consecuentemente esta opción presenta una pantalla de búsqueda de pasantías, en donde se procederá a buscar una pasantía, si este no es el caso se procederá a crear una nueva, para ellos se da clic izquierdo en Insertar, ingresado en esta opción aparece un formulario en el cual se ingresa los datos solicitados y se da clic en la opción Guardar. -138-

Figuras 5.14 Registro de una Pasantía Después de haber creado la pasantía, se procede a asignar una institución para está, para ello se dirige a Asignar Institución que se encuentra en la parte superior de la pasantía. En esta opción se escoge la opción Agregar, aquí se abre una pantalla flotante en donde se selecciona la institución, se da clic en Guardar y automáticamente la institución seleccionada se vincula con la pasantía creada. Figura 5.15 Asignar una Institución a una Pasantía -139-

Como siguiente paso se procede a cambiar de estado a la pasantía (estado En Proceso), para ello se da clic en el botón En Proceso, una vez cambiado de estado el sistema nos va a pedir que ingresemos documentos habilitados automáticamente, se procede a adjuntar los documentos, para ello se da clic en los botones del signo mas, en la cual se abre una ventana emergente y se procede a adjuntar los documentos uno por uno. Figura 5.16 Adjuntar documentos Habilitantes a la Pasantía En el paso siguiente se procede a aprobar la pasantía, para ello se da clic en el botón Aprobar en la cual el sistema automáticamente envía un correo electrónico al estudiante ligado a la pasantía, informándole de la aprobación. Este correo contiene información como el semestre en la cual se aprobó, las horas establecidas para la pasantía y la institución donde se realizó, además de un mensaje en la cual se le informa al estudiante que si posee dudas se acerque al departamento de vinculación para obtener más información. -140-

Figura 5.17 Aprobar una Pasantía Como siguiente paso en la opción de Formato ubicado en la parte superior de la pasantía se actualiza un formato que se crea automáticamente y en la cual contiene información de los coordinadores y secretaria general que autorizan la aprobación de la pasantía para el estudiante. -141-

Figura 5.18 Generación del formato de una Pasantía aprobada Se tiene otras opciones que se utilizarán dependiendo la necesidad que se tenga, para poder utilizar en la pasantía, a continuación se presenta estas opciones: Eliminar.- Se procede a eliminar una pasantía siempre y cuando se encuentre en estado ingresado. Rechazar.- Se cambia a este estado siempre y cuando se encuentre la pasantía en estado En Proceso. Este estado deja rechazado la pasantía, esto se puede dar cuando los documentos habilitados no son adjuntados totalmente. Anular.- Se cambia a este estado siempre y cuando se encuentre la pasantía en estado En Proceso. Este estado deja anulada la pasantía, esto se puede dar cuando el estudiante incumplió con todos los reglamentos para poder continuar con el proceso. Regresar.- Con este botón se regresa a la página anterior (Página de búsqueda de pasantías). Imprimir.- Con este botón se procede a imprimir el formato, este botón aparece -142-

siempre y cuando la pasantía se encuentre en estado Aprobado. A continuación se puede seleccionar la opción Desarrollo Comunitario en el menú Vinculación. Consecuentemente esta opción presenta una pantalla de búsqueda de desarrollo comunitario, en donde se procederá a buscar un desarrollo comunitario, si este no es el caso se procederá a crear una nueva, para ellos se da clic izquierdo en Insertar, ingresado en esta opción aparece un formulario en el cual se ingresa los datos solicitados y se da clic en la opción Guardar. -143-

Figuras 5.19 Registro del Desarrollo Comunitario Después de haber creado el desarrollo comunitario, se procede a asignar una institución para está, para ello se dirige a Asignar Institución que se encuentra en la parte superior del desarrollo comunitario. En esta opción se escoge la opción Agregar, aquí se abre una pantalla flotante en donde se selecciona la institución, se da clic en Guardar y automáticamente la institución seleccionada se vincula al desarrollo comunitario creado. Figura 5.20 Asignar una Institución al Desarrollo Comunitario Como siguiente paso se procede a cambiar de estado al desarrollo comunitario (estado En Proceso), para ello se da clic en el botón En Proceso, una vez cambiado de -144-

estado el sistema nos va a pedir que ingresemos documentos habilitados automáticamente, se procede a adjuntar los documentos, para ello se da clic en los botones del signo más, en la cual se abre una ventana emergente y se procede a adjuntar los documentos uno por uno. Figura 5.21 Adjuntar documentos Habilitantes al Desarrollo Comunitario En el paso siguiente se procede a aprobar el desarrollo comunitario, para ello se da clic en el botón Aprobar en la cual el sistema automáticamente envía un correo electrónico al estudiante ligado al desarrollo comunitario, informándole de la aprobación. Este correo contiene información importante para el estudiante como el semestre en la cual se aprobó, las horas establecidas, la institución donde se realizó y el tema que se propuso para el desarrollo comunitario, además de un mensaje en la cual se le informa al estudiante que si posee dudas se acerque al departamento de vinculación para obtener más información. -145-

Figura 5.22 Aprobar un Desarrollo Comunitario Como siguiente paso en la opción de Formato ubicado en la parte superior del desarrollo comunitario se actualiza un formato que se crea automáticamente y en la cual contiene información de los coordinadores y secretaria general que autorizan la aprobación del desarrollo comunitario para el estudiante. -146-

Figura 5.23 Generación del formato de un Desarrollo Comunitario Se tiene otras opciones que se utilizarán dependiendo la necesidad que se tenga, para poder utilizar en el desarrollo comunitario, a continuación se presenta estas opciones: Eliminar.- Se procede a eliminar un desarrollo comunitario siempre y cuando se encuentre en estado ingresado. Rechazar.- Se cambia a este estado siempre y cuando se encuentre el desarrollo comunitario en estado En Proceso. Este estado deja rechazado el desarrollo comunitario, esto se puede dar cuando los documentos habilitados no son adjuntados totalmente. Anular.- Se cambia a este estado siempre y cuando se encuentre el desarrollo comunitario en estado En Proceso. Este estado deja anulado el desarrollo comunitario, esto se puede dar cuando el estudiante incumplió con todos los reglamentos para poder continuar con el proceso. -147-

Regresar.- Con este botón se regresa a la página anterior (Página de búsqueda de desarrollos comunitarios). Imprimir.- Con este botón se procede a imprimir el formato, este botón aparece siempre y cuando el desarrollo comunitario se encuentre en estado Aprobado. Para poder actualizar las diferentes gestiones que se desarrollan en el departamento de Vinculación se ingresa en la opción Tipo Gestión Académica en donde se presentara una tabla con las diferentes gestiones. Figura 5.24 Tabla del Tipo de Gestión Académica Se procede a ingresar en cualquier gestión y se ingresa en un formulario en donde se podrá modificar las horas establecidas, el semestre en donde se puede asignar la gestión, los coordinadores y la secretaria general. -148-

Figura 5.25 Actualización de datos de una Gestión Académica En las diferentes gestiones se generan documentos habilitantes que se adjuntan dependiendo de las necesidades que se tiene en cada gestión, para ello se ingresa en la opción Tipo Documento Requerido del menú Vinculación, en esta opción se procede a presentar una tabla en donde se encuentra todos los tipos de gestión los cuales poseen los documentos requeridos para cada uno de ellos. Figura 5.26 Tabla Tipo Documento Requerido En esta tabla se presenta los documentos de la gestión seleccionada, se da clic en cualquier documento y se ingresa al formulario del documento en la cual se procede a modificar, eliminar o crea uno nuevo dependiendo las opciones escogidas por el -149-

usuario. Figuras 5.27 Registro de un Documento Requerido -150-

La opción Periodo Académico sirve para el ingreso de los periodos que se van dando conforme los estudiantes siguen cumpliendo con el departamento de vinculación con la sociedad en lo que respecta a prácticas Preprofesionales, pasantías y desarrollo comunitario. Figura 5.28 Tabla del Periodo Académico Figura 5.29 Registro o Actualización de un Periodo Académico -151-

5.3.3 MÓDULO ADMINISTRADOR Ingresamos a la interfaz del usuario administrador con las credenciales requeridas y argumentadas por éste. El menú que se presenta para el usuario Administrador está conformado por: Parámetros de la aplicación- Usuarios- Perfiles. Figura 5.30 Módulo Administrador -152-

El usuario administrador dentro de la opción Parámetros de la aplicación puede manejar los parámetros configurables para el funcionamiento correcto del sistema como es el envió de correo electrónico, los secuenciales que se generan para cada gestión y las direcciones en donde se almacenan los documentos que se habilitan en cada gestión al momento de aprobarlas. Cada parámetro es configurable, por el cual se tiene una página en donde se puede modificar o eliminar cada parámetro dependiendo de las necesidades del usuario administrador. Además en la página que se presentan todos los parámetros existe un botón de Exportar Excel, este botón genera la tabla presentada en un documento Excel que se descargara al momento de dar clic. Figuras 5.31 Parámetros de la Aplicación -153-

El usuario administrador puede acceder al menú Seguridad en donde selecciona la opción Usuarios, esta opción sirve para crear usuarios que puedan navegar por el sistema, posee una tabla de búsqueda de usuarios dependiendo los filtros que el usuario desee escoger, además posee un formulario en donde se puede acceder para actualizar datos del usuario o a su vez eliminarla del sistema. Cuenta también en la opción de búsqueda con un botón que puede exportar a Excel todos los datos de la tabla presentada al usuario administrador. En la opción búsqueda existe un link que envía a una página donde se puede seleccionar el perfil y rol que se le asignará al usuario para que pueda navegar en el sistema. Figuras 5.32 Registro o Actualización de Usuarios -154-

Figura 5.33 Asignación de Perfiles Es importante mencionar que el usuario administrador cuenta con la opción Perfiles, la misma que permite crear, modificar o eliminar un perfil que podrá ser implementado para el funcionamiento del sistema dependiendo las prioridades que se le asigne a dicho perfil. El sistema posee dos perfiles concretos para el sistema, como el de administrador y de vinculación, El perfil de administrador sirve para poder tener permisos en la parte administrativa del sistema, en creación de registros, usuarios y perfiles. El perfil de vinculación sirve para poder crear gestiones, tipo de documentos, periodo académico, estudiantes, supervisores, instituciones y generación de reportes. En la página que presenta la tabla de perfiles creados existe el botón de Exportar a Excel, este botón de igual forma como los botones anteriores de exportar cumple el mismo funcionamiento, crear un archivo Excel de los perfiles asignados al sistema. -155-

Figuras 5.34 Perfiles Finalmente puede hacer uso de la opción Reportes con la finalidad de transformar los datos almacenados en estadísticas, Se puede contar con reportes como: Estudiantes por gestión académica, estado de aprobación y horas totales establecidas. Supervisores por estado de la gestión, descripción de la gestión y número de gestiones asignadas a cada supervisor. Institución por la descripción de la gestión, estado de la gestión y numero de gestiones asignadas a la institución. -156-

Figuras 5.35 Reportes -157-

5.3.4 CAMBIAR CONTRASEÑA SIFSOFT permite cambiar las contraseñas de los usuarios de tal manera que pueda obtener una contraseña fuerte, esto es debido al aumento en el uso de dispositivos móviles con capacidades de establecer comunicaciones, para ellos en la página principal existe un icono llamado Cambial Clave, se da clic en este y se levanta una página flotante en donde se pide la contraseña actual y la nueva contraseña. Figura 5.36 Cambiar Contraseña -158-

CAPÍTULO VI: 6. CONLUSIONES Y RECOMENDACIONES 6.1 CONCLUSIONES Para culminar con trabajo de desarrollo del sistema SIVSOFT, a continuación se exponen una serie de conclusiones y recomendaciones producto del trabajo realizado: La implementación del Sistema para seguimiento de gestiones de la Vinculación con la Sociedad por la Facultad de Cultura Física, significa una mejor organización por parte del personal del departamento de Vinculación, en lo que respecta asignar tiempo y recursos para cada estudiante, guiándole ordenadamente en el cumplimiento de prácticas Preprofesionales, Pasantías o Desarrollo Comunitario. El sistema ayudará a no generar datos redundantes, ya sea del estudiante, supervisor, institución, gestión y periodo académico, obteniendo rápidos y mejores resultados al momento de tomar una decisión por parte del personal del departamento de Vinculación de la Facultad de Cultura Física. El empleo de la metodología de desarrollo RUP para el desarrollo de SIVSOFT que ha sido implantado con éxito ha proporcionado parámetros claros para la consecución del mismo, ya que su estructura obliga al desarrollador a documentar el proceso de acuerdo a las fases que lo componen con la finalidad de llevar registros del desarrollo desde su inicio hasta la finalización del mismo. Las herramientas tecnológicas usadas para el desarrollo de la solución se encuentran a la altura de cualquier software con licenciamiento comercial, lo único que las separa es el soporte que brindan las herramientas comerciales, lo cual puede ser opacado con la investigación y perseverancia por parte de los implementadores de las soluciones libres de licenciamiento comercial. -159-

6.2 RECOMENDACIONES Al realizar la implementación de SIVSOFT, se debe tener en consideración las siguientes recomendaciones que permitirán y contribuirán al buen funcionamiento y desempeño del Sistema: Para cumplir los objetivos planteados, es fundamental la participación activa del personal del departamento de Vinculación con la Sociedad para el correcto funcionamiento del sistema. Para evitar inconvenientes con posibles fallos en la infraestructura de hardware donde se aloja la solución, es de vital importancia se aplique una política de respaldos efectiva de las bases de datos en que se apoya la solución en especial el repositorio donde se encuentra las transformaciones, trabajos y el almacén de datos. Encargar la administración y gestión del sistema al personal idóneo dentro de la Facultad con el objetivo de corregir cualquier tipo de inconveniente que pueda surgir por cualquier circunstancia que se pueda presentar. Cada vez que se suba una versión nueva del sistema al servidor de aplicaciones JBoss es recomendable parar y eliminar la anterior versión para evitar conflictos de referencia, orígenes de datos y dominios de seguridad. -160-

BIBLIOGRAFÍA 1. DEITEL Paul J., DEITEL Harvey M., How to Program. Ninth Edition, Pearson. 2012. 2. DUSTIN R. Callaway, Inside Servlets: Server-Side Programming for the Java Platform. Second Edition, Addison- Wesley. 2002. 3. SCHWABER K., BEEDLE M., Martin R.C. Agile Software Development with SCRUM. Prentice Hall. 2001. 4. POPPENDIECK M., POPPENDIECK T. Lean Software Development: An Agile Toolkit for Software Development Managers. Addison Wesley. 2003. 5. KURNIAWAN Budi, Java for the Web with Servlets, JSP and EJB First Edition. New Riders. 2002. 6. Aplicaciones Web. Recuperado de http://www.um.es/docencia/barzana/divulgacion/informatica/histor ia-desarrollo-aplicaciones-web.html. 7. Rational Unified Process: Fases y estructura. Recuperado de http://rupequipo1.blogspot.com/2012/12/estructura-y-fases-de-rup.html. 8. Casos de Uso. Definición y uso. Recuperado de http://users.dcc.uchile.cl/~psalinas/uml/casosuso.html. 9. Programación J2EE: Hibernate + JPA 2.0 + Herencia. 2013. Recuperado de http://www.programacionj2ee.com/hibernate-anotaciones-jpa-2-0-herencia- internacionalización/ 10. JPA e Hibernate: anotaciones JPA y capa de persistencia Hibernate. 2013. Recuperado http://www.softwareevolutivo.com.ec/blog/2012/01/24/usando-jpa-e- Hibernate-en-un-ejemplo-completo/ 11. JBoss Application Server 7 Documentation. 2013. Recuperado de https://docs.jboss.org/author/display/as71/documentation 12. Transactions in the World of Web Services. 2013. Recuperado de http://www.ibm.com/developerworks/webservices/library/ws-wstx1/ de -161-

13. uidances/supportingmaterials/welcome_2bc5187f.html 14. Hibernate 3 with JPA 2. 2012. Recuperado de http://uaihebert.com/tutorialhibernate-3-with-jpa-2/ 15. Eclipse IDE for Java EE Developers. 2013. Recuperado de http://www.eclipse.org/downloads/packages/eclipse-ide-java-eedevelopers/indigo 16. Aplicaciones JSF en Eclipse. 2013. Recuperado de http://viralpatel.net/blogs/tutorial-creating-javaserver-faces-jsf-application-ineclipse-jsf-project-jsf-tutorial/ 17. JSF 2: Programming Basics. 2013. Recuperado de http://courses.coreservlets.com/course-materials/pdf/jsf/jsf2/jsf2- Programming-Basics.pdf 18. PrimeFaces Tutorial: Primeros pasos con PrimeFaces, Eclipse y JBoss 2013. Recuperado de http://www.mastertheboss.com/primefaces/primefacestutorial -162-

ANEXOS -163-

1.1 RECURSOS ANEXO A: 1. MARCO ADMINISTRATIVO 1.1.1 RECURSOS INSTITUCIONALES Servidor Web: Equipo en el cuál se instalará el Sistema para el seguimiento de gestiones de la Vinculación con la Sociedad para la Facultad d Cultura Física, el equipo en mención cumple con los siguientes requerimientos mínimos para su correcto funcionamiento y despliegue: REQUERIMIENTOS DE HARDWARE Y SOFTWARE Requisitos de Hardware Requisitos de Software Memoria RAM 1 Gb o superior. Almacenamiento en disco 10 Gb o superior. Procesador 1 Ghz o superior. Sistema Operativo Linux o Windows. Java 6 o Superior. Servidor de Aplicaciones Jboss AS7.1 Motor de base de datos PostgreSQL 9.3.1 o superior. Tabla 1 Requerimientos Hardware y Software Instalaciones: Las mismas fueron realizadas en el departamento de Vinculación de la Facultad de Cultura Física, administrado por el Ingeniero Bolívar Peña. Director de Tesis: Ing. René Alfonso Carillo Flores, MSc. Revisora: Ing. Alicia Andrade. Revisor: Ing. Aldrín Flores. 1.1.2 RECURSOS DEL EGRESADO Personal de Apoyo (Tutor- Personal departamento de Vinculación de la Facultad de Cultura Física). Material Bibliográfico. Servicios Básicos. -164-

1.2 PRESUPUESTO Facultad de Ingeniería, Ciencias Físicas y Matemática Escuela de Ciencias Recursos y Presupuesto para Tesis de Grado Ítem Rubros de Gastos Cantidad Valor Total N N $ $ RECURSO HUMANO 1 Tutor de Tesis de Grado 1 0 0 2 Tribunal de Tesis de Grado 1 5 5 3 Investigador (Autor de Tesis de Grado) 1 0 0 SUBTOTAL RECURSOS HUMANOS 5 RECURSOS MATERIALES 4 Resma de papel 3 5,5 16,5 5 Cartucho de tinta B/N 2 21,5 43 6 Cartucho a color 2 37,5 75 7 Copias 780 0,03 23,4 SUBTOTAL RECURSOS MATERIALES 157,9 MATERIAL BIBLIOGRAFICO 8 Internet 108 H 0,8 86,4 9 Fotocopias de libros 350 0,03 10,5 10 Transcripción borrador trabajo de grado 1 45 45 SUBTOTAL RECURSOS MATERIALES 402 RECURSOS INFORMATICOS 11 Computador de escritorio 1 0 0 12 Laptop 1 0 0 13 Impresora Multifunción 1 0 0 14 Cd 25 1 25 15 Flash memory 1 0 0 SUBTOTAL DE RECURSOS INFORMATICOS 25 ALIMENTACION 17 Comidas 1 100 18 Transporte 1 100 OTROS 19 Gastos varios 1 200 200 SUBTOTAL DE OTROS 200 TOTAL GASTOS 989,9 IMPREVISTOS (5%) 49,49 TOTAL 1039,39 FINANCIAMIENTO: Autofinanciado Tabla 2 Recursos y Presupuestos -165-

1.3 CRONOGRAMA Los tiempos y responsables se encuentran establecidos mediante una planificación en base a lo planteado en el cronograma de actividades que se va a realizar durante el transcurso de la investigación en cada una de las etapas. Tabla 3 Cronograma -166-

MODELO ENTIDAD-RELACIÓN ANEXO B: 2. BASE DE DATOS -167-

168 SIVSOFT tipo Modelo Entidad - Relación Esquema Vinculación persona id_persona tipo_persona documento_identidad apellido nombre edad sexo telefono celular domicilio domicilio_ciudad domicilio_codigo_administrativo correro_electronico tipo_persona tipo_persona descripcion estado posee tipo_inasistencia tipo_inasistencia descripcion estado tiene dierentes control gestion_academica_requisito id_gestion_academica_requisito id_gestion_academica id_tipo_documento esta_entregado descripcion es_obligatorio gestion_academica_informe id_gestion_academica_informe id_gestion_academica descripcion fecha_registro codigo_informe fecha_inicial_informe fecha_final_informe inasistencia id_inasistencia id_gestion_academica tipo_inasistencia observacion justificada alumno id_alumno id_persona estado documentos aprobado control tipo_institucion tipo_institucion descripcion_institucion estado gestion_academica id_gestion_academica id_supervisor id_alumno tipo_gestion id_institucion id_periodo_academico codigo_gestion_academica estado id_usuario_registro fecha_registro fecha_aprobacion observacion id_gestion_academica_origen todos varios supervisor id_supervisor tipo_supervisor id_persona estado tipo 2 social semestral diferentes tipos institucion id_institucion tipo_institucion codigo_admininstrativo nombre_corto nombre_largo direccion telefono_01 telefono_02 telefono_03 fax correo_electronico sitio_web estado contacto ruc sector periodo_academico id_periodo_academico nombre_periodo tipo_gestion tipo_gestion descripcion estado horas_establecidas semestre tipo_documento coordinador_area coordinador_vinculacion secretaria_abogada tipo_supervisor tipo_supervisor descripcion estado parroquia codigo_admininstrativo subcategoria id_parroquia id_canton id_provincia nombre esta_activa varias canton id_canton id_provincia nombre esta_activa especificados provincia id_provincia nombre esta_activa

Modelo Entidad Relación Esquema VincularData tipo_documento_adjunto_requerido id_tipo_documento_adjunto_requerido tipo_documento descripcion es_obligatorio orden requerido estado_documento id_estado_documento tipo_documento estado descripcion estados tipo_documento tipo_documento descripcion estado historial direcciones historial_documento_cambio_estado id_hist_doc_cambio_estado tipo_documento estado_anterior estado_nuevo id_documento id_usuario fecha_registro observacion enlace_archivo id_archivo_adjunto tipo_documento id_entidad nombre_archivo direccion_archivo tipo_archivo descripcion tamanio por_defecto id_subentidad Modelo Entidad Relación Esquema VincularUser id_usuario id_enterprise name surname email app_user app_password status remark position phone Attribute_12 usuario seguridad acceso_seguridad id_usuario id_user_profile acces_type asignacion perfil id_user_profile description source repositorio cod_repositorio id_enterprise description integer_value numeric_value text_value source posee enterprise id_enterprise enterprise_type name address phone -167-

ANEXO C: 3. MANUAL TÉCNICO: SIVSOFT 3.1 EJECUCIÓN DEL PROGRAMA FUENTE Para la creación de SIVSOFT, 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 jdk1.6.0_35-windows-i586.exe IDE de desarrollo Eclipse, cuya versión es eclipse-jee-kepler-sr1-win32.zip Servidor de Aplicaciones jboss-as-7.1.1.final.zip CARGA Y COMPILACIÓN DEL PROYECTO EN ECLIPSE KEPLER 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 Indigo), desde el lugar donde está alojada el programa o el acceso directo que se puede crear en el escritorio. Figura 1 Ejecución de Eclipse Como siguiente paso Eclipse 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 WorkSpace Tesis en la que se encuentra alojado el proyecto. -168-

Figuras 2 Workspace Eclipse 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. -169-

Figuras 3 Procedimiento de importación de proyecto Para importar el proyecto seleccionar la carpeta General Existing Projects into Workspace. A continuación seleccionar la opción Browse para ubicar el directorio donde se encuentra el proyecto. -170-

Figuras 4 Importando proyecto Seleccionar la carpeta, en donde se aloja el proyecto ( WorkSpace Tesis); una vez ubicada la carpeta que contiene el proyecto seleccionar la opción Aceptar, consecuentemente seleccionar la opción Add Project to working sets con la finalidad de copiar al workspace y finalmente seleccionar la opción Finalizar. -171-

Para que el proyecto se visualice por completo de tiene que importar las tres carpetas existentes en el workspace (VCS-FCF, VCS-FCF-ear, VCS-FCF-ejb) y así se presenta el proyecto completo en el área del explorador de paquetes Project Explorer. Figura 4 Estructura de SIVSOFT Como siguiente paso es necesario crear un nuevo servidor de JBoss dentro de eclipse que permita ejecutar y probar el sistema, para ello seleccionar la pestaña Servers en la parte inferior de la interfaz. Figura 5 Configuración de JBoss AS 7.1-172-

Clic derecho sobre JBoss 7.1 Runtime Server New Server. En la parte inferior correspondiente a JBoss 7.1 Runtime Server seleccionar la opción Add, con la finalidad de establecer la dirección en la que fue descomprimido el servidor. Para finalizar seleccionar la opción Finish. Figuras 6 Configuración de JBoss AS 7.1-173-

En la sección Add and Remove, seleccionar el proyecto y adherir al lado derecho, Finalizar el procedimiento. Figuras 6 Configuración finalizada de nuevo servidor JBoss AS 7.1 Finalmente el servidor está configurado y puede ser iniciado desde: La consola de Project Explorer, donde se da clic derecho en VCS-FCF y se selecciona Run As - Run on Server. O se clic en Server, ubicado en la parte inferior de eclipse y se selecciona el servidor configurado anteriormente, se da clic derecho sobre el servidor, se abre una pantalla donde se da clic en Start. -174-

Es importante mencionar que el servidor como el proyecto toma su debido tiempo en iniciar dependiendo de la capacidad dela máquina en la que han sido instaladas. Figuras 7 Publishing to JBoss 7.1 Runtime Server -175-

SIVSOFT desde el punto de vista lógico estará conformado: Capa Cliente Esta capa es la que hace referencia al computador desde el cual el usuario candidato accede al sistema a través del uso de navegadores web. Servidor de Aplicaciones Dispositivo de software mediante el cual se desplegará la aplicación empresarial desarrollada en Java. Capa Web Es la capa donde se construye las páginas XHTML mediante el uso del Framework JSF. Para el uso de AJAX se usa la implementación de PrimeFaces. Backing Beans Son clases Java encargadas de implementar la funcionalidad de las páginas XHTML. Un Backing Bean es usualmente un Bean común de java que sirve de soporte para un objeto manejado dentro de la aplicación. Capa Negocio Es la capa donde se definen las reglas del negocio de la aplicación empresarial y será la encargada de recibir las peticiones de usuario y entregar una respuesta mediante el respectivo proceso. EJB Enterprise JavaBeans Clases Java ligeras donde se programan las reglas del negocio de la aplicación, proporcionan un modelo de componentes distribuido estándar del lado del servidor, uno de sus objetivos es dotar al programador de un modelo que le permita abstraerse de los problemas generales de una aplicación empresarial (concurrencia, transacciones, persistencia) para centrarse en el desarrollo de la lógica del negocio. -176-

DAOs Data Access Object Son clases Java en las cuales se implementa el acceso a las tablas de la base de datos, suministra una interfaz común entre la aplicación y uno o más dispositivos de almacenamiento de datos. Base de Datos Es donde se van a almacenar los datos generados por la aplicación para su posterior uso en la generación de reportes. 3.2 ESTRUCTURA DE CARPETAS DE SIVSOFT Una vez conocida la arquitectura lógica de SIVSOFT es importante mencionar y conocer la estructura de archivos, carpetas que corresponden al desarrollo de SIVSOFT, para ello se hará una breve descripción de la estructura desarrollada. El sistema se encuentra estructurado de la siguiente manera: VCS-FCF, VCS- FCF-ear, VCS-FCF-ejb, una vez cargado el proyecto en Eclipse, estas carpetas se encuentran distribuidas como se indica en la figura. Figura 9 Estructura de carpetas de SIVSOFT -177-

3.2.1 VCS-FCF VCS-FCF es la carpeta que contiene todos los elementos web como páginas HTML, estilos, jquerys, JavaScript y los controladores que se encargan de recolectar las acciones y los datos que las páginas soliciten. En esta carpeta se encuentra la capa de presentación del proyecto, dividido en subcarpetas que contienen las diferentes clases de archivos de acuerdo a su uso. Java Resources src, contiene archivos con extensión.java y corresponde a los beans que brindan la funcionalidad a las páginas dinámicas XHTML. 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. Figura 10 Contenido de la carpeta SIVSOFT -178-

Dentro de la carpeta Tools se encuentra subcarpetas como: La carpeta css contiene los estilos que son utilizados en las páginas xhtml, la carpeta Reports donde se encuentran los reportes con extensión prpt que se generan con pentaho report designer, la carpeta Images donde se encuentran imágenes con extensión jpg o png que son utilizados por todo el sistema, la carpeta js donde se encuentra la clase jquery versión 1.3.2 que nos proporciona métodos javascript para mejorar la presentación de las páginas del sistema. Figura 18 Carpeta css Dentro de la carpeta TASK se encuentran subcarpetas (Configuración, DataVincualcion, RedVinculacion) que a su vez contiene las páginas Web que presentan la interfaz para los usuarios, cabe señalar que cada xhtml ubicado en esta carpeta contiene un controller que generan la funcionalidad. -179-

Figura 19 Páginas respectivas de cada usuario La carpeta WEB-INF contiene los archivos de configuración: faces-config.xml, archivo de configuración del jsf. web.xml, archivo de configuración de componentes del proyecto para el despliegue del sistema, describe al contenedor Web, sus elementos y el modo en que se accede a los mismos. Además, define los aspectos de seguridad, fichero de bienvenida, parámetros iniciales y parámetros de contexto. -180-

Figuras 19 Archivos de configuración de WEB-INF 3.2.2 VCS-FCF-ejb VCS-FCF-ejb es el proyecto que contiene la lógica del negocio y la persistencia hacia la base de datos (postgres). Los EJB son clases java donde se programas las reglas de negocio de la aplicación. Figura 11 Contenido de la carpeta VCS-FCF ejb ejbmodule contiene los paquetes de la aplicación como: Vinculación entity.- entidades de tablas del esquema vinculacion. Strucutre entity.- entidades de tablas del esquema vincularuser. Information entity.- entidades de tablas del esquema vinculardata. Information DAO.- clases java que interactúan con los EJB del esquema vinculardata. Structure DAO.- clases java que interactúan con los EJB del esquema vincularuser. Vinculación DAO.- clases java que interactúan con los EJB del esquema vinculacion. -181-

El formato que se ha establecido para estructurar de una manera ordenada los paquetes en el proyecto es: Figura 12 ejbmodule DAO (Data Access Object) encapsula el acceso a la base de datos, por lo que cuando la capa lógica de negocio necesite interactuar con la base de datos, va a hacerlo a través de la API que le ofrece DAO. Generalmente esta API consiste en métodos CRUD (Create, Read, Update y Delete). Entonces por ejemplo cuando la capa de lógica de negocio necesite guardar un dato en la base de datos, va a llamar a un método Create ( ). -182-

Los DTO (Data Transfer Object) o también denominados VO (Value Object), son utilizados por DAO para transportar los datos desde la base de datos hacia la capa de lógica de negocio y viceversa. Dentro del META-INF se encuentra el archivo de configuración denominado persistence.xml persistence.xml describe la configuración de la persistencia que se está manejando en el desarrollo de SIVSOFT, el esquema maneja sus respectivas entidades. Figura 16 persistence.xml 3.2.3 VCS-FCF- ear En la carpeta VCS-FCF-ear se encuentra el código fuente del proyecto, dividido en subcarpetas que contienen los archivos de acuerdo a su funcionalidad, es importante mencionar a las siguientes subcarpetas. En otras palabras VCS-FCF-ear es el proyecto EAR, que sirve para contener a los proyectos VCS-FCF y VCS-FCF-ejb. -183-