.Net 3.0 What? Where In My N-Tiers Can I Use It?

I often get asked about where the framework extensions introduced with the .Net Framework 3.0 fit best in a multi tiered architecture. If you are not familiar with those I'm talking about the technologies Windows Presentation Foundation (WPF), Windows Workflow Foundation (WF), Windows Communication Foundation (WCF) and Windows Cardspace. Details can be found on MSDN.

The answer of course is that there is no common answer and even looking at it from a bird's eye perspective introduces several possible scenarios and those are of course dependent from the specific requirements of the individual project or the existing infrastructure.

However with the following picture I tried to show which components could find their place on which tier in the architecture. This is a holistic and optimized view with respect to the Microsoft Application Platform and it is, despite its hig-level nature only a clipping of a larger view.

High Level n-tier architecture using .Net 3.0 technologies

Optimized in such a context means that I took a Microsoft technology for each and every component in the architecture however due to the fact that Microsoft focused intensively on interoperability and standards when creating technologies like WCF there is the option of replacing many of the components with components based on non Microsoft technologies. In terms of why it is only a clipping the answer is also quite easy. Because you could easily add another client which would be the management client for the server components which then could also be built using this technologies. Or you could imagine that one of those third party systems is based on a server solution like Biztalk Server which then again uses one of the .Net Framework 3.0 technologies in order to provide its services. Said this I'm also aware of the fact that due to the complexity it is also sometimes hard to position technologies right. Especially the positioning of BizTalk Server and the Workflow Foundation sometimes is not quite easy as there are some overlappings (one of the reasons that WF will replace the orchestration engine part of the next BizTalk Server release) but when analyzed it is obvious that both "the technology" and "the product" do have their right to exist ;).