当前位置: X-MOL 学术Inf. Softw. Technol. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
The do’s and don’ts of infrastructure code: A systematic gray literature review
Information and Software Technology ( IF 3.8 ) Pub Date : 2021-04-29 , DOI: 10.1016/j.infsof.2021.106593
Indika Kumara , Martín Garriga , Angel Urbano Romeu , Dario Di Nucci , Damian Andrew Tamburri , Willem-Jan van den Heuvel , Fabio Palomba

Context:

Infrastructure-as-code (IaC) is the DevOps tactic of managing and provisioning software infrastructures through machine-readable definition files, rather than manual hardware configuration or interactive configuration tools.

Objective:

From a maintenance and evolution perspective, the topic has picked the interest of practitioners and academics alike, given the relative scarcity of supporting patterns and practices in the academic literature. At the same time, a considerable amount of gray literature exists on IaC. Thus we aim to characterize IaC and compile a catalog of best and bad practices for widely used IaC languages, all using gray literature materials.

Method:

In this paper, we systematically analyze the industrial gray literature on IaC, such as blog posts, tutorials, white papers using qualitative analysis techniques.

Results:

We proposed a definition for IaC and distilled a broad catalog summarized in a taxonomy consisting of 10 and 4 primary categories for best practices and bad practices, respectively, both language-agnostic and language-specific ones, for three IaC languages, namely Ansible, Puppet, and Chef. The practices reflect implementation issues, design issues, and the violation of/adherence to the essential principles of IaC.

Conclusion:

Our findings reveal critical insights concerning the top languages as well as the best practices adopted by practitioners to address (some of) those challenges. We evidence that the field of development and maintenance IaC is in its infancy and deserves further attention.



中文翻译:

基础设施代码的有无:一篇系统的灰色文献综述

语境:

基础设施即代码(IaC)是通过机器可读的定义文件(而不是手动硬件配置或交互式配置工具)来管理和配置软件基础结构的DevOps策略。

客观的:

从维护和发展的角度来看,鉴于学术文献中支持模式和实践的相对匮乏,该主题引起了从业者和学者的兴趣。同时,IaC上存在大量的灰色文献。因此,我们旨在表征IaC并编制所有广泛使用的IaC语言的最佳实践和不良实践的目录,所有目录均使用灰色文献资料。

方法:

在本文中,我们使用定性分析技术系统地分析了IaC上的工业灰色文献,例如博客文章,教程,白皮书。

结果:

我们为IaC提出了一个定义,并提炼了一个分类法中概括的广泛目录,该分类法包含针对三种IaC语言(分别为Ansible,Puppet)的10种和4种主要类别的最佳实践和不良实践,分别与语言无关和针对特定语言和厨师。这些实践反映了实施问题,设计问题以及对IaC基本原则的违反/坚持。

结论:

我们的发现揭示了有关顶级语言以及从业人员为应对(某些)挑战所采用的最佳实践的关键见解。我们证明IaC的开发和维护领域尚处于起步阶段,值得进一步关注。

更新日期:2021-05-02
down
wechat
bug