Evaluating the Composite Application Guidance

Architects and developers will need to devote some time and effort to fully understand and evaluate the Composite Application Guidance. Although there is no single way to evaluate a solution, this guidance divides the process into four steps:

  1. Fit analysis. Determine if the guidance suits your needs.
  2. Initial evaluation. Install, run, and examine the guidance.
  3. In-depth evaluation. Conduct a thorough examination of the guidance.
  4. Adoption. Incorporate the guidance into a composite application.

The next sections describe each step.

Step 1: Fit Analysis

The Composite Application Guidance is for designing complex WPF or Silverlight applications. The following are scenarios where you should consider using the Composite Application Guidance:

  • You are building a composite application that presents information from multiple sources through an integrated user interface.
  • You are developing, testing, and deploying modules independently of the other modules.
  • Your application will add more views and more functionality over the coming years.
  • You must be able to change the application quickly and safely to meet emergent business requirements.
  • Your application is being developed by multiple collaborating teams.
  • Your application targets both WPF and Silverlight, and you want to share as much code as possible between the two platforms.

The Composite Application Guidance may not be right for you if your applications do not require one or more of these scenarios. It also may not be right for you if, for example, your application consists of a few simple screens, you are building a prototype or demonstration application, or your developers are not familiar with the ideas and practices and do not have the time to learn them.

To determine whether the Composite Application Guidance is a potential fit, you need to understand the problems that the solution solves. The following sections may help you perform a fit analysis:

This phase should take one to two hours to complete.

Step 2: Initial Evaluation

To take a closer look at the Composite Application Guidance, you will want to learn more about the design of the Composite Application Library to determine how composite application architectures fit into your enterprise or solution architectures. You will also want to start looking at the code by developing a simple "Hello World" application.

The relevant topics to read for this step include the following:

To get some hands-on experience, complete the following activities:

This phase should take three to four hours to complete.

Step 3: In-Depth Evaluation

Before deciding to use the Composite Application Guidance for your application, you may want to perform an in-depth evaluation. The Composite Application Guidance team recommends you evaluate the QuickStarts and the Stock Trader Reference Implementation (Stock Trader RI) and consider developing a proof of concept application with which to gain a deep understanding of the library. At this point, you should also think about required extensions to the library and optimizations that will help you meet your organization's requirements.

Before starting your proof-of-concept application, the Composite Application Guidance team recommends that you read the following:

As you are developing your proof-of-concept application, you should do the following:

The amount of time spent on this phase will differ based on the size and nature of your proof-of-concept application.

Step 4: Adoption

The Composite Application Guidance has an explicit goal to provide a good adoption experience. To deliver on this goal, the Composite Application Guidance provides the following:

  • You can "opt in" and "opt out" of the Composite Application Library capabilities. For example, you can consume only the services you need.
  • You can incrementally add the Composite Application Library capabilities to your existing WPF or Silverlight applications.
  • You can build WPF and Silverlight applications that share as much code as possible.
  • It is non-invasive because of the following:
    • It limits the Composite Application Library footprint in the code.
    • It limits reliance on custom Composite Application Library attributes. You can integrate existing libraries with the Composite Application Library through a design that favors composition over inheritance (this avoids forcing you to inherit from the classes in the Composite Application Library).

To adopt the Composite Application Guidance, you will need to perform the following tasks:

Upgrading from Earlier Releases

If you are upgrading from the previous release of the Composite Application Guidance, released in June 2008, you should review Upgrading from the Composite Application Guidance for WPF - June 2008 to understand the major differences between the two releases.

If you are upgrading from the Composite UI Application Block to the Composite Application Library, you should review Upgrading from the Composite UI Application Block so that you understand how the concepts in the Composite UI Application Block map to the Composite Application Library.

Home page on MSDN | Community site