Uppsala University Department of Information Technology

Technical Report 1999-004

Towards a Mathematical Foundation for Design Patterns

Amnon H. Eden, Yoram Hirshfeld, and Amiram Yehudai

May 1999

We identify a compact and sufficient set of building blocks which constitute most design patterns of the GoF catalog: uniform sets of classes or functions, function clans, class hierarchies, and regularities (morphisms) thereof. The abstractions observed are manifested within a model in symbolic logic and defined in LePUS, a declarative, higher order language. LePUS formulae concisely prescribe design patterns in a general, complete, and accurate manner. We provide a natural, condensed graphic notation for every LePUS formula and demonstrate how design patterns are faithfully portrayed by diagrams in this notation. We conclude by defining refinement (specialization) between patterns by means of predicate calculus and illustrate how the logical formalism of LePUS facilitates tool support for the recognition and implementation of design patterns.

Available as PDF (170 kB), PDF (131 kB, no cover), compressed Postscript (134 kB, no cover), Postscript (776 kB, no cover), and compressed Postscript (185 kB)

Download BibTeX entry.

Uppsala Universitet