Skip to main content
Log in

Understanding and improving UML package merge

  • Regular Paper
  • Published:
Software & Systems Modeling Aims and scope Submit manuscript

Abstract

Package merge allows the content of one package to be combined with that of another package. Package merge is used extensively in the UML 2 specification to modularize the definition of the UML 2 meta model and to define the four compliance levels of UML 2. Package merge is a novel construct in UML and currently not well understood. This paper summarizes our work to understand and improve package merge. First, we identify ambiguous and missing rules in the package merge definition and suggest corrections. Then, we formalize package merge and analyze it with respect to some desirable properties. Our analyses employs Alloy, a first-order modelling language with tool support, and concepts from mathematical logic which allow us to develop a general taxonomy of package extension mechanisms. The analyses reveal the unexpected failure of important properties.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Barwise, J. (eds).: Handbook of Mathematical Logic, vol. 90 of Studies in Logic and the Foundations of Mathematics. North-Holland, Amsterdam (1977)

    Google Scholar 

  2. Baudry, B., Fleurey, F., France, R., Reddy, R.: Exploring the relationship between model composition and model transformation. In: International Workshop on Aspect-Oriented Modeling (AOM’05), 2005

  3. Bernstein, P.: Applying model management to classical meta data problems. In: Conference on Innovate Database Research (CIDR’03), 2003

  4. Bernstein, P., Halevy, A., Pottinger, R.: A vision for management of complex models. SIGMOD Rec. 29(4), 55–63 (2000)

    Article  Google Scholar 

  5. Bézivin, J., Jouault, F., Touzet, D.: An introduction to the atlas model management architecture. Technical Report 05-01, Research Report Laboratoire D’Informatique de Nantes Atlantique (LINA), 2005

  6. Bordbar, B., Anastasakis, K.: Uml2alloy: A tool for lightweight modelling of discrete event systems. In: IADIS International Conference in Applied Computing, Algarve, Portugal, 2005

  7. Bouzitouna, S., Gervais, M.P., Blanc, X.: Model reuse in MDA. In: Proceedings of the International Conference on Software Engineering Research and Practice (SERPİ5), Las Vegas, USA, June 2005

  8. Brunet, G., Chechik, M., Uchitel, S.: Properties of behavioural model merging. In: 14th International Symposium on Formal Methods (FM 2006), LNCS vol. 4085, pp. 98–114, Hamilton, Canada, August 2006. Springer, Heidelberg,

  9. Clark, T., Evans, A., Kent, S.: Engineering modelling languages: a precise metamodelling approach. In: Weber, H. (ed.) Fundamental Approaches to Software Engineering (FASE’02), LNCS 2306, pp. 159–173, Grenoble, France, April 2002

  10. Diskin, Z.: Abstract metamodeling, I: How to reason about meta-metamodeling in a formal way. In: Baclawski, K., Kilov, H., Thalassinidis, A., Tyson, K. (eds.) 8th OOPSLA Workshop on Behavioral Specifications, OOPSLA99. Northeastern University, College of Computer Science, 1999

  11. Diskin, Z., Kadish, B.: Generic model management. In: Doorn, J.H., Rivero, L.C., Ferraggine, V.E. (eds.) Encyclopedia of Database Technologies and Applications, pp. 258–265. Idea Group, 2005

  12. Diskin, Z., Kadish, B., Piessens, F., Johnson, M.: Universal arrow foundations for visual modeling. In: Diagrams’2000: 1st International Conference on the Theory and Applications of Diagrams, LNAI#1889, pp. 345–360. Springer, Heidelberg, 2000

  13. D’Souza, D., Sane, A., Birchenough, A.: First-class extensibility for UML-profiles, stereotypes, patterns. In: Second International Conference on the Unified Modeling Language (UML’99), volume LNCS 1723, pp. 265–277. Fort Collins, Colo., USA, October 1999. Springer, Heidelberg, 1999

  14. D’Souza, D., Wills, A.: Objects, Components, and Frameworks with UML. Addison Wesley, Reading (1999)

    Google Scholar 

  15. Georg, G., France, R., Ray, I.: Composing aspect models. In: 4th Workshop on Aspect-Oriented Software Development Modeling With UML, 2003

  16. Goguen, J., Burstall, R.: Institutions: abstract model theory for specification and programming. J. ACM 39(1), 95–146 (1992)

    Article  MATH  MathSciNet  Google Scholar 

  17. Gordon, M., Melham, T. (eds.): Introduction to HOL. Cambridge University Press, Cambridge (1993)

    MATH  Google Scholar 

  18. T.R.M. Group: The RAISE Development Method. BCS Practitioner Series. Prentice Hall, Englewood Cliffs, 1995. Out of print, but publically available at ftp://ftp.iist.unu.edu/pub/RAISE/method_book

  19. Jackson, A., Barais, O., Jézéquel, J.-M., Clarke, S.: Towards a generic and extensible merge operator. In: Second Workshop on Models and Aspects—Handling Crosscutting Concerns in MDSD at ECOOP 2006, 2006

  20. Jackson, D.: Software abstractions: logic, language and analysis. MIT, Cambridge (2006)

    Google Scholar 

  21. Jossic, A., Fabro, M.D., Lerat, J.-P., Bézivin, J., Jouault, F.: Model integration with model weaving: a case study in system architecture. In: International Conference on Systems Engineering and Modeling (ICSEM’07), Haifa, Israel, March 2007

  22. Kolovos, D., Paige, R., Polack, F.: Merging models with the Epsilon merging language. In: Proceedings ACM/IEEE 9th International Conference on Model Driven Engineering Languages and Systems (Models/UML 2006), LNCS, Genova, Italy, October 2006. Springer, Heidelberg, 2006

  23. Naumenko, A., Wegmann, A.: A metamodel for the unified modeling language. In: S.C.E., Jézéquel, J.-M., Hussmann, H. (eds.) 5th International Conference on the Unified Modeling Language: Model Engineering, Concepts, and Tools (UML 2002), LNCS 2460, pp. 2–17, Dresden, Germany, September/October 2002. Springer, Heidelberg, 2002

  24. Object Management Group: MOF 2.0/XMI Mapping Specification (ver. 2.1, formal/05-09-01), September 2005

  25. Object Management Group: Meta Object Facility (MOF) Core Specification (version 2.0, formal/06-01-01), January 2006

  26. Object Management Group: Unified Modeling Language: Infrastructure (ver. 2.1.1, formal/07-01-04), February 2007

  27. Object Management Group: Unified Modeling Language: Superstructure (Version 2.1.1, formal/07-02-05), February 2007

  28. Pottinger, R., Bernstein, P.: Merging models based on given correspondences. Technical Report UW-CSE-03-02-03, University of Washington, 2003

  29. Reddy, Y., Ghosh, S., France, R., Straw, G., Bieman, J., McEachen, N., Song, E., Georg, G.: Directives for composing aspect-oriented design class models. 3880, 75–105 (2006)

  30. Rumbaugh, J., Jacobson, I., Booch, G.: The Unified Modeling Language Reference Manual, Second Edition. Object Technology Series. Addison-Wesley, Reading (2005)

    Google Scholar 

  31. Selic, B.: What’s new in UML 2.0? IBM rational software, April 2005

  32. Selic, B.: Model-driven software development. IBM Syst. J. 45(3), (2006)

  33. Simons, A., Fernandez, C.: Using Alloy to model-check visual design notations. In: Sixth Mexican International Conference on Computer Science, pp. 121–128 (2005)

  34. Straw, G., Georg, G., Song, E., Ghosh, S., France, R., Bieman, J.M.: Model composition directives. In: Baar, T., Strohmeier, A., Moreira, A. (eds.) 7th International Conference on UML Modelling Languages and Applications. Springer, Heidelberg, October 2004

  35. Varró, D., Pataricza, A.: VPM: A visual, precise and multilevel metamodeling framework for describing mathematical domains and UML. J. Softw. Syst. Model. 2(3), 187–210 (2003)

    Article  Google Scholar 

  36. Xactium Ltd: www.xactium.com, 2007

  37. Zito, A.: UML’s package extension mechanism: taking a closer look at package merge. Master’s thesis, School of Computing, Queen’s University, September 2006

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to J. Dingel.

Additional information

Communicated by Prof. Oscar Nierstrasz; Jon Whittle.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Dingel, J., Diskin, Z. & Zito, A. Understanding and improving UML package merge. Softw Syst Model 7, 443–467 (2008). https://doi.org/10.1007/s10270-007-0073-9

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-007-0073-9

Keywords

Navigation