<Project Name>

Requirements Analysis

Requirements Analysis Template Instructions

(Please remove this section before completion of template)

The Requirements Analysis should include the details of the requirements outlined in the Feasibility Study and should also include any other requirements. Requirements that should be reviewed are business, application, system, functionality, compliance and security. All need to be to the most detailed level possible. This analysis will be used to outline design and will be mapped one to one in the testing plan.

Be sure to maintain version control as the analysis is modified and/or edited.

All instructions within the template are italicized within the document.

Two examples are included in the Requirements Analysis deliverable. The first is a requirements analysis and the second is a functional analysis/design specification example.

Any portion of the template that does not fit or pertain to your project should be documented that it was reviewed and is not relevant. See below for requirements for a project and deliverable approvals.

Be sure to unlock table of contents by selecting TOC then Ctrl-Shift-F11 to enable TOC updating in Word docx.

Project Deliverable	Requirements by Project Size
Planning/Development Phase	Large	Medium	Small	Requirements	Approvals
Requirements Analysis (SDLC)	O	O	O	This deliverable is optional for all project sizes, unless requested by the Sponsor, Steering Committee or IT management. If an RFP is being issued as part of the project, Requirements Analysis is strongly recommended.	The Requirements Analysis should be approved by the Steering Committee, at a minimum.

Table of Contents

1.	Introduction	3

1.1.	Purpose	3

1.2.	Assumptions	3

2.	Version Control	4

3.	Requirements	5

3.1.	Business Requirements	5

3.1.1.	Functional Description	5

3.1.2.	Business Process Requirements	5

3.1.3.	Output Requirements	5

3.1.4.	Audit Requirements	5

3.2.	System Requirements	5

3.2.1.	Application Requirements	5

3.2.2.	Hardware Requirements	5

3.2.3.	Data Requirements	5

3.2.4.	Interface Requirements	5

3.2.5.	Availability Requirements	5

3.2.6.	Maintenance Requirements	6

3.3.	Compliance Requirements	6

3.4.	Security Requirements	6

4.	Traceability Matrix	7

5.	Approval	8

Introduction

Purpose

Requirements analysis is critical to success in the development of project, especially a applications related project. Requirements must be actionable, measurable, testable, related to identified business needs or opportunities, and defined to a level of detail sufficient for system design. One type of requirement specifies something that the delivered system or application must be able to do. Another type of requirement specifies something about the system itself, and how well it performs its functions. A collection of requirements defines the characteristics or features of the desired system or application. A ‘good’ list of requirements generally avoids saying how the system should satisfy the requirements, leaving such decisions to the system designer.

The Business Requirements analysis will make sure that in the Design Phase all business needs are met for the end user, customer, and the University. This would include a complete description of the behaviour of the system to be developed, including uses and interactions with other software and/or hardware. The requirement may also be constraints imposed on design and implementation, like performance requirements, or quality standards.

The purpose of assessing the Compliance Requirements is to determine what is needed for the hardware and/or software to be compliant with the School, University and New Jersey guidelines. This process should outline assumptions identified about compliance.

The Security Requirements review will make sure that the system being installed will withstand any hostile acts, and meet all University standards for security. This document should identify security risks, security features, and how the security functions will be tested during the project. This document will provide an overview of processes and procedures for the developing, implementing, and enforcing system security. Procedures are outlined through flow charts and descriptions of potential risks and actions to take to eliminate or mitigate them. This document should provide a blue print for the definition, design, implementation, testing, refinement, and deployment of system security solutions.

Include expected benefits, goals and objectives.

Assumptions

This document assumes.....

Version Control

Version	Date	Person	Change
1.0	Initial Document Creation

Requirements

Business Requirements

Functional Description

Describe the functional role/purpose of the system as part of daily activities. Include number of users and physical locations for the system.

Business Process Requirements

Describe the business processes that are required of the system.

Output Requirements

Describe the outputs of all print outs, reports, or export files that are required of the system.

Audit Requirements

Describe the audit functions that will be required for the system.

System Requirements

Application Requirements

Describe the requirements that need to be met by any of the applications.

Hardware Requirements

Describe all hardware requirements, which might include desktop, facilities, mechanical, electrical, etc.

Data Requirements

Discuss the raw data that will comprise the input to the system and whether it is imported from another application. Include approximate typical and worst case size of file, frequency, delimiters, and any other limitations or constraints on the data format. Include any and all inputs, integration, migration, etc.

Interface Requirements

