Sunteți pe pagina 1din 37

Department of Software Engineering Bahria University, Islamabad

Software Requirements
Specification

&

Software Design
Specification
for

Automated Answer Grading


System
Prepared by:
Syeda Rabia Arshad ( 01-131152-041 )
Syyeda Izza Naqvi ( 01-131152-044 )

Supervisor:
Dr. Raja Muhammad Suleman

Signature: _________________________
Department of Software Engineering Bahria University, Islamabad

Table of Contents
CHAPTER-1 INTRODUCTION ............................................................................................................ 1
1.1 Project Overview ..................................................................................................................... 2
Purpose .................................................................................................................................. 2
Document Conventions ......................................................................................................... 2
Intended Audience and Reading Suggestions ........................................................................ 2
Operating Environment ......................................................................................................... 2
Product Scope ........................................................................................................................ 3
1.2 Project Vision and Functional Requirements.......................................................................... 3
Product Perspective ............................................................................................................... 3
Product Functions .................................................................................................................. 3
Hardware Interfaces .............................................................................................................. 4
Software Interfaces ................................................................................................................ 4
CHAPTER-2 ANALYSIS ...................................................................................................................... 5
2.1 Use case Diagram .......................................................................................................................... 6
System Diagram ..................................................................................................................... 6
Sign in Use Case ..................................................................................................................... 7
Attempt Exam Use Case ......................................................................................................... 7
Re-attempt Exam Use Case .................................................................................................... 8
View Grade Use Case ............................................................................................................. 8
Alter Grade Use Case ............................................................................................................. 9
Store Data Use Case ............................................................................................................. 10
Grade Answer Use Case ....................................................................................................... 11
2.2 Use case Description ................................................................................................................... 12
Sign in ................................................................................................................................... 12
Alter Grade ........................................................................................................................... 13
Attempt Exam ...................................................................................................................... 13
View Grade ........................................................................................................................... 14
Submit Question .................................................................................................................. 15
Submit Solution .................................................................................................................... 16
Grade Answer....................................................................................................................... 17
2.3 Project Constraints...................................................................................................................... 19
Design and Implementation Constraints ............................................................................. 19
Department of Software Engineering Bahria University, Islamabad

2.4 Non-Functional Requirements .................................................................................................... 19


Performance Requirements ................................................................................................. 19
Safety Requirements ............................................................................................................ 19
2.5 Domain Model ............................................................................................................................ 20
Entity Relationship Diagram (ERD) ....................................................................................... 20
Data Flow Diagram (DFD) ..................................................................................................... 21
CHAPTER-3 DESIGN ......................................................................................................................... 22
3.1 Sequence Diagrams..................................................................................................................... 23
Login Scenario ...................................................................................................................... 23
Logout Scenario.................................................................................................................... 23
Attempt Exam ...................................................................................................................... 24
End Exam on Timeout .......................................................................................................... 24
Finish Attempt and Submit .................................................................................................. 25
View Grade ........................................................................................................................... 25
Teacher submits exam data ................................................................................................. 26
Alter Grade ........................................................................................................................... 26
3.2 Class Diagram .............................................................................................................................. 27
CHAPTER-4 LOGICAL DATA MODEL AND FUNCTIONAL FLOWS ......................................... 28
4.1 Functional Flow ........................................................................................................................... 29
Functional Flow Diagram ..................................................................................................... 29
4.2 Logical Data Model ..................................................................................................................... 30
Logical Data Diagram ........................................................................................................... 30
CHAPTER-5 USER INTERFACE AND SAMPLE REPORT FORMATS ........................................ 31
5.1 User Interface ............................................................................................................................. 31
User Interfaces ..................................................................................................................... 32
5.2 Report Formats ........................................................................................................................... 32
Student Report ..................................................................................................................... 32
Teacher Report..................................................................................................................... 33
Department of Software Engineering Bahria University, Islamabad

