The use of a common platform is born out of the requirement for application integration and business orchestration to be standard, modular, and re-useable.
A common platform encourages modularity through encapsulation of related services and operations and exposing these as a well-defined contract between the solution and other entities.
The platform should provision for the extensibility of services and operations by providing hooks allowing designed extensions of services for entity specific operations.
A platform can provide generic implementations of components which can subsequently be re-applied across solutions. This leverages the domain knowledge and prior effort of the generic implementation allowing the developer to concentrate on the specifics of the component being created.
The platform provides a run-time implementation characterised by an “inversion of control”. This essentially means that an integration solution runs within the control of the platform.
The implementation of services within a platform is not infinite. Their operation and use can be well defined, therefore, it is possible to determine common patterns of usage with regard to application integration projects. Once common patterns are identified it is possible to create templates and commoditise solutions to reduce the development effort.