While building several SmartClient applications I have noticed a pattern emerging.  Most of these SmartClients are acting as smart aggregation blocks for middle tier data and business logic.  So the need as arisen for an abstraction layer for a pluggable messaging architecture that allows for dynamic discovery for both strongly typed and loosely typed systems using various transports.  It looks something like this (greatly simplified):

http://spaces.msn.com/members/marleyg/PersonalSpace.aspx?_c01_photoalbum=showdefault&_c=photoalbum

So, we at Microsoft are working hard on coming up with Frameworks and Application Blocks to address the needs above the messaging later and the Vertical cross cutting stuff (example: Enterprise Library - http://msdn.microsoft.com/practices/default.aspx?pull=/library/en-us/dnpag2/html/entlib.asp).

I have written a couple of these over the years and have found it quite difficult to make it truly dynamic, which is reflective of the state of messaging in the industry (I know we are simplifying it with Indigo, but that is a ways off).  The variance of types and messaging nuances make it quite difficult.  I have also seen some industry specific implementations, specifically in financial services that are quite impressive.  So the question is…do you see a need for this as well?  Are you using SmartClients as aggregation points?

 

This posting is provided "AS IS" with no warranties, and confers no rights.