business specification document

34
Specification Document April 15, 2011 Deborah Obasogie XYZ Training Institute

Upload: deborah-obasogie

Post on 10-Feb-2017

84 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Business Specification Document

Specification Document

April 15, 2011

Deborah Obasogie

XYZ Training Institute

Page 2: Business Specification Document

i

TABLE OF CONTENTS

Project Overview: ....................................................................................................................................... 1

Project Name: ......................................................................................................................................... 1 Project Company:.................................................................................................................................... 1 Project Purpose:...................................................................................................................................... 1 Project Description: ................................................................................................................................ 1 Project Start Date: .................................................................................................................................. 1 Project End Date: .................................................................................................................................... 1

Prepared By: ....................................................................................................................................... 1 Prepared Date: .................................................................................................................................... 1

Project Scope ............................................................................................................................................. 1 Project Goals and Objectives ................................................................................................................. 1 Project Critical Success Factors .............................................................................................................. 2 Project Budget ....................................................................................................................................... 7 Project Funding ...................................................................................................................................... 7

Project High Level Requirements ................................................................................................................ 7 Functional Requirements ........................................................................................................................ 7 Nonfunctional Requirements .................................................................................................................. 8 Project Deliverables ............................................................................................................................... 8

Project Conditions ...................................................................................................................................... 9 Project Assumptions .............................................................................................................................. 9 Project Constraints ................................................................................................................................. 9 Project Risks ......................................................................................................................................... 10

Stakeholder Analysis ................................................................................................................................. 11 Roles and Responsibilities ......................................................................................................................... 11 Project High-level Approach and Business Design .................................................................................... 13

System Decomposition Diagram (Existing System) ............................................................................... 13 Process Flow Diagram (Existing System) ............................................................................................... 14 System Decomposition Diagram (New System) .................................................................................... 15 Process Flow Diagram (New System) .................................................................................................... 16

Use Case Analysis ...................................................................................................................................... 17 High-level Use Case Diagram ................................................................................................................ 17 Use Cases .............................................................................................................................................. 18

Mocks-up of User Interaction: .................................................................................................................. 20 Data Analysis & Logical Data Model.......................................................................................................... 29

Business Rules ....................................................................................................................................... 30 Assumptions ......................................................................................................................................... 30

High-level Architecture Diagram ............................................................................................................... 31 System Architectural Layers .................................................................................................................. 31 Three-Tier Client-Server Database ........................................................................................................ 32 How Layers Communicate With Each Other ......................................................................................... 32 Benefits of System Architectural Layers................................................................................................ 32

Page 3: Business Specification Document

XYZ Project

1

Project Overview:

Project Name: XYZ Project.

Project Company: XYZ Training Institute.

Project Purpose:

XYZ would like to automate the process of tracking, historic

information, data analysis, marketing of student data. Currently

they do not have the ability to systematically perform these

functions on student data.

Project Description:

XYZ is a new company that provides training in various subject

areas including Project Management, Microsoft Products, and

Programming languages Java and C++. Currently they use MS

Excel to track the student enrollments. XYZ management would

like to develop a system that would allow them to enroll students,

track the history of a given student and their performance in the

classes that they completed and currently enrolled. They want to be

able to manage student information, course information, manage

course offerings (classes).

Project Start Date: January 4, 2010 Project End Date: June 7, 2010

Prepared By: Deborah Obasogie Role: Project Manager

Prepared Date: December 1, 2009 Version: 1.0

Project Scope:

Project Goals and Objectives:

Goals Objectives

1. To make it easy to enroll students, track the enrollments and

potentially run the reports to strategize the offerings in the future

by summer semester July 5, 2010 within budget.

2. To make it easy for the advisors to provide information to the

potential students.

3. To run reports to understand what kind of students take what

classes and hence market to the right audience.

To increase the efficiency

and

effectiveness

of student

data by 80%

within 1 year.

Page 4: Business Specification Document

XYZ Project

2

Project Critical Success Factors:

Develop an enrollment management system that will provide:

A process to enroll students and track their enrollments.

