Proposed Solution
The design team at LitWare examined the requirements that the Main Street Hardware HR department specified for the application, and created a performance tracking application with the following features:
- Localizable browser user interface. The user interface is localized for a specific arena at install time and localized for a specific locale at run time. The user interface is localized for Germany, Japan, and the United States. Designing the PT Application Localizable User Interface describes the design issues and XML and the PT Application describes the solutions the development team implemented.
- Support for international data. Users can enter data using Latin script or ideographic characters, and can use local preferences to format times, dates, and numeric information. Data retrieved from the data store appears in a format that reflects the user's preferences. About the Formats Component in Components in NLS.dll and Litware.dll describes the design of the component that translates date, time, and numeric data. Converting a Recordset to XML describes how the development team implemented the national language support (NLS) component.
- Globalized data store. Data that is entered using any alphabet can coexist a single data store. Globalizing the Eval Database describes how the design team created a Microsoft® SQL Server™ database to accommodate any and all character sets. Using Unicode Data Types in the Eval Database describes how the development team implemented Unicode.
- Reliable security. Some information available from the data store is extremely sensitive and must be secured at both the application and the database level. Security in the PT Admin Application describes the security design for the PT application and Implementing a Trusted Connection in global.asa describes the implementation of the application's security mechanisms.
- Ability to maintain performance tracking information. The application maintains (through additions, changes, and deletions) static information for groups, persons, locations, activities, and activity types. It also maintains group memberships, the roles (auditor, evaluator, or individual) of persons in groups, and other information, such as test scores, pertaining to a person's performance of an activity. Presenting PT Application Screens describes the forms that allow users to maintain information.
- Automatic calculation of aggregate information. The application maintains average scores and standard deviations, and automatically updates these values as new scores are entered. Triggers on Eval Tables in the Design Decisions section describes how a trigger is used to maintain this information and PersonActivity.sql in the Code Listings and Object Reference section contains the SQL script for this trigger.
- Search capability. A full-text search feature on the Group, Location, and User Web pages allows users to filter data and to isolate relevant information. Full-Text Search and Full-Text Search in the PT Application describe how the development team implemented this search capability.
- Site navigation by user type. Users with different roles (auditors, evaluators, and individuals) can access different PT application Web pages and have read/write or read-only privileges. The pull-down menus dynamically change and provide only valid options for the current user type. Pull-Down Menus in Presenting PT Application Screens describes the content of the menus. Implementing the Menu Bar describes how the menu options change and how the content is localized.
- Scalability and performance. Measuring Application Performance describes performance measurement.
Examining the requirements for the Performance Tracking (PT) application led to an interesting question: Who will be using the PT application? The design team at LitWare identifed four distinct groups of users. The following topics describe the PT application requirements as they relate to the needs of each group: