Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Precise Visual Specification of Design Patterns
ECCOP '98 Proceedings of the 12th European Conference on Object-Oriented Programming
A UML-Based Pattern Specification Technique
IEEE Transactions on Software Engineering
Precise Modeling of Design Patterns in UML
Proceedings of the 26th International Conference on Software Engineering
Responsibilities and Rewards: Specifying Design Patterns
Proceedings of the 26th International Conference on Software Engineering
Using Integrated Metamodeling to Define OO Design Patterns with Object-Z and UML
APSEC '04 Proceedings of the 11th Asia-Pacific Software Engineering Conference
Precise modeling of design patterns
UML'00 Proceedings of the 3rd international conference on The unified modeling language: advancing the standard
Formalizing the UML class diagram using object-Z
UML'99 Proceedings of the 2nd international conference on The unified modeling language: beyond the standard
Static Class Elements for Object-Z
Electronic Notes in Theoretical Computer Science (ENTCS)
A tool for a formal pattern modeling language
ICFEM'06 Proceedings of the 8th international conference on Formal Methods and Software Engineering
Hi-index | 0.00 |
This paper presents a way to describe design patterns rigorously based on role concepts. Rigorous pattern descriptions are a key aspect for patterns to be used as rules for model evolution in the MDA context, for example. We formalize the role concepts commonly used in defining design patterns as a role metamodel using Object-Z. Given this role metamodel, individual design patterns are specified generically as a formal pattern role model using Object-Z. We also formalize the properties that must be captured in a class model when a design pattern is deployed. These properties are defined generically in terms of role bindings from a pattern role model to a class model. Our work provides a precise but abstract approach for pattern definition and also provides a precise basis for checking the validity of pattern usage in designs.