Sistema web para el control de reservas y préstamos de libros en la de la UE Sto Dgo

Page 1

PONTIFICIA UNIVERSIDAD CATÓLICA DEL ECUADOR SEDE SANTO DOMINGO

Dirección Académica - Escuela de Sistemas

SISTEMA WEB PARA EL CONTROL DE RESERVAS Y PRÉSTAMOS DE LIBROS EN LA BIBLIOTECA DE LA UNIDAD EDUCATIVA SANTO DOMINGO DE LOS COLORADOS; 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: MARCOS STEVEN MARIDUEÑA BENALCÁZAR KAREN STHEFANNY ZAPATA VILLACIS

Director: Mg. LUIS JAVIER ULLOA MENESES

Santo Domingo – Ecuador Agosto, 2018


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 RESERVAS Y PRÉSTAMOS DE LIBROS EN LA BIBLIOTECA DE LA UNIDAD EDUCATIVA SANTO DOMINGO DE LOS COLORADOS; PERIODO 2017 – 2018

Línea de Investigación: Estudio, Diseño e Implementación de Software.

Autores: MARCOS STEVEN MARIDUEÑA BENALCÁZAR KAREN STHEFANNY ZAPATA VILLACIS

Luis Javier Ulloa Meneses, Mg.

f.

DIRECTOR DE LA DISERTACIÓN DE GRADO

Jon Esteban Azcona, Mg.

f.

CALIFICADOR

José Luis Centeno, Mg.

f.

CALIFICADOR

Ulloa Meneses Luis Javier, Mg.

f.

DIRECTOR DE LA ESCUELA DE SISTEMAS Santo Domingo – Ecuador Agosto, 2018


iii

DECLARACIÓN DE AUTENTICIDAD Y RESPONSABILIDAD

Yo, Marcos Steven Maridueña Benalcázar portador de la cédula de ciudadanía Nº 172039493-9 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.

Marcos Steven Maridueña Benalcázar CI 172039493-9


iv

DECLARACIÓN DE AUTENTICIDAD Y RESPONSABILIDAD

Yo, Karen Sthefanny Zapata Villacis portadora de la cédula de ciudadanía Nº 171446900-2 declaro que los resultados obtenidos en la investigación que presento como informe final, previo a la obtención del Grado de Ingeniera 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.

Karen Sthefanny Zapata Villacis CI. 171446900-2


v

AGRADECIMIENTO A Dios y a mi familia por ser el apoyo incondicional durante toda mi carrera y permitirme alcanzar los diferentes objetivos y metas en diferentes ĂĄreas, a mis maestros y amigos que estuvieron siempre presentes y con los que me llevo grandes recuerdos. Marcos MaridueĂąa

A mi madre, que es mi guĂ­a, mi fortaleza para poder cumplir esta meta mi carrera, gracias a sus palabras y apoyo incondicional.

Karen Zapata


vi

DEDICATORIA Dedico este proyecto de disertación a mis padres que, con su gran esfuerzo y apoyo durante toda mi vida, me han enseñado a luchar por mis sueños hasta cumplirlos, esto es por y para ustedes. Marcos Maridueña

Este trabajo de Titulación la dedico a mis hermanos Manuel y Jeanette Zapata y a mi madre Blanca Villacis quienes han sido parte fundamental para culminar mi carrera, gracias por su amor. Karen Zapata


vii

RESUMEN El presente trabajo de titulación comprende el desarrollo de un sistema web para la automatización de los procesos de préstamo y reserva de libros que se realizan en la biblioteca de la Unidad Educativa Santo Domingo de los Colorados. Este sistema es implementado con el fin de optimizar recursos en la institución, al mejorar la administración de las actividades antes mencionadas. El sistema se divide en dos usuarios principales: usuario general y administrador. Así mismo existen tres módulos principales del sistema. El primero es el módulo de biblioteca, donde se administra los libros existentes. El segundo es el módulo de usuarios, donde el administrador gestiona los perfiles de los usuarios generales y el tercer módulo de reportes muestra información estadística por libros y las solicitudes de los usuarios. Todos estos módulos emplean reglas de validación en formularios, encriptación de contraseñas a nivel de base de datos y control de solicitudes en escasez de libros. En este proyecto se describe el desarrollo del sistema en el cual se emplea el marco de trabajo SCRUM y en la metodología de investigación un enfoque mixto, los tipos de investigación son descriptiva, aplicada y de campo. Se utilizó MySQL como base de datos, HTML5 y MaterializeCSS para el diseño del sistema web, PHP y Javascript para la programación y validación de los diferentes módulos del sistema. La implementación del sistema automatiza procesos referentes al préstamo y reserva de libros, disminuyendo el tiempo del bibliotecario y usuarios en realizarlos. Palabras clave: Sistema web, Automatización, MySQL, módulos, SCRUM.


viii

ABSTRACT The current titration work includes the development of a web system for the automation of the loan and book reservation processes carried out in the library of the Santo Domingo de los Colorados Educational Unit. This system is implemented in order to optimize resources in the institution by improving the administration of the aforementioned activities. The system is divided into two main users: general user and administrator. There are also three main modules of the system. The first is the library module, where existing books are managed. The second is the user module, where the administrator manages the profiles of the general users and the third module of reports shows statistical information for books and the

requests of users. All these modules use rules of validation in forms,

encryption of passwords at the database level and control of requests in shortage of books. This project describes the development of the system in which the SCRUM framework is used and in the research methodology a mixed approach, the types of investigation are descriptive, applied and field. MySQL was used as a database, HTML5 and Materialize CSS for the web system design, PHP and Javascript for the programming and validation of the different modules of the system. The implementation of the system automates processes related to the loan and reserve of books, decreasing the time of the librarian and users in carrying them out. Keywords: Web system, Automation, MySQL, modules, SCRUM.


ix

ÍNDICE DE CONTENIDOS

1.

INTRODUCCIÓN ............................................................................................................ 1

2.

PLANTEAMIENTO DEL PROBLEMA ......................................................................... 3

2.1. Antecedentes..................................................................................................................... 3 2.2. Problema de investigación ................................................................................................ 3 2.3. Justificación de la investigación ....................................................................................... 4 2.4. Objetivos de investigación ............................................................................................... 6 Objetivo General. ............................................................................................................. 6 Objetivos específicos. ....................................................................................................... 6 3.

MARCO REFERENCIAL ............................................................................................... 7

3.1. Antecedentes..................................................................................................................... 8 3.2. Revisión de la literatura o fundamentos teóricos ............................................................. 9 Ingeniería de Software...................................................................................................... 9 Base de Datos. ................................................................................................................ 16 Aplicaciones Web........................................................................................................... 21 Herramientas de desarrollo web. .................................................................................... 23 Control de reserva y préstamos de libros. ...................................................................... 27 4.

METODOLOGÍA DE LA INVESTIGACIÓN .............................................................. 31

4.1. Diseño/ Tipo de investigación ........................................................................................ 31 Enfoque de la Investigación. .......................................................................................... 31 Diseño de investigación. ................................................................................................. 31 Tipo de investigación. .................................................................................................... 31 4.2. Población o Universo ..................................................................................................... 32 4.3. Muestra ........................................................................................................................... 32 4.4. Técnica e Instrumentos de recogida de datos ................................................................. 33 4.5. Técnicas de análisis de datos .......................................................................................... 34 4.6. Metodología de desarrollo de software .......................................................................... 34 Selección de recursos de desarrollo para la elaboración del software............................ 34 Análisis de metodologías de desarrollo de software. ..................................................... 37 Scrum.............................................................................................................................. 37 Componentes de Scrum. ................................................................................................. 38


x

Proceso de Scrum. .......................................................................................................... 39 5.

RESULTADOS .............................................................................................................. 41

5.1. Análisis y Discusión de los resultados ........................................................................... 41 Entrevista dirigida a la administradora de biblioteca de la Unidad Educativa “Santo Domingo de los Colorados”. .................................................................................................... 41 Encuestados a estudiantes y docentes de la Unidad Educativa “Santo Domingo de los Colorados”. .............................................................................................................................. 43 5.2. Aplicación de la metodología de desarrollo de Software ............................................... 53 Planificación. .................................................................................................................. 53 5.3. Análisis de Impacto ........................................................................................................ 77 Impacto Social. ............................................................................................................... 78 Impacto Tecnológico. ..................................................................................................... 78 Impacto Ambiental. ........................................................................................................ 79 Impacto económico. ....................................................................................................... 80 Impacto General. ............................................................................................................ 80 6.

CONCLUSIONES .......................................................................................................... 82

7.

RECOMENDACIONES ................................................................................................ 83

8.

REFERENCIAS BIBLIOGRÁFICAS ........................................................................... 84

9.

GLOSARIO .................................................................................................................... 88

10.

ANEXOS ........................................................................................................................ 90


xi

ÍNDICE DE TABLAS Tabla 1. Comparativa metodologías tradicionales y metodologías ágiles ............................... 16 Tabla 2. Usuarios de la Base de Datos..................................................................................... 17 Tabla 3. Comparativa entre PostgreSql, MariaDB y SQL Server ........................................... 34 Tabla 4. Comparativa entre herramientas para modelado de datos ......................................... 35 Tabla 5. Comparativa de editores de texto............................................................................... 35 Tabla 6. Comparativa de lenguajes de programación .............................................................. 36 Tabla 7. Comparativa de framework Front-End ...................................................................... 36 Tabla 8. Comparativa entre metodologías Ágiles .................................................................... 37 Tabla 9. Resultados de la encuesta pregunta 1 ........................................................................ 43 Tabla 10. Resultados de la encuesta pregunta 2 ...................................................................... 44 Tabla 11. Resultados de la encuesta pregunta 3 ...................................................................... 45 Tabla 12. Resultados de la encuesta pregunta 4 ...................................................................... 46 Tabla 13. Resultados de la encuesta pregunta 5 ...................................................................... 47 Tabla 14. Resultados de la encuesta pregunta 6 ...................................................................... 48 Tabla 15. Resultados de la encuesta pregunta 7 ...................................................................... 49 Tabla 16. Resultados de la encuesta pregunta 8 ...................................................................... 50 Tabla 17. Resultados de la encuesta pregunta 9 ...................................................................... 51 Tabla 18. Resultados de la encuesta pregunta 10 .................................................................... 52 Tabla 19. Roles en el equipo Scrum ........................................................................................ 53 Tabla 20. Product Backlog. ...................................................................................................... 54 Tabla 21. Sprint Backlog 1 ...................................................................................................... 54 Tabla 22. Burdown Chart Sprint 1 ........................................................................................... 55 Tabla 23. Prueba de Aceptación 1 ........................................................................................... 60 Tabla 24. Prueba de Aceptación 2 ........................................................................................... 61 Tabla 25. Prueba de Aceptación 3 ........................................................................................... 61 Tabla 26. Sprint Backlog 2 ...................................................................................................... 62 Tabla 27. Burdown Chart Sprint 2 ........................................................................................... 63 Tabla 28. Prueba de Aceptación 4 ........................................................................................... 69 Tabla 29. Prueba de aceptación 5 ............................................................................................ 70 Tabla 30. Prueba de aceptación 6 ............................................................................................ 70 Tabla 31. Sprint Backlog 3 ...................................................................................................... 71 Tabla 32. Burdown Chart Sprint 3 ........................................................................................... 72 Tabla 33. Prueba de aceptación 7 ............................................................................................ 75 Tabla 34. Niveles de impacto................................................................................................... 77 Tabla 35. Impacto Social ......................................................................................................... 78 Tabla 36. Impacto tecnológico ................................................................................................. 78 Tabla 37. Impacto ambiental.................................................................................................... 79 Tabla 38. Impacto económico .................................................................................................. 80 Tabla 39. Impacto General ....................................................................................................... 80


xii

ÍNDICE DE FIGURAS Figura 1. Esquema de contenidos. ............................................................................................. 7 Figura 2. Modelo en Cascada................................................................................................... 12 Figura 3. Desarrollo Incremental ............................................................................................. 13 Figura 4. Esquema E-R para una biblioteca............................................................................. 18 Figura 5. Arquitectura Cliente/Servidor. ................................................................................. 21 Figura 6. Arquitectura Multicapas ........................................................................................... 22 Figura 7. Porcentajes de respuestas de la pregunta 1. .............................................................. 43 Figura 8. Porcentajes de respuestas de la pregunta 2. .............................................................. 44 Figura 9. Porcentajes de respuestas de la pregunta 3. .............................................................. 45 Figura 10. Porcentajes de respuestas de la pregunta 4. ............................................................ 46 Figura 11. Porcentajes de respuestas de la pregunta 5. ............................................................ 47 Figura 12. Porcentajes de respuestas de la pregunta 6. ............................................................ 48 Figura 13. Porcentajes de respuestas de la pregunta 7. ............................................................ 49 Figura 14. Porcentajes de respuestas de la pregunta 8. ............................................................ 50 Figura 15. Porcentajes de respuestas de la pregunta 9. ............................................................ 51 Figura 16. Porcentajes de respuestas de la pregunta 10. .......................................................... 52 Figura 17. Figura adquirida del Sprint 1. ................................................................................. 56 Figura 18. Interfaz página principal. ........................................................................................ 58 Figura 19. Interfaz de la página de Login. ............................................................................... 58 Figura 20. Interfaz del ingreso de nuevo usuario. .................................................................... 58 Figura 21. Interfaz de modificar usuario.................................................................................. 59 Figura 22. Interfaz de Búsqueda. ............................................................................................. 59 Figura 23. Interfaz para eliminar usuario. ................................................................................ 59 Figura 24. Figura adquirida del Sprint 2. ................................................................................. 64 Figura 25. Interfaz de Ingreso categoría. ................................................................................. 65 Figura 26. Interfaz para eliminar categoría. ............................................................................. 66 Figura 27. Interfaz para Ingresar autor. ................................................................................... 66 Figura 28. Interfaz para eliminar autor. ................................................................................... 66 Figura 29. Interfaz de Ingreso de nuevo libro. ......................................................................... 67 Figura 30. Interfaz para eliminar libro. .................................................................................... 67 Figura 31. Interfaz de búsqueda de libros. ............................................................................... 67 Figura 32. Interfaz de Préstamo/Reserva de libros .................................................................. 68 Figura 33. Interfaz Modulo buzón solicitudes. ........................................................................ 68 Figura 34. Figura adquirida del Sprint 3. ................................................................................. 73 Figura 35. Interfaz de Modulo Reportes. ................................................................................. 74 Figura 36. Diseño Lógico de la base de datos. ........................................................................ 76


xiii

ร NDICE DE ANEXOS Anexo 1. Carta de Aceptaciรณn del Proyecto ............................................................................ 90 Anexo 2. Carta de Entrega Recepciรณn ..................................................................................... 91 Anexo 3. Carta de Impacto ...................................................................................................... 92 Anexo 4. Entrevista dirigida al Administrador de la Biblioteca .............................................. 93 Anexo 5. Encuesta dirigida a los estudiantes y docentes de la Unidad Educativa Santo Domingo de los Colorados....................................................................................................... 95 Anexo 6. Historias de Usuario ................................................................................................. 97 Anexo 7. Retrospectiva 1 ....................................................................................................... 102 Anexo 8. Retrospectiva 2 ....................................................................................................... 104 Anexo 9. Retrospectiva 3 ....................................................................................................... 106 Anexo 10. Oficio de entrega de Sprint................................................................................... 108 Anexo 11. Diccionario de datos ............................................................................................. 111


1

1. INTRODUCCIÓN En la actualidad, los centros educativos como colegios, bibliotecas y universidades requieren cumplir sus diferentes procesos con la utilización de sistemas informáticos, debido a que los métodos tradicionales se han sido considerados como poco eficientes y hasta obsoletos por el tiempo que requiere realizarlos, además de la conocida gran evolución y uso de la tecnología en este siglo que hace que el uso de sistemas informáticos en áreas de administración sea más frecuente. Al usar sistemas informáticos ofrece muchos beneficios tanto al bibliotecario como a los usuarios agilizando estos procesos con la facilidad que ofrecen al utilizarlos, disminuyendo la carga de trabajo en el área administrativa de las instituciones antes mencionadas. La implementación del sistema informático para el control de préstamo y reserva de libros en la biblioteca de la Unidad Educativa Santo Domingo de los Colorados brinda información detallada de los recursos bibliográficos específicos a los usuarios que accedan a este sistema desde cualquier dispositivo, así mismo, automatiza los procesos de préstamo y reserva de libros desde cualquier dispositivo con acceso a internet, facilitando la administración de estos procesos y optimizando tiempo, fuerza de trabajo y recursos indispensables en la institución. El desarrollo del presente proyecto de tesis se encuentra sustentado con información bibliográfica extraída de la biblioteca de la” Pontificia Universidad Católica del Ecuador Sede Santo Domingo”, así también de bibliotecas virtuales fidedignas asegurando que dicho trabajo de grado sea respaldado con información confiable. Este proyecto de grado se encuentra constituido de forma ordenada en relación con las siguientes secciones: En la primera sección se presenta la introducción previa al desarrollo del tema principal. En la segunda sección se muestra el planteamiento del problema, la cual encierra los antecedentes, problemática del proyecto, la justificación respectiva mencionando el plan nacional del buen vivir con el que trabaja directamente y los objetivos principales y específicos que se cumplirán en el transcurso del desarrollo del proyecto.


2

En la tercera sección se encuentra establecida por el marco referencial donde se abordan todas las temáticas necesarias para el desarrollo de la investigación. Entre los temas principales se encuentran: ingeniería de software, base de datos, diseño web, administración de biblioteca, procedimientos internos, etc. En la cuarta sección se presenta la metodología de investigación, donde se muestra la población, la muestra, instrumentos y técnicas de recopilación de datos, metodologías de desarrollo, etc. La quinta sección está determinada por el análisis y discusión de los resultados logrados de la investigación, las conclusiones y recomendaciones respectivas obtenidas en el transcurso del desarrollo del proyecto de investigación.


3

