Skip to main content
Have a personal or library account? Click to login
Mathematical structures in pattern organizations Cover
Open Access
|Jan 2011

Abstract

Since the introduction of design patterns, a large number of patterns have been identified and documented. As a result, patterns in the literature relate one another in different ways. Unfortunately, most of these patterns are not properly organized. In applying these patterns in to problems at hand novice designers encounter many difficulties such as identification and selection of collectively applicable set of patterns that suits the problem at hand. We investigate mathematical structures in existing pattern organization techniques such as pattern catalogues, pattern systems and pattern languages. Then we attempted to use these mathematical structures in developing a new organization technique. This paper proposes a new organization method and illustrates it with a collection of object oriented patterns drawn from the literature. Our investigation indicated that existing pattern organizations form graph structures and categorical structures. These structures are formed by patterns and relationships among them. The proposed organization method organizes patterns into sequences according to the relationships among patterns. This organization consists of two types of categories: major category and alternative category. The major categories are defined based on the Uses relationship and the alternative categories are defined based on the Variants, Refines and Conflicts relationships. Each major category consists of patterns that have potential to form a pattern system or a pattern language. So they assist practitioners in finding a sequence of related patterns that can be collectively applied to solve complex problems. Each alternative category consists of patterns that provide alternative solutions to the same problem or similar problems. It assists in finding a number of possible solutions (patterns) to a particular problem. The proposed organization combines these two types of categories by structuring them into pattern sequences. A pattern sequence consists of a major category and a collection of related alternative categories. Pattern sequences assist practitioners in finding a collectively applicable patterns and possible alternatives to them. So pattern sequences facilitate the selection of most appropriate sequences of patterns to solve complex problems without searching through the pattern literature.    

Key Words: Design Patterns; Pattern Catalogues; Pattern Systems; Pattern Languages; Pattern Sequences; Category Theory; Graphs

DOI: 10.4038/josuk.v4i0.2697

J Sci.Univ.Kelaniya 4 (2008): 46-67
Language: English
Page range: 46 - 67
Published on: Jan 17, 2011
Published by: Faculty of Science of the University of Kelaniya, Sri Lanka
In partnership with: Paradigm Publishing Services

© 2011 Saluka R Kodituwakku, published by Faculty of Science of the University of Kelaniya, Sri Lanka
This work is licensed under the Creative Commons License.