An application flow-logic diagram is a UML diagram used to represent the major components of your application. To identify what the major components are, you will need to evaluate the interaction of all components.
A web application could typically comprise the following components:
- Business access project Contains the classes used to represent the major components of this application. The Business Access Layer (BAL) can be represented as a separate project or a folder within a project. It will have one or more class files that contain the business logic used to manipulate data returned from the database.
- Data access project Usually contains a class file named DataAccess, which represents the Data Access Layer (DAL). Like the BAL, the DAL can be a separate project or folder that contains one or more class files. Any connections to the database should be made here and then data will be passed to the BAL. Database project Contains SQL scripts used to create and alter the Microsoft SQL Server database. This project will be especially important when you get to the deployment stage.
- Web service project (optional) Used to call functions and methods from the BAL. The Web service project is a distributed technology that, in this case, is another layer between the interface and the business logic and data access layers.
- Web site project Represents the interface used by the customer to access his or her order information over the Internet. It will call Web methods exposed by the Web service project. This is known as the presentation layer.
Identifying Application Components
It is important to identify your distributed components because they will be deployed separately from the Web application and, typically, require special configuration.
Designing an Application Flow-Logic Diagram
The basic purpose of this diagram is to identify the components that make up your application so that you can plan your deployment. You will focus on major components only. You want to make sure each project is represented because each will produce a separate assembly that will need to be deployed. You also want to make sure that any third-party components are represented. Typically, the inclusion of third-party components will result in an additional .dll file being added to the deployment process.
Using Office Visio for Enterprise Architects, available through a Microsoft Developers Network (MSDN) Premium subscription, enables you to create UML diagrams using the UML Model Diagram template. You might want to consider some of the following to build your diagrams:
- Initial State (UML Activity stencil) Represents the beginning of the customer ordering process.
- Interface (Gene Sarson stencil) Represents the interface to the customer, which is typically a Web application or Web service.
- Component (UML Deployment stencil) Represents each major component in the customer ordering process. Each component included will be considered for deployment.
- Data Store (Gene Sarson stencil) Represents the data source, which is typically a database.
- Data Flow (Gene Sarson stencil) Connector that represents the flow of data between the data source and a component or interface.
- Dependency (UML Static Structure stencil) Connector that represents a dependency between two objects.
- Control Flow (UML Activity stencil) Connector that represents the passing of control from one component to another.
The most important requirement is that you represent all the major components of your application. Ask yourself whether the component in question will need to be part of the deployment procedures.
- An application flow-logic diagram is a UML-based diagram that represents all the major components of your application. This will be useful when you begin planning the deployment.
- Typically, your Web application will include multiple projects, and the data access and business logic will be separated from the presentation layer. The application may also use distributed components such as Web services, remoteable objects, Enterprise services, or Message Queue Server.
- The application flow-logic diagram can be created using Office Visio for Enterprise Architects. Stencil objects can be used to represent each of the application’s major components.