A process to run reports that identify “what kind of students take what classes”.

A process to “provide information to the potential students”.

A mechanism that holds and manages the following data:

Student information:

Name

o First

o Last

Address(es)

o Street

o City

o State

o Zip

Social security number

Marital Status

Birthday

Phone(s)

Email(s)

Emergency contact(s)

o Name

o Phone

Race

Religion

Gender

Citizenship

Education(s)

o Degree

o Major field of study

o Degree completion year

o Institution

Name

Address

Street

Page 5: Business Specification Document

XYZ Project

3

City

State

Zip

Occupation (s)

Employer(s)

o Name

o Address

Street

City

State

Zip

Vehicle(s)

o Year

o Make

o Model

o Plate state

o Plate number

Certificate program

Financial aid lender

Work study employer

Student enrollment information:

Enrollment date

Course offerings (classes)

o Session

Month

Year

o Session Period

Start date

End date

o Day

o Time

Start time

End time

o Instructor

o Room

Grade

Page 6: Business Specification Document

XYZ Project

4

Course information:

Number

Title

Description

Prerequisite(s)

Credit hours

Instructor information:

Name

o First

o Last

Address(es)

o Street

o City

o State

o Zip

Social security number

Phone(s)

Email(s)

Emergency contact(s)

o Name

o Phone

Education(s)

o Degree

o Major field of study

o Degree completion year

o Institution

Name

Address

Street

City

State

Zip

Occupation (s)

Employer(s)

o Name

o Address(s)

Page 7: Business Specification Document

XYZ Project

5

Street

City

State

Zip

Facility information

o Location

o Room number

o Room capacity

A process to provide Marketing with the following information for analysis purposes:

Student information:

Name

o First

o Last

Address(es)

o Street

o City

o State

o Zip

Social security number

Marital Status

Birthday

Phone(s)

Email(s)

Emergency contact(s)

o Name

o Phone

Race

Religion

Gender

Citizenship

Education(s)

o Degree

o Major field of study

o Degree completion year

o Institution

Page 8: Business Specification Document

XYZ Project

6

Name

Address

Street

City

State

Zip

Occupation (s)

Employer(s)

o Name

o Address(s)

Street

City

State

Zip

Vehicle(s)

o Year

o Make

o Model

o Plate state

o Plate number

Certificate program

Financial Aid lender

Work study employer

Student enrollment information:

Enrollment date

Course offerings (classes)

o Session

Month

Year

o Session Period

Start date

End date

o Day

o Time

Start time

End time

Page 9: Business Specification Document

XYZ Project

7

o Instructor

o Room

o Grade

Course information:

Number

Title

Description

Prerequisite(s)

Credit hours

Project Budget:

Breakdown Amount

1. Project Budget $750,000.

Project Funding:

All funding is provided by customer, XYZ Training Institute.

Project High Level Requirements:

Functional Requirements:

In Scope Out of scope

1. Tracking, historic information and analysis of student

data:

a. System should enroll students and track student

enrollments.

b. System should keep and access last two years and

going forward history. History information consists

of the student, enrollment and course information

listed above.

c. System should supply Marketing with the student

information for their purposes.

2. System should provide the following formatted reports:

a. Course offerings (Course Offerings Report).

b. List of students for each class (Enrollment Report).

c. List of all the classes that a student has taken and is

Student payments.

Company’s vendors.

3 other student performance reports

(to be completed in a

separate project.)

Page 10: Business Specification Document

XYZ Project

8

registered currently (Grades and Student History

Reports).

Nonfunctional Requirements:

In Scope Out of scope

1. Performance: System must accommodate 2500 concurrent

users.

2. Security: Every user of system must have their own login

to see and use system.

A work breakdown structure (WBS) and project plan will be developed and supplied at a

later date to satisfy the requirements.

Project Deliverables:

Event or Deliverable Target Date Responsibility

Project charter completed Jan 8, 2010 Project Manager

Project charter approved Jan 19, 2010 Project Sponsor, Customer

