


























Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Los mejores documentos en venta realizados por estudiantes que han terminado sus estudios
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Descubre las mejores universidades de tu país según los usuarios de Docsity
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
El desarrollo de una aplicación web para mejorar la eficiencia operativa del sindicato ftot, que se encarga de proveer trabajadores temporales para la carga y descarga de productos en la tienda de autoservicio 'chedraui'. La aplicación incluye módulos para la gestión de asistencia de los trabajadores, el control de facturas generadas, y la administración de pagos realizados y pendientes. Se detalla el uso de tecnologías web como php, sql server y el modelo de desarrollo scrum. El objetivo es automatizar los procesos, reducir errores y brindar a los gerentes un mejor control y visibilidad de las operaciones del sindicato. La aplicación web busca mejorar la organización, el registro de asistencia, la asignación de tareas y la gestión de pagos, ofreciendo una herramienta de fácil uso para los usuarios.
Tipo: Tesis
1 / 34
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!
Los sindicatos surgieron en el siglo XVIII durante la Revolución Industrial para combatir las duras condiciones laborales en las fábricas. Estos primeros esfuerzos llevaron a la legalización de los sindicatos en el siglo XIX, permitiendo la negociación colectiva por mejores salarios y condiciones. A lo largo del siglo XX, los sindicatos ganaron fuerza, logrando importantes avances como la jornada laboral de ocho horas. Aunque enfrentan desafíos en la era de la globalización y la economía gig, siguen adaptándose y luchando por los derechos de los trabajadores en el siglo XXI. Philip Dray (publicado en 2010). El presente proyecto tiene como objetivo implementar una aplicación web que ayude al delegado sindical a llevar un control de las cargas y descargas realizada en las bodegas y un manejo del personal logrando así mismo un óptimo trabajo sin necesidad de buscar demasiado un problema generado. Este documento se encuentra estructurado en varias secciones. En la primera parte, se expone qué es el marco metodológico, exploramos la historia del sindicato (FTOT), los objetivos que se buscan alcanzar y la manera de lograr nuestras metas. La metodología que se seguirá es Scrum. En la segunda sección, se detallan las herramientas empleadas para la creación de la solución, incluyendo el editor Visual Studio Code, el lenguaje de programación PHP y la base de datos SQL Server. El tercer apartado trata sobre los resultados obtenidos de la implementación de la aplicación web, proporcionando una explicación detallada de su funcionamiento. Finalmente, la quinta y sexta división presentan las referencias bibliográficas y los anexos, respectivamente. En resumen, se ha detallado el proceso de desarrollo del proyecto y cada aspecto relevante, dado que la calidad del software es de máxima importancia.
Analizar, diseñar y desarrollar una aplicación web para tener un almacenamiento seguro y practico sobre los trabajados realizados, llevar un control en la asignación y asistencia de cada trabajador contratado en la empresa.
Entrevistar al delegado sindical para saber cuál es su método para almacenar sus trabajos realizados. Hacer un análisis sobre la información recopilada y así obtener puntos vitales para la elaboración de la página web. Diseñar la base de datos de acuerdo con las necesidades de esta empresa. Hacer el diseño para poder maquetar la página web. Desarrollar las secciones de la plataforma web con HTML, CSS, PHP. Implementar esta página web al ambiente laboral de esta empresa. Realizar una lista de errores al momento de ejecutar la aplicación web. Documentar.
Delegado sindical: Inicio de sesión Modulo para selección de trabajadores y facturas Modulo para asistencia de trabajadores Modulo para saber el trabajo correspondiente Modulo para consultar las facturas generadas. Trabajadores: Menú de inicio Marcar su asistencia Tienda: Inicio de sesión Modulo de facturas del mes Modulo de asistencia de los trabajadores Módulo de pagos realizados Módulo de pagos pendientes
Las tecnologías web comprenden un conjunto de herramientas y metodologías esenciales para desarrollar y mantener sitios y aplicaciones web. Entre estas se incluyen lenguajes de programación como HTML, CSS y JavaScript, además de frameworks y bibliotecas que facilitan el desarrollo. HTML se utiliza para estructurar el contenido de las páginas web, permitiendo la inclusión de texto, imágenes y enlaces. CSS se encarga de la presentación y el diseño de estas páginas, mejorando su apariencia visual mediante estilos como colores, fuentes y disposición de los elementos. JavaScript añade interactividad y dinamismo, permitiendo la creación de aplicaciones más atractivas y funcionales. Además, frameworks como React, Angular y Vue.js son fundamentales para el desarrollo de aplicaciones web modernas, facilitando la gestión del estado, la renderización eficiente y la reutilización de componentes. Fitzgerald, 2020
Figura 1 Aplicación web
La usabilidad se refiere a la facilidad con la que los usuarios pueden interactuar con un producto o sistema. En el diseño web, una buena usabilidad implica que el sitio o aplicación es intuitivo y satisfactorio. Los factores clave incluyen facilidad de aprendizaje, eficiencia, memorabilidad, baja tasa de errores y satisfacción del usuario. Mejorar la usabilidad implica pruebas con usuarios y principios de diseño centrado en el usuario, como la consistencia y accesibilidad. Técnicas como el diseño centrado en el usuario, las pruebas de usabilidad y el análisis heurístico son cruciales para identificar y resolver problemas de usabilidad. La accesibilidad, que permite a personas con discapacidades usar productos digitales, también es una parte integral de la usabilidad, asegurando que todos los usuarios puedan acceder y utilizar el sitio o aplicación.
Las bases de datos son sistemas organizados diseñados para almacenar, gestionar y recuperar información de manera eficiente. Son esenciales en aplicaciones web y software empresarial, permitiendo manejar grandes volúmenes de datos de forma coherente y accesible. La estructura de una base de datos se define mediante esquemas que organizan los datos en tablas, filas y columnas. Para operar eficientemente, una base de datos debe realizar funciones como inserción, actualización, eliminación y consulta de datos de manera segura. La administración de bases de datos se lleva a cabo a través de Sistemas de Gestión de Bases de Datos (SGBD) como MySQL, PostgreSQL, Oracle y Microsoft SQL Server, que garantizan la integridad, consistencia y seguridad de los datos. Las bases de datos relacionales, basadas en el modelo de E.F. Codd, son las más populares y utilizan SQL (Structured Query Language) para administrar y consultar datos. Sin embargo, con el auge de las aplicaciones web y la necesidad de manejar datos no estructurados a gran escala, han surgido las bases de datos NoSQL como MongoDB y Cassandra, que ofrecen flexibilidad y escalabilidad superiores. El diseño de bases de datos incluye prácticas como la normalización, que organiza los datos y reduce la redundancia. La seguridad es otra consideración crucial, implementando medidas como control de acceso, cifrado y copias de seguridad regulares para proteger los datos contra pérdidas o accesos no autorizados. Date, (2003) Figura 2 Usabilidad
El modelo jerárquico organiza los datos en una estructura en forma de árbol, donde cada nodo tiene un único padre y puede tener múltiples hijos. Este tipo de organización es útil para representar datos con relaciones jerárquicas uno a muchos, como la estructura de un organigrama empresarial o la organización de carpetas y archivos en un sistema de gestión de archivos. A pesar de su simplicidad y eficiencia en estructuras jerárquicas, su limitación para manejar relaciones complejas como las muchas a muchos restringe su aplicabilidad en ciertos contextos.
El modelo de red, desarrollado por el Grupo de Trabajo de Bases de Datos CODASYL en la década de 1960, es una extensión del modelo jerárquico que permite que un nodo tenga múltiples padres. Esto crea una estructura de datos más flexible, similar a un grafo, capaz de representar relaciones complejas muchos a muchos. A pesar de sus ventajas en flexibilidad, la gestión de enlaces explícitos entre registros y su complejidad relativa han limitado su adopción frente al modelo relacional en muchas aplicaciones. Figura 4 Modelo Jerarquico Figura 5 Modelo de red
El modelo orientado a objetos fusiona conceptos de bases de datos con la programación orientada a objetos, almacenando datos en forma de objetos que encapsulan tanto datos como métodos para manipular esos datos. Este enfoque es particularmente útil en aplicaciones que requieren una representación directa de entidades del mundo real, como sistemas de gestión de contenido digital y simulaciones de sistemas complejos. Ejemplos de sistemas de gestión de bases de datos orientados a objetos incluyen db4o y ObjectDB.
El modelo NoSQL (Not Only SQL) es una alternativa de almacenamiento y gestión de datos diseñada para manejar grandes volúmenes de información no estructurada o semi-estructurada de manera flexible y escalable. Estos sistemas son especialmente adecuados para aplicaciones que requieren alta disponibilidad y capacidad para manejar datos dinámicos y heterogéneos, como aplicaciones web y análisis de grandes datos. Un ejemplo prominente es MongoDB (Stonebraker, 2007). Figura 6 Modelo orientado a objetos Figura 7 Modelo NoSQL
Los modelos de desarrollo de software son metodologías para organizar, planificar y controlar el proceso de creación de sistemas de información. Entre los modelos más conocidos están el modelo en cascada, el modelo ágil y el modelo iterativo. El modelo en cascada sigue un proceso secuencial y lineal, el modelo ágil se enfoca en entregas incrementales y colaboración continua, y el modelo iterativo permite desarrollar múltiples versiones del software, mejorando el producto en cada ciclo. El modelo en cascada es adecuado para proyectos con requisitos bien definidos, mientras que los modelos ágiles y iterativos son ideales para entornos cambiantes y proyectos que requieren flexibilidad. En los métodos ágiles, como Scrum y Kanban, el desarrollo se organiza en sprints o iteraciones cortas, promoviendo la colaboración continua y la adaptación a cambios rápidos.
El modelo en cascada es un enfoque secuencial y lineal donde cada fase debe completarse antes de que la siguiente comience. Comienza con la especificación de requisitos, seguido del diseño, la implementación, las pruebas, la instalación y el mantenimiento. Este enfoque es adecuado para proyectos donde los requisitos son estables y claros desde el principio. Sin embargo, es rígido y no se adapta bien a cambios tardíos en los requisitos.
El modelo incremental desarrolla el software en pequeños incrementos o versiones iterativas, cada una agregando funcionalidad al sistema. Cada iteración pasa por las fases de análisis de requisitos, diseño, implementación y pruebas. Este modelo ofrece flexibilidad y la capacidad de entregar software funcional temprano y de manera incremental, reduciendo el riesgo de fracaso del proyecto. Requiere una planificación inicial detallada y una gestión cuidadosa para asegurar la integración adecuada de los incrementos. Figura 8 Modelo en cascada Figura 9 Modelo incremental
El modelo en espiral combina el enfoque de la cascada con iteraciones del modelo incremental, enfocándose especialmente en la gestión de riesgos. Cada ciclo en espiral incluye actividades de planificación, evaluación de riesgos, ingeniería, y evaluación del cliente. Este modelo es adecuado para proyectos grandes y complejos donde los riesgos son altos y es crucial gestionarlos de manera proactiva. Sin embargo, su implementación puede ser costosa debido a la necesidad de realizar múltiples iteraciones y evaluaciones.
El Desarrollo Rápido de Aplicaciones (RAD) se centra en la entrega rápida de productos mediante el uso de prototipos y herramientas CASE (Computer-Aided Software Engineering), con la participación continua del usuario final. Este modelo es ideal para proyectos donde los requisitos no están completamente definidos desde el principio y la retroalimentación del usuario es crucial. Aunque RAD acelera el tiempo de desarrollo y mejora la satisfacción del cliente, puede no ser adecuado para proyectos grandes y complejos que requieren una arquitectura robusta y extensible.
El modelo ágil es una metodología iterativa e incremental que enfatiza la adaptabilidad, la colaboración y la entrega rápida de software funcional en ciclos cortos llamados "sprints". Agile Figura 10 Modelo espiral Figura 11 Desarrollo rápido de aplicaciones
verificación de requisitos y las pruebas de aceptación, están en el otro lado. Este modelo asegura que cada etapa del desarrollo tenga una validación correspondiente, garantizando así la calidad del producto final. Figura 14 Modelo en v
El problema actual cosiste en que el sindicato FTOT tiene una organización de información inadecuado, actualmente el método de recopilación y asignación de trabajos son en físico y son almacenados en carpetas. Todo esto genera demasiados problemas ya que no se puede realizar una consulta correctamente y tiende a equivocarse en días de pagos de cada trabajador. Además a lo largo del sindicato se han tenido perdidas de dinero por no llevar un buen control.