Dirk Riehle's Industry and Research Publications

Design Pattern Density and Design Maturity

JUnit is a widely-adopted unit testing framework for Java, developed by Kent Beck and Erich Gamma. In their discussion of JUnit 3.8’s design, the authors state:

Notice how TestCase, the central abstraction in the framework, is involved in four patterns. Pictures of mature object designs show this same ‘pattern density’. The star of the design has a rich set of relationships with the supporting players.

The notion of design pattern density has been around forever, but with little serious work being done to refine the idea. I’m calling on all experts (reading this blog…) to tell me whether they agree or disagree with the following statement:

A high design pattern density implies a high maturity of the design in which the patterns occur.

The assumption here of course is that the use of design patterns happened naturally and was not inflated by ulterior motives. So… yes or no: Does a high design pattern density indicate a mature design? Or, does it at least correlate positively?

Disclaimer: I’m using Kent’s and Erich’s statement as the motivation for a paper on design pattern density, and I would like to beef it up with further expert witness.

Subscribe!

Comments

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Navigation

Share the content

Share on LinkedIn

Share by email

Share on X (Twitter)

Share on WhatsApp

Featured startups

QDAcity makes collaborative qualitative data analysis fun and easy.

Featured projects

Open data, easy and social
Engineering intelligence unleashed
Open source in products, easy and safe