Software Requirement Specifications for the Student Course Information System


October 13, 1998


Table of Contents

1. Introduction
1.1 Purpose
1.2 Scope
1.3 Definitions, Acronyms and Abbreviations
1.4 References
1.5 Overview

2. General Description
2.1 Product Perspective
2.2 Product Functions
2.3 User Characteristics
2.4 General Constraints
2.5 Assumptions and Dependencies

3. Specific Requirements
3.1 Functional Requirements
3.2 Performance Requirements
3.3 Design Constraints
3.4 Attributes
3.5 External Interface Requirements

4. Entity Relationships Diagram
5. Data Flow Diagram (Level 0)
6. Data Flow Diagram (Level 1)
7. Data Flow Diagram (Level 2)
8. Data Flow Diagram (Level 2)

10. Appendix A
11. Appendix B



1 Introduction

1.1 Purpose

1.1.1 Purpose of the Software Requirement Specification (SRS) The purpose of this SRS is to supply California State University at Northridge with an outline of a software product to handle the student course information process. 1.1.2 Intended Audience Individuals responsible for reviewing all proposals for this software are the intended audience for this document. This may include students, faculty, administrators and any individual who may be responsible for maintaining and upgrading the current computer system, and purchasing new systems. 1.2 Scope
1.2.1 Software products to be produced
The software product proposed by this SRS is the Student Course Information System (SCIS).

1.2.2 Purpose of the SCIS
The SCIS will provide students access to course performance information. It will also give instructors a means to access and manage course information. The SCIS will have the following features:
 

a) The student will be able to access the system through the Web.
b) The student will be able to "register" (initially identify themselves) with the system for a specific class by providing their names, student identification number and the class that they are taking.
c) The system will access the University's Student Information Database to check that the student has meet the prerequisites (as specified by the instructor).
d) The system will send an email message to the instructors whenever a student registers for his/her class and does not have one or more of the prerequisites.
e) When students "register" with the system, the system will ask them to specify a password for them to use when retrieving their own performance data.
f) Students will be asked to provide their email addresses that the system will use to build mailing lists for each class.
g) The instructor will be able to identify each class for which information is to be collected by specifying its course number, title, and term given.
h) Instructors will be able to specify each piece of course work (assignments, test, etc.) to the system by giving it a name or identifier and indicating the maximum number of possible points.
i) Instructors will be able to specify the prerequisites they want the system to check for at the time the students "register".
j) After course work is graded, the instructors will be able to enter the scores for each student.
k) Instructors will be able to generate a report containing all currently available student information for a given course.
l) The system will automatically compute the mean, median and mode for each item of course work.
m) Students will be able to access the information to retrieve their own scores for a given course work item, but not be able to get the specific scores of other students.
n) Students will be able to get statistical information, such as the mean, for any course work item completed.
o) Students will be able to see if they have any course work missing.
p) Students will be able to see their total score to-date as a percentage of the total number of points to-date.
q)The data in the system will be protected to prevent unauthorized access.
1.2.3 Application of software 1.2.3.1 Relevant benefits, objectives, and goals

This software will provide an easily and widely accessible interface for students and instructors to access course information. Such a system, which does not currently exit, will benefit and facilitate communication between instructors and students. The visual interface will provide prompts to the user. The software will be accessible through any computer capable of browsing the World Wide Web.

1.3 Definitions, Acronyms and Abbreviations
 
SRS: Software Requirements Specification.
CSUN: California State University Northridge.
SCIS: Student Course Information System.
USIDB: University Student Information Database.
HTML: Hypertext Markup Language. The formatting of text to be viewed on the Internet.
JavaScript: A computer programming language designed to run on any computer running a JavaScript capable browser.
URL: Universal Resource Locator. Commonly called an Internet address, a link to another web page or file.
WWW: World Wide Web. A subset of the Internet designed to handle graphics and other visually appealing material.
Course: A subject suitable for teaching which could be found in the Class Catalog.
Class: An instance of a course.


1.4 References

 
Entity/Relation Description
Data dictionary


1.5 Overview
1.5.1 Contents of the SRS

 
The SRS will provide a description of the SCIS. It will provide an outline of the requirements. It will also provide an overview of the characteristics d and constraints of the SCIS.

1.5.2 SRS organization
The following section, section 2, will provide an overview of the SCIS and its perspectives, functions, characteristics, constraints, and dependencies. Section 3 will outline in more detail the specific requirements for the software.


2 General Description