Project WBS completed Jan 8, 2010 Project Manager

Project WBS approved Jan 19, 2010 Project Sponsor, Customer

Project plan completed Feb 19, 2010 Project Manager

Project plan approved Feb 29, 2010 Project Sponsor, Customer, Subject

Matter Experts

Project team assembled Mar 1, 2010 Project Manager

Project execution initiated Mar 1, 2010 Project Manager

Process providing

information to the potential

students.

Apr 16, 2010 Project Manager, Development team.

Process to enroll students

and track their enrollments.

Apr 30, 2010 Project Manager, Development team.

Report Process that identifies

“what kind of students take

what classes”.

May 14, 2010 Project Manager, Development team.

Page 11: Business Specification Document

XYZ Project

9

Marketing process May 21, 2010 Project Manager, Development team.

Project execution completed May 28, 2010 Project Manager

Customer acceptance Jun 1, 2010 Project Sponsor, Customer, Subject

Matter Experts

Project closed out Jun 7, 2010 Project Manager

Project Conditions:

Project Assumptions:

There is a business need to develop a student management system.

All courses are owned by XYZ Training Institute.

Research supports automation would be beneficial to XYZ Training Institute.

Project Constraints:

Dimension Constraint

(state limits) Driver

(state objective) Degree of Freedom

(state allowable range)

Features

40-50% of high priority

features must be

included in release 1.0,

70-90% in release 1.1,

95-100% in release 1.3.

Quality

90-93% of user

acceptance tests must

pass for release 1.0, 94-

97% for release 1.1, 98-

100% for release 1.3.

Cost Budget overrun up to

10% acceptable with

approval by Customer

and Project Sponsor.

Schedule

Release 1.0 to be

available by 4/16,

release 1.1 by 4/30,

release 1.3 by 5/14.

Staff Maximum team size is

4 developers + 2

testers + specific

customer resources.

Page 12: Business Specification Document

XYZ Project

10

(See the roles and

responsibilities

section.)

Project Risks:

# Risk Impact

Level

Probability

of

Occurrence

Notes Mitigation Plan

1 Lack of

customer

participation.

High Low Project requires

support of customer

and its resources for a

total student

management system

solution.

Dedicated

change

management

effort.

2 Deliverables

not finished

by due date.

High Low Success of project

depends on the

completion on certain

deliverables.

Project

monitoring to

realize prior to

due date. Add

additional

resources or

extend hours to

complete.

3 Staffing Medium Low Success of project

depends on ability to

staff with credible

experience in the

technical areas.

Use of IS

specialist for

expertise;

staffing

assessment at

project review.

4 Cost Medium Medium We developed an early

estimate of 98 and 99

costs. However, we do

not yet have a full

understanding of

sustained costs.

Develop a total

life cycle cost

estimate during

project as part of

the milestone

decision.

5 Schedule Medium Medium Current industry

practices indicate 18-

36 months were

required to develop

student management system.

Utilize project

management

approach to

plan, monitor

and control project.

6 Quality Unknown Low This risk factor will

depend on the results

of project events and

Continue to

understand

requirements for

Page 13: Business Specification Document

XYZ Project

11

deliverables.

processes and

rigor.

7 Undefined

Reports

High High This risk factor will

depend on the

complexity of the 3

undefined reports.

Define

requirements for

reports as soon

as possible &

include effort

into estimated

project cost.

Stakeholder Analysis:

# Stakeholder Role Stake

1 Jim Logan Customer High. The person or department

requesting the project.

2 JoAnne Kline Project Sponsor High. Provides overall direction on

the project.

3 Coordinator, Barry

Rigler

Subject Matter Expert High. Knowledgebase for current

system.

4 Scheduler, Ann

Archibald

Subject Matter Expert High. Knowledgebase for current

process.

5 Student Subject Matter Expert High. User of need new system.

6 Advisor Subject Matter Expert High. User of need new system.

7 Instructor Subject Matter Expert High. User of need new system.

8 Account Executive Subject Matter Expert High. User of need new system.

9 Marketing Subject Matter Expert Medium. User of need new system

