SciELO - Scientific Electronic Library Online

 
 número53Nuevos desafíos en Tecnologías de Información y ComunicaciónEstudio Terciario sobre Adopción de DevOps índice de autoresíndice de assuntosPesquisa de artigos
Home Pagelista alfabética de periódicos  

Serviços Personalizados

Journal

Artigo

Indicadores

Links relacionados

  • Não possue artigos similaresSimilares em SciELO

Compartilhar


RISTI - Revista Ibérica de Sistemas e Tecnologias de Informação

versão impressa ISSN 1646-9895

RISTI  no.53 Porto mar. 2024  Epub 30-Abr-2024

https://doi.org/10.17013/risti.53.5-22 

Artículos

Estandarización y Continuidad: El Puente entre ISO/IEC 29110 y DevOps

Standardization and Continuity: The Bridge between ISO/IEC 29110 and DevOps

Galván-Cruz Sergio1 

Muñoz Mirna1 

Acevedo Daniela1 

Manuel A. Pastrana P.2 

1Centro de Investigación en Matemáticas- Unidad Zacatecas, México. daniela.acevedo@cimat.mx; mirna.munoz@cimat.mx; sergio.galvan@cimat.mx

2Institución Universitaria Antonio José Camacho, Cali, Valle del Cauca, Colombia. mapastrana@admon.uniajc.edu.co


Resumen

Este artículo se enfoca en la integración entre DevOps, que es un conjunto de prácticas que enfatiza la agilidad, la automatización y la colaboración entre los equipos de desarrollo y operaciones, y el perfil básico del estándar ISO/IEC 29110, que proporciona pautas para usar estándares de calidad y procesos de desarrollo de software en entidades muy pequeñas (EMPs). Esta investigación se enfoca en identificar la forma en las que los principios flexibles de DevOps pueden alinearse y, al mismo tiempo, reforzar las estructuras formales del ISO/IEC 29110. Para lograrlo, se evalúa hasta qué punto DevOps puede cumplir con los requisitos del ISO y garantizar que puedan mejorar la optimización de procesos, la mejora continua y la capacidad de ser dinámicos. Finalmente, se descubrirán elementos que servirían a las EMPs para mejorar su proceso de desarrollo y permanezcan conformes con los estándares internacionales.

Palabras-clave: ISO/IEC 29110; DevOps; mapeo; buenas prácticas; Entidades Muy Pequeñas; EMPs

Abstract

This article focuses on the integration between DevOps, which is a set of practices that emphasizes agility, automation, and collaboration between development and operations teams, and the basic profile of the ISO/IEC 29110 standard, which provides guidelines for using quality standards and software development processes in Very Small Entities (VSEs). This research focuses on identifying how the flexible principles of DevOps can align and, at the same time, reinforce the formal structure of ISO/IEC 29110. To achieve this, the extent to which DevOps can meet the requirements of ISO is evaluated, and the extent to which they can improve process optimization, continuous improvement, and dynamic ability are ensured. Finally, elements will be discovered that would help EMPs improve their development process and remain in compliance with international standards.

Keywords: ISO/IEC 29110; DevOps; mapping; best practices; Very Small Entities; VSEs

1. Introducción

DevOps ha ganado popularidad, debido a su capacidad para lanzar aplicaciones al mercado de manera rápida, eficiente, con bajo costo de desarrollo y mínimo esfuerzo humano como sugieren (Erich, Amrit & Daneva, 2014; Mousaei & Gandomani 2020; Almeida, Simões & Lopes, 2022). Adicionalmente, otros autores resaltan algunos beneficios del uso de DevOps tales como: time to market mejorado, cerrar la brecha entre el equipo de desarrollo (Dev) y Operaciones (Ops), lanzamientos confiables, calidad del producto mejorada, mejora y automatización de procesos entre otros (Ghofrani & Bozorgmehr, 2019; Guerrero et al., 2020). Así mismo, el trabahi de (Khan et al., 2022) resalta que las organizaciones están adoptando masivamente DevOps en un intento de satisfacer la creciente demanda de los clientes por aplicaciones altamente disponibles, de lanzamiento continuo y de gran valor, accesibles en todo momento y lugar y en cualquier plataforma.

Sin embargo, la adopción de DevOps representa un reto considerable, resaltando entre los desafíos existentes que dificultan su implementación: 1) falta de comprensión del significado de DevOps (Kamuto & Langerman, 2017), 2) resistencia al cambio por parte de las personas (Kamuto & Langerman, 2017), 3) falta de conocimiento para la elección e integración correcta de herramientas tecnológicas (Ghantous & Gill, 2017), 4) diferencias en el estilo de trabajo entre Dev y Ops (Erich et al., 2017), 5) diseño de la arquitectura para soportar DevOps (Bucena & Kirikova, 2017), 6) cambio en los procesos (Chen, 2017), y 7) cambiar estructuras y estándares organizacionales (Bucena & Kirikova, 2017).

