Arquitectura de microservicios y metodología DevOps aplicadas al desarrollo de un software para la gestión de tutorías de alumnos

Cristóbal García, Rubén (2022). Arquitectura de microservicios y metodología DevOps aplicadas al desarrollo de un software para la gestión de tutorías de alumnos. Proyecto Fin de Carrera / Trabajo Fin de Grado, E.T.S.I. de Sistemas Informáticos (UPM), Madrid.

Description

Title: Arquitectura de microservicios y metodología DevOps aplicadas al desarrollo de un software para la gestión de tutorías de alumnos
Author/s:
  • Cristóbal García, Rubén
Contributor/s:
  • Lara Cabrera, Raúl
Item Type: Final Project
Degree: Grado en Ingeniería del Software
Date: July 2022
Subjects:
Freetext Keywords: Arquitectura de microservicios; Aplicaciones web; DevOps
Faculty: E.T.S.I. de Sistemas Informáticos (UPM)
Department: Sistemas Informáticos
Creative Commons Licenses: Recognition - No derivative works - Non commercial

Full text

[img] PDF - Users in campus UPM only - Requires a PDF viewer, such as GSview, Xpdf or Adobe Acrobat Reader
Download (3MB)
[img] Archive (ZIP) - Users in campus UPM only
Download (2MB)

Abstract

La industria del software es un mundo en constante cambio en el que aplicar las metodologías, tecnologías y patrones de arquitectura más punteros puede ser decisivo para diferenciarte y lograr el éxito. Hasta hace unos años, las aplicaciones informáticas se han dividido en tres capas horizontales muy marcadas: interfaz de usuario, lógica de negocio y bases de datos. Esta división genera dos importantes obstáculos. Por un lado, reúne toda la ejecución de los procesos lógicos en un único núcleo o monolito del que depende toda la aplicación, y en el que un fallo puede ser crítico para el funcionamiento del sistema. Por otro, provoca que las organizaciones dividan sus equipos en función de la tecnología que usan, lo que desencadena una lucha constante de intereses y poca comunicación en los equipos. Como ocurre en la naturaleza, sobreviven los que se adaptan mejor, en este caso, los equipos que incorporan nuevas metodologías y arquitecturas producirán software de mayor calidad y más eficiente. Las arquitecturas de microservicios plantean romper los núcleos monolíticos en pequeños módulos desacoplados que pueden ser desarrollados por un solo equipo que se encargue de toda su pila tecnológica. Así se consigue descomponer una aplicación en componentes que pueden ser desplegados, reemplazados o replicados de manera independiente. Al igual que se replantea la forma de construir una aplicación; también se debe replantear cómo se organiza el equipo que la desarrolla. DevOps es una cultura que promueve la comunicación, colaboración y transparencia entre los equipos de desarrollo y operaciones. Rompiendo las barreras que existían entre ambos equipos, se puede incorporar nuevos conceptos como la automatización, los flujos de trabajo, la integración continua y la optimización de las entregas de software de calidad a los usuarios finales. Abstract: The software industry is an ever-changing world in which applying the latest methodologies, technologies and architectural patterns can be decisive in differentiating yourself and achieving success. Until a few years ago, software applications have been divided into three distinct horizontal layers: user interface, business logic and databases. This division creates two major obstacles. On the one hand, it brings together all the execution of logical processes into a single core or monolith on which the entire application depends, and where a failure can be critical to the operation of the system. On the other hand, it causes organizations to divide their teams according to the technology they use, leading to a constant struggle of interests and poor communication within teams. As in nature, those that adapt best survive, in this case, teams that incorporate new methodologies and architectures will produce higher quality and more efficient software. Microservices architectures propose breaking monolithic cores into small, decoupled modules that can be developed by a single team in charge of their entire technology stack. This allows an application to be broken down into components that can be deployed, replaced, or replicated independently. Just as you rethink how you build an application; you must also rethink how you organize the team that develops it. DevOps is a culture that promotes communication, collaboration and transparency between development and operations teams. By breaking down the barriers that existed between the two teams, new concepts such as automation, workflows, continuous integration, and optimization of quality software delivery to end users can be incorporated.

More information

Item ID: 71309
DC Identifier: https://oa.upm.es/71309/
OAI Identifier: oai:oa.upm.es:71309
Deposited by: Biblioteca Universitaria Campus Sur
Deposited on: 20 Jul 2022 19:44
Last Modified: 20 Jul 2022 19:44
  • Logo InvestigaM (UPM)
  • Logo GEOUP4
  • Logo Open Access
  • Open Access
  • Logo Sherpa/Romeo
    Check whether the anglo-saxon journal in which you have published an article allows you to also publish it under open access.
  • Logo Dulcinea
    Check whether the spanish journal in which you have published an article allows you to also publish it under open access.
  • Logo de Recolecta
  • Logo del Observatorio I+D+i UPM
  • Logo de OpenCourseWare UPM