information.

Roles and Responsibilities:

Sponsor: Provides overall direction on the project. Responsibilities include: approve the

project charter and plan; secure Subject Matter Expert resources for the project; confirm the

project’s goals and objectives; keep abreast of major project activities; make decisions on

escalated issues; and assist in the resolution of roadblocks. Name Email / Phone

Director JoAnne Kline, XYZ Training

Institute

[email protected]/816-555-4441

Project Manager: Leads in the planning and development of the project; manages the project

to scope. Responsibilities include: develop the project plan; identify project deliverables;

identify risks and develop risk management plan; direct the project resources (team members);

scope control and change management; oversee quality assurance of the project management

Page 14: Business Specification Document

XYZ Project

12

process; maintain all documentation including the project plan; report and forecast project

status; resolve conflicts within the project or between cross-functional teams; ensure that the

project’s product meets the store objectives; and communicate project status to stakeholders. Name Email / Phone

Deborah Obasogie, Solutions Consultants [email protected]/913-444-1223

Team Member: Works toward the deliverables of the project. Responsibilities include:

understand the work to be completed; complete research, data gathering, analysis, and

documentation as outlined in the project plan; inform the project manager of issues, scope

changes, and risk and quality concerns; proactively communicate status; and manage

expectations. Name Email / Phone

Steffan Smith, Solutions Consultants [email protected]/913-444-1567

Monica Thomas, Solutions Consultants [email protected]/913-444-1789

Rita Bakes, Solutions Consultants [email protected]/913-444-1890

Tom Morgan, Solutions Consultants [email protected]/913-444-8490

Customer: The person or department requesting the project. Responsibilities include: partner

with the sponsor or project manager to create the Project Charter; partner with the project

manager to manage the project including the timeline, work plan, testing, resources, training,

and documentation of procedures; work with the project team to identify the technical

approach to be used and the deliverables to be furnished at the completion of the project;

provide a clear definition of the business objective; sign-off on project deliverables; take

ownership of the developed process and software. Name Email / Phone

Jim Logan, XYZ Training Institute [email protected]/816-555-3456

Subject Matter Expert: Provides expertise on a specific subject. Responsibilities include:

maintain up-to-date experience and knowledge on the subject matter; and provide advice on

what is critical to the performance of a project task and what is nice-to-know.

Name Email / Phone

Barry Rigler, XYZ Training Institute [email protected]/816-555-2134

Ann Archibald, XYZ Training Institute [email protected]/816-555-3876

Page 15: Business Specification Document

XYZ Project

13

Project High-level Approach and Business Design:

System Decomposition Diagram (Existing System):

0

Enrollment System

2

Class Enrollment

3

Post- Enrollment

2.2

Withdraw From A

Class

2.3

Add A Class

2.1

Enroll In A Class

3.1

Create Enrollment

Lists

1

Pre-Enrollment

1.1.2.1

Create Course

Brochures

1.1.2.2

Create Section

Lists

2.1.1

Select Couse

2.1.2

Select Section2.1.3

Email Notification

2.1.1.1

Check Prerequisite

2.1.2.1

Check Availability

3.2

Update Student

Grade Card

3.3

Maintain Student

Information

3.2.1

Submit Grades

3.3.1

Update Personal

Details

1.3.1

Get Classroom

Information

1.2

Maintain Instructor

Information

1.3

Maintain Facilities

Information

1.1

Maintain Course

Information

1.1.2

Create Course

Lists

1.1.1

Set Up Course

1.1.2.2.2

Select Location

1.1.2.2.3

Select Instructor

1.1.2.2.1

Select Term

Page 16: Business Specification Document

XYZ Project

14

Process Flow Diagram (Existing System):

Student

3

Post-

Enrollment

2

Class

Enrollment

1

Pre-

Enrollment

Spreadsheet

Administrator

Account

Executive

Advisor

Instructor

Enrollment

list

Enrollment

list

Registrar

Updated course, instructor, facilities, student dataBrochure informaton

Course information

Course forms