Describe the internal and external interfaces and the flow of the system for the typical user. As feasible, include diagrams that detail interfaces.

System Availability Requirements

Describe the requirements for maintaining business continuity in the case of a disaster. What are the minimum requirements that need to be met to perform business as usual or in an acceptable state? What needs to be the committed response time for the support organizations (both internal and external) to respond once notified of a major outage?

Maintenance Requirements

Describe the requirements for archival, back-up, restore, and disaster recovery.

Compliance Requirements

Describe all compliance requirements that will affect this project, ex. HIPPA.

Security Requirements

Describe all security requirements for the project. This should include access control, password configurations, authentication controls, logon attempts allowed, timeouts, audit trail for failed attempts, and how user access is obtained.

Traceability Matrix

The purpose of the matrix, shown below, is to provide testing coverage for the system being validated, by cross-referencing the requirements to the test steps. Only the first three columns will be completed in this document, the rest will be completed in the Test Plan.

Require-ment Number	Category	Requirement Description	Scenario Performed	Expected Outcome	Actual Outcome	Pass or Fail	Comments
R-01	Security	Password formatting correct

Approval

The individuals below agree that they have reviewed and approved the requirements outlined in this Support Documentation.

APPROVED BY:
Function Role	Name and Title	Signature	Date

Requirements Analysis

EXAMPLE

PMO Learning Management System

Table of Contents

1.	Introduction	3

2.	Version Control	3

3.	Requirements	3

3.1	Business Requirements	3

3.1.1	Functional Description	3

3.1.2	Business Process Requirements (BR)	3

3.1.3	Output Requirements	3

3.1.4	Audit Requirements (AR)	3

3.2	System Requirements	3

3.2.1	Application Requirements	3

3.1.2	Hardware Requirements (HR)	3

3.1.3	Data Requirements (DR)	3

3.1.4	Interface Requirements (IR)	3

3.1.5	Availability Requirements (AvR)	3

3.1.6	Maintenance Requirements (MR)	3

3.3	Compliance Requirements (CR)	3

3.4	Security Requirements (SR)	3

4.	Traceability Matrix	3

5.	Approval	3

AppendixA	3

Appendix B	3

Appendix C	3

Introduction

1.1 Purpose

The requirements for the PMO Training database will be outlined in this document for action, measurement and testing. It will outline the business needs along with the assumed technical needs providing enough detail for system design.

The Business Requirements analysis will make sure that in the Design Phase all business needs are met for the end user, customer, and the University. This would include a complete description of the behaviour of the system to be developed, including uses and interactions with other software and/or hardware. The requirement may also be constraints imposed on design and implementation, like performance requirements, or quality standards.

The security requirements for this system should match those of the University and the systems being run with this database.

1.1 Assumptions

This document assumes that the servers and equipment will be available for the database. It is also assumed that the resource will be available to complete the work.

Version Control

Version	Date	Person	Change
1.0	11/23/09	Lori Smith	Initial Document Creation
1.1	12/07/09	Lori Smith	Added Required Fields
1.2	2/23/10	Lori Smith	Added pre-requisite testing

Requirements

All requirements are to be numbered and tracked, which will be used in the Test Plan, in the matrix, which is in the last section.

Business Requirements

Functional Description

This database will be for the registering and tracking training for the PMO department. This database will keep student registration information, have a contact the trainer functionality, training schedule, course descriptions, transcripts, and the registration for classes. This database should also be able to keep a list of available facilities that can be updated and maintained. This should be a web based product that will need Admin functions for 4 people and course registration for about 500 users.

Business Process Requirements (BR)

BR-01 Contact the Trainer Box (See Appendix A)

BR-02 Contact Trainer Screen Fields

Name (R)

Location (R)

Phone Number (R)

Email Address (R)

Topic [Drop Down] (R)

Methodology Process Question

Class Question

Schedule Question

Cancel/Reschedule Question

Classes Already Taken Question

Other

Box for Question [500 character Max] (R)

Send Button

Send me a copy of this email

BR-03 Email is generated to IST-PMOTraining@umdnj.edu

BR-04 If box is checked, an email is sent to submitter

BR-05 Class Registration Box

BR-06 Registration Page Fields

Email Address (R)

Name (R)

Title (R)

Phone Number (R)

Department

Unit [Drop Down] (R)

CST

BST

PMO

ISO

Operations

HST

SOM

SON

SHRP

UBHC

DENTAL SCHOOL

NJMS

SPH

RWJ

Not Listed

Supervisor (R)

