On the understandability of coupling-related practices in infrastructure-as-code based deployments - Quéval, Pierre-Jean; Hörner, Nicole Elisabeth; Ntentos, Evangelos; Zdun, Uwe (Information and software technology, 2025)
Infrastructure as Code (IaC) empowers software developers and operations teams to automate the deployment and management of IT infrastructure through code. This is particularly valuable for continuously released deployments such as microservices and cloud-based systems. IaC technologies offer flexibility in provisioning and deploying application architectures. However, if the structure is not well-designed, it can lead to severe issues related to coupling aspects. Unfortunately, a lack of comprehensive coupling guidelines for IaC makes ensuring adherence to best practices challenging. Leveraging IaC-based models, metrics, and source code can enhance the comprehension and implementation of coupling measures. Our objective was to investigate how developers understand information derived from system source code and compare it to formal IaC system diagrams and metrics. We conducted a controlled experiment involving a group of participants to evaluate the understandability of IaC system architecture descriptions through source code inspection and formal representations. We hypothesized that providing formal IaC system diagrams and metrics as supplementary materials would improve the understanding of IaC coupling-related practices measured by task correctness. We also expected that these supplementary resources would lead to a significant increase in task duration and that there would be a notable correlation between correctness and duration. The results suggest that including formal IaC system diagrams and metrics as supplementary materials significantly enhances the comprehension of IaC coupling-related practices, as indicated by task correctness. Moreover, providing these formal representations does not significantly prolong task duration, indicating that they do not hinder understanding. A substantial correlation between task correctness and duration is evident when formal IaC system diagrams and metrics are available.