Course brochures

Course brochure, lists, forms: enroll, add, drop

Take class Add Class Drop class

Enrollment form

Add form

Drop formValidates class enrollment

Withdrawal

addition

Class enrolled

Class withdrawn

Class added

Confirms class enrollment

Withdrawal

Addition

Course offerings

Student selected classes

Submit grades

Enrollment list

Student final grades

Couse

list

Course list

Course list

Page 17: Business Specification Document

XYZ Project

15

System Decomposition Diagram (New System):

0

Enrollment Management

2

Student Enrollment

3

Operational

2.1

Enroll Classes

1

Academic

3.6

Manage

Environment

1.3

View Enrollment

List

1.4

View Grades

1.2

View Course

Offerings

4.3

Store Student

History

4.1

Create Defined

Reports

4.2

Create Analysis

Data

4

Data Management

1.5

View Student

History

3.1

Manage Users

3.2

Manage Students

3.5

Manage Courses

3.4

Manage Instructors

1.6

View Defined

Reports

1.1

View Course

Catalog

1.7

View Analysis

Data

3.3

Manage Facilities

3.6.1

Set Up

Infrastructure

3.6.2

Set Up Hardware

3.6.3

Set Up Software

3.1.1

Set Up Logons

3.5.1

Create Course

Catalog

3.5.2

Create Course

Offerings

3.5.3

Create Enrollment

List

3.4.1

Submit Grades

3.4.2

Select Class to

Teach

4.4

Secure Data

4.5

Output Data

4.1.1

Get Report Data

4.2.1

Get & Format

Data

4.3.1

Store Data

4.3.2

ReStore Data

3.1.2

Set Up Profiles

Page 18: Business Specification Document

XYZ Project

16

Process Flow Diagram (New System):

1

Academic

Views

2

Student

Enrollment

3

Operational

Management

4

Data

Management

Student AdvisorAccount

ExecutiveMarketing

Enrollment Lists

Grades

Output of data

Analysis data

Captured analysis data Catalog, offerings of courses, student history, report information

Information output

Course catalog & offerings

history of student information

Output of Information

Student grades data

Instructor

Course

Catalog

Registrar

Student

grades

Student

history Student history data

Student

reports Student reports data

Student selected course offerings

Course offerings approval

Selected course offerings

Enrollment confirmation

Output confirmation

Administrator

Enrolled course

offering

Submit grades

File updates

users

students

courses

instructors

facilities

Reports, analysis, student history data

Users

data

Students

data

Courses

data

Instructors

data

Facilities

dataUpdated user profiles

Updated students data

Updated courses data

Updated

facilities

data

Historical and analysis information

Enrollment

data

Select course to teach

Course information

Updated

instructors

data

Course

dataCourse Catalog data

Analysis

data Analytical data

reports, analysis, student history data outputs

logons, infrastructure, hardware, software, data security

Page 19: Business Specification Document

XYZ Project

17

Use Case Analysis:

High-level Use Case Diagram:

Student

Enroll Classes

View Grades

Logon

Instructor

Account Executive

Advisor

Select Courses to

Teach

Submit Grades

Registrar

View Defined

Reports

View Analysis Data

Marketing

Maintain Course

Information

Maintain Student

Information

Maintain

Instructor Information

Maintain

Facilities Information

Create Defined

Reports

Store Student

History

Create Analysis

Data

Administrator

Course Catalog

Output Data

View Student

History

View Course

Offerings

View Enrollment

List

View Course Catalog

Manage Users

Manage Environment

Secure Data

View Student

History

Page 20: Business Specification Document

XYZ Project

18

Use Cases:

Use Case Id UC001

Use Case Name Enroll Classes

Requirement Id Req001

Priority High

Description

To allow a student to enroll for course offerings in the current semester. The student can also update or delete course offerings if changes are made within the add/drop period at the beginning of the current semester.

Related Use Cases Output Data, Abandon Use Case

Sources

Primary Business Actor

Student

Other Participating Actors

Other Interested Stakeholders

Preconditions

