Formal specification of structural and behavioral aspects of design patterns

By: Shouvik Dey


Design patterns are usually modeled and documented in natural languages and visual languages, such as the Unified Modeling Language. Several UML extensions have been provided to keep track of pattern-related information when a design pattern is applied or composed with other patterns. But several of these are not taken into account while describing a formal specification language. This paper suggests a formal specification language FSDP (Formal Specification of Design Pattern) which combines some of the research works on UML extension mechanisms to formally specify and recognize design pattern from UML class diagram. The FSDP grammar has been verified by ANTLR (ANother Tool for Language Recognition). A simulator tool has been developed from the FSDP grammar to automate the software pattern design techniques. The tool has the capability to create store and retrieve UML class diagrams within design patterns where the model elements of the design patterns play specific roles. The tool verifies the textual contents of the class diagram according to FSDP grammar rules and generates an XML file which contains the detail design. The stored pattern information within the XML file can then be reused by the tool to generate the graphical notation and generate Java codes.


Reuse Design Patterns; Pattern composition; UML; Class diagram; Formal representation; ANTLR

Cite as:

Shouvik Dey, “Formal specification of structural and behavioral aspects of design patterns”, Journal of Object Technology, Volume 9, no. 6 (November 2010), pp. 99-126, doi:10.5381/jot.2010.9.6.a5.

PDF | DOI | BiBTeX | Tweet this | Post to CiteULike | Share on LinkedIn