Smells-sus: Sustainability Smells in IaC
Seif Kosbar, Mohammad Hamdaqa

TL;DR
This paper identifies and analyzes sustainability smells in Terraform IaC scripts, highlighting their prevalence, types, and impact on resource efficiency, with insights from a large dataset and practitioner survey.
Contribution
It defines seven sustainability smells in Terraform IaC scripts and validates their prevalence and characteristics through empirical analysis and practitioner feedback.
Findings
Most prevalent smell is Monolithic Infrastructure at 9.67%.
Prevalence of smells varies across scripts and contexts.
Root causes of smells are complex and multifaceted.
Abstract
Practitioners use Infrastructure as Code (IaC) scripts to efficiently configure IT infrastructures through machine-readable definition files. However, during the development of these scripts, some code patterns or deployment choices may lead to sustainability issues like inefficient resource utilization or redundant provisioning for example. We call this type of patterns sustainability smells. These inefficiencies pose significant environmental and financial challenges, given the growing scale of cloud computing. This research focuses on Terraform, a widely adopted IaC tool. Our study involves defining seven sustainability smells and validating them through a survey with 19 IaC practitioners. We utilized a dataset of 28,327 Terraform scripts from 395 open-source repositories. We performed a detailed qualitative analysis of a randomly sampled 1,860 Terraform scripts from the original…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsComplex Systems and Decision Making
