5.12. SOA Means Openness

Any single change to one part of the SOA may affect many other parts and users of the system. To go back to our parcel shipment example, let's say your company decides to standardize on metric units of weight: no more pounds and ounces for you; from now on you are dealing strictly in grams and kilograms.

Although it might take a lot of work, you might even be able to pull it off and have all programs that interact with data converted to kilograms.

But what about your customers and suppliers? What if they are not prepared for the change from pounds to kilograms? The effects could be catastrophic and result in their taking their business to your competitors. Clearly, any change like that would have to involve many interested parties beyond your direct control.

That is to say, SOA provides enormous potential for cost savings, but you can lose much of the business benefits that SOA provides from reusing software assets and improving business processes if you break the code and infuriate your best customers or most important partners.

To protect your organization from these business risks, you are going to need a solid SOA governance strategy for determining how services are handled in their different life cycle stages, from inception to discovery, to invocation and consumption.

It is crucial that developers, both internal and external, have some sort of participation in the process for determining what services are published and become a part of the SOA.

Get The Next Leap in Productivity: What Top Managers Really Need to Know about Information Technology now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.