Abstract
Increasingly, recording the various kinds of design-level structural evolution that a system undergoes throughout its entire life-cycle is gaining relevance in software modeling and development. In this respect, an interesting and useful operation between subsequent system versions is model difference consisting in calculation, representation, and visualization.
This work shows how to generalize the application of differences, represented as first-class artefacts, in order to abstract from persistent identifiers and enable more flexibility. Then, modifications can be applied as model patches to arbitrary models according to weaving specifications.
Partially supported by the European Community’s 7th Framework Programme (FP7/2007-2013), grant agreement n° 214898.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Schmidt, D.C.: Guest Editor’s Introduction: Model-Driven Engineering. Computer 39(2), 25–31 (2006)
Bézivin, J.: On the Unification Power of Models. Jour. on Software and Systems Modeling (SoSyM) 4(2), 171–188 (2005)
Mens, T.: A State-of-the-Art Survey on Software Merging. IEEE Trans. Softw. Eng. 28(5), 449–462 (2002)
Lin, Y., Zhang, J., Gray, J.: Model Comparison: A Key Challenge for Transformation Testing and Version Control in Model Driven Software Development. In: OOPSLA Work. MDSD (2004)
Brun, C., Pierantonio, A.: Model Differences in the Eclipse Modeling Framework. UPGRADE, The European Journal for the Informatics Professional (April -May 2008) (to appear)
Cicchetti, A.: Difference Representation and Conflict Management in Model-Driven Engineering. PhD thesis, University of L’Aquila, Computer Science Dept. (2008)
Cicchetti, A., Di Ruscio, D., Pierantonio, A.: A Metamodel Independent Approach to Difference Representation. Journal of Object Technology 6(9), 165–185 (2007)
Rivera, J., Vallecillo, A.: Representing and Operating with Model Differences. In: Procs of the 46th Int. Conf. TOOLS EUROPE 2008 (2008) (to appear)
Alanen, M., Porres, I.: Difference and Union of Models. In: Stevens, P., Whittle, J., Booch, G. (eds.) UML 2003. LNCS, vol. 2863, pp. 2–17. Springer, Heidelberg (2003)
Toulmé, A.: The EMF Compare Utility, http://www.eclipse.org/modeling/emft/
Lin, Y., Gray, J., Jouault, F.: DSMDiff: A Differentiation Tool for Domain-Specific Models. European Journal of Information Systems 16(4), 349–361 (2007); Special Issue on Model-Driven Systems Development
Ohst, D., Welle, M., Kelter, U.: Differences between versions of UML diagrams. In: ESEC/FSE-11: Proc. ESEC/FSE, pp. 227–236. ACM Press, New York (2003)
Melnik, S., Rahm, E., Bernstein, P.: Rondo: a programming platform for generic model management. In: Procs. Int. Conf. on Management of Data, pp. 193–204. ACM Press, New York (2003)
Bézivin, J., Jouault, F., Rosenthal, P., Valduriez, P.: Modeling in the Large and Modeling in the Small. In: Aßmann, U., Aksit, M., Rensink, A. (eds.) MDAFA 2003. LNCS, vol. 3599, pp. 33–46. Springer, Heidelberg (2005)
Del Fabro, M.D., Valduriez, P.: Semi-automatic Model Integration using Matching Transformations and Weaving Models. In: The 22th ACM SAC - MT Track, pp. 963–970. ACM, New York (2007)
Cicchetti, A., Di Ruscio, D., Pierantonio, A.: ATL Use Case - A Metamodel Independent Approach to Difference Representation (February 2008), http://www.eclipse.org/m2m/atl/usecases/MMIndApproachtoDiffRep/
Jouault, F., Kurtev, I.: Transforming Models with ATL. In: Bruel, J.-M. (ed.) MoDELS 2005. LNCS, vol. 3844, pp. 128–138. Springer, Heidelberg (2006)
Varró, D., Pataricza, A.: Generic and Meta-Transformations for Model Transformation Engineering. In: International Conference on the Unified Modeling Language, pp. 290–304 (2004)
Eclipse project: GMF - Graphical Modeling Framework, http://www.eclipse.org/gmf/
Kolovos, D.S., Paige, R.F., Polack, F.: Merging Models with the Epsilon Merging Language (EML). In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 215–229. Springer, Heidelberg (2006)
Baer, H., et al.: The FAMOOS Object-Oriented Reengineering Handbook (1999), http://www.iam.unibe.ch/~famoos/handbook/4handbook.pdf
Tichelaar, S., Ducasse, S., Demeyer, S.: FAMIX and XMI. In: Proceedings WCRE 2000 Workshop on Exchange Formats, pp. 296–299 (2000)
Girba, T., Ducasse, S.: Modeling History to Analyze Software Evolution. J. Softw. Maint. Evol.: Res, Pract. 18, 207–236 (2006)
Object Management Group (OMG): MOF Versioning and Development Lifecycle Specification, v2.0, OMG Document: formal/07-05-01 (May 2007)
Roundy, D.: Darcs 1.1.0pre1 (June 30 2007), http://darcs.net/manual/darcs.html
Pierce, B.C., Vouillon, J.: What’s in Unison? A formal specification and reference implementation of a file synchronizer (2004)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Cicchetti, A., Di Ruscio, D., Pierantonio, A. (2010). Model Patches in Model-Driven Engineering. In: Ghosh, S. (eds) Models in Software Engineering. MODELS 2009. Lecture Notes in Computer Science, vol 6002. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-12261-3_19
Download citation
DOI: https://doi.org/10.1007/978-3-642-12261-3_19
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-12260-6
Online ISBN: 978-3-642-12261-3
eBook Packages: Computer ScienceComputer Science (R0)