9.6 A Note on This Language

9.6 A Note on This Language

The pattern language in this book is subject to the same criticisms that I've leveled at the body of software patterns in general. The patterns here don't rise to the level of literature, and the pattern language itself lacks the obvious connectedness of Alexander.

Ideally, patterns about modeling should be able to incorporate social dimensions and cognitive dimensions where these are useful. At the same time, they need to be pithy and practical. In order to achieve these goals, I used a framework that will prove serviceable for evolving this language over time, and a language structure that fits the subject matter, rather than following Alexander directly or copying any existing software patterns approach.

The connectedness of the language is built into the recursiveness of its levels and the commonality of its idioms. It is explicitly expressed in a discussion of common forces that precedes the body of each chapter, and brief notes on related patterns and other material that end each chapter.

I broke the language into levels and idioms. The levels (Domain, Product, and Component) reflect the implicit architecture of what is being built: models of modern software-intensive systems. The levels themselves are recursive: for example, patterns at the Domain level can also be applied at the Product level, and to some extent at the Component level. The levels are conceptually convenient, but not watertight. The idioms apply across all levels.

Alexander connected his patterns between levels and within levels via references in the context section. With a smaller number of patterns, I drew out common forces for each level that are inherited in whole or in part across many of the patterns in that level. The connectedness between levels has been left, for the moment, to the discussion that begins a chapter.

Alexander connected his patterns to life and the world outside architecture through non-architectural quotes and ideas embedded in his patterns. I did this a little, but I relied, for the most part, on using the introductory chapters and this end section as the location for those connections.

So, to some extent, my solutions to shaping a language are compromises that may disappear with more patterns. However, they also represent first thoughts on how a language like this one should ideally be shaped.



A UML Pattern Language
A UML Pattern Language (Software Engineering)
ISBN: 157870118X
EAN: 2147483647
Year: 2005
Pages: 100
Authors: Paul Evitts

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net