Los retos antes mencionados representan barreras que las empresas deben eliminar para poder realizar una implementación exitosa de DevOps, además, cabe resaltar que siete de los retos están relacionados con la inexistencia de una guía clara y detallada de sus procedimientos que brinde el soporte para reforzar la comprensión de DevOps, al mismo tiempo que ayude en la adopción de prácticas y facilite su implementación a través de la sugerencia de herramientas tecnológicas, siendo el alcance de este trabajo de investigación.

En este contexto, este artículo se centra en realizar un mapeo entre las tareas de la ISO/IEC 29110 y las actividades del proceso DevOps, como punto de partida para la creación de una guía clara que ayude a la adopción de prácticas y facilite la implementación.

El objetivo de este artículo es explorar y establecer la relación entre las prácticas de DevOps y las tareas estipuladas en el perfil básico del estándar ISO/IEC 29110.

El resto del artículo está estructurado como a continuación se menciona, la sección 2 presenta los conceptos clave en los que se basa esta investigación, la sección 3 describe la metodología seguida para realizar el mapeo, la sección 4 analiza los resultados, y finalmente, la sección 5 presenta las conclusiones y trabajo futuro.

2. Marco Teórico

El presente estudio se enfoca en identificar las relaciones entre DevOps, que es un conjunto de prácticas caracterizado por su agilidad, automatización y colaboración continua entre dos áreas como lo son el desarrollo y las operaciones, y el perfil básico del estándar ISO/IEC 29110, diseñado para mejorar la calidad y el proceso sistemático en el desarrollo de software, particularmente en entidades muy pequeñas (con un máximo de 25 empleados). Esta sinergia se explora con el fin de descubrir cómo la estructura del estándar ISO/IEC 29110 puede integrarse coexistir y potenciarse con la flexibilidad de DevOps. Adicionalmente, esta investigación propone analizar los principios, prácticas y beneficios de DevOps, como la integración y entrega continua, y contrastarlos con los requisitos y procedimientos estipulados en el perfil básico del ISO/IEC 29110.

2.1 DevOps

De acuerdo a autores como Sharma (Sharma & Coyne, 2015), Jabbari (Jabbari et al., 2016), Lwakatare (Lwakatare et al, 2016), Ståhl & Bosch (Ståhl, D., & Bosch, 2017) y França (França, Jeronimo & Travassos, 2016) “DevOps es un proceso empresarial, que está compuesto por un conjunto de actividades o tareas que producen un resultado específico (servicio o producto) para los clientes, desde el desarrollo y comprobación hasta la producción”, pero ampliando, posterior a la puesta de producción, este proceso abarca también las operaciones y el monitoreo del sistema en producción, así como la planificación de las tareas a realizar que fomentan la mejora continua producto de la información que se ha generado en otras actividades de DevOps. La Figura 1, muestra una representación genérica del proceso de DevOps.

