I have been giving a lot of thought lately to the challenges of creating shared services in an enterprise environment. Shared services remove redundancy within the application portfolio, reduce development and maintenance costs, improve time-to-market for new applications, enable consistency of service delivery, and increase the overall quality of the applications using these services. They form the foundation of a service-oriented architecture (SOA), and bring agility to the organization.
I want to pick on one specific obstacle to the creation of shared service: siloed project funding models. There is an interesting parallel between siloed funding models and the classical Prisoner’s Dilemma problem: both result in a sub-optimal solution. In the classical prisoner’s dilemma, two suspects are arrested and separated for interrogation. Each is offered the same deal: testify against the other or remain silent. If one prisoner testifies against the other and the other remains silent, the first one goes free and the other receives a 10-year sentence. If both testify against the other, they each receive a five-year sentence, and if both remain silent, they each receive a six-month sentence.
No matter what decision the other prisoner makes, each prisoner is better off testifying against the other as they will receive a shorter prison sentence. That is, if prisoner A remains silent, prisoner B will go free if he testifies against prisoner A, but will get six months if he remains silent. If prisoner A testifies, prisoner B will get five years if he testifies, but will get 10 years if he remains silent. The payoff for testifying is always greater than for remaining silent. Or is it?
Using the above logic, both prisoners testify against each other and receive five-year sentences. Somewhat paradoxically, if both prisoners remain silent, they will each only receive a six-month sentence. But I just told you that each prisoner would be better off, regardless of what the other prisoner chooses, if they testify against the other prisoner. Thus the dilemma. The optimal solution can only be achieved if each prisoner trusts the other to remain silent, and remain silent themselves.
In a similar way, some organizations have funding models that give control over project selection and spending to each line of business, with no incentives to drive cooperation or horizontal initiatives. This can present a significant challenge for the development of shared services. Shared services are more costly and take longer to build than proprietary services. More people have to be consulted. More thought has to be put into the design to meet the requirements of all stakeholders, and more time has to be spent on security, reliability, scalability, SLAs, etc…. Over the long-run, these costs are recovered through software reuse, reduced maintenance costs, and increased quality. Just as with the prisoner’s dilemma, the optimal solution can only be reached through trust and partnership.
Apr 17th, 2009 |
