lnfrastructure-as-code (laC) helps practitioners to automatically provision and manage IT infrastructures at scale, rather than using manual processes. The promise of laC is easy, rapid, secure, reliable, and repeatable IT infrastructure provisioning and management.
In laC design and development many complex architectural design decisions (ADD) are made for the laC system, the underlying infrastructure, and the software system to be delivered. Today foundations to make the (often huge) complexity of laC manageable are missing, leading to low quality, high risks, and high costs/efforts in laC design and development. The project has the objective to develop foundational concepts and methods to address these research gaps by studying the following research questions:
- How can the informal laC established practices documented in the literature today be specified in a rigorous way?
- How can a broad set of laC code and especially architecture smells and patterns be identified and detected in a systematic and automated fashion?
- How can the enormous complexity of large-scale laC architectures be tackled through evidence-based decision making?
To address the research questions, the project aims to reduce complexity and improve quality through rigorous laC ADD compliance specifications, and reduce risks and uncertainties by basing these specifications on established pattems and bad smells. Based on this foundation, it aims to provide means for precise identification of these pattems and bad smells in laC code and architectures, and to provide automatic detection in laC code and architectures. Together these contributions will enable improving quality through precise identification and automatic detection, and the reduction of risks and uncertainties by replacing manual processes, which also reduces the necessary costs and efforts especially in maintaining complex laC architectures. Finally, the project aims to provide novel means for continuously measuring and monitoring laC compliance improvements and degradations, thus enabling evidence-based improvement of the architecture. All project results will be evaluated in various empirical studies.
This research is funded by the Austrian Science Fund (FWF) project “Infrastructure-as-code Architecture Decision Compliance (IAC2),” project number: I 4731.