1. The student is enrolled at XYZ Training Institute. 2. The student is a valid user with valid student id and password to use system. 3. The student has accessed XYZ Training Institute web site and has logged into the system from

the Logon Menu.

Triggers

Typical Course of Action

A. The student performs the Enroll Classes action.

B. The system verifies that the enrollment period has not expired according to business rule

BR005 – Course Enrollment.

C. The system displays the empty grid that’s populated with course offerings based on the

following actions:

Create an Enrollment

Update an Enrollment

Delete an Enrollment.

If the student selects “Create an Enrollment”, the Create an Enrollment subflow is executed.

If the student selects “Update an Enrollment”, the Update an Enrollment subflow is executed.

If the student selects “Delete an Enrollment”, the Delete an Enrollment subflow is executed.

D. Create an Enrollment

1. The system retrieves a list of available course offerings from the Course Catalog and

populates the grid with this list for the student to view.

2. The student selects by double clicking the desired course offering(s) from the list of

available offerings according to business rule BR001 – Course Offerings.

3. Once selections are made, the system creates an enrollment for the student containing

the selected course offering(s).

4. The Submit Enrollment subflow is executed.

E. Update a Enrollment

1. The system verifies that the add/drop period has not expired according to business rule BR006 – Add/Drop Period.

2. The system retrieves the student’s current enrollment (the enrollment for the current

Page 21: Business Specification Document

XYZ Project

19

semester) from the Course Catalog and populates the grid with this list. 3. The student updates the course selections on the current selection by deleting and adding

new course offerings. The student selects the course offerings to add from the list of available course offerings. The student also selects any course offerings to delete from the existing enrollment according to business rule BR001 – Course Offerings.

4. Once selections are made, the system updates the enrollment for the student using the selected course offerings.

5. The Submit Enrollment subflow is executed. F. Delete an Enrollment

1. The system verifies that the add/drop period has not expired according to business rule BR006 – Add/Drop Period

2. The system retrieves the student’s current enrollment (the enrollment for the current semester) from the Course Catalog and populates the grid with this list.

3. The system prompts the student to confirm the deletion of the enrollment. 4. The student verifies the deletion. 5. The system deletes the enrollment. If the enrollment contains “enrolled in” course offerings,

the student is removed from the course offering according to business rule BR002 -Deleted Enrollment.

G. Submit Enrollment 1. For each selected course offering on the enrollment, the system verifies class availability

according to business rule BR003-Class Availability. 2. For each selected course offering on the enrollment, the system verifies that the student

has the necessary prerequisites according to business rule BR004 – Course Prerequisite. 3. For each selected course offering on the enrollment, the course offering is marked as 4. “enrolled in” in the enrollment according to business rule BR008 – Enroll Status. The

enrollment is saved in the system. 5. The system invokes the Output Data use case. The system displays the enrollment

containing the selected course offering(s) for the student, the confirmation number for the enrollment, and gives options to print, email or mail information.

Use case end here

Alternate Course of Action

1. Cancel a. The student performs the Abandon Use Case action. b. The system removes the changes make in this use case.

Use case ends here

2. Course Catalog System Unavailable. a. In Steps D1, E2 or F2 of the Basic Flow, the system is down, a message is displayed.

Use case ends here

3. Unfilled Prerequisites, Not Enough For Class, or Enrollment Conflicts a. In Steps G1 or G2 of the Basic Flow, Submit Enrollment, the system determines

prerequisites are not satisfied, that the course enrollment limit is not meet, or that there are conflicts with enrollments, the system will not enroll the student in course.

b. The system displays a message to select a different course. Use case resumes at Basic Flow of Action Steps D

4. Course Enrollment Closed a. The system determines that enrollment has closed, a message is displayed.

Use case ends here

5. Delete Canceled a. In Step F of the Basic Flow, Delete an Enrollment, the student decides not to delete an

enrollment, the delete is cancelled.

Page 22: Business Specification Document

XYZ Project

20

Use case resumes at Basic Flow of Action Step C1

