Documenting and implementing DevOps good practices with test automation and continuous deployment tools through software refinement

Manuel Alejandro Pastrana Pardo, Hugo Armando Ordoñez Erazo, Carlos Alberto Cobos Lozada

Abstract


The accelerated pace of life of companies in Colombia and the world, entails the need to obtain software developments with the highest quality, in the shortest possible time and with minimal reprocessing after it is put into production. Therefore, the use of good software development practices and their automation through tools is no longer a luxury for development teams today, but part of their way of working. Unfortunately, in Colombia many of these helps and forms of work are not widely used. This paper presents the documentation and implementation of preventive quality tools and good practices for software development that allow code versioning, continuous integration, automation of functional tests, static code analysis and continuous deployment.
Objective: Present the good practices implemented in the Smart Campus Ecosystem case study for software development.
Methodology or method: Good practices for software development based on XP and DevOps are reviewed. A set of tools is selected for implementation that has a direct impact on the quality of software development. These tools are used in the UNIAJC Smart campus ecosystem case study. The results of the implementation are documented in this article.
Results: The preventive quality model is exposed, put on test and the results are documented.
Conclusions: The preventive quality model helps to increase the results of quality assurance through the set of tools that provide development teams with key information for refinement and refactoring of source code within development runtime and no later than this stage.

Keywords


DevOps; SQA; Software Quality Assurance; Smart Campus; Software Engineering

Full Text:

PDF

References


Johnson James, “CHAOS Report: Decision Latency Theory: It Is All About the Interval - James Johnson - Google Libros,” 2018. [Online]. Available: https://books.google.com.co/books?hl=es&lr=&id=WV1QDwAAQBAJ&oi=fnd&pg=PA1&dq=CHAOS+Report+2018&ots=9_CUVJxL_j&sig=-o6C1KfyFn2rDEKyUy-NgIQ72Mw#v=onepage&q=CHAOS Report 2018&f=false. [Accessed: 03-Jun-2021].

K. Beck, Extreme Programming Explained: Embrace Change, no. c. 1999.

J. Shropshire, P. Menard, and B. Sweeney, “Uncertainty, Personality, and Attitudes toward DevOps,” AMCIS 2017 Proc., Aug. 2017.

M. Pastrana, H. Ordoñez, A. Rojas, and A. Ordoñez, “Ensuring Compliance with Sprint Requirements in SCRUM: Preventive Quality Assurance in SCRUM,” in Advances in Intelligent Systems and Computing, 2019, vol. 924, pp. 33–45.

B. B. Nicolau de França, H. Jeronimo, and G. H. Travassos, “Characterizing DevOps by hearing multiple voices,” in ACM International Conference Proceeding Series, 2016, pp. 53–62.

DevOps Agile Skills Association, “6 Principles of DevOps – DevOps Agile Skills Association (DASA),” 2019. [Online]. Available: https://www.devopsagileskills.org/dasa-devops-principles/. [Accessed: 02-Jun-2021].

L. Leite, C. Rocha, F. Kon, D. Milojicic, and P. Meirelles, “A survey of DevOps concepts and challenges,” ACM Computing Surveys, vol. 52, no. 6. Association for Computing Machinery, 01-Nov-2019.

M. Muñoz and M. Negrete, “Reinforcing DevOps Generic Process with a Guidance Based on the Basic Profile of ISO/IEC 29110,” in Advances in Intelligent Systems and Computing, Springer., Springer, Ed. Springer Cham, 2020, pp. 65–79.

V. Mohan, L. Ben Othmane, and A. Kres, “BP: Security concerns and best practices for automation of software deployment processes: An industrial case study,” in Proceedings - 2018 IEEE Cybersecurity Development Conference, SecDev 2018, 2018, pp. 21–28.

S. Vadapalli, DevOps: Continuous Delivery, Integration, and Deployment with DevOps Dive into the core DevOps strategies. 2018.

F. M. A. Erich, C. Amrit, and M. Daneva, “A qualitative study of DevOps usage in practice,” in Journal of Software: Evolution and Process, 2017, vol. 29, no. 6.

G. Rong, Z. Jin, H. Zhang, Y. Zhang, W. Ye, and D. Shao, “DevDocOps: Towards Automated Documentation for DevOps,” in Proceedings - 2019 IEEE/ACM 41st International Conference on Software Engineering: Software Engineering in Practice, ICSE-SEIP 2019, 2019, pp. 243–252.

PEN Vol. 9, No. 3, March 2021, pp.10-13

Chacon Scott and Straub Ben, “Git - Book,” Apress, 2020. [Online]. Available: https://git-scm.com/book/es/v2. [Accessed: 02-Jun-2021].

SonarQube Official Website, “SonarQube Documentation | SonarQube Docs,” 2020. [Online]. Available: https://docs.sonarqube.org/latest/. [Accessed: 02-Jun-2021].

Jenkins Official Website, “Jenkins User Documentation,” 2020. [Online]. Available: https://www.jenkins.io/doc/. [Accessed: 02-Jun-2021].

Katalon Official Website, “Welcome to Katalon Docs | Katalon Docs,” 2019. [Online]. Available: https://docs.katalon.com/katalon-studio/docs/index.html#products. [Accessed: 02-Jun-2021].

PostgreSQL Official Website, “PostgreSQL: About,” 2020. [Online]. Available: https://www.postgresql.org/about/. [Accessed: 02-Jun-2021].

P. Rodríguez et al., “Continuous deployment of software intensive products and services: A systematic mapping study,” J. Syst. Softw., vol. 123, pp. 263–291, Jan. 2017.

L. E. Lwakatare et al., “DevOps in practice: A multiple case study of five companies,” Inf. Softw. Technol., vol. 114, no. June, pp. 217–230, 2019.




DOI: http://dx.doi.org/10.21533/pen.v9i4.2239

Refbacks

  • There are currently no refbacks.


Copyright (c) 2021 Authors

Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 International License.

ISSN: 2303-4521

Digital Object Identifier DOI: 10.21533/pen

Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 International License