Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Pattern-based design recovery of Java software
SIGSOFT '98/FSE-6 Proceedings of the 6th ACM SIGSOFT international symposium on Foundations of software engineering
Proceedings of the 20th international conference on Software engineering
Design pattern modelling and instantiation using DPML
CRPIT '02 Proceedings of the Fortieth International Conference on Tools Pacific: Objects for internet, mobile and embedded applications
Towards pattern-based design recovery
Proceedings of the 24th International Conference on Software Engineering
A Theory of Object-Oriented Design
Information Systems Frontiers
Precise Visual Specification of Design Patterns
ECCOP '98 Proceedings of the 12th European Conference on Object-Oriented Programming
Principles in formal specification of object oriented design and architecture
CASCON '01 Proceedings of the 2001 conference of the Centre for Advanced Studies on Collaborative research
Precise specification and automatic application of design patterns
ASE '97 Proceedings of the 12th international conference on Automated software engineering (formerly: KBSE)
A Visual Language for Design Pattern Modelling and Instantiation
HCC '01 Proceedings of the IEEE 2001 Symposia on Human Centric Computing Languages and Environments (HCC'01)
Design Recovery by Automated Search for Structural Design Patterns in Object-Oriented Software
WCRE '96 Proceedings of the 3rd Working Conference on Reverse Engineering (WCRE '96)
Instantiating and Detecting Design Patterns: Putting Bits and Pieces Together
Proceedings of the 16th IEEE international conference on Automated software engineering
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
A meta-modeling approach to specifying patterns
A meta-modeling approach to specifying patterns
Efficient Relational Calculation for Software Analysis
IEEE Transactions on Software Engineering
A practical pattern recovery approach based on both structural and behavioral analysis
Journal of Systems and Software - Special issue: Software engineering education and training
Modeling architectural patterns using architectural primitives
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Automatic verification of design patterns in Java
Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering
A pattern language for pattern language structure
CRPIT '02 Proceedings of the 2002 conference on Pattern languages of programs - Volume 13
Inference of Design Pattern Instances in UML models via Logic Programming
ICECCS '06 Proceedings of the 11th IEEE International Conference on Engineering of Complex Computer Systems
Reverse Engineering of Design Patterns from Java Source Code
ASE '06 Proceedings of the 21st IEEE/ACM International Conference on Automated Software Engineering
An approach to evaluating structural pattern conformance of UML models
Proceedings of the 2007 ACM symposium on Applied computing
Formalising Design Patterns in Predicate Logic
SEFM '07 Proceedings of the Fifth IEEE International Conference on Software Engineering and Formal Methods
The design navigator: charting java programs
Companion of the 30th international conference on Software engineering
Evaluating pattern conformance of UML models: a divide-and-conquer approach and case studies
Software Quality Control
On the Composition of Design Patterns
QSIC '08 Proceedings of the 2008 The Eighth International Conference on Quality Software
Specifying Behavioural Features of Design Patterns in First Order Logic
COMPSAC '08 Proceedings of the 2008 32nd Annual IEEE International Computer Software and Applications Conference
Do Design Patterns Impact Software Quality Positively?
CSMR '08 Proceedings of the 2008 12th European Conference on Software Maintenance and Reengineering
Tool Support for Design Pattern Recognition at Model Level
COMPSAC '09 Proceedings of the 2009 33rd Annual IEEE International Computer Software and Applications Conference - Volume 01
A metamodeling approach to pattern specification
MoDELS'06 Proceedings of the 9th international conference on Model Driven Engineering Languages and Systems
1FACS'96 Proceedings of the 1st BCS-FACS conference on Northern Formal Methods
ICFEM'10 Proceedings of the 12th international conference on Formal engineering methods and software engineering
Design pattern solutions as explicit entities in component-based software development
Proceedings of the 16th international workshop on Component-oriented programming
A methodology to assess the impact of design patterns on software quality
Information and Software Technology
An institution theory of formal meta-modelling in graphically extended BNF
Frontiers of Computer Science in China
ACM Transactions on Software Engineering and Methodology (TOSEM) - In memoriam, fault detection and localization, formal methods, modeling and design
Visualizing protected variations in evolving software designs
Journal of Systems and Software
The Journal of Supercomputing
Hi-index | 0.00 |
The formal specification of design patterns is widely recognized as being vital to their effective and correct use in software development. It can clarify the concepts underlying patterns, eliminate ambiguity and thereby lay a solid foundation for tool support. This paper further advances a formal meta-modeling approach that uses first-order predicate logic to specify design patterns. In particular, it specifies both structural and behavioural features of design patterns and systematically captures the variants in a well-structured format. The paper reports a case study involving the formal specification of all 23 patterns in the Gang of Four catalog. It demonstrates that the approach improves the accuracy of pattern specifications by covering variations and clarifying the ambiguous parts of informal descriptions.