2. PLANTEAMIENTO DEL PROBLEMA 2.1. Antecedentes Este proyecto de investigación se ha realizado en la Unidad Educativa “Santo Domingo de los Colorados”, fundada en el año 1983 y ubicada en la cooperativa 17 de diciembre. Ha permanecido como uno de los colegios fiscales más representativos de la provincia Tsáchila por su calidad de enseñanza. Dentro de la institución se encuentran sectores importantes de enseñanza, uno de los más importantes es la biblioteca conformada por más de 600 libros, siendo este uno de los lugares más frecuentes de búsqueda de información y actividades escolares tanto para los estudiantes como para docentes. Hasta la fecha de realizar la presente investigación, se determinó que los diferentes procesos de administración de recursos bibliográficos de la biblioteca como búsqueda, préstamos y reservas, se los realiza manualmente, manteniendo un registro de las actividades realizadas muy extenso. Esta cantidad de procedimientos y registros manuales retrasa muchas veces a estudiantes y docentes en los horarios de clase establecido por la institución, por el tiempo que demora el realizar estos procesos manualmente. La biblioteca de la institución también cuenta con 10 computadores que conforman la biblioteca virtual, todos ellos con acceso a internet, pero aún no poseen un sitio web que les brinde la información detallada necesaria que facilite los procesos de búsqueda, préstamo y reserva de libros específicos en la biblioteca física. Siendo un bien existente que no se aprovecha al máximo en beneficio de la relación estudiantes y biblioteca. 2.2. Problema de investigación En la biblioteca de la Unidad Educativa Santo Domingo de los Colorados según el análisis previo se ha encontrado que no existe un control en algunos de los procesos de administración de los recursos bibliográficos para solucionar la siguiente problemática. El control de préstamos y reserva de libros toma mucho tiempo en realizarse, provocando atrasos en los horarios establecidos tanto como para los alumnos como para el personal docente de la institución.


4

Existe una deficiente y limitada difusión de la información de los recursos bibliográficos existentes en la biblioteca de la institución lo que dificulta la búsqueda de información bibliográfica para los estudiantes y docentes de la institución. Con relación al tema de investigación se desarrolló una pregunta principal que contenga la problemática descrita: ¿Cómo mejorar el control de reservas y préstamos de los recursos bibliográficos en la biblioteca de la Unidad Educativa Santo Domingo de los Colorados? Así mismo se establecieron preguntas directrices que nos permitan conocer en detalle cuales son los aspectos que se necesita para el desarrollo de la investigación del tema propuesto: ¿Cuáles son los procesos para organizar y administrar la información de los recursos bibliográficos de la Unidad Educativa Santo Domingo de los Colorados? ¿Cuáles son las metodologías, los recursos y las herramientas necesarias para crear un sitio web para los usuarios de la biblioteca de la Unidad Educativa Santo Domingo de los Colorados? ¿Cuáles son las funcionalidades que requiere la implementación del sitio web para los procesos de reservas y préstamos de los recursos bibliográficos de la Unidad Educativa Santo Domingo de los Colorados? 2.3. Justificación de la investigación La Unidad Educativa Santo Domingo de los Colorados, siendo uno de los colegios más representativos de la provincia, cuenta con una biblioteca y sala virtual que ofrece sus servicios a sus estudiantes. Cada sección de la biblioteca se encuentra categorizada, es decir organizada por categorías, de manera que facilita la ubicación de recursos bibliográficos específicos que solicitan las personas que la frecuentan (mayormente estudiantes y profesores de la institución).


5

En la presente investigación se concluyó que existe la necesidad de encontrar un espacio donde se presente la información y se realicen procesos de reservas y préstamos de los recursos bibliográficos existentes en la biblioteca de Unidad Educativa Santo Domingo de los Colorados y que además sea accesible a los usuarios independientemente del lugar donde se encuentren, es decir, un sitio web que ofrezca todos estos beneficios. Dentro de la biblioteca, el proceso de búsqueda de libros se limita a las recomendaciones que pueda dar el bibliotecario acerca de un tema en específico, siendo estas recomendaciones vagas y poco certeras para los conocimientos que se buscan. Los procesos de reservas y préstamos de libros se los realiza mediante un registro físico, lo cual atrasa a los estudiantes y docentes en los horarios de clase de la institución. Este proyecto tiene total respaldo y compromiso de la Unidad Educativa Santo Domingo de los Colorados, a través del documento que ha sido entregado y firmado por el rector de la institución Mg. Miguel Vergara, de brindar la información necesaria para el desarrollo del proyecto, apertura que no se da en otras instituciones educativas siendo factible en la recopilación de información necesaria. El proyecto trabaja directamente con el objetivo 4 del Plan Nacional del Buen Vivir el cual establece:” Fortalecer las capacidades y potencialidades de la ciudadanía”, específicamente en la política 4.6 que nos dice: “Promover la interacción recíproca entre la educación, el sector productivo y la investigación científica y tecnología, para la transformación de la matriz productiva y la satisfacción de necesidades”. Haciendo que la información (conocimiento) sea accesible a todas las personas a través de herramientas tecnológicas ofreciendo no solo un beneficio a la institución donde se está implementando, sino también un beneficio al país. El proyecto se realizará con el fin de contribuir con toda la comunidad de estudiantes de la institución, no solamente como una fuente completa, detallada y descriptiva de los recursos bibliográficos de la biblioteca sino también automatizar los servicios de reservas y préstamos de libros para que los usuarios que frecuentan la biblioteca y viven lejos de las instalaciones accedan a esta información desde cualquier lugar con acceso a internet.


6

2.4. Objetivos de investigación Objetivo General. Implementar un Sistema web para el control de reservas y préstamos de libros en la biblioteca de la Unidad Educativa Santo Domingo de los Colorados, período 2017-2018. Objetivos específicos. 

Determinar los procesos para la administración de los recursos bibliográficos de la Unidad Educativa Santo Domingo de los Colorados.

Definir las metodologías, recursos y herramientas necesarias de la implementación de una página web para los usuarios de la biblioteca de la Unidad Educativa Santo Domingo de los Colorados.

Establecer las funcionalidades que requiere la implementación del sitio web para los procesos de reservas y préstamos de los recursos bibliográficos de la Unidad Educativa Santo Domingo de los Colorados.

Desarrollar el sistema web con las funcionalidades específicas por la Unidad Educativa Santo Domingo.


7

3. MARCO REFERENCIAL La siguiente figura es una breve descripciรณn de los temas que se tratarรกn en el marco referencial.

Figura 1. Esquema de contenidos.


8

3.1. Antecedentes Se han realizado una investigación de varios proyectos anteriores referentes al tema propuesto, los cuales son: En el artículo denominado “Las bibliotecas nacionales iberoamericanas en la web 2.0” Curiel, Lucas y Prado 2014, enfoca en aspectos relacionados en este proyecto, al realizar un módulo interactivo entre usuario y administrador de una biblioteca con el uso de la web 2.0, un trabajo colaborativo entre ambas partes para los procesos de las bibliotecas nacionales iberoamericanas como su nombre lo indica. “Los sitios web de las bibliotecas del subsistema de la investigación” Escamilla y Sánchez 2017, guiándose en un cuadro comparativo entre los sitios web de bibliotecas del subsistema de la investigación científica de la Universidad Nacional Autónoma de México con una de las más representativas, la biblioteca conjunta de ciencias de la tierra. Considerando módulos de procesos muy parecidos a los del proyecto propuesto como: intercambio de información de solicitudes, colección de libros (categorización), adquisición y modificación, entre otros. “Arquitectura de sitios web de bibliotecas universitarias: el sistema de bibliotecas de la Universidad Nacional de La lata, Argentina” Corda y Viñas, 2013, hace énfasis en 10 aspectos relevantes de los sistemas web de bibliotecas, entre los cuales se menciona procedimientos implementados en el sistema para la gestión de préstamos y reserva de libros, entre las más parecidas como: capacidad de búsqueda, etiquetado de contenidos, envío de formularios, sistema de navegación y herramientas de navegación. “Implementación de servicios de referencia móvil en la biblioteca de la corte interamericana de Derechos Humanos: el uso de WhatsApp y SMS” Villalobos 2018, en biblioteca se implementa procesos a las aplicaciones móviles de generación de análisis estadísticos que son enviadas a través de WhatsApp, así mismo las herramientas empleadas para el uso de estas tecnologías no requieren de una inversión presupuestaria, otra característica con similitud del presente proyecto.


9

Los proyectos mencionados anteriormente no pueden ser implementados en la institución porque realizan procesos de biblioteca parecidos pero que no son los adecuados por las normativas que se establecen la institución para el desarrollo, recopilando otros requerimientos

y distintos objetivos para cada proyecto; si bien la metodología y las herramientas

son útiles e iguales a las herramientas que se usarán en el presente proyecto, las necesidades son otras lo que permite desarrollar un sistema web original. 3.2. Revisión de la literatura o fundamentos teóricos Ingeniería de Software. Al momento de realizar un software se toman en cuenta las necesidades del cliente, costos, fechas. La ingeniería de software se define como una agrupación de herramientas, procesos y estándares para construir un proyecto, considerando el ciclo de vida acorde al mismo.

Esta ingeniería recoge los requerimientos del cliente como “requerimientos de

usuarios”, se diseña la interfaz y luego se realizan pruebas para poder entregar un producto de calidad de tal manera se tendrá la satisfacción del cliente (Sommerville, 2014). 3.2.1.1. Ciclo de vida. En la ingeniería de software, un concepto de vital importancia es del ciclo de vida del software que es donde se determina el tiempo que se tomará para desarrollar un software. Desde el inicio del desarrollo del proyecto, hasta la última etapa que se denomina entregables; inclusive cuando el software deje de utilizarse, el ciclo de vida, no está limitado solo al desarrollo sino que también se encarga de su evolución y mantenimiento (Sánchez, 2011). Comunicación: antes de iniciar con un proyecto es necesario que exista comunicación entre el jefe del proyecto y el cliente, de tal manera que los desarrolladores del software conozcan cuales son los requerimientos del cliente, para poder comprender las funcionalidades del software para después hacer una planificación acorde para el desarrollo del sistema. Planeación: en esta parte se detalla las actividades técnicas a efectuar en el desarrollo del software, los posibles riesgos, los recursos que serán necesarios utilizar y una programación adecuada tomando en cuenta las necesidades del cliente.


10

Modelado: es tener una idea general de lo que será el software, creando un modelo con la finalidad de tener claro los requerimientos que dio a conocer el cliente al equipo de desarrollo y un diseño acorde al mismo. Construcción: es la parte donde los desarrolladores aplican sus conocimientos de programación utilizando herramientas de desarrollo para tener un software a medida, se hacen pruebas para hallar problemas en el producto que interfieran en la funcionalidad del software. Despliegue: al terminar la codificación del sistema, con sus debidas validaciones, sigue la etapa de entrega del software al cliente, el cual revisa el mismo para verificar que tiene las funcionalidades según sus requerimientos (Pressman, 2010). 3.2.1.2. Paradigma Orientado a Objetos. Paradigma orientado a objetos es una metodología de desarrollo, tiene patrones, teorías. POO tiene una colección de objetos que corresponden a una clase (López, 2014). 3.2.1.2.1 Características de POO. Objetos: sujetos, entidades, objetos que están en el entorno. Clase: colección de objetos que tienen una frecuente estructura y una idéntica función. Métodos: gestiones que efectúan el procedimiento de un objeto. Abstracción: permite unificar las características de un objeto, permite comunicarse con diferentes objetos. Encapsulación: consiente en juntar datos y métodos en un objeto en una sola clase para resguardar el contenido de los datos. Polimorfismo: significa varias formas, esto favorece a que ocurra una rápida programación, ya que, al enviar diferentes datos a una idéntica función, este entiende los valores que recibe y sabe qué hacer, según el comportamiento de diferentes objetos (López, 2014).


11

Herencia: Al existir casos que una clase contenga los mismos datos, métodos, entonces se utiliza la herencia impidiendo escribir nuevamente el código, sino solo heredar que se conoce como clase hija. 3.2.1.3. Modelado. 3.2.1.3.1 Patrón MVC. El patrón Modelo-Vista-Controlador es una arquitectura de diseño que se emplea al desarrollar aplicaciones con interfaz gráfica de usuario, tiene tres partes el modelo es un conjunto de clases reconocidas en el problema, la vista es la interfaz gráfica del usuario y el controlador, es la parte que facilita al usuario a que interactúe con la vista para manejar el modelo que figura (López, 2014). 3.2.1.4. Modelo de desarrollo. En el proceso de elaboración de software tiene que ser de forma profesional, ya que entra una serie de etapas en las cuales el desarrollo del software no solo es la parte de codificación del mismo, sino también documentar el producto desde el análisis de los requerimientos, diseño, construcción, despliegue del software. Dependiendo del modelo de desarrollo que los desarrolladores elijan se va detallando en la documentación. 3.2.1.4.1 Modelos Tradicionales. Los modelos tradicionales fueron planteados para reformar el conflicto que prevalece en el desarrollo de software, dando una organización útil al trabajo de ingeniería de software, son situadas por una planeación. Inician el desarrollo de un proyecto con un riguroso proceso de requerimientos, previamente con etapas de análisis y diseño, con el propósito de garantizar un software de calidad para obtener la satisfacción del cliente (Pressman, 2010).


12

3.2.1.4.1.1 Modelo en Cascada. El modelo en cascada se define para utilizar un plan que tiene que seguir tal cual este especificado, tal como se muestra en la figura 2. Primero se debe planear y programar todas las actividades del proceso antes de iniciar a trabajar con ellas. El resultado de cada fase permanece en documentos que se autorizaron, la fase que continua no puede comenzar sin haber terminado la fase anterior. El equipo de desarrollo deber tener claro los requerimientos del cliente para poder seguir en el desarrollo del producto y terminar en el tiempo definido para entregar el software (Sommerville, 2014). Definición de requerimientos Diseño del sistema y del software Implementación y pruebas de unidad Integración y pruebas del sistema Operación y Mantenimiento Figura 2. Modelo en Cascada. Adaptado de “Ingeniería de Software” por I. Sommerville, 2014, México: Pearson Educación, p.30.

3.2.1.4.1.2 Modelo Incremental. El desarrollo incremental consiste en diseñar una implementación inicial, exponer esta al usuario, después de desarrollar diferentes versiones hasta desarrollar un software acorde a los requerimientos del usuario. Las actividades de especificación, desarrollo y validación están enlazadas unas a otras a través de las tareas (Sommerville, 2014). Cada incremento del sistema tiene funcionalidades que el usuario requiere. Los primeros incrementos del sistema tienen las funciones primordiales, el cliente puede evaluar el desarrollo del sistema en tempranas etapas, o solamente el incremento original puede actualizarse detallando nuevas funciones, para los posteriores incrementos (Sommerville, 2014).


13

Las partes que componen el plan de desarrollo del modelo incremental permiten conocer y evaluar las funcionalidades primordiales en cada incremento, como se muestra en la figura 3. Especificación

Bosquejo de Descripción

Versión Inicial

Desarrollo

Versiones Intermedias

Validación

Versión Final

Figura 3. Desarrollo Incremental. Adaptado de “Ingeniería de Software” por I. Sommerville, 2014. México: Pearson Educación, p.33

3.2.1.4.2 Métodos Agiles. Las metodologías de desarrollo ágil son modelos de desarrollo de software, en el cual los especialistas al ver que las metodologías tradicionales no cumplen satisfactoriamente con nuevos problemas que se presentan en el desarrollo de un software, entonces crean los principios de lo que hoy se conoce como metodologías agiles, que consiste en una entrega rápida del producto (Rosado, Quintero y Meneses, 2012) Estas metodologías tienen como parte primordial la capacidad de respuesta a un cambio que seguir un plan tal cual este especificado por los desarrolladores del software, ya que esta facilidad de trabajo es una ventaja competitiva, que al estar determinados al cambio, esto significa una reducción de precio para el cliente (Figueroa, Solís y Cabrera, 2012). Los métodos agiles trabajan con incrementos para la especificación, el desarrollo y la entrega del software, son eficaces para el diseño de aplicaciones en el cual los requerimientos que efectúe el cliente pueden cambiar durante el proceso de desarrollo. Tienen la determinación de entregar el software lo más rápido posible al cliente, si el cliente expresará nuevos requerimientos estos se incluirán en iteraciones posteriores del software (Sommerville, 2014).


14

3.2.1.4.2.1 Programación Extrema. Esta metodología ágil se concentra en fortalecer las relaciones en los integrantes del equipo de desarrollo como clave para el éxito en el desarrollo de software, iniciando con el trabajo en equipo, preocupándose por el continuo aprendizaje de sus desarrolladores y estableciendo un buen ambiente de trabajo. XP tiene la ideología que es importante las comunicaciones entre todos los integrantes del equipo, dando facilidad a las soluciones implementadas y valor para cambios (Canós, Letelier y Penadés, 2012). XP se fundamenta en un conjunto de principios que se llaman valores que son los que rigen el desarrollo, estos son: comunicación, sencillez, feedback, valentía, respeto. Está dirigido a las personas, tanto a los desarrolladores como a los usuarios, permite soluciones rápidas porque se trabaja con iteraciones pequeñas, teniendo en cuenta los comentarios del cliente, para tener un software que cumpla con los requerimientos dados por el mismo (Álvarez, de las Heras y Lasa, 2012). 3.2.1.4.2.2 Scrum. La metodología Scrum es un marco de trabajo diseñado para obtener la participación eficaz de equipos en proyectos, que usa una combinación de reglas y artefactos y delimita roles necesarios para su correcto funcionamiento. Scrum utiliza un enfoque incremental que tiene como fundamento el control de procesos. Se fundamenta en transparencia, inspección y adaptación; la transparencia, que asegura la visibilidad en el proceso de las cosas que pueden perjudicar el resultado; la inspección, que ayuda a descubrir variaciones en el proceso y la adaptación, que realiza los arreglos pertinentes para minimizar la impresión de las mismas (Navarro, Fernández y Morales, 2013). Es una metodología de desarrollo de software ágil, que consiente cambios, en el cual un cambio es estimado como una oportunidad de mejora, el cliente se incluye en el desarrollo del software. Scrum se basa en los siguientes principios: Inspección y adaptación: Scrum trabaja con iteraciones que se llaman Sprint, durante 1 y 4 semanas. Al finiquitar cada iteración el cliente tendrá un producto entregable. El cliente opinara sobre el producto que se le entrego, con el fin de mejorar el producto con cada incremento.


15

