The 'as Code' Activities: Development Anti-patterns for Infrastructure as Code

05/30/2020
by   Akond Rahman, et al.
0

Context: The 'as code' suffix in infrastructure as code (IaC) refers to applying software engineering activities, such as version control, to maintain IaC scripts. Without the application of these activities, defects that can have serious consequences may be introduced in IaC scripts. A systematic investigation of the development anti-patterns for IaC scripts can guide practitioners in identifying activities to avoid defects in IaC scripts. Development anti-patterns are recurring development activities that relate with defective IaC scripts. Goal: The goal of this paper is to help practitioners improve the quality of infrastructure as code (IaC) scripts by identifying development activities that relate with defective IaC scripts. Methodology: We identify development anti-patterns by adopting a mixed-methods approach, where we apply quantitative analysis with 2,138 open source IaC scripts and conduct a survey with 51 practitioners. Findings: We observe five development activities to be related with defective IaC scripts from our quantitative analysis. We identify five development anti-patterns namely, 'boss is not around', 'many cooks spoil', 'minors are spoiler', 'silos', and 'unfocused contribution'. Conclusion: Our identified development anti-patterns suggest the importance of 'as code' activities in IaC because these activities are related to quality of IaC scripts.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
02/13/2022

Video Game Project Management Anti-patterns

Project Management anti-patterns are well-documented in the software-eng...
research
09/09/2021

Cataloging Dependency Injection Anti-Patterns in Software Systems

Context: Dependency Injection (DI) is a commonly applied mechanism to de...
research
08/12/2019

Microservices Anti-Patterns: A Taxonomy

Several companies are re-architecting their monolithic information syste...
research
09/21/2018

Categorizing Defects in Infrastructure as Code

Infrastructure as code (IaC) scripts are used to automate the maintenanc...
research
04/13/2022

Characterizing and Mitigating Anti-patterns of Alerts in Industrial Cloud Systems

Alerts are crucial for requesting prompt human intervention upon cloud a...
research
09/22/2020

DeepIaC: Deep Learning-Based Linguistic Anti-pattern Detection in IaC

Linguistic anti-patterns are recurring poor practices concerning inconsi...
research
10/21/2018

Source Code Properties of Defective Infrastructure as Code Scripts

Context: In continuous deployment, software and services are rapidly dep...

Please sign up or login with your details

Forgot password? Click here to reset