Supervisor’s Phone Number (R)

Select Class [Drop Down] *see BR-07 (R)

Any Project Management Experience Y or N

If Yes, please explain

Comment Box [500 Characters Max]

Submit Button

BR-07	The available classes should pull from the calendar section of the database. Only classes with availability should be in drop down.

BR-08 Once email address is entered, and the user has previously registered, the registration information should default from the database, but still be changeable.

BR-09 Once course is selected from drop down and user selects submit, a pop up box will notify “Registration Accepted – You will also receive a confirmation email”.

BR-10 System generates emails to the student and IST-PMOTraining with confirmation of class, including Course Name, Date and Location.

BR-11 Disclaimer at bottom of screen, below submit button, that if there are not enough enrolees then the class is subject to cancellation.

BR-43 **Please give 48 hours notice for any reschedule or cancellation. (this should be a note at the bottom of the screen)

BR-12 Reschedule Class Box

BR-13 Reschedule Link

BR-14 Reschedule Page

Email Address (R)

Name (R)

List of Courses that the student is registered

BR-15 Note on Page “This function will cancel first class and schedule new class”.

BR-16 System generates emails to the student and IST-PMOTraining with confirmation of class rescheduled.

BR-17 List of courses should be links to registration page. Once on the registration page, the student information will default from the database, but still be changeable. The student selects a new class from the drop down and selects Submit. This will cancel old class and schedule new class.

BR-18 System generates emails to the student and IST-PMOTraining with confirmation of class, including Course Name, Date and Location.

BR-19 Cancel Link

BR-20 Cancellation Page

Email Address (R)

Name (R)

List of classes w/ Check Boxes

Select Classes to Cancel.

Cancel Button

BR-21 System generates emails to the student and the IST-PMOTraining with cancellation and class information.

BR-22 DISCLAIMER: After the 3rd cancellation or reschedule of a class, your supervisor will have to approve before another class can be scheduled.

BR-23 View Courses Taken Box

BR-24 This will be the training database:

Name	Phone#	Email	Dept	Unit	Supervisor	Supervisor Phone	Registered Classes	Dates	Final Status	Notes
Jane Doe	856-566-6411	Doeja	Web Design	CST	Lori Smith	732-743-2543	Intro to Methodology	11/13/09	Rescheduled
Intro to Methodology	11/18/09	Completed

BR-25 Final Status should update automatically, except completed, which will be updated by the trainer.

BR-26 Notes field will only be viewable to Admin users only

BR-27 Training Schedule Box

BR-28 Calendar to Display

Calendar date should show Class {link}, Location {link}, Time.

BR-29 Class link should link back to the course description.

BR-30 Location link should link back to the facilities data.

BR-31 Edit rights for calendar to Admin users only.

BR-32 DISCLAIMER: If class does not meet attendance requirements, it may be cancelled.

BR-33 NOTE: If you do not see needed course or needed location email IST-PMOTraining to determine when a class meeting your needs will be scheduled.

BR-34 IST-PMOTraining should be an email link.

BR-35 Once class has met the attendance maximum; the course should be greyed out.

January

1 Intro to Methodology Stratford 276 10AM-1PM	2

BR-36 Training Classes Box

BR-37 List of Courses

Introduction to Methodology

Pre-Initiation/Initiating

Planning/Development

Execution/Closing

Innotas

BR-38 Each course name should be a link to a more detailed course description to be written by PMO training staff.

BR-39 Facilities Management Box

BR-40 This will be a database of all available training locations.

Location	Address	Map Link	Parking Info	Contact	Contact #	Contact email	Room Size	Room Equipment	Notes about room.
Stratford 276	1 Medical Center Dr. Stratford, NJ 08084	http://www.mapquest.com/maps?city=Stratford&state=NJ&address=40+E+Laurel+Rd&zipcode=08084-1350&country=US&latitude=39.828792&longitude=-75.008877&geocode=ADDRESS	Parking in staff parking by permit only. If you do not have a permit, a daily permit can be purchased in Public Safety	Jane Doe	856-566-6000	Doeja	13	No computers, Projection screen available, no projector unless you contact media.

BR-41 This should only give edit rights to Admin users.

BR-42 When users link back to this location; they should only see the first 4 fields.

BR-44 Evaluation Scores Box

BR-45 Listing of all classes completed. (Should be a link into the evaluation database)

BR-46 Create the evaluation template to be completed by training staff (see appendix C)

BR-47 Each participant’s evaluation should be within the class

BR-48 Include an average for each class calculated from the data entered for each student.

