login

Dotplot patterns: A literal look at pattern languages

Theory and Practice of Object SystemsPublished 1 January 1996
Jonathan I. Helfman
Citations51

TL;DR

The dotplot data visualization technique and its potential for contributing to the identification of design patterns is described and one example inspired a design pattern for a new programming language.

Abstract

This article describes the dotplot data visualization technique and its potential for contributing to the identification of design patterns. Pattern languages have been used in architectural design and urban planning to codify related rules-of-thumb for constructing vernacular buildings and towns. When applied to software design, pattern languages promote reuse while allowing novice designers to learn from the insights of experts. Dotplots have been used in biology to study similarity in genetic sequences. When applied to software, dotplots identify patterns that range in abstraction from the syntax of programming languages to the organizational uniformity of large, multicomponent systems. Dotplots are useful for design by successive abstraction—replacing duplicated code with macros, subroutines, or classes. Dotplots reveal a pervasive design pattern for simplifying algorithms by increasing the complexity of initialization. Dotplots also reveal patterns of wordiness in languages—one example Inspired a design pattern for a new programming language. In addition, dotplots of data associated with programs Identify dynamic usage patterns—one example identifies a design pattern used in the construction of a UNIX(tm) file system. © 1996 John Wiley & Sons, Inc.

Keywords

Computer Science