List of Figures
Figure 1 Class Diagram ............................................................................. Error! Bookmark not defined.
Figure 2 Use case Diagram ....................................................................... Error! Bookmark not defined.
Figure 3 Final Output ............................................................................... Error! Bookmark not defined.
Department of Software Engineering Bahria University, Islamabad

CHAPTER-1
INTRODUCTION

1
Department of Software Engineering Bahria University, Islamabad

1.1 Project Overview

Purpose
Automated Answer Grading System is the automated solution of paper checking and grading process.
Based on the domain of Artificial Intelligence, this web application will be able to analyze and mark
short answers given by students.

Document Conventions
The words that have special significance are written in bold. Emphasis have been created on the
words or terms that are highlighted with bold, italic or underlined.
API Application Programming Interface
OS Operating System
AI Artificial Intelligence
ML Machine Learning
AAGS Automated Answer Grading System

Intended Audience and Reading Suggestions


Intended Audience: User
Reading Suggestions: Section 1.1 Purpose, Section 2.1 Product Perspectives, Section 2.4 Operating
Environment, Section 3.1 User Interfaces, Section 3.4 Communication Interfaces

Intended Audience: Developer


Reading Suggestions: Section 1.4 Product Scope, Section 2.5 Design and Implementation constraints,
Section 3 External Interface Requirements, Section 4 System Features

Intended Audience: Tester


Reading Suggestions: Section 2.2 Product Functionality, Section 4 System Features

Intended Audience: Documentation Writers


Reading Suggestions: Section 1.2 Document Conventions, Appendices.

Operating Environment
The system will require a functional internet connection. Would be accessible from both the
computer and mobile devices. Supporting operating systems:

• Windows Operating System (XP, Vista, 8, 8.1, 10)

2
Department of Software Engineering Bahria University, Islamabad

• Mac OS
• iOS
• Android OS.

The file types that will be accepted by the system is word file.

Product Scope
This system is limited to short answers given in English language. Also, it is the requirement of this
system that the teacher must upload the question paper along with the correct answers (the answer
key). Only then the system will be able to mark the student’s answer based on the teacher’s
predefined criteria.

The teacher will have to upload the question paper and the answer key only once and the system will
automatically grade the answers of all the students.

1.2 Project Vision and Functional Requirements

Product Perspective
Automated Answer Grading System is a self-contained system, Tests/Exams can be conducted and
graded using this system. Some of the features of this system are:
• The teacher will have to provide the questions set and the correct answer key.
• The student will attempt those questions in a specific time.
• The system will grade the answer for the teacher

This system is intended to be used in educational institutions where tests or exams are manually
checked. The manual answer checking process is redundant and more error prone. So, automating
this process will reduce the workload of teacher and will be less time consuming.

Product Functions
Exam:

• Teacher can Add/Edit/Delete Exam.


• Teacher can Add/Edit/Delete Exam Questions.
• Teacher can Add/Edit/Delete Exam Question Answers.
• Teacher can set the Duration of the Exam.
• Student can attempt the exam.
• Student can Review Exam Questions.

Result:

• System will automatically generate the Result for the Exam.

3
Department of Software Engineering Bahria University, Islamabad

• The student answer will be mapped to one of the following categories: Expert answer,
Intermediate answer, Novice answer.
• Students can View their Result against each Exam.
• Student can View Correct/Expected Answers in the Result.

Data storage:

• The exam data including exam questions and solutions will be stored in the database.
• Student’s answer will be stored in the database.
• Student’s grade will be stored in database.

Reporting:

• Students can View a detailed report about their performance in an Exam.


• Student Reports will include grade, percentage, and the similarity index with the Expected
Answer.
• Teachers will be able to View the result of each student.
• Teacher Reports will include grade, percentage, similarity index with the Expected Answer
and the concepts that were missed.
• Teacher can Add/Edit/Delete comments on a Report.

Hardware Interfaces
This system contains no separate hardware device connected with it.