BR-49 This should only be available to Admin users

Output Requirements

OR-01 Produce printout of student’s transcripts

OR-02 Registration Reports

OR-03 Class attendance roosters

OR-04 Sign in sheets (See Appendix B)

OR-05	Generate an email with the class rooster 1 week prior to class to IST-PMOTraining@umdnj.edu.

OR-06 Generate an email to IST-PMOTraining@umdnj.edu if student reschedules or cancels any three classes (should repeat with each 3).

OR-07 Re-generate sign in sheets 4 weeks after class completion and email to IST-PMOTraining@umdnj.edu

OR-08	Evaluation Reports

Audit Requirements (AR)

AR-01 Security must be set up with an admin

AR-02 Must be documented in Administration Manual

AR-03 Must have a process for marking users that are no longer employed and making them no longer searchable by anyone except Admin

System Requirements

Application Requirements

Do not have any application requirements at this time.

Hardware Requirements (HR)

Do not know of any hardware requirements at this time.

Data Requirements (DR)

There will be not data imported into the database. The database will be built as we move forward.

Interface Requirements (IR)

There are no interface requirements at this time. There may become a need to interface with Angel and any other master training database that is developed as we grow.

System Availability Requirements (AvR)

This is not a business critical application, therefore does not have any availability requirements.

Maintenance Requirements (MR)

MR-01 The database will need to be backed up at least once a week.

MR-02 The database should be able to be restored within 5 days.

Compliance Requirements (CR)

There should not be any compliance requirements that will affect this project.

Security Requirements (SR)

The security requirements have were contained in the Business Requirements listed above, but they are also listed below.

SR-01 Notes field will only be viewable to Admin users only in the registration database.

SR-02 Edit rights for the training calendar to Admin users only.

SR-03 The ability to edit the facilities management tool is for admin users only.

SR-04 To make the security requirements meet the internal audit requirements, I would like for the users to access this database from My.UMDNJ. (IST Channel, Educational/Training Services, Project Management Office Learning Management System.)

Traceability Matrix

The purpose of the matrix, shown below, is to provide testing coverage for the system being validated, by cross-referencing the requirements to the test steps. Only the first three columns will be completed in this document, the rest will be completed in the Test Plan.

Require-ment Number	Category	Requirement Description	Scenario Performed	Expected Outcome	Actual Outcome	Pass or Fail	Comments
BR-01	Business	Contact the Trainer
BR-02	Business	Contact the Trainer Fields
BR-03	Business	Generates Email
BR-04	Business	If selected, user gets email
BR-05	Business	Class Registration Box
BR-06	Business	Registration Page Fields
BR-07	Business	Available classes should be in drop down
BR-08	Business	If already registered, information defaults
BR-09	Business	Pop up – Registration accepted
BR-10	Business	Confirmation email to ist-pmotraining and student
BR-11	Business	Disclaimer shows on bottom of screen
BR-12	Business	Reschedule Class Box
BR-13	Business	Reschedule Link
BR-19	Business	Cancel Link
BR-22	Business	Disclaimer shows on page
BR-14	Business	Reschedule page fields
BR-15	Business	Note on page that this will cancel current class
BR-16	Business	Generates email to ist-pmotraining and student with new class
BR-17	Business	Lists of classes takes you to the registration page
BR-18	Business	Generates email to all for confirmation
BR-20	Business	Cancellation page fields
BR-21	Business	Generates email w/ cancellation
BR-23	Business	View Courses Box
BR-24	Business	Database field set up
BR-25	Business	Final status should automatically update with rescheduled and cancelled
BR-25	Business	Trainer should be able to update final status as complete
BR-26	Business	Only admin can see the notes fields
BR-27	Business	Training Schedule Box
BR-28	Business	Calendar display
BR-29	Business	Class link takes you to course description
BR-30	Business	Location link takes you to the facilities data
BR-31	Business	Edit rights for calendar – admin only
BR-32	Business	Disclaimer shows on page
BR-33	Business	Note shows on page
BR-34	Business	IST-PMOTraining email link works
BR-35	Business	Once class is full, it is no longer available to select.
BR-36	Business	Training Classes Box
BR-37	Business	Listing of courses available display.
BR-38	Business	Each course should be a link to the detailed description of the course.
BR-39	Business	Facilities Management Box
BR-40	Business	Database with fields outlined.
BR-41	Business	Only editable by Admin Users
BR-42	Business	Users only see the first 4 fields.
BR-42	Business	Note on screen about notice prior to cancellation.
BR-44	Business	Evaluation section
BR-45	Business	Listing of previous classes
BR-46	Business	Evaluation template
BR-47	Business	Ability to enter each student’s eval
BR-48	Business	Calculated class average
BR-49	Business	Only visible to admin user
OR-01	Output	Produces student transcripts
OR-02	Output	Registration database print out that can be sorted in different ways
OR-03	Output	Class attendance rooster reports
OR-04	Output	Sign in sheets with the students for that class
OR-05	Output	Email with class rooster 1 week prior
OR-06	Output	Email for cancelled or rescheduled 3 times
OR-07	Output	Re-generate sign in sheet 4 weeks after class
OR-08	Output	Evaluation reports
AR-01	Audit	Admin security settings work
AR-02	Audit	Added to Administration Manual
AR-03	Audit	Marking staff that is no longer employed
MR-01	Maintenance	Back up working
MR-02	Maintenance	Restorable
SR-01	Security	Notes viewable only to Admin in registration database
SR-02	Security	Edit rights to the training calendar for admin user only
SR-03	Security	Facilities management database on changed by admin
SR-04	Security	Access through my.umdnj
Add On	Pre-Requisites	Unable to register for classes that require a previous course

