O'Reilly logo

Pattern-Oriented Software Architecture: A Pattern Language for Distributed Computing, 4th Volume by Douglas C. Schmidt, Kevlin Henney, Frank Buschmann

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 18. Adaptation and Extension

Adaptation and Extension

A set of pluggable adapters © Frank Buschmann

The only constant in life is change! This wisdom from the 17th century French author Francçois de la Rochefoucauld seems particularly true of software. Software is a 'living thing.' The ability of applications and components to adapt to specific environments, extend to meet customer-specific requirements, and evolve over their lifetime, can be a deciding factor for their long-term use and success. This chapter presents thirteen patterns that support developers in building software that is open to adaptation, extension, and evolution.

No single profile covers either the types of modern applications developed or the range of customers for which they are developed. Some applications are specifically developed for a single customer, whereas others are developed as products with a mass market in mind. Although some applications are targeted at a single customer, repeat business for the customer—or for similar applications sought by other customers—can motivate and justify the definition of a common base for the applications to built upon. Even if multiple customers can benefit from a particular software system or infrastructure, each often has unique and specific requirements not yet supported by default. For example:

  • Out-of-band extensions. Customers sometimes request additional algorithms or services that ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required