Mathematical structures in pattern organizations
No Thumbnail Available
Date
2008
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
University of Kelaniya
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.
Description
Keywords
Design Patterns, Pattern Catalogues, Pattern Systems, Pattern Languages, Pattern Sequences, Category Theory, Graphs
Citation
Kodituwakku, Saluka R. 2008. Mathematical structures in pattern organizations. Journal of Science, University of Kelaniya, Sri Lanka, 4: 46-67.