Approval

The individuals below agree that they have reviewed and approved the requirements outlined in this Support Documentation.

APPROVED BY:
Function Role	Name and Title	Signature	Date
Manager	Lori Smith	Approved	12/2/09
Trainer	Kathy McSorley	Approved	12/2/09

AppendixA

Appendix B

Sign-In Sheet

Class:	Introduction to Project Management (Prototype)

Date:	10/30/09

Time:	9:00 – 12:30

Instructor:	Kathy McSorley

Name	Department	Email Address	Phone #	Signature
Robert Annan	These fields should default from database	These fields should default from database	These fields should default from database
Catrina Fowler	These fields should default from database	These fields should default from database	These fields should default from database
Therese McCarthy	These fields should default from database	These fields should default from database	These fields should default from database
Jay Pasignajen	These fields should default from database	These fields should default from database	These fields should default from database
James Xu	These fields should default from database	These fields should default from database	These fields should default from database

Appendix C

COURSE EVALUATION

Project Management Office

Course Title: ____________________________Date: _________________

Facilitator(s): ___________________________ Campus: _______________

Please circle your response to the following statements.	Strongly Strongly Agree Disagree
1. I feel that I will be able to use what I have learned.	5	4	3	2	1
2. The program was presented in an interesting manner.	5	4	3	2	1
3. The training facilities met my needs.	5	4	3	2	1
4. The program covered the promised objectives.	5	4	3	2	1
5. The trainer encouraged participation and questions.	5	4	3	2	1
6. Do you believe other people at the University would benefit from this program. Circle level: Clerical Managerial Supervisory Professional Medical Other:	5	4	3	2	1
Excellent Poor
7. Please evaluate the Facilitator:	5	4	3	2	1
8. Please evaluate the Content:	5	4	3	2	1

9. The learning from this course that I am most likely to apply to my work is (explain briefly):

_____________________________________________________________________________________
_____________________________________________________________________________________

_____________________________________________________________________________________

What might we add to or delete from the course to increase its usefulness?

Add: _____________________________________________________________________________________
Delete: _____________________________________________________________________________________

Other comments:

_____________________________________________________________________________________
_____________________________________________________________________________________

_____________________________________________________________________________________

Project Management Office

Functional Requirements and Design Specification EXAMPLE

Family Nutrition Program

Proposal Application

Functional Requirements

and Design Specifications

Contents

1.	Introduction	x

1.1.	Purpose	x

1.2.	Assumptions	x

2.	Version Control	x

3.	Requirements	x

3.1.	Business Requirements	x

3.1.1.	Functional Description	x

3.1.2.	Business Process Requirements	x

3.1.3.	Output Requirements	x

3.1.4.	Audit Requirements	x

3.2.	System Requirements	x

3.2.1.	Application Requirements	x

3.2.2.	Hardware Requirements	x

3.2.3.	Data Requirements	x

3.2.4.	Interface Requirements	x

3.2.5.	Availability Requirements	x

3.2.6.	Maintenance Requirements	x

3.3.	Compliance Requirements	x

3.4.	Security Requirements	x

4.	Traceability Matrix	x

5.	Approval	x

Introduction

Objective