2.1 Product Perspective
 

SCIS would be the first such system established in CSUN, it would benefit students and instructors greatly. SCIS is a system that will provide detailed class information for both instructors and students. It is a system that can reduce large amounts of work for instructors and also let students check their individual work and give them an idea of how their performance compares to the other students. SCIS is not totally independent; much of the students' information will come from University Students Information Data Base(USIDB). The principal external interfaces that will be used include a Register screen, Set User Attributes screen, Student Report screen, Instructor’s Choice screen, Instructor’s Class Report screen, and Edit Class Table screen. SCIS is a user friendly and portable program. It is accessible to students and instructors 24 hours a day during the semester; however it is required that computers have to be connected to the University's computing network.


2.2 Product Function

The main functions involved in the SCIS are organized depending on the different types of users. The users include instructors and students. The login process is the same for both users; however the system will be dependent on different types of passwords to fetch different functions. For students, the system would just fetch his/her individual class work information report and also included class mean, median, mode, statistics and etc.. For instructors the system would fetch a menu that would allowed the instructors either to edit or change the class table or to view all students' class information in that particular class. And also the system would generate the report print out for both instructors and students.


2.3 User Characteristics

The users of the SCIS include instructors, students, faculty and network administrators. The users are assumed to have at least high school graduate educational level, and have the basic knowledge and experience about a web browser. However, the User Graphical Interface, detailed user manual and help file should provide enough help for any new user.


2.4 General Constraints

Since SCIS is dependent on USIDB and CSIDB, anyone who wants to use the system has to make sure that his or her computer is connected to the CSUN network. Students are not allowed to get the specific scores of other students. In order to keep our first version simple and efficient, our system would only allow students and instructors to access one class at each login. If the feature that allows students and instructors to access multiple classes at one login is desired, that feature would be provided by the follow up versions. The other safety and security considerations and the hardware/software limitations are listed in section 3.4 and 3.5.


2.5 Assumptions and Dependencies

Since SCIS is just a model of a real time system, it is assumed that system can access USIDB and CSIBD, and retrieve the information that is needed. It is also assumed that instructors have an employee password, which has the different format from the student password, hence the system will be able to distinguish between two different passwords.


3. Specific Requirements

3.1. Functional Requirements
3.1.1 Level 0
3.1.1.1.System

This system, called "Student-Course information System", is proposed to assist both instructors and students in accessing and managing information about student performance for a given class.

- Inputs: Password
ID
name
class
email address
class attributes
students' scores

- Processing: It can assist either instructors or students in accessing
and managing information about student performance for a given class. For students, they can view their class information. For instructors, they can modify students' scores and view class information.

- Outputs:
Class information
Mailing List
Email message

3.1.2. Level 1
3.1.2.1. Login
This function identifies a user that is trying to access the system by
recognizing the input that a user accessed and comparing it to information that is already on the system.

- Inputs:
ID
Name
Ticket #
Password
Email Address

- Processing: It identifies the input by passing ID and password to
check-access-permission which checks the input. If it is the right input, it lets the user access the system. Otherwise, users have to register first.
Permission determines which function the user can use. For student users, they can use Report-Generator only. However, instructors can use edit-class-table.

- Outputs: ID
password
ticket #
permission
email address

3.1.2.2. Check Access Permission

This function checks that the user is eligible and has the proper
requirements to access the different functions or operations of the SCIS.

- Inputs:
ID
password

- Processing: It verifies that the user has the proper requirement to be
eligible to access the different operations of the system by passing
user's id to user-profile-database. It receives password and permission
from user-profile-database checks and then passes the permissions to Login.
- Outputs:
permission

3.1.2.3. Register
This function is the operation for the user who has to register.

Inputs:
User ID (both Instructor and Student)
Password
PIN #
email address
Ticket #

Processing: It lets the user register for a new class. It first receives the User ID, Password, PIN#, email address, and Ticket #. It sends the Student ID to the USIDB and then receives the completed course list from the USIDB. It then sends the ticket # to the Class Table and receives the prerequisites for the class. It checks to see if the student has the correct prerequisites by comparing the two. It will notify a user by email.

- Outputs:
mail notification

3.1.2.4. Edit Class Table
This function allows a instructor to edit a class.

- Inputs:
id
ticket #
permission

- Processing: It gives class table a ticket #, and Class Table returns a current class attribute to it. Instructors can edit a current class attribute and save a new class attribute onto Class Table.

- Outputs:
new class attribute