6. No Enrollment Found a. In Steps E or F of the Basic Flow of Action, Update an Enrollment or Delete an

Enrollment, the system is unable to retrieve an enrollment, a message is displayed. Use case ends here

7. Save an Enrollment a. At any point, the student may choose to save rather than submitting an enrollment. If this

occurs, the Submit Enrollment step is replaced with the following message: b. The course offerings are marked as “selected”, not “enrolled in” in the enrollment according

to business rule BR007 – Save an Enrollment. c. The enrollment is saved in the system. Use case ends here

8. Add/Drop Period Closed b. The system determines that add/drop period has expired, a message is displayed. Use case ends here

Conclusions The student will be enrolled in, or updated or deleted a selected course offerings if they are eligible, there is classroom availability and within the enrollment period.

Post Conditions 1. The student is enrolled in selected course offerings or 2. The student has deleted a selected course offerings.

Business Rules

BR001 – Course Offerings. The student can select 1 or 2 course offerings. BR002 – Deleted Enrollment. If the enrollment contains “enrolled in” course offerings, the student must be removed from the course offering. BR003 – Class Availability. A class must have at least 5 students or it will be canceled. BR004 – Course Prerequisite. Course prerequisite must be satisfied to enroll in class. BR005 – Course Enrollment Period. Class enrollment is three days at beginning of each semester. BR006 – Add/Drop Period. Add/Drop period ends third week of each semester. BR007 – Save an Enrollment. The course offerings are marked as “selected”, not “enrolled in” in the enrollment status. BR008 – Enroll Status. The system creates an enrollment status of “enrolled in”.

Constraints

Assumptions

1. The Course Catalog provides a list of all the course offerings for the current semester. 2. Student has reviewed Course Catalog with Advisor. 3. Returning students are addressed in Maintain Student Information use case. 4. The Abandon Use Case is used on every screen of the system and doesn’t need to show in

use case diagrams.

Open Issues:

Mocks-up of User Interaction:

The system has different views of data specific to the user’s roles and responsibilities within the

system. These views are indicated as menu options over the top of each screen as a guide of

identifying the actor(s) of the screen. For example <ALL> indicates that all users are the actor(s).

In essence all users see the same screen. <STUDENT MENU> indicates that the actor is the

student. In general only students have access to this screen. <INSTRUCTOR MENU> indicates

that the actor is the instructor and in general only instructors have access to this screen or group

of screens.

Page 23: Business Specification Document

XYZ Project

21

Page 24: Business Specification Document

XYZ Project

22

Page 25: Business Specification Document

XYZ Project

23

Page 26: Business Specification Document

XYZ Project

24

Page 27: Business Specification Document

XYZ Project

25

Page 28: Business Specification Document

XYZ Project

26

Page 29: Business Specification Document

XYZ Project

27

Page 30: Business Specification Document

XYZ Project

28

Page 31: Business Specification Document

XYZ Project

29

Data Analysis & Logical Data Model:

Student

PK StudentID

ProgramID

LastName

FirstName

SSN

DOB

Race

Gender

Citizenship

Occupation

Address

Email

Phone

Contact

Vehicle

Employer

EmployerAddress

Degree

Major

Year

Institution

StartDate

CompletionDate

FinancialAid

WorkStudy

MaritalStatus

Religion

Course

PK CourseID

Number

Title

Description

Prerequiste

CreditHours

CourseOfferings

PK CourseOfferingID

FK1 CourseID

SessionMonth

SessionYear

SessionStartDate

SessionEndDate

StartTime

EndTime

Day

FK2 InstructorID

FK3 RoomID

Maximum

EnrollPeriod

AddPeriod

DropPeriod

Availability

Instructor

PK InstructorID

LastName

Firstname

SSN

Address

Email

Phone

Contact

Employer

EmployerPhone

Occupation

Room

PK RoomID

FK1 FacilityID

Number

Capacity

Availability

Enrollment

PK,FK1 CourseOfferingID

PK EnrollmentID

FK2 StudentID

Date

Grade

Status

Facility

PK FacilityID

FacilityLocation

