Thursday, August 14, 2008

Runtime Discovery and Composition

Brenda Michelson put up this post from Melvin Greer about SOA and the "Hard Problems". It's good stuff especially this part from Melvin:

Within the engineering category, Mel spoke of altering existing development processes and methodologies for SOA, designing for context awareness, and designing for runtime discovery and composition. In respect to runtime discovery and composition, Lockheed Martin is trying to determine the best way for a running to composition to become aware of newly delivered capability. As an example, Mel called out how the Mars Land Rover continues to receive new capability without returning to earth

I must admit I have always been skeptical about runtime discovery and composition. I just haven't found a lot use cases that ever made sense. I just don't see this been very practical in the wild of the typical business. Now before you jump in, the programming of the Mars Rover is not normal business activity although way cool job.

Understanding the context of possible uses for services in different compositions seems amazingly challenging to me. Just getting services to be agile and reusable within known business context is very challenging. I certainly would like to hear more from folks who are exploring this space or have implemented solutions that would fit into this categorization. I thinking more along the lines of business type services not generic utility type services which can apply to any context. Anybody out there doing this?


Anonymous said...


The short answer is "No." and I think something like this is way off in the future. Remember UDDI and how it was supposed to enable systems finding services determining the capabilities they provided and binding to them at runtime? Well, that didn't materialize because of the primary difficulty of service consumption being semantics, not syntax.

I think that composition must be managed by a human because of the semantics involved. Once semantic web becomes a reality, maybe, but I am skeptical.

I think the next wave is the "programmable web" where there is a whole host of services that we use to compose solutions. The key though is a human is composing those solutions, packaging them up and delivering them to a system environment. When new capability comes along, or a better service becomes available it is still a programmer (IT or savvy Biz user) that consumes that new service and re-purposes the composite solution.

Melvin Greer is paid to think big and that is great. I just think in a normal business system environment runtime discovery and composition is not practical.

Steve Rdzak

Mark Griffin said...

I think we are on the same page about this. While I think it's cool for the Mars rover I doubt the practicality in the business world.