Figura 1 Proceso DevOps (Redondo & Cárdenas, 2022

Como se observa en la Figura 1, DevOps puede entenderse como un proceso con 8 actividades, las cuales están compuestas por un conjunto de prácticas que lo sustentan. A continuación, se definen los conceptos concernientes:

  • Un proceso es un grupo de tareas y/o actividades relacionadas entre sí que persiguen cubrir las necesidades de los clientes (SOLÍS & TINOCO, 2015).

  • Las actividades son un grupo de acciones que persiguen un mismo fin (SOLÍS & TINOCO, 2015).

  • Una práctica es un ejercicio o realización de una acción de forma continuada y conforme a sus reglas (Lawrence Pfleeger, 2002).

De acuerdo con (Dominguez-Acosta & Garcia-Mireles, 2021; López Peña, 2021; Perera et al., 2017), DevOps está compuesto por las siguientes actividades:

  • Planificación: Los equipos de DevOps se encargan de conceptualizar y diseñar el software que van a desarrollar, identificando las necesidades del cliente y proponiendo soluciones a través de la elaboración o mejora de un software. En esta actividad se detallan las funcionalidades y características que tendrá el software. Además, se planifica qué herramientas utilizar para que el equipo tenga claras las tareas pendientes, el progreso realizado, y evalúen si podrán cumplir con los plazos establecidos, entre otros aspectos.

  • Codificación: en esta actividad se realiza el desarrollo o mejora del software a construir, teniendo en cuenta los elementos de la planeación, e implementando prácticas que garanticen la organización del código, la trazabilidad de los cambios y su alta disponibilidad para todos los integrantes del equipo en cualquier momento.

  • Construcción: en esta actividad se realiza la compilación, enlace o términos similares referentes a crear el empaquetado de la solución. Esta actividad depende de las instrucciones propias del lenguaje de programación y es una actividad repetitiva que se puede automatizar.

  • Pruebas: esta actividad busca comprobar que la calidad de lo construido sea la más alta, centrado su atención no solamente en comprobar que la funcionalidad responde correctamente a la descripción funcional del análisis, además permite determinar cómo responde a distintos estímulos que producirán un error.

  • Liberación: en esta actividad se automatizan los pasos anteriores encadenando varias prácticas, lo que permite a partir de los cambios registrados en la codificación, iniciar la construcción, pruebas y crear así un entregable listo para ser puesto en un servidor.

  • Despliegue: esta actividad se enfoca en tomar la unidad construida ya sea de forma manual o automatizada y la pone operativa en un servidor.

  • Operación: esta actividad provee un conjunto de prácticas que garantizan la estabilidad, replicabilidad y recuperación de fallos rápida, en la infraestructura que soporta los diversos aplicativos y servicios de la empresa.

  • Monitoreo: esta actividad provee a través de varias prácticas la generación de métricas que permiten estar pendiente del comportamiento y las variaciones que tengan tanto los aplicativos como la infraestructura, con el ánimo de fomentar la mejora continua.

2.2 ISO/IEC 29110

De acuerdo con (Bolívar et al., 2023; Galvan-Cruz et al., 2021; Muñoz, 2022) el estándar ISO/IEC 29110, titulado "Ingeniería de Software y Sistemas - Perfiles de Ciclo de Vida para Entidades Muy Pequeñas (VSE)", surge como respuesta a la necesidad de simplificar los procesos de desarrollo y gestión de proyectos para empresas y organizaciones que desarrollan software, y que cuentan con un máximo de 25 empleados. Este estándar fue elaborado por el Grupo de Trabajo 24 (WG24) del Subcomité 7 (SC7) del Comité Técnico Conjunto 1 (JTC1) de la ISO en 2005. El estándar tiene como propósito general proporcionar un marco de proceso simple y práctico para la ejecución de proyectos de software. Este estándar abarca 2 procesos: Gestión de Proyectos (GP) e Implementación de Software (IS). A continuación, se detalla cada uno:

2.2.1 Procesos del estándar ISO/IEC 29110

Los procesos que componen el perfil básico del estándar ISO/IEC 29110 están enfocados en proporcionar una guía para la gestión de proyectos y la implementación técnica en pequeñas organizaciones (O'Connor & Laporte, 2017; Moreno-Campos et al., 2014; Takeuchi et al., 2014).

Gestión de Proyectos

El propósito del proceso de GP es establecer y realizar de manera sistemática las tareas del proyecto de implementación de software, lo que permite cumplir con los objetivos del proyecto en la calidad, tiempo y costos esperados (ISO/IEC, 2011). El proceso de GP contiene 4 actividades y sus respectivas tareas. La Tabla 1 lista las actividades y número de tareas asociadas.

Tabla 1 Muestra las actividades del proceso GP del ISO/IEC 29110 perfil básico 

Nombre de la Actividad Cantidad de tareas
GP.1 Planificación del Proyecto 15
GP.2 Ejecución del Plan del Proyecto 6
GP.3 Evaluación y control del proyecto 3
GP.4 Cierre del proyecto 2

Implementación de software

El propósito del proceso de IS es la realización sistemática de las actividades de análisis, diseño, construcción, integración y pruebas de productos de software nuevos o modificados de acuerdo con los requisitos especificados (ISO/IEC, 2011). El proceso de GP se contiene 4 actividades y sus respectivas tareas. La Tabla 2 lista las actividades y número de tareas asociadas.

Tabla 2 Muestra las actividades del proceso de Implementación de Software del ISO/IEC 29110 perfil básico 

Nombre de la Actividad Cantidad de tareas
IS.1 Inicio de la Implementación del software 2
IS.2 Análisis de requisitos de software 7
IS.3 Arquitectura y diseño detallado de software 8
IS.4 Construcción del software 7
IS.5 Integración y pruebas de software 11
IS.6 Entrega del producto 6

3. Metodología

La metodología definida para la realización del mapeo comprendió un enfoque estructurado, el cual se detalla a continuación:

Determinar el propósito y los objetivos de las actividades del proceso DevOps, desglosado en dos fases fundamentales:

  • Investigar y analizar fuentes bibliográficas relevantes, incluyendo artículos especializados y textos sobre DevOps, para obtener una comprensión profunda de la materia.

  • Sintetizar las actividades de DevOps, estableciendo claramente su propósito y los objetivos perseguidos, para delineación de su valor y aplicaciones.

Elaborar una matriz de correspondencia entre las tareas especificadas en el perfil básico del estándar ISO/IEC 29110 y las actividades inherentes al proceso de DevOps, buscando alinear los estándares de calidad y las prácticas de eficiencia operativa.

  • Este instrumento clave ha sido cuidadosamente examinado y validado por expertos en el ámbito de la ingeniería de software y especialistas en el estándar ISO/IEC 29110 y en el proceso DevOps. El consenso de los expertos ha permitido refinar la matriz para que sirva como un estudio confiable alineados a los principios de DevOps y los procesos definidos por el estándar ISO/IEC 29110.

Presentar los resultados, donde se muestra la convergencia entre el perfil básico del estándar ISO/IEC 29110 y el proceso DevOps, destacando hallazgos clave, proyectando implicaciones prácticas y teóricas para el campo de la ingeniería de software.

4. Análisis y Experimentación

La matriz de correspondencia diseñada en este estudio constituye un esfuerzo analítico y sistematizado para tender puentes entre el estructurado entorno del estándar ISO/IEC 29110 y las dinámicas prácticas de DevOps. A través de esta matriz, cada tarea detallada dentro de los procesos de gestión de proyectos y de implementación de software del perfil básico de ISO/IEC 29110 se mapea meticulosamente con las actividades de DevOps, incluyendo la integración y despliegue continuos, la automatización, el monitoreo y la gestión de infraestructura.

El propósito de este mapeo es realizar una comparativa para clarificar cómo el estándar y las prácticas de DevOps pueden complementar, enriquecer o, en algunos casos, mejorar optimizar las tareas de estándar, proporcionando así una base formal para las organizaciones que buscan armonizar estos dos mundos en su práctica de Ingeniería de Software.

Para cada una de las matrices de correspondencia mostradas en las siguientes secciones se muestra la tarea de cada actividad del ISO/IEC 29110 y su relación con las actividades y prácticas DevOps, en caso de existir alguna relación se marca con una X de lo contrario se mantiene en blanco, lo que significa que no se encontró valor alguno.

Planificación del Proyecto

La planificación de proyectos según el estándar ISO/IEC 29110 y las actividades de DevOps se entrelazan armónicamente, creando un ecosistema donde la metodología estructurada de ISO fomenta una base sólida para las fases de planificación, desarrollo y pruebas, mientras que DevOps inyecta agilidad y mejora continua en el ciclo de vida del software con prácticas como integración continua, entrega continua, despliegue automatizado y monitoreo constante. Esta relación sinérgica permite que los proyectos se beneficien de la previsión y claridad de ISO, complementándose con la eficiencia y respuesta rápida de DevOps para adaptarse a los cambios y mejorar la calidad del software entregado (ISO/IEC, 2011) Tabla 3.

Tabla 3 Tabla de Correspondencia de la actividad GP Planificación del Proyecto respecto a DevOps 

Ejecución del plan de proyecto

La ejecución del plan de proyecto según el ISO/IEC 29110 se alinea estrechamente con las actividades dinámicas de DevOps. La meticulosa planificación ISO/IEC 29110 establece un camino claro que DevOps sigue con su ciclo de retroalimentación rápida en las etapas de codificación y construcción. Adicionalmente, la rigurosidad en las pruebas de ISO/IEC se refleja en la automatización y la entrega continua de DevOps. Además, las etapas de liberación y despliegue se transforman mediante la implementación automatizada de DevOps; y finalmente, la operación y el monitoreo, siempre presentes en ISO/IEC, se intensifican en DevOps para un ajuste continuo y optimización del rendimiento, lo que demuestra una convergencia complementaria de disciplina y adaptabilidad entre ambas metodologías (ISO/IEC, 2011) Tabla 4.

Tabla 4 Tabla de Correspondencia de la actividad GP Ejecución del Plan del Proyecto respecto a DevOps 

Evaluación y Control del proyecto

En el marco de la evaluación y control del proyecto del ISO/IEC 29110, la estructura y medición detalladas del avance del proyecto complementan la naturaleza cíclica de DevOps, en la que la planificación es iterativa, la codificación y construcción son continuas, y las pruebas son automáticas y frecuentes. La liberación y el despliegue en DevOps, ágiles y automatizados, se benefician de la precisión de seguimiento de ISO, mientras que la operación y el monitoreo en DevOps proporcionan datos en tiempo real que alimentan de vuelta al sistema de control del ISO, permitiendo así una mejora y adaptación continuas dentro de un marco de trabajo controlado y sistemático (ISO/IEC, 2011) Tabla 5.

Tabla 5 Tabla de Correspondencia de la actividad GP Evaluación y Control del Proyecto respecto a DevOps 

Cierre del Proyecto

El cierre del proyecto de acuerdo al ISO/IEC 29110, implica la conclusión formal y la reflexión sobre el proyecto, se entrelaza con DevOps a través de un enfoque de mejora continua: mientras que ISO promueve la documentación final y la revisión de los logros en comparación con los objetivos iniciales, DevOps ve el 'cierre' como una fase transitoria hacia el próximo ciclo de vida, donde la retroalimentación obtenida en etapas de planificación, codificación, construcción, pruebas, liberación, despliegue, operación y monitoreo informa las futuras iteraciones, garantizando que cada 'fin' es el precursor de nuevas mejoras y desarrollos en el flujo de trabajo del software (ISO/IEC, 2011) Tabla 6.

Tabla 6 Tabla de Correspondencia de la actividad GP Cierre del Proyecto respecto a DevOps 

Inicio de la Implementación del Software

El inicio de la implementación del software en el marco del ISO/IEC 29110 sienta las bases metodológicas que se integran con las prácticas de DevOps, iniciando con una planificación robusta que define los requisitos y el alcance del proyecto. Esta planificación inicial se complementa con la rápida iteración de DevOps en codificación y construcción, facilitando una transición suave a las pruebas y asegurando que la liberación y el despliegue sean ágiles y estén alineados con los objetivos iniciales. La operación y el monitoreo de DevOps, comenzando ya en las primeras fases del proyecto, permite una retroalimentación temprana y una adaptación continua, lo que refuerza el enfoque de ISO para un inicio de proyecto bien definido y controlado (ISO/IEC, 2011) Tabla 7.

Tabla 7 Tabla de Correspondencia de la actividad IS Inicio de la Implementación de Software respecto a DevOps 

Análisis de los requisitos de software

El análisis de requisitos de software del ISO/IEC 29110 establece una alineación con DevOps iniciando con la planificación detallada, que aborda los requisitos funcionales y no funcionales esenciales para la codificación y construcción del software. Esta fase crítica en ISO se refleja en DevOps a través de prácticas como la infraestructura como código y la automatización de pruebas, que validan continuamente los requisitos a medida que el software evoluciona. Además, las actividades de liberación, despliegue, operación y monitoreo en DevOps están guiadas por los criterios establecidos durante el análisis de requisitos, asegurando que el software desarrollado cumpla con las expectativas del cliente y se mantenga eficiente y confiable en entornos de producción reales (ISO/IEC, 2011) Tabla 8.

Tabla 8 Tabla de Correspondencia de la actividad IS Análisis de los Requisitos de Software respecto a DevOps 

Arquitectura y diseño detallado de software.

La arquitectura y el diseño detallado de software en ISO/IEC 29110 proporcionan una hoja de ruta técnica que se alinea con DevOps, asegurando que cada actividad, desde la planificación inicial hasta la codificación y la construcción, se ejecuta con una comprensión clara de la infraestructura y los patrones de diseño del sistema. Este enfoque meticuloso permite que las prácticas de integración continua y entrega continua de DevOps se implementen eficazmente, garantizando que las pruebas, la liberación y el despliegue se realicen de manera cohesiva y en consonancia con la arquitectura prevista. Asimismo, facilita la operación y el monitoreo post-despliegue, posibilitando el monitoreo y la gestión proactiva del rendimiento basadas en la arquitectura y el diseño previamente definidos, lo que da lugar a sistemas estables y escalables en producción (ISO/IEC, 2011) Tabla 9.

Tabla 9 Tabla de Correspondencia de la actividad IS de la Arquitectura y Diseño detallado de software respecto a DevOps 

Construcción del software

En el ISO/IEC 29110, la construcción del software se enfoca en transformar los requisitos y el diseño en un producto operativo, resuénalo que es acorde lo cual resuena con la filosofía de DevOps al adoptar prácticas de automatización y herramientas de integración continua que facilitan la transición desde la codificación hasta la construcción y pruebas. Esta etapa de construcción se enriquece con un flujo de trabajo de DevOps que integra la liberación y el despliegue continuos, asegurando que el producto construido sea desplegado de manera eficiente en la operación. El monitoreo constante en DevOps, alimentado por la fase de construcción, permite ajustes rápidos y mejora iterativa, garantizando que el software no solo se construye para cumplir con las especificaciones iniciales, sino que también evoluciona en respuesta a los comentarios y necesidades operativas reales (ISO/IEC, 2011) Tabla 10.

Tabla 10 Tabla de Correspondencia de la actividad IS Construcción del Software respecto a DevOps 

Integración y pruebas de software

La integración y pruebas de software según el ISO/IEC 29110 se alinean estrechamente con las prácticas DevOps que priorizan la automatización de las pruebas y la integración continua para validar la calidad y funcionalidad del software a lo largo de su desarrollo. En este entorno, cada incremento de software se somete a pruebas tras su construcción, integrando cambios pequeños y frecuentes que se verifican automáticamente para garantizar su adecuación antes de avanzar a la siguiente etapa. Esta práctica no solo refuerza la confianza en la estabilidad del software, sino que también permite una liberación y despliegue más ágiles, facilitando un ciclo de retroalimentación continuo que alimenta directamente la operación y el monitoreo del software en ambientes productivos. Este enfoque integrado y fluido permite a los equipos de DevOps ajustar rápidamente las estrategias y procesos en respuesta a cualquier desafío o necesidad emergente, optimizando el rendimiento y la fiabilidad del software en tiempo real (ISO/IEC, 2011) Tabla 11.

Tabla 11 Tabla de Correspondencia de la actividad IS Integración y pruebas de software respecto a DevOps 

Entrega del producto

La entrega del producto en el estándar ISO/IEC 29110 se centra en asegurar que el software cumpla con los criterios de aceptación establecidos y sea entregado adecuadamente al cliente, lo cual se complementa armónicamente con las actividades de DevOps, que buscan optimizar y automatizar los procesos de liberación y despliegue. En DevOps, la entrega continua permite que cada cambio validado a través de la construcción y pruebas sea rápidamente liberado y desplegado en entornos de producción, garantizando una operación eficiente y un monitoreo constante para identificar y resolver cualquier problema post-despliegue de manera inmediata. Esta integración resulta en un flujo de trabajo más ágil y eficiente, donde la entrega del producto no solo cumple con las expectativas del cliente, sino que también se adapta de manera continua a las mejoras y necesidades emergentes, asegurando un alto nivel de satisfacción y rendimiento del producto final (ISO/IEC, 2011) Tabla 12.

Tabla 12 Tabla de Correspondencia de la actividad IS Entrega del produucto respecto a DevOps 

5. Resultados

La exploración de las prácticas de DevOps respaldada por la revisión de la literatura mostró una comprensión ampliada del proceso DevOps y su aplicación práctica. Se identificaron y documentaron las prácticas clave dentro de las actividades DevOps que promueven una integración y entrega continuas, así como la colaboración entre equipos de desarrollo y operaciones, destacando la compatibilidad con las tareas del perfil básico del estándar ISO/IEC 29110.

Mediante una matriz de correspondencia, se logró el análisis de cómo cada tarea del estándar ISO/IEC 29110 se relaciona con las actividades de DevOps. Este mapeo detallado mostró puntos en común, además de identificar oportunidades de mejora y adaptación de las tareas del estándar 29110 en el contexto de las prácticas de DevOps.

El estudio encontró que la implementación de DevOps dentro del marco de la ISO/IEC 29110 puede potenciar significativamente la eficiencia operativa, reducir el tiempo de comercialización y mejorar la respuesta a los problemas de una mejor forma. La evaluación de las prácticas de DevOps en el entorno del estándar 29110 sugiere que, mientras se mantiene la conformidad con el estándar, es posible adoptar un enfoque más flexible y adaptativo, que resulta en una mejora continua y en la entrega de un software que satisface las necesidades emergentes del mercado de una manera más eficaz.

Los hallazgos pueden justificar la adopción de DevOps como un complemento para mejorar la eficiencia, la calidad y la respuesta a los cambios en el entorno de desarrollo y operaciones de software, dando así un paso adelante en la evolución de las mejores prácticas de la ingeniería de software.

6. Conclusiones y trabajo futuro

La importancia de la presente investigación radica en el valor que tiene para las organizaciones comprender cómo las prácticas modernas de DevOps pueden ser incorporadas en marcos de trabajo estandarizados (ISO/IEC 29110 perfil básico). Al realizar un análisis exhaustivo que relaciona directamente las actividades de DevOps con un estándar de calidad reconocido como el ISO/IEC 29110, la investigación busca proporcionar una guía práctica para la implementación efectiva de DevOps en organizaciones que desean adherirse a o ya siguen este estándar.

El presente estudio ha establecido que DevOps y el estándar ISO/IEC 29110 pueden coexistir de manera complementaria, ofreciendo un marco de trabajo robusto que aprovecha las fortalezas de ambos enfoques. Se ha identificado que, a pesar de sus diferencias, la agilidad y la automatización de DevOps se alinean con los procedimientos sistemáticos de la ISO/IEC 29110, contribuyendo a una mejor calidad y eficiencia en el desarrollo de software. Los hallazgos sugieren que la adopción de DevOps en organizaciones que siguen la ISO/IEC 29110 puede conducir a una mejora significativa en la entrega de software, con la adaptabilidad necesaria para responder a las demandas del mercado actual. La integración de DevOps con el estándar ISO/IEC 29110 ha demostrado ser especialmente beneficiosa para las entidades muy pequeñas, ya que facilita un enfoque escalable y flexible sin comprometer la calidad y la gobernanza del proyecto.

Como trabajo futuro, se está desarrollando una guía clara que ayude a la adopción de prácticas y facilite la implementación. Además, se considera relevante resaltar a partir de los resultados de este estudio se identifican como futuras líneas de investigación, estudios enfocados en estrategias específicas y estudios de caso detallados sobre la implementación de DevOps en organizaciones que están reguladas por el ISO/IEC 29110. Esto podría incluir el desarrollo de un conjunto de mejores prácticas y herramientas específicas para facilitar la transición y adaptación de los procesos ISO a entornos DevOps. Además, sería valioso explorar el impacto a largo plazo de esta integración en la calidad del software y en la satisfacción del cliente, así como en la capacidad de las organizaciones para mantenerse competitivas y ágiles en un panorama tecnológico en constante evolución. Finalmente, otra perspectiva podría realizar un análisis en el cual se contrasten no solo las sinergias sino las discrepancias entre ambos enfoques lo cual serviría de guía para las empresas para lograr complementar y potenciar la aplicación de ambos enfoques.

Referencias

Almeida, F., Simões, J., Lopes, S. (2022). Exploring the benefits of combining devops and agile. [ Links ]

Bolívar, H., Valero, M.-F., Lopez, E., & Rozo, R. (2023). Integration between HL7/CDA and ISO/IEC 29110 from a Systematic Review. 2023 Congreso Internacional de Innovación y Tendencias en Ingeniería (CONIITI), 1-6. https://doi.org/10.1109/CONIITI61170.2023.10324198 [ Links ]

Bucena, I., & Kirikova, M. (2017). Simplifying the DevOps Adoption Process. [ Links ]

Chen, L. (2017). Continuous Delivery: Overcoming adoption challenges. Journal of Systems and Software, 128, 72-86. https://doi.org/10.1016/j.jss.2017.02.013 [ Links ]

Dominguez-Acosta, M. F., & Garcia-Mireles, G. A. (2021). Identificación de Actividades Relacionadas con la Calidad de Software en Entornos de DevOps. 10th International Conference on Software Process Improvement, CIMPS 2021, 84-89. https://investigadores.unison.mx/es/publications/identificaci%C3%B3n-de-actividades-relacionadas-con-la-calidad-de-softLinks ]

Erich, F., Amrit, C., Daneva, M. (2014). Report: DevOps Literature Review. University of Twente. [ Links ]

Erich, F. M. A., Amrit, C., & Daneva, M. (2017). A qualitative study of DevOps usage in practice. Journal of Software: Evolution and Process, 29(6), Article 6. https://doi.org/10.1002/smr.1885 [ Links ]

França, B. B. N., Jeronimo, H., & Travassos, G. H. (2016). Characterizing DevOps by hearing multiple voices. In Proceedings of the XXX Brazilian Symposium on Software Engineering (pp. 53-62). [ Links ]

Galvan-Cruz, S., Mora, M., Laporte, C. Y., & Duran-Limon, H. (2021). Reconciliation of scrum and the project management process of the ISO/IEC 29110 standard-Entry profile-An experimental evaluation through usability measures. Software Quality Journal, 29(2), 239-273. https://doi.org/10.1007/s11219-021-09552-3 [ Links ]

Ghantous, G. B., & Gill, A. (2017). DevOps: Concepts, Practices, Tools, Benefits and Challenges. [ Links ]

Ghofrani, J., & Bozorgmehr, A. (2019). Migration to Microservices: Barriers and Solutions. En H. Florez, M. Leon, J. M. Diaz-Nafria, & S. Belli (Eds.), Applied Informatics (Vol. 1051, pp. 269-281). Springer International Publishing. https://doi.org/10.1007/978-3-030-32475-9_20 [ Links ]

Guerrero, J., Zúñiga, K., Certuche, C., & Pardo, C. (2020). A systematic mapping study about DevOps. Journal de Ciencia e Ingeniería, 12(1), Article 1. https://doi.org/10.46571/JCI.2020.1.5 [ Links ]

ISO Calidad 2000. (2012). Guía para definir Procesos. ISO Calidad 2000. https://isocalidad2000.com/2012/12/28/guia-para-definir-procesos/#:~:text=Resumiendo%2C%20tenemos%20los%20siguientes%20conceptos,las%20necesidades%20de%20los%20clientesLinks ]

ISO/IEC. (2011). ISO/IEC TR 29110-5-1-2 Management and engineering guide: Generic profile group: Basic profile. [ Links ]

Jabbari, R., bin Ali, N., Petersen, K., & Tanveer, B. (2016). What is DevOps? A systematic mapping study on definitions and practices. Proceedings of the Scientific Workshop XP2016, 1-11. [ Links ]

Kamuto, M. B., & Langerman, J. J. (2017). Factors inhibiting the adoption of DevOps in large organisations: South African context. 2017 2nd IEEE International Conference on Recent Trends in Electronics, Information & Communication Technology (RTEICT), 48-51. https://doi.org/10.1109/RTEICT.2017.8256556 [ Links ]

Khan, M. S., Khan, A. W., Khan, F., Khan, M. A., & Whangbo, T. K. (2022). Critical Challenges to Adopt DevOps Culture in Software Organizations: A Systematic Review. IEEE Access, 10, 14339-14349. https://doi.org/10.1109/ACCESS.2022.3145970 [ Links ]

Lawrence Pfleeger, S. (2002). Ingeniería de software. Teoría y práctica. Ed. Prentice Hall. http://dspace.scz.ucb.edu.bo/dspace/bitstream/123456789/599/3/3464.pdfLinks ]

Lwakatare, L. E., Kuvaja, P., Oivo, M., Mäkinen, S., & Lassenius, C. (2016). DevOps adoption benefits and challenges in practice: A case study. In Product-Focused Software Process Improvement (pp. 590-597). Springer, Cham. [ Links ]

López Peña, M. A. (2021). DevOps Aplicado a Sistemas IoT: Definición e Implementación de Procesos Continuos de Monitorización y Retroalimentación (PhD Thesis, ETSI). https://oa.upm.es/id/eprint/68043Links ]

Mousaei, M., Gandomani, T.J. (2020). DevOps Approach and Lean Thinking in Agile Software Development: Opportunities, Advantages, and Challenges. Journal of Soft Engineering and Intelligent Systems. [ Links ]

Moreno-Campos, E., Sanchez-Gordón, ML., Colomo-Palacios, R., de Amescua Seco, A. (2014). Towards Measuring the Impact of the ISO/IEC 29110 Standard: A Systematic Review. In: Barafort, B., O’Connor, R.V., Poth, A., Messnarz, R. (eds) Systems, Software and Services Process Improvement. EuroSPI 2014. Communications in Computer and Information Science, vol 425. Springer. https://doi.org/10.1007/978-3-662-43896-1_1. [ Links ]

Muñoz, M. (2022). Boosting the Competitiveness of Organizations With the Use of Software Engineering. En Research Anthology on Agile Software, Software Development, and Testing (pp. 1838-1856). IGI Global. https://www.igi-global.com/chapter/boosting-the-competitiveness-of-organizations-with-the-use-of-software-engineering/294547Links ]

O'Connor, R.V., & Laporte, C.Y. (2017). The evolution of the ISO/IEC 29110 set of standards and guides. International Journal of Information Technologies and Systems Approach. [ Links ]

Perera, P., Silva, R., & Perera, I. (2017). Improve software quality through practicing DevOps. 2018-January, 13-18. Scopus. https://doi.org/10.1109/ICTER.2017.8257807 [ Links ]

Redondo, A. M. F., & Cárdenas, F. de J. N. (2022). DevOps: Un vistazo rápido. Ciencia Huasteca Boletín Científico de la Escuela Superior de Huejutla, 10(19), 35-40. [ Links ]

Sharma, S., & Coyne, B. (2015). DevOps para Dummies® 2o Edición Limitada IBM. [ Links ]

Ståhl, D., & Bosch, J. (2017). Continuous practices and DevOps: Beyond the buzz, what does it all mean? In 2017 43rd Euromicro Conference on Software Engineering and Advanced Applications (SEAA) (pp. 424-429). IEEE. [ Links ]

Solís, I. S., & Tinoco, E. E. C. (2015). Compendio de Ingenieria de Software. Iván Soria Solís. https://books.google.com/books?hl=es&lr=&id=3dZ5CwAAQBAJ&oi=fnd&pg=PP1&dq=somerville+en+ingenieria+de+software&ots=jQm-sucOwn&sig=u8-iawl3jeW72gJml7XJ1daP1HELinks ]

Takeuchi, M., Kohtake, N., Shirasaka, S., Koishi, Y., & Shioya, K. (2014). Report on an assessment experience based on ISO/IEC 29110. Journal of Software: Evolution and Process, 26. [ Links ]

Recibido: 02 de Noviembre de 2023; Aprobado: 10 de Febrero de 2024

Creative Commons License Este es un artículo publicado en acceso abierto bajo una licencia Creative Commons