0% found this document useful (0 votes)
258 views35 pages

Software Requirements Specification

This document provides a software requirements specification for an online examination system. The system allows faculty to create tests, assign students to groups, and associate tests with groups. Students can then login and take tests, with their responses being automatically graded. Faculty can generate results and send them to students. The system should provide administrator functionality for backup, editing the database, and managing faculty access. It also outlines functional requirements for faculty to create and manage tests, student groups, and view results.

Uploaded by

Deepanshu Rai
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
258 views35 pages

Software Requirements Specification

This document provides a software requirements specification for an online examination system. The system allows faculty to create tests, assign students to groups, and associate tests with groups. Students can then login and take tests, with their responses being automatically graded. Faculty can generate results and send them to students. The system should provide administrator functionality for backup, editing the database, and managing faculty access. It also outlines functional requirements for faculty to create and manage tests, student groups, and view results.

Uploaded by

Deepanshu Rai
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 35

Software Requirements

Specification

UPSC upsc.gov.in

Prepared By Deepanshu Kumar


Registration No. 11612168
Section K1618
Roll No 44
Table of Contents

1. Introduction ......................................................................................................... 1
1.1. Project Overview .................................................................................... 1
1.2. Purpose................................................................................................... 1
1.3. Scope ...................................................................................................... 2
1.4. Definitions, Acronyms ............................................................................ 2

2. Functional or Specific Requirements .................................................................. 3


2.1. External Interface Requirements ............................................................ 6
2.1.1. Hardware Interfaces ................................................................................. 6
2.1.2. Software Interface .................................................................................... 6
2.1.3. Third Party Software Interfaces ............................................................... 6
2.1.4. Communication Protocol ......................................................................... 7
2.1.5. Assumption and Dependency .................................................................. 7
2.2. Non-Functional Requirements ................................................................. 7
2.3. Software System Attributes ..................... Error! Bookmark not defined.
2.3.1. Browser Compatibility ........................... Error! Bookmark not defined.
2.3.2. Globalization Support ............................ Error! Bookmark not defined.
2.3.3. Security .................................................................................................... 8
2.3.4. Reliability................................................................................................. 8
2.3.5. Availability .............................................................................................. 8
2.3.6. Portability................................................................................................. 9
2.3.7. Performance ............................................................................................. 9
2.4. Database Requirements.......................... Error! Bookmark not defined.
2.5. Technologies........................................................................................... 9
2.6. Software ................................................................................................ 10
2.7. Hardware ............................................................................................. 10
2.7.1. Server ..................................................................................................... 10
2.7.2. Client ...................................................................................................... 11

3. Analysis and Design ......................................................................................... 12


3.1. Use Case Diagram ............................................................................... 12
3.1.1. Use case Overview ................................................................................. 12
3.1.2. Add Faculty Use Case ............................................................................ 13
3.1.3. Login Use Case ...................................................................................... 13
3.1.4. Manage Student Groups Use Case ......................................................... 14
3.1.5. Student Registration Use Case ............................................................... 14
3.1.6. User Profile Edit Use Case .................................................................... 15
3.1.7. Manage Test Use Case ........................................................................... 16
3.1.8. Appear for Test Use Case ...................................................................... 17
3.1.9. Generate Result Use Case ...................................................................... 18
3.3. Sequence Diagrams .............................................................................. 19
3.3.1. Sequence Diagram Overview ................................................................ 19
3.3.2. Login Sequence Diagram ....................................................................... 20
3.3.3. Manage Student Groups Sequence Diagram ......................................... 21
3.3.4. Student Registration Sequence Diagram ............................................... 22
3.3.5. Manage Test Sequence Diagram ........................................................... 23
3.3.6. Appear for Test Sequence Diagram ....................................................... 24
3.4. Class Diagram...................................................................................... 25
3.5. Database Design .................................................................................. 26
3.5.1. Table: Student ........................................................................................ 27
3.5.2. Table: Test ............................................................................................. 27
3.5.3. Table: TestQuestions ............................................................................. 27
3.5.4. Table: StudentResponse ......................................................................... 28
3.5.5. Table: TestSession ................................................................................. 28
3.5.6. Table: Groups......................................................................................... 28
3.5.7. Table: Faculty ........................................................................................ 28
3.5.8. Table: AssignGroupTest ........................................................................ 29
1. Introduction
1.1. Project Overview

This project assesses students by conducting online objective


tests. The tests would be highly customizable. This project will
enable educational institutes to conduct test and have automated
checking of answers based on the response by the candidates.
The project allows faculties to create their own tests. It would
enable educational institutes to perform tests, quiz and create
feedback forms. It asks faculty to create his/her set of questions.
Faculty then creates groups and adds related students into the
groups. Further the tests are associated with specific groups so
that only associated students can appear for the test. The result of
the response would be available to the faculty of the question set.
Further the result would also be mailed to the student. This project
would be helpful for creating practice tests, say for educational
institutes and as a feedback form.

1.2. Purpose
Responses by the candidates will be checked
automatically and result will be generated before the
deadline.
Online examination will reduce the hectic job of
assessing the answers given by the candidates.
Being an integrated Online Examination System it
will reduce paper work.
Can generate various reports almost instantly when
and where required.

Page 1 of 35
1.3. Scope
This project would be very useful for educational institutes
where regular evaluation (yearly or half-yearly) of students
is required. Further it can also be useful for anyone who
requires feedback based on objective type responses.

1.4. Definitions, Acronyms


The sub-section provides the definitions of all terms,
acronyms, and abbreviations used in this document to
understand the SRS properly.

Sr.
Terms/Acronyms Description
No.
1. User mostly a student who will appear for the
Student
examination
Another user mostly faculty member, lecturer or
2.
Faculty examiner who posts set of questions, the available
options and correct answers.
3.
Administrator Super user, adds faculty and manages system.