Auto-organización y colaboración: el equipo se ordena con el objetivo de tomar la responsabilidad y tener el espíritu de compromiso que involucra el desarrollo del software. La auto-organización tendrá efecto si el equipo tiene espíritu de equipo, ya que los líderes y el cliente trabajaran colectivamente para el desarrollo del producto. Priorización: es de vital importancia conocer los requerimientos y conocer cuáles serán prioritarios, así no se malgastará tiempo y dinero. Mantener un latido: es importante tener un tiempo que guíe el desarrollo, ya que esto dará un patrón de trabajo y esto ayudara al equipo de desarrollo a trabajar (Álvarez et al., 2012) Según (Álvarez et al, 2012). Scrum utiliza un marco de trabajo que integra una serie de roles, reuniones y de artefactos. Roles en el equipo de Scrum El Product Owner (dueño del equipo de trabajo): es la persona responsable del resultado del producto. Scrum Master: es el que se compromete en que el equipo alcance su rendimiento, ayudando a que se cumpla con el objetivo establecido y de que los principios de Scrum se efectúen. El equipo: son los programadores del software. Los artefactos de Scrum El Product Backlog: un listado que contiene los requisitos del cliente, características del producto, mantenido y priorizado por el Product Owner. Es fundamental que exista una clara priorización de los requisitos, ya que esto determinará el orden en el que el equipo de desarrollo trabajara en el producto. El Sprint Backlog: es la selección de requisitos del Product Backlog para los sprint que son las tareas del equipo de desarrollo para detallar los requisitos del cliente a un lenguaje técnico.


16

El Burndown Chart: es una gráfica en el cual se representa el trabajo aplazado del equipo. Reuniones El Sprint Planning: reunión de trabajo donde se da inicio de cada Sprint, en el cual se determina cual es el objetivo del sprint y las tareas que deben realizar. Revisión del sprint: análisis e inspección del sprint y aplicación del Product Backlog si es preciso (Scrum Manager, 2016). 3.2.1.5. Comparativa Metodologías tradicionales y Metodologías Ágiles. Tabla 1. Comparativa metodologías tradicionales y metodologías ágiles Metodologías tradicionales

Metodologías Ágiles

Predictivos

Adaptivos

Orientado a procesos

Orientado a personas

Proceso rígido

Proceso flexible

Se concibe como un proyecto

Un proyecto es divido en proyectos más pequeños

Escasa comunicación con el cliente

Comunicación constante con el cliente

Entrega de software al terminar el desarrollo

Entregas constantes al cliente

Documentación extensa

Poca documentación

Nota: Adaptado de “Revisión de metodologías ágiles para el desarrollo de software” por A., Navarro, J.,

Fernández, J., Morales. 2013). Universidad Autónoma del Caribe, Barranquilla, Colombia, p.39

En este proyecto utilizaremos metodología ágil ya que, se adapta a cambios que puedan ocurrir en el desarrollo del software, como son los requerimientos adicionales que proponga el cliente, también permite un ambiente de trabajo fluido entre el jefe de trabajo, el cliente y los desarrolladores. Esta metodología tiene la ventaja que utiliza metodología incremental es decir que el cliente puede conocer cómo evoluciona cada función que específico en sus requerimientos. Base de Datos. Base de datos es un almacén organizado de registros, que tiene la finalidad de brindar información de una manera fácil a diferentes usuarios, permitiendo añadir, modificar datos para tomar decisiones. Para diseñar una base de datos se usa un diagrama Entidad-Relación se integra de entidades, relaciones y atributos (Orbegozo, 2014).


17

Según (Reinosa, Maldonado, Muñoz, Damiano y Abrutsky, 2012) las bases de datos están estructuradas por varios componentes que se mencionan en la tabla 2: Tabla 2. Usuarios de la Base de Datos

Usuarios

Características

Administrador de la base de datos

Es el profesional-ingeniero, recibe las especificaciones de equipo de análisis y diseño para su implementación de un sistema gestor base de datos.

Programador de aplicaciones

Conoce los casos que se desarrollaran, de acuerdo al equipo de análisis y diseño, el programador generara las aplicaciones necesarias en el sistema

Usuario final

Estos usuarios interactúan con las aplicaciones programadas por el programador

Nota: Adaptado de “Base de Datos” por E., Reinosa, C., Maldonado, R., Muñoz, L., Damiano, M., Abrutsky,

2012, Argentina: Alfaomega.

3.2.2.1. Lenguaje SQL. SQL Lenguaje de Consulta Estructurado, es un lenguaje diseñado para la comunicación entre usuarios y la base de datos para ejecutar tareas requeridas para solucionar requerimientos tales como adquirir información almacenada, crear nuevos datos, modificar información ya existente (Reinosa et al2012). Según (Reinosa et al, 2012) las sentencias SQL se agrupan por sublenguajes de acuerdo a sus propósitos. DML (Data Manipulation Language): Lenguaje de manipulación de datos, permite SELECT para seleccionar un dato, INSERT para insertar un registro, DELETE para eliminar un dato, UPDATE para actualizar información. DDL (Data Definition Language): lenguaje de definición de datos, permite CREATE, DROP, ALTER las cuales se utilizan para crear, borrar, modificar objetos dentro de la base de datos. DCL (Data Control Language): Lenguaje de control de datos, admite al administrador de la base de datos darles privilegios a los usuarios, los controles de acceso, con las sentencias de GRANT, REVOKE.


18

3.2.2.2. Modelo Entidad-Relación. Este modelo se simboliza mediante un diagrama, fue presentado por Peter P. Chen de los años 70 con el objetivo de usar una representación conceptual de datos y relaciones existentes. De esta manera se simboliza de manera sencilla al entorno tales como son entidades que son objetos que se desee guardar información de la base de datos, las relaciones se asocian entre entidades y los atributos son las características que posee las entidades (Piñeiro, 2013). A continuación, en la figura 4 se muestra el diagrama presentado por Peter P. Chen de la representación conceptual de datos y relaciones existentes.

Figura 4. Esquema E-R para una biblioteca. Adaptado de “Base de datos relacionales y modelado de datos” por J. Piñeiro, 2013, Madrid. España.: Parainfo.

3.2.2.2.1 Mysql Workbench. Es una herramienta para el modelado, diseño, desarrollo, generación y administración de base de datos, integra componentes para hacer modelos entidad-relación, en función de estos genera scrips mysql (Oracle Corporation, 2016). 3.2.2.2.2 Power Designer. SAP Power Designer es una herramienta que tiene un costo, se la utiliza para la gestión de datos y base de datos. Es un software sólido que permite realizar arquitectura de una empresa. Soporta diferentes tipos de modelado de datos, diseño, manipulación y componentes de Bussiness Intelligent (SAP SE, 2014).


19

3.2.2.3. Sistema gestor de base de datos. Son mencionados como un grupo de herramientas que facilitan consultas, uso en general y actualizaciones de una base de datos. Un ejemplo de un SGBD es el de Oracle 11g, que reúne varias herramientas software con las que permitirá estructurar la información dentro de la base de datos (López, Castellano y Ospino, 2013) Según los autores López et al. (2013) las funciones más importantes de un SGBD son: -

Permitir a los usuarios acceder, almacenar y actualizar la información dentro de una base de datos.

-

Garantizar la integridad de los datos.

-

Mantener un sistema de seguridad en el ingreso a la base de datos que garantice el acceso a la información exclusivamente a los usuarios para los que ha sido creado.

-

Permitir la concurrencia, varios usuarios trabajando en una misma base de datos. (pp. 15-16).

3.2.2.3.1 Mysql. Es la base de datos open source más utilizados en el mundo. A través de los años se ha convertido en la opción principal de base de datos para las aplicaciones basadas en la web incluyendo Facebook, Twitter, YouTube, entre otros. (MySQL, 2017). Según López et al. (2013) MYSQL es un gestor de base de datos que es muy usado por ser gratuito, fácil de usar y capaz de administrar gran cantidad de datos, este SGBD implementa el lenguaje de programación SQL (p. 18). 3.2.2.3.2 MariaDB. Es uno de los servidores de bases de datos más populares en el mundo, es gratuito y similar a MySQL debido a que es hecho por ex desarrolladores del mismo, teniendo alta compatibilidad con sus estructuras, interfaces, bibliotecas, etc. Se considera como un reemplazo a MySQL por garantizar su permanencia como open source (software desarrollado y distribuido libremente), también es frecuentemente usado por ser rápido, robusto y escalable con mejoras en relación con MySQL que la hacen versátil en su uso (MariaDB Foundation, 2017).


20

3.2.2.3.3 PostgreSQL. Es un sistema gestor de base de datos open source que cuenta con más de 15 años de desarrollo activo y con una arquitectura que le ha valido una sólida reputación de ser un sistema fiable, manteniendo la integridad de datos y corrección. Tiene la característica de ser altamente escalable tanto en cantidad de datos como en cantidad de usuarios por administrar en una base de datos (PostgreSQL, 2017). 3.2.2.4. Normalización. Es un proceso que se encarga de evaluar y corregir la estructura de tablas en una base de datos con el fin de minimizar la probabilidad de errores y redundancia de datos. La normalización funciona por medio de una serie de etapas llamadas formas normales. Estas 3 etapas se describen como primera forma normal (1NF), segunda forma normal (2NF) y tercera forma normal (3NF) (Coronel, Morris y Rob, 2011). 3.2.2.4.1 Primera forma normal (1NF). En esta primera forma normal se indica que los componentes deben ser atómicos, es decir, que los atributos o conjunto de atributos no se encuentren repetidos o redundantes. Para pasar una relación a 1NF se debe eliminar los atributos que constituyen el grupo repetitivo y crear una nueva relación con los atributos eliminados anteriormente (Piñeiro, 2013). 3.2.2.4.2 Segunda forma normal (2NF). Para pasar a la segunda forma normal, el diseño debe cumplir con la primera forma y también cada atributo que no forme parte de una clave candidata mantiene una dependencia funcional total respecto de dicha clave candidata, es decir, todo atributo debe depender de toda la clave y no solo ser parte de ella (Piñeiro, 2013). 3.2.2.4.3 Tercera forma normal (3NF). Así mismo para pasar a la tercera forma normal se debe cumplir con la segunda forma y debe cumplir con la premisa de que ningún subconjunto de atributos no claves deben tener dependencia funcional entre si (Reinosa, Maldonado, Muñoz, Damiano y Abrutsky 2014).


21

Aplicaciones Web. 3.2.3.1. Arquitectura de aplicaciones Web. 3.2.3.1.1 Arquitectura Cliente Servidor. También conocido como “arquitectura de 2 capas” según Anastopoulos y Romberg (2001) citado por Kappel, Proll, Reich y Retschitzegger (2011), menciona que usa un servidor web para proveer de servicios al cliente (p. 72). La arquitectura cliente /servidor es adecuada particularmente para aplicaciones web simples, en relación con la arquitectura multicapa la cual se utiliza para aplicaciones más exigentes, donde exista acceso a un gran número de clientes frecuentes o que se requiera de procesos más complejos. (Kappel et al., 2011). La figura 5 nos muestra la organización de la arquitectura cliente servidor.

Figura 5. Arquitectura Cliente/Servidor. Adapatado de Web Engineering: The Discipline of Systematic Development of Web Applications por G. Kappel, B. Proll, S. Reich, & W. Retschitzegger, 2011. United States: John Wiley & Sons, pág.73.

3.2.3.1.2 Arquitectura Multicapas. Nos permite organizar una aplicación web con un número arbitrario de capas, Normalmente consiste en 3 capas principales: -

La capa de datos: que provee acceso a la información de la aplicación.

-

La capa de negocios: proporciona la lógica de negocio a la aplicación en una aplicación del servidor.


22

-

La capa de presentación: que nos muestra el resultado de la búsqueda en un formato de salida deseado (Kappel et al, 2011). Las diferencias entre las arquitecturas de 2 capas y multicapas, como se muestra en la

figura 6, están mayormente en cómo se ingresan servicios dentro del servidor de la aplicación, Wu y Zhao (2003) citado por Kapel et al. (2011) describe los servicios de cada arquitectura diferentes pero cada uno en su flujo de trabajo (p. 73).

Figura 6. Arquitectura Multicapas. Adaptado de “Web Engineering: The Discipline of Systematic Development of Web Applications” por G. Kappel, B. Proll, S. Reich, & W. Retschitzegger, 2011, United States: John Wiley & Sons, pág.74.

3.2.3.2. Tipos de aplicaciones web. 3.2.3.2.1 Aplicaciones web estáticas. Son aplicaciones en las que el usuario recibe una página web cuya interacción es casi nula, es decir no realiza ningún tipo de acción ni en la propia página, tampoco genera respuesta alguna por parte del servidor. Es un espacio donde solo se encuentra información que puede estar organizada, detallada, pero de manera “estática”. Este tipo de aplicaciones se los realiza utilizando lenguaje HTML exclusivamente para la organización visual de la información (López, Vara, Verde, Sánchez, Jiménez y De Castro, 2012). Según el autor Beati (2012) menciona que las aplicaciones estáticas nunca cambian su contenido, lo que llegara al navegador del usuario es lo que ha sido escrito en ellas por el diseñador web (p. 7).


23

3.2.3.2.2 Aplicaciones web dinámica. Según López et al. (2012), menciona que la programación de estas aplicaciones se conoce como DHTML (Dynamic HyperText Markup Language) y son aplicaciones en las que existe una interacción del cliente con el recurso recibido por parte del servidor (página web) y produce algún tipo de cambios de formato, creación de elementos, entre otros. Los lenguajes involucrados con el desarrollo de estas aplicaciones incluyen, entre otros, HTML, CSS, Javascript. Este tipo de aplicaciones interactivas son las que más se utilizan actualmente en internet donde la tecnología ha evolucionado mucho más en los últimos años (p. 16). Herramientas de desarrollo web. 3.2.4.1. Editores de código. También llamados como text markers, son simples editores de texto, pero dirigidos al ámbito de la programación. Este tipo de programas permiten identificar el texto escrito, con el lenguaje de programación utilizado, a través de la sintaxis del lenguaje cambiando de color las etiquetas, palabras reservadas, realizando tabulaciones en el texto, etc (López et al, 2012). 3.2.4.1.1 Sublime Text3. Es un sofisticado editor de texto y código fuente, se encuentra disponible en su página principal para descargarlo gratuitamente, pero existe una versión de pago para su uso continuo sin propagandas ni publicidades, aunque la versión gratuita funciona con sus funcionalidades completas. Está escrito en C++ y Python para los plugin, ofrece una gran cantidad de características o beneficios como, fácil organización, multiplataforma, varios lenguajes de programación, plugins, restauración y guardado instantáneo del trabajo, etc (Sublime Text, 2017). 3.2.4.1.2 Notepad. Es uno de los editores de texto para programación más completos que existen, soporta múltiples formatos con colores configurados para cada lenguaje. Es uno de los múltiples editores de pago que podemos encontrar en el mercado (López et al, 2012).


24

3.2.4.2. Lenguajes de programación. 3.2.4.2.1 Front end. 3.2.4.2.1.1 HTML (HypertText Markup Language). También conocido como “lenguaje de marcas de hipertexto” por sus siglas en inglés, es un lenguaje que es interpretado por el navegador web para presentarnos el contenido en pantalla. Es el protagonista sobre el que finalmente radica el resultado final del desarrollo web (Rubiales, 2013). Los documentos HTML no son compilados generando ejecutables, sino que son interpretados por los navegadores web. El texto que tienen la extensión .html tiene la ventaja que es ejecutable en cualquier plataforma o sistema operativo que disponga con un navegador sin ningún problema (Ramos & Ramos, 2011). 3.2.4.2.1.2 Javascript. Es uno de los lenguajes más representativos por su uso para diseño de páginas web dinámicas, se encarga de implementar interactividad y dinamismo al sitio web. Según Rubiales (2013) ahora mismo, es imposible diseñar una página web sin incorporar código Javascript (p. 16). El autor Orós (2013), menciona que JavaScript fue creado por Netscape el cual se introduce directamente en el documento HTML y no necesita ser compilado facilitando la creación de páginas interactivas (p. 73). 3.2.4.2.1.3 CSS (Cascading Style Sheets). Son hojas que tienen una estructura simple y flexible. No demanda grandes conocimientos de programación para trabajar con ellas, posee una estructura muy fácil que define la apariencia de cada grupo de elementos con mucha facilidad cambiando posteriormente su diseño de forma simple y rápida (Orós, 2013). El autor Ramos & Ramos (2011) menciona que es un mecanismo que describe como se muestra un documento en la pantalla. Las CSS separan el contenido de la presentación, con estilos y formatos de página web (p. 55).


25

3.2.4.2.2 Back end. 3.2.4.2.2.1 PHP (Hypertext Preprocessor). Es un lenguaje interpretado que se caracteriza por su versatilidad, robustez y modularidad. Los programas escritos en PHP son directamente incrustados en el código HTML. Es un lenguaje que sigue la corriente open source, tanto el interprete como su código fuente son totalmente accesibles de forma gratuita en la red. Resulta ser un lenguaje muy sencillo de aprender para el principiante y ofrece muchas características avanzadas para profesionales. (PHP, 2017). 3.2.4.2.2.2 JSP (Java Server Pages). Esta tecnología permite el desarrollo de aplicaciones web dinámicas de manera rápida, sencilla que facilita su mantenimiento. Mantiene mucha semejanza con el lenguaje PHP y al hacer uso de esta plataforma hace que exista independencia del sistema operativo donde se ejecute la aplicación web (Oracle, 2016). 3.2.4.2.2.3 ASP.NET. Microsoft provee esta tecnología para el desarrollo web con ayuda del servidor ASP.NET y pertenece al framework de código libre .NET de Microsoft haciendo uso de las funcionalidades que este ofrece. El lenguaje en el que se codifique una aplicación en ASP.NET debe ser compatible con CLR (Common Language Runtime) de manera que las características de seguridad, herencia que posea el CLR se replicarán en la aplicación (Microsoft, 2016). 3.2.4.3. Diseño Web. El diseño corresponde a un estudio exploratorio haciendo uso de técnicas de codificación, cada una de estas estructuras y técnicas sean óptimas para el servicio que se brinde, vinculando la información correspondiente con la página web. El autor Viñas (2013) citado por Leyva, Alarcón, Ortegón (2016) menciona que un buen diseño web permite que el uso del sitio web se facilite en gran manera, entre el diseño y la arquitectura web se distribuye la responsabilidad de que se requiere el menor esfuerzo mental para recorrerse tanto en primera vez como en ocasiones sucesivas, lo que implica mayor rapidez del usuario y una menor tasa de error y abandono (Leyva, Alarcón, Ortegón, 2016).


26

3.2.4.3.1 Responsive Web Design. Consiste en una combinación de diseño, plantillas flexibles y un uso inteligente de reglas de CSS. A medida que el usuario cambie de dispositivo, el sitio debe cambiar automáticamente para adaptarse a la resolución de pantalla (Manso, Cañizares & Febles, 2016). El autor Marcotte, (2010) citado por Manso, Cañizares & Febles (2016) menciona que es un método para diseñar sitios web flexibles, que no se basa únicamente en anchos de pantallas fijos, sino que es capaz de detectar el ancho de pantalla y ajustar el diseño para proveer una experiencia adecuada de visualización en cada dispositivo (p. 103). Una ventaja es que requiere menos esfuerzo y posibilita el mantenimiento futuro nos dice el autor Peterson (2014) citado por Manso, Cañizares y Febles (2016), solo es necesario crear un sitio web que se visualizará de distintos dispositivos, usando el mismo diseño, código y un mismo contenido, además este último se verá correctamente no importando el tamaño de pantalla donde se visualice (p. 104). 3.2.4.3.2 Frameworks de diseño. 3.2.4.3.2.1 Materialize CSS. Es un framework CSS de diseño web creado con principios de Material Design creado por Google. Este framework te permite crear sitios y aplicaciones web haciéndolo visualmente más atractivo y llamativo hacia el usuario. Contiene componentes de HTML y CSS los cuales brindan una interfaz estética y adaptativa al front_end de los sitios web (Materialize, 2017). 3.2.4.3.2.2 Bootstrap. Se trata de un framework de diseño web y móvil adaptativo (responsive design), con librerías de componentes front_end más popular del mundo. Es una herramienta de desarrollo open source con HTML, CSS y JavaScript. Reduce la carga de trabajo ofreciendo gran ayuda hacia el desarrollador con características como amplias funcionalidades y componentes personalizables (Bootstrap, 2017).


27

Control de reserva y préstamos de libros. 3.2.5.1. Biblioteca escolar. Una biblioteca escolar establece como prioridad un principio en el que todas las personas que frecuentan la biblioteca tengan una igualdad de acceso a ella. Un espacio que enseña a los usuarios de la biblioteca (mayormente estudiantes) a regirse con normas o hábitos, el silencio, el orden, sentido de pertenencia, entre otros, que en un futuro les ayudarán a desenvolverse como ciudadanos con responsabilidad y respeto (Lage, 2013). 3.2.5.2. Procedimientos internos. 3.2.5.2.1 Normas. Las normas más importantes para evaluar el desempeño o rendimiento de la biblioteca como institución son las siguientes: 3.2.5.2.1.1 Norma ISO 2789. Información y documentación: Estadísticos internacionales de bibliotecas. “Esta norma orienta a la comunidad bibliotecaria en el mantenimiento de estadísticas con vistas a ser recogidas a nivel internacional”. Dentro de esta norma se describen los datos estadísticos que se recogerán (Madrid, 2012). 3.2.5.2.1.2 Norma ISO 11620. Información y documentación: Indicadores de rendimientos bibliotecarios. “Esta norma trata de la evaluación de cualquier tipo de biblioteca, su objetivo principal es promover la utilización de indicadores de rendimiento en las bibliotecas y contribuir a un mejor conocimiento de las formas adecuadas de medición del mismo.” El principal objetivo de esta norma es el autodiagnóstico, y eventualmente, con limitaciones, comparaciones entre bibliotecas nacionales e internacionales. Incluye una lista de indicadores de rendimiento bibliotecario con su respectiva descripción, que prioritariamente se centran en medir la calidad, eficiencia y eficacia (Madrid, 2012).


28

3.2.5.2.2 Procesos técnicos. 3.2.5.2.2.1 Administración. Es una característica necesaria en todas las organizaciones, la cual permite determinar el nivel de permanencia y competitividad con otras empresas, su principal función es la de realizar los objetivos con máxima calidad, a través de varias técnicas y procedimientos que a su vez optimizan los recursos que dispone la empresa u organización (Münch, 2014). 3.2.5.2.2.2 Control. Es la acción de conducir sistemáticamente varios procesos o secuencia de pasos para llegar o cumplir con una meta determinada. Es parte de las actividades administrativas y permite determinar la verificación de los objetivos mediante una observación cuidadosa de cada paso utilizado en el desarrollo (Montes, Montilla & Mejía, 2014). 3.2.5.2.3 Catálogo. Es una de las partes más importantes en los procedimientos de control y recuperación de información (búsqueda de libros) de una biblioteca sobre sus colecciones (Spedialieri, 2012). El autor Spedialieri (2012) menciona que un catálogo corresponde a las características de los recursos bibliográficos encontrados en diferentes colecciones o materias de una biblioteca (p. 53). 3.2.5.2.4 Colección. Es donde se verifica y se adecua la colección de recursos bibliográficos en relación con las necesidades de los usuarios, o también en función de la institución a la cual pertenece, su alcance y actualización. Reflejando que los libros que se escogen son factibles y serán usado frecuentemente por los usuarios (Madrid, 2012). 3.2.5.3. Procedimientos Externos. 3.2.5.3.1 Uso del catálogo. Tiene como objetivo determinar el nivel de uso de los recursos bibliográficos de acuerdo con el catálogo existente en la biblioteca. Este uso del catálogo da una medida


29

indirecta de la calidad del procesamiento de información, es decir, la organización de la información con su respectivo análisis (Madrid, 2012). 3.2.5.3.2 Circulación de documentos. En este proceso se incluyen los criterios de disponibilidad física y accesibilidad en biblioteca, trabaja directamente con los procesos reserva de libros ya que esa información es directamente proporcional con la circulación de recursos bibliográficos también es determinado por la capacidad de entrega de libros cuando se utiliza el servicio de préstamo en una biblioteca (Madrid, 2012). 3.2.5.3.3 Recuperación de información. Este proceso es el encargado de las búsquedas bibliográficas, son solicitudes o servicios de pregunta-respuesta ya se con el sistema o con la persona encargada de biblioteca. Se evalúa con un criterio de eficiencia, midiendo el tiempo de respuesta y con el criterio de eficacia, relacionado con la capacidad del resultado de la búsqueda importante o pertinente (Madrid, 2012). 3.2.5.3.4 Préstamo. Es uno de los servicios más importantes en una biblioteca escolar el cual permite hacer extensible el servicio que esta brinda, siendo participe de promocionar la cultura con los usuarios que la rodean. Este préstamo perfecciona la optimización del tiempo libre de los estudiantes. En cuanto al beneficio para los docentes se centra en encontrar un ambiente alterno al aula de clase rompiendo estereotipos de enseñanza, extiende el conocimiento del libro de texto a través de diversos ejemplos bibliográficos (Lage, 2013). Para la realización es necesario considerar 3 preguntas, para luego verificar el estado de satisfacción de este servicio en particular: 1. ¿Cómo se realiza? 2. ¿Quién lo realiza? 3. ¿Cuándo lo realiza? (Lage, 2013).


30

3.2.5.3.5 Satisfacción del usuario. Puede incluir todas las actividades y servicios, o parte de ellas, que ofrece la biblioteca donde, a través de opiniones, percepciones, impresionas y expectativas de los usuarios, se genera un diagnóstico, netamente cualitativo, con el que se determinan fortalezas, debilidades y problemas existentes. Estos datos son determinados y analizados a través de datos estadísticos que permiten tener un conocimiento cuantitativo del grado o nivel de satisfacción de usuario (Madrid, 2012).


31

4. METODOLOGÍA DE LA INVESTIGACIÓN 4.1. Diseño/ Tipo de investigación Enfoque de la Investigación. En la presente investigación se utilizará un enfoque mixto que es definido por Hernández, Fernández y Baptista (2014) como el proceso experimental donde se recogen y analizan tanto datos cuantitativos como cualitativos (p. 534). En base a este concepto el proyecto de investigación receptará datos cuantificables con relación a las diversas opiniones del sujeto de investigación. Y cualitativo en el que se recogerá información general de funcionamiento de la institución a través de entrevistas realizadas a la administradora de la biblioteca y rector del colegio. Diseño de investigación. Para el diseño de investigación se ha tomado en cuenta el diseño no experimental debido a que en el desarrollo del presente proyecto no se realizarán manipulaciones de las variables, sino un estudio a partir del comportamiento real de las mismas. Tipo de investigación. Para el desarrollo del presente proyecto de investigación se hará uso de los siguientes tipos de investigación: 4.1.3.1. Investigación descriptiva. Este tipo de investigación se encarga de presentar una interpretación correcta a partir de la realidad y los hechos observados, sin influir en esa realidad. Especifica características relevantes del objeto de estudio agrupando y describiendo información necesaria de la problemática existente, esta información es recogida a través de herramientas como encuestas y entrevistas (Lara, 2013). Este tipo de investigación permitirá presentar información necesaria de manera detallada acerca de la problemática existente y las necesidades importantes del sujeto de estudio.


32

4.1.3.2. Investigación aplicada. La investigación aplicada guarda mucha relación con los el desarrollo de la investigación básica, su principal característica es que se centra en la aplicación, utilización práctica de conocimientos ya existentes, llegando a encontrar soluciones concretas a problemáticas establecidas previamente a través de la ejecución de conocimientos (Lara, 2013). En el presente proyecto la investigación aplicada permitirá hacer uso de los conocimientos de formación profesional para implementar un sistema que solucione una problemática específica. 4.1.3.3. Investigación de campo. También denominada investigación directa, es aquella que se realiza directamente en el lugar y tiempo donde se desarrolla la problemática de la investigación (Lara, 2013). Este tipo de investigación permite relacionarse de manera directa con las personas involucradas, obteniendo información certificada de la problemática por los mismos sujetos y entorno que la conforman. 4.2. Población o Universo Cuando se crea el objetivo de investigación se está determinando implícitamente la población que se desea estudiar, dentro de este objetivo pueden estar inmersas personas, historias clínicas, centros de salud, entre otros. Es decir, que por las características relacionadas con el objetivo de investigación sean necesarios y los seleccionemos para nuestro estudio. (Icart y Pulpón, 2012). La población en la presente investigación es finita. De acuerdo con Icart y Pulpón (2012) una población es finita cuando el investigador tiene un número concreto de elementos necesarios para el estudio e infinita cuando dicho número es desconocido (p. 108). La población se encuentra determinada por 2589 alumnos y 105 docentes de la Unidad Educativa “Santo Domingo de los Colorados” que suman un total de 2694 personas. 4.3. Muestra La muestra nace con la imposibilidad de estudiar a toda la población por su cantidad, tomando un número menor y empleando varias técnicas de muestreo, los resultados obtenidos de esa muestra serán en representación de toda la población. (Icart y Pulpón, 2012).


33

El autor Arias (2012) establece la siguiente fĂłrmula para calcular la muestra: (đ?‘ ∗ đ?‘§ 2 ∗ đ?‘† 2 ) đ?‘›= (đ?‘ ∗ đ?‘’ 2 ) + (đ?‘§ 2 ∗ đ?‘† 2 ) n= TamaĂąo requerido para la muestra. N= PoblaciĂłn (personas de la instituciĂłn que frecuentan la biblioteca: estudiantes y docentes). Z= nivel de confiabilidad de 95 por ciento (valor estĂĄndar de 1.96) S= desviaciĂłn estĂĄndar (el porcentaje de 0.5). e= margen de error aceptado (valor estĂĄndar de 0.05). Para el cĂĄlculo de la muestra en la presente investigaciĂłn y en base a la informaciĂłn provista por la SecretarĂ­a General de la instituciĂłn, existen 2589 alumnos y 105 docentes, sumando un total de 2694 como poblaciĂłn, superando el mĂĄximo de 100 personas para la realizaciĂłn de la fĂłrmula de cĂĄlculo de la muestra. Bibliotecaria/rector, estudiantes/docentes đ?‘›=

(2964 ∗ 1,962 ∗ 0,52 ) (2694 ∗ 0,052 ) + (1,962 ∗ 0,52 ) đ?‘›=

2587,3176 7,6954

đ?‘› = 3.362161 đ?‘› = 336.2161 Concluyendo el tamaĂąo de la muestra = 336 personas. 4.4. TĂŠcnica e Instrumentos de recogida de datos Las tĂŠcnicas que se emplearĂĄn para recabar informaciĂłn en este proyecto de investigaciĂłn son los siguientes: La entrevista, que es una tĂŠcnica que permite recoger informaciĂłn a travĂŠs de preguntas abiertas, cerradas, preguntas de opiniĂłn, semiestructuradas, entre otros (Borda, 2013). Esta tĂŠcnica se emplearĂĄ en la instituciĂłn con el rector de la Unidad Educativa “Santo


34

Domingo de los Colorados” y la administradora de la biblioteca, las preguntas serán abiertas para conseguir la información necesaria para el desarrollo óptimo del sitio web. La encuesta es una de las más usadas en la investigación social aplicada, se encuentra información a través de preguntas que responden temáticas con relación a la problemática del problema, para confirmar la existencia del mismo, y con relación a la posible solución que se ofrece para ese problema, para verificar su beneficio y factibilidad (Cortés, 2012). Se aplicarán encuestas a las personas que frecuentan la biblioteca de la institución: estudiantes y docentes, constatando la existencia de la problemática antes descrita y la factibilidad de la próxima implementación del proyecto. 4.5. Técnicas de análisis de datos Una vez obtenidos los datos necesarios a través de encuestas, se los analizará. Al ser cuantitativos, la técnica más factible es la tabulación de datos y su representación gráfica a través de estadística para su próxima interpretación. Así mismo los datos cualitativos obtenidos de las entrevistas, formarán parte de las funcionalidades del sistema. 4.6. Metodología de desarrollo de software Selección de recursos de desarrollo para la elaboración del software. La selección de los recursos de software que se emplean en la presente investigación se ha elaborado a través de la comparación de diferentes herramientas de desarrollo, se ha realizado el análisis adecuado considerando la dimensión de la presente investigación. 4.6.1.1. Base de datos. Tabla 3. Comparativa entre PostgreSql, MariaDB y SQL Server Características Desarrollo

MySql Michael Stonebraker (University of California at Berkeley) Alto Bajo

PostgreSql Desarrolladores de MySql Bajo Alto

originales

MariaDB Microsoft

Alto Rendimiento Bajo Consumo de recursos Fácil Difícil Fácil Instalación GNU GPL BSD GNU GPL Licencia Nota: Adaptado de “Desarrollo de un sistema de inventario y facturación para la asociación de comerciantes mayoristas” por C., Piñeros., W., Piñeros, 2013. Escuela Politécnica Nacional. Facultad de Ingeniería de Sistemas, Tulcán, Ecuador, p. 26.


35

Con la relación a las características detalladas anteriormente en la tabla comparativa, la base de datos que se ajusta apropiadamente a la presente investigación y que se ha seleccionado para el desarrollo del software es MySql por poseer licencia pública, además es rápido y robusto sistema administrador de Base de Datos que permite de manera eficiente almacenar, buscar, ordenar y recuperar datos. 4.6.1.2. Herramientas de modelo de datos. Tabla 4. Comparativa entre herramientas para modelado de datos Características Plataforma de ejecución Licencia Usabilidad

MySql Workbench Multiplataforma

SAP Power Designer Ejecución únicamente en Windows Software de pago Manejo complejo

Software libre Facilidad de navegación y uso del software Modificación y actualización de Modificación y actualización de Servicios modelos y bases de datos modelos y bases de datos Exportación e importación de Exportación e importación de script SQL script SQL Diagramas ER y Modelo físico de Modelo físico, lógico y datos conceptual de datos Nota: Adaptado de “MySql Worbench Manual”. Oracle Corporation, 2017. Obtenido de https://dev.mysql.com/doc/workbench/en/ .Adaptado de “SAP Power Designer 16.5 SP5”, SAP SE, 2015. Obtenido de https://help.sap.com/doc/saphelp_pd1655_pdweb/16.5.5/enUS/a9/8e52bd864b4a979f1aec79c7c69290/frameset. htm

Para el modelado de datos, se seleccionó el software MySql Workbench, teniendo en cuentas sus características detalladas en la tabla comparativa que, al ser una herramienta libre, se puede instalar en cualquier plataforma y que facilita la vinculación con phpmyadmin que es el que maneja la administración de MySQL para páginas web. 4.6.1.3. Editores de texto. Tabla 5. Comparativa de editores de texto Notepad Es un editor de texto y de código fuente libre con soporte para varios lenguajes de programación.   Se parece al Bloc de notas en cuanto al hecho de que puede editar texto sin formato y de forma  simple  incluye opciones más avanzadas que pueden ser útiles para usuarios avanzados como desarrolladores y programadores Nota: Adaptado de “Sistema de Recolección, Consulta y Estadística RCE” por I., Escamilla., B., Soriano, K., Tapia, 2012. Escuela superior de Ingeniería Mecánica y Eléctrica, D.F, México, p. 38. 

Sublime Text Habilidad de seleccionar múltiples secciones de código. Autoguardado Resaltado de código completamente personalizable


36

El editor de texto que se eligió para el desarrollo del software es Sublime Text ya que, permite visualizar fácilmente la estructura del código con colores para las palabras reservadas, funciones y su sintaxis, posee varios plugins que permiten varias características adicionales como la actualización de la página web mientras se realizan cambios en el código, o también la detección de errores lo cual facilita el trabajo de desarrollo. Tabla 6. Comparativa de lenguajes de programación Características PHP JSP Grupo PHP Sun Microsystems Desarrollador Interpretado Compilado Código Si Si Multiplataforma Si Si Código abierto Nota: Adaptado de “Desarrollo de un sistema de inventario y facturación para la mayoristas” por C.,Piñeros., W., Piñeros, 2013. Escuela Politécnica Nacional. Sistemas, Tulcán, Ecuador, p. 23.

ASP Microsoft Compilado No No asociación de comerciantes Facultad de Ingeniería de

Para la codificación del software se eligió PHP, debido a las diversas características y facilidades que proporciona, tales como su simpleza, la disponibilidad de soporte, fácil inserción con HTML, lo que permite crear front - end y back - end sin preocuparse por errores de compatibilidad, es el más usado por una gran comunidad de programadores para creación de páginas web dinámicas, además por su experiencia en el desarrollo web que la caracteriza. Tabla 7. Comparativa de framework Front-End Materialize CSS

Boostrap