Software Interfaces
The tools and libraries using which this web application will be developed are as below:
➢ Flask Web Framework: For back-end restful API development
➢ React.js: For Front-end development
➢ Python Programming Language.
➢ NLTK: Stands for Natural Language Toolkit. This library will be used for natural language
processing i-e analyzing the student text, tokenizing statements into words, parts-of-speech
tagging etc.
➢ SpaCy: An AI (Artificial Intelligence) library that will be used to for text similarity and
semantic analysis
➢ Gensim: A ML (Machine Learning) library that will be used to train our system
➢ Sci-Kit Learn: A ML (Machine Learning) library that will be used for classification, co-relation,
feature extraction. Mainly for unsupervised learning.

4
Department of Software Engineering Bahria University, Islamabad

CHAPTER-2
ANALYSIS

5
Department of Software Engineering Bahria University, Islamabad

2.1 Use case Diagram

System Diagram

6
Department of Software Engineering Bahria University, Islamabad

Sign in Use Case

Attempt Exam Use Case

7
Department of Software Engineering Bahria University, Islamabad

Re-attempt Exam Use Case

View Grade Use Case

8
Department of Software Engineering Bahria University, Islamabad

Alter Grade Use Case

9
Department of Software Engineering Bahria University, Islamabad

Store Data Use Case

10
Department of Software Engineering Bahria University, Islamabad

Grade Answer Use Case

11
Department of Software Engineering Bahria University, Islamabad

2.2 Use case Description

Sign in
Use Case ID: AAGS-UC001

Use Case Name: Sign in

Created By: Syeda Rabia Arshad Last Updated By: Syyeda Izza Naqvi

Date Created: Nov 29, 2018 Date Last Updated: Dec 12, 2018

Actors: Teacher, Student

Description: The teacher and the student will be able to access the system after
logging in with their authentic username and password

Trigger: When the teacher or the student first request to access the system

Preconditions: 1. The internet is already working


2. The web application is already open in the browser
Postconditions: 1. The user can access the required features of the system

Normal Flow:

User Action: System Response:


1. User enters the 1. Username is validated by the system
username 2. The password is validated by the system

2. User enters password

Alternative Flows: 1(a). the username is incorrect

2(a). the username is correct, but password is incorrect

Exceptions:

Includes:

Priority: High

Frequency of Use: Once

Business Rules:

Special Requirements:

Assumptions: Both the teacher and the student have been provided with valid
username and password

Notes and Issues:

12
Department of Software Engineering Bahria University, Islamabad

Alter Grade
Use Case ID: AAGS-UC002

Use Case Name: Alter Grade

Created By: Syeda Rabia Arshad Last Updated By: Syyeda Izza Naqvi

Date Created: Nov 29, 2018 Date Last Updated: Dec 12,2018

Actors: Teacher

Description: The teacher will be able to do alterations in the marks graded by the
system

Trigger: When the teacher or the student first request to access the system

Preconditions: 1. The internet is already working


2. The web application is already open in the browser
Postconditions: 2. The user can access the required features of the system

Normal Flow:

User Action: System Response:


1. User views the grade 1. Display grade
2. Displays the answer given by student
2. User request the 3. New grade is recorded in the system
answer given by student

3. Do some alterations in
the grade

Alternative Flows:

Extension point: View Student Grade

Includes:

Priority: Low

Frequency of Use: Once

Business Rules:

Special Requirements:

Assumptions:

Notes and Issues:

Attempt Exam
Use Case ID: AAGS-UC003

13
Department of Software Engineering Bahria University, Islamabad

Use Case Name: Attempt Exam

Created By: Syeda Rabia Arshad Last Updated By: Syyeda Izza Naqvi

Date Created: Nov 29, 2018 Date Last Updated: Dec 12, 2018

Actors: Student

Description: The student will attempt the exam. Answer the questions which
were specified by the teacher

Trigger: When the student first request to attempt the exam

Preconditions: 1. The internet is already working


2. The web application is already open in the browser
Postconditions: 1. The user can access the required features of the system

