Skip to main content
Erschienen in: Software and Systems Modeling 3/2018

12.08.2016 | Special Section Paper

A framework for relating syntactic and semantic model differences

verfasst von: Shahar Maoz, Jan Oliver Ringert

Erschienen in: Software and Systems Modeling | Ausgabe 3/2018

Einloggen

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

Model differencing is an important activity in model-based development processes. Differences need to be detected, analyzed, and understood to evolve systems and explore alternatives. Two distinct approaches have been studied in the literature: syntactic differencing, which compares the concrete or abstract syntax of models, and semantic differencing, which compares models in terms of their meaning. Syntactic differencing identifies change operations that transform the syntactical representation of one model to the syntactical representation of the other. However, it does not explain their impact on the meaning of the model. Semantic model differencing is independent of syntactic changes and presents differences as elements in the semantics of one model but not the other. However, it does not reveal the syntactic changes causing these semantic differences. We define Diffuse, a language-independent, abstract framework, which relates syntactic change operations and semantic difference witnesses. We formalize fundamental relations of necessary, exhibiting, and sufficient sets of change operations and analyze their properties. We further demonstrate concrete instances of the Diffuse framework for three different popular modeling languages, namely class diagrams, activity diagrams, and feature models. The Diffuse framework provides a novel foundation for combining syntactic and semantic differencing.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Fußnoten
1
Eclipse Graphical Modeling Project. http://​www.​eclipse.​org/​modeling/​gmp/​
 
2
Removed first parameter (process model) and successor node parameter (in addition to \( dest \)) when clear in examples.
 
3
Shortened names of CD change operations defined in [33]
 
