PONTIFICIA UNIVERSIDAD CATÓLICA DEL ECUADOR SEDE SANTO DOMINGO
Dirección Académica - Escuela de Sistemas
SISTEMA WEB PARA EL CONTROL DE GESTIÓN ADMINISTRATIVA EN EL DEPARTAMENTO DE TALENTO HUMANO DE LA CASA DE LA CULTURA ECUATORIANA BENJAMÍN CARRIÓN NÚCLEO SANTO DOMINGO DE LOS TSÁCHILAS; PERIODO 2017-2018.
Trabajo de Titulación previo a la obtención del título de Ingeniero de Sistemas y Computación
Línea de Investigación: Estudio, Diseño e Implementación de Software.
Autores: DORIS LILIANA CIFUENTES BALSECA GLENDA CRISTINA MOSQUERA SARANGO Director: Mg. RODOLFO SIRILO CÓRDOVA GÁLVEZ
Santo Domingo – Ecuador Agosto, 2018
ii
PONTIFICIA UNIVERSIDAD CATÓLICA DEL ECUADOR SEDE SANTO DOMINGO
Dirección Académica - Escuela de Sistemas
HOJA DE APROBACIÓN SISTEMA WEB PARA EL CONTROL DE GESTIÓN ADMINISTRATIVA EN EL DEPARTAMENTO DE TALENTO HUMANO DE LA CASA DE LA CULTURA ECUATORIANA BENJAMÍN CARRIÓN NÚCLEO SANTO DOMINGO DE LOS TSÁCHILAS; PERIODO 2017-2018.
Línea de Investigación: Estudio, Diseño e Implementación de Software.
Autor: DORIS LILIANA CIFUENTES BALSECA GLENDA CRISTINA MOSQUERA SARANGO
Rodolfo Sirilo Córdova Gálvez, Mg.
f.
DIRECTOR DE LA DISERTACIÓN DE GRADO
José Luis Centeno Lara, Mg.
f.
CALIFICADOR
William Javier Ocampo Pazos, Mg.
f.
CALIFICADOR
Luis Javier Ulloa Meneses, Mg.
f.
DIRECTOR DE LA ESCUELA DE SISTEMAS Santo Domingo – Ecuador Agosto, 2018
iii
DECLARACIÓN DE AUTENTICIDAD Y RESPONSABILIDAD
Yo, Doris Liliana Cifuentes Balseca portador de la cédula de ciudadanía Nº 2300621865 declaro que los resultados obtenidos en la investigación que presento como informe final, previo a la obtención del Grado de Ingeniero de Sistemas y Computación son absolutamente originales, auténticos y personales. En tal virtud, declaro que el contenido, las conclusiones y los efectos legales y académicos que se desprenden del trabajo propuesto de investigación y luego de la redacción de este documento son y serán de mi sola y exclusiva responsabilidad legal y académica.
Doris Liliana Cifuentes Balseca CI 230062186-5
iv
DECLARACIÓN DE AUTENTICIDAD Y RESPONSABILIDAD
Yo, Glenda Cristina Mosquera Sarango portador de la cédula de ciudadanía Nº 171907601-8 declaro que los resultados obtenidos en la investigación que presento como informe final, previo a la obtención del Grado de Ingeniero de Sistemas y Computación son absolutamente originales, auténticos y personales. En tal virtud, declaro que el contenido, las conclusiones y los efectos legales y académicos que se desprenden del trabajo propuesto de investigación y luego de la redacción de este documento son y serán de mi sola y exclusiva responsabilidad legal y académica.
Glenda Cristina Mosquera Sarango CI 171907601-8
v
AGRADECIMIENTO Primeramente quiero agradecer a Dios por permitirme tener a mi familia y disfrutar cada momento de su compañía, en especial a mis padres Héctor y Piedad por haberme forjado como la persona que soy ahora, gracias a ellos por confiar en mí, apoyarme en cada decisión y motivarme a alcanzar mis sueños, gracias por su amor y la paciencia, a mi abuelito Cruz por su cariño quien es mi guía desde muy pequeña, también a mis abuelitos María, Victoria y Manuel aunque no están ahora conmigo siempre los mantendré presentes en mi corazón, a mi hermana Carolina por todo su cariño y apoyo. Por último a mis amigos por cada momento de alegría y tristeza por estar junto a mí en este camino de aprendizaje y a mi director de trabajo de titulación quien nos ayudó en todo momento Mg. Rodolfo Córdova. Doris Cifuentes.
Agradezco principalmente a Dios y a la Virgencita del Cisne que me han brindado salud, fortaleza en aquellos momentos de dificultad y de debilidad y en todo momento por ser mi guía para poder culminar el presente trabajo de titulación. Mi profundo agradecimiento a mi mami Amada, por ser el pilar fundamental en mi vida, que con su amor, motivación, apoyo incondicional y confianza, ha hecho posible que logre culminar mi carrera profesional. Quiero expresar mi más grande y sincero agradecimiento a mis hermanas Liliana, Maribel y a mi cuñado Víctor, por brindarme su cariño y apoyo, ayudándome así a concluir con una etapa de mi vida. Glenda Mosquera
vi
DEDICATORIA La vida está llena de buenos y malos momentos que entristecen o alegran nuestro camino, es de valientes afrontar las dificultades y seguir adelante. Desde pequeña estabas ahí en los momentos importantes de mi vida, te alegraban mis triunfos y me acompañabas en mis angustias, con una sonrisa en tus labios alegrabas mi vida, fuiste y serás un gran ejemplo a seguir ese roble, ese hombre fuerte e inteligente que siempre he admirado y amado como mi segundo padre, debo decir que nunca estuve preparada para tú partida solo Dios sabe lo mucho que te extraño abuelito mío. Con todo el amor y cariño te doy las gracias Abuelito Cruz Segundo Gabino Balseca Velasco, por tu infinita paciencia, por tus consejos, por el amor que me brindó y por tu apoyo incondicional en mi vida gracias mil gracias. El presente trabajo de titulación es dedicado a ese ser maravilloso llamado abuelito Cruz y a los dos mejores padres que la vida me pudo haber obsequiado a mi padre Bolívar y mi madre Piedad, gracias a ustedes por enseñarme a disfrutar cada momento de la vida, encaminarme por el buen sendero apoyarme en cada paso que daba y por creer en mí. Simplemente son mi vida gracias por todo. Los amo papá y mamá. Abuelito siempre estarás en mi corazón y en mi mente te amo. Doris Cifuentes
El presente trabajo de titulación está dedicado especialmente a mi mami Amada Sarango, por ser la principal promotora de mis metas, por los consejos, valores, principios que me ha inculcado y por ser el apoyo primordial e incondicional durante mi educación universitaria, ya que sin el mismo no hubiera sido posible alcanzar mis objetivos. Glenda Mosquera
vii
RESUMEN El presente trabajo de titulación, optimizó el control de gestión administrativa del departamento de Talento Humano de la Casa de la Cultura Ecuatoriana Benjamín Carrión Núcleo Santo Domingo de los Tsáchilas, por medio de una investigación Descriptiva y Aplicada se recolectó la información necesaria de los procesos para el trámite de vacaciones, licencias y permisos evidenciando la dificultad y necesidad de agilizarlos, razón por la cual surge el desarrollo e implementación de un sistema web que permitió automatizar, reducir y aligerar la carga de trabajo del departamento de Talento Humano. El sistema web cuenta con una interfaz sencilla, intuitiva de fácil manejo para el usuario y se encuentra alojada dentro de un servidor web. La implementación del sistema web tiene vinculación con la sociedad al facilitar la gestión y toma de decisiones por medio de una herramienta tecnológica que permite a la institución considerarse como competitiva e innovadora. El desarrollo del sistema web se realizó bajo el marco de trabajo Scrum, mismo que fue aplicado en cada una de las fases para el desarrollo del software. Las herramientas utilizadas para el desarrollo son Open Source. El diseño del Front-end se realizó con ayuda del lenguaje de contenidos HTML5 integrado del framework Bootstrap v4.0.0, para el desarrollo del Back-end se utilizó el lenguaje de programación PHP v7.1.9 y JavaScript, la base de datos empleada es MariaDB v5.5.6 y HeidiSQL como gestor de base de datos y finalmente el editor de código que facilitó la codificación fue Sublime Text v3.0. Palabras clave: Automatización, Recursos Humanos, Software de código abierto.
viii
ABSTRACT The present titration work, enhanced the control of administrative management of the Human Talent Department of the Ecuadorian Culture House Benjamin Carrión Santo Domingo de los Tsáchilas Nucleus, by means of a Descriptive and Applied investigation the necessary information of the processes for the procedure of vacations, licenses and permissions was collected evidencing the difficulty and necessity to accelerate them, reason for which arises the development and implementation of a web system that allowed to automate, to reduce and to lighten the amount of work of the Human Talent Department. The web system has a simple, intuitive and user-friendly interface and is hosted inside a web server. The implementation of the web system is linked to society by facilitating management and decision-making through a technological tool that allows the institution to be considered competitive and innovative. The development of the web system was carried out under the Scrum framework, which was applied in each of the phases for the development of the software. The tools used for development are Open Source. The design of the Front-end was done with the help of the integrated HTML5 content language of the Bootstrap v4.0.0 framework, for the development of the Back-end was used PHP v7.1.9 programming language and JavaScript, the database used is MaríaDB v5.5.6 and HeidiSQL as database manager and finally the code editor that eased the coding was Sublime Text v3.0. Keywords: Automation, Human Resources, Open Source Software.
ix
ÍNDICE DE CONTENIDOS 1.
INTRODUCCIÓN ............................................................................................................ 1
2.
PLANTEAMIENTO DEL PROBLEMA ......................................................................... 3
2.1. Problema de investigación ................................................................................................ 3 2.2. Justificación de la investigación ....................................................................................... 3 2.3. Objetivos de investigación ............................................................................................... 5 2.3.1. Objetivo General. ............................................................................................................. 5 2.3.2. Objetivos específicos. ....................................................................................................... 5 3.
MARCO REFERENCIAL ............................................................................................... 6
3.1. Antecedentes..................................................................................................................... 6 3.2. Revisión de la literatura o fundamentos teóricos ............................................................. 8 3.2.1. Ingeniería de Software...................................................................................................... 8 3.2.1.1.1 Software..................................................................................................................... 9 3.2.1.1.2 Dominios de aplicación del software. ....................................................................... 9 3.2.1.1.3 Ciclo de vida del Software. ....................................................................................... 9 3.2.1.2. Metodologías de Desarrollo. ...................................................................................... 10 3.2.1.2.1 Metodologías Tradicionales. ................................................................................... 10 3.2.1.2.2 Metodología Ágiles. ................................................................................................ 13 3.2.1.2.2.1 Programación Extrema XP.................................................................................... 13 3.2.1.2.2.2 Crystal. .................................................................................................................. 15 3.2.1.2.2.3 Scrum. ................................................................................................................... 15 3.2.2. Base de Datos. ................................................................................................................ 17 3.2.2.1. Arquitectura de una Base de Datos. ........................................................................... 18 3.2.2.2. Modelos de Base de Datos. ........................................................................................ 18 3.2.2.3. Sistemas Gestores de Bases de Datos. ....................................................................... 19 3.2.2.3.1 MaríaDB. ................................................................................................................. 20 3.2.2.3.2 HeidiSQL................................................................................................................. 20 3.2.3. Arquitectura de aplicaciones web. .................................................................................. 20 3.2.3.1. Cliente/Servidor (C/S). .............................................................................................. 20 3.2.4. Herramientas de Desarrollo. ........................................................................................... 21
x
3.2.4.1. Front-End. .................................................................................................................. 21 3.2.4.1.1 HTML. ..................................................................................................................... 21 3.2.4.1.2 CSS. ......................................................................................................................... 21 3.2.4.1.3 JavaScript. ............................................................................................................... 21 3.2.4.2. Back End. ................................................................................................................... 22 3.2.4.2.1 PHP. ......................................................................................................................... 22 3.2.4.3. Diseño Web. .............................................................................................................. 22 3.2.4.3.1 Responsive Web Design. ......................................................................................... 22 3.2.4.3.2 Frameworks de diseño. ............................................................................................ 22 3.2.4.3.2.1 Materialize ............................................................................................................ 22 3.2.4.3.2.2 Bootstrap ............................................................................................................... 22 3.2.4.3.2.3 Angular JS ............................................................................................................. 23 3.2.5. Gestión Administrativa. .................................................................................................. 23 3.2.5.1. Conceptos Básicos. .................................................................................................... 23 3.2.5.2. Control del Talento Humano. .................................................................................... 24 3.2.5.2.1 De las Vacaciones. .................................................................................................. 24 3.2.5.2.2 De las Licencias....................................................................................................... 24 3.2.5.2.3 De los Permisos. ...................................................................................................... 25 3.3. Comparativas de metodologías de desarrollo de software ............................................. 25 3.3.1. Comparativa entre Modelos Ágiles. ............................................................................... 28 3.4. Comparativas de los lenguajes de programación ........................................................... 29 3.5. Comparativas de los sistemas gestores de base de datos................................................ 31 4.
METODOLOGÍA DE LA INVESTIGACIÓN .............................................................. 33
4.1. Diseño / Tipo de investigación ....................................................................................... 33 4.1.1. Enfoque de la investigación............................................................................................ 33 4.1.2. Diseño de la investigación. ............................................................................................. 33 4.1.3. Tipo de investigación. .................................................................................................... 33 4.1.3.1. Investigación Descriptiva. ......................................................................................... 33 4.1.3.2. Investigación Aplicada. ............................................................................................. 34 4.2. Población / Universo ...................................................................................................... 34 4.3. Muestra ........................................................................................................................... 34
xi
4.4. Técnicas e Instrumentos de recogida de datos ............................................................... 34 4.4.1. La Encuesta. ................................................................................................................... 34 4.4.2. La Entrevista. .................................................................................................................. 34 4.5. Técnicas de Análisis de Datos ........................................................................................ 35 5.
RESULTADOS .............................................................................................................. 36
5.1. Análisis Situacional de la población............................................................................... 36 5.1.1. Entrevista. ....................................................................................................................... 36 5.1.2. Encuesta realizada a los servidores públicos de la CCE-NSDT..................................... 38 5.2. Propuesta de intervención del Sistema SisWeb CCE-NSDT ......................................... 46 5.2.1. Análisis de metodologías de desarrollo de software. ..................................................... 46 5.2.2. Análisis de lenguajes de programación. ......................................................................... 46 5.2.3. Análisis del sistema gestor de base de datos. ................................................................. 46 5.2.4. Aplicación de la metodología de desarrollo de software................................................ 47 5.2.5. Diseño relacional de la base de datos. ............................................................................ 69 5.2.6. Acta de entrega por Sprint. ............................................................................................. 70 5.3. Análisis del impacto ....................................................................................................... 70 5.3.1. Impacto Tecnológico. ..................................................................................................... 71 5.3.2. Impacto Ambiental. ........................................................................................................ 71 5.3.3. Impacto Económico. ....................................................................................................... 72 5.3.4. Impacto General. ............................................................................................................ 72 6. DISCUSIÓN DE LOS RESULTADOS ......................................................................... 73 6.1.1. Discusión de la Entrevista. ............................................................................................. 73 6.1.2. Discusión de las encuestas realizadas a los servidores públicos. ................................... 73 7. 8. 9. 10. 11.
CONCLUSIONES .......................................................................................................... 74 RECOMENDACIONES ................................................................................................ 75 LISTA DE REFERENCIAS........................................................................................... 76 GLOSARIO .................................................................................................................... 79 ANEXOS ........................................................................................................................ 80
xii
ÍNDICE DE TABLAS Tabla 1. Comparativas entre Métodos Ágiles/Tradicionales ................................................... 27 Tabla 2. Comparativa entre modelo ágiles .............................................................................. 29 Tabla 3: Comparativa entre Lenguajes de Programación ........................................................ 30 Tabla 4: Comparativa entre sistemas gestores de base de datos .............................................. 32 Tabla 5. Resultados de la encuesta pregunta 1 ........................................................................ 38 Tabla 6: Resultados de la encuesta pregunta 2 ........................................................................ 39 Tabla 7: Resultados de la encuesta pregunta 3 ........................................................................ 40 Tabla 8: Resultados de la encuesta pregunta 4 ........................................................................ 41 Tabla 9: Resultados de la encuesta pregunta 5 ........................................................................ 42 Tabla 10: Resultados de la encuesta pregunta 6 ...................................................................... 43 Tabla 11: Resultados de la encuesta pregunta 7 ...................................................................... 44 Tabla 12: Resultados de la encuesta pregunta 8 ...................................................................... 45 Tabla 13: Roles del equipo Scrum ........................................................................................... 47 Tabla 14: Escala de Complejidad ............................................................................................ 48 Tabla 15: Product Backlog....................................................................................................... 48 Tabla 16: Sprint Backlog 1 ...................................................................................................... 50 Tabla 17: Burndown Chart Sprint 1 ......................................................................................... 51 Tabla 18: Plan de Pruebas realizadas ....................................................................................... 58 Tabla 19: Sprint Backlog 2 ...................................................................................................... 59 Tabla 20: Burndown Chart Sprint 2 ......................................................................................... 60 Tabla 21: Plan de pruebas realizadas ....................................................................................... 67 Tabla 22: Niveles de impacto .................................................................................................. 70 Tabla 23: Impacto tecnológico................................................................................................. 71 Tabla 24: Impacto ambiental ................................................................................................... 71 Tabla 25: Impacto económico .................................................................................................. 72 Tabla 26: Impacto general ....................................................................................................... 72
xiii
ÍNDICE DE FIGURAS Figura 1. Etapas del modelo cascada ....................................................................................... 11 Figura 2. Etapas del modelo incremental ................................................................................. 11 Figura 3. Etapas del modelo evolutivo .................................................................................... 12 Figura 4. Etapas del modelo concurrente ................................................................................. 12 Figura 5. Etapas del modelo XP .............................................................................................. 15 Figura 6. Etapas del modelo Scrum ......................................................................................... 17 Figura 7. Esquema E-R para una biblioteca............................................................................. 19 Figura 8. Gráfico de resultados de la pregunta 1 ..................................................................... 38 Figura 9. Gráfico de resultados de la pregunta 2 ..................................................................... 39 Figura 10. Gráfico de resultados de la pregunta 3 ................................................................... 40 Figura 11. Gráfico de resultados de la pregunta 4 ................................................................... 41 Figura 12. Gráfico de resultados de la pregunta 5 ................................................................... 42 Figura 13. Gráfico de resultados de la pregunta 6 ................................................................... 43 Figura 14. Gráfico de resultados de la pregunta 7 ................................................................... 44 Figura 15. Gráfico de resultados de la pregunta 8 ................................................................... 45 Figura 16. Tablero de Trello .................................................................................................... 49 Figura 17. Figura obtenida del Sprint 1. .................................................................................. 52 Figura 18. Maquetación Ingreso al Sistema ............................................................................. 53 Figura 19. Diseño de Formularios ........................................................................................... 53 Figura 20. Instalación y configuración de WampServer ......................................................... 54 Figura 21. Instalación y configuración entorno de desarrollo HeidiSQL ................................ 54 Figura 22. Modelado de la Base de Datos ............................................................................... 55 Figura 23. Conexión PHP ........................................................................................................ 55 Figura 24. Formulario de ingreso al sistema ............................................................................ 56 Figura 25. Sentencia de cifrado de contraseña ......................................................................... 56 Figura 26. Formulario nuevo registro ...................................................................................... 57 Figura 27. Formulario Actualizar registro ............................................................................... 57 Figura 28. Mensaje satisfactorio en JavaScript........................................................................ 57 Figura 29. Figura obtenida del Sprint 2. .................................................................................. 61 Figura 30. Técnica de Moqups Tablero de solicitudes ............................................................ 62 Figura 31. Técnica de Moqups Formulario de Nuevo usuario ................................................ 62 Figura 32. Técnica de Moqups Formulario de Nuevo registro ................................................ 63
xiv
Figura 33. Interfaz del Tablero de solicitudes ......................................................................... 63 Figura 34. Codificación Aceptar Solicitud .............................................................................. 64 Figura 35. Codificación Rechazar Solicitud ............................................................................ 64 Figura 36. Función Full Calendar ............................................................................................ 64 Figura 37. Interfaz del formulario de registro .......................................................................... 65 Figura 38. Actualización foto del servidor público ................................................................. 65 Figura 39. Tablero de registro de salida................................................................................... 66 Figura 40. Sentencias para el registro de salida ....................................................................... 66 Figura 41. Función para validar en JavaScript ......................................................................... 67 Figura 42. Prueba codificación Login ...................................................................................... 68 Figura 43. Retorno de parámetros............................................................................................ 68 Figura 44. Diseño relacional de la Base de Datos ................................................................... 69
xv
ÍNDICE DE ANEXOS
Anexo 1. Encuesta dirigida a los servidores públicos de la Casa de la Cultura Ecuatoriana Benjamín Carrión Núcleo Santo Domingo de los Tsáchilas. .................................................. 80 Anexo 2. Historias de usuario .................................................................................................. 82 Anexo 3. Pruebas de aceptación del Sprint 1 ........................................................................... 88 Anexo 4. Retrospectiva del Sprint 1 ........................................................................................ 90 Anexo 5. Pruebas de aceptación del Sprint 2 ........................................................................... 92 Anexo 6. Retrospectiva del Sprint 2 ........................................................................................ 94 Anexo 7. Oficio de entrega por Sprint ..................................................................................... 96 Anexo 8. Acta de entrega de Recepción .................................................................................. 98 Anexo 9. Manual de usuario .................................................................................................... 98 Anexo 10. Manual de instalación............................................................................................. 98 Anexo 11. Diccionario de Datos .............................................................................................. 99 Anexo 12. Carta de Impacto .................................................................................................. 106
1
1. INTRODUCCIÓN En la actualidad, las empresas buscan analizar y distinguir diversas estrategias que permitan optimizar sus procesos organizacionales de tal forma que se puedan considerar como competitivas e innovadoras, mediante el uso de sistemas informáticos que facilitan las cargas de trabajo en diferentes áreas; debido a ello nacen los sistemas de información permitiendo reunir, registrar, almacenar y recuperar los datos relacionados con la organización. El presente trabajo de titulación, propone desarrollar un sistema para el control de gestión administrativa en el departamento de Talento Humano de la Casa de la Cultura Ecuatoriana Benjamín Carrión Núcleo Santo Domingo de los Tsáchilas (CCE-NSDT), el cual se enfoca en automatizar los procesos administrativos, de modo que los usuarios involucrados dispongan de una herramienta potente y de fácil manejo, que permita gestionar de manera eficiente y oportuna la información para el módulo de control de vacaciones, licencias y permisos del personal administrativo. El desarrollo del presente trabajo se realizó en base a investigaciones de amplias fuentes bibliográficas que sirvieron como pilar fundamental para la realización del mismo, donde las fuentes bibliográficas se obtuvieron de la biblioteca de la PUCESD, además se recabó información relevante en artículos científicos y páginas oficiales con contenido verídico. El presente trabajo se encuentra constituido de las siguientes fases: La Fase I: Presenta la Introducción de los diversos aspectos que componen el trabajo, con un planteamiento claro y ordenado del tema de investigación. La Fase II: Ubica el Planteamiento del Problema que incluye subtemas como el Problema, la Justificación y los Objetivos de la Investigación, donde se formula preguntas directrices para abordar los objetivos específicos del presente trabajo de titulación. La Fase III: Ubica los sustentos teóricos que fundamentan la investigación, que abordan temas de ingeniería del software, base de datos, herramientas de desarrollo web y gestión y control administrativa.
2
La Fase IV: Describe la metodología que se utilizó en la investigación del trabajo de titulación con subtemas tales como el enfoque de investigación, el tipo de investigación, las técnicas e instrumentos de recogida de datos y técnicas de análisis de datos; además de ello se define la metodología de desarrollo del software en base a los parámetros y requisitos que mejor se acoplen a las necesidades para el desarrollo del sistema. La Fase V: Detalla los resultados alcanzados en base a los objetivos planteados del presente trabajo de investigación, el correspondiente análisis situacional de la población que contó con una encuesta y entrevista a los servidores públicos de la institución; además de ello se desarrolló una propuesta de intervención y así mismo se llevó a cabo el análisis de impacto para determinar los aspectos positivos y negativos en caso de presentarse con la ejecución del producto. Las Fases VI, VII y VIII corresponde a Conclusiones, Recomendaciones y la Referencia Bibliográfica, donde se detalla cada una de las fuentes de información utilizadas en el presente trabajo. Finalmente las Fases IX y X, incluye un Glosario de Términos y sus respectivos Anexos.
3
2. PLANTEAMIENTO DEL PROBLEMA 2.1. Problema de investigación La Casa de la Cultura Ecuatoriana Benjamín Carrión Núcleo Santo Domingo de los Tsáchilas, institución permanentemente fiel receptora, procesadora y difusora de la cultura local, entidad autónoma y sin fines de lucro, que tiene por objeto contribuir al desarrollo de la sociedad. En la actualidad los servidores públicos del departamento de Talento Humano, aún siguen realizando ciertas actividades en forma convencional; ocasionando pérdidas innecesarias de los recursos y tiempos improductivos de trabajo, al no contar con un adecuado y amigable sistema que permita llevar un mejor control de gestión de vacaciones, licencias y permisos en la CCE-NSDT. Con lo mencionado anteriormente nace la siguiente interrogante, para el desarrollo del tema de investigación: ¿Cómo mejorar el control de gestión administrativa en el departamento de Talento Humano de la Casa de la Cultura Ecuatoriana Benjamín Carrión Núcleo Santo Domingo de los Tsáchilas? La presente investigación, permitirá responder las siguientes preguntas directrices: ¿Cuáles son los procesos que se llevan a cabo para el control de gestión administrativa de vacaciones, licencias y permisos del departamento de Talento Humano de la CCE-NSDT? ¿Qué metodologías de desarrollo de software se adapta a los procesos necesarios para el control de gestión administrativa del departamento de Talento Humano de la CCE-NSDT? ¿Cómo facilitar el proceso de asignación con respecto al trámite de vacaciones, licencias y permisos dentro de la institución?
2.2. Justificación de la investigación Las empresas, instituciones y entidades, en la actualidad buscan optimizar sus procesos organizacionales de tal forma que se puedan considerar como competitivas e innovadoras
4
mediante el uso de sistemas informáticos, los cuales facilitan la carga de trabajo en diferentes áreas como puede ser en la de Administración de Gestión de Talento Humano. En base a lo mencionado anteriormente, nacen los sistemas de información en la gestión de Talento Humano los cuales facilitan reunir, registrar, almacenar y recuperar los datos relacionados con los recursos de la organización, mediante el uso de páginas web, que hoy en día son un medio de comunicación global a las necesidades requeridas por las personas que navegan por internet, donde tener un sitio web es la principal herramienta del siglo XXI para la comunicación y difusión de la información. El presente trabajo de titulación está alineado con el eje número dos, que establece la economía al servicio de la sociedad en relación al Plan Nacional del Buen Vivir, dentro del cual se detalla su objetivo número cinco “Impulsar la productividad y competitividad para el crecimiento económico, sostenible de manera redistributiva y solidaria” (Secretaria Nacional de Planificación y Desarrollo, 2017, p. 80). De esta manera se va a desarrollar un sistema web para la Casa de la Cultura Ecuatoriana Benjamín Carrión Núcleo Santo Domingo de los Tsáchilas, que permitirá a los servidores públicos de la institución, gestionar de manera eficiente y oportuna la información para el módulo de control de vacaciones, licencias y permisos del personal administrativo. Se considera factible en el proyecto, contar con un módulo para el control de gestión administrativo en el Departamento de Talento Humano que reducirá el tiempo empleado por los Directivos, tanto en recursos humanos y económicos referente al trámite de vacaciones, licencias y permisos, con el fin de mejorar la gestión en los procesos que presenta actualmente el departamento de Talento Humano; dicho proyecto se realizará en beneficio de los servidores públicos de la Casa de la Cultura Ecuatoriana Benjamín Carrión Núcleo Santo Domingo de los Tsáchilas, en conjunto con los Directivos de la institución y los disertantes; por ende se cuenta con todo el apoyo por parte de los directivos para el desarrollo del proyecto anteriormente mencionado. La principal motivación que llevó a realizar este trabajo de investigación, es conocer los diferentes procesos que se manejan dentro de una institución pública y el rol que desempeña un Ingeniero de Sistemas y Computación al momento de diseñar, programar, aplicar y mantener sistemas informáticos para crear e implementar software, que ayude a la empresa a la toma de decisiones y así resolver problemas cotidianos a través de la tecnología.
5
2.3. Objetivos de investigación 2.3.1. Objetivo General. Implementar un sistema web para el control de gestión administrativa del departamento de Talento Humano de la Casa de la Cultura Ecuatoriana Benjamín Carrión Núcleo Santo Domingo de los Tsáchilas; periodo 2017-2018. 2.3.2. Objetivos específicos.
Determinar los procesos que se llevan a cabo para el control de gestión administrativa de vacaciones, licencias y permisos del departamento de Talento Humano de la CCE-NSDT.
Definir la metodología de desarrollo de software, que se adapta a los procesos necesarios para el control de gestión administrativa dentro de la CCE-NSDT.
Desarrollar el sistema web para el control de gestión administrativa de vacaciones, licencias y permisos para la Casa de la Cultura Ecuatoriana Benjamín Carrión Núcleo Santo Domingo de los Tsáchilas.
6
3. MARCO REFERENCIAL 3.1. Antecedentes En el año 1996, bajo la Presidencia del Dr. Camilo Restrepo Presidente Nacional de la Casa de la Cultura Ecuatoriana Benjamín Carrión Matriz, expresamente se solicitó al Lcdo. Sergio Vélez para la creación y celebración del acta constitutiva del Núcleo en el Cantón Santo Domingo de los Colorados. Inicialmente la Casa de la Cultura Ecuatoriana Extensión Santo Domingo, funcionó en la Cooperativa 9 de Diciembre mediante convenio de cooperación interinstitucional por la cultura. Finalmente el 11 de Octubre del 2008 se jerarquizó a Núcleo. En la actualidad la Casa de la Cultura Ecuatoriana Benjamín Carrión Núcleo Santo Domingo de los Tsáchilas (CCE-NSDT), se encuentra ubicada entre la Av. Quito y Av. Río Toachi. La CCE-NSDT, es una institución pública autónoma de gestión cultural en la República del Ecuador; su misión se fundamenta en preservar, promover y difundir el arte, las letras ecuatorianas y la memoria social, desde la dialéctica ancestral y contemporánea con proyección Pluricultural e Intercultural desde las Redes Nacionales para el fortalecimiento del Sistema Nacional de Cultura. La visión de la institución, es ser un referente cultural a nivel Nacional e Internacional en la afirmación y fortalecimiento de la Identidad Nacional, Identidades diversas Pluriculturalidad e Interculturalidad desde los derechos culturales alineados al buen vivir. En la CCE-NSDT, existe un deficiente control de gestión en el Departamento de Talento Humano, debido a que presenta retrasos tecnológicos, por lo que existe un inadecuado registro de las solicitudes para vacaciones, licencias y permisos; por ende, estos problemas generan tiempos improductivos de trabajo y un deficiente control en la gestión de las vacaciones, licencias y permisos que solicitan los servidores públicos de la institución. El sistema actual de manejo de procesos que lleva la institución, provoca retraso en la asignación de vacaciones, licencias y permisos; dando lugar a la incertidumbre entre los servidores públicos, generando así un lapso de tiempo excesivo desde la fecha de entrega; donde el proceso que se realiza para aceptar o rechazar dicha solicitud concluye una vez que se da a conocer la información, requiriendo una considerable cantidad de tiempo para procesarse entre las partes involucradas.
7
La cantidad de personal para el Departamento de Talento Humano es escaso, ya que cuenta de un solo funcionario público para desempeñar varios procesos, provocando que los mismos no se realicen con eficiencia; por tanto, existe cierto malestar entre los servidores al no contar con información actualizada. Además la información que maneja la institución se respalda de forma manual: hojas de registros, archivos de Excel, libros diarios, etc.; este método convencional genera muchos inconvenientes de manera que los registros ubicados en medios físicos, pueden ser susceptibles al deterioro o en el peor de los casos a pérdida de documentos importantes. Los sistemas web para el control de gestión administrativa son cada vez más utilizados, debido a que proporcionan una solución tecnológica para gestionar los recursos humanos dentro de la empresa, aumentando la productividad con el uso de nuevas herramientas. A continuación se detalla trabajos de investigación relacionados directamente con la temática, que sirvieron de guía para abordar el problema y presentar una respuesta eficaz en la institución. A nivel mundial, se han implementado múltiples plataformas para la gestión del Talento Humano. Tal es el caso de la plataforma Meta4 en España, que permite integrar el ciclo del talento humano desde la nómina y administración personal hasta la gestión global del talento. El objetivo de Meta4 es ayudar a las organizaciones con sus procesos al momento de gestionar el ciclo completo de sus empleados, por medio de una solución integrada que aprovecha las ventajas de la nube para responder a los retos de la gestión del capital humano, incrementando la productividad y eficiencia de las empresas (Meta4, 2018). En Colombia se implementó un sistema de gestión de talento humano para la empresa de servicios Call Center, con la finalidad de proporcionar información a detalle acerca de las responsabilidades y habilidades que se requieren para la organización. De esta manera el sistema permite obtener una herramienta funcional para la gestión y administración del recurso humano, con el objetivo de contar con información detallada y actualizada de las características necesarias para desempeñar los roles, responsabilidades y habilidades que implica el puesto frente a su objetivo, la periodicidad de la ejecución, al igual de la relación que tiene con otros puestos de trabajo dentro de la organización. (Libreros & Ramírez, 2013). A nivel nacional existen proyectos relacionados a la gestión de talento humano, como es el caso de la Universidad Central del Ecuador ubicada en Quito, que cuenta con un sistema para la gestión y control de vacaciones, licencias y permisos del personal administrativo y de
8
servicio de la dirección de talento humano, aplicación que se encuentra diseñada sobre herramientas de software libre open Source como la plataforma de desarrollo Java Enterprise Edition (Java EE), servidor GlassFish, sistema gestor de base de datos PostgreSQL y el proceso unificado de desarrollo (RUP) como metodología de desarrollo de software (Loachamin, 2015). En la ciudad de Guayaquil se implementó un sistema de gestión de talento humano en la Comunidad Salesiana San Juan Bosco, con el objetivo de manejar la nómina y tener un registro detallado de cada empleado en la comunidad, permitiendo reducir costos, recursos, mantener actualizada la información con respecto a los roles de pago, generar datos confiables y seguros, mediante un sistema claro y oportuno que permita conocer los desembolsos y pagos del personal. Las herramientas empleadas en el desarrollo del sistema fueron: WampServer, lenguaje de programación PHP con el framework Codeigniter y la herramienta de base de datos MySQL (Moya & Callejas, 2015). A nivel local el Gobierno Autónomo Descentralizado de Santo Domingo (GAD), maneja un sistema web para el control de gestión administrativa del personal, mismo que cuenta con diferentes módulos que facilitan la gestión de los servidores públicos que laboran en la institución, constituyendo la base técnica en la gestión personal y la guía para el desarrollo del recurso humano (GAD, 2018). Por estos motivos, se considera importante desarrollar un sistema web, para la gestión administrativa y control de vacaciones, licencias y permisos en el Departamento de Talento Humano, que permitirá optimizar y automatizar dichos procesos ya antes mencionados; con el cual se podrá satisfacer las necesidades de la Casa de la Cultura Ecuatoriana Benjamín Carrión Núcleo Santo Domingo de los Tsáchilas, de tal forma que la institución se pueda considerar como competitiva e innovadora.
3.2. Revisión de la literatura o fundamentos teóricos 3.2.1. Ingeniería de Software. La ingeniería de software trata con un tipo especial de producto el software. De acuerdo con Sommerville (2014), se interesa por los detalles en la creación del software, es decir enfocándose desde sus inicios en la determinación del sistema hasta culminar el mantenimiento del mismo después que se pone en operación (p. 7).
9
3.2.1.1. Desarrollo de software. 3.2.1.1.1 Software. Según Sánchez, Sicilia y Rodríguez (2012), define al software como el conjunto de programas, procedimientos y documentación relacionada que se asocia con un sistema, y especialmente con un sistema de computadora. En un sentido específico, software son los programas de computadoras (p. 13). 3.2.1.1.2 Dominios de aplicación del software. Software de Sistemas: Según Pressman (2010), establece al software de sistemas como un conjunto de programas escritos para dar servicios a otros programas. El área de software de sistemas se caracteriza por: gran interacción con el hardware de la computadora, uso intensivo por usuarios múltiples, operación concurrente que requiere la secuenciación, recursos compartidos y administración de un proceso sofisticado (p. 6). Software de Aplicación: Se conoce como software de aplicación a aquellos programas aislados que resuelven una necesidad específica de negocios. “Las aplicaciones en estas áreas procesan datos comerciales o técnicos en una forma que facilitan las operaciones de negocios o la toma de decisiones administrativas o técnicas” (Pressman, 2010, p. 6). Aplicaciones Web: Conocidas como “webapps”, está categoría está centrado en redes, donde se agrupa una amplia gama de aplicaciones. “En su forma más sencilla, las webapps son poco más que un conglomerado de registros de hipertexto relacionados mediante el utilización de esquemas limitados y texto” (Pressman, 2010, p. 7). 3.2.1.1.3 Ciclo de vida del Software. Una estructura general para la ingeniería de software define cinco actividades estructurales. Es decir, la comunicación, planeación, modelado y despliegue se ejecutan a través de cierto número de repeticiones del proyecto. Comunicación: Antes de que comience cualquier trabajo técnico, tiene importancia crítica comunicarse y colaborar con el cliente. Se busca entender los objetivos de los participantes respecto al proyecto, y reunir los requerimientos que ayuden a definir las características y funciones del software (Pressman, 2010, p. 13).
10 Planeación: Cualquier viaje complicado se simplifica si existe un mapa. Un proyecto de software es un viaje difícil, y la actividad de planeación crea un “mapa” que guía al equipo mientras viaja. El mapa llamado plan del proyecto de software define el trabajo de ingeniería de software al describir las tareas técnicas por realizar, los riesgos probables, los recursos que se requieren, los productos del trabajo que se obtendrán y una programación de las actividades. (Pressman, 2010, p. 13) Modelado: Crea un bosquejo del objeto por hacer a fin de entender el panorama general, cómo se verá arquitectónicamente, como ajustan entre si las partes constituyentes, y muchas características más. Si se requiere, refine el bosquejo con más y más detalles en un esfuerzo por comprender mejor el problema y como resolverlo. (Pressman, 2010, p. 13)
Construcción: Esta actividad combina la generación de código en forma manual o automatizada, para descubrir posibles errores que se presentan en las pruebas (Pressman, 2010, p. 13). Despliegue: El software (como entidad completa o como un incremento parcialmente terminado) se entrega al consumidor que la evalúa y que le da retroalimentación, misma que se basa en dicha evaluación (Pressman, 2010, p. 13). Estas cinco actividades genéricas se usan durante el desarrollo de programas pequeños y sencillos, en la creación de aplicaciones grandes y en la ingeniería de sistemas enormes y complejos basados en computadoras. Los detalles del proceso serán distintos en cada caso, pero las actividades estructurales son las mismas. (Pressman, 2010, p. 13)
3.2.1.2. Metodologías de Desarrollo. 3.2.1.2.1 Metodologías Tradicionales. “Las metodologías tradicionales proponen fijar los requisitos con un alto nivel de detalle al inicio del proyecto y a partir de ellos, se hace una estimación del costo y de la fecha de entrega del mismo” (Álvarez, de las Heras y Lasa, 2012, p. 32). En relación con Pressman (2010), existen cuatro tipos de metodologías tradicionales: cascada, incremental, evolutivo y concurrente. Modelo de la cascada: De acuerdo con Pressman (2010), se define al modelo cascada como un conjunto de pasos con un orden sistemático y secuencial en el desarrollo del software, iniciando con la descripción de las especificaciones que realiza el cliente y progresa con las etapas de planeación, modelado, construcción y despliegue, finalizando el desarrollo del software culminado (pp. 33-37).
11
Figura 1. Etapas del modelo cascada Adaptado de “Ingeniería del software” por I. Sommerville, 2014, México: Pearson Educación.
Modelo de proceso incremental: Hay muchas situaciones en las que los requerimientos iniciales del software están razonablemente bien definidos, pero el alcance general del esfuerzo de desarrollo imposibilita un proceso lineal (Pressman, 2010, p. 36). “El desarrollo incremental se basa en la idea de diseñar una implementación inicial, exponer ésta al comentario del usuario, y luego desarrollarla en sus diversas versiones hasta producir un sistema adecuado” (Sommerville, 2014, p. 32).
Figura 2. Etapas del modelo incremental Adaptado de “Ingeniería del software” por I. Sommerville, 2014, México: Pearson Educación.
12
Modelo de proceso evolutivo: De acuerdo con Pressman (2010), el software, como todos los sistemas complejos, evoluciona en el tiempo. Es frecuente que los requerimientos del negocio y del producto cambien conforme avanza el desarrollo, lo que hace que no se realista trazar una trayectoria rectilínea hacia el producto final (p. 36). “Los modelos evolutivos son iterativos. Se caracterizan por la manera en la que permiten desarrollar versiones cada vez más completas del software” (Pressman, 2010, p. 37).
Figura 3. Etapas del modelo evolutivo Adaptado de “Ingeniería del software” por I. Sommerville, 2014, México: Pearson Educación.
Modelo concurrente: “El modelado concurrente define una serie de eventos que desencadenan transiciones de un estado para cada una de las actividades, acciones o tareas de la ingeniería del software” (Pressman, 2010, p. 42).
Figura 4. Etapas del modelo concurrente Adaptado de “Ingeniería del software” por I. Sommerville, 2014, México: Pearson Educación.
13
3.2.1.2.2 Metodología Ágiles. De acuerdo Álvarez et al. (2012), los métodos ágiles proponen un cambio de paradigma ya que se parte de un presupuesto y una fecha de entrega, y a partir de ahí, se trabaja para implementar la funcionalidad valiosa para cada cliente en cada momento trabajando de esta manera, el alcance será flexible (p. 32). El manifiesto ágil propone una serie de ideas que describen una nueva forma de trabajar, dejando atrás la orientación inflexible de los proyectos convencionales. Según Sommerville (2014), son más adecuados para el diseño de aplicaciones en los que los requerimientos del sistema cambian, por lo general, rápidamente durante el proceso del desarrollo. 3.2.1.2.2.1 Programación Extrema XP. Álvarez et al. (2012), define a la programación extrema como un método adaptativo, es decir, que se ajusta muy bien a los cambios. Propone desarrollar el código de forma que su diseño, arquitectura y codificación permitan incorporar modificaciones y añadir una funcionalidad nueva sin demasiado impacto en la calidad del mismo (p. 49). Valores de XP: XP se basa en un conjunto de ideales a los que llaman valores, que son los que guían el desarrollo a la programación extrema los cuales trabajando en conjunto logran un desarrollo ágil y eficaz del software. Los principios y prácticas de XP se basan en los siguientes valores: comunicación, retroalimentación, simplicidad, respeto y valentía. De acuerdo con el autor Measey (2015), a continuación se mencionan los valores XP con una breve descripción. Comunicación: Dentro de la comunicación se establece simplemente diálogos verbales, procediendo en realizar menos documentación al contrario del modelo cascada. Se estimula al equipo de desarrollo a trabajar en parejas y elaborar pruebas unitarias (Measey, 2015, p. 125). Retroalimentación: Se realiza la retroalimentación por una constante variación en los requerimientos por parte del cliente cuando sea necesario. XP trabaja con iteraciones cortas, por ende el equipo recibe retroalimentación del cliente. Las pruebas unitarias muestran información del estado del código respecto a las salidas previstas, a diferencia de las pruebas de funcionalidad las cuales muestran la posición actual sobre el desarrollo del proyecto (Measey, 2015, p. 125). Simplicidad: Se enfoca en desarrollar de forma sencilla, es decir tomando las funcionalidades más relevantes en cada iteración, logrando así un desarrollo eficaz (Measey, 2015, p. 125). Respeto: Contiene todos los demás valores, pues un equipo sin respeto está expuesto a
14 inconvenientes. Se considera la entrega efectiva asegurando el respeto donde se relaciona con la estimación a los involucrados e iteraciones, respetándose uno mismo y a los miembros del equipo XP, un ambiente de trabajo que produzca confianza y valora cada aporte que una persona hace al equipo de trabajo (Measey, 2015, p. 126). Valentía: Implica una decisión frente algún evento o suceso, valentía para aceptar los cambios, enfrentarse a errores, corregirlos y empezar con un nuevo diseño. El coraje o valentía se lo puede tomar como un valor por separado, puesto que se tomaría acciones precipitadas y negligentes (Measey, 2015, p. 126).
Principios XP: De acuerdo con Álvarez et al. (2012), los valores XP son demasiados abstractos y es necesario concretar algo más para ponerlos en práctica, para ello XP propone principios útiles para el desarrollo. Estos principios son: humanidad, mejora continua, diversidad, oportunidad, redundancia buscando soluciones, aprender de los fallos, búsqueda constante de la calidad, avanzar con pequeños pasos, aceptar la responsabilidad de todos los implicados en el desarrollo de un producto (p.50). Proceso de XP: De acuerdo con Pressman (2010), el proceso XP utiliza una guía orientada a objetos como modelo predilecto para el desarrollo, y engloba un conjunto de reglas y prácticas que ocurren en el contexto de cuatro actividades estructurales. Planeación: La actividad de planeación permite que los miembros técnicos del equipo XP entiendan el contexto de negocio para el software y adquieran la sensibilidad de la salida y características principales en funcionalidad que se requiere (Pressman, 2010, p. 62). Diseño: El diseño XP sigue rigurosamente el principio mantenlo sencillo. Un diseño sencillo siempre se prefiere con una representación más compleja. Asimismo, con el diseño se obtiene historia para la implementación. XP estimula el uso de las tarjetas CRC (clase- responsabilidadcolaborador) como un mecanismo eficaz para pensar en el software en un contexto orientado a objetos (Pressman, 2010, p. 63). Codificación: Un concepto clave para la actividad de codificación es la programación por parejas. XP recomienda que dos personas trabajen juntan en una estación de trabajo con el objeto de crear código para una historia. Esto da un mecanismo para la solución de problemas en tiempo real y para el aseguramiento de la calidad en tiempo real, es decir el código se revisa conforme se crea (Pressman, 2010, p. 64). Pruebas: La creación de pruebas unitarias antes de que comience la codificación es un elemento clave del enfoque XP. Las pruebas unitarias que se crean deben implementarse el uso de una estructura que permita automatizarla (Pressman, 2010, p. 65).
15
Figura 5. Etapas del modelo XP Adaptado de “Ingeniería del software: Un enfoque práctico” por R. Pressman, 2010, México: McGraw-Hill.
3.2.1.2.2.2 Crystal. “Define un conjunto de metodologías, cada una con elementos fundamentales comunes a todos, roles, patrones de proceso, productos del trabajo y prácticas que son únicas para cada uno” (Pressman, 2010, p. 72). La familia Crystal es un conjunto de ejemplos de procesos ágiles que han demostrado ser efectivos para diferentes tipos de proyectos. Permite que equipos ágiles seleccionen al miembro de la familia Crystal más apropiado para su proyecto y ambiente. 3.2.1.2.2.3 Scrum. Es un método de desarrollo ágil que proporciona una guía de referencia para la administración del proyecto. “Se centra alrededor de un conjunto de sprints, que son periodos fijos cuando se desarrolla un incremento del sistema” (Sommerville, 2014, p.78). El trabajo que se realiza dentro de un sprint se adapta al problema en cuestión.
Principios de Scrum: De acuerdo con Álvarez et al. (2012), afirma que Scrum es un marco de trabajo para el desarrollo y el mantenimiento de productos complejos, basada en principios fundamentales que guían su desarrollo:
-
Inspección y adaptación: “Para adoptar el marco de trabajo Scrum, se realizan sprints que cuentan con una duración de 1 a 4 semanas y que terminan con un producto entregable. Las inspecciones deben ser oportunas para comprobar el avance del proyecto” (Álvarez et al., 2012, p. 39).
16
-
Auto-organización y colaboración: “El equipo se gestiona y organiza a sí mismo, esta auto-organización facilita el trabajo resolviendo dudas y eliminando posibles impedimentos” (Álvarez et al., 2012, p. 39).
-
Priorización: “Es necesario tener las funcionalidades especificadas, expresando la importancia que presenta el negocio” (Álvarez et al., 2012, p. 39).
-
Mantener un latido: “Ayuda a centrarse en crear el producto y tener muy estable las fechas claves de una iteración” (Álvarez et al., 2012, p. 39).
Valores Scrum: Un equipo Scrum incorpora valores de compromiso, coraje, foco, apertura y respeto. Los miembros del equipo Scrum aprenden y exploran estos valores a medida que trabajan en los eventos, roles y artefactos Scrum. El Equipo Scrum y sus interesados acuerdan estar abiertos a todo el trabajo y a los desafíos que se les presenten al realizar su trabajo, para ser personas capaces e independientes. (Scrum Alliance Organization, 2017, p. 4)
Roles en el equipo Scrum: En relación con la Scrum Alliance Organization (2017), esta metodología define los siguientes roles dentro de un equipo Scrum:
-
Product Owner: “Es la única persona responsable de gestionar el valor del producto y el trabajo del equipo de desarrollo” (Scrum Alliance Organization, 2017, p. 5).
-
Scrum Master: “Es el responsable de asegurar que Scrum se entienda y se adopte, guía al equipo a conseguir el objetivo acordado” (Scrum Alliance Organization, 2017, p. 6).
-
Equipo de Desarrollo: “Son los miembros responsables de la construcción del producto” (Scrum Alliance Organization, 2017, p. 7).
Eventos de Scrum: Los eventos se diseñaron específicamente para habilitar los pilares vitales de Scrum.
-
Sprint: “Es un bloque de tiempo de un mes o menos durante el cual se crea un incremento de producto “terminado” utilizable y potencialmente despegable” (Scrum Alliance Organization, 2017, p. 8).
-
Planificación del Sprint: Se crea mediante el trabajo colaborativo del equipo Scrum completo. De acuerdo con Álvarez et al. (2012), esta reunión es como su nombre lo
17
indica, el momento en el que se planifica el sprint y finaliza con un objetivo claro sobre el trabajo que se debe realizar para la iteración siguiente con un sprint Backlog adecuado (p. 41). -
Scrum Diario: “Es el momento de la sincronización del equipo en el que cada miembro comenta con el resto, reflejando el estado del trabajo realizado y lo que se debe desarrollar” (Álvarez et al., 2012, p. 41).
-
Revisión del Sprint: “Al finalizar el sprint se analiza el estado del trabajo en conjunto con el Product Owner y otra persona que pueda aportar información valiosa. Esta revisión del trabajo debe ser de manera informal y no debe emplearse demasiado tiempo en prepararse” (Álvarez et al., 2012, p. 41).
-
Retrospectiva de Sprint: “Es una oportunidad para el Equipo Scrum de inspeccionarse a sí mismo y de crear un plan de mejoras que sean abordadas durante el siguiente Sprint” (Scrum Alliance Organization, 2017, p. 13).
Figura 6. Etapas del modelo Scrum Adaptado de “Ingeniería del software: Un enfoque práctico” por R. Pressman, 2010, México: McGraw-Hill.
3.2.2. Base de Datos. Una Base de Datos es una colección de información perteneciente a un mismo contexto o problema, que está almacenado de forma organizada en ficheros. Los datos se almacenan a través de un esquema, el cual contiene todo lo necesario para organizar la información mediante tablas, registros y campos. También otros objetos necesarios para el tratamiento de los datos
18 (procedimientos, vistas, índices, etc.). Al esquema se le suele llamar meta-información es decir, información sobre la información o metadatos (López, Castellano & Ospino, 2014, pp. 7-9).
3.2.2.1. Arquitectura de una Base de Datos. La arquitectura más estandarizada es la que cumple con los requerimientos de las normativas ANSI/X3/SPARC surgida en 1997, que establece que la arquitectura de una base de datos debe poseer de tres niveles de abstracción. Nivel Físico: Es el nivel más bajo de abstracción, en el cual se describe como se almacena físicamente los datos: los métodos de direccionamientos, los índices, el tamaño de los boques de los datos, etc. (Piñeiro, 2013, p. 8). Nivel Lógico o Conceptual: Se describe el nivel lógico la totalidad de los datos que van hacer almacenados en la base de datos mediante la especificación de las entidades, atributos o propiedades de las entidades, relaciones entre las entidades, etc. Este nivel al igual que la anterior son utilizados solo por el administrador de la base de datos (Piñeiro, 2013, p. 8). Nivel Externo o de Vistas: Proporciona al usuario final la visualización del sistema terminado, este nivel permite dar a cada usuario una visión de la información que realmente precisa, debido a que un usuario no tiene que trabajar con toda la información almacenada en la base de datos (Piñeiro, 2013, p. 9). 3.2.2.2. Modelos de Base de Datos. Un modelo de datos o esquema es un conjunto de símbolos, conceptos y reglas, que nos permite representar los datos que se van almacenar en una base de datos, es decir la plasmación de la parte de la realidad para la cual deseamos crear la base de datos mediante un modelo determinado de datos (Piñeiro, 2013, p. 6). De acuerdo con Piñeiro (2013), existen varios tipos de modelos de base de datos aplicables en distintos momentos a lo largo del proceso de creación de una base de datos modelos conceptuales, modelos lógicos y modelos físicos, pero para el caso exclusivo del sistema de control se usará el modelo Entidad Relación (p. 6). Modelo Entidad-Relación (E-R) Se basa en la identificación de objetos llamados entidades, que son representaciones de
19
objetos reales en el mini mundo. Las entidades se describen mediante sus atributos y se conecta mediante relaciones. Los atributos describen las entidades y la distinguen unas de otras (Ricardo, 2009, p. 70). Según Piñeiro (2013), este modelo se distribuye por entidades, relaciones y atributos que a continuación se los detalla:
Entidad: Se define como cualquier objeto, en el cual se almacena información en la base de datos. Las entidades se representan con un rectángulo, en la parte interna del rectángulo va el nombre de la identidad (Piñeiro, 2013, p. 11).
Relación: Es el enlace que existe entre las entidades, se representa por medio de un rombo, al igual que la entidad la parte inferior se coloca el nombre de la relación, además la relación va acompañada de la cardinalidad (Piñeiro, 2013, p. 11).
Atributo: Es una o varias características que tiene una entidad o relación. Se representa por medio de un óvalo, al igual que la entidad y la relación (Piñeiro, 2013, p. 11).
Figura 7. Esquema E-R para una biblioteca Adaptado de “Base de datos relacionales y modelado de datos” por J. Piñeiro, 2013, Madrid: Paraninfo.
3.2.2.3. Sistemas Gestores de Bases de Datos. Según Valderrey (2013), define un Sistema Gestor de Base de Datos, como un tipo de software muy específico, dedicado a servir de interfaz entre la base de datos, el usuario y las
20
aplicaciones que la utilizan. En concreto una colección de datos relacionados entre sí, estructurados, organizados en un conjunto de programas que acceden y gestionan esos datos. 3.2.2.3.1 MaríaDB. Sistema Gestor de Base de Datos derivado de MySQL, software desarrollado y distribuido libremente; que permiten modificar, almacenar, y extraer información de una base de datos, además posee una alta compatibilidad con MySQL donde posee grandes mejoras y muchas herramientas que lo hacen muy versátil al utilizarlo. (MaríaDB Foundation, 2017). 3.2.2.3.2 HeidiSQL. HeidiSQL es una herramienta útil y confiable diseñada para desarrolladores web que utilizan el popular servidor MySQL, las bases de datos Microsoft SQL y PostgreSQL, que permite navegar y editar datos, crear y editar tablas, vistas, procedimientos, disparadores y eventos programados. (HeidiSQL, 2017) 3.2.3. Arquitectura de aplicaciones web. 3.2.3.1. Cliente/Servidor (C/S). El modelo Cliente/Servidor según define como una tecnología que proporciona acceso transparente a aplicaciones y recursos a los usuarios en múltiples plataformas, donde el acceso se produce en un entorno distribuido en el que estaciones de trabajo con capacidades de proceso notable, que solicitan servicios a otros computadores más potentes denominados servidores La red cliente-servidor es aquella red de comunicaciones en la que todos los clientes están conectados a un servidor, en el que se centralizan los diversos recursos y aplicaciones con los que se cuentan y que se ponen a disposición de los clientes cada vez que estos son solicitados. (Riballo, 2008, p. 268).
Según Riballo (2008), un servidor se clasifica según su función del servicio que ofrece como se menciona a continuación:
Servidores web: “Son aquellos que gestionan peticiones a través del protocolo HTTP, se denominan también servidores HTTP” (Riballo, 2008, p. 269).
Servidores de base de datos: “Estos servidores almacenan base de datos, tablas, índices, etc. Oracle o Sybase o SQL Server son servidores que gestionan las peticiones en SQL efectuadas por clientes remotos” (Riballo, 2008, p. 269).
Servidores de archivos: “Sirven las peticiones de archivos y de informaciones, como
21
por ejemplo NFS, NIS” (Riballo, 2008, p. 269).
Servidores de groupware: “Se utilizan en el seguimiento de operaciones en la red, Exchange o Lotus Note permiten gestionar mensajes de e-mail o grupos de usuarios” (Riballo, 2008, p. 269).
3.2.4. Herramientas de Desarrollo. 3.2.4.1. Front-End. 3.2.4.1.1 HTML. HTML por sus siglas Hyper Text Markup Language, es un lenguaje de programación de marcado de hipertexto, que nos permite presentar el texto y la información de forma estructurada y, a su vez codificada mediante marcas o etiquetas. La estructura de un documento HTML está compuesta básicamente por la cabecera representada por la etiqueta <head>, la parte encargada de recoger información referente al documento HTML, y el cuerpo representado por la etiqueta <body>, la cual engloba todo el contenido que se muestra en una página web. Es decir, HTML es el elemento más básico de una página web y se usa para crear y representar visualmente una página web, determinando el contenido pero no su funcionalidad (Rubiales, 2013, p.24-50).
3.2.4.1.2 CSS. Lenguaje utilizado para definir el estilo, formato o presentación de documentos separando así los datos o contenido de la presentación, obteniendo en su versión más simple un archivo HTML con el contenido de nuestro documento y otro archivo CSS con la presentación del mismo. (Gómez, Villar & Alcayde, 2011, p.41) En relación con el autor Rubiales (2013), usar un CSS en un documento HTML, permite aplicar un diseño o estilo a un elemento o grupo de elementos sin necesidad de utilizar los atributos propios de cada etiqueta (p. 160). 3.2.4.1.3 JavaScript. “Es un lenguaje de programación orientado a objetos, diseñado para el desarrollo de aplicaciones cliente-servidor a través de internet” (Orós, 2013, p. 73). De acuerdo con Lassoff (2013), es una tecnología de lado del cliente que se utiliza para añadir interactividad en las páginas web. Se utiliza el código JavaScript para validar los datos que se introduce el usuario, crear efectos animados, cambiar estilos CSS e, incluso, realizar cálculos complejos (p. 12).
22
3.2.4.2. Back End. 3.2.4.2.1 PHP. PHP es el acrónimo de Php Hypertext Preprocessor, es un lenguaje de programación opensource utilizado para desarrollar aplicaciones enfocadas a la web. PHP es un lenguaje flexible del lado del servidor dado que provee un entorno capaz de manejar gran cantidad de transacciones y procesamiento de documentos en línea de forma rápida (Ali & Agarwal, 2016, p. 593). Otra característica importante es su rendimiento, debido a que sus escritos en PHP se ejecutan, más rápido que los escritos en otros lenguajes de creación de scripts; su sintaxis es clara y consistente, PHP es favorecido como una herramienta rápida para la creación de prototipos que permitan el desarrollo de aplicaciones basadas en web (Vaswani, 2010, p.5-6).
3.2.4.3. Diseño Web. El diseño web es la forma de aplicar estructuras y técnicas que hacen posible que las páginas de una aplicación web se vinculen y muestren información. En internet se ofrecen plantillas pre-fabricadas para el diseño, pero en muchos casos, los usuarios prefieren aplicar sus propios estilos, ya sea realizando sus propios estilos o pagando por trabajo a la medida, es decir si está bien diseñado dará una sensación más realista al usuario final (Mavlanova, Benbunan, Koufaris & Lang, 2015, p. 22). 3.2.4.3.1 Responsive Web Design. Es una metodología de combinación de diseños, plantillas y una exigente forma de uso de los script CSS, con el fin que los usuarios interactúen con un sitio en que se haya elaborado con Responsive Web Design y se adapte a los diferentes tipos de pantalla que pueden existir. El uso de esta metodología permite que el sitio web se adapte al dispositivo sin perder la confidencialidad de la información, y los componentes se moverán en el sitio para la interacción con los usuarios (Manso, Cañizares y Febles, 2016, pp. 103-104).
3.2.4.3.2 Frameworks de diseño. 3.2.4.3.2.1 Materialize Es un framework de diseño web basado en el modelo Material Design de Google. Materialize ofrece componentes HTML, CSS, JS que brindan un diseño moderno y adaptativo al front-end de los sitios web. Facilita una amplia documentación y ejemplos de código para quienes estén iniciándose con el framework. Con la aplicación de materialize se consigue desarrollar aplicaciones universales y mejorar la experiencia de usuario (Materialize, 2017).
3.2.4.3.2.2 Bootstrap Para el diseño y construcción de aplicaciones web. Contiene una serie de herramientas como: HTML, CSS y JavaScript que facilita el desarrollo adaptativo y móvil. Posee un amplio soporte
23 y documentación por parte del equipo desarrollador, además agiliza el diseño front-end de la aplicación, está diseñado para soportar varios dispositivos, reduce la carga de trabajo y posee características, funcionalidades y componentes personalizables (Bootstrap, 2017).
3.2.4.3.2.3 Angular JS Angular JS Material es tanto un marco de componentes de interfaz de usuario como una implementación de referencia de la especificación de diseño de materiales de Google. Proporciona un conjunto de componentes UI reutilizables, bien probados y accesibles basados en el diseño de materiales (Material Angular, 2017).
3.2.5. Gestión Administrativa. 3.2.5.1. Conceptos Básicos. En esta sociedad, gestionar una institución representa una tarea muy compleja, y en toda gestión organizacional se les da relevancia a la gestión de los recursos humanos. “La Administración de la empresa es la encargada de llevar a cabo la coordinación de los diferentes factores, mientras que la Dirección establece los objetivos y se encarga de que las decisiones se ejecuten” (Antón y Garijo, 2010, p. 9). Chiavenato (como se citó en Cejas y Chirinos, 2015), afirma que la Administración de Recursos Humanos (ARH) consiste en una serie de actividades que requieren planear, organizar, desarrollar, coordinar y controlar, técnicas capaces de promover el desempeño eficiente del personal por ende les permitirán a las personas que trabajan en la organización, poder alcanzar los objetivos con respecto al trabajo que desempeñan p (20). La antigua ARH cede su lugar a un nuevo enfoque: Chiavenato (2009), refiere que las personas dejan de ser simples recursos humanos organizacionales, para dar paso a la gestión del talento Humano (GTH), por el cual son consideradas como seres con inteligencia, personalidad, conocimientos, habilidades, competencias, aspiraciones y percepciones, por ende son los nuevos asociados de la organización (p 39). Talento Humano: Administrar el talento humano se convierte cada día en algo indispensable para el éxito de las organizaciones. Chiavenato (2009), afirma que tener personas no significa necesariamente tener talentos, por lo tanto un talento es siempre un tipo especial de persona y no siempre toda persona es un talento. Para ser talento, la persona debe poseer aptitudes competitivas que lo diferencia de los demás.
24
Gestión del Talento Humano: De acuerdo con Chiavenato (2009), en la época del conocimiento surgen los equipos de gestión del talento humano, que sustituyen a los departamentos de recursos humanos, donde la ARH se adapta rápidamente a los nuevos tiempos para transformarse en gestión del talento humano, por ello deja de ser un área cerrada y centralizadora para convertirse en un área más abierta, amigable y descentralizadora. 3.2.5.2. Control del Talento Humano. Los servidores públicos están regidos por el Reglamento General a la Ley Orgánica de Servicio Público, en el cual mencionaremos algunos artículos correspondientes a las vacaciones, licencias y permisos. 3.2.5.2.1 De las Vacaciones. “Art. 23.- Derechos de las servidoras y los servidores públicos.- Son derechos irrenunciables de las servidoras y servidores públicos: Gozar de vacaciones, licencias, comisiones y permisos de acuerdo con lo prescrito en esta Ley” (Registro Oficial Segundo Suplemento N° 294, 2010, p. 10). Art. 27.- De la programación. - Para la concesión de las vacaciones se considerará básicamente la fecha de ingreso, y el cronograma del plan de vacaciones establecido por la Unidad de Administración de Talento Humano (UATH).Una vez establecida la programación de las vacaciones, se remitirá a los jefes inmediatos de cada unidad, para que conjuntamente con las o los servidores se establezcan los períodos y las fechas en que se concederán las mismas. (Registro Oficial Suplemento N° 418, 2011, p. 21) Art. 28.- Concesión de vacaciones.- Las vacaciones se concederán en la fecha prevista en el calendario, y únicamente el jefe inmediato, la máxima autoridad, o su delegado, por razones de servicio debidamente fundamentadas y de común acuerdo con la o el servidor, podrá suspenderlas o diferirlas dentro del período correspondiente a los doce meses siguientes en que la o el servidor tienen derecho a vacaciones, debiendo dejarse constancia en documento escrito. (Registro Oficial Suplemento N° 418, 2011, pág. 21 )
3.2.5.2.2 De las Licencias. Art. 27.- Licencias con remuneración.- Toda servidora o servidor público tendrá derecho a gozar de licencia con remuneración en los siguientes casos: a) Por enfermedad que determine imposibilidad física o psicológica, debidamente comprobada, para la realización de sus labores, hasta por tres meses; e, igual período podrá aplicarse para su rehabilitación. b) Por enfermedad catastrófica o accidente grave debidamente certificado, hasta por seis meses; así como el uso de dos horas diarias para su rehabilitación en caso de prescripción médica.
25 c) Por maternidad, toda servidora pública tiene derecho a una licencia con remuneración de doce (12) semanas por el nacimiento de su hija o hijo; en caso de nacimiento múltiple el plazo se extenderá por diez días adicionales. La ausencia se justificará mediante la presentación del certificado médico otorgado por un facultativo del Instituto Ecuatoriano de Seguridad Social; y, a falta de éste, por otro profesional de los centros de salud pública. En dicho certificado se hará constar la fecha probable del parto o en la que tal hecho se produjo. d)
Por paternidad, el servidor público tiene derecho a licencia con remuneración por el plazo de diez días contados desde el nacimiento de su hija o hijo cuando el parto es normal; en los casos de nacimiento múltiple o por cesárea se ampliará por cinco días más.
e) En los casos de nacimientos prematuros o en condiciones de cuidado especial, se prolongará la licencia por paternidad con remuneración por ocho días más; y, cuando hayan nacido con una enfermedad degenerativa, terminal o irreversible o con un grado de discapacidad severa, el padre podrá tener licencia con remuneración por veinte y cinco días, hecho que se justificará con la presentación de un certificado médico, otorgado por un facultativo del Instituto Ecuatoriano de Seguridad Social y a falta de éste, por otro profesional médico debidamente avalado por los centros de salud pública. f) En caso de fallecimiento de la madre, durante el parto o mientras goza de la licencia por maternidad, el padre podrá hacer uso de la totalidad, o en su caso de la parte que reste del período de licencia que le hubiere correspondido a la madre. g) La madre y el padre adoptivos tendrán derecho a licencia con remuneración por quince días, los mismos que correrán a partir de la fecha en que la hija o hijo le fuere legalmente entregado. h) La servidora o servidor público tendrá derecho a veinte y cinco días de licencia con remuneración para atender los casos de hija(s) o hijo(s) hospitalizados o con patologías degenerativas, licencia que podrá ser tomada en forma conjunta, continua o alternada. La ausencia al trabajo se justificará mediante la presentación de certificado médico otorgado por el especialista tratante y el correspondiente certificado de hospitalización. i)
“Por matrimonio, tres días en total” (Registro Oficial Segundo Suplemento N° 294, 2010, p. 11-12).
3.2.5.2.3 De los Permisos. Art. 58.- Del permiso.- Permiso es la autorización que otorga la autoridad nominadora o su delegado o jefe inmediato a la o el servidor, para ausentarse legalmente del lugar habitual de trabajo, de conformidad con lo establecido en los artículos 33 y 34 de la LOSEP. (Registro Oficial Suplemento N° 418, 2011, p. 26) Art. 64.- Permiso para matriculación de hijos o hijas.- El jefe inmediato concederá a la o el servidor permisos para matriculación de sus hijos e hijas en planteles de educación básica y bachillerato, de hasta dos horas en un día por cada hija o hijo, mismos que serán solicitados con un día de anticipación al hecho. (Registro Oficial Suplemento N° 418, 2011, p. 26)
3.3. Comparativas de metodologías de desarrollo de software En ingeniería de software la metodología de desarrollo de software es un marco de trabajo usado para estructurar, planificar y controlar cada uno de los procesos o fases de desarrollo en sistemas informáticos. Es por ello que se recomienda la decisión de seleccionar
26
una metodología de desarrollo de software apropiada con sus respectivas justificaciones. Una metodología de desarrollo de software, utiliza un sin número de herramientas, técnicas, métodos y modelos para el proceso, por ende es importante su aplicación para el desarrollo del sistema web debido a que ayuda a los disertantes a seguir una serie de pasos ordenados, para así obtener el resultado esperado, en nuestro caso los pasos que se deben seguir para desarrollar el software. La decisión de qué metodología se debe utilizar, se da en base a diferentes aspectos que deben tomar en cuenta los desarrolladores como son: número de desarrolladores envueltos en el proceso, estructura del software, extensión y alcance del sistema, tiempo de entrega y la comunicación entre el cliente y desarrollador entre otros aspectos. Realizada la investigación para la comparación de metodologías de desarrollo de software, según el artículo científico denominado Metodologías ágiles para el desarrollo de software: eXtreme Programming (XP), hemos establecido los siguientes criterios de calificación que se detallan a continuación:
Se adapta a los requerimientos y funcionalidades: 2 representando el 100%.
Se adapta al menos en ciertos requerimientos y funcionalidades: 1 representa el 50%.
No cumple con las expectativas: 0 representando al 0%. Los aspectos que se tomaron en cuenta de las metodologías son:
Flexible a cambios en la etapa de desarrollo.- Facilita la posibilidad de introducir modificaciones y cambios en la etapa de construcción del software.
El cliente se encuentra inmerso en el desarrollo del software.- Proporciona una visión detallada de las necesidades y requerimientos del producto, para la satisfacción del mismo.
Menor cantidad de integrantes en el equipo de desarrollo.- Permite trabajar con un equipo de desarrollo de 3 a 9 personas, se recomienda 6 desarrolladores.
Reducir la cantidad de artefactos posibles.- Disminuir la utilización de recursos, para simplificar la documentación del software.
27
Contrato flexible dispuesto a cambios.- Facilita introducir nuevos requerimientos solicitados por el cliente para cumplir con sus expectativas.
Enfoque en el código más no en el desarrollo.- De preferencia con un enfoque heurístico para la práctica de producción de código.
Genera procesos menos controlados.- Preferiblemente el proceso a realizarse debe ser menos controlado y accesible a cambios, es decir, con menor cantidad de políticas y normas.
Tabla 1. Comparativas entre Métodos Ágiles/Tradicionales Variables a tomar en Métodos cuenta para metodologías Ágiles Valoración ágiles/tradicional Flexible a cambios en la Aptas para presentar cambios 2 etapa de desarrollo. que se podrían dar en el transcurso del desarrollo. El cliente se encuentra El cliente se encuentra 2 inmerso en el desarrollo del sumergido dentro del equipo software. de desarrollo. Menor cantidad de integrantes en el equipo de desarrollo. Reducir la cantidad de artefactos posibles. Genera menor cantidad de roles. Contrato flexible dispuesto a cambios. Enfoque en el código más no en el desarrollo. Genera procesos controlados.
TOTAL Porcentaje:
menos
Métodos Tradicionales
Valoración
Cierta resistencia a los cambios.
0
0
Grupos pequeños, trabajando en el mismo sitio.
2
Pocos artefactos
2
El cliente establece comunicación con el equipo de desarrollo por medio de reuniones. Grupos grandes y posiblemente distribuidos. Más artefactos
Pocos roles
2
Más roles
0
No se presenta un contrato condicionante o puede ser flexible a cambios. Procedentes de prácticas heurísticas para la elaboración de código. Procesos menos controlados, con pocos principios.
2
Se establece un contrato fijo de los requerimientos y funcionalidades. Procedentes de normas y estándares para el entorno de desarrollo. El proceso es mucho más controlado, con numerosas políticas y normas. Métodos Tradicionales
1
Métodos Ágiles
2
2
16/16 100%
0
0
2
1
4/16 25%
Nota: Adaptado de Letelier, P., & Penadés, C. (07 de Enero de 2015). Metodologías ágiles para el desarrollo de software: eXtrema Programming (XP). Recuperado de https://www.researchgate.net/publication/28109707_Metodologias_agiles_para_el_desarrollo_de_software_eXtreme_Progra mming_XP
De acuerdo a los datos obtenidos en la Tabla 1, se verificó que la metodología de desarrollo de software que mejor se adapta al presente trabajo de titulación es una Metodología Ágil, cumpliendo un 100% de los parámetros establecidos frente al 25% de la Metodología Tradicional, dando así un resultado al uso de la Metodología Ágil.
28
3.3.1. Comparativa entre Modelos Ágiles. Establecida la Metodología de desarrollo Ágil, se realiza una comparativa para determinar el modelo ágil que mejor se acopla a las funcionalidades requeridas, destacando las características y aspectos representativos en: Crystal, Scrum y XP. Según el artículo científico denominado Metodologías ágiles para el desarrollo de software: eXtreme Programming (XP), hemos establecido los siguientes parámetros a analizar de los modelos ágiles:
Se adapta a los requerimientos y funcionalidades del presente trabajo de titulación: 2 representando el 100%.
Se adapta al menos en ciertos requerimientos y funcionalidades del presente trabajo de titulación: 1 representando el 50%.
No cumple con las expectativas para el desarrollo del presente trabajo de titulación: 0 representando al 0%. Los parámetros analizados son los siguientes:
Sistema como algo cambiante.- Facilita incorporar cambios en el desarrollo del software.
Colaboración.- Comunicación entre cliente y desarrollador.
Resultados.- Se genera en base a incrementos presentados al dueño del producto, en el cual se verifica la aceptación acorde a su necesidad.
Simplicidad.- Facilidad en la generación de código.
Adaptabilidad.- Permite realizar cambios que se pudieran presentar dentro del proyecto.
Excelencia técnica.- Desarrollar el producto bajo estándares y buenas prácticas de programación.
Prácticas de colaboración.- Involucra al equipo de desarrollo y a cliente.
29 Tabla 2. Comparativa entre modelo ágiles Parámetros para el desarrollo del producto Sistema como algo cambiante Colaboración Resultados Simplicidad Adaptabilidad Excelencia técnica Prácticas de colaboración Total Porcentaje
Crystal 1 2 2 2 1 1 2 11/14 78%
Scrum 2 2 2 2 2 1 2 13/14 93%
XP 2 2 2 1 1 1 1 10/14 71%
Nota: Adaptado de Letelier, P., & Penadés, C. (07 de Enero de 2015). Metodologías ágiles para el desarrollo de software: eXtrema Programming (XP). Recuperado de https://www.researchgate.net/publication/28109707_Metodologias_agiles_para_el_desarrollo_de_software_eXtreme_Progra mming_XP
De acuerdo al resultado obtenido de la Tabla 2, se concluye que el modelo a utilizar en el trabajo de titulación es Scrum con 93% de aceptación frente a 78% de Crystal y 71% de XP.
3.4. Comparativas de los lenguajes de programación Los lenguajes de programación permiten establecer el conjunto de reglas sintácticas o semánticas que se ejecutan dentro del ordenador, con el objetivo de programar código que permita dar respuesta a un problema. En la actualidad existe una amplia variedad al momento de seleccionar el lenguaje de programación que mejor se acople al desarrollo del software, es por esta razón, que se realiza una comparativa para seleccionar el lenguaje de programación que se adapta a los requerimientos y funcionalidades para el desarrollo del producto. De acuerdo al artículo científico que se tomó en cuenta para realizar la comparativa de los lenguajes de programación, hemos establecido los criterios de calificación que se detallan a continuación:
Adaptable a los requerimientos y funcionalidades: 2 representando el 100%.
Posee cierta adaptabilidad en los requerimientos y funcionalidades: 1 representa el 50%.
No cumple con los requerimientos y funcionalidades: 0 representando al 0%. Las características a comparar de los lenguajes de programación son:
Seguridad.- Facilidad para identificar y eliminar vulnerabilidades proporciona paquetes que implementan o dan acceso a herramientas de seguridad de alto y bajo nivel como
30
algoritmos de encriptación, firmas electrónicas, gestión de certificados, etc.
Desarrollo web.- Adecuado para la web con facilidad de ejecutar código del lado del servidor y crear contenido dinámico de la página web.
Servicios web.- Genera extensiones para la web funcionalidades de los servicios.
Abstracción basada en objetos.- Posee soporte orientado a objetos.
Programación Funcional.- Particularmente adecuados para el paradigma funcional.
Tabla 3: Comparativa entre Lenguajes de Programación Características Java Seguridad Robustez y buena memoria
Valor 2
PHP Como PHP es fácil y popular, hay más errores escrito con ella
1
PHP se enfoca principalmente en el lado del servidor
Valor 1
Desarrollo web
Fuerte presencia entre el cliente lateral y lado del servidor.
Servicios Web
Composición del proceso de servicio web Haskell el uso en la generación XML.
Abstracción basada en objetos
Los objetos en Java ofrecen varios beneficios tales como: modularidad, reutilización, etc.
2
PHP 5 introduce clases abstractas y métodos.
1
Programació n Funcional
Los desarrolladores intentaron incrustar algunas bibliotecas desarrollado en Java y usando patrones FP.
1
Instalaciones de PHP son algo limitadas en la versión actual para programación funcional.
1
2
PHP tiene varias extensiones para Web funcionalidades de los servicios.
2
2
Ruby Instalaciones para validación, autenticación, autorización, protección de datos. Rails es un framework Ruby de código abierto para desarrollar aplicaciones web respaldadas por bases de datos Los servicios web en Ruby son implementados usando la arquitectura rest.
Valor
Programación totalmente orientada a objetos idioma, y por lo tanto, proporciona un amplia soporte. Los bloques, procs y lambdas de Ruby se prestan muy bien a una programación funcional estilo.
2
2
1
1
2
Total
8/10
7/10
8/10
Porcentaje
80%
70%
80%
Nota: Adaptado de Sultán, S., Guzmán, F., Rafik, A., Tevoedjre, A. & Pietrzynski, P. (23 de Agosto de 2010). Comparing Selected Criteria of Programming Languages Java, PHP, C++, Perl, Haskell, AspectJ, Ruby, COBOL, Bash Scripts and Scheme Revision 1.0. Recuperado de https://arxiv.org/abs/1008.3434
31
De acuerdo al resultado obtenido en la Tabla 3, se concluye que el lenguajes de programación de software libre que presenta buenos parámetros y que se acoplaría de mejor manera a los requerimientos y funcionalidades requeridas para el desarrollo del presente proyecto es Java con un 80% de aceptación, en relación a un 70% que presenta PHP y Ruby.
3.5. Comparativas de los sistemas gestores de base de datos Los sistemas gestores de base de datos constituyen un conjunto de herramientas que facilitan la extracción, modificación y almacenamiento de la información que se maneja dentro de la empresa. En la actualidad las bases de datos poseen modelos que permiten acoplar las funcionalidades requeridas del software al sistema gestor de base de datos que se desea incorporar. A continuación se especifican los parámetros de calificación que se tomaron en cuenta para determinar el sistema gestor de base de datos que se acopla a las características requeridas:
Facilidad al momento de adaptar los requerimientos y funcionalidades: 2 representando el 100%.
Se adapta en ciertos requerimientos y funcionalidades 1 representando el 50%.
No posee ningún requerimiento o funcionalidad que se acople al presente proyecto de titulación: 0 representando al 0%. Las características a comparar de los sistemas gestores de base de datos son:
Tipo de software.- Emplea código abierto con licencia open source.
Sistema Operativo.- Facilidad de acoplamiento en diferentes entornos.
Licencia.- Facilidad para modificar la base de datos de forma libre.
Modelo de base de Datos Primaria.- Facilidad para acceder a la información en un conjunto de tablas formalmente descritas.
Seguridad.- Consiste en proteger la información, administrando los usuarios mediante privilegios, con el fin de establecer quién pueda acceder a dichos datos.
32 Tabla 4: Comparativa entre sistemas gestores de base de datos Características
María DB
Valor
PostgreSQL Abierto
Valor
Tipo de Software
Código Abierto (Open Source)
2
Código Source)
(Open
2
Sistema Operativo
Multiplataforma
2
Multiplataforma
2
Licencia
Licencia GPL
2
PostgreSQL License
2
Modelo de base de datos primaria
Relacional
2
Relacional
2
Seguridad
Mediante los parches de seguridad.
1
Para el acceso a objetos de base de datos por los usuarios utiliza un modelo de seguridad
2
Total
9/10
10/10
Porcentaje
80%
100%
Nota: Adaptado de PosgreSQL Global Developement Group. (2018). About PostgeSQL. Recuperado de https://todopostgresql.com/ventajas-y-desventajas-de-postgresql/ MariaDBFoundation. (2018). AboutMariaDB. Recuperado de https://mariadb.org/
De acuerdo al resultado obtenido de la Tabla 4, se concluye que el sistema gestor de base de datos de mejores características en la actualidad es PostgreSQL, por lo que es un sistema de base de datos relacional y de código abierto; destacándose por la estabilidad, confianza, seguridad y multiplataforma donde podemos instalarlo independientemente de la plataforma y la arquitectura que se use.
33
4. METODOLOGÍA DE LA INVESTIGACIÓN 4.1. Diseño / Tipo de investigación 4.1.1. Enfoque de la investigación. Para el desarrollo del trabajo de investigación, se optó por un enfoque mixto, debido a que se recolectan y analizan datos tanto cuantitativos como cualitativos, donde su interpretación es producto de toda la información en su conjunto, por ende el proceso de investigación y las estrategias utilizadas se adaptan a las necesidades, contexto, circunstancias, recursos, pero sobre todo al planteamiento del problema expuesto anteriormente. De acuerdo con Hernández,
Fernández & Baptista (2014), un enfoque mixto agrupa
los procesos
metódicos y experimentales que permiten recolectar y analizar datos cualitativos y cuantitativos (p. 534). Motivo por el cual se utilizó las encuestas para la recolección de la información con respecto al método cuantitativo y el cualitativo para obtener una idea general del funcionamiento de la institución mediante la aplicación de una entrevista a la Directora Provincial de la CCE-NSDT. 4.1.2. Diseño de la investigación. El diseño de investigación será de tipo no experimental, debido a que se realizará un estudio sin la manipulación deliberada de las variables, es decir se observaron los procesos de forma natural con el fin de investigarlos, se usará el tipo transversal donde se recolectan datos en un solo momento, en un tiempo único. 4.1.3. Tipo de investigación. En el presente trabajo de titulación se utilizará la investigación Descriptiva y Aplicada. 4.1.3.1. Investigación Descriptiva. La investigación descriptiva busca especificar características importantes de cualquier fenómeno que se analice, es decir pretende describir tendencias de un grupo o población (Hernández, et al., 2014, p. 92). De este modo permite realizar el análisis para interpretar las características del problema de investigación y así formular los cuestionarios para la encuesta y la guía de entrevista para la entrevista, con el fin de buscar las funcionalidades para el desarrollo del sistema web de la CCE-NSDT.
34
4.1.3.2. Investigación Aplicada. La investigación aplicada permitirá resolver problemas con un carácter utilitario y un propósito inmediato, es decir su propósito o finalidad es mejorar un proceso, un producto o solucionar problemas reales.
4.2. Población / Universo “Una población es el conjunto de todos los casos que concuerdan con una serie de especificaciones” (Hernández, et al., 2014, p. 174). En la presente investigación la población son todas las personas que integran la Casa de la Cultura Ecuatoriana Benjamín Carrión Núcleo Santo Domingo de los Tsáchilas.
4.3. Muestra “La muestra es un subgrupo de la población de interés sobre el cual se recolectarán datos, y que tiene que definirse y delimitarse de antemano con precisión, además que debe ser representativo de la población” (Hernández, et al., 2014, p. 174). De acuerdo con Posso (2009), no se considera indispensable establecer la muestra si la población es menor a 30-40 individuos, por ende se emplean los instrumentos a toda la población. Debido a la pequeña población con la que cuenta la institución CCE-NSDT, cinco servidores públicos, la misma se convierte directamente en la muestra.
4.4. Técnicas e Instrumentos de recogida de datos 4.4.1. La Encuesta. Es el conjunto de preguntas que se preparan con el propósito de obtener información fundamental para la investigación, en relación al presente trabajo de investigación, se aplicó la encuesta a los servidores públicos de la CCE-NSDT, el mismo que permitió recolectar información clave para esclarecer las preguntas planteadas en el estudio actual. 4.4.2. La Entrevista. Consiste en una conversación entre dos personas: el entrevistado y el entrevistador. Con la finalidad de recabar información importante dentro de la investigación, la entrevista se aplicó a la Lcda. Graciela Torres Directoral Provincial de la CCE-NSDT y al Mg. Eiron Álava
35
encargado del departamento de Talento Humano, logrando así recabar información sobre los procesos que se realizan dentro de la institución.
4.5. Técnicas de Análisis de Datos La técnica de recogida de datos consiste en estudiar e interpretar los resultados obtenidos de la recolección de datos de una investigación, con la finalidad de indicar si se cumplieron los objetivos de la investigación. Dentro del análisis de datos se utilizó la técnica de tabulación de datos para la información recabada de las encuestas y de forma gráfica la representación estadística para su respectivo análisis.
36
5. RESULTADOS 5.1. Análisis Situacional de la población El siguiente apartado analizó la información recabada de la entrevista y encuesta dirigida a los servidores públicos de la CCE-NSDT, con el objetivo de entender los procesos que se realizan dentro del departamento de Talento Humano y obtener una mayor perspectiva referente a los requerimientos funcionales y no funcionales del sistema. 5.1.1. Entrevista. La entrevista realizada al Mg. Eiron Álava encargado de Secretaria General y Talento Humano en conjunto con la Lcda. Graciela Torres Directora Provincial de la CCE-NSDT, permitió obtener una visión detallada de los diferentes procesos a mecanizar, mismos que se obtuvieron en base a las preguntas realizadas a continuación:
¿Cree Ud. que es importante la implementación de un software? ¿Por qué? o Se aprecia una gran expectativa, debido a que los usuarios podrán optimizar tiempo y acelerar los procesos, facilitando la asignación de vacaciones, licencias y permisos que solicitan los servidores públicos de la institución.
¿Con qué tipo de infraestructura cuenta la institución (Computadoras, Switch, red de datos, etc.)? o La CCE-NSDT cuenta con un equipo de computación de cinco computadoras distribuidas en los diferentes departamentos, un servicio de red con un proveedor de CNT y dos switchs, cabe recalcar que no disponen de un servidor web.
¿Cuáles son las expectativas con respecto al uso del software? o Se denota un gran interés de parte de los usuarios, de manera que permitirá descongestionar el trabajo, es decir un software capaz de gestionar las solicitudes que se presentan y obtener una respuesta rápida y oportuna.
37
¿De qué manera se gestiona el registro de las solicitudes? o Los servidores públicos deben realizar una solicitud exponiendo el motivo, fecha de inicio y fin del permiso, dichos permisos se registran de forma manual mediante el manejo de: hojas de registro, archivos de Excel, libros diarios, etc.
¿Qué proceso se realiza para el manejo de las solicitudes? o El proceso inicia con una solicitud por parte del funcionario dirigida al departamento de Talento Humano, en donde se analiza el motivo expuesto del funcionario y el tiempo solicitado, para poder aprobar o rechazar dicha solicitud.
¿Qué inconvenientes ocurren o pueden ocurrir para realizar dicho proceso? o Se presentan diversos inconvenientes para la asignación de un permiso, tales como el retraso en la asignación de vacaciones, licencias y permisos; dando lugar a la incertidumbre entre los servidores públicos, generando así un lapso de tiempo excesivo desde la fecha de entrega hasta aceptar o rechazar dicho permiso.
¿Con qué funcionalidades deberá contar el software? o Se deberá contar con el módulo de vacaciones, licencias y permisos, dentro del cual se detallan aspectos como datos personales del funcionario, selección de una fecha inicio y fin del permiso, visualización de una bandeja de entrada acerca de los permisos solicitados, denegados y pendientes. Así mismo visualización e impresión del permiso solicitado.
Para la implementación del sistema se necesitará emplear recursos tecnológicos, ¿Estaría usted de acuerdo en apoyar con dichos recursos? o Se puede notar el amplio interés que muestra la CCE-NSDT con respecto al desarrollo del software, para la gestión administrativa y control de vacaciones, licencias y permisos, ya que permitirá a la institución tomar decisiones y resolver problemas cotidianos mediante la tecnología; por ende se cuenta con todo el apoyo por parte de los directivos para el desarrollo del software.
38
¿Qué personas son las encargadas de llevar los procesos acerca de los permisos en la CCE-NSDT? o Dentro de la institución la generación de permisos es manejada directamente por el departamento de gestión de Secretaría General y Talento Humano por medio del Mg. Eiron Álava.
5.1.2. Encuesta realizada a los servidores públicos de la CCE-NSDT. En la visita de campo realizada a la institución de la CCE-NSDT, se dirigió la encuesta a los cinco servidores públicos que laboran en la institución, para determinar la factibilidad acerca de la implementación del software, y establecer su participación dentro del mismo. A continuación se presenta el cuestionario aplicado realizando un breve análisis en base a las respuestas obtenidas por parte de los servidores públicos (Ver anexo 1). 1. ¿Usted ha utilizado algún sistema informático orientado a la web para la gestión administrativa en la institución? Tabla 5. Resultados de la encuesta pregunta 1 OPCIÓN
CANTIDAD
PORCENTAJE
Si
5
100%
No
0
0%
TOTAL
5
100%
Nota: Datos obtenidos de la investigación de campo.
Pregunta 1 5 5 4 3 2 1
0
0 Si
No Si
Figura 8. Gráfico de resultados de la pregunta 1 Datos obtenidos de la investigación de campo.
No
39
Anรกlisis: En relaciรณn a los resultados obtenidos, se puede observar que la poblaciรณn ha utilizado un Sistema informรกtico orientado a la web para la gestiรณn administrativa en la instituciรณn, por ende posee conocimiento sobre el manejo de plataformas web. 2. De acuerdo a su nivel de conocimientos en Computaciรณn e Informรกtica, ยฟusted se considera apto para la utilizaciรณn de un sistema informรกtico? Tabla 6: Resultados de la encuesta pregunta 2 OPCIร N
CANTIDAD
PORCENTAJE
Si
5
100%
No
0
0%
Total
5
100%
Nota: Datos obtenidos de la investigaciรณn de campo.
Pregunta 2 5 5 4,5 4
3,5 3 2,5 2 1,5 1 0
0,5 0 Si
No Si
No
Figura 9. Grรกfico de resultados de la pregunta 2 Datos obtenidos de la investigaciรณn de campo.
Anรกlisis: De acuerdo a la informaciรณn recabada, se verifica que la totalidad de la poblaciรณn se encuentra apta para la utilizaciรณn de un sistema informรกtico, facilitando el manejo del mismo.
40
3. ¿Cree usted que un sistema informático mejoraría el control de gestión administrativa del departamento de talento humano para vacaciones, licencias y permisos? Tabla 7: Resultados de la encuesta pregunta 3 OPCIÓN
CANTIDAD
PORCENTAJE
Si
5
100%
No
0
0%
Total
5
100%
Nota: Datos obtenidos de la investigación de campo.
Pregunta 3 5 5 4,5 4 3,5 3 2,5 2 1,5 1 0
0,5 0 Si
No Si
No
Figura 10. Gráfico de resultados de la pregunta 3 Datos obtenidos de la investigación de campo.
Análisis: Según el resultado obtenido, se puede constatar que un sistema informático mejoraría el control de gestión administrativa, es decir la forma en que se gestionan las solicitudes y el proceso que se lleva a cabo para dicho trámite en el departamento de talento humano de la institución.
41
4. ¿Está de acuerdo con la manera en la que se gestiona las solicitudes de vacaciones, licencias y permisos? Tabla 8: Resultados de la encuesta pregunta 4 OPCIÓN
CANTIDAD
PORCENTAJE
Si
2
40%
No
3
60%
Total
5
100%
Nota: Datos obtenidos de la investigación de campo.
Pregunta 4 3 3 2,5
2
2 1,5 1 0,5 0
Si
No Si
No
Figura 11. Gráfico de resultados de la pregunta 4 Datos obtenidos de la investigación de campo.
Análisis: Con respecto al total de encuestados, el 60% de la población no está de acuerdo en la manera que se gestionan las solicitudes de vacaciones, licencias y permisos; por ende presentan cierto malestar al realizar dicho trámite y el tiempo de espera que genera el mismo, mientras que el 40% de la población se encuentran familiarizados con el proceso que actualmente se lleva en la institución.
42
5. ¿Cree usted que se presentan dificultades al momento de solicitar y gestionar el permiso? Tabla 9: Resultados de la encuesta pregunta 5 OPCIÓN
CANTIDAD
PORCENTAJE
Si
3
60%
No
2
40%
Total
5
100%
Nota: Datos obtenidos de la investigación de campo.
Pregunta 5 3 3 2,5
2
2 1,5 1 0,5
0 Si
No
Si
No
Figura 12. Gráfico de resultados de la pregunta 5 Datos obtenidos de la investigación de campo
Análisis: En relación a la información obtenida, el 60% de la población ha presentado inconvenientes al momento de gestionar el permiso, debido a que utilizan métodos tradicionales provocando retraso en sus actividades cotidianas, mientras que el 40% de la población está relaciona con la actividades que se realizan dentro del departamento de talento humano.
43
6. ¿Considera usted que el proceso de control de gestión de vacaciones, licencias y permisos en archivos de Word, es un método convencional que puede ser susceptibles a pérdidas? Tabla 10: Resultados de la encuesta pregunta 6 OPCIÓN
CANTIDAD
PORCENTAJE
Si
5
100%
No
0
0%
Total
5
100%
Nota: Datos obtenidos de la investigación de campo.
Pregunta 6 5 5 4,5 4 3,5 3 2,5 2 1,5 1 0
0,5 0 Si
No Si
No
Figura 13. Gráfico de resultados de la pregunta 6 Datos obtenidos de la investigación de campo.
Análisis: El 100% de la población, está de acuerdo que gestionar trámites en archivos de Word, memos, libros diarios, etc., es un mecanismo que puede ser susceptible al deterioro y en peores de los casos a pérdidas de documentos importantes.
44
7. ¿Está usted de acuerdo con la implementación de un sistema informático en la institución, que permita llevar un adecuado control de gestión de vacaciones, licencias y permisos? Tabla 11: Resultados de la encuesta pregunta 7 OPCIÓN
CANTIDAD
PORCENTAJE
Si
5
100%
No
0
0%
Total
5
100%
Nota: Datos obtenidos de la investigación de campo.
Pregunta 7 5 5 4,5 4 3,5 3 2,5 2 1,5 1 0
0,5 0 Si
No Si
No
Figura 14. Gráfico de resultados de la pregunta 7 Datos obtenidos de la investigación de campo.
Análisis: De acuerdo con la información obtenida, el 100% de la población está de acuerdo con la implementación de un software, que ayude a automatizar la gestión administrativa de los procesos en el departamento de talento humano en la institución.
45
8. ¿Qué características le gustaría que tuviera el sistema de gestión administrativa? Tabla 12: Resultados de la encuesta pregunta 8 BENEFICIOS
NÚMERO DE RESPUESTAS
PORCENTAJE
De fácil manejo
4
80%
Seguridad
3
60%
Compatibilidad
2
40%
Total
9
100%
Nota: Datos obtenidos de la investigación de campo.
Pregunta 8 80 60 40 20 0 De fácil manejo De fácil manejo
seguridad seguridad
Compatibilidad con diferentes navegadores Compatibilidad con diferentes navegadores
Figura 15. Gráfico de resultados de la pregunta 8 Datos obtenidos de la investigación de campo.
Análisis: De acuerdo con la encuesta realizada a las 5 personas que laboran en la institución, 4 respuestas (80%) indican que el sistema debe ser de fácil manejo para los usuarios, es decir que cuente con una interfaz sencilla e intuitiva, 3 respuestas (60%) expresan que la seguridad del software es muy importante para evitar posibles ataques informáticos, mientras que 2 respuestas (40%) señalan que el sistema debe presentar compatibilidad con los diferentes navegadores utilizados actualmente ya sean estos Firefox, Explorer y Chrome.
46
5.2. Propuesta de intervención del Sistema SisWeb CCE-NSDT 5.2.1. Análisis de metodologías de desarrollo de software. Para el desarrollo del sistema web, se optó por un marco de trabajo denominado Scrum definido dentro de las metodologías ágiles, que facilita la posibilidad de incorporar modificaciones y cambios en las etapas de la construcción del software. De acuerdo a la comparativa anterior se utilizó la Metodología Ágil denominada Scrum (Ver tabla 2). Cabe recalcar que Scrum facilita resultados con calidad, en iteraciones cortas denominadas Sprints, cada Sprint presenta una duración entre una o cuatro semanas. 5.2.2. Análisis de lenguajes de programación. De acuerdo a la comparativa realizada para seleccionar el lenguaje de programación (Ver tabla 3), que mejor se acopla a los requerimientos y funcionalidades planteados es Java, pero para seleccionar el lenguaje de programación que se utilizó en el desarrollo del software, se mantuvo un diálogo previo con los dirigentes de la institución Lcda. Graciela Torres y Mg. Eiron Álava, donde se establecieron los parámetros necesarios para la codificación del software, seleccionando el uso del lenguaje de programación PHP y el diseño mediante el lenguaje de contenidos HTML5 complementado del framework Bootstrap v4.0.0. Si se considera necesario se facilitó incorporar JavaScript como lenguaje de programación. De acuerdo a lo señalado se acepta la propuesta de la CCE-NSDT, dando lugar al uso de PHP, como lenguaje de programación utilizado. 5.2.3. Análisis del sistema gestor de base de datos. En la relación a la comparativa realizada para la selección del sistema gestor base de datos (Ver tabla 4), que se acopla de mejor manera a los requerimientos y funcionalidades establecidas es PostgreSQL, pero de acuerdo a la reunión que se mantuvo con los servidores públicos de la CCE-NSDT, se establecieron los parámetros a utilizar en la Base de Datos, manifestando emplear MaríaDB como sistema gestor de base datos, MaríaDB es un SGBD de código abierto, por lo que no se requiere adquirir una licencia que represente un costo adicional. Es por ello, que se acepta la propuesta de la CCE-NSDT, empleando el uso de MaríaDB como SGBD en el presente trabajo de titulación.
47
5.2.4. Aplicación de la metodología de desarrollo de software. 5.2.4.1. Roles. Para el desarrollo del marco de trabajo Scrum, se establecieron los roles de cada persona involucrada en el proceso para el desarrollo del producto que se desea obtener, los mismos que se detallan a continuación: Tabla 13: Roles del equipo Scrum ROLES DEL EQUIPO SCRUM Product Owner
Mg. Eiron Álava
Scrum Master
Srta. Doris Cifuentes
Development Team
Srta. Doris Cifuentes Srta. Glenda Mosquera
Nota: De acuerdo con la Lcda. Graciela Torres Directora Provincial de la CCE-NSDT, designó al Mg. Eiron Álava como el intermediario entre la institución y los disertantes, como el responsable encargado de transmitir los requisitos, dudas y cuestiones del producto.
El Product Owner o dueño del producto es el encargado de transmitir los requerimientos, necesidades y futuras modificaciones que se podrían presentar por parte de la institución; el Scrum Master verifica que se aplique la metodología establecida, facilitando al equipo de desarrollo en ser auto organizado y multifuncional, mientras que el Development Team son los miembros que participan en la creación del Incremento del Producto. 5.2.4.2. Eventos de SCRUM. 5.2.4.2.1 Sprint 1. 5.2.4.2.1.1 Sprint Planning 1. Para la realización del primer Sprint se contó con la participación del dueño del producto Mg. Eiron Álava, la cual se efectuó en las instalaciones de la CCE-NSDT, ubicada entre la Av. Quito y Río Toachi tras el Hotel Santo Domingo; la reunión permitió plasmar las funcionalidades del producto en forma de historias de usuario descritas por el dueño del producto (Ver anexo 2), y en base a ello categorizar de acuerdo a la necesidad establecida por el mismo para integrarlo dentro del primer Sprint, cabe recalcar que las estimaciones se realizaron de acuerdo a la complejidad que el equipo de desarrollo otorgó a cada historia. A continuación se presenta la escala y la complejidad del desarrollo que se tomó en cuenta para la realización de las tareas de ingeniería.
48 Tabla 14: Escala de Complejidad ESCALA
COMPLEJIDAD
1 al 10
Bajo
11 al 20
Medio
21 y más.
Alto
Nota: Datos obtenidos de la investigación de campo.
Para el desarrollo de las tareas de ingeniería se utilizó la técnica de estimación Planning Póquer con la variante de la serie Fibonacci: 0, 0.5, 1, 2, 3, 5, 8, 13, 21, etc., que permitió al equipo de desarrollo descomponer las historias de usuario en unidades de trabajo adecuadas para gestionar y seguir el avance de su ejecución. La elaboración de cada sprint fue estimado entre una a cuatro semanas (1 mes), para capturar las funcionalidades necesarias con las que cuenta el sistema, permitiendo un mayor enfoque para su ejecución. 5.2.4.2.1.2 Product Backlog. En la Tabla 15, se realizó el Product Backlog conformado por 10 historias de usuario, conformadas en 2 Sprints. Tabla 15: Product Backlog PRODUCT BACKLOG N° Historia
Historia
Prioridad
Estimación
1
Inicio de Sesión
100
8
2
Cierre de Sesión
95
3
3
Nuevo registro
95
21
4
Listar nómina
90
8
5
Administrar usuarios
90
13
6
Gestión de solicitudes de permisos, vacaciones y licencias
85
21
7
Impresión de informes
85
8
8
Datos Históricos
80
13
9
Configuración de licencias
75
13
10
Asignación del saldo de vacaciones y licencias de los servidores públicos
75
13
Nota: Versión Final del Product Backlog. Datos obtenidos de la investigación de campo.
49
El desarrollo del primer Sprint se realizó con la ayuda de la herramienta de gestión de proyectos denominada Trello, misma que facilitó entregar las funcionalidades del Sprint 1 a tiempo, dentro de Trello se colocaron las tareas de ingeniería en un estado de Pendiente, En proceso y terminado/completo según fue el caso, además de ello facilitó al equipo de desarrollo esclarecer los escenarios de pruebas para el correcto desarrollo del producto software.
Figura 16. Tablero de Trello Nota: Datos obtenidos de la investigación de campo. Recuperado de https://trello.com/b/LUySBPZ0/sisweb-cce-nsdt
Una vez terminada las tareas de ingeniería se realizaron las pruebas de aceptación, donde el cliente prueba el software y verifica que cumpla con sus expectativas. A continuación se detalla las pruebas de aceptación realizadas al dueño del producto, mismas que concluyeron con la firma y sello por parte de la institución en el documento Entrega del primer Sprint (Ver anexo 3). 5.2.4.2.1.3 Sprint Backlog 1. El Sprint Backlog también denominado como la Lista de Pendientes del Sprint, es el resultado de la planificación del sprint, que permite al equipo de desarrollo llevar un control del trabajo de las tareas de ingeniería realizadas o que se encuentran en un estado pendiente, buscando así conseguir el objetivo del Sprint; cabe recalcar que cada Sprint tiene una duración de una a cuatro semanas, dentro del cual se entrega un funcional al Product Owner Mg. Eiron Álava, el mismo que fue modificado según sus requerimientos. A continuación se especifica cada elemento que conforma el Sprint Backlog, la primera columna especifica el sprint a desarrollar, la segunda columna representa la estimación del
50
sprint, la tercera columna está conformada por las tareas de ingeniería, mientras que la cuarta columna detalla la estimación asignada para cada tarea; finalmente la quinta columna define el estado de la tarea realizado o pendiente. Tabla 16: Sprint Backlog 1 Sprint Asignado
1
Estimación de tarea
Estado
Aplicar técnica de Moqups
3
Realizado
Instalación y configuración de WampServer
6
Realizado
Modelado de la base de datos con María DB
7
Realizado
Conectar María DB con PHP
3
Realizado
Diseñar la interfaz para acceder al sistema
3
Realizado
Encriptación MD5 para contraseña
3
Realizado
Creación función session destroy(); en sublime text
5
Realizado
Creación del formularios en Php y Bootstrap
7
Realizado
Codificación de mensajes flotantes con JavaScript
4
Realizado
Codificación de imagenEscapes en Sublime Text
4
Realizado
Realizar pruebas de validación de errores
5
Realizado
Estimación
50
Tareas de Ingeniería
Nota: Datos obtenidos de la investigación de campo.
51
5.2.4.2.1.4 Burndown Chart Sprint 1. Tabla 17: Burndown Chart Sprint 1 09/01/2018
10/01/2018
11/01/2018
06/01/2018
08/01/2018
05/01/2018
04/01/2018
29/12/2017
28/12/2017
27/12/2017
26/12/2017
22/12/2017
Responsable
13
14
15
16
17
Aplicar técnica de Moqups
3
Glenda Mosquera
Instalación y configuración de WampServer
6
Modelado de la base de datos con María DB
4
2
0
2
0 3
1
0
Estado 1
2
3
Completo
3
1
0
Doris Cifuentes
Completo
6
4
2
0
7
Glenda Mosquera
Completo
7
Conectar María DB con PHP
3
Doris Cifuentes
Completo
Diseñar la interfaz acceder al sistema
para
3
Glenda Mosquera
Completo
Encriptación contraseña
para
3
Doris Cifuentes
Completo
Creación función sesión destroy(); en sublime text
5
Glenda Mosquera
Completo
Creación del formulario en Php y Bootstrap
7
Doris Cifuentes
Completo
Codificación de mensajes flotantes con JavaScript
4
Glenda Mosquera
Completo
Codificación de imagenEscapes en sublime text
4
Doris Cifuentes
Completo
Realizar pruebas de vaidación de errores
5
Glenda Mosquera
Completo
MD5
20/12/2017
50
12
Scrum Diario
E s t
Tarea
19/12/2017
1
Est
18/12/2017
Sprint
15/12/2017
14/12/2017
BURNDOWN CHART 1
Nota: Última Versión del Burndown chart Sprint 1. Datos obtenidos de la investigación de campo.
4
5
6
7
5
3
1
0
3
1
0
3
8
9
3
1
0
1
0
7
10
11
5
3
1
0
5
2
0
4
5
52
Sprint Burndown Chart 60
50
Puntos de Historia
40
30
20
10
0 1
2
3
4
5
6
7
8
9
10
11
DĂas Figura 17. Figura obtenida del Sprint 1 Datos obtenidos de la investigaciĂłn de campo.
12
13
14
15
16
17
18
19
20
53
5.2.4.2.1.5 Desarrollo del Sprint 1. 5.2.4.2.1.5.1 Scrum Diario. En el desarrollo del primer sprint, el Scrum diario se realizó en un bloque de tiempo de 15 minutos, para determinar las actividades que el equipo de desarrollo va a completar las siguientes 24 horas. En la reunión establecida se denota el gran interés por parte de los desarrolladores para completar el incremento del producto, por ende se detallaron las tareas de ingeniería completadas satisfactoriamente en el desarrollo del sprint. La primera tarea de ingeniería fue la aplicación de la técnica de Moqups, permitiendo crear bocetos del diseño de las interfaces y formularios correspondientes al sistema SisWeb CCE-NSDT.
Figura 18. Maquetación Ingreso al Sistema
Figura 19. Diseño de Formularios
54
Instalación y configuración de WampServer Versión 2.2 para levantar un servidor Apache Versión 2.4.2 en conjunto con la Base de Datos María DB y el lenguaje de programación PHP en su versión 5.4.3., permitiendo manejar la administración de datos en María DB a través de una interfaz gráfica de usuario.
Figura 20. Instalación y configuración de WampServer
Figura 21. Instalación y configuración entorno de desarrollo HeidiSQL
Para el diseño y modelado de la Base de Datos se utilizó la herramienta Workbench, que permitió realizar el esquema de todas las tablas y relaciones de la Base de Datos.
55
Figura 22. Modelado de la Base de Datos
Para conectar la base de datos MaríaDB con PHP, se creó un usuario con permisos en la base de datos y se asignó una contraseña al mismo. En nuestro caso el usuario y contraseña es root. Posterior a ello creamos variables denominadas: $host, $user, $password, $db y $con, para conectar con la base de datos llamada talento humano.
Figura 23. Conexión PHP
La interfaz de Login permite al usuario acceder al sistema informático de acuerdo al rol asignado, el funcionario ingresa al sistema usuario y contraseña determinado presiona el botón Entrar, posterior a ello, el sistema se encarga de validar los datos ingresados, admitiendo su respectivo acceso de acuerdo al perfil establecido. El diseño del Login se realizó mediante el lenguaje de contenidos HTML5 y complementado del framework Bootstrap.
56
Figura 24. Formulario de ingreso al sistema
Una vez diseñado el Login es necesario, encriptar los datos debido a que la información que se envía atreves de internet puede ser accedida por intrusos, por ende el cifrado de datos es una alternativa eficaz para mantener la privacidad, el sistema cuenta con el algoritmo denominado MD5, en donde se envía una sentencia SQL seleccionando la tabla de usuario con el nombre y contraseña a ser encriptadas.
Figura 25. Sentencia de cifrado de contraseña
El desarrollo de formulario se realizó con la herramienta Sublime Text mismo que permitió la codificación del formulario Nuevo registro, Actualizar Registro y Listar nomina; para el ingreso de la foto del funcionario se utilizó la función image escapes, para el desarrollo de actualizar usuario se selecciona de la tabla personas el id asignado a la persona y al usuario, de igual manera con otra sentencia sql ingresamos al campo estado donde se realiza una comparación entre la variable usuario_estado para si este se encuentra activo aceptar los cambios en el formulario de actualizar usuario.
57
Figura 26. Formulario nuevo registro
Figura 27. Formulario Actualizar registro
El sistema valida los campos ingresados al formulario y despliega un mensaje satisfactorio de peticiรณn realizada de forma exitosa, los mensajes flotantes se realizaron con Java Script mediante la sentencia que permite imprimir un print : print"<script>alert(\"Solicitud procesada correctamente\");window.location='../panel/
Figura 28. Mensaje satisfactorio en JavaScript
58
Al finalizar el primer Sprint, se estableció una reunión con el dueño del producto Mg. Eiron Álava, con el objetivo de presentar el avance del producto, manifestando así su aprobación con lo desarrollado por parte del equipo Scrum, expresó también que se debe tener en cuenta las validaciones al momento de registrar a un nuevo usuario, especificando el ingreso de caracteres especiales, símbolos especiales: matemáticos, griegos, etc., finalmente que todo el sistema debe contar con mensajes flotantes para señalar si una acción se realizó de manera correcta o de forma incorrecta. 5.2.4.2.1.5.2 Revisión del Sprint 1. La revisión del sprint se realizó con la presencia del Mg. Eiron Álava representante designado por la CCE-NSDT, en conjunto con el Scrum Master y Equipo de Desarrollo, en las respectivas instalaciones de la institución, con el objetivo de analizar y demostrar el incremento generado del producto. En la reunión se trataron temas de cómo se construyó el inicio y cierre de sesión, las dificultades para seleccionar la base de datos que se adapta a las funcionalidades requeridas y el lenguaje de programación sugerido que es PHP para el desarrollo del sistema web “SisWeb CCE-NSDT”. Además se estableció la aceptación del módulo para los servidores públicos permitiendo continuar al siguiente Sprint. Tabla 18: Plan de Pruebas realizadas PLAN DE PRUEBAS N°
Actores
1
El usuario ingresa a la página principal del sistema usuario y contraseña, da clic en el botón “Entrar”
3
Presiona el botón “Cerrar Sesión.”
3
El funcionario da clic en “Nuevo registro”, para un nuevo empleado.
4
El actor da clic sobre el botón “Actualizar”
Nota: Datos obtenidos de la investigación de campo.
Sistema
Flujo de Error
OK?
El sistema valida los campos y concede acceso al sistema de acuerdo al rol asociado. El sistema registra la petición solicitada y cierra todas las ventanas internas de la aplicación.
El actor ingresa la información de acceso errónea. El sistema despliega mensaje de alerta
Ok
Salida de forma exitosa.
Ok
El actor ingresa campos diferentes el sistema valída los campos y envía una alerta. El sistema recupera El sistema valida los los datos del usuario a campos ingresados. ser modificado y los Despliega un mensaje presenta en pantalla. satisfactorio El sistema valida los campos y concede el registro
Ok
Ok
59
5.2.4.2.1.5.3 Retrospectiva del Sprint 1. La retrospectiva del sprint se desarrolló con el objetivo de mejorar la calidad del producto que se está desarrollando; se analizaron aspectos a mejorar, para incrementar la productividad en el proyecto, la calidad del producto y potenciar el aprendizaje del equipo de manera sistemática, iteración a iteración, con resultados a corto plazo. Además se busca aumentar la motivación del equipo dado que participa en la mejora de procesos, escuchando ideas, sugerencias para mejorar la toma decisiones consensuadas, eliminando lo que molesta e impide para que el equipo de desarrollo sea más productivo (Ver Anexo 4). 5.2.4.2.2 Sprint 2. 5.2.4.2.2.1 Sprint Planning 2. La reunión realizada para la planificación del segundo sprint se dividió en dos partes: La primera parte de la reunión, se realizó con un tiempo máximo de 4 horas, para determinar y seleccionar los requisitos priorizados por el cliente donde el equipo de desarrollo se comprometió a completar en la iteración. En la segunda parte de la reunión, el equipo de desarrollo se encargó de planificar la iteración y elaborar la manera de conseguir el mejor resultado con un mínimo de esfuerzo, definiendo las tareas necesarias para completar la lista de tareas de la iteración que contendrá el Sprint Backlog. 5.2.4.2.2.2 Sprint Backlog 2. Tabla 19: Sprint Backlog 2 Sprint Asignado
Estimación
Estimación de tarea
Estado
2
Realizado
9
Realizado
7
Realizado
Codificación de la función full Calendar
7
Realizado
Creación del formulario Perfiles
9
Realizado
Codificación de Formulario Registro de Salida
5
Realizado
Codificación consulta actualizar empleado
4
Realizado
Codificación de mensajes flotantes con JavaScript Realizar pruebas de validación de errores
4 3
Realizado Realizado
Tareas de Ingeniería Aplicar técnica de Moqups Creación de tablero para permisos, licencias y vacaciones con Bootstrap (HTML y PHP) Codificación consulta $sql1 rechazar y aceptar solicitud
2
50
Nota: Datos obtenidos de la investigación de campo.
60
5.2.4.2.2.3 Burndown Chart Sprint 2. Tabla 20: Burndown Chart Sprint 2
30/03/2018
31/03/2018
Completo
2
0
Doris Cifuentes
Completo
9
7
Glenda Mosquera
Completo
Codificación de la función full Calendar
7
Doris Cifuentes
Completo
Creación Perfiles
9
Glenda Mosquera
Completo
Codificación de Formulario Registro de Salida
5
Doris Cifuentes
Completo
Codificación actualizar empleado
4
Glenda Mosquera
Completo
Codificación de mensajes flotantes con JavaScript
3
Doris Cifuentes
Completo
Realizar pruebas de validación de errores
4
Glenda Mosquera
Completo
consulta
29/03/2018
2
formulario
12
13
14
15
16
17
1
0 2
1
0
SCRUM DIARIO Estado 1
del
28/03/2018
50
27/03/2018
Codificación consulta $sql1 rechazar y aceptar solicitud
26/03/2018
9
23/03/2018
Creación de tablero para permisos, licencias y vacaciones con Bootstrap (HTML y PHP)
22/03/2018
Glenda Mosquera
21/03/2018
2
20/03/2018 19/03/2018
Aplicar técnica de Moqups
16/03/2018 15/03/2018
Responsable
Tarea
14/03/2018
2
E s t
Es t
12/03/2018
Sprint
09/03/2018
08/03/2018
Burndown Chart 2
Nota: Última Versión del Burndown chart Sprint 2. Datos obtenidos de la investigación de campo.
3
4
5
6
7
8
7
4
2
0
7
5
2
0
9
10
11
7
5
2
0
9
7
4
2
0
5
3
2
0
4
2
1
0
3
2
4
61
Sprint Burndown Chart 60
50
Puntos de Historia
40
30
20
10
0 1
2
3
4
5
6
7
8
9
10
11
DĂas Figura 29. Figura obtenida del Sprint 2 Datos obtenidos de la investigaciĂłn de campo.
12
13
14
15
16
17
18
19
20
62
5.2.4.2.2.4 Desarrollo de Sprint 2. 5.2.4.2.2.4.1 Scrum Diario. Para el desarrollo del segundo Sprint, se inició con la técnica de Moqups facilitando al equipo de desarrollo realizar un bosquejo de cómo debe lucir la interfaz para que el usuario realice las solicitudes, el formulario de registro y el dar de baja al funcionario.
Figura 30. Técnica de Moqups Tablero de solicitudes
Figura 31. Técnica de Moqups Formulario de Nuevo usuario
63
Figura 32. Técnica de Moqups Formulario de Nuevo registro
Para la creación del tablero de permisos, vacaciones y licencias se realizaron sentencias Sql,$sql="select*fromtbl_personawhere persona_id=\"$_SESSION[usuario_empleado_id]\""; seleccionando la tabla de personas de acuerdo al id asignado, para posterior si el usuario se encuentra con la variable usuario_empleado activo pueda realizar dicha solicitud, la creación del tablero se realizó con Bootstrap, HTML5 y PHP.
Figura 33. Interfaz del Tablero de solicitudes
Dentro del desarrollo del sistema se incluye el aceptar o rechazar una solicitud por parte del administrador, misma que se realizó mediante una consulta $sql1, que permite recuperar el estado asignando set “Aceptada” o “Rechazada”, donde el id del método post obtenido sea igual a where id=\"$_POST[id]\""; en base a la petición se imprimé una alerta de solicitud procesada correctamente en Java Script.
64
Figura 34. Codificación Aceptar Solicitud
Figura 35. Codificación Rechazar Solicitud
La codificación de la función Full Calendar, es una función personalizada para generar objetos de eventos mediante programación. Permite obtener la fecha del calendario en un formato de año, mes, día. Para que el funcionario pueda seleccionar su fecha de ingreso y salida a la institución.
Figura 36. Función Full Calendar
65
Para la creación de los formularios de configuraciones de perfiles y vacaciones se realizó mediante la etiqueta <div>, para agrupar la información en un solo contenido, agrupando campos como primer nombre mediante un placeholder, onkeyup para las validaciones de caracteres, un label que rotula el cuadro de contenido, cabe recalcar que para validar el ingreso de la cédula se valida con un máximo de 10 caracteres.
Figura 37. Interfaz del formulario de registro
La actualización de la foto del perfil del funcionario se realizó mediante una sentencia $sql1, misma que permitió de la tabla empleados, seleccionar el funcionario a actualizar su foto de perfil, usando la conexión para dar un resultado a la variable, si dicha variable tiene al menos una fila entonces encuentra la foto y la selecciona como el nuevo perfil
Figura 38. Actualización foto del servidor público
66
Para dar de baja a un funcionario se realizó una sentencia Sql que recupera de la tabla persona_id los privilegios concedidos mediante la sentencia $sqlaprobar= "select privilegios_tipo from privilegios where privilegios_id=\"$_SESSION [usuario_id]\" and privilegios_tipo=\"aprobar\""; y realiza una comparación que si tiene algún permiso activo entonces se acepta el permiso para dar de baja caso contrario la acción se deniega.
Figura 39. Tablero de registro de salida
Figura 40. Sentencias para el registro de salida
67
Una vez codificado los formularios se programaron las respectivas validaciones, es decir los mensajes flotantes o advertencias que alertan al usuario de la acción a realizar mediante el llamado a la función “JavaScript: valida ()” <form role="form" id="solicitar" onSubmit="javascript:valida()" name="solicitar" action="../php/solicitar.php" method="post"> Figura 41. Función para validar en JavaScript
Una vez terminada las tareas de ingeniería se procedió con las pruebas de aceptación para garantizar que los requisitos establecidos se hayan desarrollado de forma exitosa (Ver anexo 5). 5.2.4.2.2.4.2 Revisión del Sprint 2. Para la revisión del segundo sprint se realizó una reunión con todo el equipo Scrum, permitiendo tratar dificultades que se abordaron durante el desarrollo del producto temas de cómo se construyó el tablero de solicitudes y los inconvenientes que se presentaron al momento de la codificación del mismo, de igual manera el desarrollo para la gestión de solicitudes de vacaciones, permisos y licencias, entre otras problemáticas al momento de la codificación. Tabla 21: Plan de pruebas realizadas PLAN DE PRUEBAS N°
Actores
Sistema
Flujo de Error
¿OK?
1
El usuario ingresa al tablero de solicitud de permisos para realizar la petición.
El sistema valida los campos El actor tiene la potestad de y concede la solicitud del cancelar una solicitud. permiso
Ok
3
El administrador puede solicitar permiso para los servidores.
El sistema valida la información ingresa y gestiona el permiso.
Ok
3
El usuario presiona el botón “Dar El sistema cuenta con un botón El sistema valida los campos de Baja”, en el funcionario Reactivar en caso del regreso y da de baja al funcionario. seleccionado. del funcionario a la institución
Ok
4
El administrador selecciona el perfil a asignar al funcionario y presiona el botón Registrar usuario.
Ok
Salida de forma exitosa.
El sistema recupera los datos El sistema valida los campos del usuario a ser modificado ingresados. Despliega un y los presenta en pantalla. mensaje satisfactorio
Nota: Datos obtenidos de la investigación de campo.
68
5.2.4.2.2.4.3 Retrospectiva del Sprint 2. El desarrollo de la reunión retrospectiva del segundo sprint, se realizó en un ambiente de colaboración y participación entre los integrantes del equipo Scrum para alcanzar las metas, donde el equipo Scrum trabaja con valentía para hacer bien las cosas y trabajar en los problemas más complejos, de igual manera cada desarrollador se compromete en enfocarse en el Sprint. Cabe recalcar que las reuniones se realizaron con respeto entre los miembros del equipo Scrum (Ver anexo 6). 5.2.4.2.2.5 Pruebas Unitarias. Las pruebas unitarias se realizaron con la finalidad de constatar que los componentes codificados de la aplicación funcionan correctamente, para mejorar la calidad y acelerar el desarrollo del producto se automatizaron. Una de las pruebas de integración realizada fue el Login mismo que se realizó de la siguiente manera:
Figura 42. Prueba codificación Login
Figura 43. Retorno de parámetros
69
5.2.5. Diseño relacional de la base de datos. Después de obtener los requerimientos del Product Owner, se procedió a realizar el Product Backlog seguido del esquema de la base de datos como se muestra a continuación:
Figura 44. Diseño relacional de la Base de Datos
70
5.2.6. Acta de entrega por Sprint. La entrega del producto funcional se realizĂł en base a dos Sprint, establecidas con el Product Owner. Al tĂŠrmino de cada Sprint se entregĂł un documento formal, donde se especificĂł el listado de historias de usuario desarrolladas de forma correcta por cada Sprint (Ver anexo 7). AdemĂĄs se realizĂł el acta de entrega de recepciĂłn del sistema web completamente funcional (Ver anexo 8). Finalmente se procediĂł con la entrega del manual de usuario (Ver anexo 9), el manual de instalaciĂłn (Ver anexo 10) y el Diccionario de Datos (Ver anexo 11).
5.3. AnĂĄlisis del impacto Se efectĂşa dentro de un proyecto de titulaciĂłn de forma prospectiva y retrospectiva; prospectivamente permite deducir el impacto que tendrĂĄ el proyecto, es decir, cĂłmo beneficia el proyecto a la instituciĂłn y de manera retrospectiva permitiĂł realizar el anĂĄlisis del proyecto ejecutado o puesto en marcha, contestando a la interrogante: ÂżCĂłmo beneficiĂł el proyecto a la instituciĂłn de la CCE-NSDT? Realizar el anĂĄlisis de impacto dentro de un proyecto es importante, debido a que representa huellas, seĂąales, aspectos positivos y negativos que abarcan la ejecuciĂłn del mismo, el presente trabajo de investigaciĂłn se basa en un enfoque retrospectivo, permitiendo analizar el beneficio de la implementaciĂłn del sistema en la instituciĂłn. El cĂĄlculo de los niveles de impacto se realizarĂĄ mediante la siguiente manera: Nivel de impacto= Total sumatorio â&#x2C6;&#x2018; dividido para la cantidad de indicadores. đ?&#x2018;ľđ?&#x2019;&#x160;đ?&#x2019;&#x2014;đ?&#x2019;&#x2020;đ?&#x2019;? đ?&#x2019;&#x2026;đ?&#x2019;&#x2020; đ?&#x2018;°đ?&#x2019;&#x17D;đ?&#x2019;&#x2018;đ?&#x2019;&#x201A;đ?&#x2019;&#x201E;đ?&#x2019;&#x2022;đ?&#x2019;? =
â&#x2C6;&#x2018; đ?&#x2018; Ăşđ?&#x2018;&#x161;đ?&#x2018;&#x2019;đ?&#x2018;&#x;đ?&#x2018;&#x153; đ?&#x2018;&#x2018;đ?&#x2018;&#x2019; đ?&#x2018;&#x2013;đ?&#x2018;&#x203A;đ?&#x2018;&#x2018;đ?&#x2018;&#x2013;đ?&#x2018;?đ?&#x2018;&#x17D;đ?&#x2018;&#x2018;đ?&#x2018;&#x153;đ?&#x2018;&#x;đ?&#x2018;&#x2019;đ?&#x2018;
A continuaciĂłn se presenta los niveles de impacto numĂŠricamente y los indicadores que conforman cada uno: Tabla 22: Niveles de impacto NIVEL
DESCRIPCIĂ&#x201C;N
-3
Impacto de alto nivel negativo
-2
Impacto de medio nivel negativo
-1
Impacto de bajo nivel negativo
0
No hay impacto
3
Impacto de bajo nivel positivo
2
Impacto de medio nivel positivo
1
Impacto de alto nivel positivo
Nota: Adaptado de â&#x20AC;&#x153;MetodologĂa para el trabajo de grado: Tesis y Proyectosâ&#x20AC;? por M.A Posso, 2009, Ibarra, p.196.
71
5.3.1. Impacto TecnolĂłgico. Tabla 23: Impacto tecnolĂłgico Nivel de impacto
-3
-2
-1
0
1
2
3
Indicadores Adaptabilidad tecnolĂłgica
X
Seguridad de la informaciĂłn Total
X -
Sumatoria â&#x2C6;&#x2018; Total
-
-
-
2
3
â&#x2C6;&#x2018;= 3+2= 5 đ?&#x2018; đ??ź =
Resultado de FĂłrmula Resultado
-
5 2
= 2.5
Impacto de alto nivel positivo
Nota: Datos obtenidos de la InvestigaciĂłn de Campo.
AnĂĄlisis: ď&#x201A;ˇ
El adaptar procesos manuales a las nuevas tecnologĂas, permite establecer cambios dentro de la instituciĂłn, agilizando los procesos manuales a tecnolĂłgicos para la mejora en la toma de decisiones.
ď&#x201A;ˇ
El sistema web facilita la seguridad de la informaciĂłn, mediante la encriptaciĂłn de contraseĂąas para el ingreso al sistema, utilizando datos codificados y evitando posibles ataques en la base de datos.
5.3.2. Impacto Ambiental. Tabla 24: Impacto ambiental Nivel de impacto
-3
-2
-1
0
1
2
3
Indicadores Impresiones
X
Suministros de oficina Total
X -
Sumatoria â&#x2C6;&#x2018; Total
-
-
-
2
3
â&#x2C6;&#x2018;= 3+2= 5 đ?&#x2018; đ??ź =
Resultado de FĂłrmula Resultado
-
5 2
= 2.5
Impacto de alto nivel positivo
Nota: Datos obtenidos de la InvestigaciĂłn de Campo.
AnĂĄlisis: ď&#x201A;ˇ
Al contar con un sistema web, se disminuye la cantidad de hojas impresas, es decir los documentos se almacenan de forma virtual; evitando deterioros o en el peor de los casos pĂŠrdidas de documentos importantes.
72
ď&#x201A;ˇ
El sistema web, permite disminuir el uso de suministro de oficina (esferos, lĂĄpiz, borrador, etc.), considerando asĂ un aporte positivo al ambiente.
5.3.3. Impacto EconĂłmico. Tabla 25: Impacto econĂłmico Nivel de impacto Indicadores
-3
-2
-1
0
1
AdquisiciĂłn de suministros de oficina -
-
-
-
-
2
â&#x2C6;&#x2018;= 2 đ?&#x2018; đ??ź =
Resultado de FĂłrmula Resultado
3
X
Total Sumatoria â&#x2C6;&#x2018; Total
2
2 1
=2
Impacto de alto nivel positivo
Nota: Datos obtenidos de la InvestigaciĂłn de Campo.
AnĂĄlisis: ď&#x201A;ˇ
Con la implementaciĂłn del sistema web en la CCE-NSDT, se pude notar que existe una reducciĂłn de fondos econĂłmicos en la compra de papel, carpetas y tinta, dicho dinero se podrĂĄ utilizar en otras actividades o recursos.
5.3.4. Impacto General. Tabla 26: Impacto general Nivel de impacto Indicadores
-3
-2
-1
0
1
2
Impacto TecnolĂłgico
3 X
Impacto Social
X
Impacto Ambiental
X
Impacto EconĂłmico
X
Total
2
Sumatoria â&#x2C6;&#x2018; Total Resultado de FĂłrmula Resultado
9
â&#x2C6;&#x2018;=11 đ?&#x2018; đ??ź =
11 4
= 2,8
Impacto de alto nivel positivo
Nota: Datos obtenidos de la InvestigaciĂłn de campo.
La implementaciĂłn del sistema web SisWeb CCEN-SDT, generĂł un impacto de alto nivel positivo de acuerdo con los indicadores: tecnolĂłgico, ambiental y econĂłmico; debido a que permitiĂł automatizar procesos que se realizaban de forma manual en la instituciĂłn y abrir una nueva forma para la gestiĂłn de licencias, vacaciones y permisos dentro de la instituciĂłn (Ver anexo 12).
73
6. DISCUSIÓN DE LOS RESULTADOS 6.1.1. Discusión de la Entrevista. De acuerdo a la información recabada por medio de las entrevistas realizadas, se asignó como administrador para el manejo del software al Mg. Eiron Álava, como la persona designada para llevar los perfiles de usuario, es decir, él encargado en aceptar o rechazar la solicitud tomando en cuenta el motivo de la misma, también se debe tomar énfasis en el documento los campos como: motivo, fecha de inicio y fin del permiso para generar el reporte. Finalmente, se puede verificar que es evidente la implementación de un software que ayude a automatizar y agilizar los procesos con respecto al trámite de vacaciones, licencias y permisos, dejando atrás métodos convencionales y poco eficientes; con la única finalidad de dar solución a los inconvenientes que conllevan dichos trámites en la institución. 6.1.2. Discusión de las encuestas realizadas a los servidores públicos. De acuerdo a la información recabada por medio de las encuestas, se observa el alto grado de interés que muestran los servidores públicos con respecto a la implementación del software, se refleja su aceptación al mismo y la importancia de dar solución a los problemas que se presentan al realizar la solicitud del permiso, el lapso de tiempo que se genera en procesar y conocer los resultados de la petición realizada.
74
7. CONCLUSIONES
La recopilación de información y las reuniones realizadas con el dueño del producto facilitaron comprender de mejor manera la problemática a solucionar, haciendo uso de técnicas de recolección de datos como entrevistas y encuestas aplicadas a los servidores de la institución, que permitieron esclarecer y recolectar información acerca de las funcionalidades con las que cuenta el sistema, con la finalidad de desarrollar un producto que se adapte a los requerimientos establecidos y permita optimizar el proceso por medio del sistema.
Es importante seleccionar la metodología de desarrollo que mejor se adapte al producto de vinculación en base a parámetros y características previamente establecidas por el equipo de trabajo. La metodología facilita la construcción del producto software, mediante el uso de artefactos y herramientas para planificar y controlar cada una de las etapas en la construcción del sistema informático.
El desarrollo del sistema web se realizó en base al marco de trabajo Scrum, facilitando la construcción del sistema para la Casa de la Cultura Ecuatoriana Benjamín Carrión Núcleo Santo Domingo de los Tsáchilas, mismo que gestiona y administra de manera oportuna la información generada referente a los trámites de vacaciones, licencias y permisos, facilitando un eficiente control de gestión administrativa logrando agilizar los tiempos de trabajo y automatizar dicho proceso.
75
8. RECOMENDACIONES
Es necesario realizar una correcta planificación con los directivos de la institución, para garantizar que los funcionarios involucrados se encuentren presentes y predispuestos en el desarrollo de la encuesta y entrevista, con la finalidad de obtener una visión amplia acerca de los requerimientos solicitados por parte de la institución y la aceptación del personal implicado en el manejo del software.
Para seleccionar la metodología que mejor se adapte a los requerimientos y funcionalidades establecidas por el dueño del producto, es necesario realizar una comparativa previa, analizando aspectos relevantes que deben tomar en cuenta los desarrolladores para facilitar la entrega del producto final.
La comunicación con el cliente o dueño del producto es importante debido a que es la persona encargada de transmitir las ideas, requerimientos y funcionalidades con las que deberá contar el producto, una buena comunicación permite esclarecer dudas que podrían presentarse en el desarrollo del software y es una de las buenas prácticas que recomienda Scrum para obtener resultados con calidad en iteraciones cortas.
76
9. LISTA DE REFERENCIAS Álvarez, A., de las Heras, R., & Lasa, C. (2012). Métodos Ágiles y Scrum. Madrid: Anaya Multimedia. Antón, J., & Garijo, S. (2010). Empresa y Administración. España: Macmillan Profesional. Cejas, M., & Chirinos, N. (2015). La Administración de los Recursos Humanos. USA: San Bernardino, CA. Chiavenato, I. (2009). Gestión del Talento Humano. México: McGraw-Hill. Cuadra, D., Castro, E., Iglesias, A., Martínez, P., Calle, F., Harith, C., Moreno, L., García, S., Martínez, J., Rivero, J., & Segura, I. (2014). Desarrollo de Bases de Datos. México: Alfaomega. Gómez, J., Villar, E., & Alcayde, A. (2011). Diseño y creación de portales web. Colombia: StartBook Editorial. Hernández, R., Fernández, C., & Baptista, P. (2014). Metodología de la Investigación. México: McGraw-Hill. Lassoff, M. (2013). JavaScript Técnicas Esenciales. España: Anaya Multimedia. Letelier, P., y Penadés, M. (2015). Metodologías ágiles para el desarrollo de software: eXtreme Programming
(XP).
Técnica
Administrativa,
5
(26).
Recuperado
de
https://www.researchgate.net/publication/28109707_Metodologias_agiles_para_el_de sarrollo_de_software_eXtreme_Programming_XP Libreros, K., y Ramírez, N. (2013). Diseño de un sistema de gestión de Talento Humano para una empresa de servicios: Call Center (tesis de pregrado). Universidad de San Buenaventura. Loachamin, K. (2015). Desarrollo e Implementación de un Sistema de gestión y control de vacaciones, licencias y permisos para el personal administrativo y de servicio de la dirección de Talento Humano de la Universidad Central del Ecuador (tesis de grado). Universidad Central del Ecuador, Quito.
77
López, I., Castellano, M., & Ospino, J. (2014). Base de Datos. México: Alfaomega. Manso, Y., Cañizares, R., & Febles, J. (2016). Diseño web adaptativo para la plataforma educativa ZERA. Revista Cubana de Ciencias Informáticas, 10(2), 100-115. Obtenido de http://www.redalyc.org/articulo.oa?id =378345292008 MariaDBFoundation. (2018). AboutMariaDB. Recuperado de https://mariadb.org/ Materialize. (2017). Sobre Materialize. Obtenido de http://materializecss.com/about.html Material
AngularJS.
(2017).Qué
es
Material
Angular
JS?
Obtenido
de
http://material.angularjs.org/latest/ Mavlova, T., Benbunan-Fich, R., Koufaris, M., & Lang, G. (2015). The effect of Positive and Negative Signals on Perceived Deceptiveness of Websites in Online Markets. Journal of Theoretical and Applied Electronic Commerce Research, 10(1), 19-24. Doi: 10.4067/S0718-18762015000100003 Measey, P. (2015). Agile Fundations: Principles, practices and frameworks. Swidon: The British Computer Society. Meta4 (2018). Sobre Meta4. Obtenido de https://www.meta4.es/ Moya, E., & Callejas, L. (2015). Análisis, Diseño e Implementación de un Sistema de gestión de Talento Humano en la comunidad Salesiana San Juan Bosco (tesis de grado). Universidad Politécnica Salesiana Sede Guayaquil, Guayaquil. Orós, J. (2013). Guía práctica de XHTML, JavaScript y CSS. México: Alfaomega. Pérez, M. (2015). MySQL Diseño, Programación y Administración de Bases de Datos. USA: San Bernardino, CA. Piñeiro, J. (2013). Base de datos relacionales y modelado de datos. España: Paraninfo. PosgreSQL Global Developement Group. (2018). About PostgeSQL. Recuperado de https://todopostgresql.com/ventajas-y-desventajas-de-postgresql/ Posso, M. (2009). Metodología para el trabajo de grado (tesis y proyectos). Ibarra: Cámara Ecuatoriana del Libro – Núcleo de Pichincha.
78
Pressman, R. (2010). Ingeniería del Software: Un enfoque práctico. México: McGrawHill. Registro Oficial Segundo Suplemento N° 294. (06 de Octubre de 2010). Ley Orgánica del Servicio Público. Ley Orgánica del Servicio Público. Quito, Pichincha, Ecuador: Lexis S.A. Registro Oficial Suplemento N° 418. (01 de Abril de 2011). Decreto 710. Reglamento General a la Ley Orgánica del Servicio Público. Quito, Pichincha, Ecuador: Lexis S.A. Riballo, M. (2008). Implantación de Aplicaciones Informáticas de Gestión. Madrid: RA-MA Editorial. Ricardo, C. (2009). Base de Datos. México: McGraw-Hill. Sánchez, S., Sicilia, M., & Rodríguez, D. (2012).Ingeniería del Software. Un enfoque desde la guía SWEBOK. México: Alfaomega Grupo Editor, S.A. de C.V. Scrum
Alliance
Organization
(2016).
The
Scrum
Guide.
Obtenido
de
http://www.scrumalliance.org/why-scrum/scrum-guide Secretaría Nacional de Planificación y Desarrollo, Senplades (2017). Plan Nacional de Desarrollo 2017-2021. Toda una vida (Primera ed.). Quito, Ecuador: Secretaría Nacional de Planificación y Desarrollo, Senplades. Sommerville, I. (2014). Ingeniería de Software. México: Pearson Educación. Sultán, S., Guzmán, F., Rafik, A., Tevoedjre, A. & Pietrzynski, P. (2010). Comparing Selected Criteria of Programming Languages Java, PHP, C++, Perl, Haskell, AspectJ, Ruby, COBOL, Bash Scripts and Scheme Revision 1.0. Cornell University Library. eprint arXiv: 1008.3434. Recuperado de https://arxiv.org/abs/1008.3434 Valderrey, P. (2013). Administración de sistemas de bases de datos. Bogotá: Ecoe Ediciones. Vaswani, V. (2010).Fundamentos de PHP. México: McGraw Hill.
79
10. GLOSARIO ARH: Definido por sus siglas administración de recursos humanos. Framework: Es una estructura conceptual y tecnológica de soporte definida, normalmente con artefactos o módulos de software concretos, en base a la cual otro proyecto de software puede ser organizado y desarrollado. GTH: Gestión del Talento Humano. HTTP: Definido por sus siglas “Protocolo de transferencia de hipertexto”, es un protocolo de capa de aplicación para transmitir documentos hipermedia, como HTML. LOSEP: La Ley Orgánica de Servicio Público, es una ley en la Constitución del Ecuador. Meta4: Es una plataforma virtual que permite gestionar el personal y sus nóminas, es un software de recursos humanos desarrollados en España. NIS: Conocido por sus siglas Sistema de Información de Red, permite el envío de datos de configuración en sistemas distribuidos. RUP: Es el Proceso Racional Unificado constituye la metodología estándar más utilizada para el análisis, diseño, implementación y documentación de sistemas orientados a objetos. Webapps: Aplicación que se puede ejecutar en cualquier dispositivo móvil y con el sistema operativo que sea. World Wide Web: Sistema de distribución de información basado en hipertexto.
80
11. ANEXOS Anexo 1. Encuesta dirigida a los servidores públicos de la Casa de la Cultura Ecuatoriana Benjamín Carrión Núcleo Santo Domingo de los Tsáchilas. El objetivo de la presente encuesta es de recabar información que será utilizada en la disertación de grado con el tema: “Sistema web para el control de gestión administrativa en el departamento de Talento Humano de la Casa de la Cultura Ecuatoriana Benjamín Carrión Núcleo Santo Domingo de los Tsáchilas durante el período 2017-2018”. La información obtenida será utilizada con fines académicos. Lea cada pregunta y marque con una X según crea conveniente 1. ¿Usted ha utilizado algún sistema informático orientado a la web para la gestión administrativa en la institución? Si ( )
No ( )
2. De acuerdo a su nivel de conocimientos en Computación e Informática, ¿usted se considera apto para la utilización de un sistema informático? Si ( )
No ( )
3. ¿Cree usted que un sistema informático mejoraría el control de gestión administrativa del departamento de talento humano para vacaciones, licencias y permisos? Si ( )
No ( )
4. ¿Está de acuerdo con la manera en la que se gestiona las solicitudes de vacaciones, licencias y permisos? Si ( )
No ( )
5. ¿Cree usted que se presentan dificultades al momento de solicitar y gestionar el permiso? Si ( )
No ( )
81
6. ¿Considera usted que el proceso de control de gestión de vacaciones, licencias y permisos en archivos de Word, es un método convencional que puede ser susceptibles a pérdidas? Si ( )
No ( )
7. ¿Está usted de acuerdo con la implementación de un sistema informático en la institución, que permita llevar un adecuado control de gestión de vacaciones, licencias y permisos? Si ( )
No ( )
8. ¿Cree usted que el tiempo que se demora en dar respuestas a estas actividades es el adecuado y a su vez eficiente? Si ( )
No ( )
9. ¿Qué características le gustaría que tuviera el sistema de gestión administrativa? De fácil manejo
( )
Interfaz sencilla e intuitiva ( )
Seguridad
( )
Otros
( )
82
Anexo 2. Historias de usuario
Historia de Usuario Número: 1
Usuario: Servidores públicos
Nombre historia: Inicio de Sesión Prioridad en negocio: 100
Riesgo en desarrollo: Medio
Puntos estimados: 8
Iteración asignada: 1
Programador responsable: Glenda Cristina Mosquera Sarango Descripción: COMO servidor público QUIERO ingresar usuario y contraseña PARA acceder a la interfaz de inicio del sistema. Escenario de prueba: DADO el ingreso del usuario y contraseña CUANDO presione el botón Entrar ENTONCES ingresa al interfaz principal del sistema. DADO el ingreso del usuario y contraseña incorrecto CUANDO presione el botón Entrar ENTONCES despliega un mensaje de Usuario o Password incorrectos. DADO el ingreso de usuario o contraseña incompletos CUANDO presione el botón Entrar ENTONCES despliega un mensaje de Completa este campo.
Historia de Usuario Usuario: Servidores públicos Número: 2 Nombre historia: Cierre de Sesión Prioridad en negocio: 95
Riesgo en desarrollo: Bajo
Puntos estimados: 3
Iteración asignada: 1
Programador responsable: Glenda Cristina Mosquera Sarango Descripción: COMO servidor público QUIERO finalizar una sesión activa dentro del sistema PARA cerrar todas las ventanas internas del sistema.
DADO la sesión activa dentro del sistema CUANDO presione el botón Salir ENTONCES se cierra todas las ventanas internas del sistema.
83
Historia de Usuario Número: 3
Usuario: Administrador
Nombre historia: Nuevo registro Prioridad en negocio: 95
Riesgo en desarrollo: Medio
Puntos estimados: 21
Iteración asignada: 1
Programador responsable: Glenda Cristina Mosquera Sarango Descripción: COMO administrador QUIERO ingresar y modificar los datos personales del funcionario PARA visualizar en la pantalla. Pruebas de Escenario DADO el ingreso de datos al formulario CUANDO presione el botón Registrar Empleado ENTONCES se despliegue un mensaje Registro exitoso. DADO el ingreso incompleto de datos al formulario CUANDO presione el botón Registrar Empleado ENTONCES se despliegue un mensaje Complete este campo. DADO el ingreso de datos duplicados al formulario CUANDO presione el botón Registrar Empleado ENTONCES se despliegue un mensaje Cédula registrada. DADO el ingreso de datos al formulario sin cargar el archivo de foto CUANDO presione el botón Registrar Empleado ENTONCES se despliegue un mensaje Seleccione archivo. DADO la modificación de los datos del funcionario CUANDO pulse el botón Actualizar ENTONCES se visualizará el formulario Actualización de datos. DADO la modificación de los datos incompletos del funcionario CUANDO pulse el botón Actualizar ENTONCES se visualizará un mensaje de Completa este campo. DADO la modificación de los datos incorrectos del funcionario CUANDO pulse el botón Actualizar ENTONCES se visualizará un mensaje de Caracteres incorrectos.
84
Número: 4
Historia de Usuario Usuario: Administrador
Nombre historia: Listar nómina Prioridad en negocio: 90
Riesgo en desarrollo: Medio
Puntos estimados: 8
Iteración asignada: 1
Programador responsable: Glenda Cristina Mosquera Sarango Descripción: COMO administrador QUIERO consultar la Nómina de los servidores PARA visualizar en pantalla el perfil del empleado seleccionado. Pruebas de Escenario DADO la consulta de nómina de los servidores CUANDO pulse el botón Listar nómina ENTONCES se visualizará en pantalla el listado de empleados. DADO la nómina de servidores CUANDO pulse el botón Más información ENTONCES se visualizará el perfil del funcionario.
Historia de Usuario Usuario: Administrador Número: 5 Nombre historia: Administrar Usuarios Prioridad en negocio: 90 Riesgo en desarrollo: Alto Puntos estimados: 13 Iteración asignada: 1 Programador responsable: Glenda Cristina Mosquera Sarango Descripción: COMO administrador QUIERO seleccionar roles de los usuarios PARA otorgar privilegios en el acceso al sistema. Pruebas de Escenario DADO la selección correcta del rol al usuario CUANDO seleccione los privilegios y pulse el botón Registrar usuario ENTONCES se registrará el ingreso al sistema de acuerdo al permiso dado. DADO la selección correcta del rol al usuario existente CUANDO pulse el botón Registrar usuario ENTONCES se visualizará un mensaje Usuario ya registrado.
85
Historia de Usuario Número: 6
Usuario: Administrador y Usuario
Nombre historia: Gestión de solicitudes de permisos, vacaciones y licencias. Prioridad en negocio: 85
Riesgo en desarrollo: Alto
Puntos estimados: 21
Iteración asignada: 2
Programador responsable: Doris Liliana Cifuentes Balseca Descripción: COMO administrador y usuario QUIERO seleccionar o cancelar solicitudes PARA solicitar el respectivo permiso, vacación o licencia. Pruebas de Escenario DADO el correcto ingreso o selección de los campos CUANDO pulse el botón Solicitar licencia ENTONCES se visualizará un mensaje Solicitud procesada correctamente . DADO el incorrecto ingreso y/o incompletos de los campos CUANDO pulse el botón Solicitar días ENTONCES se visualizará un mensaje Complete este campo. DADO el correcto ingreso de la información CUANDO pulse el botón Cancelar ENTONCES se visualizará un mensaje Solicitud cancelada exitosamente.
Historia de Usuario Número: 7
Usuario: Servidor público
Nombre historia: Impresión de informes Prioridad en negocio: 85
Riesgo en desarrollo: Medio
Puntos estimados: 8
Iteración asignada: 2
Programador responsable: Glenda Cristina Mosquera Sarango Descripción: COMO funcionario QUIERO visualizar la solicitud aprobada PARA imprimir el correspondiente reporte. Pruebas de Escenario DADO la solicitud aprobada CUANDO pulse el botón Imprimir ENTONCES se visualizará en pantalla el formato de impresión. DADO la solicitud aprobada CUANDO pulse el botón Guardar ENTONCES se almacena la impresión del reporte.
86
Historia de Usuario Número: 8
Usuario: Administrador
Nombre historia: Datos Históricos Prioridad en negocio: 80
Riesgo en desarrollo: Alto
Puntos estimados: 13
Iteración asignada: 2
Programador responsable: Glenda Cristina Mosquera Sarango Descripción: COMO administrador QUIERO el histórico laboral de los servidores PARA visualizar en pantalla la fecha de ingreso y de salida en la institución. Pruebas de Escenario DADO el histórico laboral CUANDO pulse el botón buscar ENTONCES se despliegue la lista de servidores que labora en la institución.
Historia de Usuario Número: 9
Usuario: Administrador
Nombre historia: Configuración de licencias. Prioridad en negocio: 75
Riesgo en desarrollo: Alto
Puntos estimados: 13
Iteración asignada: 2
Programador responsable: Glenda Cristina Mosquera Sarango Descripción: COMO administrador QUIERO ingresar y actualizar licencias PARA configurar el listado de licencias vigentes de la institución. Pruebas de Escenario DADO el ingreso correcto de la licencia CUANDO pulse el botón Registrar licencia ENTONCES se despliegue un mensaje de “Registro exitoso”. DADO el ingreso incorrecto o incompleto de la licencia CUANDO pulse el botón Registrar licencia ENTONCES se despliegue un mensaje “Complete este campo”. DADO actualizar licencia CUANDO pulse el botón Actualizar licencia ENTONCES se despliegue un mensaje “Solicitud procesada correctamente”.
87
Historia de Usuario Número: 10
Usuario: Administrador
Nombre historia: Asignación del saldo de vacaciones y licencias de los servidores. Prioridad en negocio: 75
Riesgo en desarrollo: Alto
Puntos estimados: 13
Iteración asignada: 2
Programador responsable: Glenda Cristina Mosquera Sarango Descripción: COMO administrador QUIERO ingresar, editar y guardar los días disponibles de vacaciones y licencias del funcionario PARA configurar el saldo disponible de vacaciones y licencias por cada funcionario. Pruebas de Escenario DADO el ingreso correcto de los días de vacaciones CUANDO pulse el botón Actualizar días ENTONCES se despliegue un mensaje de “Solicitud procesada exitosamente”. DADO el ingreso correcto de los campos al formulario de licencias CUANDO pulse el botón Registrar licencia ENTONCES se despliegue un mensaje “Registro exitoso”. DADO el ingreso incorrecto o incompleto del formulario de licencias CUANDO pulse el botón Registrar licencia ENTONCES se despliegue un mensaje “Complete este campo”.
88
Anexo 3. Pruebas de aceptaciรณn del Sprint 1
89
90
Anexo 4. Retrospectiva del Sprint 1
91
92
Anexo 5. Pruebas de aceptaciรณn del Sprint 2
93
94
Anexo 6. Retrospectiva del Sprint 2
95
96
Anexo 7. Oficio de entrega por Sprint
97
98
Anexo 8. Acta de entrega de Recepciรณn
Anexo 9. Manual de usuario El Manual de usuario se adjunta en el CD. Anexo 10. Manual de instalaciรณn El Manual de instalaciรณn se adjunta en el CD.
99
Anexo 11. Diccionario de Datos Privilegios Columna
Tipo
Nulo
privilegios_id
int(20)
No
privilegios_tipo
varchar(30)
No
tbl_usuario_usuario_id
int(10)
No
Predeterminado
Comentarios
Índices Nombre de la clave
Tip o
Ún ico
Empaq uetado
Columna
Cardin alidad
Coteja miento
fk_privilegios_tbl_ usuario1_idx
BT REE
N o
No
tbl_usuario_u suario_id
0
A
N ul o No
Comen tario
tbl_cargo Columna cargo_id cargo_nombre (Primaria) cargo_sueldo
Tipo int(10) varchar(20)
Nulo No No
float
No
Predeterminado
Comentario
Índices Nombre de la clave PRIMAR Y cargo_no mbre cargo_id
Tipo
Úni co
Empaquet ado
Column a
Cardinali dad
Cotejami ento
Nu lo
BTR EE BTR EE BTR EE
Sí
No
0
A
No
No
0
A
No
No
cargo_no mbre cargo_no mbre cargo_id
0
A
N o N o N o
Coment ario
tbl_estado Columna estado_id (Primaria) estado_tipo
Tipo int(10)
Nulo No
varchar(20)
No
Predeterminado
Comentario
100
Índices Nombre de la clave
Tipo
Únic o
Empaqueta do
Columna
Cardinalid ad
Cotejamie nto
Nul o
PRIMAR Y estado_ti po
BTRE E BTRE E
Sí
No
estado_id
0
A
No
No
No
estado_ti po
0
A
No
Comenta rio
tbl_estadocivil Columna
Tipo
Nulo
Predeterminado 0
estadocivil_id (Primaria)
int(10)
No
estadocivil_tipo
varchar(20)
No
Comentario
Índices Nombre de la clave
Tipo
Úni co
Empaque tado
Columna
Cardinali dad
Cotejami ento
Nu lo
PRIMARY
BTR EE
Sí
No
estadocivil _id
0
A
N o
estadocivil _tipo
BTR EE
No
No
estadocivil _tipo
0
A
N o
Coment ario
tbl_instruccion Columna instruccion_id (Primaria) instruccion_tipo
Tipo int(20) varchar(20)
Nulo No No
Predeterminado
Comentario
Índices Nombr e de la clave
Tipo
Úni co
Empaquet ado
Columna
Cardinali dad
Cotejami ento
Nu lo
PRIMA RY
BTR EE
Sí
No
instruccion _id
0
A
No
sexo_tip o
BTR EE
No
No
instruccion_ tipo
0
A
No
Coment ario
101
tbl_permisosnr Columna permisosnr_id (Primaria) permisosnr_nombre permisosnr_horas
Tipo int(10)
Nulo No
varchar(20) int(10)
No No
Predeterminado
Comentarios
Índices Nombre de la clave PRIMA RY
Tipo
Úni co
Empaquet ado
Columna
Cardinali dad
Cotejamie nto
Nul o
BTR EE
Sí
No
permisosn r_id
0
A
No
Comenta rio
tbl_permisosr Columna permisosr_id (Primaria) permisosr_nombre permisosr_dias
Tipo int(10) varchar(100) int(10)
Nulo No No No
Predeterminado
Comentarios
Índices Nombre de la clave PRIMA RY
Tipo
Úni co
Empaquet ado
Columna
Cardinali dad
Cotejamie nto
Nul o
BTR EE
Sí
No
permisosn r_id
0
A
No
Comenta rio
tbl_permisosr Columna permisosr_id (Primaria) permisosr_nombre permisosr_dias
Tipo int(10) varchar(100) int(10)
Nulo No No No
Predeterminado
Comentarios
Índices Nombre de la clave PRIMA RY
Tipo
Úni co
Empaquet ado
Column a
Cardinali dad
Cotejamie nto
Nul o
BTR EE
Sí
No
permisosr _id
0
A
No
Comenta rio
102
tbl_persona Columna persona_id (Primaria) persona_nombre persona_apellido persona_cedula persona_foto persona_telefono persona_direccion persona_email persona_edad persona_estadocivil_tipo persona_sexo_tipo persona_instruccion_tipo persona_estado persona_fechaingreso persona_fechasalida
Tipo int(10) varchar(20) varchar(20) int(10) mediumblob varchar(20) varchar(50) varchar(20) int(10) varchar(20) varchar(20) varchar(20) int(10) date date
Nulo No No No No No No No No No No No No No No Sí
Predeterminado
Columna
Comentarios
NULL
Índices Nombre de la clave
Tip o
Úni co
Empaqu etado
PRIMARY
BTR EE BTR EE BTR EE BTR EE BTR EE BTR EE BTR EE BTR EE BTR EE BTR EE BTR EE BTR EE BTR EE
Sí
No
Sí
persona_id_4 persona_id_5 persona_nombre persona_estadoci vil_tipo persona_sexo_tip o persona_instrucci on_tipo persona_instrucci on_tipo_2 persona_nombre _2 persona_nombre _3 persona_id persona_id_2 persona_id_3
Cardina lidad
Cotejam iento
Nu lo
persona_id
0
A
No
persona_id
0
A
Sí
No
persona_id
0
A
No
No
0
A
No
No
0
A
No
No
0
A
No
No
0
A
No
No
0
A
No
No
0
A
No
No
0
A
No
No
persona_nombr e persona_estado civil_tipo persona_sexo_t ipo persona_instruc cion_tipo persona_instruc cion_tipo persona_nombr e persona_nombr e persona_id
0
A
No
No
persona_id
0
A
No
No
persona_id
0
A
N o N o N o N o N o N o N o N o N o N o N o N o N o
Comen tario
103
tbl_sexo Columna sexo_id (Primaria) sexo_tipo
Tipo int(10) varchar(10)
Nulo No No
Predeterminado
Comentarios
Índices Nombre de la clave PRIMA RY sexo_tip o
Tipo
Únic o
Empaquet ado
Colum na
Cardinali dad
Cotejamie nto
Nul o
BTR EE BTR EE
Sí
No
sexo_id
0
A
No
No
No
sexo_ti po
0
A
No
Comenta rio
tbl_solicitudnr Columna solicitudnr_id (Primaria) solicitudnr_empleado_id solicitudnr_motivo solicitudnr_fechaini solicitudnr_fechafin solicitudnr_estado tbl_persona_persona_id tbl_permisosnr_permisosnr_id tbl_vacaciones_vacaciones_id
Tipo int(10) int(10) varchar(50) date date varchar(20) int(10) int(10) int(10)
Nulo No No No No No No No No No
Predeterminado
Comentarios
Índices Nombre de la clave
Ti po
Ún ico
Empaq uetado
Colum na
Cardin alidad
Coteja miento
PRIMARY
BT RE E BT RE E BT RE E BT RE E BT RE E
Sí
No
solicitudnr_id
0
A
No
No
solicitudnr_emp leado_id
0
A
N o
No
No
tbl_persona_per sona_id
0
A
N o
No
No
tbl_permisosnr_ permisosnr_id
0
A
N o
No
No
tbl_vacaciones_ vacaciones_id
0
A
N o
solicitudnr_emplead o_id fk_tbl_solicitudnr_tb l_persona1_idx fk_tbl_solicitudnr_tb l_permisosnr1_idx fk_tbl_solicitudnr_tb l_vacaciones1_idx
N ul o N o
Come ntario
104
tbl_solicitudr Columna solicitudr_id (Primaria)
Tipo int(10)
Nulo No
solicitudr_empleado_id
int(10)
No
solicitudr_permisosr_id
int(10)
No
solicitudr_fechaini
date
No
solicitudr_fechafin
date
No
solicitudr_estado
varchar(20)
No
Predeterminado
Comentarios
Índices Nombre de la clave
Tip o
Ún ico
Empaqu etado
Columna
Cardina lidad
Coteja miento
PRIMARY
BTR EE BTR EE BTR EE BTR EE BTR EE
Sí
No
solicitudr_id
0
A
N ul o No
No
No
0
A
No
No
No
0
A
No
No
No
0
A
No
No
No
solicitudr_em pleado_id solicitudr_per misosr_id solicitudr_em pleado_id solicitudr_esta do
0
A
No
solicitudr_empl eado_id solicitudr_perm isosr_id solicitudr_empl eado_id_2 solicitudr_estad o
Comen tario
tbl_usuario Columna usuario_id (Primaria)
Tipo int(10)
Nulo No
usuario_empleado_id
int(10)
No
usuario_cargo
int(10)
No
usuario_nombre
varchar(20)
No
usuario_password
varchar(50)
No
usuario_estado
int(10)
No
usuario_password_original
int(11)
No
Predeterminado
Comentarios
105
Índices Nombre de la clave
Tip o
Úni co
Empaqu etado
PRIMARY
BTR EE
Sí
No
usuario_emple ado_id
BTR EE
No
usuario_emple ado_id_2
BTR EE
usuario_cargo
usuario_estado
Columna
Cardina lidad
Cotejam iento
Nu lo
usuario_id
0
A
N o
No
usuario_empl eado_id
0
A
N o
No
No
usuario_empl eado_id
0
A
N o
BTR EE
No
No
usuario_carg o
0
A
N o
BTR EE
No
No
usuario_estad o
0
A
N o
Columna vacaciones_id (Primaria) vacaciones_empleado_id
Tipo int(10) int(10)
Nulo No No
Predeterminado
vacaciones_fechaini
date
Sí
NULL
vacaciones_fechafin
date
Sí
NULL
vacaciones_estado
varchar(10)
Sí
NULL
vacaciones_diasdisponibles
int(10)
No
Comen tario
tbl_vacaciones Comentarios
Índices Nombre de la clave PRIMA RY
Tipo
Úni co
Empaquet ado
Columna
Cardinali dad
Cotejamie nto
Nul o
BTR EE
Sí
No
vacaciones _id
0
A
No
Comenta rio
106
Anexo 12. Carta de Impacto