Detailed Design Document
CPSC 451 Supplier Group #1

Department of Computer Science
University of Calgary
27 February 1997

Page maintainer: Terrence Asgar-Deen
terrence@cpsc.ucalgary.ca

  • Terrence Asgar-Deen
  • Patrick Chan
  • Thomas Hui
  • Carsten Jaeger
  • Matthew Johnson
  • Brian Low
  • Hoang Nguyen
  • Kevin Pattison
  • Csaba Suveges
  • Jeremy Tang
  • Leena Thakkar
  • Al-Amin Vira
  • Lin Zhang

  • Design Specification

    The Detailed Design Specification describes the Sales Routing System system in its entirety. The top-level system design is illustrated in the following context diagram.

    Sales Routing System (Context Diagram)

    A user interacts with the system. A user inputs commands to the Sales Routing System. The system outputs with a predefined set of responses to the user.

    The User

    The blue rectangular box represents the user. The user represents a person who is interacting with the system. The users are divided into two subcategories: the Administrators and the Salespeople.

    The system determines the security level of the user from his/her username. A consistent login interface is provided for both the Administrators and Salespeople.

    Administrator

    The system is delivered with a single user installed. This user is known as the superuser. As the name implies, this user has access to the entire functionality of the system. With this user, the system can be configured to included additional users, both administrators and salespeople. To provide the most extensible system, multiple administrators accounts can be created to facilitate the division of responsibilities.

    All administrators have complete access to the system. The purpose of the administrators is the maintenance of the system. This includes all functions that are available to the salespeople. Within this system, it is conceivable that an administrator may also be a salesperson. The system grants these multi-position employees a consistent user interface to perform both of his/her duties.

    Salesperson

    New salespeople are added to the system by the administrators. The new salespeople are usually employees of the company with limited access of the data in the system. The interface to the system for the salespeople is centered around their daily activities.

    The main function of the salespeople is the sales of Peachy Business Forms products to companies around the city of Calgary. On a typical day, the system provides the salesperson with a list of all the companies that he/she is to visit on a given day. In the process of his/her transactions, a company may purchase forms from Peachy Business Forms. Salespeople input the orders into the system on behalf of the customer. On an untypical day, a salesperson may find a new customer, which is also inputted into the system. In addition, a salesperson may also wish to query the system for information on a customer, a product or an order.

    Inputs

    The grey dashed box entitled Inputs represents the possible inputs to the system from the user. Each line in the box represents one type of input. Each input type is described in the Master Data Dictionary.

    Sales Routing System

    The green circle represents the system. A user inputs data into the system and information is returned via a set of defined system outputs. This document fully describes this system.

    Each component of the system is described more fully in the following subsections:

    Outputs

    The grey dashed box represented entitled Outputs describes the possible outputs from the system to the user. Each line in the box represents one type of output. Each output type is described in the Master Data Dictionary.


    The User Interface

    Overview

    The entire program is based around a single window. A single window provides a constant frame for the rest of the system. This window is a standard Windows 95 application window. The window has the standard title bar, with the control box, minimize, maximize and close buttons. The border is resizable, and the contents of the window resize gracefully when the window itself is resized. Within the window there are several components that have become standard in Windows 95 applications. The menu bar, toolbar and status bar are all described below. This leaves the main area of the application window, this is the "work area" in which the major functionality is displayed. The work area will display one of the following main areas of the system: Customers Area, Products Area, Purchase Orders Area, and User Areas, or their associated areas, such as View Customers, Modify Customers, etc.... Navigation between these main areas can be accomplished in three ways: using the View menu, the toolbar, or the navigation buttons in the upper right corner of the work area. The Go Back button will return the user to the last area they visited. Each of these areas are described in detail later in this document.


    The Menu Bar

    The Change Password menu item allows users to change their own password. Administrators will be able to change their own passwords as well as the password of any other user.

    The Print and Print Preview menu items generates reports based on what the user is currently viewing.

    The Log out menu item will log the user off the system,causing the Login Dialog to be displayed.

    The Exit menu item logs the current user off the system and closes the application.

     

    The Cut, Copy, Paste, Delete menu items perform the standard functions in editable fields.

    The Find menu item opens the Find dialog, allowing the user to search the current view.

    The Select All menu item will select all rows in a list.

     

    The Customers menu item displays the Customers Area in the work area.

    The Products menu item displays the Products Area in the work area.

    The Purchase Orders menu item displays the Purchase Orders Area in the work area.

    The Salespeople menu item displays the Salespeople Area in the work area.

    The Options menu item opens the Options dialog where the user can administrator can change the fields displayed in any of the work areas.

    The Item menu is used to manipulate records in the Customer,Product, Purchase Order, and User lists. Only a brief general description is described here, see the sections pertaining to each work area for more detailed information.

    The Add menu item displays a dialog where the user can enter information to add a new record

    The Modify menu item displays the selected record in more detail

    The Delete menu item will "delete" a record.

    The View Details menu item will display a selected record in more detail, and allow the user to modify the record

     

    The Reports menu lists all the predefined reports requested: the Informal Requirements Specification: Salesperson Report, Inventory Report, Order Report, Individual Customer Report, Daily Combined Customer Report, List of All Customers, List of Salespeople, List of Products, Salesperson Customer Information, Salesperson Daily Route List. Selecting a menu item will display a preview of the report with the option of printing it.

     

    The Contents menu item will display the contents of the system's on-line help.

    The Search by Keyword menu item will allow the user to search the on-line help

    The Index menu item will display the index of the system's on-line help.

    The About menu item will display the opening splash screen with the system's version number.


    The Toolbar

    The toolbar will display buttons for Change Password, Cut, Copy, Paste, Print, Print Preview, Add Item, Delete Item, View Item, Customers area, Products Area, Salespeople Area, and Purchase Orders Area. The toolbar itself does not introduce any new features.

    The toolbar can be customized by selecting the Options item from the View menu. This feature is not planned for the prototype.


    The Status Bar

    The status bar resides at the bottom of the window and is used to display two important pieces of information, the user's login name is displayed on the right, and rest of the status bar is devoted to supplemental information. This includes single line descriptions of menu items as they are selected, and hints for completing fields when entering data. This supplemental information is not detailed any further, as we believe that it would not benefit Peachy Business Forms or dHACs to spend the time and resources.


    Security

    There are two levels of security: the Administrator level and the Salesperson level. Administrators have access to all functionality of the system, while Salespeople are restricted to certain operations. The security level is set when the user is added, and can be changed at the Modify User area.

    Salesperson Restrictions

    To keep the interface consistent, any menu items or buttons that provide access to restricted operations will be greyed and inaccessible. Salespeople have the following restrictions:

    In the Customer Area, all operations are accessible except view the master system list of customers.

    In the Products Area, all operations are accessible except add, modify, and delete products

    In the Purchase Orders Area, salespeople can only view purchase orders placed by themselves and cannot delete orders.

    In the Salespeople Area, all operations are restricted.

    In the Reports menu, only Order Report, Individual Customer Report, List of Products, Salesperson Customer Information, Salesperson Daily Route List are accessible.

    Logging in

    To gain access to the system, a Login dialog will be displayed on system startup. A user is granted access to the system if the user successfully enters a correct user name and password. If the user is a salesperson, the system will display the Customers Area with the daily route list. If the user is an Administrator, the system will display the Customers Area with the master customer list. See the Login section for more information

    When the user is finished with the system, the user can select the Log out or Exit menu items from the File menu. The Log out command will log the user off the system and display the Login dialog. The Exit command will log the user off and shutdown the system.

    Passwords

    Each user can change their own password through the Change Password menu item in the File menu. Administrators have the added ability to change all other user's passwords through this same interface. See the Change Password section for more detailed information. To address the very good comment on encryption, the password information will be stored in an encrypted file.