The objective of this implementation project is to add a new module to the existing Food and Nutrition Program website using ASP.NET which will provide the website’s primary target audience with greater flexibility and additional features, a highly static yet interactive user interface and a host of other features that will enhance the user’s experience with the Food and Nutrition Program’s Website.

Target Audience

This website has been primarily targeted at the county agents throughout the State of Kansas; to provide them with the ability to submit their Proposal Application’s for the Food and Nutrition Program.

Version Control

Version	Date	Person	Change
1.0	Initial Document Creation

Overall Description

This project is primarily concerned with adding a new module (Food and Nutrition Program Proposal Application) to the existing FNP website. The new module, built using ASP.NET in addition to providing the aforementioned features, also preserves the fast load times and speed of processing available on the FNP website.

Prior to this application, agents were required to file all of their information manually on paper and subsequently submit their proposals. This resulted in a large number of man-hours wasted, not only in the data entry process but also in verifying if all of the information was entered as per accepted procedures and formats and also the veracity of the data itself. This data was then again manually entered into MS Excel spreadsheets into order to obtain analytical results from the data and perform calculations on the data.

To overcome these problems, the new Food and Nutrition Program Proposal Application Module was created using ASP.NET. Several special features were also added to download the data in the form of reports directly into an Excel sheet. Users can also directly view reports created by performing calculations on the entered data.

The user interface of the website is highly intuitive and helps conform to the required data structures and formats. The user is now able to enter all of the required proposal application information quickly and easily.

System Architecture

County Agent Admin Front End (HTML and c#) Middleware (.NET Framework) Back End (Oracle 10g) Manage Agent session Add, Edit, Update, Print FNP Proposal Application Manage Admin session Perform Admin activities Database

Figure 1: System Architecture

For a detailed description of the technologies used to implement this project refer to Appendix A.

Database Design

Figure 2: FNP Proposal Application Database Schema

Figure 3: Relationships between Tables in Database

The following is the overview of the database design for this application.

TABLE NAME	DESCRIPTION
SB_DATA	Contains all the primary information about a worksheet.
SB_DATA_ITEMS	Contains the amounts in dollars of the contractual services, supplies and in-state travel pertaining to the Collaborating Agencies, County Match and FNP Funds.
SB_MISC_DESC	Contains the textual description of each of the items in the sb_data_items table.
SB_COLLAB_AGENCY	Contains information about the descriptions of the Collaborating agencies and the amounts in dollars each agency has been pledged.
SB_EMP_PERSONAL_PLEDGES	Contains the salaries and benefits information about each agent and the positions they hold.
SB_PROPOSED_EQUIPMENT	Contains a list of all the proposed equipment, their descriptions and the associated costs.
SB_PROGRAM_DESCRIPTION	Contains primary information about each program description by curriculum associated with each worksheet.
SB_PROGRAMDESC_AGENCY	Contains information about the partnering agencies in a program description by curriculum.
SB_PROGRAMDESC_EXTENSION	Contains information about the agents and their contributions in a program description by curriculum.
SB_PROGRAMDESC_ITEMS	Contains information about the behavioral objectives and indirect contacts in a program description by curriculum.
USER_COUNTIES	Contains information about the user and his/her counties.
PAS_ITEMS	Contains textual descriptions of the items used in the program description by curriculum.

Table 1: Database Tables Description

Control Flow

County Agent:

The county agents are required to logon using their user name and password. In the case of an incorrect login they are redirected to the same page and prompted to reenter the information.

In order to provide additional security and preserve the integrity of the data, each agent is allowed to view information only for his/her county. Further, if the user is not an agent of that county but some other employee such as a program or nutrition assistant, then he/she will be unable to access any sensitive information such as the salaries and benefits or other financial information.

After completing the data entry, the agent adds that worksheet to his county alone. This prevents agents from other counties viewing information about counties other than their own or making any changes to other counties’ information. The user can log off the system after completion of all tasks thereby terminating that session.

The following figures show the control flow of the project in greater detail.

Figure 4: Use Case Diagram for County Agent

Index Page Check Login Information Agent Welcome Page * Add FNP Proposal Application * View and Print FNP Proposal Application Edit FNP Proposal Application Add/Update Information Incorrect Login

Figure 4.1: Control Flow Diagram for County Agent

Figure 4.2: Hierarchy Diagram for County Agent

Figure 4.3: Class Diagram for County Agent

System Administrator :

Check Login Welcome Page * Add/Edit FNP Proposal Applications *Perform Report Add/Edit Counties Save item Information Save county Information Index Page Incorrect Login

Figure 5: Control Flow Diagram for System Administrator

The control flow for an administrator is different as he is able to view the information for all the counties and can perform various functions from the “Welcome” page. The administrator needs to log onto the system using a password authentication system similar to the county agents.

Functionalities

For a detailed description of the various modules this project has been divided into see project_module.doc.

Improvements and Enhancements

a) Speed:

One of the major enhancements to this module is the increased speed. As the tests will later demonstrate, the speed of the website is exceedingly fast in terms of connectivity and data entry. The layout of the application sheet and the user interface ensure that data can be quickly and accurately entered. The use of appropriate constraint checking both in Oracle and ASP.NET has also added to the speed of the application. The extensive use of Oracle Packages and Stored Procedures in this project has greatly reduced code in the ASP.NET implementation and ensures that data is returned from the Oracle database itself rather than using embedded sql queries in ASP.NET, which has further improved speed.

b) Reduction in Lines of Code:

The use of ASP.NET has also lead to a reduction in the number of lines of code needed to implement all the modules of this project. The use of user controls rather than individual web forms for each page has helped in both reusability of code and reduction in size. This helps the application to load faster which is further enhanced by the use of dynamic placeholders are used to load only the required controls rather than every single element on a page.

c) Improved User Navigation:

The user interface makes navigation between sections of the worksheet very simple and intuitive. Also, the elements on each page allow for many editing functions to be carried out which is also greatly beneficial to the users.

d) Storage of View State in State Server:

The view state is used by the server controls to manage their state across individual web requests. In this application the view state of the page is stored in the state server thereby causing the pages to load faster and simultaneously reducing their size.

e) Cascading Style Sheets:

Style Sheets have been extensively used in this project. Cascading style sheets reduce defining properties for each HTML element and have also been implemented to include a number of print and screen functions.

Testing

Functional Test

Please refer to funtional_testings.doc.

ANTS Load Test

The Advanced .NET Testing System (ANTS) is a tool used for load and scalability testing of .NET applications and other web services.

It provides highly useful information to predict a web application’s behavior and performance and works on all .NET applications. It has the advantage of being able to auto-generate testing scripts and also test XML web services.

The results of this test include information about the fastest and the slowest objects in the web application along with the fastest and slowest web pages in the application, in terms of load times and stress handling.

This helps to eliminate the slowest unnecessary objects in the web application and increase the speed of the slowest web pages in the application.

Figure 6: ANTS Load Test – 1

Figure 6.1: ANTS Load Test - 2

Figure 6.2: ANTS Load Test – 3

Figure 6.3: ANTS Load Test - 4

Requirements Matrix

Require-ment Number	Category	Requirement Description	Scenario Performed	Expected Outcome	Actual Outcome	Pass or Fail	Comments
BR-01	Business	Login through the portal
BR-02	Business	Contact the administrator Fields
BR-03	Business	Generates Email
BR-04	Business	If selected, user gets email
BR-05	Business	Class Registration Box
BR-06	Business	Registration Page Fields
BR-07	Business	Available classes should be in drop down
BR-08	Business	If already registered, information defaults
BR-09	Business	Pop up – Registration accepted
BR-10	Business	Confirmation email to ist-pmotraining and student
BR-11	Business	Disclaimer shows on bottom of screen
BR-12	Business	Reschedule Class Box
BR-13	Business	Reschedule Link
BR-19	Business	Cancel Link
BR-22	Business	Disclaimer shows on page
BR-14	Business	Reschedule page fields
BR-15	Business	Note on page that this will cancel current class
BR-16	Business	Generates email to ist-pmotraining and student with new class
BR-17	Business	Lists of classes takes you to the registration page
BR-18	Business	Generates email to all for confirmation
BR-20	Business	Cancellation page fields
BR-21	Business	Generates email w/ cancellation
BR-23	Business	View Courses Box
BR-24	Business	Database field set up
BR-25	Business	Final status should automatically update with rescheduled and cancelled
BR-25	Business	Trainer should be able to update final status as complete
BR-26	Business	Only admin can see the notes fields
BR-27	Business	Training Schedule Box
BR-28	Business	Calendar display
BR-29	Business	Class link takes you to course description
BR-30	Business	Location link takes you to the facilities data
BR-31	Business	Edit rights for calendar – admin only
BR-32	Business	Disclaimer shows on page
BR-33	Business	Note shows on page
BR-34	Business	IST-PMOTraining email link works
BR-35	Business	Once class is full, it is no longer available to select.
BR-36	Business	Training Classes Box
BR-37	Business	Listing of courses available display.
BR-38	Business	Each course should be a link to the detailed description of the course.
BR-39	Business	Facilities Management Box
BR-40	Business	Database with fields outlined.
BR-41	Business	Only editable by Admin Users
BR-42	Business	Users only see the first 4 fields.
BR-42	Business	Note on screen about notice prior to cancellation.
BR-44	Business	Evaluation section
BR-45	Business	Listing of previous classes
BR-46	Business	Evaluation template
BR-47	Business	Ability to enter each student’s eval
BR-48	Business	Calculated class average
BR-49	Business	Only visible to admin user
OR-01	Output	Produces student transcripts
OR-02	Output	Registration database print out that can be sorted in different ways
OR-03	Output	Class attendance rooster reports
OR-04	Output	Sign in sheets with the students for that class
OR-05	Output	Email with class rooster 1 week prior
OR-06	Output	Email for cancelled or rescheduled 3 times
OR-07	Output	Re-generate sign in sheet 4 weeks after class
OR-08	Output	Evaluation reports
AR-01	Audit	Admin security settings work
AR-02	Audit	Added to Administration Manual
AR-03	Audit	Marking staff that is no longer employed
MR-01	Maintenance	Back up working
MR-02	Maintenance	Restorable
SR-01	Security	Notes viewable only to Admin in registration database
SR-02	Security	Edit rights to the training calendar for admin user only
SR-03	Security	Facilities management database on changed by admin
SR-04	Security	Access through my.umdnj
Add On	Pre-Requisites	Unable to register for classes that require a previous course

