While Moore’s Law and fierce competition among vendors virtually guarantee that your IT dollar will continuously gain in purchasing power, don’t let the good deals blind you to an underlying truth: the complexity of what you’re buying may be no bargain at all.
New thinking may be called for, a new way to frame IT strategy that provides a handle on complexity while improving ROI and better aligning IT activities with the enterprise as a whole.
That, at least, is the argument made by proponents of service-oriented architecture, or SOA. While the term underscores the IT industry’s continuing inability to concoct catchy phrases, don’t let its clunkiness lead you to believe that it can be left solely to the IT department. SOA promises a more momentous shift in business technology than client/server or even Web-based computing.
Traditionally architected IT systems tightly intertwine so many aspects of the business processes they automate that making even simple changes to some facet of the operation is enormously difficult. Similarly, it’s difficult to get several systems — each originally installed, potentially, by a different business unit pursuing its own tactical goals, with no coordinated planning — to share their data or cooperate in executing complex business transactions. Either a company springs for a costly integration project or its employees cope by opening different applications on the same crowded PC screens and flipping back and forth between them. There are some clever new workarounds, but while they can help extend the life of older applications, they can’t address the larger risk of an entire IT system collapsing under its own weight.
Not so with the new architecture. Ongoing, incremental, unanticipated change is its raison d’etre. SOA calls for enterprises to create, acquire, and make use of software functionality in the form of easily containable and reusable services that are easily joined to create useful and complete applications. In other words, monolithic gives way to mix-and-match, as Lego-like building blocks of software are recombined in almost endless combinations. An individual service can handle anything from a frequently invoked IT-level task such as converting dollars to a foreign currency to full-blown business processes such as scheduling a factory assembly line. Each service is a self-contained chunk of functionality or process that can be called into action by traditional computer programs and other services. Indeed, many services will end up being composed of other services, which in turn may contain still more, and so on.
While this emerging category of IT services is based on standards, they are defined in purely functional terms, without reference to any details about how or where they are executed. That, in theory, makes them easy to stitch together, pull apart, reconfigure, reuse, and even replace — again and again, any time a company wants to change a business process. This is possible because these services and the functions they perform are not nearly as tightly bound together as they would be in traditional software. Instead, as techies put it, the services are “loosely coupled.”
(For more on SOA and how it’s helped companies such as AXA Financial to save millions of dollars in development costs, read CFO IT magazine’s Fall 2004 article “Coping with Complexity.”)