MaterializeCSS es un framework de diseño de  Boostrap es un framework popular en web que emplea enfoque Material Design diseño de aplicaciones. emplea Google en sus proyectos.  Posee una comunidad de desarrollo que  Tiene un diseño sencillo, funcional en múltiples brinda soporte para su uso. plataformas.  Se enfoca en el manejo de sitios web en plataformas móviles.  Crear diseños con Material Design como botones, tarjetas, colecciones, iconos. Nota: Adaptado de “Materialize” por Materialize, 2016. Obtenido en https://materializecss.com/, Adaptado de “Bootstrap” por Bootstrap, 2016. Obtenido de: https://getbootstrap.com/docs/4.1/getting-started/introduction/

El framework que se eligió para la parte de diseño del sistema es MaterialzeCSS, ofrece, un catálogo completo de la documentación de varios componentes que pueden ser implementados en la parte visual, facilitando la parte del front-end en el desarrollo.


37

Análisis de metodologías de desarrollo de software. Previamente, en la sección 3.2.1.4.2 se especificó el empleo de metodologías agiles para el desarrollo del presente proyecto. A continuación, se aborda la comparativa entre dos metodologías agiles, XP y Scrum. Tabla 8. Comparativa entre metodologías Ágiles Características Requisitos del sistema

XP Cliente

Scrum Product Owner

Guía del proceso

Coach

Scrum master

Tracker

Product Owner

Pruebas de funcionamiento

Tester

Equipo de desarrollo

Explicación de lo que el sistema

Historias de usuario

Product Backlog

Pruebas de aceptación

Sprint Backlog

Seguimiento

del

desarrollo

de

trabajo

debe hacer Cumplimiento de requerimientos

Nota: Adaptado de “Diseño de un método ágil de desarrollo de software basado en XP, SRUM, OPENEUP y

validado con la herramienta de análisis 4-DAT” por Gamboa, J., Rosado, A. 2015. Universidad Francisco de Paula Santander (Tesis de grado). Ocaña, Colombia, p. 91.

Se seleccionó el marco de trabajo Scrum ya que esta metodología permite adecuar cambios que necesite el cliente en sus requerimientos, o si solicita nuevos en el transcurso del desarrollo de software. Además, permite un trabajo colaborativo entre el grupo de desarrollo, lo cual ayuda a realizar un software a medida, entregar un producto de calidad así se tendrá la satisfacción del cliente. En la tabla comparativa se muestran características comparativas entre XP y el marco de trabajo Scrum. Scrum. Es una de las metodologías de desarrollo ágil de software. Este método permite construir un producto de forma incremental. El cliente y el equipo de desarrollo son quienes definen que se crea y cuando se crea. El equipo es el que se compromete en la entrega, en la duración del sprint, incluye al cliente en la comprobación. Scrum hace parte esencial al cliente en el proceso de desarrollo del software, permitiéndole realizar una revisión del proceso, con el objetivo que el mismo aporte al desarrollo (Álvarez, de las Heras del Dedo y Lasa, 2012, p 34). El marco técnico de Scrum está formado por:


38

Roles 

El Product Owner

El Scrum Master

El equipo Scrum

Artefactos 

Product Backlog

SprintBacklog

Sprint

Eventos 

Reunión de planificación del sprint (Sprint Planning)

Revision del Sprint (Sprint Review)

Retrospectiva del Sprint (Sprint Retrospective) (Scrum Manager, 2016) Componentes de Scrum. Scrum Master: su trabajo radica en que la metodología de desarrollo del software se

cumpla según el cronograma. su principal objetivo es mejorar la productividad del equipo. Product Owner: es el apoderado del cliente ante el equipo, se encarga de comunicar el enfoque del producto al equipo. Equipo de desarrollo: son las personas que se encargan de desarrollar el producto El Product Backlog es una lista de requisitos del cliente, que a partir del incremento inicial del producto crece y progresa en el transcurso del desarrollo. Es una lista ordenada de todos los requerimientos del cliente. Es la descripción de funcionalidades, mejoras, tecnologías y corrección de errores que deben incorporarse al producto en el sprint. Representa el producto que espera el cliente que debe realizar el equipo (Scrum Manager, 2016,) El Sprint Backlog: Es la lista de las tareas elementales para construir las historias de usuario que se van a realizar en un sprint.


39

El Product Increment: es un producto que tiene nuevas funcionalidades, es decir es el resultado de cada sprint (Álvarez et al., 2012). Proceso de Scrum. El proceso Scrum se divide en dos etapas que son la preparación o Sprint 0 y las iteraciones o Sprints agrupan en entregas. Sprint 0, aquí se define la misión del trabajo, las herramientas que se manejarán y el equipo que trabajaran con ellas para conseguir el producto, tiene algunos objetivos como son: definir las condiciones y el contenido de trabajo. La condición determina el alcance del trabajo en el que interviene recursos, financiación, personas y herramientas. El desarrollo del software se divide en iteraciones o Sprint, cada una de las etapas sigue una serie de reuniones cuya finalidad es garantizar el cumplimiento de las responsabilidades del equipo de desarrollo y el Product Owner. Antes de iniciar se hace un Relase Planing, es la primera reunión que hace el Product Owner con las personas que definen que funcionalidades debe tener el producto. Cada evento tiene una duración fija, si hay algún problema en el Sprint se investigan oportunidades de mejoras. Al iniciar un Sprint, su duración no puede cambiar, ya que el equipo define el tiempo que se demorará, el Product Backlog se realiza como historias de usuario. En el Sprint Planning, se planifica un sprint, esta reunión tiene la finalidad de tener un objetivo claro y simultáneo sobre el trabajo que se debe realizar en cada iteración y con un Sprint Backlog que es la cantidad de actividades que se realizan con el tiempo determinado para el Sprint. SprintBacklog, se encarga del incremento del producto que se tendrá al finalizar el Sprint, se usa una estimación que se la conoce como Planing Poker, con la serie de fibonnaci se utiliza en el Product Backlog. El Sprint tiene como finalidad desarrollar el Product Increment (incremento al producto), es decir lo que se está desarrollando más el sprint actual.


40

Únicamente el Product Owner es quien puede cancelar un Sprint, si el equipo determina que no va a poder concluir un Sprint, no se cancela, el alcance del sprint puede ser ajustado con el Product Owner, aun cuando ya se ha empezado con el Sprint. En caso de que ya no se quiera desarrollar el producto este se aborta. Sprint Revisión (Sprint Review), el equipo de desarrollo revisa el trabajo realizado con el Product Owner, aquí se revisa las funcionalidades que se desarrollaron en el Sprint, se detalla que elementos del Product Backlog ya se concluyeron. El Product Backlog puede ser afectado por el Product Owner para realizar cambios en el software, además de indicar lo que se hizo, también añade actividades por realizar y lo que se presentará la próxima reunión y que los interesados conozcan que la metodología va avanzando con las funcionalidades que índica el cliente. Retrospectiva del negocio (Sprint Retrospective), al terminar con la revisión del sprint el equipo se reunirá para buscar la mejora continua en el proceso de desarrollo del software (Álvarez et al., 2012).


41

5. RESULTADOS 5.1. Análisis y Discusión de los resultados Entrevista dirigida a la administradora de biblioteca de la Unidad Educativa “Santo Domingo de los Colorados”. Como resultado de la aplicación de la entrevista (Ver anexo 2). Que se realizó al Lic. José Plaza administrador de biblioteca de la Unidad Educativa se obtuvo. Pregunta 1. ¿Cuáles son los usuarios que frecuentan la biblioteca? Respuesta: Actualmente acuden a la biblioteca estudiantes, profesores, padres de familia Pregunta 2. Mencione la diferencia de servicios que se brinda a los usuarios mencionados, si existiere alguna. Respuesta: Si existen diferencias porque cada una tiene diferente dificultad en la obtención de los resultados que requiere su investigación Pregunta 3. ¿Cómo se manejan los usuarios en biblioteca, que actividades realizan? Respuesta: Solicitan libros algunos estudiantes, profesores, padres de familia Pregunta 4. ¿Con qué frecuencia recurren los usuarios a la biblioteca? Respuesta: 2 por cada 10 estudiantes Pregunta 5. ¿Cuáles son los procesos que se realizan con más frecuencia en biblioteca? Respuesta: Los procesos más frecuentes son: Ingreso de libros al inventario, Registro del uso de recursos didácticos Pregunta 6. ¿Cuánto tiempo dura aproximadamente cada uno de los procesos mencionados? Respuesta: 3 minutos Pregunta 7. ¿Cómo se documenta o registra la entrada y salida de libros en biblioteca? Respuesta: Se tiene un libro de registro para anotar el nombre del estudiante y el paralelo el cual pertenece el usuario


42

Pregunta 8. ¿Cuáles son los requerimientos necesarios para que un docente o alumno pueda sacar un libro? Respuesta: Presentar su carnet, en todo caso la firma de un docente a cargo de la entrega del libro Pregunta 9. ¿La información de los libros en biblioteca es accesible para las personas que frecuentan la misma? Respuesta: No existe un sistema que nos permita tener los libros a disposición Pregunta 10. ¿Poseen los encargados de biblioteca una aplicación o sitio web que gestione procesos de préstamo y reservas de libros? Respuesta: No, estamos en proceso 5.1.1.1. Discusión de los resultados en la entrevista. Una vez realizada la entrevista al encargado del departamento de biblioteca Lic. José Plaza, se pudieron establecer varias conclusiones y necesidades que el departamento requiere. Se determinó que los usuarios más frecuentes en la biblioteca de la unidad educativa son los alumnos, docentes y padres de familia en ciertas horas entre la semana laboral (pregunta 1) entonces se conoce las personas que harán uso del sistema próximo a desarrollarse, así también como las actividades que cada uno de estos usuarios realiza (pregunta 3) para tener una visión general de los servicios principales que el mismo debe ofrecer. Con relación a la pregunta 4 se determinó la frecuencia con la que dichos usuarios recurren a biblioteca, lo que nos ayuda a entender que si se implementa un sistema que automatiza procesos en biblioteca, tendrá un alcance frecuente en sus usuarios. En la pregunta 7 se menciona que los procesos de salida, ingreso y de almacenamiento/registros de libros no se encuentran automatizados y que tienen una duración extensa independientemente. En la pregunta 8 se establece parte de la validación para que un usuario pueda realizar los procesos antes mencionados y en pregunta 9 y 10, se confirma la problemática que se estableció desde un principio en el proyecto de investigación.


43

Encuestados a estudiantes y docentes de la Unidad Educativa “Santo Domingo de los Colorados”. A través de la aplicación de las encuestas (Ver anexo 3) realizadas a los estudiantes y docentes de la Unidad Educativa “Santo Domingo de los Colorados” se recabó información necesaria para la continuación del presente proyecto, los resultados de las mismas se muestran a continuación. 1. ¿Cree usted que los procesos en biblioteca de préstamo y reserva de libros, es realizado de manera rápida y adecuada? Tabla 9. Resultados de la encuesta pregunta 1 Variable

Frecuencia

Si

104

No

232

TOTAL

336

Figura 7. Porcentajes de respuestas de la pregunta 1.

Análisis: De acuerdo con los datos obtenidos, observamos en la figura 7 que el 69% de la población menciona que los procesos de préstamo y reserva de libros en biblioteca, no se realizan de manera rápida y adecuada, lo que afirma la problemática de la investigación donde establece que los procesos de reserva y préstamo necesitan mejorarse en beneficio de la comunidad estudiantil.


44

2. ¿Es fácil para usted buscar un libro entre todos los existentes en biblioteca? Tabla 10. Resultados de la encuesta pregunta 2 Variable

Frecuencia

Si

131

No

205

TOTAL

336

Figura 8. Porcentajes de respuestas de la pregunta 2.

Análisis: De los datos obtenidos en la encuesta, se muestra en la figura 8 que el 61% de los encuestados menciona que NO es fácil buscar un libro entre todos los existentes en biblioteca, creando así un argumento favorable para el desarrollo del sistema.


45

3. ¿Existe un catálogo que ayude a la búsqueda libros existentes en la biblioteca de la institución?

Tabla 11. Resultados de la encuesta pregunta 3 Variable

Frecuencia

Si

161

No

175

TOTAL

336

Figura 9. Porcentajes de respuestas de la pregunta 3.

Análisis: Según los resultados datos adquiridos, la figura 9 muestra que el 52% de la población menciona que NO existe un catálogo de libros existentes en la biblioteca que se encuentre disponible para ayudar a la búsqueda de los mismos, fortaleciendo la factibilidad del desarrollo del sistema.


46

4. ¿Los computadores dentro de la biblioteca facilitan de alguna manera la búsqueda de información de libros? Tabla 12. Resultados de la encuesta pregunta 4 Variable

Frecuencia

Si

287

No

49

TOTAL

336

Figura 10. Porcentajes de respuestas de la pregunta 4.

Análisis: Tomando en cuenta los resultados obtenidos de la encuesta aplicada, la figura 10 muestra que el 85% de la población menciona que los computadores que se encuentran dentro de biblioteca facilitan la búsqueda de información de libros, lo cual establece que es una herramienta frecuente que ayuda a la búsqueda de libros tanto para estudiantes como docentes.


47

5. ¿Ha realizado alguna vez alguna actividad/transacciones desde un dispositivo móvil o computador? Tabla 13. Resultados de la encuesta pregunta 5 Variable

Frecuencia

Si

203

No

133

TOTAL

336

Figura 11. Porcentajes de respuestas de la pregunta 5.

Análisis: De acuerdo con los datos adquiridos a través de la encuesta, la figura 11 muestra el 61% de la población menciona que alguna vez ha realizado alguna transacción o actividad desde un dispositivo móvil o computador, conociendo que el uso de estos dispositivos es frecuente en la comunidad colegial y que de ser implementado un sistema informático tendrían una idea principal o experiencia al usarlo.


48

6. Si su respuesta es “SI” en la pregunta anterior, seleccione que actividad/transacción ha realizado desde un dispositivo móvil o computador. Tabla 14. Resultados de la encuesta pregunta 6 Variable

Frecuencia

Cursos Online (Inglés, certificaciones):

114

Compra por internet (Gear best, banggood, mercado libre)

33

Llenar formularios (Redes sociales)

56

TOTAL

203

Figura 12. Porcentajes de respuestas de la pregunta 6.

Análisis: A través de los datos adquiridos por medio de la encuesta, en la figura 12 nos muestra que las personas que respondieron “SI” (203 personas) han manipulado algún dispositivo móvil o computador con acceso a internet. El 56% del total (108 personas) han realizado frecuentemente cursos online, y el 46% del total (95 personas) se ha enfocado en compras en internet o llenar formularios por lo que tienen conocimientos básicos del manejo de sistemas informáticos. Por otra parte, las personas que contestaron “NO” (33 personas) recibirán adjunto al sistema un manual de usuario que permite una capacitación rápida de la funcionalidad del sistema para que usuarios nuevos igualen sus conocimientos.


49

7. ¿Crees que es necesario aplicar la tecnología informática como sitios web, aplicaciones, etc. para facilitar procesos en cualquier empresa o institución? Tabla 15. Resultados de la encuesta pregunta 7 Variable

Porcentaje de frecuencia

Si

245

No

91

TOTAL

336

Figura 13. Porcentajes de respuestas de la pregunta 7.

Análisis: Según los datos adquiridos por medio de la encuesta, la figura 13 muestra que el 73% de los encuestados menciona que, SI es necesario aplicar la tecnología informática para facilitar los procesos en una empresa o institución, lo cual da un argumento propicio para el desarrollo del sistema.


50

8. ¿Crees que un sitio web puede ser una herramienta más dinámica o llamativa para la búsqueda de información para los estudiantes? Tabla 16. Resultados de la encuesta pregunta 8 Variable

Frecuencia

Si

307

No

29

TOTAL

336

Figura 14. Porcentajes de respuestas de la pregunta 8.

Análisis: Con los datos obtenidos de la encuesta, la figura 14 muestra que el 91% de la población menciona que, si ayudará el desarrollo de un sitio web ya que facilita la búsqueda de libros en la biblioteca, de tal manera que se agilizará la búsqueda de libros en la biblioteca y se optimizará los procesos de reserva y préstamos.


51

9. ¿Estaría de acuerdo con la implementación de un sitio web que muestre todos los libros existentes en biblioteca y que permita realizar reservas y préstamos de libros? Tabla 17. Resultados de la encuesta pregunta 9 Variable

Frecuencia

Si

297

No

39

TOTAL

336

Figura 15. Porcentajes de respuestas de la pregunta 9.

Análisis: Con los datos adquiridos en la encuesta aplicada, la figura 15 muestra que el 88% de la población menciona que si está de acuerdo con la implementación de un sitio web para buscar libros y poder hacer reservas y préstamos de libros de una manera eficiente y se optimizará el tiempo y los recursos utilizados para estos procesos.


52

10. ¿Preferiría realizar las solicitudes de préstamo y reserva de libros en biblioteca a través de un computador o dispositivo móvil? Tabla 18. Resultados de la encuesta pregunta 10 Variable

Porcentaje de frecuencia

Si

273

No

63

TOTAL

336

Figura 16. Porcentajes de respuestas de la pregunta 10.

Análisis: Con los resultados recabados por medio de la encesta, la figura 16 muestra que el 81% de la población menciona que SI preferiría realizar las solicitudes de préstamo y reserva de libros en biblioteca a través de un computador, ya que el sistema web ayudar a optimizar el tiempo en realizar los procesos antes mencionados.


53

5.1.2.1. Discusión de los resultados obtenidos en la encuesta. Los resultados obtenidos en la encuesta nos muestran que es necesario implementar un sistema para automatizar los procesos que se dan en la biblioteca de tal manera se beneficiara el usuario ya que podrá hacer préstamo y reserva de libros de una manera más eficiente. 5.2. Aplicación de la metodología de desarrollo de Software Planificación. 5.2.1.1. Realease Planning. La primera reunión que se hizo fue un Realease Planning con el Product Owner, en la cual se determinaron los roles del equipo de trabajo que estarán implicados en el desarrollo del producto, se estableció que si un sprint falla no se buscará culpables, solo oportunidades para mejorar. Finalmente se especificó que los roles del equipo de trabajo son los siguientes: 5.2.1.2. Roles. Tabla 19. Roles en el equipo Scrum Product Owner Scrum Master Equipo de desarrollo

Roles en el Equipo Scrum Lic. José Plaza Mg. Luis Ulloa Sr. Marco Maridueña Srta. Karen Zapata

