Modulo web para el control de cambios en la página web institucional de la Universidad Distrital Francisco José De Caldas
57
0
0
Texto completo
(2) MÓDULO WEB PARA EL CONTROL DE CAMBIOS EN LA PÁGINA WEB INSTITUCIONAL DE LA UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS. Trabajo de Grado en la modalidad de monografía para optar por el título de Tecnólogo en Sistematización de Datos. Presentado por: JIMMY JULIAN GARAVITO PACHECO ANDRES FELIPE CASTAÑEDA ROJAS. Directora: Msc. ROCIO RODRIGUEZ GUERRERO. UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS FACULTAD TECNOLÓGICA PROYECTO CURRICULAR DE TECNOLOGÍA EN SISTEMATIZACIÓN DE DATOS BOGOTA D.C. 2019.
(3) Contenido 1.. TÍTULO .......................................................................................................... 12 1.1 TEMA ........................................................................................................... 12. 2.. PLANTEAMIENTO ......................................................................................... 13 2.1 Descripción .................................................................................................. 13 2.2 Formulación del problema ........................................................................... 13. 3.ALCANCES Y DELIMITACIONES ..................................................................... 14 3.1 Alcances ...................................................................................................... 14 3.2 Delimitaciones.............................................................................................. 14 3.2.1 Delimitaciones técnicas ......................................................................... 14 4. OBJETIVOS ...................................................................................................... 15 4.1 General ........................................................................................................ 15 4.2 Específicos .................................................................................................. 15 5. RESULTADOS ESPERADOS ........................................................................... 15 6.. IMPACTO ....................................................................................................... 16. 7.. JUSTIFICACION ............................................................................................ 16. 8.. MARCO REFERENCIAL ................................................................................ 17 8.1 Estado del arte ............................................................................................. 17 8.2 Marco teórico ............................................................................................... 17 8.2.1 Herramientas de desarrollo ................................................................... 18 8.2.1.1 API de Drupal ..................................................................................... 18 8.2.1.2 DataTable ........................................................................................... 19 8.2.1.3 Sublimetext3....................................................................................... 19 8.2.1.4 FileZilla: .............................................................................................. 19 8.3 Marco metodológico..................................................................................... 19 8.3.1 Scrum .................................................................................................... 19 8.3.1.1 Roles .................................................................................................. 20 8.3.1.2 Sprint .................................................................................................. 20 8.3.1.3 Herramientas Scrum .......................................................................... 21 8.4 Marco conceptual......................................................................................... 21 8.4.1 CMS: ..................................................................................................... 21 8.4.2 Aplicación web: ..................................................................................... 22 8.4.3 Framework: ........................................................................................... 22 8.4.4 GPL: ...................................................................................................... 22.
(4) 8.4.5 Drupal:................................................................................................... 22 8.4.5.1 características de Drupal: ................................................................... 22 8.4.6 MySql: ................................................................................................... 23 8.4.7 PHP: ...................................................................................................... 23 8.4.8 Bootstrap: .............................................................................................. 23 8.5 Marco histórico............................................................................................. 23 8.6 Marco legal .................................................................................................. 24 9.. PRESUPUESTO ............................................................................................ 24 9.1 Nivel legal .................................................................................................... 24 9.2 Nivel económico........................................................................................... 24. 10. CRONOGRAMA .............................................................................................. 27 11. ANALISIS DEL PROYECTO ........................................................................... 28 11.1 DEFINICIÓN .............................................................................................. 28 11.1.1 Identificación de roles .......................................................................... 28 11.1.2 Lista de actividades por rol .................................................................. 28 11.2 Historias de usuario ................................................................................... 29 11.2.1: Impresión de datos: ............................................................................ 29 11.2.2 Filtración de información: .................................................................... 30 11.2.3 Impresión de Reportes: ....................................................................... 30 11.3 BACKLOG .............................................................................................. 31 11.4 Sprints .................................................................................................... 32 12. DISEÑO EN EL DESARROLLO DE LOS SPRINT .......................................... 32 12.1 Sprint 1 Analisis y diseño ........................................................................... 32 12.1.1 Definición del Sprint 1 Análisis y diseño .............................................. 32 12.1.2 Tareas del Sprint 1 Análisis y diseño .................................................. 34 12.1.3 Diseño del Sprint 1 Análisis Y diseño .................................................. 35 12.1.4 Proceso de desarrollo del software Sprint 1 Análisis y Diseño ............ 36 12.1.5 Diagrama de contexto Análisis y diseño .............................................. 38 12.1.6 Prueba del Sprint 1 Análisis y diseño .................................................. 38 12.1.7 Retrospectiva del Sprint 1 Análisis y diseño ........................................ 39 12.2 Sprint 2 Desarrollo ..................................................................................... 39 12.2.1 Definición del Sprint 2 Desarrollo ........................................................ 39 12.2.2 Tareas del Sprint 2 Desarrollo ............................................................. 40 12.2.3 Diseño del Sprint 2 desarrollo ............................................................. 41.
(5) 12.2.4 Proceso de desarrollo del software Sprint 2 desarrollo. ...................... 41 12.2.5 Diagrama de contexto Sprint 2 Desarrollo ........................................... 44 12.2.6 Prueba de Sprint 2 Desarrollo ............................................................. 45 12.2.7 Retrospectiva del Sprint 2 Desarrollo .................................................. 45 12.3 Sprint 3 Finalizacion................................................................................... 46 12.3.1 Definición de Sprint 3 Finalización ...................................................... 46 12.3.2 Tareas del Sprint 3 Finalización .......................................................... 47 12.3.3 Diseño del Sprint 3 Finalización .......................................................... 47 12.3.4 Diagrama de contexto Sprint 3 Finalización ........................................ 50 12.3.5 Prueba de Sprint 3 Finalización........................................................... 50 12.3.6 Retrospectiva Sprint 3 Finalización ..................................................... 51 12.4 Pruebas PHP 7.x y PHP 5.x ...................................................................... 52 12.4.1 PHP 5.6 ............................................................................................... 52 12.4.2 PHP 7.x ............................................................................................... 53 13. CONCLUSIONES ............................................................................................ 54 14. RECOMENDACIONES ................................................................................... 55 15. REFERENCIAS ............................................................................................... 56 16.. ANEXOS...................................................................................................... 57.
(6) Lista de Tablas Tabla 1 Recurso Humano Tabla 2 Recurso lógico Tabla 3 Recurso físico Tabla 4 Servicios Tabla 5 Costo total Tabla 6 Identificación de roles Tabla 7 Actividades por rol Tabla 8 Historia impresión de datos Tabla 9 Historia filtración de información Tabla 10 Historia impresión de reportes Tabla 11 Backlog Tabla 12 Sprints Tabla 13 formato de entrevista Tabla 14 Definición Sprint 1 Tabla 15 Tareas Sprint 1 Tabla 16 Pruebas Sprint 1 Tabla 17 Definición Sprint 2 Tabla 18 Tareas Sprint 2 Tabla 19 Prueba Sprint 2 Tabla 20 Definición Sprint 3 Tabla 21 Tareas Sprint 3 Tabla 22 Prueba Sprint 3 Tabla 23 Imagen institucional. 24 25 25 25 26 28 29 29 30 30 31 32 33 33 34 38 39 40 45 46 47 50 52.
(7) Lista de Imágenes Figura 1 Scrum .............................................................................................................................................................................................. 21 Figura 2 Campos de la tabla principal logs .................................................................................................................................... 35 Figura 3 Tabla principal logs................................................................................................................................................................. 35 Figura 4 consulta tablas tipos de contenido Drupal .................................................................................................................. 36 Figura 5 Extensión punto Install .......................................................................................................................................................... 36 Figura 6 Creación de tabla logs ............................................................................................................................................................ 36 Figura 7 Creación de tabla logs ............................................................................................................................................................ 37 Figura 8 Diagrama de contexto Sprint 1 ......................................................................................................................................... 38 Figura 9 Tabla módulo general ............................................................................................................................................................ 41 Figura 10 Filtros ........................................................................................................................................................................................... 41 Figura 11 Buscador..................................................................................................................................................................................... 41 Figura 12 Adición ......................................................................................................................................................................................... 42 Figura 13 Alteración .................................................................................................................................................................................. 43 Figura 14 Borrado ....................................................................................................................................................................................... 44 Figura 15 Diagrama de contexto Sprint 2....................................................................................................................................... 44 Figura 16 Botones de reportes .............................................................................................................................................................. 47 Figura 17 PDF ................................................................................................................................................................................................ 48 Figura 18 CSV................................................................................................................................................................................................. 48 Figura 19 Excel.............................................................................................................................................................................................. 49 Figura 20 impresión ................................................................................................................................................................................... 49 Figura 21 Diagrama de contexto Sprint 3....................................................................................................................................... 50.
(8) AGRADECIMIENTOS Agradecemos a Dios por permitirnos llegar hasta aquí, a nuestra tutora Roció Rodríguez quien nos ha brindado sus conocimientos, ideas y dirección; a nuestros padres por darnos el impulso necesario para no rendirnos y lograr alcanzar este logro académico en nuestras vidas que esperamos no sea el último; y en general a los familiares, docentes, compañeros y amigos que han hecho parte de nuestro proceso educativo, brindándonos su apoyo y compañía. Muchas Gracias, por permanecer a nuestro lado..
(9) RESUMEN La Universidad Distrital Francisco José de Caldas es una institución de educación superior del Distrito Capital de Bogotá; desde su fundación en el año 1948, su visión ha estado encaminada a los procesos de su entorno social ayudando siempre a las personas que no cuentan con un nivel económico favorable que les permita ingresar a una institución de educación superior privada; adicionalmente, se ha dado cumplimiento al objetivo de apoyar la docencia, la investigación y formación de personas integras y bien preparadas que puedan aplicar sus conocimientos en el mundo laboral y personal, apoyando así el crecimiento de la sociedad.. La Universidad Distrital Francisco José de Caldas posee un portal web institucional que cuenta con diferentes módulos para suministrarle información de calidad a sus estudiantes; esta página es administrada por le Red de comunicación de datos de la universidad, creada mediante el acuerdo No. 028 de 1993, cumpliendo con la función de soporte técnico, alimentación de información, actualización y administración general del área de comunicaciones y de desarrollo sobre la página.. Actualmente, la Red de Datos, la cual está encargada de la actualización de la página, ha decidido migrar su portal web al Gestor de Contenido Drupal, quien se encargará de administrar la página web institucional por medio de sus funciones y su estabilidad funcional. Este proceso de migración es muy extenso y hasta el momento ha sido satisfactorio, pero actualmente el nuevo gestor no permite generar información de los cambios hechos sobre el contenido del portal; es por esta razón que surge la propuesta de desarrollar un módulo de CONTROL DE CAMBIOS que haga posible la administración de la información de los cambios en el contenido de la página y tenga la posibilidad de generar reportes en diferentes formatos y supla las necesidades de los administradores. PALABRAS CLAVE: Modulo, reportes, contenido, datos, versiones, edición, eliminación, Drupal, metodología, rol, Scrum, modulo..
(10) ABSTRACT The Francisco José de Caldas District University is a higher education institution of the Capital District of Bogotá; Since its foundation in 1948, its vision has been aimed at the processes of its social environment always helping people who do not have a favorable economic level that allows them to enter a private higher education institution; Additionally, the objective of supporting the teaching, research and training of well-trained and integral people who can apply their knowledge in the work and personal world has been fulfilled, thus supporting the growth of society. The Francisco José de Caldas District University has an institutional web portal that has different modules to provide quality information to its students; This page is managed by the University Data Communication Network, created by means of the agreement No. 028 of 1993, fulfilling the function of technical support, information feeding, updating and general administration of the communications and development area on the page. Currently, the Data Network, which is responsible for updating the page, has decided to migrate its web portal to the Drupal Content Manager, who will be responsible for administering the institutional website through its functions and functional stability. This migration process is very extensive and so far it has been satisfactory, but currently the new manager does NOT have a module that provides information on changes to the content of the portal; It is for this reason that the proposal arises to develop a CHANGE CONTROL module that makes it possible to manage the information of the changes in the content of the page and has the possibility of generating reports in different formats and meets the needs of the administrators .. KEY WORDS: Module, reports, content, data, versions, editing, deletion, Drupal, methodology, role, Scrum, module..
(11) INTRODUCCION La evolución de la informática ha tenido un auge muy alto en las últimas décadas, forzando a la humanidad a actualizarse de manera inminente; actualmente el manejo de la información es muy importante para la administración de múltiples instituciones: bancos, hospitales, colegios, universidades, etc. Para esto el uso de programas que organicen esta información es muy común, facilitándole a las organizaciones el uso de la misma, pero uno de los problemas que se contemplan, es la seguridad de dicha información donde es importante conocer quien tiene acceso y quién no; la Universidad Distrital Francisco José de Caldas no es ajena a estos cambios ya que ella maneja un volumen de información muy elevado; en una de sus áreas de telecomunicaciones conocida como UDNET se maneja la página web institucional quien brinda a la comunidad información de eventos, características de los programas de formación académica, datos de la biblioteca, etc.; si bien esta información es importante, esta página carece de un módulo que le permita a los administradores conocer quien edito contenido en la página web. Este proyecto se realizó con el fin de brindar a la Universidad Distrital Francisco José de Caldas un módulo funcional que administre la información que generen los cambios realizados en el contenido de la página web institucional como lo pueden ser la edición y eliminación de datos, mostrando en una tabla detallada, información como las fechas, los usuarios, las versiones y demás características que pueden tener los cambios en la PWI. Para poder acceder a la información es indispensable que un administrador la solicite al módulo, esto a fin de generar los reportes pertinentes a las entidades que lo requieran; estas pueden ser del ente gubernamental, decanatura, vicerrectoría o cualquiera que tenga la autoridad suficiente para poder solicitar información acerca de quien edito algún contenido de la página web. Para el desarrollo del proyecto se utilizaron herramientas como: la API de Drupal y sus módulos Devel y search kint, complementos de la biblioteca JQuery como lo es el DataTable, para la edición de código fuente el Sublimetext3, el manejo de la base de datos se hizo en el administrador de bases de datos Workbench, este último requiere de los servicios básicos de PHP para poder conectar la base de datos con el gestor. En todo proyecto, es necesario aplicar una metodología para poder organizar un cronograma, buena documentación, ordenar las actividades, formación de equipos de trabajo etc. Es importante aclarar que la metodología se debe acomodar a las necesidades del proyecto y la que se decidió usar para este fue Scrum, ya que es una metodología ágil, lo que permite organizar las actividades para proyectos que requieren de un constante seguimiento, además es adaptable a ambientes de cambios con tendencias desconocidas; Scrum está diseñado plenamente para el trabajo en equipo, donde a todos los integrantes se les asignara un rol el cual deben cumplir, pero siempre apuntando hacia un objetivo en común. Este proyecto se desarrollará en tres fases: la fase de planeación, en la cual se analizará el proyecto; una segunda fase de desarrollo donde se gestionarán las principales características del módulo y una fase final donde se emplearán las pruebas necesarias y se desarrollarán reportes del módulo general..
(12) 1. TÍTULO Módulo web para el control de cambios en la página web institucional de la Universidad Distrital Francisco José de Caldas.. 1.1 TEMA Desarrollo web de un módulo que permita la obtención de informes detallados, generando un historial de acciones de los usuarios en los tipos de contenidos que se encuentran en la PWI..
(13) 2. PLANTEAMIENTO 2.1 Descripción La Universidad Distrital Francisco José de Caldas cuenta con un área encargada de administrar la página web de la institución (PWI), esta es una dependencia conocida con el nombre de Red de Datos, la cual gestiona el contenido de las diferentes páginas con las que cuenta el alma mater. Actualmente la red de datos tiene la capacidad de generar informes de los cambios realizados a los contenidos de la página, en estos informes se observa cuál fue el módulo editado y las fechas específicas de los mismos, adicionalmente, algunos de estos informes cuentan con la cantidad de versiones de las ediciones realizadas a un contenido específico, todo esto se realiza en el gestor de contenido Drupal, ya que este cuenta con una herramienta que facilita reportes. Los informes en mención no poseen datos puntuales como lo es conocer cuál fue el usuario que realizó el cambio, ya que estos, en la mayoría de los casos, están en un estado anónimo es decir que no es posible reconocer al usuario; al realizarlos de la forma convencional se encuentra que carecen de información específica como el tipo de usuario, el cambio realizado y la hora en que se efectuó el mismo, impidiendo el seguimiento de cambios en la PWI; actualmente, los datos no pueden ser filtrados, lo cual hace más arduo el trabajo de la red de datos por detectar a los usuarios que puedan realizar cambios. 2.2 Formulación del problema Con lo anterior Planteamos la siguiente pregunta ¿El desarrollo de un módulo web que gestione todos los cambios realizados en la página web institucional, permitirá a los administradores realizar el seguimiento a los cambios realizados por usuarios y reportar estos datos al momento solicitado?.
(14) 3.ALCANCES Y DELIMITACIONES 3.1 Alcances Se desarrollará un módulo web para controlar los cabios en la página web institucional. Este módulo contara con un sistema de filtrado por fechas, usuarios y tipos de contenido. Será un módulo creado para poder tener informes en formato PDF, CSV y XML. Al instalar el módulo, se creará automáticamente en la base de datos, la tabla que administrará la información necesaria para suplir los informes requeridos por los administradores. Este módulo solo administrara la información de los contenidos y sus diferentes tipos, su fecha de creación, su fecha de edición, usuario que edito el contenido, el tipo de contenido editado, el nombre del contenido editado, estado del contenido, un enlace de asociación a la historia del contenido y la versión de edición. Se podrá incorporar en cualquiera de las instancias de Drupal. 3.2 Delimitaciones Este módulo no administrara información que no tenga que ver con el contenido, como el cambio en la configuración de Drupal o la administración de sus usuarios, de las vistas, los bloques o demás funciones que tiene para su funcionamiento. Este módulo web como cualquier otro no funcionara si no se tiene una conexión web ya que la información no se administra de manera local. 3.2.1 Delimitaciones técnicas . Lenguaje de programación PHP. Motor de base de datos MySQL. Correcta instalación de Drupal 8x. Operará en cualquier sistema operativo que cuente con la instalación de Drupal 8 y este no tenga problemas de conexión con el servidor..
(15) 4. OBJETIVOS 4.1 General Desarrollar un módulo web para el control de cambios de PWI de la Universidad Distrital Francisco José de Caldas. 4.2 Específicos ● Crear un módulo general de control de cambios que sea independiente y pueda ser instalado en las diferentes instancias de Drupal 8 y versiones de PHP 5.6 y 7.0. ● Integrar el módulo general de control de cambios a la PWI. ● Diseñar tablas en la base de datos de la institución, capaces de almacenar información detallada teniendo como enfoque los cambios realizados por el usuario en la PWI. ● Diseñar un sub-módulo informes que permita filtrar la información de las tablas integradas a la base de datos, teniendo así un seguimiento a los contenidos y acciones del usuario en la PWI. ● Facilitar al sub-módulo informes generar reportes detallados de los cambios en la PWI permitiendo un seguimiento más específico de cada usuario. ● Desarrollar el módulo general de control de cambios de acuerdo a los lineamientos de la imagen institucional cumpliendo con las normas de accesibilidad NTC 5854. ● Permitir que el módulo general de control de cambios registre automáticamente cada cambio que se realice a cualquier tipo de contenido y acciones de usuario en la PWI.. 5. RESULTADOS ESPERADOS Se desarrollará un módulo web que facilitará al personal administrativo la consecución de informes de cambios sobre la página web institucional. ● Los reportes no tendrán inconsistencias en los datos. ● El administrador obtendrá la información en un solo reporte. ● El módulo general de control de cambios guardará los cambios de cada uno de los contenidos de la página permitiendo que los usuarios vean las versiones de contenido editado. ● Se facilitará al administrador la visualización de información de los reportes por medio de filtros. ● Los auditores de la página podrán reconocer los usuarios que editen el contenido de la página. ● Permitir que las entidades públicas auditoras de la Universidad puedan obtener informes con datos consistentes..
(16) 6. IMPACTO Este proyecto ayudará a la Red de datos a tener el control de información basada en cambios para cualquier tipo de contenido que posea la página web institucional, estos datos contarán con un seguimiento detallado de cada uno de los usuarios que efectúen algún tipo de cambio o acciones en el contenido de la página.. 7. JUSTIFICACION La Universidad Distrital Francisco José de Caldas, siempre ha sido reconocida por su educación de alta calidad; esto se ha logrado gracias a su constante esfuerzo por evolucionar su componente humano y tecnológico, es por esto que ha tenido un crecimiento muy acelerado, adaptándose a todas las posibles mejoras académicas como la acreditación institucional y tecnológicas como el uso de nuevas tecnologías; acorde al crecimiento de la institución, el área de comunicaciones UDNET, siempre tiene que estar adaptándose a las necesidades de la misma. Esta dependencia brinda muchos servicios a la comunidad universitaria, pues ellos son los encargados de que todas las sedes de la universidad se puedan comunicar y tengan un buen flujo de información, sin problemas, solucionando inconvenientes de manera eficiente y adaptándose a las tecnologías nuevas que nos brinda la investigación, además de esto, ella es la encargada de administrar el portal web institucional, que es la página principal de la universidad donde se proporciona información de vital importancia para la institución y para los estudiantes como lo son las admisiones, contratación, los eventos, el calendario académico, acceso a la biblioteca virtual de la Universidad, detalles de los programas de la universidad, como lo pueden ser postgrados, pregrados, etc. Cuenta con una visualización didáctica y muy agradable a la vista, que les permite a las personas que no están asociadas al mundo de la internet, el poder controlar el contenido de la página aprendiendo de la universidad e informándose de su contenido. La página web institucional maneja un gran volumen de información, es por esto que, en los últimos años, la universidad ha optado por migrar la información a un gestor de contenido, conocido por su amplio número de funciones y su buen manejo; por lo anterior, se requiere de un módulo que les permita a los administradores administrar la información de los cambios que se realizan en el contenido de la página, como lo pueden ser una imagen, un texto, una noticia, un archivo, etc. Esto es de vital importancia ya que la universidad en cualquier auditoria que presente puede tener un control óptimo de la información, generando informes con información consistente y eficiente..
(17) 8. MARCO REFERENCIAL 8.1 Estado del arte Para este proyecto se tienen en cuenta otros gestores de contenido que registran cambios hechos o actividad de los usuarios en la página web, como lo es IIS7, WordPress, Apache y otros. ● IIS7 tiene integrado un visualizador con un soporte para estadísticas y gráficas en donde se pueden obtener informes de los cambios realizados a contenido de la página. ● WordPress cuenta con un plugin llamado WP Security Audit Log que ayuda al administrador mantener un constante registro de lo que suceda en el sitio web así mismo optimizando el seguimiento a usuarios. ● Apache cuenta con registros acerca de errores y acceso a información que se presenten en la página web. ● Git es un sistema específico diseñado para controlar versiones en un entorno Linux. Existen herramientas que proporcionan monitorización de cambios en websites como lo son: ● Website-watcher: Es una herramienta efectiva en cuanto al rastreo de nuevos hilos de discusión o comentarios en foros, además de modificaciones en una web, feeds RSS y documentos de PDF, word o Excel. Pero esta herramienta tiene su tiempo de prueba gratuita. ● Infominder: Monitorea cambios realizados a texto en webs, blogs wikis y feeds RSS, esta herramienta también cuenta con un periodo de prueba. ● También hay paginas como Change detection y follow that page son herramientas gratuitas para el monitoreo en cambios específicos como lo son textos. 8.2 Marco teórico En este proyecto se emplearán tecnologías conocidas, que ya se han usado en diferentes proyectos de la Universidad Distrital Francisco José de Caldas; en Bases de datos se utilizará MySQL el cual es SQL, para el desarrollo frontend javaScript y CSS con el framework Bootstrap, Desarrollo Backend PHP con el framework laravel; todo esto es utilizado por la RED DE DATOS quienes son los encargados de gestionar y desarrollar los módulos web de la página institucional de la Universidad Distrital Francisco José de Caldas. En la actualidad el uso de frameworks es muy importante ya que simplifica el tiempo de desarrollo y facilita cada proceso que tenga que realizar el desarrollador, además de esto cuentan con simples y útiles herramientas que permiten la conexión con las bases de datos que son las que gestionan la información, de.
(18) forma permanente mantienen los datos aislados en tablas para su uso, esto es de vital importancia a la hora de obtener los datos de dicha base, sin esto las empresas u organizaciones no podrían almacenar su información y tendrían problemas a la hora de generar informes que cumplan con los estándares de calidad, para esto los datos se guardan de forma ordenada en las bases logrando una estructura ordenada y de calidad, adicionalmente, los framework permiten diseñar interfaces que ven los usuarios, permitiendo que el usuario final pueda entender cómo funciona el sistema lo cual a su vez faculta la evolución del mismo, dejando fluir los procesos donde el software está implementado. Hoy en día el desarrollo de aplicaciones web es muy común, por esto mismo se crean frecuentemente herramientas con el fin de ampliar el alcance de cada proyecto permitiendo a las aplicaciones generar impactos en todos los campos de la tecnología. Una de las herramientas que se usa con frecuencia para el desarrollo empresarial de software en general son los MBD que son modelos a seguir para el desarrollo de aplicaciones, las herramientas de estos modelos son perfectas para el cumplimiento de los objetivos definidos por los empresarios, estas cumplen con parámetros estrictos como lo son el planeamiento y el análisis de tal forma que un equipo pequeño de trabajo pueda estar capacitado para el desarrollo de nuevas aplicaciones y que innoven en los campos tecnológicos. 8.2.1 Herramientas de desarrollo A continuación de manera detallada se explicarán cada una de las herramientas usadas para el desarrollo de este proyecto. 8.2.1.1 API de Drupal Una API es un conjunto de protocolos que se utilizado para el desarrollo de software; los conjuntos de componentes de las API permiten a los sistemas tener herramientas que sirven para simplificar el desarrollo, sin tener la necesidad de conocer cómo funciona internamente la API, dicho esto la API de Drupal cuenta con una gran variedad de módulos que le permiten al gestor de contenido usar estas herramientas para lograr una mejor comunicación con el desarrollador y el sistema, a continuación se mencionan los módulos que se usaron de la API de Drupal para desarrollar este proyecto[1]. . Devel: Este módulo le proporciona al usuario herramientas para el desarrollo como, un sub-módulo que permite la ejecución de código especifico, actualizando en tiempo real los resultados sin la necesidad de alterar el código fuente de la página, además de esto cuenta con un submódulo llamado Kint es usado para la impresión de variables, en este caso información de los nodos, Esto es de gran ayuda ya que permite para la compilación de consultas de la base de datos [2]..
(19) Esta herramienta proporciona muchas más funcionalidades, pero en este proyecto solo se vio la necesidad de usar las antes mencionadas. . Search kint: Este módulo permite una búsqueda en la impresión de las variables, obteniendo la ruta en la que se encuentra la variable, esto en cuanto a los Array que componen los formularios y las entidades, permitiendo al desarrollador adquirir de manera ágil y rápida la información de los formularios y entidades que solicite [3].. 8.2.1.2 DataTable: DataTables es un complemento para la biblioteca jQuery Javascript. Es una herramienta altamente flexible, construida para agregar características avanzadas como lo son: filtrado de información, búsqueda de datos, paginación de datos en la tabla, generación de reportes en formatos PDF, CSV y Excel, diseño de una tabla para mostrar la información, que esta almacenada en la base de datos, esto se puede integrar a cualquier tabla HTML, en este caso se implementó esta librería para el correcto manejo de la información [4]. 8.2.1.3 Sublimetext3: Es un editor de código fuente sofisticado que admite muchas funcionalidades practicas al momento de trabajar con el código [5]. 8.2.1.4 FileZilla: Es una herramienta de código abierto para la transferencia de archivos por FTP [6].. 8.3 Marco metodológico Para este proyecto se definirá como metodología principal, la metodología Scrum, ya que es una de las mejores para el desarrollo de aplicaciones, en este caso se usará para la creación de este módulo. 8.3.1 Scrum Scrum es un proceso en el que se utiliza un conjunto de buenas prácticas en la que se trabaja colaborativamente en equipo con el fin de obtener el mejor resultado para un proyecto. Esta metodología tiene como idea principal la creación de ciclos para su desarrollo, estos comúnmente se conocen como iteraciones y en Scrum se llaman “Sprint”.[7] 1 Se busca desarrollar este proyecto bajo la metodología Scrum, para poder aplicar este proceso es necesario conocer su funcionamiento, este cuenta con unas fases que definen y dividen su proceso, la cuales son: 1. PERALTA, Adriana. Metodología Scrum [en línea]. Universidad ORT Uruguay, Uruguay, 2003. [fecha revisión: 28 de septiembre de 2018]. Disponible en Internet:https://fi.ort.edu.uy/innovaportal/file/2021/1/scrum.pdf..
(20) -. El Quién y qué: Aquí se determinan los roles de cada miembro que conforma el equipo, así mismo definiendo la responsabilidad en el proyecto. El dónde y el cuándo: Estos representan en el sprint, es una iteración que se lleva a cabo por los miembros del equipo. El por qué y el cómo: Estas son las herramientas que serán utilizadas por los miembros.. Estas fases son las que proveerán una estimación del progreso del proyecto a medida que va avanzando el tiempo y de esta manera optimizar el tiempo de entrega de un proyecto de alta calidad. En este proceso se realizan entregas parcialmente, beneficiando al receptor del proyecto. Con base en esto se indica que Scrum es para proyectos en entornos complejos, que se necesiten resultados en poco tiempo, donde los requisitos pueden ser cambiantes o poco definidos, en donde la competitividad, la productividad, la flexibilidad e innovación serán fundamentales. 8.3.1.1 Roles Este rol se asigna a las personas comprometidas con el proyecto y el proceso Scrum que se va a utilizar. Esta cuenta con 3 roles: ● Product Owner: Es la persona encargada de la toma de decisiones, y es quien conoce y refleja en las tareas del backlog la visión que tiene el cliente del producto. ● Scrum Master: Es el encargado de asegurarse que la metodología se esté desarrollando de buena manera, eliminando inconvenientes e impedimentos que afecten el progreso del proyecto. ● Equipo de desarrollo: Es el equipo encargado de organizar y tomar decisiones para cumplir los objetivos del proyecto, son personas con las habilidades necesarias para realizar el trabajo (análisis, diseño, desarrollo, pruebas, documentación, etc). 8.3.1.2 Sprint Son ciclos iterativos llevados a cabo para el desarrollo o mejoramiento del proyecto que son hechos por los miembros del equipo. Estos Sprints son llevados a cabo en unos eventos, que son: ● Planeación del Sprint: Este evento se realiza para poder definir las tareas para cada uno de los miembros del equipo, cada uno de ellos debe decir el tiempo en que podrá llevar a cabo sus requerimientos, este tiempo debe ser prudente para que de esta manera se se pueda definir el tiempo de duración del Sprint..
(21) ● Reunión de equipo: Estas reuniones se realizan para que los miembros pueden hablar acerca de qué dificultades han encontrado en el desarrollo de su tarea y así enfocar la reunión a encontrar soluciones para los inconvenientes encontrados. 8.3.1.3 Herramientas Scrum Scrum utiliza las siguientes herramientas para su desarrollo [8] ● Backlog de producto: Es una lista de los requerimientos que se necesitan para desarrollar el proyecto. ● Historias de usuario: Son descripciones detalladas de las funcionalidades que debe tener el proyecto dadas por el cliente junto con los miembros del equipo. ● Backlog del Sprint: Son elementos del backlog que se aceptan, priorizan en la reunión de la planeación del Sprint. ● Panel de tareas: Este es un panel que contará con las tareas asignadas a cada uno de los miembros del equipo de trabajo, estas tareas tendrán estados de por hacer, haciendo y terminado.. Figura 1 Scrum. 8.4 Marco conceptual A Continuación, se documentará cada una de las herramientas con las que se desarrollara el proyecto, además de esto se tendrán en cuenta conceptos básicos para el desarrollo. 8.4.1 CMS: Un CMS es un software que permite a cualquier persona usar, administrar o gestionar el contenido de una página web con mucha facilidad y todo.
(22) esto sin tener ningún conocimiento de programación web, los CMS permiten conectar toda la información que contiene una base de datos a la página web, este control se usa para alimentar de forma continua las páginas y mantenerlas con la calidad empresarial que merecen tener [9]. 8.4.2 Aplicación web: Es un tipo de software que se estructura con un lenguaje de programación soportado por un navegador web, cuya ejecución es empleada por el navegador de internet o de una línea intranet. Son herramientas que todos los que tienen acceso a un servidor web pueden ejecutar, dándole sentido a porque es llamado app web. Las páginas web pueden contener muchos elementos interactivos como lo pueden ser los formularios o botones, esto para permitirle al usuario acceder a datos de la aplicación, así mismo permitirle acceder a todas las acciones que ejecute dicha acción puede ser publicar algo, completar formularios, participar en juegos, etc. 8.4.3 Framework: Es una herramienta que le permite a los desarrolladores de software escribir un código reutilizable permitiendo la simplificación de líneas de código, teniendo una mayor productividad, minimizando costos en el desarrollo y reduciendo la cantidad de errores que pueda contener las aplicaciones, para las aplicaciones web también existen muchos tipos de frameworks, algunos de ellos son: laravel, bootstrap, ruby, rails, etc [10]. 8.4.4 GPL: Es el acrónimo de General Public License, es una licencia que deben usar los frameworks o CMS que se dediquen al software libre, esto es para que todas las personas interesadas en el desarrollo de software puedan empezar con sus proyectos y desarrollarlos con herramientas de calidad y fáciles de usar. Se usa mucho en las empresas desarrolladoras ya que permite que los costos de producción no sean tan altos y los resultados que deseen si sean muy buenos. 2 8.4.5 Drupal: Drupal es un CMS sistema de gestión de contenidos que en la actualidad se está utilizando para administrar sitios web con una gran cantidad de variedades y muy dinámicos para los usuarios permitiendo una buena interacción con las herramientas que nos brinda el sistema [11]. 8.4.5.1 características de Drupal: el CMS Drupal cuenta con las siguientes características. . 2. Gratuito: Drupal es un software de código abierto bajo la Licencia Pública GNU, es decir, es completamente libre para descargar, usar y personalizar. Plataforma Web: la instalación de Drupal por defecto es una base de datos de la plataforma basada en la web con herramientas para archivos de mantenimiento y un alto nivel de seguridad.. Gnu.org, Licencias - Proyecto GNU - Free Software Foundation [en línea], [fecha revisión: 28 de septiembre de 2018]. Disponible en: https://www.gnu.org/licenses/licenses.es.html..
(23) . . . Escalable: Drupal ha demostrado repetidamente su capacidad para proyectar más de un millón de páginas y más de veinte millones de solicitudes por segundo. Personalizable: podemos encontrar una gran cantidad de temas libres, totalmente personalizables, además de varios temas base para iniciar nuestro propio proyecto. Seguro: está sujeto a estrictas pruebas de seguridad, tanto por la comunidad Drupal, como por expertos de seguridad de todo el mundo.. 8.4.6 MySql: Es un sistema de gestión de bases de datos relacional, este gestor se basa en el lenguaje estructurado de consulta SQL, además es de código abierto, licenciado bajo la GPL [12]. 8.4.7 PHP: PHP es un lenguaje interpretado con una sintaxis similar a la de C++ o Java. Aunque este puede usarse para realizar cualquier tipo de programa, es en las páginas web donde más tiene fuerza y popularidad ya que se puede incrustar en las páginas HTML, siendo el servidor web el encargado de ejecutarlo [13]. 8.4.8 Bootstrap: Es un framework desarrollado por la empresa Twitter, ofrece la posibilidad de crear sitios web totalmente responsive, usando librerías CSS que son las encargadas de darle el diseño a la página, se pueden encontrar muchos elementos ya diseñados y listos para su uso, se caracteriza por tratarse de una excelente herramienta para crear interfaces limpias y adaptables a cualquier pantalla o tipo de dispositivo muy independiente de su tamaño [14]. 8.5 Marco histórico Desde la creación de la primera página en 1993, fueron llegando adelantos en la tecnología que ayudaron con la evolución de las páginas web provocando un constante progreso en la búsqueda de información que se encuentra en cada una de ellas, de esta misma manera la Universidad Distrital Francisco José de Caldas creó su página web institucional, ayudando a la búsqueda de información acerca de la Institución, esto generó la necesidad de diseñar diferentes páginas para cada una de sus dependencias, facultades y demás sitios de información acerca de la universidad; estas páginas son diseñadas en diferentes gestores de contenido y cada uno de estos cuenta con información no detallada de los cambios que se realizaron a contenido de la página. Con el avance constante de nuevas tecnologías, se llega a la necesidad de tener toda la información de las páginas web y de la misma manera todos los cambios que se realicen, con el fin de tener informes detallados de ediciones hechas por los usuarios gracias a un módulo diseñado para la página web institucional de la universidad..
(24) 8.6 Marco legal Para el desarrollo del proyecto se hará uso del gestor de contenido o CMS Drupal, el cual proporciona todas las herramientas necesarias para la creación de páginas web, este software es libre, además de esto las herramientas como bootstrap que a su vez manejan el código abierto (open source) es decir que no manejan ningún tipo de trámite legal, ya que se manipulan con la licencia GNU GPL (General Public License), para la gestión de datos se usará MySQL que es un gestor de bases gratuito. Para el hardware de desarrollo se cuentan con todas las licencias digitales que se obtienen en la compra de los equipos. 9. PRESUPUESTO 9.1 Nivel legal Las herramientas que se utilizaran para desarrollar este proyecto son de software libre, funcionando con un licenciamiento de uso público. 9.2 Nivel económico Es necesario tener en cuenta los recursos humanos físicos y lógicos a los que se tendrá que hacer inversión, para lo cual se tiene el siguiente análisis: Para los recursos humanos contamos con la siguiente tabla. RECURSO HUMANO. Tutor. Nombre. Horas semanales. Horas Totales del Proyecto. Valor por Hora. Total. 2. 32. $ 30.000. $960.000. Andres Felipe Castañeda Rojas. 20. 320. $ 6.500. $2’080.000. Jimmy Julian Garavito Pacheco. 20. 320. $ 6.500. $2’080000. Msc. Rocio Rodriguez Guerrero. Estudiantes. $ 5’120.000. Total Tabla 1 Recurso Humano.
(25) Para el recurso lógico no habrá ningún gasto puesto que el software que se utilizará será software libre. RECURSO LÓGICO. Nombre. Número total de meses. Valor Mensual. Total. Internet. etb. 4. $90.000. $ 360.000. Licencias. Drupal MySql Bootstrap Laravel. 4. $0. $0. $0. $360.000. Total Tabla 2 Recurso lógico. Los recursos físicos que se utilizaran son computadores para cada estudiante, cada uno ya cuenta con un ordenador con la capacidad suficiente para desarrollar el proyecto. RECURSO FÍSICO. Cantidad. Valor unitario. Total. Computadores. 2. $1’200.000. $2’400.000 $2’400.000. Total Tabla 3 Recurso físico. Los servicios que se tendrán en cuenta para el proyecto serán el transporte que es vital para el seguimiento del proyecto y la luz que consumen los equipos. SERVICIOS. Número de meses. Valor Mensual. Total. Luz. 4. $75.000. $300.000. Transporte. 4. $120.000. $480.000. Papelería. 1. $120.000. $120.000. Total. $900.000 Tabla 4 Servicios.
(26) A continuación, la tabla 5 muestra el costo total de este proyecto. RECURSO. Total. Humano. $ 5’120.000. Lógico. $ 360.000. Fisico. $ 2’400.000. Servicios. $900.000. Otros. $0. Total. $8’780.000 Tabla 5 Costo total.
(27) 10. CRONOGRAMA.
(28) 11. ANALISIS DEL PROYECTO La metodología Scrum proporciona unos roles para la ejecución del proyecto, para esto es necesario identificar quienes serán las personas vinculadas a cada rol. Se levantan los requerimientos, por medio de las historias de usuario, después de esto se le asigna al equipo de trabajo cada actividad que debe realizar. 11.1 DEFINICIÓN A continuación, se definirán los roles del equipo que trabaja en el proyecto 11.1.1 Identificación de roles Cada uno de los roles debe ser identificado asignado a los responsables y la descripción de cada una de sus tareas, esto se ve documentado en la tabla 6. Rol Scrum Master Product Owner. Team. Responsable. Descripción. Msc. Rocío Rodríguez (Directora). Persona que lidera al equipo guiándolo para que cumpla las reglas y procesos de la metodología.. Ing. Diego Estrada. Representante de los accionistas y clientes que usan el software. Se focaliza en la parte de negocio y él es responsable del ROI del proyecto.. (Webmaster) Andrés Felipe Castañeda Rojas. Grupo de profesionales con los conocimientos técnicos necesarios y que desarrollan el proyecto de manera conjunta llevando a cabo las historias a las que se comprometen al inicio Jimmy Julian Garavito pacheco de cada sprint. Tabla 6 Identificación de roles. 11.1.2 Lista de actividades por rol En la tabla 7 se identifican cada una de las actividades que realiza cada uno de los roles asignados, esto se realiza con el fin de conocer el perfil de cada uno de los miembros del equipo, para poderlo tener en cuenta a la hora de asignarle tareas de la parte de desarrollo del proyecto y de planeación..
(29) Rol. Responsable. . Scrum Master:. . Msc. Rocío Rodríguez (Directora). . Product Owner. . Ing. Diego Estrada. . (Webmaster). . Andrés Felipe Castañeda. Team. Jimmy Julian Garavito Pacheco. . Actividad Resolver los conflictos que obstaculicen el ritmo normal del proyecto. Incentivar y motivar al equipo de trabajo. Fomentar la autogestión de sus colaboradores durante el proceso. Negociar y renegociar las condiciones con el cliente. Evitar la intromisión de terceros en las labores. Transmite las necesidades del negocio ante el director y su equipo de trabajo. Decide las características funcionales del producto o servicio. Protege los intereses del negocio, maximiza el valor de la inversión. Revisa el producto al final de cada iteración. Sugiere cambios y adaptaciones al término de cada nueva iteración. Desarrollar cada una de las tareas incluidas en el plan de trabajo. Analizar el diseño y desarrollo de cada uno de los módulos Poner al servicio del proyecto sus conocimientos y técnicas.. Tabla 7 Actividades por rol. 11.2 Historias de usuario Los clientes describen brevemente cuales son las características que debe tener el proyecto 11.2.1: Impresión de datos: En la tabla 8 se especificarán los detalles de la historia de usuario número 1 que es la impresión de datos. IMPRESIÓN DE DATOS 1 El módulo debe tener una tabla que contenga los datos que se generan por los cambios en el contenido de la página web institucional, como lo son: Usuario, acción, versión, estado, fecha de creación, fecha de editado, tipo de contenido y enlace. No pueden haber más de 10 registros por página, porque serian muchos registros para visualizar en una sola página. PRUEBAS DE ACEPTACIÓN El módulo cuenta con los elementos necesarios para guardar la información necesaria en la base de datos, relacionando los datos y mostrándolos de manera organizada y consistente. Se verificarán los datos que presente la tabla del módulo principal con los datos de la base de datos para verificar las consistencias. Se deben mostrar solamente 10 registros por página en la tabla. Tabla 8 Historia impresión de datos.
(30) 11.2.2 Filtración de información: En la tabla 9 se especificarán los detalles de la historia de usuario número 2 que es la filtración de información. FILTRACION DE INFORMACION. 2. La información debe ser filtrada por defecto con la fecha de su última edición, esto tiene que ser de manera descendente, para poder verificar cuales fueron los últimos cambios realizados en la página, los filtros de información deben ser por las fechas de creación, la acción, el nombre de los usuarios, el número de la versión y por cada uno de los datos que la tabla muestre, además de esto debe haber un espacio donde se pueda digitar un dato para filtrarlo y mostrar la información, un buscador. PRUEBAS DE ACEPTACIÓN. . Cada uno de los filtros deben arrojar la información solicitada, de forma organizada ascendentemente o descendente, esto como el administrador lo desee. Las visualizaciones de los datos deben ser como desee el administrador. Se digitarán datos en el buscador que existan y que no existan en la base de datos, para poder visualizar la información verificando su funcionamiento. Tabla 9 Historia filtración de información. 11.2.3 Impresión de Reportes: En la tabla 10 se especificarán los detalles de la historia de usuario número 3 que es la impresión de reportes. IMPRESIÓN DE REPORTES. 3. Debe haber unos botones que representen cada uno de los formatos deseados para la impresión de información como lo son CSV, Excel y Pdf, generando reportes de manera inmediata con los datos solicitados de la tabla del módulo principal, además de esto se deben poder guardar en el ordenador o donde el administrador lo desee. PRUEBAS DE ACEPTACIÓN. . Cada uno de los filtros deben. Los reporten en mención serán revisados para verificar su contenido y analizar los datos que este está arrojando. Se mostrará que los datos de los reportes están bien ordenados, con una buena visualización. Tabla 10 Historia impresión de reportes.
(31) 11.3 BACKLOG En la tabla 11 se muestra la lista de requerimientos necesarios para el desarrollo del proyecto, contiene la descripción del requerimiento, la prioridad, los responsables de su desarrollo y Sprint donde se encuentra su respectiva ejecución. ID. DESCRIPCIÓN. PRIORIDAD. RESPONSABLE. SPRINT. 1. Seleccionar la información del cambio de contenido. ALTA. Felipe Castañeda Julian Garavito. 1. 2. Integración de la tabla a la base de datos. ALTA. Felipe Castañeda Julian Garavito. 1. 3 Gestión de la información. ALTA. Felipe Castañeda Julian Garavito. 1,2,3. 4 Creación de la interfaz. ALTA. Felipe Castañeda Julian Garavito. 2. 5 Validación de los campos. ALTA. Felipe Castañeda Julian Garavito. 2. 6 Consulta de la información. ALTA. Felipe Castañeda Julian Garavito. 2,3. 7 Filtros de información. MEDIA. Felipe Castañeda Julian Garavito. 2. 8 Buscador de información. MEDIA. Felipe Castañeda Julian Garavito. 2. ALTA. Felipe Castañeda Julian Garavito. 3. ALTA. Felipe Castañeda Julian Garavito. 3. ALTA. Felipe Castañeda Julian Garavito. 3. 9 Implementación de reportes. 10. Diseño de paginación para la tabla. 11 Generación de reportes. Tabla 11 Backlog.
(32) 11.4 Sprints En la tabla 12 se especifican los Sprint de este proyecto con su respectiva descripción. Sprint Sprint 1. Nombre Análisis y diseño. Sprint 2. Desarrollo. Sprint 3. Finalización. Descripción Recolección de información, estudio del funcionamiento del CSM y diseño e integración de la tabla principal a la base de datos. Desarrollo de la parte central del módulo, gestionando la información necesaria para poder generar los reportes. Generación de reportes en los diferentes formatos, con los datos deseados por el administrador. Tabla 12 Sprints. 12. DISEÑO EN EL DESARROLLO DE LOS SPRINT Para ver como fue el desarrollo y ver el funcionamiento de cada Sprint es necesario tener en cuenta el análisis, la definición, las tareas, el diseño, el proceso de su desarrollo, un diagrama de contexto y por último las pruebas que se solicitaron en la historia de los usuarios. 12.1 Sprint 1 Analisis y diseño El sprint análisis y diseño es donde aprendemos del CMS, analizamos los requerimientos y añadimos a la base la tabla que almacenara la información requerid, cumpliendo los objetivos de diseñar una tabla capaz de almacenar la información necesaria para los reportes. 12.1.1 Definición del Sprint 1 Análisis y diseño Para poder definir las actividades del Sprint y tener mayor entendimiento de los requerimientos del proyecto fue necesario la realización de una reunión, donde los funcionarios de la Red de datos especificaran, cada uno de las funcionalidades que debería tener el proyecto para que pudiera ser integrado a la página. la reunión se realizó de manera que todas las personas implicadas en el proyecto estuvieran presentes, los funcionarios de UDNET la ing. Diana del pilar cortes y el ing. Diego Alberto Estrada expusieron las necesidades actuales del sistema, haciendo énfasis en la información que debería estar almacenada en la base de datos, solicitando que la tabla que contenga la base pueda almacenar la información que será mostrada en la tabla del módulo y a su vez en los reportes en la tabla 13 se muestran los datos recolectados en la reunión, evidenciando el requerimiento del funcionario, la descripción y el cargo en el área de la red de datos..
(33) Funcionario Ing. Diana del pilar cortes Ing. Diego Alberto Estrada Ing. Diana del pilar cortes Ing. Diego Alberto Estrada Ing. Diana del pilar cortes Ing. Diego Alberto Estrada. Información recolectada en la entrevista Es necesario el nombre de usuario de las personas que realicen algún cambio del tipo de contenido, la fecha de edición y creación del contenido, el correcto versionamiento de las acciones como lo son: edición, eliminación y adición de contenido, recalcando cual es la acción realizada, enlace de revisión para conocer visualmente cual fue el cambio y el título del contenido editado- otro tema importante es la integración del módulo a la PWI. Actualmente la PWI está migrando a un gestor de contenido diferente, por esto es importante que el proyecto que se realice se pueda instalar en las diferentes instancias de Drupal, diciendo esto realizaremos una carta al final del proyecto, después de realizar las pruebas pertinentes del sistema en el servidor y verificando su funcionalidad; esta carta expresara el cumplimiento de los objetivos planteados en el proyecto, incluyendo la futura instalación del módulo en el sistema, cumpliendo con el objetivo de la integración a la PWI.VER ANEXO 1: Carta de cumplimiento de los objetivos, firmada por los funcionarios a cargo del proyecto y la jefe de la red de datos UDNET. El modulo debe permitir la impresión de reportes en los siguientes formatos, PDF, Excel y CSV, es importante que cada reporte contenga la imagen institucional, la información debe ser consistente con los datos que están almacenados en la tabla de base de datos y así mismo deben coincidir con los datos de la tabla que muestra el modulo general. Tabla 13 formato de entrevista. En la tabla 14 se muestran los detales del Sprint 1, los criterios de aceptación para dar por terminado el desarrollo del Sprint, el objetivo general del Sprint y la descripción del Sprint. Sprint N.. Objetivo. 1. Nombre. Análisis y diseño. Analizar los requerimientos, conocer el gestor de contenido y diseñar e implementar una tabla en la base de datos.. Detalle Diseñar una tabla en la base de datos que permita a los usuarios verificar la información de los cambios en el contenido como el nombre de la persona que realizo el cambio, la fecha de creación y de edición del contenido, la versión del cambio, un enlace de edición, la acción que realizo y el nombre del contenido que edito. Criterios de aceptación Los conocimientos adquiridos deben ser los necesarios para poder brindarle solución a los problemas que pueda tener el desarrollo del proyecto. Los campos de la tabla deben ser claros. Los datos que contengan la tabla de la base de datos deben contener información clara y sin inconsistencias. Tabla 14 Definición Sprint 1.
(34) 12.1.2 Tareas del Sprint 1 Análisis y diseño A continuación, la tabla 15 muestra la descripción de las tareas que se realizan en el sprint 1. Funcionalidad Product Descripción de la tarea Backlog. Responsable. Estado. 1. Se hace una recolección Felipe Castañeda de requerimientos Julian Garavito. Terminada. 2. Se verifica como el gestor de contenido genera sus cambios relacionando las Felipe Castañeda tablas donde se Julian Garavito administra la información de estos cambios. Terminada. 3. Se hizo la selección de los datos que son relevantes Felipe Castañeda correspondientes al Julian Garavito cambio de contenido de la pagina. Terminada. 4. Se integra en la base de Felipe Castañeda datos la tabla con la Julian Garavito información seleccionada. Terminada. 5. Se valida el ingreso de la información Felipe Castañeda correspondiente a cada Julian Garavito campo. Terminada. Tabla 15 Tareas Sprint 1.
(35) 12.1.3 Diseño del Sprint 1 Análisis Y diseño . En la figura 2 podemos ver cuáles son los campos seleccionados para la tabla de la base de datos, son el resultado de las relaciones delas demás tablas con respecto al contenido y a su edición en la página.. Figura 2 Campos de la tabla principal logs. . Con los datos anteriores se pudo crear una tabla en la base de datos, al crearla se visualiza de la siguiente manera como se ve en la figura 3.. Figura 3 Tabla principal logs.
(36) 12.1.4 Proceso de desarrollo del software Sprint 1 Análisis y Diseño Se crea un archivo en la raíz del módulo con la extensión punto install figura 5, dentro de este archivo se realiza la creación de la tabla logs figura 6 y 7, configurándola de tal manera que cuando se instale el módulo se creara automáticamente en la base de datos y guarde la información de las tablas relacionadas, en la figura 4 está la consulta diseñada para la extracción de la información necesaria para los tipos de contenido, las tablas necesarias son: node_field_revision, users_field_data, node_revision_body, estas tablas contienen los datos que tiene el sistema antes de la instalación del módulo... Figura 4 consulta tablas tipos de contenido Drupal. Para tener éxito es necesario que la base de datos de Drupal ya se encuentre instalada en cualquier gestor de bases de datos.. Figura 5 Extensión punto Install. Figura 6 Creación de tabla logs.
(37) Figura 7 Creación de tabla logs.
(38) 12.1.5 Diagrama de contexto Análisis y diseño A continuación, en la figura 8 se muestra el Diagrama de contexto del Sprint 1. Figura 8 Diagrama de contexto Sprint 1. 12.1.6 Prueba del Sprint 1 Análisis y diseño En la tabla 16 se muestran las pruebas realizadas, para la aprobación del Sprint 1. Sprint N.. 1. Nombre. Análisis y diseño. Para la prueba de conocimiento, se dio por entendido que, al Descripción diseñar la tabla de manera correcta, se hizo correctamente de la prueba el trabajo de investigación por parte de los desarrolladores. El desarrollador realizo scripts de búsqueda en la base de datos, relacionando los resultados con la información de la tabla que se creó para el desarrollo del proyecto. Herramientas MySQL Workbench 8.0 CE Prueba ¿Cumple? 1 Los conocimientos adquiridos deben ser los Si necesarios para poder brindarle solución a los problemas que pueda tener el desarrollo del proyecto. 2 Los campos de la tabla deben ser claros. Si 3. Los datos que contengan la tabla de la base de datos deben contener información clara y sin inconsistencias. Tabla 16 Pruebas Sprint 1. Si.
(39) 12.1.7 Retrospectiva del Sprint 1 Análisis y diseño El Desarrollo de este Sprint fue satisfactorio, el aprendizaje sobre el CMS es el suficiente para poder desarrollar el proyecto, además de esto el uso de herramientas como MySQL workbench nos permitió el manejo de la base de datos de Drupal, sin problemas. Los problemas que se presentaron en el proceso del Sprint se evidenciaron al inicio del mismo, ya que la instalación del CMS en equipos sin los recursos necesarios es difícil, por esto mismo fue necesario el mantenimiento y la adecuación de los equipos para manejar el gestor. Como recomendación para los demás Sprint, el uso de la documentación de Drupal es muy importante, es necesario analizar bien las Historias de usuario para poder cumplir con el objetivo del Sprint y así poder cumplir con el del proyecto. 12.2 Sprint 2 Desarrollo El sprint Desarrollo cuenta con el módulo principal, donde se mostrarán los cambios en el tipo de contenido, además tendrá un sistema de filtrado y un buscador de información, cumpliendo los objetivos del proyecto, además de esto se guardará en la base de datos la adición, eliminación y alteración en cualquier tipo de contenido, este procedimiento solo podrá ser ejecutado por los administradores. 12.2.1 Definición del Sprint 2 Desarrollo En la tabla 17 se encuentran los detalles, el objetivo y los criterios de aceptación del Sprint 2. Sprint N. Objetivo. Nombre 2 Desarrollo Se desarrollara el módulo principal, donde se mostrara la información que guarde la tabla creada en la base de datos, con su respectivo filtro de información y sistema de búsqueda.. Detalle Toda la información que se muestre en este módulo no tendrá inconsistencias, además de esto por defecto debe ser filtrada por su fecha de edición, donde el primer dato debe ser el último cambio en la página. Criterios de aceptación La tabla debe tener los datos que contiene la tabla diseñada en la base de datos. El tamaño del texto debe ser visible para los usuarios. El sistema de búsqueda debe actualizar automáticamente la tabla mostrando los posibles resultados. Los filtros deben estar ubicados en la cabecera de cada campo de la tabla, con la opción de dar clic y automáticamente filtrar la información. Tabla 17 Definición Sprint 2.
(40) 12.2.2 Tareas del Sprint 2 Desarrollo A continuación, en la tabla 18, se muestran las tareas a desarrollar en el sprint 2. Funcionalidad Product Descripción de la tarea Backlog. Responsable. Estado. 1. se diseña un tabla que pueda muestre la Felipe Castañeda información que está en la Julian Garavito base de datos.. Terminada. 2. Se diseñan hooks (ganchos) que permitan Felipe Castañeda guardar la información de Julian Garavito cada cambio apenas se realice en la pagina. Terminada. 3. se implementan los filtros Felipe Castañeda de información, con ayuda Julian Garavito de la extensión datatable.. Terminada. 4. la extensión datatable cuenta con un sistema de búsqueda automático, Felipe Castañeda permitiendo búsquedas Julian Garavito que actualizan la tabla de información. Terminada. 5. se define la paginación de Felipe Castañeda la tabla con 10 registros Julian Garavito por pagina. Terminada. Tabla 18 Tareas Sprint 2.
(41) 12.2.3 Diseño del Sprint 2 desarrollo . Tabla: En la figura 9 se muestra la tabla que se diseñó para mostrar la información de la base de datos.. Figura 9 Tabla módulo general. . Filtros: cada campo tiene unas flechas que representan los filtros de información, esto quiere decir que, al dar clic automáticamente se filtra la información de forma ascendente o descendente según sea el caso.. Figura 10 Filtros. . Buscador: es una caja de texto con un indicador que representa que es un buscador, es necesario la digitación del dato a buscar, la tabla se filtrara automáticamente reduciéndose al dato buscado.. Figura 11 Buscador. 12.2.4 Proceso de desarrollo del software Sprint 2 desarrollo. Para el módulo principal fue necesaria la implementación de hooks(ganchos) que son funciones que permiten hacer una acción cuando algo ocurre en el sistema Drupal, en este caso fue necesaria la implementación de hooks de adición Figura 12, alteración Figura 13 y borrado Figura 14, permitiendo que, cuando algún contenido cambie, automáticamente le avise a la base de datos de dicho cambio y los almacene en la tabla diseñada para guardar esa información..
(42) Figura 12 Adición. Al verificar que ya existen contenidos con el mismo nodo esta función permite, crear las revisiones del nodo aumentando a medida que se va editado el contenido..
(43) Figura 13 Alteración.
(44) Figura 14 Borrado. 12.2.5 Diagrama de contexto Sprint 2 Desarrollo A continuación, en la figura 15 se muestra el Diagrama de contexto del Sprint 2. Figura 15 Diagrama de contexto Sprint 2.
Figure
+7
Documento similar