Toward a catalog of software quality metrics for infrastructure code

Infrastructure-as-code (IaC) is a practice to implement continuous deployment by allowing management and provisioning of infrastructure through the definition of machine-readable files and automation around them, rather than physical hardware configuration or interactive configuration tools. On the...

Celý popis

Uloženo v:
Podrobná bibliografie
Vydáno v:The Journal of systems and software Ročník 170; s. 110726
Hlavní autoři: Dalla Palma, Stefano, Di Nucci, Dario, Palomba, Fabio, Tamburri, Damian Andrew
Médium: Journal Article
Jazyk:angličtina
Vydáno: Elsevier Inc 01.12.2020
Témata:
ISSN:0164-1212
On-line přístup:Získat plný text
Tagy: Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
Popis
Shrnutí:Infrastructure-as-code (IaC) is a practice to implement continuous deployment by allowing management and provisioning of infrastructure through the definition of machine-readable files and automation around them, rather than physical hardware configuration or interactive configuration tools. On the one hand, although IaC represents an ever-increasing widely adopted practice nowadays, still little is known concerning how to best maintain, speedily evolve, and continuously improve the code behind the IaC practice in a measurable fashion. On the other hand, source code measurements are often computed and analyzed to evaluate the different quality aspects of the software developed. However, unlike general-purpose programming languages (GPLs), IaC scripts use domain-specific languages, and metrics used for GPLs may not be applicable for IaC scripts. This article proposes a catalog consisting of 46 metrics to identify IaC properties focusing on Ansible, one of the most popular IaC language to date, and shows how they can be used to analyze IaC scripts. •A novel broad catalog of 46 metrics to understand and improve the quality of IaC.•Rationales of the proposed metrics, with a particular focus on the Ansible ones.•Interpretation for each of the proposed metrics.•Examples of the applicability of the devised metrics in Ansible language.
ISSN:0164-1212
DOI:10.1016/j.jss.2020.110726