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.
翻译:在模型驱动开发的背景下,确保演化模型的正确性与一致性至关重要。本文研究了动态符号执行(DSE)在组件-连接器架构语义差异分析中的应用,具体以MontiArc模型为对象。我们对现有的MontiArc-to-Java生成器进行了增强,使其能够在运行时同时收集符号执行与具体执行数据,涵盖变迁条件、访问状态及自动机内部变量。这些数据有助于识别对系统行为提供关键洞察的重要执行轨迹。我们基于运行时效率、最小化性与完备性标准评估了多种执行策略,建立了评估DSE在语义差异分析中适用性的框架。研究结果表明,尽管DSE在分析组件与连接器架构方面展现出潜力,但其可扩展性仍是主要局限,表明需进一步研究以增强其在更大系统中的实用效能。