Approach to the Best Practices of Software Development Based on DevOps and SCRUM Used in Very Small Entities
Very small entities in software development have a maximum of 25 employees. Their cash flow and time available for implementing improvements in their processes to enable them to be more competitive are limited, leading them to turn to agile frameworks such as SCRUM to manage the software development...
Main Authors: | , , |
---|---|
Format: | Online |
Language: | eng |
Published: |
Universidad Pedagógica y Tecnológica de Colombia
2022
|
Subjects: | |
Online Access: | https://revistas.uptc.edu.co/index.php/ingenieria/article/view/14828 |
_version_ | 1801706100552105984 |
---|---|
author | Pastrana-Pardo, Manuel-Alejandro Ordoñez-Erazo, Hugo-Armando Cobos-Lozada, Carlos-Alberto |
author_facet | Pastrana-Pardo, Manuel-Alejandro Ordoñez-Erazo, Hugo-Armando Cobos-Lozada, Carlos-Alberto |
author_sort | Pastrana-Pardo, Manuel-Alejandro |
collection | OJS |
description | Very small entities in software development have a maximum of 25 employees. Their cash flow and time available for implementing improvements in their processes to enable them to be more competitive are limited, leading them to turn to agile frameworks such as SCRUM to manage the software development process. However, when they try to adopt these, they find that the documents only suggest changes that can be made and not how to make them. As a result, the trial and error process of discovering which techniques, events and artifacts ought to be implemented is costly and, in some cases, unfeasible. The same applies to other frameworks that can complement SCRUM, such as DevOps, a framework that proposes a rapprochement between the development and operations areas, in which as many tasks as possible are automated, and quality controls are increased to obtain better quality products. This article presents three best practices based on DevOps, its models of use and when these can be used within SCRUM to facilitate its adoption in the smallest companies. A model is presented for the use of versioning, integration, and continuous deployment and the particular moments recommended for implementing these within SCRUM. The best practices most widely reported in the literature for software development based on SCRUM and DevOps were identified. Three were then selected, and a usage model was built for each of them. Then, they were evaluated using a case study, and the results were assessed. The practices were evaluated in three (3) very small entities, obtaining changes in the support cases reported weekly and in the number of successful deployments. The division of the development process into phases reveals that the development and quality phase provides more possibilities for splicing among the set of practices suggested by DevOps in SCRUM. Likewise, the set of suggested practices points to the implementation of controls for quality assurance, providing key information for development team learning and improvement. |
format | Online |
id | oai:oai.revistas.uptc.edu.co:article-14828 |
institution | Revista Facultad de Ingeniería |
language | eng |
publishDate | 2022 |
publisher | Universidad Pedagógica y Tecnológica de Colombia |
record_format | ojs |
spelling | oai:oai.revistas.uptc.edu.co:article-148282022-11-18T19:23:25Z Approach to the Best Practices of Software Development Based on DevOps and SCRUM Used in Very Small Entities Acercamiento a las buenas prácticas para el desarrollo de software basado en DevOps y SCRUM utilizadas en empresas muy pequeñas Pastrana-Pardo, Manuel-Alejandro Ordoñez-Erazo, Hugo-Armando Cobos-Lozada, Carlos-Alberto Software Engineering DevOps SCRUM Software Quality Assurance SQA Ingeniería de software DevOps SCRUM Aseguramiento de la calidad SQA Very small entities in software development have a maximum of 25 employees. Their cash flow and time available for implementing improvements in their processes to enable them to be more competitive are limited, leading them to turn to agile frameworks such as SCRUM to manage the software development process. However, when they try to adopt these, they find that the documents only suggest changes that can be made and not how to make them. As a result, the trial and error process of discovering which techniques, events and artifacts ought to be implemented is costly and, in some cases, unfeasible. The same applies to other frameworks that can complement SCRUM, such as DevOps, a framework that proposes a rapprochement between the development and operations areas, in which as many tasks as possible are automated, and quality controls are increased to obtain better quality products. This article presents three best practices based on DevOps, its models of use and when these can be used within SCRUM to facilitate its adoption in the smallest companies. A model is presented for the use of versioning, integration, and continuous deployment and the particular moments recommended for implementing these within SCRUM. The best practices most widely reported in the literature for software development based on SCRUM and DevOps were identified. Three were then selected, and a usage model was built for each of them. Then, they were evaluated using a case study, and the results were assessed. The practices were evaluated in three (3) very small entities, obtaining changes in the support cases reported weekly and in the number of successful deployments. The division of the development process into phases reveals that the development and quality phase provides more possibilities for splicing among the set of practices suggested by DevOps in SCRUM. Likewise, the set of suggested practices points to the implementation of controls for quality assurance, providing key information for development team learning and improvement. Las empresas muy pequeñas de desarrollo de software poseen un máximo de 25 empleados y tienen un limitado flujo de caja y tiempo para implementar mejoras en sus procesos que les permita ser más competitivos. Esta es una de las razones por las que estas empresas recurren a la implementación de marcos de trabajo ágil como SCRUM para gestionar el proceso de desarrollo de software. Pero cuando inician su adopción, encuentran que los documentos solo sugieren los cambios que se pueden realizar, pero no como hacerlos, tornando el proceso de descubrir cuales técnicas, eventos y artefactos son los que deben implementar en un enfoque de prueba y error costoso y en algunos casos inviable. Lo mismo sucede con otros marcos que pueden ser complementarios a SCRUM como DevOps, que propone un acercamiento entre el área de desarrollo y operaciones, donde se automaticen la mayor cantidad de tareas y se incrementen los controles de calidad para obtener mejores productos. Este artículo expone tres buenas prácticas basadas en DevOps, sus modelos de uso y en qué momentos dentro de SCRUM pueden ser utilizadas para facilitar su adopción en estas empresas. Se tiene como como objetivo exponer un modelo para el uso de versionamiento, integración y despliegue continuos y los momentos recomendados para su implementación dentro de SCRUM. Se identificaron las buenas prácticas más reportadas en la literatura para desarrollo de software basado en SCRUM y DevOps. Se seleccionaron tres de las mejores prácticas y se construyó un modelo de uso para cada una de ellas. Estas prácticas se pusieron a prueba mediante un caso de estudio y se evaluaron los resultados obtenidos. Las prácticas fueron evaluadas en 3 empresas, obteniendo cambios en los casos de soporte reportados semanalmente y en el número de despliegues exitosos. La división del proceso de desarrollo en fases evidencia que la fase que representa mayor posibilidad de empalme entre el conjunto de prácticas sugeridas por DevOps en SCRUM es la de desarrollo y calidad. El conjunto de prácticas sugeridas apunta a la implementación de controles para el aseguramiento de la calidad entregando información clave para el aprendizaje y mejora del equipo de desarrollo. Universidad Pedagógica y Tecnológica de Colombia 2022-09-28 info:eu-repo/semantics/article info:eu-repo/semantics/publishedVersion application/pdf text/xml https://revistas.uptc.edu.co/index.php/ingenieria/article/view/14828 10.19053/01211129.v31.n61.2022.14828 Revista Facultad de Ingeniería; Vol. 31 No. 61 (2022): July-September 2022 (Continuous Publication); e14828 Revista Facultad de Ingeniería; Vol. 31 Núm. 61 (2022): Julio-Septiembre 2022 (Publicación Continua); e14828 2357-5328 0121-1129 eng https://revistas.uptc.edu.co/index.php/ingenieria/article/view/14828/12294 https://revistas.uptc.edu.co/index.php/ingenieria/article/view/14828/12319 Copyright (c) 2022 Manuel-Alejandro Pastrana-Pardo, Hugo-Armando Ordoñez-Erazo, Carlos-Alberto Cobos-Lozada http://creativecommons.org/licenses/by/4.0 |
spellingShingle | Software Engineering DevOps SCRUM Software Quality Assurance SQA Ingeniería de software DevOps SCRUM Aseguramiento de la calidad SQA Pastrana-Pardo, Manuel-Alejandro Ordoñez-Erazo, Hugo-Armando Cobos-Lozada, Carlos-Alberto Approach to the Best Practices of Software Development Based on DevOps and SCRUM Used in Very Small Entities |
title | Approach to the Best Practices of Software Development Based on DevOps and SCRUM Used in Very Small Entities |
title_alt | Acercamiento a las buenas prácticas para el desarrollo de software basado en DevOps y SCRUM utilizadas en empresas muy pequeñas |
title_full | Approach to the Best Practices of Software Development Based on DevOps and SCRUM Used in Very Small Entities |
title_fullStr | Approach to the Best Practices of Software Development Based on DevOps and SCRUM Used in Very Small Entities |
title_full_unstemmed | Approach to the Best Practices of Software Development Based on DevOps and SCRUM Used in Very Small Entities |
title_short | Approach to the Best Practices of Software Development Based on DevOps and SCRUM Used in Very Small Entities |
title_sort | approach to the best practices of software development based on devops and scrum used in very small entities |
topic | Software Engineering DevOps SCRUM Software Quality Assurance SQA Ingeniería de software DevOps SCRUM Aseguramiento de la calidad SQA |
topic_facet | Software Engineering DevOps SCRUM Software Quality Assurance SQA Ingeniería de software DevOps SCRUM Aseguramiento de la calidad SQA |
url | https://revistas.uptc.edu.co/index.php/ingenieria/article/view/14828 |
work_keys_str_mv | AT pastranapardomanuelalejandro approachtothebestpracticesofsoftwaredevelopmentbasedondevopsandscrumusedinverysmallentities AT ordonezerazohugoarmando approachtothebestpracticesofsoftwaredevelopmentbasedondevopsandscrumusedinverysmallentities AT coboslozadacarlosalberto approachtothebestpracticesofsoftwaredevelopmentbasedondevopsandscrumusedinverysmallentities AT pastranapardomanuelalejandro acercamientoalasbuenaspracticasparaeldesarrollodesoftwarebasadoendevopsyscrumutilizadasenempresasmuypequenas AT ordonezerazohugoarmando acercamientoalasbuenaspracticasparaeldesarrollodesoftwarebasadoendevopsyscrumutilizadasenempresasmuypequenas AT coboslozadacarlosalberto acercamientoalasbuenaspracticasparaeldesarrollodesoftwarebasadoendevopsyscrumutilizadasenempresasmuypequenas |