Dynamic Symbolic Execution for Semantic Difference Analysis of Component and Connector Architectures

📅 2025-08-01
📈 Citations: 0
Influential: 0
📄 PDF
🤖 AI Summary
Precise characterization and verification of semantic differences during MontiArc architectural evolution in model-driven development remain challenging. Method: This paper proposes a dynamic symbolic execution (DSE)-based framework for architecture-level semantic difference analysis. It enhances the MontiArc-to-Java code generator with runtime monitoring and symbolic tracing to jointly capture transformation conditions, state paths, and internal variable constraints—enabling identification of critical execution paths and fine-grained behavioral difference detection. Contribution/Results: Experiments demonstrate that the approach ensures efficiency, minimality, and completeness of difference analysis on small- to medium-scale systems. Moreover, it exposes scalability bottlenecks of existing DSE techniques in large-scale systems, thereby providing a reusable methodology and empirical foundation for future architectural evolution verification.

Technology Category

Application Category

📝 Abstract
In the context of model-driven development, ensuring the correctness and consistency of evolving models is paramount. This paper investigates the application of Dynamic Symbolic Execution (DSE) for semantic difference analysis of component-and-connector architectures, specifically utilizing MontiArc models. We have enhanced the existing MontiArc-to-Java generator to gather both symbolic and concrete execution data at runtime, encompassing transition conditions, visited states, and internal variables of automata. This data facilitates the identification of significant execution traces that provide critical insights into system behavior. We evaluate various execution strategies based on the criteria of runtime efficiency, minimality, and completeness, establishing a framework for assessing the applicability of DSE in semantic difference analysis. Our findings indicate that while DSE shows promise for analyzing component and connector architectures, scalability remains a primary limitation, suggesting further research is needed to enhance its practical utility in larger systems.
Problem

Research questions and friction points this paper is trying to address.

Analyzing semantic differences in evolving component-and-connector architectures
Enhancing MontiArc-to-Java generator for symbolic and concrete execution data
Evaluating DSE strategies for runtime efficiency and scalability limitations
Innovation

Methods, ideas, or system contributions that make the work stand out.

Dynamic Symbolic Execution for semantic difference analysis
Enhanced MontiArc-to-Java generator with runtime data
Evaluated execution strategies for efficiency and completeness
J
Johanna Grahl
RWTH Aachen University, Germany
Bernhard Rumpe
Bernhard Rumpe
RWTH Aachen University
Software EngineeringModellingDomain Specific LanguagesTools
M
Max Stachon
Software Engineering, RWTH Aachen University, Germany
S
Sebastian Stüber
Software Engineering, RWTH Aachen University, Germany