Using reactive links to propagate changes across engineering models
-
Published:2024-06-10
Issue:
Volume:
Page:
-
ISSN:1619-1366
-
Container-title:Software and Systems Modeling
-
language:en
-
Short-container-title:Softw Syst Model
Author:
Raţiu Cosmina-CristinaORCID, Assunção Wesley K. G., Herac Edvin, Haas Rainer, Lauwerys Christophe, Egyed Alexander
Abstract
AbstractCollaborative model-driven development is a de facto practice to create software-intensive systems in several domains (e.g., aerospace, automotive, and robotics). However, when multiple engineers work concurrently, keeping all model artifacts synchronized and consistent is difficult. This is even harder when the engineering process relies on a myriad of tools and domains (e.g., mechanic, electronic, and software). Existing work tries to solve this issue from different perspectives, such as using trace links between different artifacts or computing change propagation paths. However, these solutions mainly provide additional information to engineers, still requiring manual work for propagating changes. Yet, most modeling tools are limited regarding the traceability between different domains, while also lacking the efficiency and granularity required during the development of software-intensive systems. Motivated by these limitations, in this work, we present a solution based on what we call “reactive links”, which are highly granular trace links that propagate change between property values across models in different domains, managed in different tools. Differently from traditional “passive links”, reactive links automatically propagate changes when engineers modify models, assuring the synchronization and consistency of the artifacts. The feasibility, performance, and flexibility of our solution were evaluated in three practical scenarios, from two partner organizations. Our solution is able to resolve all cases in which change propagation among models were required. We observed a great improvement of efficiency when compared to the same propagation if done manually. The contribution of this work is to enhance the engineering of software-intensive systems by reducing the burden of manually keeping models synchronized and avoiding inconsistencies that potentially can originate from collaborative engineering in a variety of tool from different domains.
Funder
Österreichische Forschungsförderungsgesellschaft Austrian Science Fund
Publisher
Springer Science and Business Media LLC
Reference114 articles.
1. Abello, J., Ham, F.V., Krishnan, N.: Ask-graphview: a large scale graph visualization system. IEEE Trans. Visual Comput. Graphics 12(5), 669–676 (2006) 2. Adersberger, J., Philippsen, M.: Reflexml: Uml-based architecture-to-code traceability and consistency checking. In: Crnkovic, I., Gruhn, V., Book, M. (eds.) Software Architecture, pp. 344–359. Springer, Heidelberg (2011) 3. Ahmad, N., Wynn, D.C., Clarkson, P.J.: Change impact on a product and its redesign process: a tool for knowledge capture and reuse. Res. Eng. Des. 24(3), 219–244 (2013) 4. Alvaro, P., Bailis, P., Conway, N., Hellerstein, J.M.: Consistency without borders. In: 4th Annual Symposium on Cloud Computing, Association for Computing Machinery, New York, NY, USA, SOCC ’13 (2013) 5. Anquetil, N., Kulesza, U., Mitschke, R., Moreira, A., Royer, J.C., Rummler, A., Sousa, A.: A model-driven traceability framework for software product lines. Softw. Syst. Model. 9, 427–451 (2010)
|
|