Program

PK ProgramID

Certificate

enters

generates

teaches

is used for

contains

Is found in

is written in

FK1

Page 32: Business Specification Document

XYZ Project

30

Business Rules:

Business Rules: 1. BR001 – Course Offerings. The student can select 1 or 2 course offerings.

2. BR002 – Deleted Enrollment. If the enrollment contains “enrolled in” course offerings, the student must

be removed from the course offering.

3. BR003 – Class Availability. A class must have at least 5 students or it will be canceled.

4. BR004 – Course Prerequisite. Course prerequisite must be satisfied to enroll in class.

5. BR005 – Course Enrollment Period. Class enrollment is three days at beginning of each semester.

6. BR006 – Add/Drop Period. Add/Drop period ends third week of each semester.

7. BR007 – Save an Enrollment. The course offerings are marked as “selected”, not “enrolled in” in the

enrollment status.

8. BR008 – Enroll Status. The system creates an enrollment status of “enrolled in”.

9. BR009 – Class Maximum. A class can have a maximum of 15 students or it will be canceled.

10. BR010 – Room Availability. A room can be used only per day, time, session & period.

Assumptions:

Assumptions: 1. The student is enrolled at XYZ Training Institute. 2. The student is a valid user with valid student id and password to use system. 3. The student has accessed XYZ Training Institute web site and has logged into the system from the Logon

Menu. 4. The Course Catalog provides a list of all the course offerings for the current semester during enrollment. 5. Student has reviewed Course Catalog with Advisor. 6. Returning students are addressed in Maintain Student Information use case. 7. The Abandon Use Case is used on every screen of the system and doesn’t need to show in use case

diagrams.

Page 33: Business Specification Document

XYZ Project

31

High-level Architecture Diagram:

System Architectural Layers:

Presentation layer is made of web pages. The end user sees the web pages on a browser. The

user interface runs on the user's computer (the client). The client only displays the user

interface and data, but has no part in producing the results. The interface translates tasks and

results to something the user can understand.

The Application layer consists of the logic related to the presentation and application layers.

Input validation, business rules and the functional modules that actually process data are

performed here. The Application layer will define the components that are part of this layer.

This middle tier runs on a server and is often called the internet or web server.

The Data layer comprises of code to access the database. Its components may typically be

called by the application layer components. It also defines how this call should be made. It

designs the database structures, such as tables, views and so on. It handles data management

Presentation Layer

The top-most level of the

application is the user interface.

The main function of the interface

is to translate task and results to

something the user can

understand.

Application Layer

This layer coordinates the

presentation and application logic,

processes, commands, makes

business decisions and evaluation.

It also moves and processes data

between the two surrounding

layers.

Data Layer

Here information is stored and

retrieved from the database. The

information is then passed back to the

logic tier for processing, and eventually

back to the user. This tier handles data

manipulation or management and

database storage.

Student 1136

Student 1137

Student 1138

Student 1139

Database

Get

Enrollment

Total

1,139 Total

Enrollments

Get list of all students

enrolled this year.

Add all students enrolled

per semester for the year

together.

Storage

QUERY

Page 34: Business Specification Document

XYZ Project

32

and data storage. The database management system (DBMS) stores the data required by the

middle tier. This tier runs on a second server called the database server.

3-Tier Thin Client Architecture:

How Layers Communicate With Each Other:

Each layer comprises of one or more components. Each component being a part of the

application may communicate with one or more component. The component may “speak” to

the other components using one of the many protocols. The data as such may be “passed”

across in many formats such as binary, string, etc.

The different layers of the applications can be located on physically different machines.

Benefits of System Architectural Layers:

A 3-Tier thin client architecture offers the ability to scale your system according to how it

will be used. The added modularity makes it easier to modify or replace one tier without

affecting the other tiers. It gives you the ability to setup servers based on functionality and

scale accordingly. Separating the application functions from the database functions makes it

easier to implement load balancing. With the large number of users – students and staff,

high security and high volume processing requirements, 3-Tier thin client architecture is

more suitable.