What is Differentiated UI? (and how it pertains to Composite WPF)

image

Over the past few weeks we've been doing a lot of deep exploration into what it means to build a composite UI within WPF. As soon as you set your foot into WPF land you come into contact with a concept known as Differentiated UI. You'll hear this term often coming out various teams in Microsoft, but what does it really mean? In short a differentiated UI is a UI that offers an entirely different experience than what we are used to in a traditional gray-screen LOB application. It does this through a host of different methods including application styling, rich visualizations, and dynamic un-constrained layouts. As an example see the Accruent screenshot,

When we look at Differentiated UIs such as the Acrruent example we are using them to inform the decisions we make in Composite WPF. We're not saying that we are going to give you a set of tools that will magically simplify creating such solutions. Instead, we want to focus on both existing and emerging design patterns that are present in building such an application. We want to make sure that whatever code / examples / guidance we deliver supports, and does not block you from building one. We also want to do what we can to make it easier to build Composite applications that sport a Differentiated UI.

Last week Brian Noyes from IDesign joined us for a three day intensive set of sessions where we mined differentiated UI patterns.  As part of these sessions, Brian compiled for us a document which defines various aspects of Differentiated UI and references several examples that we've been evaluating. He's posted the contents of that document on his blog here. Also check out the Accruent case study which describes how they used WPF and Virtual Earth to deliver the experience you see above.