@unpublished{upm70743, title = {Modernizaci{\'o}n de un conector software: Mejora de la mantenibilidad y entrega continua}, address = {Madrid}, author = {Daniel Mart{\'i}n Mingo}, month = {June}, year = {2022}, keywords = {DevOps; Integraci{\'o}n Continua (CI); Entrega Continua (CD); Cloud Computing; Automatizaci{\'o}n}, abstract = {Este Trabajo Fin de Grado (TFG) aborda un proceso de modernizaci{\'o}n de un software, previamente desarrollado por el autor de este trabajo, con el fin de mejorar su mantenibilidad y automatizar los procesos de compilaci{\'o}n, prueba y despliegue mediante entrega continua. Este TFG tiene, por tanto, dos objetivos principales: OBJ1 ? La refactorizaci{\'o}n del c{\'o}digo fuente siguiendo los Principios de Mantenibilidad del Software que ha adoptado la comunidad y usando las principales herramientas de an{\'a}lisis de c{\'o}digo fuente, como SonarQube y Better Code Hub. OBJ2 - Construcci{\'o}n de un nuevo entorno de trabajo con control de versiones y automatizaci{\'o}n de la compilaci{\'o}n, empaquetado, pruebas y despliegue continuo, permitiendo disponer de entregas continuas de software tanto en un entorno de pruebas (local) como en producci{\'o}n (nube). El software objeto de la modernizaci{\'o}n es un conector software que migra datos y se{\~n}ales de dispositivos de entornos industriales a sistemas de gesti{\'o}n de mantenimiento (GMAO). Este trabajo supone, por tanto, una aproximaci{\'o}n a la cultura DevOps a trav{\'e}s de diversas t{\'e}cnicas, herramientas y buenas pr{\'a}cticas que persiguen acelerar la entrega de software. En particular, se realiza una transformaci{\'o}n de un modelo de proceso tradicional hacia un modelo de proceso {\'a}gil a trav{\'e}s de la automatizaci{\'o}n del ciclo de vida del desarrollo del software en el que adem{\'a}s se hace {\'e}nfasis en la mejora de la mantenibilidad del software. Abstract: This Final Degree Project addresses a modernization process of a software, previously developed by the author of this work, to improve its maintainability and automate the compilation, testing, and deployment processes through continuous delivery. This FDP, therefore, has two main objectives: OBJ1 - Refactoring the source code following the Principles of Software Maintainability that has been adopted by the community using the main code analysis tools such as SonarQube and Better Code Hub. OBJ2 - Construction of a new work environment with control version management and automation of compilation, packaging, testing, and continuous deployment, allowing continuous software releases to be available both in a test environment (On-Premises) and in production (Cloud). The software under modernization is a software connector that migrates data and signals from industrial devices to Computerized Maintenance Management Systems (CMMS). This work involves, therefore, an approach to DevOps culture through different techniques, tools and good practices that aim to accelerate the software delivery. A transformation from a traditional to an agile process model is carried out through the automation of the software development life cycle with emphasis on increasing software maintainability.}, url = {https://oa.upm.es/70743/} }