Literatur
1.
Zurück zum Zitat Acher, M., Heymans, P., Collet, P., Quinton, C., Lahire, P., Merle, P.: Feature model differences. In: Ralyté, J., Franch, X., Brinkkemper, S., Wrycza, S. (eds.) Proceedings of the 24th International Conference on Advanced Information Systems Engineering (CAiSE). Lecture Notes in Computer Science, vol. 7328, pp. 629–645. Springer (2012) Acher, M., Heymans, P., Collet, P., Quinton, C., Lahire, P., Merle, P.: Feature model differences. In: Ralyté, J., Franch, X., Brinkkemper, S., Wrycza, S. (eds.) Proceedings of the 24th International Conference on Advanced Information Systems Engineering (CAiSE). Lecture Notes in Computer Science, vol. 7328, pp. 629–645. Springer (2012)
2.
Zurück zum Zitat Alanen, M., Porres, I.: Difference and union of models. In: Stevens, P., Whittle, J., Booch, G. (eds.) Proceedings of the 6th International Conference on the UML. Lecture Notes in Computer Science, vol. 2863, pp. 2–17. Springer (2003) Alanen, M., Porres, I.: Difference and union of models. In: Stevens, P., Whittle, J., Booch, G. (eds.) Proceedings of the 6th International Conference on the UML. Lecture Notes in Computer Science, vol. 2863, pp. 2–17. Springer (2003)
3.
Zurück zum Zitat Altmanninger, K., Seidl, M., Wimmer, M.: A survey on model versioning approaches. IJWIS 5(3), 271–304 (2009) Altmanninger, K., Seidl, M., Wimmer, M.: A survey on model versioning approaches. IJWIS 5(3), 271–304 (2009)
4.
Zurück zum Zitat Apiwattanapong, T., Orso, A., Harrold, M.J.: JDiff: A differencing technique and tool for object-oriented programs. Autom. Softw. Eng. 14(1), 3–36 (2007)CrossRef Apiwattanapong, T., Orso, A., Harrold, M.J.: JDiff: A differencing technique and tool for object-oriented programs. Autom. Softw. Eng. 14(1), 3–36 (2007)CrossRef
5.
Zurück zum Zitat Barrett, S., Chalin, P., Butler, G.: Table-driven detection and resolution of operation-based merge conflicts with mirador. In: France, R.B., Küster, J.M., Bordbar, B., Paige, R.F. (eds.) Proceedings of the 7th European Conference on Modelling Foundations and Applications (ECMFA). Lecture Notes in Computer Science, vol. 6698, pp. 329–344. Springer (2011) Barrett, S., Chalin, P., Butler, G.: Table-driven detection and resolution of operation-based merge conflicts with mirador. In: France, R.B., Küster, J.M., Bordbar, B., Paige, R.F. (eds.) Proceedings of the 7th European Conference on Modelling Foundations and Applications (ECMFA). Lecture Notes in Computer Science, vol. 6698, pp. 329–344. Springer (2011)
6.
Zurück zum Zitat Briand, L.C., Labiche, Y., O’Sullivan, L., Sówka, M.M.: Automated impact analysis of UML models. J. Syst. Softw. 79(3), 339–352 (2006)CrossRef Briand, L.C., Labiche, Y., O’Sullivan, L., Sówka, M.M.: Automated impact analysis of UML models. J. Syst. Softw. 79(3), 339–352 (2006)CrossRef
7.
Zurück zum Zitat Cicchetti, A., Ruscio, D.D., Pierantonio, A.: A metamodel independent approach to difference representation. J. Object Technol. 6(9), 165–185 (2007)CrossRef Cicchetti, A., Ruscio, D.D., Pierantonio, A.: A metamodel independent approach to difference representation. J. Object Technol. 6(9), 165–185 (2007)CrossRef
8.
Zurück zum Zitat Czarnecki, K., Wasowski, A.: Feature diagrams and logics: there and back again. In: Proceedings of the 11th International Conference on Software Product Lines (SPLC), pp. 23–34. IEEE Computer Society (2007) Czarnecki, K., Wasowski, A.: Feature diagrams and logics: there and back again. In: Proceedings of the 11th International Conference on Software Product Lines (SPLC), pp. 23–34. IEEE Computer Society (2007)
10.
Zurück zum Zitat Eshuis, R.: Symbolic model checking of UML activity diagrams. ACM Trans. Softw. Eng. Methodol. 15(1), 1–38 (2006)CrossRef Eshuis, R.: Symbolic model checking of UML activity diagrams. ACM Trans. Softw. Eng. Methodol. 15(1), 1–38 (2006)CrossRef
11.
Zurück zum Zitat Fahrenberg, U., Acher, M., Legay, A., Wasowski, A.: Sound merging and differencing for class diagrams. In: Gnesi, S., Rensink, A. (eds.) Proceedings of the 17th International Conference on Fundamental Approaches to Software Engineering (FASE). Lecture Notes in Computer Science, vol. 8411, pp. 63–78. Springer (2014) Fahrenberg, U., Acher, M., Legay, A., Wasowski, A.: Sound merging and differencing for class diagrams. In: Gnesi, S., Rensink, A. (eds.) Proceedings of the 17th International Conference on Fundamental Approaches to Software Engineering (FASE). Lecture Notes in Computer Science, vol. 8411, pp. 63–78. Springer (2014)
12.
Zurück zum Zitat Fahrenberg, U., Legay, A., Wasowski, A.: Vision paper: Make a difference! (semantically). In: Whittle, J., Clark, T., Kühne, T. (eds.): Model Driven Engineering Languages and Systems, 14th International Conference, MODELS 2011, Wellington, New Zealand, October 16–21, 2011. Proceedings, Lecture Notes in Computer Science, vol. 6981, pp. 490–500. Springer (2011) Fahrenberg, U., Legay, A., Wasowski, A.: Vision paper: Make a difference! (semantically). In: Whittle, J., Clark, T., Kühne, T. (eds.): Model Driven Engineering Languages and Systems, 14th International Conference, MODELS 2011, Wellington, New Zealand, October 16–21, 2011. Proceedings, Lecture Notes in Computer Science, vol. 6981, pp. 490–500. Springer (2011)
13.
Zurück zum Zitat Fisler, K., Krishnamurthi, S., Meyerovich, L.A., Tschantz, M.C.: Verification and change-impact analysis of access-control policies. In: Roman, G., Griswold, W.G., Nuseibeh, B. (eds.) Proceedings of the 27th International Conference on Software Engineering (ICSE), pp. 196–205. ACM (2005) Fisler, K., Krishnamurthi, S., Meyerovich, L.A., Tschantz, M.C.: Verification and change-impact analysis of access-control policies. In: Roman, G., Griswold, W.G., Nuseibeh, B. (eds.) Proceedings of the 27th International Conference on Software Engineering (ICSE), pp. 196–205. ACM (2005)
14.
Zurück zum Zitat Gerth, C., Küster, J.M., Luckey, M., Engels, G.: Detection and resolution of conflicting change operations in version management of process models. Softw. Syst. Model. 12(3), 517–535 (2013)CrossRef Gerth, C., Küster, J.M., Luckey, M., Engels, G.: Detection and resolution of conflicting change operations in version management of process models. Softw. Syst. Model. 12(3), 517–535 (2013)CrossRef
15.
Zurück zum Zitat Harel, D., Rumpe, B.: Meaningful modeling: What’s the semantics of “semantics”? IEEE Comput. 37(10), 64–72 (2004)CrossRef Harel, D., Rumpe, B.: Meaningful modeling: What’s the semantics of “semantics”? IEEE Comput. 37(10), 64–72 (2004)CrossRef
16.
Zurück zum Zitat Jackson, D., Ladd, D.A.: Semantic Diff: A Tool for Summarizing the Effects of Modifications. In: Müller, H.A., Georges, M. (eds.) Proceedings of the International Conference on Software Maintenance (ICSM), pp. 243–252. IEEE Computer Society (1994) Jackson, D., Ladd, D.A.: Semantic Diff: A Tool for Summarizing the Effects of Modifications. In: Müller, H.A., Georges, M. (eds.) Proceedings of the International Conference on Software Maintenance (ICSM), pp. 243–252. IEEE Computer Society (1994)
17.
Zurück zum Zitat Jackson, D.: Software Abstractions: Logic, Language, and Analysis. MIT Press, Cambridge (2006) Jackson, D.: Software Abstractions: Logic, Language, and Analysis. MIT Press, Cambridge (2006)
18.
Zurück zum Zitat Kehrer, T., Kelter, U., Taentzer, G.: A rule-based approach to the semantic lifting of model differences in the context of model versioning. In: Alexander, P., Pasareanu, C.S., Hosking, J.G. (eds.) Proceedings of the 26th IEEE/ACM International Conference on Automated Software Engineering (ASE), pp. 163–172 (2011) Kehrer, T., Kelter, U., Taentzer, G.: A rule-based approach to the semantic lifting of model differences in the context of model versioning. In: Alexander, P., Pasareanu, C.S., Hosking, J.G. (eds.) Proceedings of the 26th IEEE/ACM International Conference on Automated Software Engineering (ASE), pp. 163–172 (2011)
19.
Zurück zum Zitat Kehrer, T., Kelter, U., Taentzer, G.: Consistency-preserving edit scripts in model versioning. In: 28th IEEE/ACM International Conference on Automated Software Engineering (ASE), pp. 191–201 (2013) Kehrer, T., Kelter, U., Taentzer, G.: Consistency-preserving edit scripts in model versioning. In: 28th IEEE/ACM International Conference on Automated Software Engineering (ASE), pp. 191–201 (2013)
20.
Zurück zum Zitat Küster, J.M., Gerth, C., Engels, G.: Dependent and conflicting change operations of process models. In: Paige, R.F., Hartman, A., Rensink, A. (eds.) Proceedings of the 5th European Conference on Model Driven Architecture- Foundations and Applications (ECMDA-FA). Lecture Notes in Computer Science, vol. 5562, pp. 158–173. Springer (2009) Küster, J.M., Gerth, C., Engels, G.: Dependent and conflicting change operations of process models. In: Paige, R.F., Hartman, A., Rensink, A. (eds.) Proceedings of the 5th European Conference on Model Driven Architecture- Foundations and Applications (ECMDA-FA). Lecture Notes in Computer Science, vol. 5562, pp. 158–173. Springer (2009)
21.
Zurück zum Zitat Küster, J.M., Gerth, C., Förster, A., Engels, G.: Detecting and resolving process model differences in the absence of a change log. In: Dumas, M., Reichert, M., Shan, M.C. (eds.) Proceedings of the 6th International Conference on Business Process Management (BPM). Lecture Notes in Computer Science, vol. 5240, pp. 244–260. Springer (2008) Küster, J.M., Gerth, C., Förster, A., Engels, G.: Detecting and resolving process model differences in the absence of a change log. In: Dumas, M., Reichert, M., Shan, M.C. (eds.) Proceedings of the 6th International Conference on Business Process Management (BPM). Lecture Notes in Computer Science, vol. 5240, pp. 244–260. Springer (2008)
22.
Zurück zum Zitat Langer, P., Mayerhofer, T., Kappel, G.: Semantic model differencing utilizing behavioral semantics specifications. In: Dingel, J., Schulte, W., Ramos, I., Abrahão, S., Insfrán, E. (eds.) Proceedings of the 17th International Conference on Model-Driven Engineering Languages and Systems (MODELS). Lecture Notes in Computer Science, vol. 8767, pp. 116–132. Springer (2014) Langer, P., Mayerhofer, T., Kappel, G.: Semantic model differencing utilizing behavioral semantics specifications. In: Dingel, J., Schulte, W., Ramos, I., Abrahão, S., Insfrán, E. (eds.) Proceedings of the 17th International Conference on Model-Driven Engineering Languages and Systems (MODELS). Lecture Notes in Computer Science, vol. 8767, pp. 116–132. Springer (2014)
23.
Zurück zum Zitat Lin, Y., Gray, J., Jouault, F.: DSMDiff: a differentiation tool for domain-specific models. Eur. J. Inf. Syst. 16(4), 349–361 (2007)CrossRef Lin, Y., Gray, J., Jouault, F.: DSMDiff: a differentiation tool for domain-specific models. Eur. J. Inf. Syst. 16(4), 349–361 (2007)CrossRef
24.
Zurück zum Zitat Lippe, E., van Oosterom, N.: Operation-based merging. In: Proceedings of the 5th ACM SIGSOFT Symposium on Software Development Environments (SDE), SDE 5, pp. 78–87. ACM, New York, NY, USA (1992) Lippe, E., van Oosterom, N.: Operation-based merging. In: Proceedings of the 5th ACM SIGSOFT Symposium on Software Development Environments (SDE), SDE 5, pp. 78–87. ACM, New York, NY, USA (1992)
25.
Zurück zum Zitat Maoz, S., Ringert, J.O., Rumpe, B.: A manifesto for semantic model differencing. In: Dingel, J., Solberg, A. (eds.) MODELS 2010 Workshops. Lecture Notes in Computer Science, vol. 6627, pp. 17–31. Springer (2011) Maoz, S., Ringert, J.O., Rumpe, B.: A manifesto for semantic model differencing. In: Dingel, J., Solberg, A. (eds.) MODELS 2010 Workshops. Lecture Notes in Computer Science, vol. 6627, pp. 17–31. Springer (2011)
26.
Zurück zum Zitat Maoz, S., Ringert, J.O., Rumpe, B.: ADDiff: Semantic differencing for activity diagrams. In: Gyimóthy, T., Zeller, A. (eds.) Proceedings of the 19th ACM SIGSOFT Symposium on the Foundations of Software Engineering (FSE) and 13rd European Software Engineering Conference (ESEC), pp. 179–189. ACM (2011) Maoz, S., Ringert, J.O., Rumpe, B.: ADDiff: Semantic differencing for activity diagrams. In: Gyimóthy, T., Zeller, A. (eds.) Proceedings of the 19th ACM SIGSOFT Symposium on the Foundations of Software Engineering (FSE) and 13rd European Software Engineering Conference (ESEC), pp. 179–189. ACM (2011)
27.
Zurück zum Zitat Maoz, S., Ringert, J.O., Rumpe, B.: An operational semantics for activity diagrams using SMV. Tech. Rep. AIB-2011-07, RWTH Aachen University (2011) Maoz, S., Ringert, J.O., Rumpe, B.: An operational semantics for activity diagrams using SMV. Tech. Rep. AIB-2011-07, RWTH Aachen University (2011)
28.
Zurück zum Zitat Maoz, S., Ringert, J.O., Rumpe, B.: CD2Alloy: Class Diagrams Analysis Using Alloy Revisited. In: Whittle, J., Clark, T., Kühne, T. (eds.): Model Driven Engineering Languages and Systems, 14th International Conference, MODELS 2011, Wellington, New Zealand, October 16–21, 2011. Proceedings, Lecture Notes in Computer Science, vol. 6981, pp. 592–607. Springer (2011) Maoz, S., Ringert, J.O., Rumpe, B.: CD2Alloy: Class Diagrams Analysis Using Alloy Revisited. In: Whittle, J., Clark, T., Kühne, T. (eds.): Model Driven Engineering Languages and Systems, 14th International Conference, MODELS 2011, Wellington, New Zealand, October 16–21, 2011. Proceedings, Lecture Notes in Computer Science, vol. 6981, pp. 592–607. Springer (2011)
29.
Zurück zum Zitat Maoz, S., Ringert, J.O., Rumpe, B.: CDDiff: Semantic differencing for class diagrams. In: Mezini, M. (ed.) Proceedings of the 25th European Conference on Object Oriented Programming (ECOOP). Lecture Notes in Computer Science, vol. 6813, pp. 230–254. Springer (2011) Maoz, S., Ringert, J.O., Rumpe, B.: CDDiff: Semantic differencing for class diagrams. In: Mezini, M. (ed.) Proceedings of the 25th European Conference on Object Oriented Programming (ECOOP). Lecture Notes in Computer Science, vol. 6813, pp. 230–254. Springer (2011)
30.
Zurück zum Zitat Maoz, S., Ringert, J.O., Rumpe, B.: Summarizing semantic model differences. In: Models and Evolution Workshop at MODELS (2011) Maoz, S., Ringert, J.O., Rumpe, B.: Summarizing semantic model differences. In: Models and Evolution Workshop at MODELS (2011)
31.
Zurück zum Zitat Maoz, S., Ringert, J.O., Rumpe, B.: Verifying component and connector models against crosscutting structural views. In: Jalote, P., Briand, L.C., van der Hoek, A. (eds.) Proceedings of the 36th International Conference on Software Engineering (ICSE), pp. 95–105. ACM (2014) Maoz, S., Ringert, J.O., Rumpe, B.: Verifying component and connector models against crosscutting structural views. In: Jalote, P., Briand, L.C., van der Hoek, A. (eds.) Proceedings of the 36th International Conference on Software Engineering (ICSE), pp. 95–105. ACM (2014)
32.
Zurück zum Zitat Maoz, S., Ringert, J.O.: A framework for relating syntactic and semantic model differences. In: Lethbridge, T., Cabot, J., Egyed, A. (eds.) Proceedings of the 18th ACM/IEEE International Conference on Model Driven Engineering Languages and Systems (MODELS), pp. 24–33 (2015) Maoz, S., Ringert, J.O.: A framework for relating syntactic and semantic model differences. In: Lethbridge, T., Cabot, J., Egyed, A. (eds.) Proceedings of the 18th ACM/IEEE International Conference on Model Driven Engineering Languages and Systems (MODELS), pp. 24–33 (2015)
34.
Zurück zum Zitat Störrle, H.: Making sense to modelers—presenting UML class model differences in prose. In: Hammoudi, S., Pires, L.F., Filipe, J., das Neves, R.C. (eds.) MODELSWARD, pp. 39–48. SciTePress (2013) Störrle, H.: Making sense to modelers—presenting UML class model differences in prose. In: Hammoudi, S., Pires, L.F., Filipe, J., das Neves, R.C. (eds.) MODELSWARD, pp. 39–48. SciTePress (2013)
35.
Zurück zum Zitat Taentzer, G., Ermel, C., Langer, P., Wimmer, M.: A fundamental approach to model versioning based on graph modifications: from theory to implementation. Softw. Syst. Model. 13(1), 239–272 (2014)CrossRef Taentzer, G., Ermel, C., Langer, P., Wimmer, M.: A fundamental approach to model versioning based on graph modifications: from theory to implementation. Softw. Syst. Model. 13(1), 239–272 (2014)CrossRef
36.
Zurück zum Zitat Thüm, T., Batory, D.S., Kästner, C.: Reasoning about edits to feature models. In: Proceedings of the 31st International Conference on Software Engineering (ICSE), pp. 254–264. IEEE (2009) Thüm, T., Batory, D.S., Kästner, C.: Reasoning about edits to feature models. In: Proceedings of the 31st International Conference on Software Engineering (ICSE), pp. 254–264. IEEE (2009)
Metadaten
Titel
A framework for relating syntactic and semantic model differences
verfasst von
Shahar Maoz
Jan Oliver Ringert
Publikationsdatum
12.08.2016
Verlag
Springer Berlin Heidelberg
Erschienen in
Software and Systems Modeling / Ausgabe 3/2018
Print ISSN: 1619-1366
Elektronische ISSN: 1619-1374
DOI
https://doi.org/10.1007/s10270-016-0552-y

Weitere Artikel der Ausgabe 3/2018

Software and Systems Modeling 3/2018 Zur Ausgabe