Free Newsletters

   All InfoWorld Newsletters
Real World SOA | David Linthicum » Common Service Descriptions could be a key to Governance

January 04, 2007 | Comments: (0)

Common Service Descriptions could be a key to Governance

When reviewing both WSDL and UDDI, the information you're able to obtain about services are very low level indeed, allowing you to both discover and bind to a service...let's face it, that is what they were designed to do. However, neither WSDL nor UDDI provides the "meta" information that will prove useful as we leverage both private and public services. We need a common standard.


There are a few more dimensions we need to address including: semantics, purpose, authentication, dependencies, and service levels. These by the way, are only basic suggestions, other dimensions and even sub-dimensions are all allowable.

Semantics, is a no brainer and it's been known for awhile that semantics are a weak point of Web services. Today we are attempting to solve this problem with new standards such as The Semantic Web, or more often through proprietary mechanisms, so I really don't need to sell this dimension. This is a pain point for most service-oriented architects.

Purpose means that we have a common notion of the purpose of the service, such as a service that written to update cash in an accounting system, or a service that controls a large inventory system. Here we should document the uses of the service, examples, and any calling information needed.

Authentication would provide the security element to a service, including who's authorized to use it, identity management issues, and any special security issues such as the use of encryption.

Dependencies would define any other services encapsulated inside of a service where the calling service is dependent upon. For instance, an inventory control service may leverage a public service to determine the date and time, that needs to be documented as a dependency for obvious reasons (e.g., that service dies so does your service).

Finally, we need to define service levels. In other words, the service levels you can expect from a particular service including standard outages and accessibility issues, such as limited bandwidth. This will allow those creating a composite application around a group of services to determine the service levels of the composite application, which is only as good as the services that make up the composite application.

Clearly we need to go a few more levels of detail down to better define the notion of service description as well as the properties we need to track within each service. Perhaps we can meld this into an existing standard, much in the same way metadata is moving towards a standard.

However, I suspect it will still be the Wild West out there for awhile as SOAs moves out of the playground and into business critical production systems, which seems to be occuring now. Thus, we better have some sense of how to define, share, and leverage service descriptions in a common way, or it will be a very confusing world.

Posted by Dave Linthicum on January 4, 2007 05:52 AM


RATE THIS ARTICLE:





 

  •  
  • COMMENTS




Agree completely that effective governance of an SOA initiative demands more than is provided by WSDL and UDDI, not least because an IT service (like one in the real-world) is something that is experienced, which means understanding the lifecycle of the service from development through to operational monitoring and reporting.

Also, I would argue that WSDL and UDDI are primarily oriented towards the definition of obligations and expectations of the provider of the service and not the interaction between service consumers and providers, reflecting the development/integration centric origins of both web services and the majority of vendors promoting SOA approaches.

It is useful to consider the notion of a service contract, which defines the obligations and expectations of service providers and consumers, in terms of capturing the additional information you outline: the functional (the "what"); quality of service (the "how well") and commercial (the "how much the how well" costs) aspects of the interaction between service providers and consumers.

Policies, for example expressed in WS-Policy (once the semantics for different types of policy are defined) could then be used to enforce aspects of the contract through delegation to the runtime infrastructure e.g. for authentication, authorisation.

As an aside, an additional benefit of contracts is that they provide a means by which the IT organisation can capture business requirements of services.

Posted by: Neil Macehiter at January 4, 2007 07:09 AM

Technology White Papers

 

InfoWorld Technology Marketplace

» Technology White Papers Library

Technology White Papers by Topic

Technology White Papers E-mail Alert

Find out when the latest white paper is available:
 
 
» BUY A LINK NOW

Sponsored Technology Links