Normal Flow:

User Action: System Response:


1. User views all courses 1. Display all courses
2. Exam is started by the system
2. User requests to 3. Answers are recorded in the system
attempt exam

3. After attempting, user


will submit the exam

Alternative Flows: 2(a). the exam cannot be started because he start time is not same
as specified by teacher

Extension point:

Includes:

Priority: High

Frequency of Use: Once

Business Rules:

Special Requirements:

Assumptions: The exam data has already been submitted by the teacher

Notes and Issues:

View Grade
Use Case ID: AAGS-UC004

Use Case Name: View Grade

Created By: Syeda Rabia Arshad Last Updated By: Syyeda Izza Naqvi

14
Department of Software Engineering Bahria University, Islamabad

Date Created: Nov 29, 2018 Date Last Updated: Dec 12, 2018

Actors: Student

Description: The student can also see their grade in respective course

Trigger: When the student first request to access the system

Preconditions: 1. The internet is already working


2. The web application is already open in the browser
Postconditions: 1. The user can access the required features of the system

Normal Flow:

User Action: System Response:


1. User clicks on result 1. The result is displayed by the system. The grade is displayed in
the result
2. User views the grade
displayed by the system

Alternative Flows: 2(a). the answer has not been graded yet

Extension point:

Includes:

Priority: Medium

Frequency of Use: Many

Business Rules:

Special Requirements:

Assumptions:

Notes and Issues:

Submit Question
Use Case ID: AAGS-UC005

Use Case Name: Submit Question

Created By: Syeda Rabia Arshad Last Updated By: Syyeda Izza Naqvi

Date Created: Nov 29, 2018 Date Last Updated: Dec 12, 2018

Actors: Teacher

Description: The teacher will be able to submit exam questions

Trigger: When the teacher request to access the system

Preconditions: 1. The internet is already working


2. The web application is already open in the browser

15
Department of Software Engineering Bahria University, Islamabad

Postconditions: 1. The user can access the required features of the system

Normal Flow:

User Action: System Response:


1. User enters the 1. Exam questions are saved in the database
questions 2. Exam data (solution + questions) is saved in the database

2. User enters the correct


answers of those
questions

Alternative Flows:

Extension point:

Includes:

Priority: High

Frequency of Use: Once

Business Rules:

Special Requirements:

Assumptions:

Notes and Issues:

Submit Solution
Use Case ID: AAGS-UC005

Use Case Name: Submit Question

Created By: Syeda Rabia Arshad Last Updated By: Syyeda Izza Naqvi

Date Created: Nov 29, 2018 Date Last Updated: Dec 12, 2018

Actors: Teacher

Description: The teacher will be able to submit exam questions

Trigger: When the teacher request to access the system

Preconditions: 1. The internet is already working


2. The web application is already open in the browser
3. User has already entered the questions
Postconditions: 1. The user can access the required features of the system

Normal Flow:

User Action: System Response:

16
Department of Software Engineering Bahria University, Islamabad

1. After user enters the 1. Exam data (solution + questions) is saved in the database which
questions, User enters he student will attempt.
the correct answers of
those questions

Alternative Flows:

Extension point:

Includes:

Priority: High

Frequency of Use: Once

Business Rules:

Special Requirements:

Assumptions: The user can provide more than one answers to a question

Notes and Issues:

Grade Answer
Use Case ID: AAGS-UC007

Use Case Name: Grade Answer

Created By: Syeda Rabia Arshad Last Updated By: Syyeda Izza Naqvi

Date Created: Nov 29, 2018 Date Last Updated: Dec 12, 2018

Actors: System

Description: The main action, the grading of the answer will be done by the
system.

Trigger: When the student has submitted the answer for grading.

Preconditions: 1. The internet is already working


2. The web application is already open in the browser
3. The teacher has already submitted the exam data
Postconditions: 2. The answer of the student will be graded.

Normal Flow:

User Action: System Response:


