A Metamodeling Approach to Pattern Specification

  • Maged Elaasar
  • Lionel C. Briand
  • Yvan Labiche
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4199)


This paper presents the Pattern Modeling Framework (PMF), a new metamodeling approach to pattern specification for MOF-compliant modeling frameworks and languages. Patterns need to be precisely specified before a tool can manipulate them, and though several approaches to pattern specification have been proposed, they do not provide the scalability and flexibility required in practice. PMF provides a pattern specification language called Epattern, which is capable of precisely specifying patterns in MOF-compliant metamodels. The language is defined as an extension to MOF by adding semantics inspired from the UML composite structure diagram. The language also comes with a graphical notation and a recommended iterative specification process. It also contains features to manage the complexity of specifying patterns and simplify their application and detection in user models. Most importantly, the language is implemented using state-of-the-art technologies that are heavily used by major modeling tool vendors, thus facilitating its adoption.


Unify Modeling Language Object Management Group Eclipse Modeling Framework Pattern Instance Model Drive Architecture 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Miller, J., Mukerji, J.: MDA Guide Version 1.0.1. OMG, Massachusetts (June 2003)Google Scholar
  2. 2.
    Booch, G.: Handbook of Software Architecture, http://www.booch.com/architecture/
  3. 3.
  4. 4.
    Budinsky, F., Steinberg, D., Grose, T., Brodsky, S., Merks, E.: Eclipse Modeling Framework. Pearson Education, London (2003)Google Scholar
  5. 5.
    OMG. UML 2.0 Suprestructure Specifications. OMG Document formal/05-07-04 Google Scholar
  6. 6.
    Magyari, E., et al.: UDM: An Infrastructure for Implementing Domain-Specific Modeling Languages. In: The 3rd OOPSLA Workshop on Domain-Specific Modeling, OOPSLA 2003 (2003)Google Scholar
  7. 7.
    Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison Wesley, Reading (1995)Google Scholar
  8. 8.
    UML2: EMF-based UML 2.0 Metamodel Implementation, http://www.eclipse.org/uml2
  9. 9.
    OMG. MOF Core Specification v2.0. OMG Document formal/06-01-01 Google Scholar
  10. 10.
    Brown, W., McCormick, H., Mowbray, T., Malveau, R.C.: Antipatterns: Refactoring Software, Architectures, and Projects in Crisis. John Wiley & Sons, Chichester (1998)Google Scholar
  11. 11.
    Mak, J., Choy, C., Lun, D.: Precise Modeling of Design Patterns in UML. In: Proceedings of the 26th International Conference on Software Engineering (2004)Google Scholar
  12. 12.
    Guennec, A., Sunye, G., Jezequel, J.M.: Precise Modeling of Design Patterns. In: Evans, A., Kent, S., Selic, B. (eds.) UML 2000. LNCS, vol. 1939, pp. 482–496. Springer, Heidelberg (2000)Google Scholar
  13. 13.
    France, R., Kim, D., Ghosh, S., Song, E.: A UML-Based Pattern Specification Technique. IEEE Transactions on Software Engineering 30(3), 193–206 (2004)CrossRefGoogle Scholar
  14. 14.
    Maplesden, D., Hosking, J.G., Grundy, J.C.: Design Pattern Modelling and Instantiation using DPML. In: Proceedings of Tools Pacific 2002, Sydney, February 2002, pp. 18–21 (2002)Google Scholar
  15. 15.
    Baroni, A., Gueheneuc, Y.G., Albin-Amiot, H.: Design Patterns Formalization. Ecole Notionale Superieure des Techniques Industrielles. Research Report 03/3/INFO (2003)Google Scholar
  16. 16.
    Albin-Amiot, H., Guéhéneuc, Y.G.: Metamodeling Design Patterns: Application to Pattern Detection and Code Synthesis. In: Proceedings of the ECOOP 2001 Workshop on Adaptative Object-Models and MetaModeling Techniques (2001)Google Scholar
  17. 17.
    Engels, G., Kuster, J.M., Groenewegen, L.: Consistent Interaction of Software Components. In: Proceedings of Integrated Design and Process Technology (2002)Google Scholar
  18. 18.
    Briand, L., Labiche, Y., O’Sullivan, L., Sowka, M.: Automated Impact Analysis of UML Models. Journal of Systems and Software 79(3), 339–352 (2006)CrossRefGoogle Scholar
  19. 19.
    Elaasar, M., Briand, L., Labiche, Y.: A Metamodeling Approach to Pattern Specification and Detection. Technical Report SCE-06-08, Carleton University (March 2006)Google Scholar
  20. 20.
    OMG. OCL for EMOF Specification v2.0. OMG Document ptc/05-06-13 Google Scholar
  21. 21.
    Omodo. EclipseUML for MDA, http://www.omondo.com
  22. 22.
    OMG. UML 2.0 Infrastructure Specifications. OMG Document formal/05-07-05 Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Maged Elaasar
    • 1
    • 2
  • Lionel C. Briand
    • 1
    • 3
  • Yvan Labiche
    • 1
  1. 1.Software Quality Engineering Laboratory (SQUALL), Department of Systems and Computer EngineeringCarleton UniversityOttawaCanada
  2. 2.IBM Canada Ltd, Rational Software, Ottawa LabKanataCanada
  3. 3.Department of Software EngineeringSimula Research LaboratoryLysakerNorway

Personalised recommendations