El Product Owner es la persona encargada de la biblioteca, para tomar decisiones pertinentes y que conoce lo que necesita en su lugar de trabajo. 5.2.1.3. Eventos de Scrum. 5.2.1.4. Sprint 1. 5.2.1.4.1 Sprint Planning. En la reunión con el Product Owner se determinó todas las funcionalidades del producto (Ver anexo 6). La duración de cada Sprint será de cuatro semanas para elaborar las historias de usuario asignadas para cada Sprint.


54 Tabla 20. Product Backlog. Product Backlog Número 1

Historia Página principal

Prioridad 100

Estimación 8

2

Login

100

13

3

Usuario

95

21

4

Biblioteca

95

21

5

Servicio (préstamo/reserva)

90

13

6

Buzón

90

8

7

Reportes

85

21

Nota: Versión final del Product Backlog.

Para la estimación de las historias de usuario se eligió una valoración basada en complejidad (tabla 20), se efectuó con la métrica puntos de historia, con la técnica Planing Poker en la escala de Fibonacci 0,0.5,1,2,3,5,8,13,21, etc. La planificación antes mencionada se la realizó antes de comenzar con cada Sprint en donde se elige las historias de usuario que integran en los Sprint Backlog, la prioridad que consideró el Product Owner (tabla 21). Tabla 21. Sprint Backlog 1 Sprint Asignado

1

Estimación

50

Tareas de ingeniería

Estimación

Estado

Crear diseño para la página principal y el Login con HTML5 y MaterializeCSS

4

Realizado

Modelado de la Base de datos con Mysql

5

Realizado

Validar diseño de la Base de datos

3

Realizado

Conexión de Mysql y PHP

4

Realizado

Programación para formularios Login

7

Realizado

Programación de mensajes de error con Javascript

2

Realizado

Encriptaciones de contraseñas con Hash

6

Realizado

Programación de formularios de menú usuario

7

Realizado

Programación de validaciones con Javascript

3

Realizado

Verificación de validaciones en la Base de datos

4

Realizado

Verificación de escenarios de pruebas

5

Realizado

Nota: Sprint Backlog del Sprint 1.


55

5.2.1.4.1.1 Burndown Chart Sprint 1.

2

2

15/12/2017

3

14/12/2017

3

13/12/2017

3

12/12/2017

1

11/12/2017

04/12/2017

2

08/12/2017

01/12/2017

2

07/12/2017

30/11/2017

2

06/12/2017

29/11/2017

28/11/2017

27/11/2017

24/11/2017

2

23/11/2017

2

22/11/2017

21/11/2017

4

05/12/2017

50

20/11/2017

Estimación Complejidad

SPRINT 1

Estimación

Tabla 22. Burdown Chart Sprint 1

1

2

2

4 5

2 1

0 0

Tareas de ingeniería

Crear diseño para la página principal y el Login con HTML5 y MaterializeCSS Modelado de la Base de datos con Mysql Validar diseño de la Base de datos Conexión de Mysql y PHP Programación para formularios Login Programación de mensajes de error con Javascript Encriptaciones de contraseñas Programación de formularios de menú usuario Programación de validaciones con Javascript Verificación de validaciones en la Base de datos Verificación de escenarios de pruebas Restante Estimado

5

1

2

3 4 7

2 1

2 2

2

2

2

6 7 3

1

4

2 1

5 50 50

48 47

45 45

43 42

40 40

38 37

36 35

34 33

32 31

30 29

28 27

25 25

22 22

19 19

16 16

14 13

11 11

8 8

3

Nota: Última Versión del Burdown chart Sprint.

55


56

En la tabla 22 y figura 17 se muestra el avance de las tareas de ingenierĂ­a realizadas en el cronograma establecido en el Sprint 1.

GrĂĄfico Burndown Sprint 1 60

50

TĂ­tulo del eje

40

30 Restante 20

Estimado

10

0

Figura 17. Figura adquirida del Sprint 1.

56


57

5.2.1.4.1.2 Desarrollo del Sprint 1. Para establecer cuantas historias de usuario se elaboraron en cada Sprint se hizo una reunión con el Product Owner y el equipo de desarrollo, de acuerdo a los requerimientos de cada historia se determinó el desarrollo de 3 Sprint que finalizaron con un producto funcional el que fue aceptado en cada una de las reuniones con el Product Owner. Posteriormente se visualiza cada Sprint, detallando la funcionalidad del sistema en una captura de pantalla del sistema, y las conclusiones que se obtuvo en las reuniones con el Product Owner. La primera historia de usuario se enfoca en la pantalla principal del sistema, teniendo en cuenta que el Product Owner, solicitó fotos e información general de la institución para los usuarios que utilicen el sistema, como se muestra en la figura 18. La segunda historia de usuario trata del Login de usuarios para acceder al sistema, según los requerimientos del Product Owner, el bibliotecario tiene todos los privilegios para manejar el sistema o usuario (estudiantes/docentes) que puede realizar el proceso de préstamo/ reserva de libros que existen en la biblioteca, como se muestra en la figura 19. La tercera historia se denomina “usuario”. Según las funcionalidades que determino el Product Owner, se estableció las tareas de ingeniería necesarias para el desarrollo en cuanto al ingreso, modificación, búsqueda y eliminación de los datos del usuario que el bibliotecario puede realizar, como se muestra en la figura 20, 21, 22,23. Al terminar el desarrollo el Sprint 1, se llamó a una reunión para mostrar la funcionalidad del mismo, el Product Owner estuvo de acuerdo con el desarrollo.


58

Figura 18. Interfaz pรกgina principal.

Figura 19. Interfaz de la pรกgina de Login.

Figura 20. Interfaz del ingreso de nuevo usuario.


59

Figura 21. Interfaz de modificar usuario.

Figura 22. Interfaz de BĂşsqueda.

Figura 23. Interfaz para eliminar usuario.


60

5.2.1.4.1.3 Sprint Retrospective 1. La retrospectiva del Sprint 1 se efectúa con el Master Scrum, al finalizar la organización y desarrollo del Sprint 1, tal como se muestra en la tabla 23, 24,25. 5.2.1.4.1.4 Pruebas de Aceptación Sprint. Las pruebas de aceptación se hicieron por Sprint, con las historias de usuario (Ver anexo 6). Tabla 23. Prueba de Aceptación 1 Prueba de Aceptación 1 Código: 001 Nombre caso de prueba: Página principal Modulo/sección a evaluar. Página principal

Historia de usuario asociada: 1

Descripción: en esta sección el bibliotecario verifica sus requerimientos para la pantalla principal del sistema Pre-condiciones  Añadir fotografías de la institución.  Añadir botones para mostrar información de la institución. Pasos y condiciones de ejecución  Ninguna Resultado esperado Se despliega la página principal del sistema según los requerimientos del Product Owner Estado de prueba Errores asociados: Ninguno Acción final: Los usuarios ingresan a la página principal del sistema

Éxito Si

Fallo No


61 Tabla 24. Prueba de Aceptación 2 Prueba de Aceptación 2 Código: 002 Nombre caso de prueba: Login Modulo/sección a evaluar: Ingreso al sistema

Historia de usuario asociada: 2

Descripción: en esta sección los usuarios verifican sus requerimientos Pre-condiciones  El usuario debe tener su usuario y contraseña fijado.  El usuario debe tener los privilegios para insertar nuevos usuarios. Pasos y condiciones de ejecución  El usuario tiene acceso según sus privilegios  El usuario ingresa al sistema Resultado esperado  Se ingresa al sistema de acuerdo a los privilegios que determino el administrador Estado de prueba Éxito Si Errores asociados: Ninguno

Fallo No

Acción final: Los usuarios pueden entrar al sistema con usuario y contraseña fijados

Tabla 25. Prueba de Aceptación 3 Prueba de Aceptación 3 Código: 003 Nombre caso de prueba: Ingresar, Modificar, Buscar y Eliminar usuario Modulo/sección a evaluar. Modulo usuario

Historia de usuario asociada: 3

Descripción: En esta sección el administrador puede ingresar, modificar, buscar, eliminar información de los usuarios. Pre-condiciones  El administrador debe estar logueado  El administrador debe tener la información de los usuarios Pasos y condiciones de ejecución  Ninguna Resultado esperado  El administrador debe ingresar al sistema (username, contraseña)  El administrador puede ingresar, modificar, buscar, eliminar información de los usuarios.  Se ingresa la información de los usuarios Estado de prueba

Éxito Si

Fallo No

Errores asociados: Ninguno Acción final: La información que ingrese, modifique o elimine el administrador se queda guardado en la base de datos


62

5.2.1.4.2 Sprint 2. 5.2.1.4.2.1 Sprint Planning 2. En la reunión con el Product Owner se determinó todas las funcionalidades del producto como se muestra en la tabla 26 (Ver anexo 6). 5.2.1.4.2.2 Sprint Backlog 2. Tabla 26. Sprint Backlog 2 Sprint Asignado

2

Estimación

50

Tareas de ingeniería

Estimación

Estado

Modelado de la Base de datos con Mysql

7

Realizado

Validar diseño de la Base de datos

5

Realizado

Conexión de Mysql y PHP

3

Realizado

Programación de validaciones

4

Realizado

Programación de mensajes de error con Javascript

7

Realizado

Encriptaciones de contraseñas con Hash

3

Realizado

Programación de formularios de menú biblioteca, servicios y buzón

6

Realizado

Programación de validaciones con Javascript

7

Realizado

Verificación de validaciones en la Base de datos

4

Realizado

Verificación de escenarios de pruebas

4

Realizado

Nota: Sprint Backlog del Sprint 2.


63

5.2.1.4.2.3 Burdown Chart Sprint 2.

2 2

2

6 5

2 2 3

16/01/2018

2

15/01/2018

3

12/01/2018

11/01/2018

3

10/01/2018

3

09/01/2018

2

08/01/2018

2

05/01/2018

03/01/2018

3

04/01/2018

02/01/2018

2

29/12/2017

2 1

28/12/2017

2

27/12/2017

2

26/12/2017

20/12/2017

3

22/12/2017

19/12/2017

7 5 3 4 7

21/12/2017

18/12/2017

Estimación Complejidad

SPRINT 2

Estimación

Tabla 27. Burdown Chart Sprint 2

Tareas de ingeniería

Modelado de la Base de datos con Mysql Validar diseño de la Base de datos Conexión de Mysql y PHP Programación de validaciones Programación de mensajes de error con Javascript Encriptaciones de contraseñas 50 Programación de formularios de menú biblioteca, servicios y buzón Programación de validaciones con Javascript Verificación de validaciones en la Base de datos Verificación de escenarios de pruebas Restante Estimado Nota: Última Versión del Burdown chart Sprint.

3

2

2

3 6

3

7 4 4 50 50

47 47

45 44

43 42

40 40

37 37

35 34

33 32

31 30

28 28

26 25

24 23

21 21

18 18

15 15

12 12

10 9

8 7

2 0 0

63


64

En la tabla 27 y figura 24 se mencionan el avance de las tareas de ingenierĂ­a realizadas en el cronograma establecido en el Sprint 2.

GrĂĄfico Burndown Sprint 2 60

50

TĂ­tulo del eje

40

30 Restante Estimado 20

10

0

Figura 24. Figura adquirida del Sprint 2.

64


65

5.2.1.4.3

Desarrollo del Sprint 2.

La primera historia de usuario consiste en biblioteca. Según las funcionalidades que determino el Product Owner, se estableció las tareas de ingeniería necesarias para el desarrollo, en cuanto al ingreso el Product Owner solicito que se añada campos de acuerdo a la normativa de la biblioteca., modificación, búsqueda y eliminación de la información de los libros existentes, lo realiza el bibliotecario que es el administrador del sistema, tal como se muestra en las figuras 25, 26, 27, 28, 29, 30,31. La segunda historia el usuario tiene servicios de préstamo/reserva de libros con su usuario y contraseña que le corresponde, según la búsqueda en la lista de libros que el sistema posee, tal como se muestra en la figura 32. La última historia de usuario buzón como se muestra en la figura 33, en el cual el bibliotecario gestiona las solicitudes de libros que son generadas por los usuarios para hacer uso del servicio de préstamo/reserva. Al terminar el desarrollo el Sprint 2, se llamó a una reunión para mostrar la funcionalidad del mismo, el Product Owner estuvo de acuerdo con el desarrollo.

Figura 25. Interfaz de Ingreso categoría.


66

Figura 26. Interfaz para eliminar categorĂ­a.

Figura 27. Interfaz para Ingresar autor.

Figura 28. Interfaz para eliminar autor.


67

Figura 29. Interfaz de Ingreso de nuevo libro.

Figura 30. Interfaz para eliminar libro.

Figura 31. Interfaz de bĂşsqueda de libros.


68

Figura 32. Interfaz de PrĂŠstamo/Reserva de libros

Figura 33. Interfaz Modulo buzĂłn solicitudes.


69

5.2.1.4.3.1 Retrospective Sprint 2. La retrospectiva del Sprint 2 se efectúa con el Master Scrum, al finalizar la organización y desarrollo del Sprint 2, tal como se muestra en la tabla 28, 29,30. 5.2.1.4.3.2 Prueba de aceptación. Las pruebas de aceptación se hicieron por Sprint, con las historias de usuario (Ver anexo 6). Tabla 28. Prueba de Aceptación 4 Prueba de Aceptación 4 Código: 004 Nombre caso de prueba: Ingresar, modificar, buscar, eliminar libro Modulo/sección a evaluar: biblioteca

Historia de usuario asociada: 4

Descripción: En esta sección el bibliotecario puede ingresar, modificar, buscar, eliminar libro Pre-condiciones  El administrador debe estar logueado  El administrador debe tener la información de los libros Pasos y condiciones de ejecución  Ninguna Resultado esperado  El administrador debe ingresar al sistema (username, contraseña)  El administrador puede ingresar, modificar, buscar, eliminar libro  Se ingresa la información de los libros Estado de prueba

Éxito Si

Errores asociados: Ninguno Acción final: La información que gestiona el administrador se guarda en la base de datos

Fallo No


70 Tabla 29. Prueba de aceptación 5 Prueba de Aceptación 5 Código: 005 Nombre caso de prueba: Servicios (préstamo/reserva) Modulo/sección a evaluar.

Historia de usuario asociada: 5

Descripción: En esta sección el usuario genera una solicitud al buzón del administrador para el proceso de préstamo/reserva de libros. Pre-condiciones  El usuario general debe estar logueado  El usuario general realiza el proceso de préstamo/servicio Pasos y condiciones de ejecución  Ninguna Resultado esperado  El usuario general puede generar solicitudes una vez que ingrese al sistema. Éxito Estado de prueba Si

Fallo No

Errores asociados: Ninguno Acción final: En esta sección el usuario genera una solicitud para el proceso de préstamo/reserva de libros.

Tabla 30. Prueba de aceptación 6 Prueba de Aceptación 6 Código: 006 Nombre caso de prueba: Buzón Modulo/sección a evaluar.

Historia de usuario asociada: 6

Descripción: En esta sección el administrador gestiona las solicitudes que envían los usuarios Pre-condiciones  El administrador debe estar logueado  El usuario genera las solicitudes Pasos y condiciones de ejecución  Ninguna Resultado esperado  El administrador puede gestionar las solicitudes Estado de prueba

Éxito Si

Errores asociados: Ninguno Acción final: El bibliotecario recibe y gestionar las solicitudes que envían los usuarios.

Fallo No


71

5.2.1.4.4 Sprint 3. 5.2.1.4.4.1 Sprint Planning 3. En la reunión con el Product Owner se determinó todas las funcionalidades del producto como se muestra en la tabla 31 (Ver Anexo 6). 5.2.1.4.4.2 Sprint Backlog 3. Tabla 31. Sprint Backlog 3 Sprint Asignado

3

Estimación

21

Tareas de ingeniería

Estimación

Estado

Programación de mensajes de error con Javascript

7

Realizado

Programación de formularios de reportes

6

Realizado

Programación de validaciones con Javascript

7

Realizado

Verificación de validaciones en la Base de datos

4

Realizado

Verificación de escenarios de pruebas

4

Realizado

Nota: Sprint Backlog del Sprint 3.


72

5.2.1.4.4.3 Burdown Chart Sprint 3.

23/01/2018

24/01/2018

3

22/01/2018

18/01/2018

2 1

12/01/2018

17/01/2018

Estimación Complejidad

SPRINT 3

Estimación

Tabla 32. Burdown Chart Sprint 3

2 2 2 2

2 0 0

Tareas de ingeniería

Programación de mensajes de error con Javascript Programación de reportes Programación de validaciones con Javascript Verificación de validaciones en la Base de datos Verificación de escenarios de pruebas Restante Estimado Nota: Última Versión del Burdown chart Sprint. Fuente. Investigación de campo.

2 7 4 4 4 21 21

18 17

15 14

3 2

10 11

2 2 6 6

72


73

En la tabla 32 y figura 34 se mencionan el avance de las tareas de ingeniería realizadas en el cronograma establecido en el S print 3.

Gráfico Burndown Sprint 3 25

Título del eje

20

15 Restante Estimado 10

5

0 Estimación

17/01/2018

18/01/2018

19/01/2018

22/01/2018

23/01/2018

24/01/2018

Figura 34. Figura adquirida del Sprint 3.

73


74

5.2.1.4.4.4 Desarrollo del Sprint 3. En la primera historia de usuario, el bibliotecario controla datos estadísticos del uso (préstamo/reserva) de libros por categoría, autor, titulo por usuario, tal como se muestra en la figura 35.

Figura 35. Interfaz de Modulo Reportes.

5.2.1.4.5 Retrospective Sprint 3. La retrospectiva del Sprint 1 se efectúa con el Master Scrum, al finalizar la organización y desarrollo del Sprint 3. 5.2.1.4.5.1 Pruebas de Aceptación. Las pruebas de aceptación se hicieron por Sprint, con las historias de usuario como se muestra en la tabla 33 (Ver anexo 6).


75 Tabla 33. Prueba de aceptación 7 Prueba de Aceptación 7 Código: 007 Nombre caso de prueba: Reportes Modulo/sección a evaluar. Reportes

Historia de usuario asociada: 7

Descripción: En esta sección el administrador genera los reportes de los libros que pueda necesitar Pre-condiciones  El administrador debe estar logueado Pasos y condiciones de ejecución  Ninguna Resultado esperado  El administrador puede acceder a reportes Estado de prueba Errores asociados: Ninguno Acción final: El administrador puede acceder a reportes.

Éxito Si

Fallo No


76

