Abstract
Metamodeling is a widely applied technique in the field of graphical languages to create highly configurable modeling environments. These environments support the rapid development of domain-specific modeling languages (DSMLs). Design patterns are efficient solutions for recurring problems. With the proliferation of DSMLs, there is a need for domain-specific design patterns to offer solutions to problems recurring in different domains. The aim of this paper is to provide theoretical and practical foundations to support domain-specific model patterns in metamodeling environments. In order to support the treatment of premature model parts, we weaken the instantiation relationship. We provide constructs relaxing the instantiation rules, and we show that these constructs are appropriate and sufficient to express patterns. We provide the necessary modifications in metamodeling tools for supporting patterns. With the contributed results, a well-founded domain-specific model pattern support can be realized in metamodeling tools.
Similar content being viewed by others
References
Albin-Amiot, H., Gueheneuc, Y.G.: Meta-modeling design patterns: application to pattern detection and code synthesis. In: Proceedings of the 1st ECOOP Workshop on Automating Object-Oriented Software Development Methods (2001)
Agrawal, A., Vizhanyo, A., Kalmar, Z., Shi, F., Narayanan, A., Karsai, G.: Reusable idioms and patterns in graph transformation languages. In: 2nd International Conference on Graph Transformation, Rome, Italy (2004)
Atkinson, C., Kuehne, T.: The Essence of Multilevel Metamodeling. In: UML, pp. 19–33. Springer, Berlin (2001)
Atkinson C., Kuehne T.: Rearchitecting the UML infrastructure. ACM Trans. Model. Comput. Simul. 12(4), 290–321 (2002)
Dietrich, J., Elgar, C.: An ontology based representation of software design patterns. In: Design Patterns Formalization Techniques. IGI Publishing, Hershey (2007)
Dong, J., Alencar, P., Cowan, D.: Formal specification and verification of design patterns. In: Design Patterns Formalization Techniques. IGI Publishing, Hershey (2007)
Eclipse Modeling Framework, http://www.eclipse.org/
Eden, A., Hirshfeld, Y.: LePUS-symbolic logic modeling of object-oriented architecture: a case study. In: Proceedings of the 2nd Nordic Workshop on Software Architecture-NOSA, Ronneby, Sweden (1999)
Ehrig H., Ehrig K., Prange U., Taenzer G.: Fundamentals of Algebraic Graph Transformation, Monographs in Theoretical Computer Science. Springer, Berlin (2006)
Flores, A., Fillottrani, P.: Evaluation framework for Design pattern formal models. In: Proceedings of the CACIC’03 IX Argentinean Conference on Computer Science, La Plata, Argentina (2003)
Flores, A., Cechich, A., Aranda, G.: A generic model of object-oriented patterns specified in RSL. In: Design Patterns Formalization Techniques. IGI Publishing, Hershey (2007)
Gamma E., Helm R., Johnson R., Vlissides J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison- Wesley, Reading (1995)
Gasparis, E.: LePUS: a formal language for modeling design patterns. In: Design Patterns Formalization Techniques. IGI Publishing, Hershey (2007)
Guennec, A.L., Sunye, G., Jezequel, J.: Precise modeling of design patterns. In: Proceedings of the 3rd International Conference on the Unified Modeling Language (UML), York, UK, 2000, pp. 482–496. Springer, Berlin (1939)
Karsai G., Agrawal A., Shi F., Sprinkle J.: On the use of graph transformation in the formal specification of model interpreters. J. Univers. Comput. Sci. Special Issue Formal Specif. CBS 9(11), 1296–1321 (2003)
Kim D.-K., France R., Ghosh S.: A UML-based language for specifying domain-specific patterns. J. Vis. Lang. Comput. 15(3-4), 265–289 (2004)
Kohler, H.J., Nickel, U., A. Niere, J., Zundorf, A.: Integrating UML diagrams for production control systems. In: Proceedings of the 22nd International Conf. on Software Engineering (ICSE), Limerick Ireland, pp. 241–251. ACM Press, New York (2000)
Kurtev, I., van den Berg, K.: Unifying approach for model transformations in the MOF metamodeling architecture. In: Proceedings of the 1st European MDA Workshop, MDA-IA, University of Twente, the Nederlands, March (2004)
Lano, K.: Formalising design patterns as model transformations. In: Design Patterns Formalization Techniques. IGI Publishing, Hershey (2007)
Lara J., Vangheluwe H., Alfonseca M.: Meta-modelling and graph grammars for multi-paradigm modelling in AToM. Softw. Syst. Model. (SoSyM) 3(3), 194–209 (2004)
Lara, J., Vangheluwe, H.: AToM3 as a meta-case environment. In: 4th International Conference on Enterprise Information Systems, pp. 642–649 (2002)
Lauder, A., Kent, S.: Precise visual specification of design patterns. In: Proceedings of the 12th European Conference on Object-Oriented Programming (ECOOP). Lecture Notes in Computer Science, vol. 1445, pp. 114–136. Springer, Berlin (1998)
Lengyel, L.: Online validation of visual model transformations. PhD thesis, Budapest University of Technology and Economics, Department of Automation and Applied Informatics (2006)
Lengyel, L., Levendovszky, T., Mezei, G., Charaf, H.: Model-based development with strictly controlled model transformation. In: The 2nd International Workshop on Model-Driven Enterprise Information Systems, MDEIS 2006, Cyprus, pp. 39–48 (2006)
Lengyel L., Levendovszky T., Mezei G., Charaf H.: Model transformation with a visual control flow language. Int. J. Comput. Sci. (IJCS) 1(1), 45–53 (2006)
Lengyel, L., Meszaros, T., Mezei, G., Charaf, H.: Supporting design patterns in graph rewritng-based model transformation. In: 2nd Internal Working Conference on Evaluation on Novel Approaches to Software Engineering (ENASE’07), 23–25 July, Barcelona, Spain (2007)
Levendovszky, T., Lengyel, L., Mezei, G., Charaf, H.: A systematic approach to metamodeling environments and model transformation systems in VMTS, ENTCS. In: International Workshop on Graph-Based Tools (GraBaTs) Rome (2004)
Levendovszky, T., Lengyel, L., Charaf, H.: A UML class diagram-based pattern language for model transformation systems. In: WSEAS Transactions on Computers, vol. 4 (2005)
Ledeczi A., Bakay A., Maroti M., Volgyesi P., Nordstrom G., Sprinkle J., Karsai G.: Composing domain-specific design environments. IEEE Comput. 34(11), 44–51 (2001)
Maplesden, D., Hosking, J., Grundy, J.: A visual language for design pattern modeling and instantiation. In: Design Patterns Formalization Techniques. IGI Publishing, Hershey (2007)
Meta-case official homepage, http://www.metacase.com/
Minas M.: Specifying graph-like diagrams with DIAGEN. Sci. Comput. Program. 44, 157–180 (2002)
Minas, M.: Generating meta-model-based freehand editors, Electronic Communications of the EASST. In: Proceedings of 3rd International Workshop on Graph Based Tools (GraBaTs’06), Natal (Brazil), September 21–22, 2006, Satellite event of the 3rd International Conference on Graph Transformation (2006)
OMG OCL Specification, Version 2.0, 2006. http://www.omg.org/
OMG QVT, Meta Object Facility 2.0 Query/Views/Transformation Specification. http://www.omg.org/cgi-bin/apps/doc?ad/05-03-02.pdf
OMG UML Specification, Version 2.1.1, 2007. http://www.uml.org/
Roberts, D., Johnson, R.E.: A generic model of object-oriented patterns specified in RSL. In: Pattern Languages of Program Design 3. Addison-Wesley, Reading (1997)
Rozenberg , G. (eds): Handbook on Graph Grammars and Computing by Graph Transformation: Foundations, vol. 1. World Scientific, Singapore (1997)
Spinellis D.: Notable design patterns for domain specific languages. J. Syst. Softw. 56(1), 91–99 (2001)
Sprinkle, J., Agrawal, A., Levendovszky, T., Feng, Shi, Karsai, G.: Domain model translation using graph transformations. In: Proceedings of 10th IEEE International Conference and Workshop on Engineering of Computer-Based Systems, pp. 159–168 (2003)
Taentzer, G.: AGG: a graph transformation environment for system modeling and validation. In: Proceedings Tool Exihibition at Formal Methods (2003)
Taibi, T.: An integrated approach to design patterns formalization In: Design Patterns Formalization Techniques. IGI Publishing, Hershey (2007)
Taentzer, G., Ehrig, K., Guerra, E., de Lara, J., Lengyel, L., Levendovszky, T., Prange, U., Varro D., Varro-Gyapay, Sz.: Model transformation by graph transformation: a comparative study. In: ACM/IEEE 8th International Conference on Model Driven Engineering Languages and Systems, Montego Bay, Jamaica (2005)
Varro 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)
VMTS Website, http://www.vmts.aut.bme.hu
Author information
Authors and Affiliations
Corresponding author
Additional information
Communicated by Prof. Thomas Kühne.
Rights and permissions
About this article
Cite this article
Levendovszky, T., Lengyel, L. & Mészáros, T. Supporting domain-specific model patterns with metamodeling. Softw Syst Model 8, 501–520 (2009). https://doi.org/10.1007/s10270-009-0118-3
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10270-009-0118-3