1. Student finishes 1. Student’s answer is saved in the database
attempt 2. The system takes the student’s answer and solution submitted
by the teacher
3. The system compares the two documents

17
Department of Software Engineering Bahria University, Islamabad

2. Student submits the 4. The student’s answer is graded against the solution.
answer 5. A grade is generated for the answer

Alternative Flows:

Extension point:

Includes:

Priority: High

Frequency of Use: Once

Business Rules:

Special Requirements:

Assumptions:

Notes and Issues:

18
Department of Software Engineering Bahria University, Islamabad

2.3 Project Constraints

Design and Implementation Constraints


Front-end designing: React.js

Language requirement: Javascript

Back-end Development: Flask Web Framework

Language: Python

Communication Protocol: HTTP

2.4 Non-Functional Requirements

Performance Requirements
There can be many students attempting the exam simultaneously, so the system must perform well
under heavy load. If teacher has made any alterations in the grade, then the system must learn that,
and the same mistake must not be repeated for any other student answer.

Safety Requirements
Teacher and Student interfaces should be secured with appropriate usernames and passwords so
that no student can access any other student’s account.

The questions that the teacher uploads should be provided to all the students only. The student
should not have the access to correct answer key that the teacher will upload along with the
questions unless the teacher shares the solution themselves.

19
Department of Software Engineering Bahria University, Islamabad

2.5 Domain Model

Entity Relationship Diagram (ERD)

20
Department of Software Engineering Bahria University, Islamabad

Data Flow Diagram (DFD)

21
Department of Software Engineering Bahria University, Islamabad

CHAPTER-3
DESIGN

22
Department of Software Engineering Bahria University, Islamabad

3.1 Sequence Diagrams

Login Scenario

Logout Scenario

23
Department of Software Engineering Bahria University, Islamabad

Attempt Exam

End Exam on Timeout

24
Department of Software Engineering Bahria University, Islamabad

Finish Attempt and Submit

View Grade

25
Department of Software Engineering Bahria University, Islamabad

Teacher submits exam data

Alter Grade

26
Department of Software Engineering Bahria University, Islamabad

3.2 Class Diagram

27
Department of Software Engineering Bahria University, Islamabad

CHAPTER-4
LOGICAL DATA MODEL AND
FUNCTIONAL FLOWS

28
Department of Software Engineering Bahria University, Islamabad

4.1 Functional Flow

Functional Flow Diagram

29
Department of Software Engineering Bahria University, Islamabad

4.2 Logical Data Model

Logical Data Diagram

30
Department of Software Engineering Bahria University, Islamabad

CHAPTER-5
USER INTERFACE AND SAMPLE
REPORT FORMATS

5.1 User Interface

31
Department of Software Engineering Bahria University, Islamabad

User Interfaces
The system includes two types of user interfaces:
1. The Teacher Interface:
Through this interface, teachers will interact with the system. Teacher’s interface will be
secured by username and password. The teachers will be able to:
• Upload the exam questions which the student will have to attempt.
• Upload the correct answer key along with the set of questions. The student’s
answers will be marked against this answer key
• View the grades of students marked by the system
• Alter or approve the grades marked by the system

2. The Student’s Interface


Provide students interaction with the system. This will be secured with username and
password. The student will be able to attempt the exam and submit his/her answers. The
number of attempts for a student will be decided by the teacher.

5.2 Report Formats

Student Report
Name: XYZ
Grade: A
Similarity: 67%
Answer Level: Intermediate (3 answer levels: Expert, Intermediate, Novice)
List of Concepts Matched:
List of Concepts Missed:

32
Department of Software Engineering Bahria University, Islamabad

Teacher Report

Name: XYZ
Grade: A
Similarity: 67%
Answer Level: Intermediate (3 answer levels: Expert, Intermediate, Novice)
List of Concepts Matched:
List of Concepts Missed:

Class Result Report

Concepts Matched Concepts Missed Average Similarity

33

S-ar putea să vă placă și