Design Pattern Modeling with Constraint Relaxation

Metamodeling is a widely applied technique in the field of graphical language engineering. Environments supporting metamodeling aid rapid and flexible domain-specific modeling language (DSML) definition and utilization. In software engineering, 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 illustrate a concept that integrates modeling patterns into a metamodeling environment. The introduced approach utilizes the modeling functionalities of the environment; a visual design pattern metamodel, a system architectural metamodel extended with textual constraints are introduced. Furthermore, design patterns are validated against relaxed constraints defined in the metamodel to only allow the creation of patterns that can be extended to valid instance models.