Begin by making sure that the team and key stakeholders understand what services
are and the types of content that compose a service model. See Concept: Service and Concept: Service Model.
This practice heavily leverages the Object Management Group's SoaML specification
for describing service-oriented systems. Ensure that the team is familiar with
SoaML
and the SoaML
Specification.
Ensure that the team understands the general Service Specification workflow.
Review Guideline: Service Specification Workflow Description.
For organizations or projects that are primarily interested in the functional specification of services, the Apply Service Litmus Test, Identify Service-Oriented Solutions and Specify Service-Oriented Solutions tasks will suffice.
Organizations or projects that are focused mainly on developing technical
services can adopt, in addition to the previously listed tasks, Document Service Non-functional Requirements and Perform Component Specification.
Organizations that are interested in ensuring strong ties between concerns of the business and IT considerations also
need to adopt Perform Subsystem Analysis.
Patterns
In addition to the conventional tasks, concepts, and guidelines that
we provide to support this practice, we also document a series of 12 best practices
that we describe collectively as SOA
Architectural Patterns. We suggest that you examine these patterns
and use them to guide your overall practice of service design.
Common pitfalls
Many SOA approaches fail due to a lack of governance. Properly identifying,
specifying, realizing, and implementing a service is only one part of the bigger
picture. Dealing with service governance challenges before deploying a service
in production is a proven success factor. Service governance includes these
challenges:
-
Establishing decision rights
- Defining high-value business services (by applying the Service Litmus Test)
-
Managing the lifecycle of assets
-
Measuring effectiveness
Measures of success
- Each exposed service has passed the Service Litmus Test, and the test results
have been documented.
- Each exposed service has been completely specified in the Service Model.
- The nonfunctional requirements for each exposed service have been properly
defined and clearly allocated to the service.
Service Specification Workflow
You can find a suggested workflow here.
|