Service oriented architecture (SOA) as other technologies and methodologies, is a good idea. The concept of design isolate services (modules, objects, …) interconnected is old. Software developers, analysts and researchers have promised this interoperability since software engineering became a structured discipline. Thus, the deployment of these logic pieces (business logic) should, theoretically, improve the overall IT’s performance through a unique service catalogue, better software control and maintenance, robuster interfaces, reusability and more scalable environments. That’s is better software, better response to business needs, lower costs and flexibility. For everyone that has been involved in a software development project it would be self-evident. But what’s happening with SOA? It’s another hype? . Christopher Koch from CIO magazine has asked the same thing in a recent post.
Following Koch’s arguments it’s clear that the real challenges aren’t technological or theoretical. The problem is the organization itself!.
Jeff Gleason, director of IT strategies for TransAmerica Life Insurance Company rolls his eyes. "I’ve heard this a hundred times, where a business sponsor said, 'Well, if you’re going to make me pay for creating this service the first time, you just blew away the cost benefit of my project, and it’s not going to get sponsored. And so I want you to go ahead and hard code it because I need that functionality.'”
Of course, why a decent manager must scarify a part (or all) of his ROI in order to provider a service to other business units and IT people? . This is a special example of public goods, considering the organization as the public (this isn’t unrealistic especially in huge corporations). Economists define it in different ways but the point is, that something is a public good if consumer don’t need to pay for its consumption so the producer can’t control who gets the good. A typical real-life example is Radio broadcasting, it is impossible to radio channels to control who listen the station and make them pay for it. Therefore, public goods are commonly underproduced. Is a matter of incentives and, consequently, it must be addressed as it is.
That means that all public goods are underproduced? Of course not, there are options. Internet and radio broadcaster have found a solution. They sell a valuable product with negative return (Contents) in a bundle with a negative value but positive return (Advertisement). The net benefit is a surplus for the producer (and for the consumer). Other option is to make the good private (or clubbed) using tech to make pay the customer (Cable TV, Subscription,…) or let the government (in this case the corporation bureaucracy) to provide those goods. The best solution for this particular case, is the so called Coasenian solution (Ronald Coase): The potential beneficiaries of the each SOA service could gather funds (or transfer cost) in order to produce the service.
As we saw, there isn’t an unique solution. Each organization has its own characterics and management style, cost profile and strategies. The Coasenian solution to produce SOA in high centralized and hierarchical organization could simply don’t work. And maybe the philosophy embedded in SOA doesn’t fit to them. They should better change their organization model before adopting these technologies, or simply use other models.
StrategIT Tip: SOA as other technologies are great ideas from engineers; but organizations a much more complex environments. Structural and strategic (as SOA) projects should take in account those issues as an integral part of the project.