MODELS 2023
Sun 1 - Fri 6 October 2023 Västerås, Sweden

Models are a useful tool for software design, analysis, and to support the onboarding of new maintainers. However, these benefits are often lost over time, as the system implementation evolves and the original models are not updated. Reverse engineering methods and tools could help to keep models and implementation code in sync; however, automatically reverse-engineered models are typically not abstract and contain extensive information that prevents understanding. Recent advances in AI-based content generation make it likely that we will soon see reverse engineering tools with support for human-grade abstraction. To inform the design and validation of such tools, we need a principled understanding of what manual abstraction is, a question that has received little attention in the literature so far. Towards this goal, in this paper, we present a multiple-case study of model-to-code differences, investigating five substantial open-source software projects retrieved via repository mining. To explore characteristics of model-to-code differences, we, all in all, manually matched 466 classes, 1352 attributes, and 2634 operations from source code to 338 model elements (classes, attributes, operations, and relationships). These mappings precisely capture the differences between a provided class diagram design and implementation codebase. Studying all differences in detail allowed us to derive a taxonomy of difference types and to provide a sorted list of cases corresponding to the identified types of differences. As we discuss, our contributions pave the way for improved reverse engineering methods and tools, new mapping rules for model-to-code consistency checks, and guidelines for avoiding over-abstraction and over-specification during design.

Wed 4 Oct

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

10:30 - 12:00
Session A1: Digital Twins & Real World ModelingTechnical Track at Kongresshall
10:30
22m
Talk
Digital Twins for Cyber-Biophysical Systems: Challenges and Lessons Learned
Technical Track
Istvan David McMaster University, Pascal Archambault , Quentin Wolak , Cong Vinh Vu, , Timothé Lalonde , Kashif Riaz , Eugene Syriani Université de Montréal, Houari Sahraoui Université de Montréal
Pre-print
10:52
22m
Talk
A Model-driven Approach for Knowledge-based Engineering of Industrial Digital Twins
Technical Track
11:15
22m
Talk
Marine Data Observability using KPIs: A MDSE Approach
Technical Track
Keila Lima Western Norway University of Applied Sciences, Ludovico Iovino Gran Sasso Science Institute, L'Aquila, Italy, Maria Teresa Rossi University of Milano Bicocca, Italy, Rogardt Heldal , Tosin Daniel Oyetoyan SINTEF Digital, Martina De Sanctis Gran Sasso Science Institute
11:37
22m
Talk
Manual Abstraction in the Wild: A Multiple-Case Study on OSS Systems
Technical Track
Wenli Zhang , Weixing Zhang Chalmers | University of Gothenburg, Daniel Strüber Chalmers | University of Gothenburg / Radboud University, Regina Hebig Chalmers University of Technology & University of Gothenburg
Pre-print