5.2.1.5. Diseño relacional de la base de datos. El diseño de la base de datos se lo realizo con tablas de cada módulo por separado, se conectaban con relaciones internas de manera lógica, una vez que las relaciones estaban establecidas dentro del módulo se procedió a realizar las relaciones de los siguientes módulos creciendo así el número de tablas y finalmente integrándolas en un solo diseño que es el que conforma la base de datos del sistema como se muestra en la figura 36. Al contar con un buen diseño de base de datos se tiene integridad en los datos, se disminuye la redundancia de datos, lo cual nos evita que al buscar información el sistema nos proyecte información errada, ya que una base de datos es el pilar del sistema. Con este diseño se realizó el diccionario de datos. Al tener una buena base de datos se disminuye los errores que se puedan presentar en las funcionalidades en el sistema.

Figura 36. Diseño Lógico de la base de datos.


77

Para el desarrollo de la aplicaciĂłn web se empleĂł PHP que es el lenguaje mĂĄs usado para este tipo de aplicaciones, el cual facilita y tambiĂŠn ofrece muchas caracterĂ­sticas que pueden ser empleadas para crea las funcionalidades del sistema. Para el diseĂąo de interfaces del sistema o front-end se utilizĂł materializecss, un framework que brinda documentaciĂłn especifica de cĂłdigo para implementar un entorno amigable del sistema con el usuario, es decir la creaciĂłn de diseĂąo web. Se implementĂł el diseĂąo responsivo en cada una de las interfaces para que se adapten a distintas resoluciones y navegadores y dispositivos donde se visualizarĂĄ, tambiĂŠn se implementĂł en el sistema modales, tarjetas, botones, iconos para el diseĂąo de las interfaces. 5.3. AnĂĄlisis de Impacto Los impactos en las disertaciones de grado son fundamentales para determinar si el proyecto ha tenido impacto positivo o negativo despuĂŠs de su implementaciĂłn. Existen diferentes factores que establecen el impacto que se ubica en un grupo determinado, en el caso a la poblaciĂłn de la instituciĂłn. En la siguiente tabla se establecen los diferentes niveles de impacto y los indicadores numĂŠricos de cada uno como se muestra en la tabla 34: Nivel de impacto= total de sumatorio dividido para la cantidad de indicadores Formula ďƒ NI =

∑ đ?‘ 0

Tabla 34. Niveles de impacto Nivel DescripciĂłn -3 Impacto de alto nivel negativo -2 Impacto de medio nivel negativo -1 Impacto de bajo nivel negativo 0 No hay impacto 1 Impacto de bajo nivel positivo 2 Impacto de medio nivel positivo 3 Impacto de alto nivel positivo Nota: Adaptado de “MetodologĂ­as para el trabajo de grado: Tesis y Proyectosâ€? por M.A. Posso, 2009, Ibarra, p. 196.

Para determinar el nivel de impacto general se analiza el impacto social, tecnolĂłgico, ambiental y econĂłmico.


78

Impacto Social. Tabla 35. Impacto Social Nivel de impacto -3

Indicadores

-2

-1

0

1

Confidencialidad de la información.

2

3

X

Accesibilidad en la información

X

Total

2

Sumatoria Σ Total

Σ=5

Resultado

𝑁𝐼 = 2 = 2.5 Impacto de alto nivel positivo

3

5

Análisis La confidencialidad de la información es muy importante para la institución, ya que se tiene datos de los usuarios como cédula, correo electrónico que deben ser restringidas para el público.

Impacto Tecnológico. Tabla 36. Impacto tecnológico Nivel de impacto Indicadores

-3

-2

-1

0

1

2

3

Migración al uso de la tecnología.

X

Automatización de procesos

X

Diseño y desarrollo de interfaz

X

Generar reportes con formato establecido

X

Total

12

Sumatoria Σ Total

Σ = 12

Resultado

𝑁𝐼 = 4 = 3 Impacto de alto nivel positivo

12


79

AnĂĄlisis Todos los procesos que se manejan en la biblioteca se realizan de forma manual, y al momento de migrar, es un impacto muy fuerte porque se necesita capacitar al bibliotecario que estarĂĄ directamente involucrado con el uso del sistema. Automatizar procesos es muy importante porque se mejora tiempos, calidad y fidelidad de la informaciĂłn. Los reportes son muy importantes tenerlos a la mano cuando se solicite a la persona encargada de la biblioteca. Impacto Ambiental. Tabla 37. Impacto ambiental Nivel de impacto Indicadores

-3

-2

-1

0

1

2

Hojas impresas

3 X

Materiales de oficina

X

Total

2

Sumatoria ÎŁ Total

ÎŁ=5

Resultado

đ?‘ đ??ź = 2 = 2.5 Impacto de alto nivel positivo

3

5

AnĂĄlisis Se reduce el uso de materiales de oficina como esferos, lĂĄpices, hojas, carpetas entre otras porque el sistema automatiza los procesos que se hacĂ­an manualmente.


80

Impacto econĂłmico. Tabla 38. Impacto econĂłmico Nivel de impacto -3

Indicadores

-2

-1

0

1

2

3

DisminuciĂłn de recursos a utilizar en suministros de oficina

X

Total

3

Sumatoria ÎŁ Total

ÎŁ=3

Resultado

đ?‘ đ??ź = 1 = 3 Impacto de alto nivel positivo

3

AnĂĄlisis El ahorro en los recursos que se utilizaban en la biblioteca como lĂĄpices, esferos, cuadernos, carpetas, entre otros serĂĄ un impacto positivo ya que esos recursos podrĂĄn utilizarlos en diferentes actividades.

Impacto General. Tabla 39. Impacto General Nivel de impacto Indicadores

-3

-2

-1

0

1

2

3

Impacto TecnolĂłgico

X

Impacto Social

X

Impacto Ambiental

X

Impacto econĂłmico

X

Total

2

Sumatoria ÎŁ Total

ÎŁ = 11

Resultado

đ?‘ đ??ź = 4 = 2.8 Impacto de alto nivel positivo

11

9


81

Análisis El sistema web para el control de reservas y préstamos de libros en la biblioteca, con el análisis del impacto tecnológico, social, ambiental y económico se determina que tiene un impacto de alto nivel positivo, ya que se automatizan todos los procesos manuales para realizar una migración a nivel tecnológico. Para constancia se firma la carta de impacto.


82

6. CONCLUSIONES 

Con la implementación del sistema web, los procesos referentes al préstamo y reserva de libros son automatizados, lo cual disminuye el tiempo que el administrador de la biblioteca invierte en realizarlos, mejora los procesos de la biblioteca.

Según el análisis realizado previamente se escogió el marco de trabajo SCRUM porque dirige apropiadamente un proyecto que posee requerimientos cambiantes en los cuales se requiere un trabajo ágil, esto se consigue con el trabajo de sprint cortos de desarrollo que se obtiene entregables funcionales del software definitivo.

Los requerimientos y políticas de funcionamiento de biblioteca provista en la Unidad Educativa Santo Domingo de los Colorados fueron la guía principal para determinar las funcionalidades del sistema.

Para el diseño de las interfaces se utilizó MaterializeCSS porque es un framework moderno que se basa en Material Design. En la parte visual brinda un gran número de colores, efectos, entre otras características para un fácil manejo para el usuario.

El lenguaje de programación que se seleccionó fue PHP, ya que el desarrollo con PHP es versátil, ágil y también cuenta con un gran número de funcionalidades que facilitaron el desarrollo del sistema.


83

7. RECOMENDACIONES 

Se recomienda una comunicación continua con el cliente debido a que proporciona información relevante para el desarrollo del sistema, y a su vez permite hacer un sistema de acuerdo a los requerimientos del cliente, así se podrá terminar con éxito el proyecto.

Elegir la metodología de desarrollo de software teniendo en cuenta los aspectos más importantes del proyecto como son: los requerimientos del cliente, dimensión del proyecto.

Comprender la lógica de la institución es importante ya que así se podrá plasmar con claridad las funcionalidades que requiera el cliente.

Las diferentes herramientas enfocadas al desarrollo de software deben ser escogidas en base a los requerimientos del cliente, para satisfacer sus necesidades apropiadamente y tener éxito en la culminación del proyecto.


84

8. REFERENCIAS BIBLIOGRÁFICAS Álvarez, A., de las Heras del Dedo, R., Lasa, C. (2012). Métodos ágiles y Scrum. Madrid: Anaya Multimedia. Beati, H. (2012). PHP: Creación de páginas web dinámicas. Buenos Aires, Argentina: Alfaomega. Bootstrap.

(2016).

Bootstrap.

Recuperado

el

19

de

octubre

de

2017,

de

https://getbootstrap.com/docs/4.1/getting-started/introduction/ Bootstrap. (2017). Bootstrap. Recuperado el 20 de octubre de 2017, de. Obtenido de http://getbootstrap.com/ C., Piñeros., W., Piñeros, (2013). Desarrollo de un sistema de inventario y facturación para la asociación de comerciantes mayoristas. Escuela Politécnica Nacional. Facultad de Ingeniería de Sistemas, Tulcán, Ecuador, p26. Canós, J., Letelier, P., Penadés, C. (2012). Metodologías Ágiles en el Desarrollo de Software. Universidad Politécnica de Valencia. Coronel, C., Morris, S. & Rob, P (2011). Bases de datos: Diseño, implementación y administración. Naucalpan, México: Cengage Learning. Cortés, M. (2012). Metodología de la investigación. México: Trillas. Dimes, T. (2015). Conceptos Básicos de Scrum: Desarrollo de software Agile y manejo de proyectos Agile. Babelcube, Inc. Figueroa, R., Solís, C., Cabrera, A. (2012). Metodologías tradicionales vs. Metodologías ágiles (Tesis de grado). Universidad Técnica Particular de Loja, Escuela de Ciencias en Computación, Loja, Ecuador. Gamboa, J., Rosado, A. (2015). Diseño de un método ágil de desarrollo de software basado en XP, SRUM, OPENEUP y validado con la herramienta de análisis 4-DAT (Tesis de grado). Universidad Francisco de Paula Santander, Ocaña. Colombia. Hernández, R., Fernández, C., & Baptista, M. (2014). Metodología de la Investigación.


85

México: McGrawHill. I., Escamilla., B., Soriano, K., Tapia. (2012). Sistema de Recolección, Consulta y Estadística RCE. Escuela superior de Ingeniería Mecánica y Eléctrica, México D.F: Alfaomega. Icart, M., & Pulpón, A. (2012). Como elaborar y presentar un proyecto de investigación, una tesina y una tesis. Barcelona, España: Alfaomega.3 Kappel, G., Proll, b., Reich, S, & Retschitzegger, W. (2011). Web Engineering: The Discipline of Systematic Development of Web Applications. United States: John Wiley & Sons. Lague, J. (2013). Bibliotecas escolares, lectura y educación. Barcelona, España: Octaedro. Lara, E. (2013). Fundamentos de Investigación: Un enfoque por competencias. México: Alfaomega. Leyva, K., Alarcón, L. & Ortegón, L. (2016). Exploración del diseño y arquitectura web. Aplicación a páginas electrónicas del sector bancario desde la perspectiva del usuario. Revista EAN. 80, pp.41-58. López, I., Castellano, M, & Ospino, R. (2013). Bases de Datos. México D.F.: Alfaomega. López, L. (2014). Metodología de la programación orientada a objetos. México: Alfaomega. Madrid, I. (2012). Evaluación de Bibliotecas: Su Necesidad e Importancia. Información, Cultura

y

Sociedad.

(6).

103-113.

Obtenido

de

http://www.scielo.org.ar/pdf/ics/n6/n6a08.pdf Manso, Y., Cañizares, R. & Febles, J. (2016). Diseño adaptativo para la plataforma educativa ZERA. Revista Cubana de Ciencias Informáticas, 10(2). 100-105. Obtenido de http://scielo.sld.cu/pdf/rcci/v10n2/rcci08216.pdf MariaDB Foundation. (2017). About MariaDB. Obtenido de: https://mariadb.org/about/ Martínez, C. (2012). Administración de Organizaciones. Bogotá, Colombia: Facultad de Ciencias Económicas. Martínez, C. (2012). Estadística y muestreo. Bogotá, Colombia: ECOE.


86

Materialize, (2016). Materialize Obtenido en https://materializecss.com/ Materialize. (2017). Sobre Materialize. Obtenido de http://materializecss.com/about.html Montes, C., Montilla, O., & Mejía, E. (2014). Control y evaluación de la gestión organizacional. Bogotá, Colombia: Alfaomega. Münch, L. (2014). Administración: Gestión organizacional, enfoques y proceso administrativo. Naucalpan de Juárez: Pearson. MySQL. (2017). Acerca de MySQL. Recuperado el 26 de octubre de 2017, de http://mysql.com/about/ Navarro, A., Fernández, J., Morales, J. (2013). Revisión de metodologías ágiles para el desarrollo de software. Universidad Autónoma del Caribe. Oracle

Corporation

(2016).

Mysql

Workbench.

Obtenido

de

https://www.mysql.com/products/workbench/ Oracle

Corporation.(2017).

MySql

Worbench

Manual.

Obtenido

de

https://dev.mysql.com/doc/workbench/en/ .Adaptado de “SAP Power Designer 16.5 SP5”, Orbegozo, B. (2014). Gestión de bases de datos con SQL MYSQL y Access. Mèxico: Alfaomega. Orós, J. (2013). Guía de práctica de XHTML, JavaScript y CSS. Madrid, España: Alfaomega. PHP. (2017). ¿Qué es PHP? Obtenido de http://php.net/manual/es/intro-whatis.php Piñeiro, J. (2013). Base de datos relacionales y modelado de datos. España: Parainfo. PostgreSQL. (2017). About. Obtenido de https://www.postgresql.org/about/ Pressman, R. (2010). Ingeniería de Software. Un Enfoque Práctico. México, D.F: McGRAW-HILL INTERAMERICANA. Ramos, M. & Ramos, A. (2011). Aplicaciones Web. Madrid, España: Paraninfo. Reinosa, E., Maldonado, C., Muñoz, R., Damiano, L., Abrutsky, M. (2012). Base de Datos.


87

Argentina. Buenos Aires: Alfaomega. Rosado, A., Quintero, C., Muñoz, C. (2012). Desarrollo ágil de software aplicando programación

extrema.

Ingenio,

5(1),

24-29.

Obtenido

de

http://revistas.ufpso.edu.com/index.php/ringenio/article/view/23/10 Rubiales, M. (2013). HTML5, CSS3 y JavaScript. Madrid, España: Anaya Multimedia. SAP

SE.

(2015).

Obtenido

de

https://help.sap.com/doc/saphelp_pd1655_pdweb/16.5.5/enUS/a9/8e52bd864b4a979f 1aec79c7c69290/frameset.htm SAP

SE.

(2015).

SAP

PowerDesigner.

Obtenido

de:

https://www.sap.com/products/powerdesigner-data-modeling-tools.html Scrum

Manager

Guia

de

formación

Version

2.6-

Julio

2016.

Obtenido

de:

http://www.scrummanager.net/bok/index.php?title=Scrum_Manager_BoK Sommerville, I. (2014). Ingeniería de Software. México: Pearson Educación. Spedialieri, G. (2012). Los objetivos del catálogo. Información, Cultura y Sociedad. (14). 5169. Obtenido de http://www.scielo.org.ar/pdf/ics/n15/n15a04.pdf Sublime Text. (2017). SublimeText News. Obtenido de https://www.sublimetext.com/blog/


88

9. GLOSARIO FRAMEWORK Un framework es un conjunto de conceptos, prácticas que sirven de soporte para la solución de un problema. HTML5 HTML 5 es la última versión de HTML. Es un lenguaje de programación que empela un conjunto de etiquetas que describen el lugar en donde están los elementos en una página web. HTTP Http es un protocolo de transferencia de hipertexto que facilita la comunicación en la WWW. HTTPS Es un protocolo de aplicación basado en el protocolo HTTP, que tiene como finalidad la transferencia segura de información. JAVASCRIPT Lenguaje de programación que es utilizado principalmente en el desarrollo de páginas web dinámicas. Los navegadores web interpretan el código JavaScrip añadido en las páginas web. JQUEARY Es una librería de Javascrip para el desarrollo web y permite corregir el comportamiento de las páginas web. MATRIALIZE CSS Es un framework de diseño web. Tiene diferentes elementos tales como plantillas, efectos, tipografía, que se desprenden en un apartado visual. Mysql Mysql es un sistema de gestión de base de datos open source, se basa en el leguaje de consulta estructurado.


89

OPEN SOURCE Este término se refiere al software de código abierto, es decir que existe libre acceso al código fuente de un software. PHP PHP Preprocesor Hypertext es un lenguaje de programación de código abierto del lado del servidor, se emplea mucho en el desarrollo de aplicaciones web dinámicas. SCRUM Metodología de desarrollo ágil que se adecúa con facilidad a los cambios que se puedan producir en los requerimientos por parte del cliente. WEBHOSTING Permite a las personas a desarrollar aplicaciones web y hacerlas accesibles vía web.


90

10. ANEXOS Anexo 1. Carta de Aceptaciรณn del Proyecto


91

Anexo 2. Carta de Entrega Recepciรณn


92

Anexo 3. Carta de Impacto


93

Anexo 4. Entrevista dirigida al Administrador de la Biblioteca

Entrevista

Dirigida a al Licenciado José Plaza, administrador de biblioteca de la Unidad Educativa “Santo Domingo de los Colorados” La presente entrevista tiene como objetivo recopilar información acerca de los procesos correspondientes con relación al área administrativa y control de reserva y préstamo de libros en la biblioteca de la institución, con el fin de especificar los requerimientos del desarrollo del proyecto. 1. ¿Cuáles son los usuarios que frecuentan la biblioteca?

2. Mencione la diferencia de servicios que se brinda a los usuarios mencionados, si existiere alguna.

3. ¿Cómo se manejan los usuarios en biblioteca, que actividades realizan?

4. ¿Con qué frecuencia recurren los usuarios a la biblioteca?

5. ¿Cuáles son los procesos que se realizan con más frecuencia en biblioteca?

6. ¿Cuánto tiempo dura aproximadamente cada uno de los procesos mencionados?


94

7. ¿Cómo se documenta o registra la entrada y salida de libros en biblioteca?

8. ¿Cuáles son los requerimientos necesarios para que un docente o alumno pueda sacar un libro?

