Artifact: Service Provider
This artifact is a model element that groups a related set of services.
Work Product Kinds: Model Element

The following people use the service providers:

  • Implementers, for an understanding of the aggregation of services and the possible impact on deployment choices.
  • Designers of services, in understanding the constraints of the grouping of services.
  • Those who design the next version of the system, to understand the functionality in the service model, and specifically the constraints in moving services between providers.
  • Those who test the classes, to plan testing tasks.
Container Artifact
RolesResponsible: Modified By:
Main DescriptionThe Service Provider is a software element that provides one or more services. In modeling terms one would most usually expect to see a UML component here, however such a restriction seems arbitrary and so the metaclass is noted as Class for more flexibility. A service provider has a property that captures information about its location although the meaning of this is implementation dependent. The Class acting as the service provider may not expose any attributes or operations directly, only public ports may be provided (stereotyped as service) and these are typed by service specifications.
Representation OptionsUML Representation:

Class or Component , stereotyped as <<Service Provider>>. A service provider shall not have operations, attributes or behavior specified outside of those implemented by the services. Any Port on a service provider shall be stereotyped <<Service>>


  • allowedBindings : [*] String - denotes the allowed platform binding mechanism a channel may use in connecting to the service; examples might be SOAP-RPC, SOAP-Doc, HTTP-Get, and so on.