Chapter 1. Pattern-Oriented Analysis and Design
The Role of Patterns in Software Development
As the complexity of software systems increases, we look for approaches to facilitate the development of software applications. Design patterns [Gamma et al. 1995; Buschmann et al. 1996] and design frameworks [Johnson & Foote 1988; Fayad & Schmidt 1997; Pree 1996; Fayad & Schmidt 1999] are among these promising approaches. Design patterns promise reuse benefits early in the development lifecycle. To reap the benefits of deploying these proven design solutions, we need to define design composition techniques to construct applications using patterns. Versatile design models should be developed to support these techniques.
Reusing software in practical applications ...