There are two aspects to this question:
1. What information should you provide that describes the service to help potential consumers determine whether they want to use the service (Service Description)?
2. What information should you capture that describes the terms and conditions associated with the specific relationship between the a particular service consumer and service provider (Service Contract)?
A Service Description should include whatever information a service consumer needs to determine whether the service meets its needs. That includes interface definitions (e.g., abstract WSDL and schemas), semantic descriptions and documentation (e.g., prose descriptions), interaction patterns (e.g., call this operation before that one), interaction policy options (e.g., accepted authentication mechanisms, privacy policies, etc.), performance guarantees and/or limitations (e.g., SLA options), support options, enhancement options, payment/remuneration options, etc.
A Service Contract represents the specific agreements that both parties settle on, as well as specific instructions on how to communicate, e.g., concrete WSDL with endpoints, agreed-to interaction policies, SLAs, support agreements, enhancement agreements, remuneration agreements, etc. Note that SLAs should govern not just service performance, but also the load that the consumer is permitted to submit.
Dig Deeper on Topics Archive
Related Q&A from Anne Thomas Manes
Anne Thomas Manes explains the differences between open source clients and open source implementations. Continue Reading
Anne Thomas Manes discusses the best way to go about creating an enterprise data dictionary and why the systems works well. Continue Reading
Anne Thomas Manes explains the difference between 'hard' real time and 'live' real time systems. Continue Reading
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.