Download as pdf or txt
Download as pdf or txt
You are on page 1of 9

Software Requirements Specification

Version 1.0

October 18, 2022

Grading Service Application

Miki Fukushima

Submitted in partial fulfillment


Of the requirements of
CST 438 Software Engineering

SRS V 1.0 1 October 18, 2022


2.0. Overall Description

2.1 System Environment

Figure 1 - System Environment

The Grading Service Application has two active actors and one for database

administrative role and developer. The instructor, student accesses the Gradebook Portal

through a web-based application hosted on the React and Spring Boot Server. Both types

of users must be authenticated using the Google’s OAuth 2.0 framework, however only

the instructor can add or make any modifications to the assignments. The developer / DB

admin accesses the entire system as well as the MySQL Gradebook database directly.

SRS V 1.0 2 October 18, 2022


2.2 Functional Requirements Specification

This section outlines the primary use cases for the instructor and student

separately. The instructor has three use cases since he or she is the primary end user for

the grading service application whereas a student who is the secondary end user.

2.2.1 Add New Assignment

Use case: Add New Assignment

Diagram:

Brief Description:
The instructor after logging into the application is able to click on the add new assignment
button from the main grading portal page. He or she is then able to add a new assignment to
the existing course.

Initial Step-By-Step Description


Before this use case can be initiated, the instructor has already logged into the grading
service application successfully through Google authentication.

1. The instructor clicks on the URL which redirects him or her to the add new
assignment page.
2. The application provides text entries for the instructor to enter the assignment name,
assignment due date, related course ID, grading needed on the redirected page.
3. The instructor enters the information and clicks on the submit button.
4. The application adds the new assignment information to the gradebook database.

Xref: Section 3.2.1, Add New Assignment

2.2.2 Add Score to Assignment

Use case: Add Score to Assignment

Diagram:

SRS V 1.0 3 October 18, 2022


Brief Description:
The instructor can select an assignment which he or she intends to modify. He or she selects
the assignment and enters the score for the assignment, then clicks on submit.

Initial Step-By-Step Description


Before this use case can be initiated, the instructor has already logged into the grading
service application successfully through Google authentication.

1. The instructor selects the assignment he or she intends to modify.


2. The application redirects the instructor to the new page where he or she can add the
score for the assignment.
3. The instructor enters the integer value as a score and submits it.
4. The application adds the new score to the existing assignment to the gradebook
database.

Xref: Section 3.2.3, Add Score to Assignment

2.2.3 Student Views Scores for Course

Use case: Student Views Scores for Course

Diagram:

Brief Description:
The student can select a course which he or she intends to view the scores for the
assignments. The student selects the course and click submit, then he or she is able to view
all of the scores associated with the assignments in selected course.

Initial Step-By-Step Description

SRS V 1.0 4 October 18, 2022


Before this use case can be initiated, the student has already logged into the grading service
application successfully through Google authentication.

1. The student selects the course he or she intends to view scores for.
2. The application redirects the students to the new page where he or she is able to see
the scores for all assignments associated with the selected course.

Xref: Section 3.2.3, Instructor to Submit Final Grade

2.2.3 Instructor to Submit Final Grade

Use case: Instructor to Submit Final Grade

Diagram:

Brief Description:
The instructor can enter the course ID which he or she intends to assign the final grade for.
The instructor clicks submit which invoke the application to calculate the final grade based
on the assignment scores of the students for the course ID he or she selected. The
application determines the final grade from letter A to F and append to the gradebook
database.

Initial Step-By-Step Description


Before this use case can be initiated, the instructor has already logged into the grading
service application successfully through Google authentication.

1. The instructor enters the course ID in the grading service application.


2. The application calculates the final grade based on the assignment scores of the
student in that course.
3. The application appends the final grade in the letter A-F to the gradebook database.

Xref: Section 3.2.3, Instructor to Submit Final Grade

SRS V 1.0 5 October 18, 2022


3.0. Requirements Specification
3.2 Functional Requirements

Four primary functional requirements for the grading service application are
defined below; Instructor to add assignments to the course, instructor to modify
assignment to add scores, student to view their scores for a course, instructor to submit
final grades for a course.

3.2.1 Add New Assignment


