Documente Academic
Documente Profesional
Documente Cultură
Software Requirements
Specification
&
Software Design
Specification
for
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
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
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
Operating Environment
The system will require a functional internet connection. Would be accessible from both the
computer and mobile devices. Supporting operating systems:
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.
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:
Result:
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:
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
System Diagram
6
Department of Software Engineering Bahria University, Islamabad
7
Department of Software Engineering Bahria University, Islamabad
8
Department of Software Engineering Bahria University, Islamabad
9
Department of Software Engineering Bahria University, Islamabad
10
Department of Software Engineering Bahria University, Islamabad
11
Department of Software Engineering Bahria University, Islamabad
Sign in
Use Case ID: AAGS-UC001
Created By: Syeda Rabia Arshad Last Updated By: Syyeda Izza Naqvi
Date Created: Nov 29, 2018 Date Last Updated: Dec 12, 2018
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
Normal Flow:
Exceptions:
Includes:
Priority: High
Business Rules:
Special Requirements:
Assumptions: Both the teacher and the student have been provided with valid
username and password
12
Department of Software Engineering Bahria University, Islamabad
Alter Grade
Use Case ID: AAGS-UC002
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
Normal Flow:
3. Do some alterations in
the grade
Alternative Flows:
Includes:
Priority: Low
Business Rules:
Special Requirements:
Assumptions:
Attempt Exam
Use Case ID: AAGS-UC003
13
Department of Software Engineering Bahria University, Islamabad
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
Normal Flow:
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
Business Rules:
Special Requirements:
Assumptions: The exam data has already been submitted by the teacher
View Grade
Use Case ID: AAGS-UC004
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
Normal Flow:
Alternative Flows: 2(a). the answer has not been graded yet
Extension point:
Includes:
Priority: Medium
Business Rules:
Special Requirements:
Assumptions:
Submit Question
Use Case ID: AAGS-UC005
Created By: Syeda Rabia Arshad Last Updated By: Syyeda Izza Naqvi
Date Created: Nov 29, 2018 Date Last Updated: Dec 12, 2018
Actors: Teacher
15
Department of Software Engineering Bahria University, Islamabad
Postconditions: 1. The user can access the required features of the system
Normal Flow:
Alternative Flows:
Extension point:
Includes:
Priority: High
Business Rules:
Special Requirements:
Assumptions:
Submit Solution
Use Case ID: AAGS-UC005
Created By: Syeda Rabia Arshad Last Updated By: Syyeda Izza Naqvi
Date Created: Nov 29, 2018 Date Last Updated: Dec 12, 2018
Actors: Teacher
Normal Flow:
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
Business Rules:
Special Requirements:
Assumptions: The user can provide more than one answers to a question
Grade Answer
Use Case ID: AAGS-UC007
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.
Normal Flow:
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
Business Rules:
Special Requirements:
Assumptions:
18
Department of Software Engineering Bahria University, Islamabad
Language: Python
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
20
Department of Software Engineering Bahria University, Islamabad
21
Department of Software Engineering Bahria University, Islamabad
CHAPTER-3
DESIGN
22
Department of Software Engineering Bahria University, Islamabad
Login Scenario
Logout Scenario
23
Department of Software Engineering Bahria University, Islamabad
Attempt Exam
24
Department of Software Engineering Bahria University, Islamabad
View Grade
25
Department of Software Engineering Bahria University, Islamabad
Alter Grade
26
Department of Software Engineering Bahria University, Islamabad
27
Department of Software Engineering Bahria University, Islamabad
CHAPTER-4
LOGICAL DATA MODEL AND
FUNCTIONAL FLOWS
28
Department of Software Engineering Bahria University, Islamabad
29
Department of Software Engineering Bahria University, Islamabad
30
Department of Software Engineering Bahria University, Islamabad
CHAPTER-5
USER INTERFACE AND SAMPLE
REPORT FORMATS
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
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:
33