1. Introduction
This paper describes an architectural approach to system development that facilitates adaptation to change so that organisations can effectively depend on a continued service that satisfies evolving business requirements. This approach has been used in a real project in which ATX Software developed an information system for a company specialised in recovering bad credit. The approach is based on:
the externalisation of the business rules that define the dependency of the recovery process on the financial institution and product (e.g., house mortgage) for which the debt is being recovered;
the encapsulation of parts of behaviour into so-called coordination contracts that can be created and deleted at run-time, hence adapting computational services to the context (e.g., institution and product) in which they are called.