Home > SOA Glossary > Design Pattern

Design Pattern

The simplest way to describe a pattern is that it provides a proven solution to a common problem individually documented in a consistent format and usually as part of a larger collection.

The notion of a pattern is already a fundamental part of everyday life. Without acknowledging it each time, we naturally use proven solutions to solve common problems each day. Patterns in the IT world that revolve around the design of automated systems are referred to as design patterns.

Design patterns are helpful because they:

  • represent field-tested solutions to common design problems
  • organize design intelligence into a standardized and easily "referencable" format
  • are generally repeatable by most IT professionals involved with design
  • can be used to ensure consistency in how systems are designed and built
  • can become the basis for design standards
  • are usually flexible and optional (and openly document the impacts of their application and even suggest alternative approaches)
  • can be used as educational aids by documenting specific aspects of system design (regardless of whether they are applied)
  • can sometimes be applied prior and subsequent to the implementation of a system
  • can be supported via the application of other design patterns that are part of the same collection
  • enrich the vocabulary of a given IT field because each pattern is given a meaningful name

Furthermore, because the solutions provided by design patterns are proven, their consistent application tends to naturally improve the quality of system designs.

Note that even though design patterns provide proven design solutions, their mere use cannot guarantee that design problems are always solved as required. Many factors weigh in to the ultimate success of using a design pattern, including constraints imposed by the implementation environment, competency of the practitioners, diverging business requirements, and so on. All of these represent aspects that affect the extent to which a pattern can be successfully applied.