Roadmap: How to Adopt the Service Specification Practice
This roadmap describes how to adopt the Service Specification practice.
Main Description

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. 

More Information