Understanding computers and cognition
Understanding computers and cognition
Advanced C++ programming styles and idioms
Advanced C++ programming styles and idioms
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Pattern: half-object + protocol (HOPP)
Pattern languages of program design
Refactoring: improving the design of existing code
Refactoring: improving the design of existing code
Formal specification of the variants and behavioural features of design patterns
Journal of Systems and Software
A pattern language for touch point ecosystem user experience: a proposal
Proceedings of the 3rd International Conference on Human Computer Interaction
Hi-index | 0.00 |
This paper aims to help the writers of pattern languages build better pattern languages. It focuses not on the esthetics of pattern languages, but on their structure: how patterns work together to build a system. The paper assumes that a pattern language is a designed system and, therefore, theory about system design and evolution underlies the language. In particular, the process of symmetry breaking has long been recognized as a means of analysing the processes by which natural systems form and evolve, and is used as a basis for this language. The pattern language identifies six patterns: Clustering of Related Forces, Piecemeal Growth, Local Symmetries, Cross Linkages, Local Repair, and The Void. Multidisciplinary examples are included with each pattern to verify that the fundamental theory is, in fact, fundamental.