Table of Contents
Fetching ...

Digital Twins for Software Engineering Processes

Robin Kimmel, Judith Michael, Andreas Wortmann, Jingxi Zhang

TL;DR

This paper advocates digital twins for software engineering processes to address the shortage of skilled engineers by creating a holistic, data-driven twin of DevOps activities. It adopts the 5D DT framework to describe data sources, models, and services that connect to the software process to observe, reason, and suggest changes, extending beyond IDEs to the full lifecycle. It provides example applications focused on architecture conformance analysis and sprint planning, and outlines a roadmap including prototypes, pilot studies, and empirical evaluation. The practical impact is to empower both software engineers and domain experts with automated insights and programmable improvements, improving quality and productivity in software development.

Abstract

Digital twins promise a better understanding and use of complex systems. To this end, they represent these systems at their runtime and may interact with them to control their processes. Software engineering is a wicked challenge in which stakeholders from many domains collaborate to produce software artifacts together. In the presence of skilled software engineer shortage, our vision is to leverage DTs as means for better rep- resenting, understanding, and optimizing software engineering processes to (i) enable software experts making the best use of their time and (ii) support domain experts in producing high-quality software. This paper outlines why this would be beneficial, what such a digital twin could look like, and what is missing for realizing and deploying software engineering digital twins.

Digital Twins for Software Engineering Processes

TL;DR

This paper advocates digital twins for software engineering processes to address the shortage of skilled engineers by creating a holistic, data-driven twin of DevOps activities. It adopts the 5D DT framework to describe data sources, models, and services that connect to the software process to observe, reason, and suggest changes, extending beyond IDEs to the full lifecycle. It provides example applications focused on architecture conformance analysis and sprint planning, and outlines a roadmap including prototypes, pilot studies, and empirical evaluation. The practical impact is to empower both software engineers and domain experts with automated insights and programmable improvements, improving quality and productivity in software development.

Abstract

Digital twins promise a better understanding and use of complex systems. To this end, they represent these systems at their runtime and may interact with them to control their processes. Software engineering is a wicked challenge in which stakeholders from many domains collaborate to produce software artifacts together. In the presence of skilled software engineer shortage, our vision is to leverage DTs as means for better rep- resenting, understanding, and optimizing software engineering processes to (i) enable software experts making the best use of their time and (ii) support domain experts in producing high-quality software. This paper outlines why this would be beneficial, what such a digital twin could look like, and what is missing for realizing and deploying software engineering digital twins.

Paper Structure

This paper contains 7 sections, 2 figures, 1 table.

Figures (2)

  • Figure 1: 5D DTs applied to software processes tao2018digital
  • Figure 2: The eight phases of DevOps