skip to main content
10.1145/3357766.3359537acmconferencesArticle/Chapter ViewAbstractPublication PagessplashConference Proceedingsconference-collections
research-article

Domain-specific model differencing in visual concrete syntax

Published: 20 October 2019 Publication History

Abstract

Like any other software artifact, models evolve and need to be versioned. In the last few years, dedicated support for model versioning has been proposed to improve the default text-based versioning that version control systems offer. However, there is still the need to comprehend model differences in terms of the semantics of the modeling language. For this purpose, we propose a comprehensive approach that considers both abstract and concrete syntax, to express model differences in terms of the domain-specific language (DSL) used and define domain-specific semantics for specific difference patterns. The approach is based on the automatic extension of the DSL to enable the representation of changes, on the definition of rules to capture recurrent domain-specific difference patterns, and on the automatic adaptation of the graphical concrete syntax to visualize the differences. We present a prototype tool support and discuss its application on versioned models created by third parties.

Supplementary Material

MP4 File (3357766.3359537.mp4)
Video Presentation

References

[1]
AMOR. last accessed February 2019. Adaptable model versioning. http://www.modelversioning.org/
[2]
F. Basciani, J. Di Rocco, D. Di Ruscio, A. Di Salle, L. Iovino, and A. Pierantonio. 2014. MDEForge: an extensible web-based modeling platform. CEUR-WS, 66–75.
[3]
P. Brosch, G. Kappel, P. Langer, M. Seidl, K. Wieland, and M. Wimmer. 2012. An introduction to model versioning. In SFM (LNCS), Vol. 7320. Springer, 336–398.
[4]
P. Brosch, M. Seidl, K. Wieland, and M. Wimmer. 2009. We can work it out: Collaborative conflict resolution in model versioning. In European Conference on Computer-Supported Cooperative Work. Springer, 207– 214.
[5]
P. Brosch, M. Seidl, M. Wimmer, and G. Kappel. 2012. Conflict visualization for evolving UML models. Journal of Object Technology 11, 3 (2012), 2:1–30.
[6]
C. Brun and A. Pierantonio. 2008. Model differences in the Eclipse Modelling Framework. UPGRADE, The European Journal for the Informatics Professional 9, 2 (2008), 29–34.
[7]
CDO. last accessed February 2019. www.eclipse.org/cdo
[8]
A. Cicchetti, D. Di Ruscio, and A. Pierantonio. 2007. A metamodel independent approach to difference representation. Journal of Object Technology 6, 9 (2007), 165–185.
[9]
EMF Compare. last accessed February 2019. https://www.eclipse.org/ emf/compare/
[10]
J. de Lara, R. Bardohl, H. Ehrig, K. Ehrig, U. Prange, and G. Taentzer. 2007. Attributed graph transformation with node type inheritance. Theor. Comput. Sci. 376, 3 (2007), 139–163.
[11]
H. Ehrig, K. Ehrig, U. Prange, and G. Taentzer. 2006. Fundamentals of Algebraic Graph Transformation. Springer.
[12]
EMFStore. last accessed February 2019. www.eclipse.org/emfstore
[13]
J. García, O. Diaz, and M. Azanza. 2013. Model transformation coevolution: A semi-automatic approach. In SLE (LNCS), Vol. 7745. Springer, 144–163.
[14]
M. Gleicher. 2018. Considerations for visualizing comparison. Transactions on Visualization and Computer Graphics 24, 1 (2018), 413–423.
[15]
GMF. 2019. https://www.eclipse.org/gmf-tooling/ . (last accessed in June 2019).
[16]
T. Kehrer, U. Kelter, and G. Taentzer. 2011. A rule-based approach to the semantic lifting of model differences in the context of model versioning. In Automated Software Engineering. IEEE Computer Society, 163–172.
[17]
S. Kelly, K. Lyytinen, and M. Rossi. 1996. MetaEdit+ A fully configurable multi-user and multi-tool CASE and CAME environment. In Conference on Advanced Information Systems Engineering (LNCS), Vol. 1080. Springer, 1–21.
[18]
S. Kelly and J-K. Tolvanen. 2008. Domain-Specific Modeling - Enabling Full Code Generation. Wiley.
[19]
D. Kolovos, D. Di Ruscio, A. Pierantonio, and R. Paige. 2009. Different models for model matching: An analysis of approaches to support model differencing. In Comparison and Versioning of Software Models. IEEE, 1–6.
[20]
T. Kühne, G. Mezei, E. Syriani, H. Vangheluwe, and M. Wimmer. 2009. Explicit transformation modeling. In MODELS 2009 Workshops (LNCS), Vol. 6002. Springer, 240–255.
[21]
P. Langer, M. Wimmer, J. Gray, G. Kappel, and A. Vallecillo. 2012. Language-specific model versioning based on signifiers. Journal of Object Technology 11, 3 (2012), 4: 1–34.
[22]
Y. Lin, J. Gray, and F. Jouault. 2007. DSMDiff: a differentiation tool for domain-specific models. European Journal of Information Systems 16, 4 (2007), 349–361.
[23]
S. Maoz and J. O. Ringert. 2018. A framework for relating syntactic and semantic model differences. Software & System Modeling 17, 3 (2018), 753–777.
[24]
S. Maoz, J. O. Ringert, and B. Rumpe. 2011. A manifesto for semantic model differencing. In MODELS 2010 Workshops (LNCS), Vol. 6627. Springer, 194–203.
[25]
A. Mehra, J. C. Grundy, and J. G. Hosking. 2005. A generic approach to supporting diagram differencing and merging for collaborative design. In Automated Software Engineering. ACM, 204–213.
[26]
ModelCVS. last accessed February 2019. www.modelcvs.org
[27]
OCL. 2014. http://www.omg.org/spec/OCL/ .
[28]
D. Ohst, M. Welle, and U. Kelter. 2003. Differences between versions of UML diagrams. In ESEC/FSE. ACM, 227–236.
[29]
R. F. Paige, N. D. Matragkas, and L. M. Rose. 2016. Evolving models in Model-Driven Engineering: State-of-the-art and future challenges. Journal of Systems and Software 111 (2016), 272–280.
[30]
A. Schipper, H. Fuhrmann, and R. von Hanxleden. 2009. Visual comparison of graphical models. In International Conference on Engineering of Complex Computer Systems. IEEE, 335–340.
[31]
D. C. Schmidt. 2006. Guest editor’s introduction: Model-driven engineering. Computer 39, 2 (2006), 25–31.
[32]
F. Schwägerl, S. Uhrig, and B. Westfechtel. 2015. A graph-based algorithm for three-way merging of ordered collections in EMF models. Science of Computer Programming 113 (2015), 51–81.
[33]
Sirius. last accessed February 2019. www.eclipse.org/sirius
[34]
M. Stephan and J. R. Cordy. 2013. A survey of model comparison approaches and applications. In MODELSWARD. SciTePress, 265–277.
[35]
E. Syriani and H. Vangheluwe. 2013. A modular timed graph transformation language for simulation-based design. Software & System Modeling 12, 2 (2013), 387–414.
[36]
E. Syriani, H. Vangheluwe, R. Mannadiar, C. Hansen, S. Van Mierlo, and H. Ergin. 2013. AToMPM: A web-based modeling environment. In Companion proceedings (MODELS’13), Vol. 1115. CEUR-WS.org, 21–25.
[37]
M. Tanhaei, J. Habibi, and S-H. Mirian-Hosseinabadi. 2016. Automating feature model refactoring: A model transformation approach. Information and Softw. Tech. 80 (2016), 138–157.
[38]
M. van den Brand, Z. Protić, and T. Verhoeff. 2010. Generic Tool for Visualization of Model Differences. In International Workshop on Model Comparison in Practice. ACM, 66–75.
[39]
S. D. Vermolen, G. Wachsmuth, and E. Visser. 2012. Reconstructing complex metamodel evolution. In SLE (LNCS), Vol. 6940. Springer, 201–221.
[40]
V. Viyović, M. Maksimović, and B. Perisić. 2014. Sirius: A rapid development of DSM graphical editor. In International Conference on Intelligent Engineering Systems. 233–238.
[41]
S. Wenzel. 2008. Scalable visualization of model differences. In Workshop on Comparison and versioning of software models. ACM, 41–46.

