Revisión sistemática de la literatura: Prácticas de desarrollo de software que mejoran el tiempo de entrega de aplicaciones con arquitectura monolítica
Fecha
Autores
Título de la revista
ISSN de la revista
Título del volumen
Editor
Pontificia Universidad Católica del Perú
Acceso al texto completo solo para la Comunidad PUCP
Resumen
(ANTECEDENTES) En la actualidad, las arquitecturas monolíticas están siendo
progresivamente reemplazadas por enfoques más flexibles, escalables e
independientes, como la arquitectura de microservicios. Este cambio se debe
principalmente a la creciente complejidad que adquieren los sistemas monolíticos con
el tiempo, así como al alto grado de acoplamiento entre sus componentes, lo que
impacta negativamente en los tiempos de entrega del software. No obstante, este tipo
de arquitectura sigue vigente en diversas industrias. Un ejemplo notable es el caso
de Amazon Prime, que migró de una arquitectura basada en microservicios a una
monolítica, motivado principalmente por la reducción de costos, sin comprometer la
eficiencia en la implementación de cambios.
(OBJETIVOS) El objetivo de este estudio es analizar cómo diversas prácticas aplicadas
al desarrollo de software con arquitectura monolítica permiten mitigar o resolver los
problemas inherentes a este tipo de diseño, y cómo estas prácticas contribuyen a
mejorar los tiempos de entrega.
(METODOS) Para alcanzar este objetivo, se llevará a cabo una revisión sistemática
de la literatura, utilizando bases de datos académicas reconocidas y relevantes en el
ámbito del desarrollo de software.
(RESULTADOS) Se filtraron 765 artículos a través del protocolo definido para la revisión
sistemática, quedando 80 estudios primarios. Estos estudios permitieron identificar un
conjunto de prácticas que abordan diversas dificultades asociadas a las arquitecturas
monolíticas, contribuyendo a la reducción de los tiempos de entrega. Las prácticas
encontradas se relacionan con el diseño arquitectónico, el desarrollo de software, el uso
de herramientas tecnológicas, el mantenimiento y la cultura organizacional. Asimismo,
se identificaron consideraciones clave para una implementación efectiva dentro de las
organizaciones.
(CONCLUSIONES) Las arquitecturas monolíticas siguen siendo relevantes en la
industria del software. Por ello, resulta fundamental implementar mejoras dentro del ciclo
de vida del software que ayude a los productos a ser más competitivos y que optimicen
los tiempos de entrega hacia el usuario final.
(BACKGROUND) Monolithic architectures are increasingly being replaced by more flexible, scalable, and independent approaches such as microservices architecture. This shift is primarily driven by the growing complexity of monolithic systems over time and the high degree of coupling between their components, which negatively impacts software delivery times. However, monolithic architectures remain relevant in various industries. A notable example is Amazon Prime, which transitioned from a microservicesbased architecture back to a monolithic one, primarily to reduce costs without compromising the efficiency of implementing changes. (OBJECTIVE) This study aims to analyze how various practices applied to the development of software with a monolithic architecture can mitigate or resolve the inherent challenges of this design and how these practices contribute to improving delivery times. (METHODS) To achieve this objective, a systematic literature review was conducted using well-established academic databases relevant to the field of software development. (RESULTS) A total of 765 articles were initially identified and filtered through the defined systematic review protocol, resulting in 80 primary studies. These studies revealed a range of practices that help address the challenges associated with monolithic architectures, thereby contributing to reduced delivery times. The identified practices relate to architectural design, software development, technological tools, maintenance, and organizational culture. Additionally, key considerations for successful implementation within organizations were identified. (CONCLUSIONS) Monolithic architectures continue to play a significant role in the software industry. Therefore, it is essential to implement improvements throughout the software lifecycle to enhance product competitiveness and optimize delivery times to end users.
(BACKGROUND) Monolithic architectures are increasingly being replaced by more flexible, scalable, and independent approaches such as microservices architecture. This shift is primarily driven by the growing complexity of monolithic systems over time and the high degree of coupling between their components, which negatively impacts software delivery times. However, monolithic architectures remain relevant in various industries. A notable example is Amazon Prime, which transitioned from a microservicesbased architecture back to a monolithic one, primarily to reduce costs without compromising the efficiency of implementing changes. (OBJECTIVE) This study aims to analyze how various practices applied to the development of software with a monolithic architecture can mitigate or resolve the inherent challenges of this design and how these practices contribute to improving delivery times. (METHODS) To achieve this objective, a systematic literature review was conducted using well-established academic databases relevant to the field of software development. (RESULTS) A total of 765 articles were initially identified and filtered through the defined systematic review protocol, resulting in 80 primary studies. These studies revealed a range of practices that help address the challenges associated with monolithic architectures, thereby contributing to reduced delivery times. The identified practices relate to architectural design, software development, technological tools, maintenance, and organizational culture. Additionally, key considerations for successful implementation within organizations were identified. (CONCLUSIONS) Monolithic architectures continue to play a significant role in the software industry. Therefore, it is essential to implement improvements throughout the software lifecycle to enhance product competitiveness and optimize delivery times to end users.
Descripción
Palabras clave
Programas para computadoras--Desarrollo, Arquitectura del software, Ingeniería de software, Programas para computadoras--Ciclo de vida del producto
Citación
item.page.endorsement
item.page.review
item.page.supplemented
item.page.referenced
Licencia Creative Commons
Excepto donde se indique lo contrario, la licencia de este ítem se describe como info:eu-repo/semantics/openAccess