Page 2 of 35
2. Functional or Specific Requirements
Required software is for conducting on-line `objective type
examination and providing results before the mentioned
deadline. The system should satisfy the following
requirements:
Administrator Aspect

1. Taking backup of the database


2. Editing/Deleting/Creating the database.
3. Adding or expelling faculty
4. Changing the super password.

Faculty Aspect

1. Logging into the system.


2. Sending invitations to specific student by mail
3. Accepting registrations of candidates
4. Adding the candidate to a group
5. Create/Edit/Delete candidate groups
6. Creating a test
7. Posting questions in the above test
8. Posting multiple options to respective question
9. Marking correct answer within the given options
10. Specifying to allow user defined answer
11. Time limit of the test if any.
12. Whether to randomize the questions

Page 3 of 35
13. Whether to randomize the options displayed
14. To allow the test to be taken in practice mode
where the correct answer is shown immediately
after the candidate selects an option.
15. Set negative marks for wrong responses

Student Aspect:

1. Requesting registration
2. Edit user information.
3. Selecting the test.
4. Selecting whether the test to be taken in practice
mode where the correct answer is shown
immediately after the candidate selects an option.
5. Appearing for the examination.
6. Printing the result at the end of the examination.
7. Reviewing the given responses.
8. Changing password.
9. Resetting of forgotten password
10. Logging into the system.

Analysis

1. Authenticating users based on username and


password
2. Keeping session track of user activity

Page 4 of 35
3. Recording candidates responses to every
question
4. Checking whether the given response is correct or
not
5. Keeping history of test reports of all users

Mailing

1. The reports are required to be mailed to the


candidates on the registered mail address.
2. Temporary password will be mailed to the user
incase the user forgets the password.
3. Invitations for the appearance for the new test will
be mailed.

Page 5 of 35
External Interface Requirements

2.1.1. Hardware Interfaces


Server side hardware

Hardware recommended by all the software


needed.
Communication hardware to serve client
requests
Client side hardware

Hardware recommended by respective clients


operating system and web browser.
Communication hardware to communicate the
server.

2.1.2. Software Interface


Server side software

Web server software, Apache Tomcat


Server side scripting tools: PHP
Database tools: DBMS.
Compatible operating system: Linux / Windows
Client side software

Web browser supporting JavaScript, refer


Browser Compatibility 2.3.1

2.1.3. Third Party Software Interfaces


None

Page 6 of 35
2.1.4. Communication Protocol
Following protocols are required to be permitted on the server
side
HTTP incoming request
HTTPS incoming request if secure gateway is
implemented
Following protocols are required to be permitted on the client side
HTTP outgoing request
HTTPS outgoing request if secure gateway is
implemented

2.1.5. Assumption and Dependency


1. Username are valid email addresses of respective
user
2. Administrator has the authority to add/delete faculty
level accounts.
3. Faculty have the authority to approve/expel student
4. Faculty have the authority to change students group

2.2. Non-Functional Requirements


System should be able handle multiple users
Database updating should follow transaction
processing to avoid data inconsistency.

Page 7 of 35
2.2.1. Security
Administrator has the highest authority to edit/delete/create
database

Faculty have the authority to add/expel students

Students can only view their test records.

Faculty can view all the test records of every student.

Critical information like passwords should be transferred in


encrypted form

Passwords should be stored in encrypted form

Password will not be mailed to the user in case user forgets


password, instead either temporary password or a password
reset link will be sent.

2.2.2. Reliability
Data validation and verification needs to be done at every
stage of activity.
Validating user input
Use of locking mechanism while updating
database like transaction processing
Recovering the transaction using rollback.

2.2.3. Availability
The examination system being an online system should be
available anytime.
Constraints:

Though the system should be available 24x7 some features


may be restricted.

Page 8 of 35
Quiz creator may allow the specific test to be available
only at certain time like scheduled examination.
The test may be time limited so the candidates
appearing will have limited time to answer the test.

2.2.4. Portability
The web application will be built using PHP which has
support to run on any platform provided the required
compilers are available.
For database either XML or MySQL would be used,
that too has extensive support over many popular
architectures and operating systems.

Constraints:

Portability would be limited to the support provided by the


respective application vendor on various architectures and
operating environments.

2.2.5. Performance
The system would be used by multiple users at a time and may
grow as time passes; the system would need to implement
multithreading to achieve acceptable performance. Further a
database connection pool may also be required for assigning
faster database connection.

2.3. Technologies
This section lists all the technologies for the web based system.

Page 9 of 35
PHP scripting for server side scripting as it has a very
strong support for XML and MySQL.
XML as database format: The database performance
requirements are not very high and the ability to have
custom fields in case the quiz creator needs to add
more than expected answer options. This is limited in
any other database management system where we
have to first specify the maximum number of fields.
Apache as web server has a tight integration with PHP
and is also available for various popular platforms.

2.4. Software
Netbeans or Eclipse for PHP and XML coding.
Apache Tomcat as Web server

2.5. Hardware
The recommended hardware specified by the respective software
would suffice the needs. The memory and processing power
needed would increase as the number of users increase. The
estimated hardware requirements are as specified.

2.5.1. Server
The minimum hardware as recommended by all of the software
required on server side say web server, operating system and
development software
Processing speed of 1.6 GHz
1 GB of RAM
Network interface

Page 10 of 35
2.5.2. Client
The minimum hardware as recommended by all of the software
required on client side say web browser, operating system
Minimum hardware depending on the operating
system used
True color visual display unit
User peripherals for better interaction

Page 11 of 35
3. Analysis and Design
3.1. Use Case Diagram
3.1.1. Use case Overview

Page 12 of 35
3.1.2. Add Faculty Use Case

3.1.3. Login Use Case

Page 13 of 35
3.1.4. Manage Student Groups Use Case

3.1.5. Student Registration Use Case

Page 14 of 35
3.1.6. User Profile Edit Use Case

Page 15 of 35
3.1.7. Manage Test Use Case

Page 16 of 35
3.1.8. Appear for Test Use Case

Page 17 of 35
3.1.9. Generate Result Use Case

Page 18 of 35
3.2. Sequence Diagrams
3.2.1. Sequence Diagram Overview

Page 19 of 35
3.2.2. Login Sequence Diagram

Page 20 of 35
3.2.3. Manage Student Groups Sequence Diagram

Page 21 of 35
3.2.4. Student Registration Sequence Diagram

Page 22 of 35
3.2.5. Manage Test Sequence Diagram

Page 23 of 35
3.2.6. Appear for Test Sequence Diagram

Page 24 of 35
3.3. Class Diagram

Page 25 of 35
3.4. Database Design

Page 26 of 35
3.4.1. Table: Student

Field Name Data Type Constraints/Description


ID Unsigned Integer Primary Key, AutoIncrement
studentName Varchar2
groupID Unsigned Integer Foreign:Groups.ID
loginID Varchar2
password Varchar2

3.4.2. Table: Test

Field Name Data Type Description


ID Unsigned Primary Key, AutoIncrement
Integer
testTitle Varchar2
allowPractice Yes/No
timePerQuestion Unsigned in seconds, infinite if zero
Integer
timePerTest Unsigned in minutes, infinite if zero
Integer
createdBy Unsigned Foreign:Faculty.ID
Integer

3.4.3. Table: TestQuestions

Field Name Data Type Description


ID Unsigned Integer Primary Key, AutoIncrement
TestID Number Foreign:Test.ID
question Varchar2
option1 Varchar2 atleast two choices are required,
hence this field is required
option2 Varchar2 atleast two choices are required,
hence this field is required
option3 Varchar2
option4 Varchar2

Page 27 of 35
answer Unsigned Integer
allowCustomA Boolean
nswer
userAnswer Varchar2

3.4.4. Table: StudentResponse

Field Name Data Type Description


ID Unsigned Integer Primary Key, AutoIncrement
studentID Unsigned Integer Foreign:Student.ID
questionID Unsigned Integer Foreign:TestQuestions.ID
optionSelected Unsigned Integer if student does not answer, entry will
not be made in db
customAnswer Varchar2 only if optionSelected field is 0

3.4.5. Table: TestSession

Field Name Data Type Description


ID Unsigned Integer Primary Key, AutoIncrement
testID Unsigned Integer Foreign:Test.ID
studentID Unsigned Integer Foreign:Student.ID
testTakenOn Date/Time field required

3.4.6. Table: Groups

Field Name Data Type Description


ID Unsigned Integer Primary Key, AutoIncrement
groupName Unsigned Integer

3.4.7. Table: Faculty

Page 28 of 35
Field Name Data Type Description
ID Unsigned Integer Primary Key, AutoIncrement
facultyName Varchar2
loginID Varchar2
pass Varchar2

3.4.8. Table: AssignGroupTest

Field Name Data Type Description


ID Unsigned Integer Primary Key, AutoIncrement
groupID Unsigned Integer Foreign:Groups.ID
testID Unsigned Integer Foreign:Test.ID

1] Test case For Log In:

Project : - Online Examination System.


Objective : - To check whether user name & Password valid
or invalid.
Prepared By: - Team-P
Page : - Login Screen.
Test Data : - User=admin and Password =123.4.

Sr Steps Da Excepted Data Actu Stat


N ta al us
o. resul
t
1 Enter user name, Should navigate Pass
password and press to admins page
submit button
2 Enter User name Should Display Pass
and press submit message box
button.

Page 29 of 35
please fill all the
fields
3 Enter password and Should Display Pass
press submit button message box
please fill all the
fields
4 Enter blank user Should display a Pass
name and blank message box
password and press please fill all the
submit button. fields
5 Enter wrong user Should display a Pass
and password. message box
Invalid ID or
Password

Page 30 of 35
2] Test case For Navigation:

Project : - Online Examination System.


Objective : - To check whether different hyperlinks are
working properly or not.
Prepared By: - Team-P
Page : - home page (default page).

Sr Steps Data Excepted Data Actual Status


No. Result
1 Click on Home Should display Pass
page hyperlink home page
menu
2 Click on new Should display Pass
questionnaires questionnaires
hyperlink menu details page
3 Click on quiz Should display Pass
hyperlink menu quiz details
page
4 Click on show Should display Pass
result hyperlink result details
menu page
5 Click on login Should display Pass
hyperlink menu respective login
page
6 Click on queries Should display Pass
hyperlink menu queries details
page
7 Click on Should display pass
feedback feedback form
hyperlink menu page

Page 31 of 35
Page 32 of 35

You might also like