Designing a Service Oriented System
The service concept responds to four principles which are the foundation of information system design:
Modularity: services that constitute a consistent arrangement of functionalities allowing the IT system to be designed as an assembly of autonomous, prefabricated elements.
Interfacing: the service interaction boundary separating the data exchanged by the services from the internal processing carried out to produce these data. The data required and produced by a service define the service interaction interface.
Exchanging by contract: the interface of a service is designed as a set of interactions between the service and its users. This reciprocity defines the roles of the service and of the users in the framework of an interaction contract.
Interoperability: only the exchanged data are to be shared. So, for example, a COBOL program can be associated with a Java program once both are interacting as services exchanging messages. This involves switching from technical integration (COBOL / Java) to semantic integration (what is being talked about in the interaction?).
Moreover, communication standards (HTTP, SOAP) and data description (XML) or interfacing (WSDL) standards have enabled access to information at a lower cost and for all types of organization, so multiplying the interoperability capabilities.