Approval

The individuals below agree that they have reviewed and approved the contents outlined in this Support Documentation.

APPROVED BY:
Function Role	Name and Title	Signature	Date

References

[1] Nikhil Kothari and Vandana Datye. (2002). “ASP.NET Server Controls and Components”, Microsoft.

[2] Oracle 10 g Overview (http://www.oracle.com/database/Enterprise_Edition.html)

[3] ANTS load (http://www.red-gate.com/dotnet/load_testing.htm)

[4] Scott Urman. (1997). “Oracle 8 PL/SQL Programming”, Osborne McGraw-Hill

[5] ASP.NET Overview (http://msdn.microsoft.com/asp.net/technologyinfo/overview/default.aspx)

[6] Dave Sussman, Alex Homer, Rob Howard, Karli Watson, Brian Francis, Richard Anderson . (2001). “Professional ASP.NET”, Apress

[7] Dave Sussman, Alex Homer, Rob Howard, Karli Watson, Brian Francis, Richard Anderson. (2004). “Professional ASP.NET 1.1 (Programmer to Programmer)”, Wrox

[8] Kevin Loney. (2004). “Oracle 10g: The Complete Reference”, McGraw-Hill Osborne Media.

Appendices

Appendix A – Technologies used to implement the project

a) Microsoft Visual Studio .NET

The .NET framework forms the basic infrastructure for the new Microsoft .NET platform. It is a widely used and common environment for building, deploying, and running web services and web applications. It contains several class libraries, such as ADO.NET, ASP.NET and Windows Forms, to provide advanced standard services that can be integrated into a variety of computer systems.

Another feature is that it is language-neutral and supports C++, C#, Visual Basic, JScript, and COBOL, providing unprecedented flexibility in the choice of language. A host of third-party languages are currently available and the list is steadily increasing for building future .NET framework applications.

The new Visual Studio.NET is a common development environment for the new .NET framework. It provides a feature-rich application execution environment, simplified development, and easy integration between several different development languages.

b) Oracle 10g

The database server for this application is Oracle 10g. It is primarily aimed at reducing costs and improving the quality of service by making the database easier to deploy and manage. It also includes advanced capabilities for backup and recovery and supports enhancements for data warehousing.

It is robust and web-enabled. It offers easier fine tuning to serve the required purpose. It provides the most powerful database for secure, reliable, high-capacity Internet applications, data warehouses and e-commerce websites.

It is highly scalable. It scales to support the most demanding, high-throughput applications. It reduces the complexity of administration. It can manage the multimedia content directly. It provides complete data protection by means of Oracle Data Guard.

c) Microsoft Excel

Microsoft Excel is used to download all of the data in the form of reports. The choice of Excel for this purpose is justified owing to its powerful spreadsheet capabilities that allow the creation, storage, manipulation, analysis, and visualization of data. The application makes use of several formulas and calculations that are easy to implement using Excel.