Designing a service consists of several actions, such as:
- Define the functionality it offers
- Design the interface
- Design the operations and the functionality the operations offer.
- Design the parameters of the operations.
- Design the return value or the effect of the operation.
- Design test cases for the operations.
- Design the contract
- Define who is allowed to use the service and who can use what operation.
- Decide how often the service is available.
- Define the load the service should be able to handle.
- Define other relevant quality of service attributes.
- Design the implementation
- Decide what tool or language you are going to use for the implementation.
- Design the components you need for the implementation.
- Decide what tools to use to test the implementation. ...