SOA patterns: proposal for 'relaxed service implementation'

SOA patterns: proposal for 'relaxed service implementation'

Summary: Building a service that has a standardized WSDL, but still can accept input data of poor quality and perform its tasks?

SHARE:

Here is another candidate SOA pattern submitted and being considered by the SOA patterns community process. If approved, it will be added to the established SOA patterns outlined at SOApatterns.org and in the book SOA Design Patterns (coordinated by Thomas Erl).

Candidate SOA pattern: Relaxed Service Implementation

At issue: A popular way to describe contracts is WSDL definitions. WSDL definitions also make life easier for client developers in that it enables them generate the code necessary to actually call the services. Sometimes though, the auto-generation doesn't work properly. In using outdated technology, there may be no support for auto generating clients. Another reason is that different technical platforms interpret the definitions differently. Due to these reasons a service might receive input data of poor quality.

Solution: Publish a standardized WSDL but allow any kind of message to get through the message processing layer. Let the underlying implementation inspect the message and act according to the contents of the message.

Application: Schema validation is moved to the underlying service logic or a service agent. When schema validation fails parsing techniques, e.g. Xpath, are used to further process the incoming message.

Impacts: Requires additional development effort, might affect performance and security.

Principles: Standardized Service Contract, Service Loose Coupling, Service Reusability

SOA proponents, enterprise architects, and IT professionals are invited to submit patterns they have identified for potential inclusion. SOA design patterns typically represent field-tested solutions, and organize intelligence into referenceable formats, and are intended to be repeatable by IT professionals.

Topics: Enterprise Software, Browser, Software, Software Development

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.

Talkback

3 comments
Log in or register to join the discussion
  • Might affect performance and security...

    Says it all really.

    This is why we can't have nice things in the cloud.
    wolf_z
  • RE: SOA patterns: proposal for 'relaxed service implementation'

    This definitely makes sense where the client resources are very limited eventhough it is bigger effort on the server side and makes the service logic complex.
    Ram U
  • RE: SOA patterns: proposal for 'relaxed service implementation'

    Yeah, this make sense, but during different phases like Unit testing, Integration Testing and UAT Testing, we can easily test all the data flow and data formats (from consumer and services provider) before we moved to production environment, then both the Service Consumer and Service Provider side going to be same (Data Flow, Formats).I feel, it is very costly to do a schema validation on the Service Provider side, for each and every request, even though, 90% of transaction are valid transaction,... it is only my view, your thought on this....
    babuk7