Cited By

View all
  • (2024)Automated Detection of AI-Obfuscated Plagiarism in Modeling AssignmentsProceedings of the 46th International Conference on Software Engineering: Software Engineering Education and Training10.1145/3639474.3640084(297-308)Online publication date: 14-Apr-2024
  • (2023)Collaborative Model-Driven Software Engineering — A systematic survey of practices and needs in industryJournal of Systems and Software10.1016/j.jss.2023.111626199:COnline publication date: 1-May-2023
  • (2023)MoTrans-BDI: Leveraging the Beliefs-Desires-Intentions agent architecture for collaborative model transformation by exampleJournal of Computer Languages10.1016/j.cola.2022.10117474(101174)Online publication date: Jan-2023
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SLE 2019: Proceedings of the 12th ACM SIGPLAN International Conference on Software Language Engineering
October 2019
215 pages
ISBN:9781450369817
DOI:10.1145/3357766
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 20 October 2019

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Graphical concrete syntax
  2. Model differencing
  3. Model-driven Engineering

Qualifiers

  • Research-article

Funding Sources

Conference

SLE '19
Sponsor:

Upcoming Conference

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)24
  • Downloads (Last 6 weeks)2
Reflects downloads up to 20 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Automated Detection of AI-Obfuscated Plagiarism in Modeling AssignmentsProceedings of the 46th International Conference on Software Engineering: Software Engineering Education and Training10.1145/3639474.3640084(297-308)Online publication date: 14-Apr-2024
  • (2023)Collaborative Model-Driven Software Engineering — A systematic survey of practices and needs in industryJournal of Systems and Software10.1016/j.jss.2023.111626199:COnline publication date: 1-May-2023
  • (2023)MoTrans-BDI: Leveraging the Beliefs-Desires-Intentions agent architecture for collaborative model transformation by exampleJournal of Computer Languages10.1016/j.cola.2022.10117474(101174)Online publication date: Jan-2023
  • (2022)Towards Multidisciplinary Delta-Oriented Variability Management in Cyber-Physical Production SystemsProceedings of the 16th International Working Conference on Variability Modelling of Software-Intensive Systems10.1145/3510466.3511273(1-10)Online publication date: 23-Feb-2022
  • (2022)DSMCompare: domain-specific model differencing for graphical domain-specific languagesSoftware and Systems Modeling10.1007/s10270-021-00971-121:5(2067-2096)Online publication date: 7-Jan-2022
  • (2021)Towards Delta-Oriented Variability Modeling for IEC 614992021 26th IEEE International Conference on Emerging Technologies and Factory Automation (ETFA )10.1109/ETFA45728.2021.9613293(1-4)Online publication date: 7-Sep-2021

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media