I'm reading about SOA and the four tenets thats required to make a SOA-application. I have tried different sources, but the explainations is twisting. Im searching for something that is a bit less abstract. Is my interpretation correct?
The four tenets is:
- Services have explicit boundaries
- Services are autonomous
- Services share schema and contract, not class
- Services interoperate based on policy
My interpretation is:
- The methods that a client may use shall be easy to use and well defined.
- Services shall not be dependent on others. Change of one service shall not affect another in any way.
- A scheme represent the data that will be sent, contract contains the defined methods for a service. To make a system loose coupled you share scheme and contract instead of classes and objects.
- A policy to use a service may be that a particular type of binding is required so it may be used. Anyone that want to use this service, must connect to it with this type of binding.