Chapter 4: Creating the UML Static Model Diagram from the Query Tracker Application


Reverse engineering in Visual Studio .NET 2003 enables you to generate Unified Modeling language (UML) static model diagram from code in .NET applications. Reverse engineering maps the classes, namespaces, and methods in the .NET application code to the UML static model diagram and generates classes in the UML Model Explorer window of Visio.

This chapter explains how to create a QueryTracker UML static model diagram by reverse engineering the code of the Query Tracker application, which is a Visual Studio.NET application.

Architecture of the Query Tracker Application

The Query Tracker application consists of four projects:

  • QueryTrackerAdministrator

  • QueryTrackerRemotingObject

  • QueryTrackerServerListener

  • QueryTrackerClient

The QueryTrackerAdministrator project enables the administrator to enter customer queries in the database and assign them later to customer support executives to resolve queries. The QueryTrackerAdministrator application connects to the SQL Server, retrieves a list of existing executives and their departments, and provides the status of registered queries.

The QueryTrackerRemotingObject project provides the remoting object that retrieves the queries meant for a particular customer support executive from the QueryTracker database and updates the status of the queries when customer service executives have resolved these queries.

The QueryTrackerServerListener project registers the remoting object provided by the QueryTrackerRemotingObject project to a particular Transfer Control protocol (TCP) channel. This project provides the server that enables the QueryTrackerClient project to retrieve queries from the remoting object.

The QueryTrackerClient project enables executives to access queries provided by the remoting object and to mark the queries as attended to when the executives have dealt with the queries.

Figure 4-1 shows the architecture of the Query Tracker application:

click to expand: this figure shows the interaction between different components of the query tracker application, such as the projects that the application consists of and the querytracker database.
Figure 4-1: The Query Tracker Application Architecture

The QueryTrackerAdministrator project consists of the following files:

  • frmApplicationManager.vb : Provides the frmApplicationManager class that defines the Application Manager window, using which the administrator can access information about executives and queries.

  • frmLoginManager.vb : Provides the LoginManager class that defines the Login Manager window, which enables the administrator to log on to the application.

  • frmExecutiveManager.vb : Provides the ExecutiveManger class that defines the Executive Manager window, where the administrator can add information about an executive into the database.

  • frmQueryManager.vb : Provides the QueryManager class that defines the Query Manager window, where the administrator can register customer queries into the database.

  • frmForwardQueryToExecutive.vb : Provides the ForwardQueryToExecutive class that defines the Forward Pending Query To Executive window, which enables the administrator to assign customer queries to customer support executives.

  • frmViewStatus.vb : Provides the ViewStatus class that defines the View Query Status window, which enables the administrator to view the status of the queries.

The QueryTrackerRemotingObject project consists of one file, QueryProvider.vb that provides the QueryProvider class, which defines the remoting object. When the executive logs on to the QueryTrackerClient application, the remoting object retrieves the queries meant for that executive. When the executive marks the query as attended to, the remoting object updates the database information for that query.

The QueryTrackerServerListener project consists of one file, Server.vb that provides the Server class, which defines the server that registers the remoting object and listens for the request to activate remoting object from the QueryTrackerClient application. The administrator runs the server before the executives access the QueryTrackerClient application.

The QueryTrackerClient project consists of the following files:

  • frmExecutiveLogin.vb : Provides the ExecutiveLogin class that defines the Executive Login window, which enables the executives to log on to the application.

  • frmQueryTrackerClient.vb : Provides the QueryTrackerClient class that defines the Query Tracker Client window, where the executives can view and access the queries.

  • InitializeQueryProvider.vb : Provides the InitializeQueryProvider module that creates and registers a TCP channel to enable the application to access the QueryProvider remoting object.

Figure 4-2 shows the class diagram for the Query Tracker application:

this figure shows classes of the four projects, uerytrackeradministrator, querttrackerclient, querytrackerremotingobject, and querytrackerserverlistener.
Figure 4-2: The Class Diagram for the Query Tracker Application



NET InstantCode. UML with Visio and Visual Studio .NET
NET InstantCode. UML with Visio and Visual Studio .NET
ISBN: N/A
EAN: N/A
Year: 2004
Pages: 49

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net