Defining a UML profile for the consistency of design patterns

Hela Marouane, Achraf Makni, Rafik Bouaziz, Claude Duvallet, Bruno Sadeg · 2016

A design pattern describes a general solution to a design problem occurring repeatedly in many systems. Indeed, software designers adapt the pattern solution to their specific applications. Therefore, its design must show the variations points which will be adopted for certain systems. Hence, the expression of the variability when modeling the pattern is crucial. The design pattern is usually modeled using the Unified Modeling Language (UML). However, the latter is not enough expressive to represent the variability. Thus, the UML was semantically and syntactically extended with profiles by providing three extension mechanisms: stereotypes, tagged values and constraints. The expression of variability using stereotypes makes the pattern more expressive and facilitates its instantiation. But, it can generate some inconsistencies inside UML diagrams. Accordingly, in order to overcome this drawback, we propose delimiting the impact of the variable elements through the definition of Object Constraint Language (OCL) over stereotypes. To specify these constraints, we propose stereotypes expressing the fundamental elements and the variable ones. Furthermore, we present, in this work, the checking of each pattern diagram consistency using the proposed OCL constraints.

Read the paper · More papers on PaperTik