Wednesday, October 04, 2006

Microsoft SOA and BPM Conference: Day 1

Another year passes and here I am at the BPM conference in Redmond again.

Last year the conference was very focused on the impending release of BTS 2006 and the impact of the recently unveiled WinFX (since renamed to .Net 3.0). This year BTS seems to be taking a lesser role and is being presented more as a supporting technology for the - currently fashionable - Services Oriented Architecture (SOA). In fact, if the first day is any indicator SOA is the central theme of the conference with technologies used to support Services Oriented (SO) architectures presented as precisely that, technologies to enable SOA.

Why is SOA the focus of the conference this year?

SOA is certainly nothing new. As my colleague pointed out, 'distributed computing' has been around for many years and was an early attempt to distribute 'services'. Dave Chappelle explained in his keynote that the reason SOA is now so hot is because the communication protocol to communicate services has finally been decided. The Simple Object Access Protocol (SOAP) allows diverse computing environments to communicate in a consistent way which effectively lowers previously near-impenetrable barriers. Chappelle also pointed out that the last time this happened was with TCP/IP when it assumed the mantel of dominant networking protocol and effectively enabled the Internet to be realized by opening up all of the diverse networks and allowing them to communicate with each other. So, it seems that SOA is the focus this year because the technology has reached a critical mass.

What benefit does SOA provide?

Normally, when I explain the benefits to a customer I describe three main benefits but in a couple of the presentations yesterday I came to realize a nagging suspicion about one of the ‘benefits’ that has moved me to officially remove it from my list of SOA benefits. Here are the benefits:
1. Abstraction
2. Accessibility
3. Reusability
For a while, I’ve suspected that my argument for reusability was a bit weak and after hearing others question it yesterday I’ve come to the conclusion that it is very weak. I can think of very few real-world examples where a service has been re-used to the point where it can reasonably be described as a benefit. Usually, a service is too specialized for a business case to be shared by other processes. Other times, the owner of that service has a vested interest (i.e. data ownership) in preventing access by other parties. In fact, the only example that immediately comes to mind of successfully reusing services is with simple ones like GetActiveDirectoryProperty which is a simple service that returns a property value given an account and property name. I think this was successfully reused because the business case was very precise and the AD values were not particularly proprietary.

Anyway, more on the conference to follow…

No comments: