1. Home
  2. Docs
  3. Chapter 10. SoaML
  4. 1. SoaML Diagrams
  5. How to draw a Services Architecture Diagram in SoaML

How to draw a Services Architecture Diagram in SoaML

Download PDF

Understanding how people, team and organizations work together for a goal enables them to work more cohesively using services without getting overly coupled. SoaML enables modelers to build a services architecture model for this purpose. The services architecture put together the service specification and participants, and shows how they work together to achieve a goal.

Services architecture diagram is a SoaML diagram that represents services architecture.

A sample services architecture diagram

Creating services architecture diagram

  1. Select Diagram > New from the application toolbar.
  2. In the New Diagram window, select Services Architecture Diagram.
  3. Click Next.
  4. Enter the diagram name and description. The Location field enables you to select a model to store the diagram.
  5. Click OK.


The description of notations is either extracted or derived from the OMG SoaML Specification v1.0.1.

Name Representation Description
Services Architecture A ServicesArchitecture (a SOA) describes how participants work together for a purpose by providing and using services expressed as service contracts. By expressing the use of services, the ServicesArchitecture implies some degree of knowledge of the dependencies between the participants in some context. Each use of a service in a ServicesArchitecture is represented by the use of a ServiceContract bound to the roles of participants in that architecture.
Internal Participant Participants who work together in an architecture.
External Participant   External participant uses the “shared aggregation” feature of UML to show that these roles are external to the architecture while the other roles are internal.
Service Contract Use (CollaborationUse)   A CollaborationUse explicitly indicates the ability of an owning Classifier to fulfill a ServiceContract or adhere to a ServicesArchitecture. A Classifier may contain any number of CollaborationUses that indicate what it fulfills. The CollaborationUse has roleBindings that indicate what role each part in the owning Classifier plays. If the CollaborationUse is strict, then the parts must be compatible with the roles they are bound to, and the owning Classifier must have behaviors that are behaviorally compatible with the ownedBehavior of the CollaborationUse’s Collaboration type.
Role Binding   A CollaborationUse contains roleBindings that binds each of the roles of its Collaboration to a part of the containing Classifier.