9. ¿La información de los libros en biblioteca es accesible para las personas que frecuentan la misma?

10. ¿Poseen los encargados de biblioteca una aplicación o sitio web que gestione procesos de préstamo y reservas de libros?


95

Anexo 5. Encuesta dirigida a los estudiantes y docentes de la Unidad Educativa Santo Domingo de los Colorados

Encuesta

Instrucciones: Lea detenidamente cada pregunta y marque con una ‘X’ la casilla que crea correcta. La información obtenida será de gran importancia.

1.

¿Cree usted que los procesos en biblioteca de préstamo y reserva de libros, es realizado de manera rápida y adecuada?

 Si  No 2.

¿Es fácil para usted buscar un libro entre todos los existentes en biblioteca?

 Si  No 3.

¿Existe un catálogo de los libros existentes en la biblioteca de la institución?

 Si  No 4.

¿Los computadores dentro de la biblioteca facilitan de alguna manera la búsqueda de información de libros?

 Si  No 5.  Si

¿Ha realizado alguna vez alguna actividades/transacciones desde un dispositivo movil o computador?


96

 No 6.

Si su respuesta es “SI” en la pregunta anterior, seleccione que actividad/transacción ha realizado desde un dispositivo móvil o computador.

 Cursos Online (Inglés, certificaciones)  Compra por internet (Gear best, banggood, mercado libre)  Llenar formularios (Redes sociales) 7.

¿Crees que es necesario aplicar la tecnología informática como sitios web, aplicaciones, etc para facilitar procesos en cualquier empresa o institución?

 Si  No 8.

¿Crees que un sitio web puede ser una herramienta mas dinámica o llamativa para la búsqueda de informacion para los estudiantes?

 Si  No 9.

¿Estaría de acuerdo con la implementación de un sitio web que muestre todos los libros existentes en biblioteca y que permita realizar reservas y prestamos de libros?

 Si  No 10. ¿ Preferiría realizar las solicitudes de préstamo y reserva de libros en biblioteca a través de un computador o dispositivo móvil?  Si  No


97

Anexo 6. Historias de Usuario Historia de Usuario Número: 1

Usuario: Bibliotecario

Nombre historia: Página principal Prioridad en negocio: 100

Riesgo en desarrollo: Media

Puntos estimados: 8

Sprint asignado: 1

Programador responsable: Marcos Maridueña, Karen Zapata Descripción: COMO bibliotecaria QUIERO visualizar información general de la institución PARA difundir a la comunidad educativa. Escenario de prueba: DADO la visualización de información general de la institución, CUANDO de click en el botón de “Acerca”, ENTONCES me mostrará información detallada de la institución. DADO la visualización de información general de la institución, CUANDO de click en el botón de “Contactos”, ENTONCES mostrará información necesaria para contactar a la institución. DADO la visualización de información general de la institución, CUANDO de click en el botón “Inicio”, ENTONCES me mostrará la página de principal del sistema.

Historia de Usuario Número: 2

Usuario: Todos los usuarios

Nombre historia: Login Prioridad en negocio: 100

Riesgo en desarrollo: Alta

Puntos estimados: 21

Iteración asignada: 1

Programador responsable: Marcos Maridueña, Karen Zapata Descripción: COMO usuario QUIERO ingresar mi username y contraseña personal PARA acceder al sistema con los respectivos privilegios. Escenario de prueba: DADO el ingreso de username y contraseña CUANDO dé click en el botón ingresar ENTONCES accederé a la página principal con los privilegios respectivos. DADO el ingreso de usuario y contraseña incompleto y/o incorrecto CUANDO dé click en el botón ingresar ENTONCES se marcarán los campos.


98 Historia de Usuario Número: 3

Usuario: Bibliotecario

Nombre historia: Usuario Prioridad en negocio: 95

Riesgo en desarrollo: Alta

Puntos estimados: 21

Iteración asignada: 1

Programador responsable: Marcos Maridueña, Karen Zapata Descripción: COMO bibliotecario QUIERO gestionar datos de los usuarios (ingresar, modificar, buscar y eliminar) PARA controlar la información existente y nueva. Escenario de prueba: DADO el ingreso de la información del usuario CUANDO dé click en el botón “Ingresar” ENTONCES se mostrará una notificación “Usuario ingresado exitosamente”. DADO el ingreso de la información incompleto y/o incorrecto del usuario CUANDO haga click en el botón “Ingresar” ENTONCES se mostrará una notificación “El usuario no ha ingresado exitosamente”. DADO la selección y edición de la información del usuario CUANDO haga click en el botón “Modificar” ENTONCES se mostrará una notificación “Usuario modificado”. DADO la selección y edición incompleta y/o incorrecto de la información del usuario CUANDO haga click en el botón “Modificar” ENTONCES se resaltarán los campos. DADO el ingreso del nombre de usuario CUANDO haga click en el botón “Buscar” ENTONCES mostrará al usuario deseado. DADO el ingreso incompleto y/o erróneo del nombre de usuario CUANDO haga click en el botón “Buscar” ENTONCES mostrará al usuario deseado. DADO la selección del usuario CUANDO haga click en el botón “Eliminar” ENTONCES mostrará un botón de confirmación para eliminar usuario. DADO la selección del usuario CUANDO haga click en el botón “Confirmación Eliminar” ENTONCES se cambiará su estado a inactivo y no se mostrará en la lista de usuarios.


99 Historia de Usuario Número: 4

Usuario: Bibliotecario

Nombre historia: Biblioteca Prioridad en negocio: 95

Riesgo en desarrollo: Alta

Puntos estimados: 21

Iteración asignada: 2

Programador responsable: Marcos Maridueña, Karen Zapata Descripción: COMO bibliotecario QUIERO gestionar datos de los libros (ingresar, modificar, buscar y eliminar) PARA mostrar y gestionar información de los libros en biblioteca. Escenario de prueba: DADO el ingreso de la categoría del libro CUANDO dé click en el botón “Ingresar Categoría” ENTONCES se agregará a la lista de categorías existentes. DADO el ingreso incompleto y/o erróneo de la categoría del libro CUANDO dé click en el botón “Ingresar” “ENTONCES mostrara una notificación de “no se ingresó la categoría”. DADO la selección de la categoría específica CUANDO dé click en el botón “Eliminar Categoría” ENTONCES se inhabilitará la categoría seleccionada. DADO el ingreso de la información del autor CUANDO dé click en el botón “Ingresar Autor” ENTONCES se agregará a la lista de autores existentes. DADO el ingreso incompleto y/o erróneo de autores del libro CUANDO dé click en el botón “Ingresar Autor” ENTONCES mostrara una notificación de “Información errónea”. DADO la selección del autor específico CUANDO dé click en el botón “Eliminar” ENTONCES se inhabilitará el autor seleccionado. DADO ingreso de la información de cada libro CUANDO dé click en el botón “Ingresar libro” ENTONCES se agregará a la lista de libros existentes. DADO ingreso erróneo o incompleto de la información de cada libro CUANDO dé click en el botón “Ingresar libro” ENTONCES se marcarán los campos. DADO la selección del libro específico CUANDO dé click en el botón “Eliminar” ENTONCES aparecerá una notificación “Eliminado” el libro seleccionado se inhabilitará y no se mostrará en la lista de libros. DADO el ingreso del nombre del libro, categoría o autor CUANDO tipee las primeras letras ENTONCES encontrara al usuario deseado.


100 Historia de Usuario Número: 5

Usuario: Usuario General

Nombre historia: Servicios (Préstamo/reservas) Prioridad en negocio: 90

Riesgo en desarrollo: Media

Puntos estimados: 21

Iteración asignada: 2

Programador responsable: Marcos Maridueña, Karen Zapata Descripción: COMO usuario general QUIERO acceder a los servicios de préstamo y reserva de libros dentro del sistema PARA agilizar y facilitar estos procesos. Escenario de prueba: DADO el ingreso de la información del servicio CUANDO le dé click en el botón “Solicitar” ENTONCES crearé una solicitud.

Historia de Usuario Número: 6

Usuario: Bibliotecaria

Nombre historia: Buzón Prioridad en negocio: 90

Riesgo en desarrollo: Media

Puntos estimados: 8

Iteración asignada: 2

Programador responsable: Marcos Maridueña, Karen Zapata Descripción: COMO bibliotecario QUIERO conocer las solicitudes existentes PARA despacharlas fácilmente con la información necesaria. Escenario de prueba: DADO el ingreso de información de la solicitud CUANDO dé click en el botón “Solicitar” ENTONCES se generará una solicitud. DADO el ingreso de información incompleta o errónea de la solicitud CUANDO dé click en el botón “Solicitar” ENTONCES se marcarán los campos.


101 Historia de Usuario Número: 7

Usuario: Bibliotecario

Nombre historia: Reportes Prioridad en negocio: 85

Riesgo en desarrollo: Bajo

Puntos estimados: 13

Iteración asignada: 3

Programador responsable: Marcos Maridueña, Karen Zapata Descripción: COMO bibliotecario QUIERO conocer datos estadísticos del uso (préstamo/reserva) de libros por usuario y título PARA poder mostrarlos al departamento o personas de la institución que lo requieran. Escenario de prueba: DADO la selección del usuario CUANDO dé click en el botón “Reportes” ENTONCES mostrará las solicitudes realizadas en un rango de fechas determinada. DADO la selección de biblioteca CUANDO dé click en el botón “Reporte General” ENTONCES mostrará datos estadísticos de los préstamos realizados por título de libro.


102

Anexo 7. Retrospectiva 1


103


104

Anexo 8. Retrospectiva 2


105


106

Anexo 9. Retrospectiva 3


107


108

Anexo 10. Oficio de entrega de Sprint


109


110


111

Anexo 11. Diccionario de datos autor Columna aut_codigo (Primaria) aut_nombres aut_apellidos aut_estado

Tipo int(11)

Nulo Predeterminado No

varchar(45) No varchar(45) No varchar(2) No

Índices Nombre de la clave

1

Comentarios Identificador principal para cada autor creado. Nombre del autor Apellido del autor Estado que permite identificar autores activos e inactivos.

Tipo

Únic Empaquetad Columna Cardinalida o o d PRIMARY BTRE Sí No aut_codigo 3 E aut_nombre_UNIQUE BTRE Sí No aut_nombres 3 E aut_apellido_UNIQU BTRE Sí No aut_apellido 3 E E s

Cotejamient Nul Coment o o ario A No A

No

A

No

categoria Columna Tipo Nulo Predeterminado Comentarios Código de identificación para cada categoría creada. cat_codigo int(11) No (Primaria) Nombre de la categoría cat_nombre varchar(45) No Estado que permite identificar categorías activas e inactivas. cat_estado varchar(2) No 1 Índices Nombre de la Tipo Único Empaquetado Columna clave PRIMARY BTREE Sí No cat_codigo detalle_autor Columna detaut_codigo (Primaria) lib_codigo aut_codigo

Cardinalidad Cotejamiento Nulo 2

A

Comenta rio

No

Tipo Nulo Predeterminado Comentarios Código de identificación por cada detalle de autor creada. int(11) No int(11) No int(11) No

Índices Nombre de la clave

Código de identificación de cada libro creado. Código de identificación de cada autor creado.

Tipo Únic Empaquetad Columna Cardinalida Cotejamient Nul Coment o o d o o ario PRIMARY BTRE Sí No detaut_codig 2 A No E o fk2_detalle_autor_a_autor_id BTRE No No aut_codigo 2 A No x E fk1_detalle_autor_a_libro_i BTRE No No lib_codigo 1 A No dx E


112 detalle_libro Columna

Tipo

Nul Predeterminad Come o o ntario s

detlib_codigo (Primaria)

int(11)

No

Código de identificación por cada detalle de libro creado.

inv_codigo

int(11)

No

Código de identificación del documento.

lib_codigo

int(11)

No

Código de identificación de cada libro creado.

detlib_cantidad

int(11)

No

En este campo se especifica la cantidad existente de cada libro en biblioteca.

No 0

Se especifica la cantidad prestada de cada libro en biblioteca.

detlib_cantidadpresta int(11) da detlib_valor

Se especifica el valor en dólares de cada libro en biblioteca.

varchar(13 No )

detlib_numeroorden int(11)

detlib_adquisicion

Se especifica el año en el que cada libro ingresa a biblioteca.

No

Se especifica si cada libro es comprado o regalado.

varchar(45 No )

Índices Nombre de la clave

Tipo Únic Empaquetad o o PRIMARY BTRE Sí No E fk_Detalle_Libro1_idx BTRE No No E fk2_detalle_a_inve_id BTRE No No x E

Columna

Cardinalida Cotejamient Nul Coment d o o ario detlib_codig 2 A No o lib_codigo 2 A No inv_codigo 1

A

inventario Columna

Tipo

inv_codigo (Primaria) nomb_doc

int(11)

Nulo Predeterminado Comenta rios Código de identificación del documento. No

varchar(45) No

Nombre del documento

No


113 Índices Nombre de la clave Tipo Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comentario PRIMARY BTREE Sí No inv_codigo 1 A No nomb_doc_UNIQUE BTREE Sí No nomb_doc 1 A No libro Columna

Tipo

lib_edicion lib_editorial lib_estado

int(11) No varchar(45) No varchar(1) No 1

Nulo Predeterminado Comenta rios Código de identificación de cada libro existente en lib_codigo int(11) No bibliotecaa. (Primaria) Código de identificación que encierra la información de la ubifis_codigo int(11) No ubicación de cada libro. Código de identificación de la categoría asignada a un cat_codigo int(11) No libro específico. Título del libro lib_titulo varchar(70) No Año de publicación del libro lib_anio varchar(45) No

Índices Nombre de la clave

Año de edición del libro Editorial del libro. Controla si el libro esta como activo o inactivo.

Tipo

Únic Empaquetad Columna o o PRIMARY BTRE Sí No lib_codigo E fk_Libro_Ubicacion BTRE No No ubifis_codig fisica1_idx E o fk2_libro_a_categoria_id BTRE No No cat_codigo x E

librovistafinal Comentarios de la tabla: VIEW Columna Tipo Nul Predeterminad Comen o o tarios ubifis_cdd varchar(45 No ) ubifis_codiabrev varchar(45 No ) detlib_cantidad int(11) No detlib_valor varchar(13 No ) detlib_numeroorde int(11) No n detlib_adquisicion varchar(45 No ) lib_codigo int(11) No 0 lib_titulo varchar(70 No ) lib_anio varchar(45 No ) lib_edicion int(11) No lib_editorial varchar(45 No ) aut_codigo int(11) No aut_nombres varchar(45 No

Cardinalida Cotejamient Nul Coment d o o ario 3 A No 3

A

No

3

A

No


114

aut_apellidos cat_nombre lib_estado roles Columna rol_codigo (Primaria) rol_nombre

) varchar(45 No ) varchar(45 No ) varchar(1) No 1

Tipo int(11)

Nulo Predeterminad Comenta o rios Código de identificación de cada rol creado. No 2 Nombre del rol

varchar(10 No ) rol_descripcio varchar(45 No n )

Descripción breve de cada rol

Índices Nombre de la clave

Tipo Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comenta rio PRIMARY BTREE Sí No rol_codigo 2 A No rol_nombre_UNIQUE BTREE Sí No rol_nombre 2 A No

servicios Columna ser_codigo (Primaria) usu_codigo lib_codigo ser_fechainicio

int(11)

Nul Predeterminad Coment o o arios Código de identificación del servicio a realizar. No

int(11) int(11) date

No No Sí NULL

ser_horainicio

time

NULL

ser_fechadevolucio date n ser_horadevolucion time

NULL

NULL

ser_estado

Tipo

varchar(3 No Pre )

Índices Nombre de la clave

Tipo Únic o PRIMARY BTRE Sí E fk1_servicios_a_usuarios_id BTRE No x E fk3_servicios_a_libro_idx BTRE No E

Código de identificación de cada usuario creado Código de identificación de cada libro creado. En este campo se guarda la fecha en la que se retira el libro de biblioteca. En este campo se guarda la hora en la que se retira el libro de biblioteca. En este campo se guarda la fecha en la que se devuelve el libro en biblioteca. En este campo se guarda la hora en la que se devuelve el libro en biblioteca. Estado de la solicitud para verificar si ha sido despachado o aún está en proceso.

Empaquetad Columna Cardinalida Cotejamient Nul Coment o d o o ario No ser_codigo 21 A No No No

usu_codig 1 o lib_codigo 2

A

No

A

No


115 solicitudes Comentarios de la tabla: VIEW Columna Tipo Nul Predeterminad Comen o o tarios usu_username varchar(45 No ) lib_codigo int(11) No 0 usu_codigo

int(11)

No 0

lib_titulo ser_codigo

varchar(70 No ) int(11) No 0

ser_fechainicio

date

NULL

ser_horainicio

time

NULL

ser_fechadevolucio date Sí NULL n ser_horadevolucio time Sí NULL n ser_estado varchar(3) No Pre ubifis_cdd ubifis_codiabrev

varchar(45 No ) varchar(45 No )

ubicacion_fisica Columna Tipo

Nul Predeterminad Comenta o o rios Código de identificación para la ubicación física de cada ubifis_codigo int(11) No libro (Primaria) Código principal para la ubicación del libro en percha. ubifis_cdd varchar(45 No ) Código secundario para la ubicación del libro en percha ubifis_codiabre varchar(45 No v )

Índices Nombre de la clave Tipo Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comenta rio PRIMARY BTREE Sí No ubifis_codigo 3 A No usuarios Columna usu_codigo (Primaria) rol_codigo usu_username usu_password usu_telefono usu_email usu_estado

Tipo int(11)

Nulo Predeterminado Comenta rios Código de identificación para cada usuario creado. No

int(11) No varchar(45) No varchar(60) No varchar(11) Sí NULL varchar(45) Sí NULL varchar(2) No 1

Código de identificación de cada rol creado. Username asignado a cada usuario Contraseña asignada a cada usuario. Número de teléfono de cada usuario. Dirección de correo de cada usuario. Estado active o inhabilitado de cada usuario.


116

Índices Nombre de la clave

Tipo Únic o PRIMARY BTRE Sí E usu_password_UNIQU BTRE Sí E E fk1_usuarios_a_roles_id BTRE No x E

Empaquetad Columna Cardinalida Cotejamient Nul Coment o d o o ario No usu_codigo 8 A No No No

usu_passwor 8 d rol_codigo 2

A

No

A

No


117

Anexo10. Presupuesto


118


119


120


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.