3.1.2.5. Report Generator

This function is the operation that reports student course information
to the user.

- Inputs:
id
ticket #
permission

- Processing: It sends the id which it has received from Login to USIDB and User Profile Database. The Report Generator then receives current student information from USIDB and student email address from User Profile Database. Also, it gets class attribute and scores from Class Table. After that, it reports student class information.

- Outputs:
report

3.2. Performance Requirements
3.2.1. The system should be able to handle and support every student who
will enroll in CSUN.

3.3. Design Constraints 3.3.1. Standards Compliance
3.3.1.1. SCIS should take in a standard student ID and password.
3.3.1.2. SCIS should use standard course ticket numbers.
3.3.1.3. SCIS should be able to link to the existing student database.
3.3.1.4. SCIS should be able to link to the existing class database.
3.3.2. Hardware Limitation
3.3.2.1.The software should be able to run on any computer attached to
the university network, including internet connection.   3.4 Attributes

3.4.1 Availability
3.4.1.1 SCIS should be available for instructor’s use at the time when the registration process begins.
3.4.1.2 SCIS should be available for students’ use at the time when classes begin.
3.4.1.3 SCIS should be available for users’ access 24 hours a day.

3.4.2 Security
3.4.2.1 All access to the system is possible only if a valid user ID and password were submitted.
3.4.2.2 Secure data transfer over the Internet is provided using 40 or 128 bit encryption and Secure Sockets Layer.
3.4.2.3 Security level depends on the current user’s permissions

3.4.2.3.1 Student
3.4.2.3.1.1 A student can choose to disable Secure Connection over the Internet to speed up the connection or in case there is no compatible software available.
3.4.2.3.1.2 Unsuccessful login attempts are logged and if more then 10 attempts during 1 hour are detected a warning email message suggesting to change the password and/or contact system administrator is sent to the student.

3.4.2.3.2 Instructor
3.4.2.3.2.1 Instructors can choose between 128-bit and 40-bit encryption depending on the software available, but can not disable Secure Connection over the Internet.
3.4.2.3.2.2 All locations (IP addresses) from which the system was accessed are logged. When a new location is detected the instructor is notified during his/her next login. The notification will specify the date and time the account was accessed from an unusual location and suggesting to contact the system administrator in case of unauthorized access.
3.4.2.3.2.3 Unsuccessful login attempts are logged and if more then 5 attempts during 1 hour are detected a warning email message suggesting to change the password and/or contact the system administrator is sent to the instructor.
3.4.2.4 Only the information directly related to the users request is transferred over the Internet. All statistical calculations are done on the server and only the results are sent.
3.4.2.5 The user is automatically disconnected after a warning message from the system when there is a 20 minute period of inactivity.

3.4.3 Maintainability
3.4.3.1 SCIS is developed using an object-oriented programming language.
3.4.3.2 All new classes used are clearly defined and documented.
3.4.3.3 All the classes, functions and other software elements that come with precompiled libraries, operating system, etc. are clearly specified (software product name, version, company information).
3.4.3.4 The user interface is developed with the current version of HTML and/or JavaScript. The code should be compatible with both Microsoft and Netscape products and documented in detail.

