PONTIFICIA UNIVERSIDAD CATÓLICA DEL ECUADOR SEDE SANTO DOMINGO
Dirección Académica – Escuela de Sistemas
SISTEMA WEB PARA EL CONTROL DE INVENTARIO Y FACTURACIÓN EN EL ÁREA DE RESTAURANT DEL GRAND HOTEL SANTO DOMINGO, EN EL PERIODO 2018 - 2019. Trabajo de Titulación previo a la obtención del título de Ingeniero de Sistemas y Computación.
Línea de Investigación: Tecnologías de la información y la comunicación.
Autoría: ANA BELÉN REMACHE PEÑAFIEL EDISON OSWALDO CHACHA JARA Dirección: Mg. LUIS JAVIER ULLOA MENESES
Santo Domingo – Ecuador Febrero, 2019
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 INVENTARIO Y FACTURACIÓN EN EL ÁREA DE RESTAURANT DEL GRAND HOTEL SANTO DOMINGO, EN EL PERIODO 2018 - 2019.
Línea de Investigación: Tecnologías de la información y la comunicación. Autoría: ANA BELÉN REMACHE PEÑAFIEL EDISON OSWALDO CHACHA JARA
Luis Javier Ulloa Meneses, Mg.
f._____________________
DIRECTOR DE TRABAJO DE TITULACIÓN Rodolfo Sirilo Córdova Gálvez, Mg.
f._____________________
CALIFICADOR José Luis Centeno Lara, Mg.
f._____________________
CALIFICADOR Luis Javier Ulloa Meneses, Mg.
f._____________________
DIRECTOR DE LA ESCUELA DE SISTEMAS
Santo Domingo – Ecuador Febrero, 2019
iii
DECLARACIÓN DE AUTENTICIDAD Y RESPONSABILIDAD Nosotros, REMACHE PEÑAFIEL ANA BELÉN portador de la cédula de ciudadanía No. 172391813-0 y CHACHA JARA EDISON OSWALDO portador de la cédula de ciudadanía No. 172124901-7 declaramos que los resultados obtenidos en la investigación que presentamos como informe final, previo la obtención del Grado de Ingeniero de sistemas y computación son absolutamente originales, auténticos y personales. En tal virtud, declaramos 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 nuestra sola y exclusiva responsabilidad legal y académica. Igualmente declaramos que todo resultado académico que se desprenda de esta investigación y que se difunda tendrá como filiación la Pontificia Universidad Católica del Ecuador, Sede Santo Domingo, reconociendo en las autorías al director del Trabajo de Titulación y demás profesores que amerita.
iv
AGRADECIMIENTO Agradezco a Dios por guiarme a lo largo de mi vida, ser el apoyo y fortaleza en aquellos momentos de dificultad y de debilidad. Gracias a mis padres: Galo Remache y Anita Peñafiel, por ser los principales promotores de mis sueños, por confiar y creer en mis expectativas, por los consejos, valores y principios que me han inculcado. Ana Belén Remache Peñafiel Principalmente agradezco a Dios porque todos mis logros los he conseguido gracias a él dándome la vida, salud y capacidad para desarrollar un objetivo más en mi vida. A mis padres por estar a mi lado en los momentos y buenos y malos. Agradezco a Marcela Chacha por ser mi apoyo, consejos y guía en todo momento, por hacerme ver que todo sacrificio tiene su recompensa y que lo bueno nunca será fácil. Edison Oswaldo Chacha Jara
v
DEDICATORIA El presente trabajo se lo dedico principalmente a Dios, por darme fuerza para continuar en este proceso de obtener uno de los anhelos más deseados. A mis padres, por su amor, trabajo y sacrificio en todos estos años, a mi hija por ser el impulso de seguir adelante. Gracias a ustedes he logrado llegar a ser lo que soy. Ana Belén Remache Peñafiel A mis padres porque confiaron en mí y han sido la fuente de mi inspiración. A Marcela Chacha por su incondicional apoyo, comprensión y paciencia. Edison Oswaldo Chacha Jara
vi
RESUMEN El presente trabajo de titulación consiste en el desarrollo de un sistema web encargado de controlar el manejo del inventario y facturación en el área de restaurant del Grand Hotel Santo Domingo. Este sistema facilita el control y manejo de los datos que se tienen en el restaurant, tanto de las entradas o salidas de bodega, como el control de ventas realizadas permitiendo al administrador tener una mayor comprensión acerca de los movimientos que se realizan en el restaurant teniendo un óptimo desempeño. Este documento detalla las técnicas e instrumentos de recolección de datos utilizados para este trabajo, también muestra los procesos para el desarrollo del sistema que se realizó mediante el marco de trabajo SCRUM detallando cada una de sus fases. Se utilizaron herramientas Open Source para el desarrollo con la finalidad de reducir costos. El sistema posee una interfaz amigable, intuitiva de fácil manejo para el usuario, para el desarrollo se hizo uso del lenguaje de programación PHP 7.1 y JavaScript, para el diseño de interfaces se utilizó el lenguaje html5 y Bootstrap adminLTE 2 como framework. Se empleó MariaDB como gestor de base de datos y para la codificación el editor de texto Atom 1.34.0 que permitió ahorrar tiempo en la fase de depuración ofreciendo ayuda con la sintaxis. Palabras clave: Inventario; Base de datos; Open Source; Control.
vii
ABSTRACT The present titling work consists of the development of a web system in charge of controlling the inventory management and billing in the restaurant area of the Grand Hotel Santo Domingo. This system facilitates the control and management of the data held in the restaurant, both the entrances and exits of the warehouse, and the control of sales made allowing the administrator to have a greater understanding of the movements that are made in the restaurant optimal performance. This document details the techniques and data collection instruments used for this work, it also shows the processes for the development of the system that was made through the SCRUM framework detailing each of its phases. Open Source tools were used for development in order to reduce costs. The system has a user-friendly interface, easy to use for the user, the development was made using the PHP 7.1 programming language and JavaScript, for the design of interfaces the html5 language and Bootstrap admin LTE 2 was used as a framework. Maria DB was used as the database manager and for coding the Atom 1.34.0 text editor, which saved time in the debugging phase by offering help with the syntax. Keywords: Inventory; Database; Open Source; Control.
viii
ÍNDICE DE CONTENIDOS 1.
INTRODUCCIÓN ............................................................................ 1
2.
PLANTEAMIENTO DEL PROBLEMA ....................................... 3
2.2.1.
Pregunta general. ................................................................................................ 4
2.2.2.
Preguntas específicas. ......................................................................................... 4
2.4.1.
Objetivo general. ................................................................................................. 6
2.4.2.
Objetivos específicos. .......................................................................................... 6
3.
MARCO REFERENCIAL ............................................................... 7
3.2.1.
Software. .............................................................................................................. 8
3.2.2.
Ingeniería de software. ....................................................................................... 8
3.2.3.
Plataforma Web. ................................................................................................. 9
3.2.4.
Servidor web. ....................................................................................................... 9
3.2.5.
Metodologías Ágiles. ........................................................................................... 9
3.2.6.
Metodologías tradicionales. .............................................................................. 10
ix
3.2.6.3.1.
Sprint. .................................................................................................................. 13
3.2.6.3.2.
Product Backlog. ................................................................................................. 14
3.2.7.
Estandarización. ................................................................................................ 15
3.2.8.
Seguridad en la red. .......................................................................................... 16
3.2.9.
Seguridad en una base de datos. ...................................................................... 16
3.2.10.
Html 5. ................................................................................................................ 16
3.2.11.
CSS 3. ................................................................................................................. 17
3.2.12.
Lenguajes de programación. ............................................................................ 17
3.2.13.
Framework. ....................................................................................................... 18
3.2.14.
Base de datos. .................................................................................................... 18
3.2.14.1.1. MariaDB. ............................................................................................................ 18 3.2.14.1.2. PostgreSQL. ........................................................................................................ 19 3.2.14.1.3. Comparativa de Bases de Datos. ......................................................................... 19
4.
METODOLOGÍA DE LA INVESTIGACIÓN ............................ 21
4.1.1.
Enfoque de investigación. ................................................................................. 21
4.1.2.
Diseño de investigación. .................................................................................... 21
4.1.3.
Tipo de investigación. ....................................................................................... 21
x
4.2.1.
Poblaciรณn. ........................................................................................................... 22
4.2.2.
Muestra. ............................................................................................................. 22
4.3.1.
Entrevista. .......................................................................................................... 22
5.
RESULTADOS ............................................................................... 24
5.1.1.
Entrevista a la gerente del Grand Hotel Santo Domingo. ............................. 24
5.3.1.
Roles. .................................................................................................................. 27
5.3.2.
Product Backlog. ............................................................................................... 27
5.3.3.
Sprint 1............................................................................................................... 29
5.3.4.
Sprint 2............................................................................................................... 35
5.3.5.
Sprint 3............................................................................................................. 359
xi
6.
DISCUSIÓN .................................................................................... 42
7.
CONCLUSIONES........................................................................... 43
8.
RECOMENDACIONES ................................................................ 44
9.
REFERENCIAS BIBLIOGRÁFICAS.......................................... 45
10.
ANEXOS ........................................................................................... 47
xii
ÍNDICE DE TABLAS Tabla 1. Comparativa de metodologías de desarrollo tradicional y ágil.................................. 11 Tabla 2. Comparativa de metodologías ágiles entre XP, Crystal y Scrum .............................. 15 Tabla 3. Comparativa de los gestores de base de datos ........................................................... 20 Tabla 4. Roles Scrum .............................................................................................................. 27 Tabla 5. Product Backlog ......................................................................................................... 28 Tabla 6. Sprint Backlog 1 ........................................................................................................ 29 Tabla 7. Sprint Backlog 2 ........................................................................................................ 35 Tabla 8. Sprint Backlog 3 ........................................................................................................ 39
xiii
ÍNDICE DE FIGURAS Figura 1. Ciclo de scrum. ......................................................................................................... 13 Figura 2. Diagrama de procesos y actividades de la gestión de inventario y facturación ....... 26 Figura 3. Tablero de trello. ...................................................................................................... 28 Figura 4. Burndown chart del sprint 1.. ................................................................................... 30 Figura 5. Modelado de la base de datos. .................................................................................. 31 Figura 6. Login de acceso al sistema. ...................................................................................... 32 Figura 7. Formulario de ingreso de productos.. ....................................................................... 33 Figura 8. Listado de productos................................................................................................. 33 Figura 9. Opciones para la generación de reportes. ................................................................. 34 Figura 10. Burndown chart del sprint 2. .................................................................................. 36 Figura 11. Registro de ventas................................................................................................... 37 Figura 12. Ingreso categoría .................................................................................................... 37 Figura 13. Listado de categorias.. ............................................................................................ 38 Figura 14. Burndown chart sprint 3. ........................................................................................ 40 Figura 15. Resumen de ventas.. ............................................................................................... 41 Figura 16. Estadística de ventas anuales. ................................................................................. 41
xiv
ÍNDICE DE ANEXOS Anexo 1. Carta de Aceptación del Proyecto ............................................................................ 47 Anexo 2. Acta de Entrega-Recepción del proyecto ................................................................. 48 Anexo 3. Carta de Impacto ...................................................................................................... 49 Anexo 4. Modelo de Entrevista ............................................................................................... 50 Anexo 5. Historias de Usuario ................................................................................................. 52 Anexo 6. Manual de usuario .................................................................................................... 59 Anexo 7. Manual Técnico ........................................................................................................ 65 Anexo 8. Diccionario de datos ................................................................................................. 68 Anexo 9. Presupuesto............................................................................................................... 77
1
1.
INTRODUCCIÓN
En el presente trabajo de titulación se muestra toda la información recogida y el desarrollo de éste con la finalidad de ofrecer al Grand Hotel Santo Domingo un sistema web para el control de inventario y facturación del área de restaurant y así facilitar los procesos de facturación para ofrecer un mejor servicio a sus clientes. Este trabajo consta de planteamiento del problema el cual contiene cinco partes en las que se tiene la delimitación del problema de investigación que se indica la idea principal de lo que se va a realizar y cierta información referente a la empresa. En lo que respecta a la formulación de problema y sistematización del problema se presenta el problema en sí de la investigación representado por medio de preguntas. En la justificación se presenta el por qué se va a realizar la investigación, y la relación que este tiene con el plan nacional del buen vivir. Por último, se tiene los objetivos de investigación en el que se detalla que es lo que se quiere conseguir en el desarrollo del trabajo de titulación. En la sección de marco referencial se evidencia la recolección de información bibliográfica necesaria para el desarrollo de este trabajo de titulación, mediante libros de biblioteca de la universidad, bibliotecas virtuales y artículos científicos con información necesaria para este proyecto. Se presentan cinco antecedentes de trabajos relacionados al tema de investigación, además se indica la realización del estado de arte en el cual se realizan las comparativas necesarias para escoger las opciones convenientes para la realización del trabajo de titulación. En lo que respecta a la metodología se expresa el cómo se realizó la investigación, mediante que metodología se desarrolló el trabajo de titulación, el diseño y tipo de investigación, se indica la población y muestra con la técnica e Instrumentos necesaria para la recogida de datos. La siguiente sección consiste en explicar de manera detallada los resultados obtenidos en base a los objetivos planteados inicialmente en el presente trabajo, se describe el análisis de la recogida de información realizada por medio de la entrevista y cada una de las fases del desarrollo del sistema.
2 Para la secciรณn de conclusiones, recomendaciones y referencias bibliogrรกficas, se recopila las diferentes fuentes de informaciรณn bibliogrรกficas utilizadas para el desarrollo del presente trabajo. Finalmente se adjunta los anexos correspondientes al presente trabajo.
3
2.
PLANTEAMIENTO DEL PROBLEMA
1.1. Delimitación del problema A nivel mundial la tecnología ha avanzado en la sociedad con la innovación en sistemas adaptándose a los requerimientos de los usuarios, en un estudio realizado por Toast Inc., uno de los principales proveedores de hardware y software para restaurantes, en el 2016 una gran cantidad de restaurantes usan un sistema o tecnología para gestionar su restaurante día a día y muchas de las empresas que usan algún otro método para el control de ventas piensan en adquirir un sistema por la eficiencia y rapidez que estos brindan en todos sus procesos. En Ecuador, según la guía ecuatoriana de transporte y turismo los restaurantes implementan sistemas tecnológicos que ayuda en la gestión y permite maximizar las ventas sea por medio de computadores, tabletas o celulares, la utilización de sistemas aporta grandes beneficios sea para el restaurante o para el usuario agilizando todos los procesos de inventario y facturación. El Grand Hotel Santo Domingo es una empresa de hospedaje para ejecutivos, fue creado en 1998 con la inversión de tres accionistas y a cargo de la empresa se encuentra la Ing. Thally Dueñas gerente del hotel, actualmente la empresa consta de varios servicios como el de restaurant. La misión de la empresa es satisfacer las necesidades de confort de los clientes y ofrecer un servicio de excelente calidad con una extensa variedad de platillos elaborados con gran eficiencia y profesionalismo, Así mismo posee sus excelentes instalaciones con tecnología sofisticada para la comodidad de todos sus clientes. La visión del Grand Hotel Santo Domingo es llegar a ser el mejor hotel de la provincia basándose en sus servicios de comodidad y obtener la mejor satisfacción para el cliente. En la actualidad la empresa tiene inconvenientes con la escasez de información de los ingredientes que se encuentran disponibles para la elaboración de platillos, afectando la realización de platos ofertados por el establecimiento.
4 La empresa presenta inconvenientes debido a la información inconsistente que se tiene del proceso de ventas en el módulo de facturación, por el cual con esto se ha dado un resultado que provoca desconfianza por parte de los administradores al no tener los reportes correspondientes. La falta de seguridad en el área de inventario al no tener un registro controlado de los productos que ingresan y salen de bodega ha provocado el desabastecimiento de los productos o pérdidas inexplicables de productos para la elaboración de platillos generando pérdidas para la empresa. El presente trabajo está enfocado en el eje 2 de la economía al servicio de la sociedad aumentando la productividad y competitividad esto contribuye con el objetivo 5 del Plan Nacional del Buen Vivir, impulsar la competitividad para el Crecimiento Económico Sustentable de Manera Redistributiva y Solidaria (PNBV, 2017), cuya demanda ayuda a elevar la producción en ventas con el uso de tecnologías para brindar un servicio de gran calidad con suministros suficientes de manera eficiente para los servicios del restaurant promoviendo la innovación y emprendimiento que aprovecha el uso de su ventaja competitiva dándose mayor oportunidad en el mercado ampliando y logrando un aumento económico que sea sustentable y sostenible para la empresa.
2.1. Preguntas de investigación Pregunta general. ¿Cómo controlar el inventario y facturación del área del restaurante del Gran Hotel Santo Domingo? Preguntas específicas.
¿Cuáles son los procesos que se realizan para el control de inventario y facturación del ares de restaurant del Gran Hotel Santo Domingo?
¿Cuáles son los requerimientos funcionales y no funcionales para el desarrollo de la aplicación web para el control de inventario y facturación del área del restaurante del Gran Hotel Santo Domingo?
5
¿Qué tipo de metodología se debe aplicar para el desarrollo del sistema web para el control de inventario y facturación del área del restaurante del Gran Hotel?
¿Cómo facilitar el proceso de inventario y facturación del área del restaurant del Gran Hotel Santo Domingo?
3.1. Justificación de la investigación El desarrollo web hoy en día permite el mejoramiento de los negocios a nivel de empresas e instituciones aportando en la minimización de tiempo, economía, mayor confiabilidad y rapidez en procesos, aumentando la productividad del negocio por la facilidad del manejo de la información. El Grand Hotel Santo Domingo, entre sus múltiples servicios que brinda en el área de restaurant, desea mejorar la calidad de servicio para los clientes, teniendo la necesidad de obtener un sistema web que permita llevar un control eficiente del inventario y facturación. La elaboración e implementación de este proyecto beneficia directamente a los administradores del Grand Hotel Santo Domingo y a sus trabajadores, de manera indirecta a todos los clientes. El proyecto consta con todos los recursos necesarios como son las personas que realizan el proyecto y el personal que colaboró con la información necesaria para el desarrollo del sistema al igual que el tiempo invertido para la elaboración del mismo, además cuenta con la disponibilidad de todos los materiales a implementar dados por la misma empresa. El presente trabajo muestra la realización del sistema web, el cual permite optimizar y gestionar de manera más rápida el control del inventario y facturación. El módulo de inventario consiste en llevar un registro de los productos que entran y salen de bodega en el que se muestra a detalle cada uno de ellos, indicando el stock actual y las respectivas entradas y salidas realizadas. En el módulo de ventas para el restaurant, se ingresa los pedidos de los clientes para proceder a generar la factura correspondiente, del cual se lleva un registro de las ventas realizadas ya sea mensual o anualmente. De esta manera la administración tiene acceso a toda la información ya sea de inventario o ventas del restaurant y así poder generar los reportes pertinentes.
6 Con la realización de este trabajo se espera poder aportar de manera beneficiosa al Gran Hotel Santo Domingo, para que pueda tener mejores resultados en el manejo de la información que posee. También poder aportar con información necesaria a personas que necesiten, acerca de la investigación realizada en base a lo que consiste llevar el control de inventario y facturación de un restaurant.
4.1. Objetivos de la investigación Objetivo general. Implementar un sistema web para el control de inventario y facturación del área de restaurant del Grand Hotel Santo Domingo. Objetivos específicos.
Determinar los procesos que se llevan a cabo para control de inventarios y facturación.
Definir la metodología para el desarrollo de software que se adapte a los procesos para el control de inventario y facturación.
Desarrollar un sistema web para el control de inventario y facturación en el área de restaurant del Grand Hotel Santo Domingo.
7
3.
MARCO REFERENCIAL
5.1. Antecedentes A nivel internacional se encontraron varios trabajos de titulación relacionados al control de inventario y facturación de varias empresas los cuales se presentan a continuación: En el país de El Salvador la Universidad pedagógica de El Salvador en el año 2015 en su proyecto de titulación “Sistema de inventario y facturación para cafetería y panadería Gómez, municipio de san José Villanueva, la Libertad” desarrollo un sistema informático que se encarga de mejorar los procesos de inventario y facturación de la cafetería y panadería. En la Universidad Privada Del Norte ubicada en Perú en el año 2016 se encontró el trabajo de titulación “Desarrollo de un sistema de control de inventarios y su incidencia en la reducción de pérdidas relacionadas a existencias, en el restaurant El Paisa”. Este proyecto determino la incidencia para el desarrollo del sistema en minimizar las pérdidas relacionadas a existenciales realizando diagnósticos, evaluando los procesos de gestión de la empresa y procedieron a proponer su idea de nuevos diseños la cual fue aceptada y aplicada dando buenos resultados reduciendo perdidas relacionadas a existencias en la empresa. En el país de Chile la Universidad Austral De Chile en el año 2005 se presentó el proyecto de titulación “Sistema para el control de inventario, venta y generación de datos comerciales de restaurante”. El desarrollo de este sistema da solución a los problemas crecientes en el restaurant apoyando la gestión del negocio mejorando la venta de productos comestibles. Al igual que en empresas externas al país, en el Ecuador se han mejorado las negociaciones. En la gestión de inventario y facturación a nivel nacional, con la implementando de sistemas web las empresas se benefician con las mejoras y optimización que estos permiten. En la Universidad de las Américas “UDLA” ubicada quito en el año 2010 se propuso el tema de titulación “Aplicación web para el control de inventario, ingresos, egresos y facturación de la empresa COMARP”. La empresa no contaba con un sistema informático que ayude con el control de inventario la cual fue desarrollada obteniendo resultandos satisfactorios que ayudo a la empresa con el control y disminución de pérdidas en la distribución de sus productos en inventario.
8 En el año 2016 en Guayaquil la Universidad Politécnica Salesiana del Ecuador se presentó el proyecto de titulación “Desarrollo e implementación de aplicación de escritorio para inventario y facturación en el restaurante La Cabaña Típica”. En el proyecto realizan un análisis completo de los procesos que ejecuta el restaurante para determinar los requerimientos para el desarrollo del software la cual ayuda en la gestión de inventario con los constantes movimientos de bodega y generando las facturas automáticamente.
6.1. Marco teórico Software. Son conjuntos de programas que procesan instrucciones o reglas permitiendo que el ordenador realice múltiples funcionalidades para el uso del cliente sea uno en particular o para una línea de mercados en general. Un software conlleva instrucciones que una vez siendo ejecutadas nos permite obtener funciones y características buscadas, permitiendo la manipulación adecuada de los datos (Pressman, 2010, p.3). Ingeniería de software. Es un conjunto de guías o disciplinas de la ingeniería que abarca varias etapas de interés sobre la producción de un software, desde la especificación de los sistemas siendo su primera etapa hasta su mantenimiento siendo esté después de haber sido puesto en funcionamiento (Sommerville, 2014, p.7). La ingeniería del software presenta varias actividades que son fundamentales para el desarrollo de un software las cuales son: Especificación. En la especificación se permite al cliente indicar los requerimientos que le son necesarios, para que el programador logre definir el software a producir con sus respectivas restricciones de operación (Sommerville, 2014, p.9).
9 Desarrollo. Es el proceso donde el software se diseña con respecto a las especificaciones del cliente y programando el software (Sommerville, 2014, p.9). Validación. Este proceso permite verificar que el software cumpla con los requerimientos asegurando que sean los paramentos dados por el cliente (Sommerville, 2014, p.9). En base a los requerimientos dados por el cliente se realiza las revisiones y pruebas de lo establecido, para así poder asegurar que se cumple cada uno de los requerimientos que pidió el cliente y cumplir con lo acordado. Evolución del software. La evolución del software permite cambios sobre los requerimientos dados por el cliente modificando el software (Sommerville, 2014, p.9). Plataforma Web. Una plataforma virtual es muy importante en una empresa, debido a que nos permite administrar y mejorar de forma confiable ciertas acciones que conlleva dentro de una empresa. Según Aragón & McDonnell (2014) con el fin de evitar inconvenientes entre los miembros de la organización de desconfianza, que la plataforma les permita ingresar, mantener y controlar su propia información con el sistema de control de la plataforma a cargo de los respaldos de los procesos llevados a cargo evitando que personas externas realicen esas tareas, el objetivo de este entorno es crear un soporte organizado en un modo orientado al servicio. Servidor web. Son ordenadores que poseen un amplio sistema de accesos a la información heterogénea los servidores tienen una estable conexión a por la red mediante asignaciones de direccione IP que son asignadas de forma permanente, dentro de estas se encuentran alojadas datos almacenados (Cobo, 2008, p.5).
Metodologías Ágiles.
10 Las metodologías ágiles son métodos interactivos que aseguran un producto de mayor calidad con el costo y tiempo pactado, en las empresas están dejando las metodologías tradicionales por metodologías de mayor eficacia. Según Malenki & Ramsin (2018): Las metodologías ágiles son modelos adecuados para desarrollar sistemas web, ya que en ellos se aborda las necesidades del cliente de forma específica, sin embargo existen muchas metodologías para el desarrollo web las cuales se pueden hacer uso adecuado según la conveniencia del sistema con las fortalezas y debilidades que posee la metodología, S-Scrum es una metodología de desarrollo de sistemas seguros tiene el objetivo de proporcionar sistemas web críticos de seguridad analizando las primeras etapas de desarrollo de Scrum. Metodologías tradicionales. La metodologías tradicionales dieron inicio por la fuerte necesidad de que los procesos mejoren llevando a una meta prevista los proyectos entre la metodología tenemos varias que se basan en llevar una documentación muy exhaustiva conteniendo todo los procesos del proyecto centrándose en cumplir el plan de trabajo ya definido algo importante en consideración del este enfoque son los altos costos que se presentan si se quiere implementar o modificar sin ofrecer una buena solución donde el entorno sea volátil (Figueroa, 2013, p.1). Comparativa de las metodologías de desarrollo de software. Para el desarrollo de las comparativas se consideran los siguientes parámetros:
Cumple con el 100% de las características seleccionadas: 10 puntos.
Cumple con el 50% de las características indicadas: 5 puntos.
Cumple con al menos el 25% de las características establecidas: 2,5 puntos.
No cumple con ninguna de las características: 0 puntos.
Con el paso de los años para el desarrollo de software han ido apareciendo diferentes tipos de metodologías de desarrollo de las cuales se han clasificado en dos grupos, metodologías tradicionales y metodologías ágiles, se establecerá ciertas características para determinar cuál es la metodología más eficiente para el desarrollo del trabajo de titulación. Los criterios a tomarse en cuenta para la comparativa de metodologías de desarrollo son:
11
Producción de código más no de desarrollo.- Se requiere que esté basado en heurísticas resultado de la producción de código.
Adaptable a cambios. - Asegurar que se pueda satisfacer con las necesidades del cliente.
Proceso de desarrollo poco controlado. - Se requiere que el proceso de desarrollo no sea muy controlado para así facilitar el proceso.
Contrato flexible.- El encargado de revisión de software debe intervenir directamente en el desarrollo y así poder tener como resultado un software totalmente al gusto del cliente.
Interacción del cliente con en el desarrollo.- Cliente se encuentra involucrado en el proceso de recolección de información y así obtener un producto acorde a sus peticiones.
Número pequeño de integrantes.- Debido a que el trabajo de titulación se lo está realizando en pareja se tiene un número pequeño de integrantes.
Arquitectura flexible.- Al tener un tiempo corto para el desarrollo se requiere una arquitectura flexible que permite que no se extienda el desarrollo de las tareas.
Tabla 1. Comparativa de metodologías de desarrollo tradicional y ágil Comparativa de metodologías de desarrollo tradicional y ágil.
12
Criterios
Metodología Tradicional
Pts
Metodología Ágil
Pts
Producción de código más no de desarrollo
Se basan en normas provenientes de estándares seguidos por el entorno de desarrollo
10
Se basan en heurísticas provenientes de prácticas de producción de código
10
Adaptable a cambios
Cierta resistencia a cambios
0
Preparados para cambios durante el proyecto
10
Proceso de desarrollo poco controlado
Proceso muy controlado, numerosas normas
2,5
Proceso menos controlado. Con pocos principios
10
Contrato flexible
Contrato prefijado
5
Contrato flexible e incluso inexistente
10
Interacción del cliente con en el desarrollo
Cliente interactúa con el equipo de desarrollo mediante reuniones
5
El cliente es parte del desarrollo
10
Número pequeño de integrantes
Grupos grandes
0
Grupos pequeños, no más de 10 integrantes
10
Arquitectura flexible
La arquitectura del software es esencial
5
Menor énfasis en la arquitectura de software
10
TOTAL Porcentaje
27,5 34,37%
80 100%
Nota: Adaptado de “Criterios de selección de metodologías de desarrollo de software” por Tinoco, Rosales, Salas, 2010, Perú, p71.
Como se puede observar dentro de los criterios analizados en la tabla, se puede evidenciar que la metodología más eficiente para el desarrollo del trabajo de titulación es la metodología ágil, debido a que cumple con un 100% los criterios necesarios para el desarrollo a diferencia de la metodología tradicional que cumple con el 34,37%. Programación extrema (XP). Es uno de los métodos agiles para la elaboración de un software siendo de gran ayuda para proyectos en los que su desarrollo sea mediano o pequeño por ser un método de fácil adaptación, permitiendo integrar modificaciones y una funcionalidad nueva al diseño sin dar gran impacto a la calidad del producto (Álvarez, 2012, p.49).
13 La programación XP contiene varias técnicas las cuales la caracterizan como una metodología ágil.
Posee un desarrollo incremental el cual consiste en la entrega del sistema en pequeñas iteración basándose en los escenarios de prueba que intervienen para la planificación del proyecto.
El cliente tiene gran participación en base al compromiso que se tiene con el equipo de desarrollo. Son los responsables de establecer como se efectúan las pruebas de aceptación.
Si se presentan cambios a través del desarrollo se los realiza a través de las entregas que se realizan en cada iteración. Scrum.
Scrum nos propone un marco de trabajo que nos ayuda a obtener resultados de gran calidad mediante iteraciones cortas que vienen siendo llamadas sprint, siendo esta una de las metodologías ágiles más difundida y aceptadas para ser aplicadas en todas las clases de proyectos (Álvarez, 2012, p.39).
Figura 1. Ciclo de Scrum. Adaptado de “Métodos Ägiles y Scrum” Álvarez, 2012, España: Anaya.
3.1.6.3.1.Sprint.
14 Los sprint son iteraciones que tienen duración de 1 a 4 semanas, cada una de las iteraciones terminadas serán presentadas al cliente para ver su opinión sobre el producto, después de cada sprint terminado el grupo de trabajo se reunirá para analizar la manera en que se está desarrollando el trabajo dando dos puntos de vistas “el que” se ha hecho en el proyecto y “el cómo” se lo está construyendo de esta manera cada iteración ira mejorando por la experiencia (Álvarez, 2012, p.39). Cada sprint permite que el proyecto se pueda desarrollar de mejor manera conforme a cada requerimiento que el cliente desee, permitiendo así que el cliente en cada iteración vaya teniendo una idea de lo que va a ser el sistema y aportar con alguna corrección o inquietud que se tenga. De esta manera el sistema se irá mejorando y solventando todos los requerimientos. 3.1.6.3.2.Product Backlog. Es un repositorio de requerimientos dados por el cliente de forma priorizada y estimadas, es prioridad del product owner y los demás afectados ser asesorados durante la creación y mantenimiento del proyecto para una constante actualización, el producto Backlog es un lenguaje de negocios que revisa la priorización antes del iniciar cada sprint (Álvarez, 2012, p.39). El product backog permite enlistar todas las tareas que se tiene planificadas para cada sprint, según lo establezca el product owner, y así poder establecer lo primordial y tomar en cuenta el tiempo en cómo se va avanzando con el proyecto. Comparativa de metodologías ágiles. Se procede a comparar las metodologías ágiles más destacadas y así escoger la más conveniente para el trabajo de titulación. Para el desarrollo de las comparativas se consideran los siguientes parámetros:
Cumple con el 100% de las características seleccionadas: 10 puntos.
Cumple con el 50% de las características indicadas: 5 puntos.
Cumple con al menos el 25% de las características establecidas: 2,5 puntos.
15
No cumple con ninguna de las características: 0 puntos.
Los criterios a tomarse en cuenta para la comparativa de metodologías de desarrollo son:
Adaptable a cambios.- Permite la realización de cambios que se presenten durante el desarrollo del proyecto.
Interacción con el cliente.- El cliente tienen participación en la realización del proyecto.
Colaboración: Interacción entre desarrollador y cliente.
Simplicidad: Facilidad de mantenimiento a futuro.
Se va a considerar las metodologías Crystal, Scrum y XP a continuación se detallarán ciertos criterios necesarios para el desarrollo y poder escoger la metodología adecuada. Tabla 2. Comparativa de metodologías ágiles entre XP, Crystal y Scrum Comparativa de metodologías ágiles entre XP, Crystal y Scrum
Criterios
XP
Crystal
Scrum
Adaptable a cambios
5
5
10
Interacción con el cliente
10
5
10
Colaboración
10
10
10
Simplicidad
10
5
10
TOTAL Porcentaje
35
25
40
87,5%
62,5%
100%
Nota: Adaptado de “Revisión de metodologías ágiles para el desarrollo de software” por Navarro, Fernández, Morales, 2013, Bogotá, p71.
Entre los criterios expuestos en la tabla, se obtiene que la metodología ágil más eficiente para el desarrollo del trabajo de titulación en la metodología Scrum con un 100%de concordancia con los criterios establecidos a diferencia de XP con un 87,5% y un 62,5% perteneciente a Crystal, estableciendo así la metodología más adecuada para este desarrollo.
Estandarización.
16 Para el desarrollo de aplicaciones web una de las estandarizaciones más importantes es ISO que regulan las normas para la elaboración de un sistema esta normalización es de forma voluntaria dependiendo del desarrollador. Según Molina, Zea, Honores & Gómez (2016) una aplicación web basada en sus principios establece las solicitudes y requerimientos en el sistema ejecutando una combinación de procesos y la comunicación interna con la base de datos, siendo esto necesario el uso del estándar ISO Organización Internacional de Normalización para la evaluación de la calidad del producto de software. Existe múltiples organismos de estandarización una de ellas es W3C que trata de estandarizar la web internacionalmente con las etiquetas que se utiliza en html para la creación de Diversos diseños web con una jerarquía en común con los demás sistemas en desarrollo. De acuerdo con Gamalielsson & Lundell (2017) “W3C (World Wide Web Consortium) es “una comunidad internacional donde las organizaciones, miembros, personal a tiempo completo, y la obra pública juntos para desarrollar estándares Web. Hay algunos componentes clave en la organización del proceso de normalización. Uno de ellos es el comité asesor, que tiene un representante de cada miembro del W3C y realiza diferentes tipos de opiniones en el proceso de normalización, y también elige un consejo asesor y el grupo de arquitectura técnica (que trabaja principalmente en el desarrollo de la arquitectura web y documentación)”. Seguridad en la red. La seguridad en una red es fundamental para evitar el ingreso de personas no autorizas a la red. Según Ibrahim & Hassan (2017) en la actualizad se da confiabilidad a los sistemas de servicio REST que se encarga de la seguridad en la red, capa de transporte y los mecanismos de seguridad que introduce las vulnerabilidades de seguridad adicionales. En los sistemas no solo es necesario la seguridad del usuario, sino que interactúe con el cliente. Seguridad en una base de datos. El componente de seguridad de una base de datos incluye la autenticación de usuarios y el control de acceso para restringir las posibles acciones de cada usuario. Estos aspectos se presentan independientemente del modelo de datos, pero se estudian en el contexto del modelo de datos relacional para ejemplificarlos. Las restricciones de integridad forman la base del diseño de bases de datos relacionales, que se estudian (Silberschatz, 2002, pág. 75). Html 5.
17 Es un lenguaje de marcado que es utilizado para estructurar y presentar múltiples contenidos en la web consta de tres características básicas como estilo, estructura y la funcionalidad, este leguaje de hipertexto está representado por etiquetas las cuales los navegadores no mostraran, sino que es utilizado para representar en la página su contenido (Gauchat, 2014, p.25). CSS 3. Es una hoja de estilos que se utiliza para definir el diseño de una página web dando un aspecto único a sitios diseñado en html y xhtml como dar bordes, tamaños, colores, fondos, etc. (Gauchat, 2014, p.57). CSS nos permite definir la apariencia de las páginas web por medio de estilos, facilitando el proceso de diseño de una página, debido a que cualquier modificación que se realice en esta hoja de estilo se actualizara fácilmente en toda la página. Lenguajes de programación. Php 7.1. Se trata de un lenguaje de alto nivel diseñado para el desarrollo web ejecutando la página en el mismo servidor permitiendo al código ser ejecutada en cualquier tipo de navegador siendo este gratuito permitiendo la accesibilidad a todo usuario que lo requiera sin ningún costo para su utilización (Pavón, 2012, p.15-16). Uno de los lenguajes de código abierto usados comúnmente para el diseño web es PHP que se incrusta y ayuda con el funcionamiento de ciertas etiquetas de html, enviando peticiones al servidor. “La validación de aplicaciones web PHP a menudo implica la generación de datos de prueba de texto estructurado (por ejemplo, específico piezas de código HTML producidos por una aplicación web, direcciones de correo electrónico, consultas SQL o HTTP, o mensajes más complejos)” permitiendo conectarse al gestor de base de datos que se vaya a utilizar (Dadeau, Giorgetti, Bouquet & Enderlin, 2017).
JavaScript.
18 Es un potente lenguaje usado para dar interactividad en los navegadores web está enfocado más en el fontend, es un lenguaje multiplataforma permitiendo su uso en diferentes tipos de sistemas operativos, JavaScript es un documento de html en la cual se la incorpora mediante incrustación, en línea o desde un archivo externo (Gauchat, 2012, p.158). Framework. Es una estructura de soporte que se encuentra ya definida facilitando el desarrollo del software permitiéndome controlar el diseño y contenido disponible de éste ayudando al usuario con sus herramientas a desarrollar aplicaciones web (Martínez, 2015, p.44). Base de datos. La base de datos es un conjunto almacenado de datos que se encuentra de forma organizada dentro de ficheros, de igual manera mediante tablas almacenando información de algún suceso formando vínculos relacionales entre ellos (López, 2014, p.6). Una base de datos es un repositorio compartido de datos. Para hacer disponibles los datos de una base relacional a los usuarios hay que considerar varios aspectos. Otro aspecto a tomar en cuenta es la integridad de datos y la seguridad; las bases de datos necesitan proteger los datos del daño provocado por los usuarios sean internos o externos ya sean intencionados o no. El componente de mantenimiento de la integridad de una base de datos asegura que las actualizaciones no violan las restricciones de integridad que hayan especificado sobre los datos (Silberschatz, 2002, pág. 75). Sistema Gestor de Base de Datos. Los sistemas gestores de datos son un conjunto de herramientas que permiten el almacenamiento, modificar y extraer información que se encuentra disponible dentro de una base de datos al igual que ayuda a mantener la integridad de los datos almacenados manteniendo la seguridad de los mismo, sirve de interfaz entre usuario aplicaciones y base de datos (López, 2014, p.14).
3.1.14.1.1. MariaDB.
19 Es una base de datos de código abierto que da soporte a muchas de las necesidades que presentan las empresas en la actualidad siendo de alto rendimiento, seguridad, gran soporte con una arquitectura moderna y es extensible en cada capa: cliente, clúster, kernel y almacenamiento (MariaDB, 2018). MariaDB es recomendable para usarse en entornos donde se ha desarrollado con MySQL, implementando diferentes mejoras y funcionalidades. Garantizando rapidez y soluciones a problemas comunes de seguridad. 3.1.14.1.2. PostgreSQL. Es una potente base de datos de objetos abierto que se combina con múltiples características que son guardadas y sobresalen de forma segura los datos más complicados posee una buena reputación por su confiabilidad, arquitectura comprobada, conjunto de características, extensibilidad, integración de los datos y la dedicación de toda la comunidad por ser un software de código abierto (PostgreSQL, 2018). Su código fuente se encuentra disponible para todos. De alguna manera si se necesita extender la base de datos se lo puede realizar fácilmente. PostgreSQL aplica una estrategia para el almacenamiento en filas para poder lograr una mejor respuesta en ambientes de grandes tamaños. 3.1.14.1.3. Comparativa de Bases de Datos. Para el desarrollo de las comparativas se consideran los siguientes parámetros:
Cumple con el 100% de las características seleccionadas: 10 puntos.
Cumple con el 50% de las características indicadas: 5 puntos.
Cumple con al menos el 25% de las características establecidas: 2,5 puntos.
No cumple con ninguna de las características: 0 puntos.
En esta comparativa se tomó en cuenta los siguientes criterios:
Usabilidad.- Fácil uso y manejo para el usuario.
Rendimiento.- Número de consultas a realizarse rápidamente.
20
Licencia.- Permite modificaciones de la base de datos de manera libre.
Modelo de base de datos.- Accesibilidad a los datos encontrados en las bases de datos.
Tabla 3. Comparativa de los gestores de base de datos Comparativa de los gestores de base de datos
Criterio
Maria DB
Pts
PostgreSQL
Pts
Usabilidad
Base de datos
10
Base de datos
10
pequeñas Rendimiento
Consultas simples
grandes 5
y edición rápida
Consultas
10
complejas y frecuentes
Licencia
Código abierto
Modelo de base Relacional
10
Código abierto
10
10
Relacional
10
de datos Total
35/40
40/40
Porcentaje
87.5%
100
Nota: Adaptado de “Centralización de bases de datos” por López, Salas, 2012, España, pp2-3.
Conforme a los resultados obtenidos se tiene que el gestor de base de datos con mejores características actualmente es PostgreSQL, siendo este un sistema de base de datos de código abierto, relacional que permite gran número de consultas frecuentemente. Debido a los requerimientos de la empresa se hizo uso del gestor de base de datos MariaDB siendo que este se encuentra funcionando actualmente en la institución.
21
4.
METODOLOGÍA DE LA INVESTIGACIÓN
7.1. Enfoque, diseño y tipo de investigación Enfoque de investigación. Para el desarrollo del presente trabajo de titulación se consideró hacer uso de un enfoque mixto para la investigación, la cual toma en cuenta técnicas cuantitativas y técnicas cualitativas para la recolección y análisis de los datos asegurando un mayor entendimiento del trabajo de titulación. Según Sampieri (2012), una investigación realizada en base a un enfoque mixto agrupa procesos metódicos que permiten recolectar datos cuantitativos y análisis cualitativo de toda la información relevante para la investigación. Por esta razón se hace uso de las entrevistas para la recolección de información y posteriormente realizar un análisis general acerca de los procesos que se realizan en la empresa, así tener una mejor idea del funcionamiento del Grand Hotel Santo Domingo. Diseño de investigación. Para el trabajo de titulación se optó por el diseño no experimental transversal que permite examinar un tema o problema de investigación que ha sido poco estudiado de la cual se tiene muchas dudas o no se ha abordado antes en un tiempo determinado limitándonos a la no manipulación de variables disponibles en la empresa permitiéndonos obtener información completa identificando conceptos o variables de manera satisfactoria. Tipo de investigación. Investigación descriptiva. El tipo de investigación que se aplicó para el desarrollo de este trabajo es investigación descriptiva en el cual se estable la descripción completa acerca del tema que se trató, con este tipo de investigación se obtuvo toda la información relevante de la empresa y de los procesos que realizan para el registro de inventario y las ventas del restaurant.
22
8.1. Población y muestra Población. La población dentro de la investigación es de 9 personas, pertenecientes al Grand Hotel Santo Domingo, de las cuales están divididas entre personal de bodega, ventas y el administrador de la empresa; son aquellas personas que intervienen directamente en la utilización del sistema. Muestra. Se ha tomado en cuenta a toda la población debido al tamaño reducido de personas que interactúan con el sistema. Si el tamaño de la población es menor a 15 se toma toda la población para su estudio (Vallejo, 2012, p.11). Por lo tanto, la muestra de estudio es de 9 personas y no se realiza ningún cálculo de muestra.
9.1. Técnicas e instrumentos de recogida de datos Las técnicas que se utilizaron para la recogida de datos son: la encuesta y la entrevista las cuales se detallan a continuación: Entrevista. Se realizó la recolección de los datos a través de entrevistas “Se define como una reunión para conversar e intercambiar información entre una persona (el entrevistador) y otra (el entrevistado) u otras (entrevistados)” (Sampieri, 2012, p.403). La entrevista tuvo una serie de preguntas que fueron preparadas con anterioridad, a las que el entrevistador tuvo acceso a añadirle preguntas si lo consideraba necesario, las preguntas principales se aplicaron a todos los encuestados, la entrevista se desarrolló de manera personal con cada uno de los entrevistados. “las entrevistas semiestructuradas se basan en una guía de asuntos o preguntas y el entrevistador tiene la libertad de introducir preguntas adicionales para precisar conceptos u obtener mayor información” (Sampieri, 2014, p.403). Se hizo uso de la entrevista semiestructurada, ya que de esa forma se pudo añadir preguntas extras en el momento que se desarrollaba la entrevista para poder obtener mayor información. Se utilizó esta técnica para la recogida de datos entrevistando directamente a los encargados del Grand Hotel Santo Domingo.
23
10.1. Técnicas de análisis de datos Para la entrevista se utilizó la técnica de interpretación de datos, la que permitió guiar los procedimientos realizados para especificar los procesos de inventario, facturación y los requerimientos del software. Permitiendo obtener mayor comprensión de lo necesario para la investigación y poder cumplir con los objetivos planteados inicialmente.
24
5.
RESULTADOS
11.1. Análisis de resultados Entrevista a la gerente del Grand Hotel Santo Domingo. Para este trabajo de titulación se realizó una entrevista como técnica de recolección de datos para obtener información acerca de los procesos que se realizan para la facturación e inventario en el área de restaurant del hotel. Tipo de ingreso: ¿multiusuario o un usuario general? Cada persona tiene su respectivo usuario y contraseña para el acceso al sistema ya sea para bodega o facturación, dependiendo del turno de trabajo que le toque a cada empleado debido a que existen turnos tanto por la mañana como por la tarde, se registra todos los procesos que se realizan en el sistema y todo lo que se haga en ese turno es responsabilidad de quien ingreso al sistema en ese horario. INVENTARIO ¿Cómo se realiza el proceso de pedido de productos para abastecer la bodega? El encargado de bodega es responsable de verificar que existan las cantidades suficientes para abastecer los requerimientos que cocina pueda tener, en caso de que los productos se estén terminando este informa a la administradora quien es la encargada de contactar a los proveedores y realizar los pedidos de los productos faltantes en bodega, una vez que llegan los pedidos pasan al área de bodega donde el encargado en turno es quien recibe e ingresa al sistema todos los productos. ¿Cómo se realiza el ingreso de productos a bodega? Una vez realizado el pedido a los proveedores este llega al encargado de bodega quien recibe los pedidos de los productos y verifica que estos se encuentren en buen estado y estén las cantidades requeridas para proceder a ingresar al sistema según corresponda.
25 ¿Cómo es el proceso de salida de un producto de bodega? Para que un producto salga de bodega se debe generar una orden de salida por parte de cocina en el que se detalle el tipo de producto y la cantidad necesaria, esto se realiza diariamente según como va necesitando el encargado de cocina para preparar los platos del día. ¿Cómo reducen las cantidades de productos que van a cocina del inventario? Las cantidades que salen de inventario a cocina son según las necesidades del día y los platos que se vayan a realizar, no se encuentra establecido una cantidad exacta para cada día, esto se pide dependiendo del producto, ya sea por unidad o por peso, en el caso de los ingredientes por peso se pide por onzas. ¿Cuantas personas gestionan inventario? A cargo del inventario se encuentran dos personas las cuales se van rotando según su horario de trabajo ya sea por la mañana o por la tarde. Todo lo que suceda durante su horario y todo lo que realiza debe quedar registrado. ¿Qué situación debe ocurrir para realizar un nuevo pedido? Para la realización de pedidos se debe identificar los productos que se encuentran con pocas cantidades, cuando esté en un 20% se procede a informar a la administradora para realizar el respectivo pedido dependiendo de la necesidad se contacta directamente a los proveedores o se envía a una persona que realice las compras necesarias para poder abastecer el inventario debido a que inventario no se puede quedar en cero en ningún momento con ningún producto. FACTURACIÓN ¿De qué manera se realiza el proceso de facturación? Para el proceso de facturación al momento que ingresa un cliente al restaurant es atendido por el mesero quien toma el pedido y envía a cocina la orden para la realización de los platos y a caja para generar la factura una vez realizado el pedido se sirve al cliente y cuando éste solicite la cuenta se entregue el dinero, se procede con la facturación y el pago respectivo.
26 ¿Cada que tiempo varían los precios de los platos? Aproximadamente desde el 2016 no se ha realizado variación a los precios de los platos, pero se tiene previsto que una vez que se estabilice la clientela se va realizar incrementos en los precios anualmente.
12.1. Discusión de la entrevista Conforme a la entrevista realizada a la gerente del Hotel la Ing. Thally Dueñas se pudo obtener de manera específica los procesos que se realizan para la gestión del inventario y facturación en el restaurant haciendo uso del Diagrama de procesos.
Figura 2. Diagrama de procesos y actividades de la gestión de inventario y facturación. Adaptado de investigación de campo.
27
13.1. Aplicación de la Metodología de Software Roles. Para el desarrollo del producto mediante metodología Scrum es importante detallar los roles que tiene cada persona que forma parte del equipo de trabajo, los cuales se indican en la siguiente tabla: Tabla 4. Roles Scrum Roles Scrum
Encargado
Rol Product Owner
Ing. Thally Dueñas
Scrum Master
Mg. Luis Ulloa
Development Team
Ana Remache y Edison Chacha
Nota: Datos obtenidos de investigación de campo.
Dentro de la primera fase de scrum se realiza la reunión de planificación del sprint en el que se cuenta con la presencia del Product Owner quien brinda la información necesaria de los requerimientos del producto para así poder plasmar esta información en las historias de usuario y llegando a un acuerdo acerca de lo que el cliente desea. En base a esto se organizó a las historias de usuario conforme a la necesidad establecida por el cliente para luego proceder con la estimación de cada historia para esto se aplicó la técnica de estimación Planning Póquer en base a la serie Fibonacci (0, 0.5, 1, 2, 3, 5, 8. 13, 21) que permitió estimar cada historia de usuario dependiendo la complejidad de cada una. El tiempo de elaboración de cada sprint se estimó que sea entre una a cuatro semanas. Product Backlog. En la siguiente tabla se muestra el Product Backlog en el que se indican las historias de usuario que forman parte de este desarrollo (Ver Anexo 5):
28
Tabla 5. Product Backlog Product Backlog
N°
HISTORIA
ESTIMACIÓN
PRIORIDAD
1
Login multiusuario
13
100
21
80
8
75
2
3
Ingreso y modificación de la información de los productos Visualización de los ingredientes procesados en bodega
4
Ingreso de categorías
13
75
5
Ingreso de pedidos de los clientes
21
75
6
Reporte de ventas mensual
13
7
Reporte de ventas anual
21
75
Nota: Datos obtenidos de investigación de campo.
Con la ayuda de una herramienta de gestión de tareas llamada Trello se llevó a cabo el control de la realización de cada historia de usuario con sus respectivas tareas de ingeniería, ayudando en la gestión del proyecto definiendo el estado en el que se encontraba cada uno ya sea pendiente, en proceso o completado según corresponda.
Figura 3. Tablero de Trello. Adaptado de investigación de campo.
29 Sprint 1. Sprint Backlog. Para el desarrollo del primer Sprint se establecieron 3 historias de usuario (Ver Anexo 5) las cuales se detallan con sus respectivas tareas de ingeniería de la siguiente manera: Tabla 6. Sprint Backlog 1 Sprint Backlog 1 SPRINT
HISTORIA
E S T
Login multiusuario 13
CATEGORÍA
Modelado de la base de 2 datos
Edison Chacha
Completo
Desarrollo
Conexión a un servidor 5 externo
Edison Chacha
Completo
Desarrollo
Elaboración de la base de datos en MariaDB
2
Ana Remache
Completo
Diseño de la interfaz de 3 login
Ana Remache
Completo
Ana Remache
Completo
Ana Remache
Completo
Edison Chacha
Completo
Edison Chacha
Completo
Ana Remache
Completo
Ana Remache
Completo
Ana Remache
Completo
Ana Remache
Completo
Desarrollo Diseño
Desarrollo
1
Diseño Diseño Desarrollo Diseño
Desarrollo Visualización de los ingredientes 13 procesados en bodega
E S RESPONSABLE ESTADO T
Diseño
Diseño
Ingreso y modificación de la 21 información de los productos
TAREA
Conexión a la base de 1 datos Diseño de interfaz para el ingreso de los 5 ingredientes en atom Conexión con el gestor de base de datos 3 MariaDB Diseño del botón 3 guardar Validación para el ingreso de la 5 información Verificación de los 5 escenarios de prueba Diseños de la interfaz de visualización de 2 productos Conexión con el gestor de base de datos para la 4 búsqueda
Diseño
Creación de botón filtrar 2
Edison Chacha
Completo
Diseño
Elaboración de la opción eliminar productos.
2
Ana Remache
Completo
Validación
3
Ana Remache
Completo
Desarrollo Nota: Datos obtenidos de investigación de campo.
30 Burndown Chart 1.
Figura 4. Burndown Chart del sprint 1. Datos obtenidos de investigaciรณn de campo.
31 Desarrollo del Sprint. En este sprint el cual está conformado de 3 historias de usuario (Ver Anexo 5) que son el login multiusuario, ingreso y modificación de la información de los ingrediente y visualización de los ingredientes procesados en bodega. Se establece el modelado de la base de datos como una de las tareas de ingeniería primordiales para empezar a desarrollar el sistema. Esta base de datos se estableció de acuerdo a los documentos que la empresa facilito para la toma de datos. Para la realización del modelado de la base de datos se hizo uso de la herramienta Workbench, la cual permitió realizar el modelo entidad relación mediante la creación de las tablas y sus respectivas relaciones. Estableciendo la conexiones necesarios para el funcionamiento del sistema. Producto de esto se tiene el diccionario de datos para mayor comprensión de la base de datos (Ver Anexo 8).
Figura 5. Modelado de la Base de Datos. Adaptado de investigación de campo.
Para el diseño de este login se hizo uso del lenguaje HTML 5, JavaScript y como framework bootstrap, de esta manera tener una presentación correcta para el sistema y sea llamativo para el cliente.
32 El login multiusuario permite el acceso al sistema de acuerdo a los permisos otorgados ya sea para el administrador, encargado de bodega o encargado de ventas, ingresando su correo con su respectiva contraseña accede al perfil de cada usuario.
Figura 6. Login de acceso al sistema. Adaptado de investigación de campo.
Una vez dentro del sistema se tiene el formulario de ingreso de productos el cual permite ingresar la categoría a la que pertenece el producto, la unidad de medida, precio de compra y de venta, la cantidad, la fecha de vencimiento y una imagen respectiva del producto a registrar, cada uno de estos campos se encuentran validados para que se ingrese la información correctamente.
33
Figura 7. Formulario de ingreso de productos. Adaptado de investigaciรณn de campo.
En la siguiente figura se muestra el listado completo de productos que se registraron con sus respectivos atributos, teniendo las opciones de activo/inactivo, editar y eliminar.
Figura 8. Listado de productos. Adaptado de investigaciรณn de campo.
34 Para poder generar los reportes de los productos registrados en bodega se hizo un desglose de reportes por formatos según el usuario disponga a que formato acceder se le mostrara una matriz con la información completa de todos los productos existentes en bodega y facilitar la impresión de estos en formato CSV, pdf o Excel.
Figura 9. Opciones para la generación de reportes. Adaptado de investigación de campo.
35 Sprint 2. Para este sprint se establecieron 2 historias de usuario según la complejidad que el equipo de desarrollo encontró en base a los requerimientos establecidos por el product owner. Sprint Backlog. En la siguiente tabla se muestra el Sprint Backlog del sprint 2 en el que se detallan las historias de usuario con sus respectivas tareas de usuario según fueron especificadas en la reunión de planificación del sprint: Tabla 7. Sprint Backlog 2 Sprint Backlog 2 SPRINT
HISTORIA
E S T
CATEGORÍA
Diseño
Desarrollo
Ingreso de categorías
1 3
Diseño
Desarrollo Diseño 2 Diseño
Diseño Ingreso de pedidos de los clientes
1 3 Diseño
Diseño Diseño Nota: Datos obtenidos de investigación de campo.
TAREA Creación de interfaz gráfica para ingreso de categorías Conexión con el gestor de base de datos Elaboración del panel de visualización de los registros de categorías Registro de las actualizaciones de los productos por categoría Validación Diseño delos botones para ingresar el pedido del cliente Diseño de la interfaz para los ingresos o búsqueda de pedidos Conexión a la base de datos MariaDB para almacenar la información Interfaz de visualización de pedidos Prueba de validación
E S T
RESPONSABLE
ESTADO
2
Edison Chacha
Completo
5
Edison Chacha
Completo
2
Ana Remache
Completo
2
Ana Remache
Completo
2
Ana Remache
Completo
2
Ana Remache
Completo
2
Ana Remache
Completo
4
Ana Remache
Completo
2
Ana Remache
Completo
3
Ana Remache
Completo
36 Burndown Chart 2.
Figura 10. Burndown Chart del sprint 2. Datos obtenidos de investigaciรณn de campo.
37 Desarrollo del Sprint. En el segundo Sprint esta diseñado para la venta de los productos permitiendo el ingreso de la informacion del cliente y la cantidad de productos con su respectivo iva al igual que permite seleccionar la forma de pago dependiendo de la disponibilidad del cliente para despues dar paso a la impresión del documento a facturar toda esta información pasara a almacenarse al sismtema para mostrar la cantidad de ventas a los modulos de administracion para los reportes estadisticos de ventas.
Figura 11. Registro de ventas. Adaptado de investigación de campo.
En esta imagen se muestra el formulario de ingreso de una nueva categoría para los respectivos productos que se tiene en bodega.
Figura 12. Ingreso categoría. Adaptado de investigación de campo.
38 Una vez ingresadas las categorías se presenta un listado de todas las categorías registradas, con su estado y una opción de editar en case de que sea necesario. El cual permite clasificar los diferentes productos de bodega asignándolos a una categoría y tener un mejor control de cada uno de ellos.
Figura 13. Listado de categorias. Adaptado de investigación de campo.
39 Sprint 3. Para el desarrollo de este sprint mediante la reunión del sprint se definió 2 historias de usuario las cuales constan de la generación de reporte mensual de ventas y el reporte anual de ingresos y egresos. Se define el siguiente sprint backlog detallando las historias con sus respectivas tareas de ingeniería: Tabla 8. Sprint Backlog 3 Sprint Backlog 3 SPRINT
HISTORIA
Reportes de ventas mensual
EST
CATEGORÍA
EST
RESPONSABLE
ESTADO
Diseño
Diseño del botón mes
1
Ana Remache
Completo
Diseño
Diseño de la interfaz a para llenar los campos necesarios
3
Ana Remache
Completo
Diseño
Conexión a la base de datos
4
Edison Chacha
Completo
Diseño
Validación
2
Ana Remache
Completo
Diseño
Prueba de validación
3
Ana Remache
Completo
Diseño
Creación de interfaz gráfica para mostrar los datos
2
Edison Chacha
Completo
Desarrollo
Conexión con el gestor de base de datos
5
Edison Chacha
Completo
Diseño
Elaboración del panel de visualización de los datos estadísticos
2
Ana Remache
Completo
Registro de las actualizaciones de los productos
2
Ana Remache
Completo
Validación
2
Ana Remache
Completo
13
3
Reporte anual de compras y ventas
TAREA
21
Desarrollo
Diseño Nota: Datos obtenidos de investigación de campo.
40 Burndown Chart 3.
Figura 14. Burndown chart sprint 3. Datos obtenidos de investigaciรณn de campo.
41 Desarrollo del Sprint. El sprint tres está diseñados para la parte administrativa la cual muestra información de ventas y compras en gráficos estadísticos para un reporte mensual y anual de los productos vendidos permitiendo a la parte administrativa a visualizar y la toma de decisiones al momento de mejorar o cambiar un producto. Este módulo ayuda al mejor control de todos los productos disponibles en el restaurant tanto en ventas del restaurant como en la parte de bodega.
Figura 15. Resumen de ventas. Datos obtenidos de investigación de campo.
En la siguiente figura se muestra la representación estadística de los datos que se obtuvieron de las ventas realizadas en el año detallando los ingresos y egresos realizados.
Figura 16. Estadística de ventas anuales. Datos obtenidos de investigación de campo.
42
6.
DISCUSIÓN
En base a la reunión inicial que se tuvo con la gerente del Grand Hotel Santo Domingo se obtuvo información general del proyecto a desarrollar, tales como las necesidades y problemas que presentaba la parte de bodega y en las ventas del restaurant, también nos facilitó con el acceso al personal encargado de dichas áreas para la obtención de información relevante para el desarrollo del proyecto. Mediante la entrevista realizada se pudo obtener los requerimientos fundamentales para el desarrollo del trabajo que permitió resolver los problemas presentes como la falta de información de inventario y poco control en las ventas del restaurant. Debido a estos problemas se desarrolló un sistema web el cual permite llevar el control de los productos que ingresan y salen de inventario de forma detallada y la obtención de información de manera gráfica con datos estadísticos de las ventas realizadas en el restaurant generando reportes detallados. Para el desarrollo del sistema se estableció una metodología ágil que es el marco de desarrollo Scrum debido a que se adecua con el diseño del proyecto que permite adaptarse a los cambios que suele presentarse en el desarrollo de software, mediante la realización de los sprint se puede establecer los tiempos para la entrega de cada iteración en el cual se presenta una parte del sistema funcional para la realización de pruebas en conjunto con el cliente para verificar el cumplimiento de los requerimientos y establecer cambios o mejoras en el sistema para seguir con los siguientes sprint establecidos en la planificación. La realización de este sistema permite a la empresa tener un mayor control acerca de del inventario, en el cual se realiza el registro de cada producto a detalle y el proceso de ventas en el que se recoge los pedidos y se realiza la facturación. Almacenando todos los detalles de las ventas realizadas, para que de esta manera el administrador tenga acceso a toda la información de las ventas realizadas mensual y anualmente, y los registros de entrada/salida de productos de bodega con el stock actual correspondiente, para la generación de reportes pertinentes.
43
7.
CONCLUSIONES
Conforme a la información obtenida en las reuniones con el product owner se pudo conocer como son los procesos para llevar el control de inventario y facturación y así entender de mejor manera los requerimientos establecidos, por medio de la entrevista, como técnica de recolección de datos, se logró obtener toda la información acerca de las funcionalidades que posee el sistema permitiendo optimizar los procesos del restaurant.
Para escoger la metodología de desarrollo se toma en cuenta los criterios y características necesarios que se adapten al producto, por ello se escogió la metodología ágil Scrum la cual mediante la utilización de sus eventos y artefactos facilita el desarrollo del sistema de manera que permite realizar cualquier cambio que surja una vez terminado el sprint sin tener que perjudicar el desarrollo total del producto.
El desarrollo del Sistema facilita en gran medida los procesos para el control de inventario y facturación en el área de restaurant del Grand Hotel Santo Domingo, mismo que facilita el ingreso de productos y permite llevar un control de los ingresos y egresos realizados en bodega, también se obtiene los datos estadísticos de las ventas realizadas, realizando un eficiente control de los procesos de la empresa.
44
8.
RECOMENDACIONES
Se debe recolectar toda la información necesaria con respecto a los requerimientos que establece el cliente, así teniendo una buena comunicación con el equipo de desarrollo y poder entender de mejor manera lo que desea el cliente solventando cualquier duda que pueda surgir durante la planificación del sprint.
Es fundamental tener mucho cuidado con la información que se está manejando, para esto se debe aplicar todas las seguridades necesarias para el cuidado de los datos y tener un respaldo de toda la información que se almacene en el sistema en caso de alguna eventualidad de riesgo.
Para poder seleccionar la mejor metodología que se adapte a los requerimientos establecidos se debe realizar una comparativa entre todas las metodologías, detallando los criterios fundamentes para tomar en cuenta aspectos relevante que ayuden al desarrollo del sistema.
45
9.
REFERENCIAS BIBLIOGRÁFICAS
Aragon, M, & McDonnell, L. (2016). Virtual office: A web platform for a collaborative networked organization. International Journal of Web Portals, 6(4), 1-17. doi: 10.4018/IJWP.2014100101 Irey, J. (2014). Alternativas para la escalabilidad de aplicaciones en plataformas web de alta concurrencia. Interfases, 7, 9-27. Xia, X., Bao,L., Mín D., Kochhar, P., Hassan, A., & Xing, Z. (2017). What do developers search for on the web?. Empirical Software Engineering Pág. 26. doi: 10.1007 / s10664017-9514-4 Mayer, M. & Leis, A.(2009). Concepto y aplicaciones de la Web 3.0: una introducción para médicos. Atención Primaria, 42(5), 292-296. doi: 10.1016/j.aprim.2009.06.025 Mata, F. & Quesada, A.(2014). Web 2.0, Social Networks and E-commerce as Marketing Tools. Journal of Theoretical and Applied Electronic Commerce Research, 9(1), 56-69. doi: 10.4067/S0718-18762014000100006 Ávila, E. (2014). Formación de usuarios de la información mediante aplicaciones Web 2.0. Bibliosopen access, (55), 40-50. doi: 10.5195/biblios.2014.160 Gamalielsson, J. & Lundell, B. (2017). On organisational involvement and collaboration in W3C standards through editorship. Journal of Internet Services and Applications, 8(5), 1-26. doi 10.1186/s13174-017-0056-1 Cortés, H. & Navarro, A. (2017). Enterprise WAE: A Lightweight UML Extension for the Characterization of the Presentation Tier of Enterprise Applications with MDD-Based Mockup Generation. International Journal of Software Engineering and Knowledge Engineering, 27(8), 1291-1331. doi: 10.1142/S0218194017500486 Malenki, N. & Ramsin, R. (2018). Agile web development methodologies: A survey and evaluation. Studies in Computational Intelligence, 1-25. doi: 10.1007/978-3-31961388-8_1
46 Molina, J., Zea, M., Honores, J. & Gómez, A. (2016). Analysis methodologies web application development. International Journal of Applied Engineering Research, 11(16), 90709078 Ibrahim, M. & Hassan, M. (2017). Adaptive security architecture for protecting RESTful web services in enterprise computing environment. Service Oriented Computing and Applications, 1-11. doi: 10.1007/s11761-017-0221-1 Frederick, K. (2013). Responsive web design 101: how to make your site responsive. Computers in Libraries, 11-14. doi: 10.1007/978-1-4302-4525-4_4 Gaus, M., Willemsen, M. & Swelsen, K. (2015). Understanding real-life website adaptations by investigating the relations between user behavior and user experience. Lecture Notes in Computer Science, 350-356. doi: 10.1007/978-3-319-20267-9 30 Dadeau, F., Giorgetti, A., Bouquet, F. & Enderlin, I. (2017). Contract-based testing for PHP with Praspel. Journal of Systems and Software, 1-25. doi: 10.1016/j.jss.2017.06.017 Weichbroth, P. (2017). Frequent sequence mining in web log data. International Journal of Food Engineering, 80-233. doi: 10.1007/978-3-319-67792-7_45 Sommerville, I. (2011). Ingeniería de Software. México: Pearson Educación. Pressman, R. (2010). Ingeniería de software un enfoque práctico. México: McGraw-Hill. Ceballos, J. (2010). Java 2 curso de programación. España: Ra-Ma. Silberschatz, K. (2002). Fundamentos de base de datos. España: McGraw. Sampieri, R., Collado, C. & Lucio, P. (2014). Metodología de la investigación. México- Madrid etc.: McGraw-Hill.
47
10.
ANEXOS
Anexo 1. Carta de Aceptaciรณn del Proyecto
48 Anexo 2. Acta de Entrega-Recepciรณn del proyecto
49 Anexo 3. Carta de Impacto
50 Anexo 4. Modelo de Entrevista ENTREVISTA El objetivo de la entrevista a realizar es saber las preferencias de funcionamientos y procesos del sistema, tomando como muestra a los que laboran en el establecimiento.
Tipos de ingresos ¿multiusuario o un usuario general? .................................................................................................................................................
...................................................................................................................................................... ...................................................................................................................................................... Inventario
¿Cómo se realiza el proceso de pedido de productos para abastecer la bodega? .................................................................................................................................................
...................................................................................................................................................... ......................................................................................................................................................
¿Cómo se realiza el ingreso de productos a bodega? .................................................................................................................................................
...................................................................................................................................................... ......................................................................................................................................................
¿Cómo es el proceso de salida de un producto de bodega? .................................................................................................................................................
...................................................................................................................................................... ......................................................................................................................................................
¿Cómo reducen las cantidades de productos que van a cocina del inventario? .................................................................................................................................................
...................................................................................................................................................... ......................................................................................................................................................
51
¿Cuantas personas gestionan inventario? .................................................................................................................................................
...................................................................................................................................................... ......................................................................................................................................................
¿Qué situación debe ocurrir para realizar un nuevo pedido? .................................................................................................................................................
...................................................................................................................................................... ...................................................................................................................................................... Facturación
¿De qué manera se realiza el proceso de facturación? .................................................................................................................................................
...................................................................................................................................................... ......................................................................................................................................................
¿Cada que tiempo varían los precios de los platos? .................................................................................................................................................
...................................................................................................................................................... ......................................................................................................................................................
52 Anexo 5. Historias de Usuario Historia de Usuario Número: 1
Usuario: administrador
Nombre historia: Login multiusuario Prioridad en negocio: 31
Riesgo en desarrollo: Alto
Puntos estimados: 21
Iteración asignada: 1
Programador responsable: Ana Belén Remache Peñafiel Descripción: Como administrador, quiero un login multiusuario para ingresar al sistema con sus respectivos privilegios.
Observaciones: Dado el login multiusuario e ingrese usuario, contraseña cuando presione el botón iniciar sesión entonces ingresa al sistema correspondiente según el privilegio de la cuenta. Dado el login multiusuario e ingrese usuario o contraseña incorrectamente cuando presione el botón iniciar sesión entonces mostrará un mensaje de alerta diciendo “usuario/contraseña no coinciden”. Dado el login multiusuario e ingrese usuario, contraseña cuando presione el botón iniciar sesión entonces se registra la fecha de ingreso al sistema.
53
Historia de Usuario Número: 2
Usuario: Encargado de Bodega
Nombre historia: Ingreso, modificación y eliminación de la información de los productos Prioridad en negocio: 80
Riesgo en desarrollo: Medio
Puntos estimados: 26
Iteración asignada: 1
Programador responsable: Ana Belén Remache Peñafiel Descripción: Como encargado de bodega, quiero ingresar y modificar la información de los productos para tener reporte de los ingresos y egresos realizados a bodega. Escenarios de prueba: Dado el ingreso de la información de los productos cuando pulse el botón guardar entonces se mostrará una ventana emergente de “¡Bien hecho! El producto se registró correctamente”. Dado el ingreso de la información de los productos y los campos no estén correctamente llenos cuando pulse el botón guardar entonces se visualizará una ventana emergente mostrando el campo donde se generó el error. Dado la modificación de la información de los productos cuando pulse el botón guardar entonces se actualizara la información de los productos. Dado el ingreso de la información de los productos cuando pulse el botón Copy entonces se generará una copia de los datos de los ingredientes registrados en el sistema. Dado el ingreso de la información de los productos cuando pulse el botón Excel, CSV O PDF entonces se generará un reporte de los ingredientes registrados en el sistema en el formato correspondiente. Dado el ingreso de la información de los productos cuando pulse el botón Activo/Inactivo entonces se habilita/deshabilita el uso del producto.
54 Historia de Usuario Número: 3
Usuario: Encargado de bodega
Nombre historia: Visualización de los ingredientes procesados en bodega Prioridad en negocio: 42
Riesgo en desarrollo: Media
Puntos estimados: 13
Iteración asignada: 1
Programador responsable: Ana Belén Remache Peñafiel Descripción: Como encargado de bodega, quiero visualizar la información de los ingredientes disponibles en bodega para obtener un reporte de la cantidad disponible de cada ingrediente.
Escenarios de prueba: Dado la visualización de la información de los ingredientes disponibles en bodega cuando seleccione el nombre de uno de los ingredientes entonces se visualizará una ventana emergente mostrando la cantidad de disponibilidad en inventario. Dado la visualización de la información de los ingredientes disponibles en bodega cuando seleccione la opción filtrar disponibilidad entonces se obtendrá una visualización de los ingredientes con menos disponibilidad en inventario. Dado la visualización de la información de los ingredientes disponibles en bodega cuando se encuentre los ingredientes con un mínimo de disponibilidad entonces se mostrara de color rojo los ingredientes.
55
Historia de Usuario Número: 4
Usuario: Encargado de bodega
Nombre historia: Ingreso de categorías Prioridad en negocio: 30
Riesgo en desarrollo: Medio
Puntos estimados: 21
Iteración asignada: 2
Programador responsable: Edison Oswaldo Chacha Jara Descripción: ·
Como encargado de bodega quiero ingresar las diferentes clases de categorías para clasificar los productos que se almacenan. Observaciones: Dado el ingreso de diferentes clases de categorías cuando de clic en la opción nueva categoría entonces mostrará una ventana con campos vacíos para nombre y descripción. Dado el ingreso de diferentes clases de categorías y existan algún campo incompleto cuando de clic en la opción guardar datos entonces mostrará un mensaje de alerta diciendo “Completa este campo”. Dado el ingreso de diferentes clases de categorías cuando de clic en la opción guardar datos entonces se almacenará la información y mostrará un mensaje diciendo “¡Bien hecho! Categoría ha sido ingresada satisfactoriamente”.
56
Historia de Usuario Número: 5
Usuario: Encargado de ventas
Nombre historia: Ingreso de pedidos de los clientes Prioridad en negocio: 30
Riesgo en desarrollo: Medio
Puntos estimados: 21
Iteración asignada: 2
Programador responsable: Edison Oswaldo Chacha Jara Descripción: ·
Como encargado de ventas quiero ingresar los pedidos de los clientes para realizar su respectiva facturación. Observaciones: Dado el ingreso de los pedidos de los clientes cuando de clic en la opción visualizar entonces se mostrará los precios del pedido del cliente. Dado el ingreso de los pedidos de los clientes cuando de clic en la opción quitar pedido entonces mostrará un mensaje de alerta diciendo “¿Está seguro de querer retirar este producto?”. Dado el ingreso de pedidos de los clientes cuando de clic en la opción generar factura entonces mostrará un mensaje de confirmación diciendo “¿Continuar facturación si/no? antes de facturar.
57
Historia de Usuario Número: 6
Usuario: Encargado de ventas
Nombre historia: Cierre de caja Prioridad en negocio: 30
Riesgo en desarrollo: Medio
Puntos estimados: 21
Iteración asignada: 3
Programador responsable: Edison Oswaldo Chacha Jara Descripción: ·
Como encargado de ventas quiero realizar el cierre de caja para obtener un reporte de las ventas realizadas en el día Observaciones: Dado el cierre de caja cuando de clic en la opción visualizar entonces se mostrará el resumen de ventas del día. Dado el cierre de caja cuando de clic en la opción generar reporte entonces se generará el reportes de cierre de caja .
58
Historia de Usuario Número: 7
Usuario: Encargado de ventas
Nombre historia: Reporte de ventas mensual Prioridad en negocio: 30
Riesgo en desarrollo: Medio
Puntos estimados: 21
Iteración asignada: 3
Programador responsable: Edison Oswaldo Chacha Jara Descripción: ·
Como encargado de ventas quiero un reporte de ventas mensual para la toma de decisiones en desarrollo de la empresa. Observaciones: Dado reporte de ventas mensual cuando de clic en la opción mes entonces se podrá seleccionar el mes del cual se requiere el reporte.
59 Anexo 6. Manual de usuario Este documento va dirigido a los usuarios que van a utilizar el sistema, con la finalidad de que sepan cómo manejar el sistema de mejor manera. Indicando las diferentes funciones con las que cuenta. Inicio de sesión Para poder ingresar al sistema, se debe registrar el usuario y contraseña según sea el caso, luego pulsar el botón iniciar sesión.
Pantalla principal Una vez dentro del sistema se tiene una pantalla principal en donde se muestra accesos a un listado de clientes, ventas, proveedores y compras. También se visualiza el resumen de compras y ventas del año. En la sección del lado izquierdo se tiene las pestañas de las diferentes funciones que brinda el sistema, como: Categoría, productos, proveedores, clientes, ingreso productos, salidas de productos, reportes de ingresos, reportes salida, facturación, usuarios y empresa.
60
CategorĂa En la seccion categoria se muestra un listado de las categorias de productos que se tienen en inventario, asi mismo se puede igresar nuevas categorias, detallando el tipo de categoria y el estado.
61 Productos Esta secciรณn permite visualizar una lista detallada de los productos que se encuentran en bodega; indicando el estado en el que se encuentra, se puede editar o eliminar.
Se puede ingresar ingresar mas productos a bodega detallando la categoria, nombre, presentacion, unidad de medida, precio de compra, precio de venta, stock, estado y fecha de vencimiento, asi mismo se puede agregar una imagen del producto que se desea ingresar. Pulsando el boton guardar se regristra el ingreso del producto a bodega.
62 En esta sección también se puede generar un reporte de los productos que se encuentran en bodega detallando cada uno de ellos.
Proveedores En esta sección se puede ingresar los proveedores que tienen la empresa, en el que se muestra la lista de todos los proveedores con información acerca de: razón social, teléfono, correo, dirección y fecha de registro.
63 Así mismo se puede ingresar los productos los cuales se va a hacer pedido a los proveedores, indicando el proveedor y los productos del pedido.
Facturación En la sección de facturación se tiene el proceso de venta, donde se registra el cliente pulsando el botón buscar cliente. Se procede a agregar los productos que han sido pedidos y el tipo de pago con el que se va a realizar la venta.
64 Usuarios Esta sección permite entrar los usuarios que van a trabajar con el sistema en este se detalla todos los datos de cada uno de ellos y el rol que tienen asignado para el sistema.
Pulsando el botón nuevo usuario, se ingresa los siguientes datos: cedula, nombres, apellidos, cargo, usuario, password, teléfono, correo, dirección y estado. Así mismo el administrador asignara los permisos necesarios según sea el rol del usuario. Se pulsa el botón guarda y se realiza el registro del nuevo usuario.
65 Anexo 7. Manual Técnico GRAND_HOTEL_SANTO_DOMINGO El presente manual sirve de guía para la implementación del sistema GHSD en un servidor compartido, a petición de la encargada de gerencia del Grand Hotel Santo Domingo. Requerimientos: PHP >= 7.1.3 MariaDB v5.5.6 Dependencias OpenSSL PHP Extension PDO PHP Extension Mbstring PHP Extension Tokenizer PHP Extension XML PHP Extension Ctype PHP Extension JSON PHP Extension Instalación en un servidor local LINUX Como primer paso realizamos la actualización de los repositorios de la distribución para después proceder a instalar todas las actualizaciones disponibles antes de realizar la descarga y la instalación de PHP para ellos desde el bash del sistema ejecutamos el comando siguiente: sudo apt update sudo apt -y upgrade
66 PHP Una vez que ya tenemos instalado las actualizaciones del sistema se instalara PHP 7.1. mediante el comando: sudo apt install php7.1 php7.0-cli php7.1-common php7.1-mbstring php7.1-intl php7.1-xml php7.1-mysql php7.1-mcrypt Una vez instalado PHP se puede comprobar la versión de PHP que se encuentra en nuestro servidor: php -v MYSQL Luego de tener instalado PHP con la versión correspondiente se instala el servidor y cliente de Mysql con el siguiente comando: sudo apt-get install mysql-server mysql-client Al momento que ejecutamos el comando anterior el sistema nos pedirá la clave del usuario root por defecto se pone como clave root pero para mayor seguridad una contraseña diferente. A continuación, se verifica la versión de Mysql que se encuentra disponible con el comando: mysql –version Configuración de la base de datos: Para comenzar con la instalación de la base de datos primeramente se ingresa la siguiente línea de código: sudo mysql_secure_installation Con esta instrucción se puede definir si se desea cambiar la contraseña del usuario root, remover usuarios anónimos deshabilitar el log-in de manera remota, eliminar la base de datos de prueba y cargar archivos que sean privilegiados de las tablas que sean necesarias.
67 Si se desea agregar una tabla o no usar el sistema directamente se lo puede hacer mediante workbench instalamos este programa con el siguiente comando: sudo apt-get install mysql-workbench Conectamos workbench luego se procede a ingresar la clave de root que hemos determinado anteriormente para después cargar el archivo sql en la base de datos y proceder a trabajar en ella. Luego de tener todos los requerimientos, actualizaciones y programas necesarios configuramos la conexión en la conexión php en lugar de usar localhost usamos la ip asignada para la trasferencia de la información.
68 Anexo 8. Diccionario de datos tabl_categoria
Columna
Tipo
Nulo
id_categoria (Primaria)
int(11)
No
cate_categoria
varchar(100)
No
cate_estado
enum('0', '1')
No
id_usuario
int(11)
No
Predeterminado
Enlaces a
Comentarios
MIME
Índices Nombre de la clave
Tipo
Único Empaquetado Columna
PRIMARY BTREE
Sí
No
id_categoria
Columna
Tipo
Nulo
Predeterminado
id_cliente (Primaria)
int(11)
No
clie_cedula
varchar(100)
No
clie_nombre
varchar(100)
No
clie_apellido
varchar(100)
No
clie_telefono
varchar(100)
No
clie_correo
varchar(100)
No
clie_direccion
varchar(100)
No
clie_fecha_ingres o
Date
No
clie_estado
enum('0', '1')
No
id_usuario
int(11)
No
Cardinalidad Cotejamiento Nulo Comentario 0
A
No
tabl_clientes
Enlaces a
Comentarios
MIME
69 Índices Nombre de la clave
Tipo
Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comentario
PRIMARY BTREE
Sí
No
id_cliente
0
A
No
tabl_compras Columna
Tipo
Nulo Predeterminado Enlaces a
Comentarios
id_compras (Primaria)
int(11)
No
Id de identificación de la compra que se realice.
comp_fecha
date
No
Fecha en la que se realiza las compras
comp_numero
varchar(100)
No
Etiqueta del número de compras
comp_proveedo varchar(100) r
No
Proveedor donde se realiza las compras
comp_ruc_prov varchar(100) eedor
No
Identificación o ruc del proveedor de las compras.
comp_comprado varchar(100) r
No
Aún no definido
comp_moneda
varchar(100)
No
Moneda con la que se realiza las compras
comp_subtotal
varchar(100)
No
Subtotal antes del IVA de las compras
comp_total_iva varchar(100)
No
El IVA a cobrar en la compra
varchar(100)
No
Costo total del producto incluido IVA
comp_tipo_pago varchar(100)
No
Tipo de pago a realizar si en cheque, efectivo o crédito. Si se encuentra el producto activo o inactivo "no estoy completamente seguro de esto"
comp_total
comp_estado
enum('0', '1')
No
id_usuario
int(11)
No
id_proveedor
int(11)
No
MIME
70 Índices
Nombre de la Tipo Único Empaquetado Columna clave PRIMARY BTREE
Sí
No
id_compras
Cardinalidad Cotejamiento Nulo Comentario
0
A
No
tabl_detalle_compras Columna
Tipo
Nulo
id_detalle_compras (Primaria)
int(11)
No
detaco_numero_compra
varchar(100)
No
detaco_ruc_proveedor
varchar(100)
No
id_producto
int(11)
No
detaco_producto
varchar(100)
No
detaco_moneda
varchar(100)
No
detaco_precio
varchar(100)
No
detaco_cantidad
varchar(100)
No
detaco_descuento
varchar(100)
No
detaco_importe
varchar(100)
No
detaco_fecha
date
No
id_usuario
int(11)
No
id_proveedor
int(11)
No
detaco_estado
enum('0', '1')
No
id_categoria
int(11)
No
Predeterminado Enlaces a Comentarios
MIME
Detalle de la fecha de compra
Índices Nombre de la clave
Tipo Único Empaquetado
PRIMARY BTREE
Sí
No
Columna id_detalle_ compras
Cardinalidad Cotejamiento Nulo Comentario
0
A
No
71 tabl_detalle_ventas Columna
Tipo
Nulo
id_detalle_vent as (Primaria)
int(11)
No
detave_numero varchar(100) _venta
No
detave_cedula_ varchar(100) cliente
No
id_producto
int(11)
Enlaces a
Comentarios
MIME
No
detave_product varchar(100) o
No
detave_moneda varchar(100)
No
detave_precio
Predeterminado
varchar(100)
No
cantidad_venta varchar(100)
No
detave_descuen varchar(100) to
No
detave_importe varchar(100)
No
detave_fecha
date
No
id_usuario
int(11)
No
id_cliente
int(11)
No
detave_estado
enum('0', '1')
No
Detalle del precio de las ventas
Detalle de la venta
Índices Nombre de Tipo la clave PRIMARY BTREE
Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comentario
Sí
No
id_detalle_ ventas
0
A
No
72 tabl_empresa Columna
Tipo
Nulo
id_empresa (Primaria)
int(11)
No
empr_cedula
varchar(100)
No
empr_nombre
varchar(100)
No
empr_direccion varchar(100)
No
empr_correo
varchar(100)
No
empr_telefono
varchar(100)
No
id_usuario
int(11)
No
Predeterminado
Enlaces a
Comentarios
MIME
Índices Nombre de Tipo Único Empaquetado Columna la clave PRIMARY BTREE
Sí
No
Cardinalidad Cotejamiento
id_empresa
0
A
Nulo Comentario No
tabl_permisos Columna
Tipo
Nulo
id_permiso (Primaria)
int(11)
No
Clave principal para dar permisos a las cuantas de usuarios
No
Nombre o tipo de permisos sea empleado administrador u otro
perm_nombre varchar(100)
Predeterminado Enlaces a
Comentarios
MIME
Índices Nombre de Tipo la clave PRIMARY BTREE
Único Empaquetado Columna Sí
No
id_permiso
Cardinalidad Cotejamiento Nulo Comentario 0
A
No
73 tabl_producto Columna
Tipo
Nulo
id_producto (Primaria)
int(11)
No
id_categoria
int(11)
No
prod_producto
varchar(100)
No
prod_presentaci varchar(100) on
No
Predeterminado Enlaces a
Comentarios
MIME
Nombre del producto
Unidad del producto sea libra kilo u onza.
prod_unidad
varchar(45)
No
prod_moneda
varchar(45)
No
prod_precio_co mpra
varchar(45)
No
Precio por el que se compró el producto
prod_precio_ve nta
varchar(45)
No
Precio en el que se vende el producto
prod_stock
varchar(45)
No
prod_estado
enum('0', '1')
No
prod_imagen
varchar(45)
No
prod_fecha_ven cimiento
date
No
id_usuario
int(11)
No
Si está en estado activo disponible o inactivo
Índices Nombre de Tipo la clave PRIMARY BTREE
Único Empaquetado Columna Sí
No
id_producto
Cardinalidad Cotejamiento Nulo Comentario 0
A
No
74 tabl_proveedor Columna
Tipo
Nulo
id_proveedor (Primaria)
int(11)
No
prov_cedula
varchar(45)
No
prov_razon_soc varchar(100) ial
No
prov_telefono
varchar(100)
No
prov_correo
varchar(45)
No
prov_direccion varchar(150)
No
prov_fecha
date
No
prov_estado
enum('0', '1')
No
id_usuario
int(11)
No
Predeterminado
Enlaces a
Comentarios
MIME
Índices Nombre de Tipo la clave
Único Empaquetado Columna
PRIMARY BTREE
Sí
Cardinalidad Cotejamiento Nulo Comentario
No
id_proveedor
0
A
No
Predeterminado
Enlaces a
Comentarios
tabl_usuarios
Columna
Tipo
Nulo
id_usuario (Primaria)
int(11)
No
usua_nombres
varchar(100)
No
usua_apellidos varchar(100)
No
usua_cedula
varchar(100)
No
usua_telefono
varchar(100)
No
usua_correo
varchar(100)
No
MIME
75
usua_direccion varchar(100)
No
usua_cargo
enum('0', '1')
No
usua_usuario
varchar(100)
No
usua_password varchar(100)
No
usua_password varchar(100) 2
No
usua_fecha_ing reso
date
No
usua_estado
enum('0', '1')
No
Índices Nombre de Tipo la clave
Único Empaquetado Columna Cardinalidad Cotejamiento
PRIMARY BTREE
Sí
No
id_usuario
0
A
Nulo Comentario No
tabl_usuario_permiso Columna
Tipo
Nulo
id_usuario_per miso (Primaria)
int(11)
No
id_usuario
int(11)
No
id_permiso
int(11)
No
Predeterminado
Enlaces a
Comentarios
MIME
Índices Nombre de la clave
Tipo
PRIMARY BTREE
Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comentario
Sí
No
id_usuario _permiso
0
A
No
76 tabl_ventas Columna
Tipo
Nulo
id_ventas (Primaria)
int(11)
No
vent_fecha
date
No
Fecha que se realiza la venta del producto
vent_numero
varchar(100)
No
Número de la venta
vent_cliente
varchar(100)
No
vent_cedula_cli varchar(100) ente
No
vent_vendedor varchar(100)
No
vent_moneda
varchar(100)
No
vent_subtotal
varchar(100)
No
vent_total_iva
varchar(100)
No
vent_total
varchar(100)
No
vent_tipo_pago varchar(100)
No
vent_estado
enum('0', '1')
No
id_usuario
int(11)
No
id_cliente
int(11)
No
Predeterminado Enlaces a
Comentarios
MIME
Índices Nombre de la clave
Tipo
PRIMARY BTREE
Único Empaquetado Columna Cardinalidad Cotejamiento Sí
No
id_ventas
0
A
Nulo Comentario No
77 Anexo 9. Presupuesto Recursos
Cantidad
Valor Unitario
Valor Total USD
$
Gastos Humano Estudiantes (Horas de programación)
160
$ 10,00
Costos Operacionales (Materiales) Hojas cuadriculadas Copias Carpeta Esferos Lápiz Borrador Corrector Sacapuntas Comida Impresiones Anillado de borradores Transporte
80 100 3 6 2 2 2 2 40 9 4 24
$ $ $ $ $ $ $ $ $ $ $ $
Inversiones (tecnológico) Flash Memory Tablet Gestión (mes) Llamadas telefónicas Reproducción de escritos Informe final (anillado) CD's Subtotal Imprevistos 5% TOTAL:
$ $ $ $ $ $ $ $ $ $ $ $
2,40 4,00 2,10 3,00 1,00 1,00 1,00 1,00 110,00 1,35 6,00 7,20
$ 20,00 $ 170,00
$ $
20,00 170,00
24
$
1,00
$
24,00
1 6
$ $
3,00 0,70
$ 3,00 $ 4,20 $ 1.961,25 $ 18,06 $ 1.979,31
1 1
0,03 0,04 0,70 0,50 0,50 0,50 0,50 0,50 2,75 0,15 1,50 0,30
1.600,00