Use Case Name Add New Assignment
XRef Section 2.2.1, Add New Assignment
Trigger The instructor specifies the assignment name, assignment due
date, and course ID to add a new assignment to the existing
course on the database.
Precondition The main portal allows the instructor to click on the URL that
can redirect him / her to the add new assignment page after
logging into the application.
Basic Path 1. The grading service application main portal page allows the
user to click on the URL which direct them to the add new
assignment page.
2. The add new assignment page provides text entry for
assignment name, calendar for assignment due date, another
text entry for course ID, and checkbox to indicate if the
grading is needed, which user can use to write information to
the database.
3. The user submits the information by clicking the submit
button.
4. The system validates if the course ID exists already on
database and creates a new record.
Alternative Paths In step 2, if the text entry and date are blank, the instructor is not
able to add a new record to the database. He or she is given error
message prompts on the left lower corner of the screen.
Postcondition The record of new assignment is added to the gradebook
database.
Exception Paths The instructor can go back to the previous page (main gradebook
portal).
Other If the grading needed is not selected, the application defaults the
selection as false in the database. If the grading needed is false,
user is not able to view the assignment on the main grading
portal page.

3.2.2 Add Score to Assignment


Use Case Name Add Score to Assignment
XRef Section 2.2.2, Add Score to Assignment

SRS V 1.0 6 October 18, 2022


Trigger The instructor selects the course ID and assignment which he or
she intends to give score to.
Precondition The grading service application provides the instructor the portal
which he or she can choose the course and assignment.
Basic Path 1. The instructor logs into the grading service application,
then main portal is presented with list of assignments and
reference to the courses.
2. The instructor selects the assignment he or she intends to
add score for.
3. The instructor is able to enter the score for the
assignment he or she selected.
4. The instructor selects a submit button to proceed.
5. The new score is added to the assignment table on
database.
Alternative Paths The instructor is able to go back to the main portal by clicking
go back button.
Postcondition The new score to the selected assignment is added.
Exception Paths If the score which the instructor enters is not an integer, the
application throws an exception as an error.
Other None

3.2.3 Student Views Scores for Course


Use Case Name Student Views Scores for Course
XRef Section 2.2.4, Student Views Scores for Course
Trigger The student logs into the grading service application and
accesses the main portal.
Precondition The main grading portal is displayed.
Basic Path 1. The student selects the course he or she intends to view.
2. The student select submit button which redirects him or
her to the page where all assignments and corresponding
scores are listed.
3. The page displays assignments and corresponding scores
for the course which student has selected.
Alternative Paths The student is able to go back to the main portal by clicking go
back button.
Postcondition The scores associated with all assignments for the course student
has selected are visible on the grading service application page.
Exception Paths The student could potentially select the course which does not
exist. In such case, the application is not able to return proper
results.
Other None

3.2.4 Instructor to Submit Final Grade


Use Case Name Instructor to Submit Final Grade
XRef Section 2.2.4, Instructor to Submit Final Grade

SRS V 1.0 7 October 18, 2022


Trigger The instructor selects the course which student is enrolled in and
submits a request to calculate the final grade in the grading
service application.
Precondition The instructor accesses the grading service portal.
Basic Path 1. The instructor accesses the grading service application
portal.
2. The instructor selects the course ID which he or she
intends to generate final grade for.
3. The instructor submits the request.
4. The final grade is calculated based on the assignment
scores for the course.
5. The application appends a final grade in the gradebook
database.
Alternative Paths The instructor is able to go back to the main portal by clicking
go back button.
Postcondition The final grade is added to the gradebook database.
Exception Paths If the instructor enters the course ID which does not exist, then
application is not able to calculate the final grade.
Other None

3.3 Brief Non-Functional Requirements

In order to gain a reasonable performance navigating through the grading service

application, the localhost should be equipped with at least 8 to 16 GB of memory for both

React and Spring Boot Server to run. The password must be captured in application

properties when the application is executed locally, however further consideration needs

to be made such as encrypting the password if the application is hosted on cloud to

maximize security. Chrome version 106 should be used as a minimum requirement to

render the React application and properly authenticate against Google OAuth 2.0

framework.

SRS V 1.0 8 October 18, 2022


3.4 Logical Database Diagram

Gradebook

Register

SRS V 1.0 9 October 18, 2022

You might also like