3.5 Other Requirements
3.5.1 External Interface Requirements
3.5.1.1 User Interface
3.5.1.1.1 The user interface lets users access the system through the WWW, using a web browser (more specific in section 3.5.1.2)
3.5.1.1.2 Screen formats (See attached diagrams, Appendix A)
3.5.1.1.2.1 The Register screen lets the user input name, user ID, class section number and password or PIN number for the first- time user or for the user who needs to change his/her password or email address. The user can press the OK button to submit the information, Clear button to clear the text boxes or Cancel button to cancel the request.
3.5.1.1.2.2 The Set User Attributes screen comes out if the user submitted his/her PIN number at the Register screen. It lets the user input a new password, type it one more time in another text box to verify it and input his/her new email address. The user can press the OK button to submit the information, Clear button to clear the text boxes or Cancel button to cancel the operation. When the information is accepted by the system the user is returned to the Register screen unless he/she pressed an EXIT button that disconnects the user from the system.
3.5.1.1.2.3 The Student’s Report screen comes out when the ID and password submitted at the Register screen correspond to a student account. It contains student’s name, ID, list of assignments and corresponding scores for the current student and maximum scores for each assignment (in case of missing course work an M score is assigned) and for current up to-date total score and percentages. Statistical information about class performance, such as mean, median and mode for each item of course work (assignment) and for current up to-date total score is also included. The student can press the EXIT button to exit the system.
3.5.1.1.2.4 The instructor’s choice screen comes out when the ID and password submitted at the Register screen correspond to the instructor’s account. The instructor can choose the View Class Information button that invokes the Instructor’s Class Report screen or Edit Class Table button that invokes Edit Class Table screen. The instructor can press the EXIT button to exit the system
3.5.1.1.2.5 The instructor’s Class Report screen contains all the information that the Student’s Report does, but for ALL the students and for class performance as well.(look above, 3.5.1.1.2.3). The instructor can press the Back to Menu button to return to the Instructor’s choice screen or the EXIT button to exit the system
3.5.1.1.2.6 The Edit Class Table screen is similar to the Instructor's Class Report screen, but every cell of the table contains a textbox that contains the corresponding score that can be changed by the instructor. If the instructor presses the Save button, the entered changes are saved and all the textboxes are deactivated. If the instructor presses the Cancel button, the entered changes are discarded and all the textboxes are deactivated. If the instructor presses the Add New Assignment button, the Edit Class Table screen comes out, but the table has one more column for the new assignment. The instructor also can press the Back to Menu button to return to the Instructor's Choice screen or the EXIT button to exit the system.

3.5.1.2 Software Interface
3.5.1.2.1 The user interface should be compatible both with Microsoft and Netscape products and should look and behave the same both with Netscape Navigator and Internet Explorer. It must be backwards compatible with the browsers version at least one version before the latest.
3.5.1.2.2 The user interface should look and behave the same regardless the client’s platform. Minimum requirement is support for Windows 3.xx, Windows 95/98 (and current version), MacOS7, MacOS8and UNIX.
3.5.1.2.3 The server side of SCIS should run on the k200 system using existing operating system HP-Unix.

3.5.2 Data Base
3.5.2.1 The System Database includes two tables that are stored in two separate files
3.5.2.1.1 Class table that contains the list of assignments, maximum scores for each assignment and corresponding score for every students according to student’s ID numbers.
3.5.2.1.2 Password-email-permissions table contains passwords, email addresses and access permissions for all the users.



4.Entity Relationships Diagram

5. Data Flow Diagram (Level 0)

6. Data Flow Diagram (Level 1)

7. Data Flow Diagram (Level 2)

8. Data Flow Diagram (Level 2)

 




 

10 Appendix A
10.1 HTML files of sample screens
10.2 Capture of sample screens
 
 


 

11 Appendix B
 
Name Aliases Description Generated by Used by Form
User Identification ID# Identifying

user

University Login,

Register,

Report Generator,

User Profile Database,

USIDB,

Class Table

seven digit number
Instructor Identification Instructor ID Identifying

instructor

University Edit Class Table seven digit number
Student Identification User ID Identifying student University USIDB,

Class Table

seven digit

number

Personal Identification Number PIN# Identifying student University Register,

USIDB

four digit number
Name Name User’s Name User Login 50 char
Ticket # Class Identification

Number

Identifying Class University Login,

Register,

User Profile Database,

Edit Class Table,

Class Table,

Report Generator

5 digit number
Password User Password Identifying User User Register,

Login,

Check Access Permission,

User Profile Database

25 char
User Email Address User Email

Address

User Email Address User Login,

Register,

User Profile Database

25 char?
Instructor Email Address Instructor

Email Address

Instructor

Email

Address

Instructor Register,

User Profile Database

25 char?
Student Email Address Student Email Address Student 

Email 

Address

Student Login,

Register,

User Profile Database

25char?
Permissions Permissions Permissions User Profile Database Check Access Permission,

Login,

Edit Class Table

1 digit number
Completed Course List Completed Course List Completed Course List USIDB Register Text file
Email Notification Email Notification Email Notification Register Instructor Text file

 
 
Name Aliases Description Generated by Used by Form
New Class Attributes New Class Attributes New Class Attributes Edit Class Table Class Table Text file
Current Class Attributes Current Class Attributes Current Class Attributes Class Table Report Generator Text file
Scores Scores Scores Class Table Report

Generator

Text file
Current Student Information Current Student Information Current Student Information USIDB Report Generator Text file
Prerequisites Prerequisites Prerequisites Class Table Register Text file
Completed Course List Completed Course List Completed Course List USIDB Register Text file
Report User Report Individual student report or class report (for instructor only) Report Generator User Html file