Thursday, June 12, 2008

Reusable processes and SOA

Joe McKendrick has an interesting post on SOA rituals that made me smile.

I agree that hatered against the 'poor beleagured' Silo may be misplaced. Some boundaries are necessary for you to be able to act and implement. If everything in the enterprise was to be implemented and controlled globally, very little could get done.

Joe then describes what he thinks SOA really is - "it is a scope of architecture, like Building Design vs. Urban Planning". I disagree. I think the "Urban Planning" space belongs to Enterprise Architecture. With SOA, I don't worry about what lies behind the service interface. When doing EA, I consider all the technologies and applications and systems in the Enterprise. I look at the gaps in the Business Architecture and look for ways to fill the gaps. I do this irrespective of whether they provide loosely coupled re-usable services or not (which is what I see SOA as doing).

On Reusable processes and SOA

James McGovern has a post where he casts a big shadow on the prospect of reusable services. He thinks reusable business rules might actually work but not reusabe services. In his experience, applications get rebuilt or rewritten if they have to be reused.

The way SOA is generally positioned, services should encapsulate reusable business processes. I don't find too many potentially reusable services when I look around.
  • They require access to data. Enterprise data is often local, not global. Regulatory requirements might prevent you from having global data stores (especially in the banking domain.) In any case, data for UK is likely stored in UK and data for Malaysia is likely stored in Malaysia.
  • The processes differ. The business process in one location may well differ from another location. There are differences in the business environment (cultural, political, administrative, regulatory, legal, geographical, economical etc.) that require that the process be different.
  • They involve people and roles. Large enterprises usually have global employee databases. However, the employees are organised differently and have different roles - again due to different business environments.

These factors greatly diminish the set of services that can be simply reused without customization.

Moving on to other topics

A lot of write offs have occurred since my last post

Some lessons that could be learnt from the subprime crisis -

  • Ways to generate wealth must be sustainable. It is not sustainable to for an industry to "sell lemons to each other indefinitely" as some have described it.
  • By slicing and mincing risk and passing it all around, the overall risk does not go down.
  • Models for risk must seriously take liquidity into account. What is a bond worth if no one wants to buy it?
  • Risk (i.e. loans) should not be created by parties that have no stake in what happens subsequently.