We recommend using Visual Studio 2017
This documentation is archived and is not being maintained.

Walkthrough: Designing Application Systems 

This walkthrough guides you through designing an application system comprised of the applications you defined on the application diagram in Walkthrough: Defining Applications. In subsequent walkthroughs, you evaluate the deployment of this system against a logical representation of a datacenter.

In this walkthrough, you will accomplish the following tasks:

  • Design an application system using existing application definitions.

  • Provide access to members of an application system by adding proxy endpoints to the system.

A sample that demonstrates the outcome of this walkthrough is available on the Microsoft Download Center at http://go.microsoft.com/fwlink/?LinkId=40867.

To define a system from existing application definitions

  1. Open the Catalog.sln solution file you created in Walkthrough: Defining Applications.

  2. On the application diagram, select Catalog and CatalogDB.


    To select multiple shapes, press and hold the SHIFT key while you click the shapes. Avoid selecting the connection line between shapes.

  3. Choose Design Application System from the Diagram menu.

    The Design Application System dialog box appears.

  4. In the System Name box, enter "CatalogSystem" and click OK.

    System Designer appears and displays a system diagram named "CatalogSystem.sd". On this diagram, the shape containing the applications you selected represents the application system. The name of the system definition appears in the upper left corner.

    The System View window appears docked with the Toolbox and displays the group of applications and systems available to add to the system definition.

The next step is to add a proxy endpoint to provide access to an application within the system from outside the system.

To add a proxy endpoint for a member of the system

  • Select the CatalogWebService endpoint, and choose Add Proxy Endpoint from the Diagram menu.

    A proxy endpoint appears on CatalogSystem as well as a dotted line extending from the system border to the CatalogWebService endpoint.


    Any endpoint on the border of a system is a proxy endpoint. You can create proxy endpoints for any endpoint within a system. Proxy endpoints can only be connected to one endpoint inside the system. For more information, see How to: Add Proxy Endpoints to Application Systems.

To create a system definition containing an application and a system

  1. View the application diagram by clicking the "Catalog.ad [AD]" tab at the top of the system diagram.

  2. Select SalesSmartClient, right-click, and choose Design Application System.

  3. Name the system "SmartClientSystem" and click OK.

  4. From System View, drag the CatalogSystem system to the diagram. For more information about how to access System View, see How to: Display the System View Window.

    CatalogSystem system appears on the diagram as a rectangular shape. The endpoint on this shape is the proxy endpoint you created previously. To view the members of the CatalogSystem, double-click the shape.

  5. While pressing ALT, click and drag from the CatalogWebService endpoint on CatalogSystem to the consumer endpoint on SalesSmartClient.

  6. View the application diagram.

  7. Following the same procedure, select SalesWebClient on the application diagram and create a second system called "WebClientSystem".

  8. From System View, add CatalogSystem to WebClientSystem.

  9. In WebClientSystem, connect SalesWebClient to CatalogSystem by selecting the CatalogWebService endpoint, holding the ALT key and dragging to the consumer endpoint (hollow endpoint) on SalesWebClient.

  10. Save the solution.

The next step is to load a logical datacenter diagram into the solution and apply some constraints to servers modeled on that diagram. To continue, see Walkthrough: Applying Constraints to a Logical Datacenter. Following that, you can validate the application system against a target deployment environment in Walkthrough: Validating an Application System for Deployment.