Abstract

Este Trabajo de Fin de Grado aborda la optimización de los procesos de desarrollo y despliegue de software mediante la implementación de técnicas automatizadas. La introducción presenta la motivación, destacando la relevancia de la automatización tanto en el ámbito técnico como empresarial, y subraya cómo esta práctica mejora la eficiencia, la reproducibilidad y la calidad del software. También se estudia el estado del arte, se analizan las principales herramientas y enfoques actuales en la automatización, como GitHub Actions, gestores de dependencias como Python Dependency Manager (PDM), y plataformas de Integración Continua/Despliegue Continuo (CI/CD), identificando sus ventajas y limitaciones. Esto proporciona una base para definir los objetivos del proyecto. El análisis del problema detalla cómo automatizar el despliegue de un proyecto software utilizando GitHub Actions para gestionar dependencias, realizar pruebas, generar documentación, y publicar paquetes en Python Package Index (PyPI). En la fase de diseño e implementación, se justifican las herramientas seleccionadas, como PDM, Make Docs (MkDocs) y GitHub Actions, y se comparan con alternativas desechadas. La arquitectura del software explica cómo se organiza el pipeline, integrando los procesos de desarrollo y despliegue. Finalmente, se presentan experimentos, métricas de rendimiento y conclusiones que reflejan el cumplimiento de los objetivos y sugieren posibles direcciones para trabajos futuros, como guías de automatización avanzada o integración con metodologías específicas.
Loading...

Quotes

plumx
0 citations in WOS
0 citations in

Journal Title

Journal ISSN

Volume Title

Publisher

Universidad Rey Juan Carlos

URL external

External URL

DOI

Description

Trabajo Fin de Grado leído en la Universidad Rey Juan Carlos en el curso académico 2024/2025. Directores/as: David María Arribas, Iván Ramírez Díaz

Citation

Endorsement

Review

Supplemented By

Referenced By

Statistics

Views
0
Downloads
0

Bibliographic managers

Document viewer

Select a file to preview:
Reload