You are on page 1of 60

feature tree

System/Software Requirements
Specification
for

QuizSharp
Version 1.0 approved

Prepared by Pham Ngoc Hoa

FPT University

February, 23, 2019


Table of Contents
Table of Contents
Revision History
1. Introduction
1.1 Purpose
1.2 System Purpose
1.3 Definitions, Acronyms and Abbreviations
1.4 Document Conventions
1.5 Intended Audience and Reading Suggestions
1.6 References
2. Overall Description
2.1 Product/System Perspective
2.2 System/Product Features
2.3 User requirements
2.4 User Classes and Characteristics
2.5 Operating Environment
2.6 Design and Implementation Constraints
2.7 User Documentation
2.8 Apportioning of Requirements
3. Specific Requirements
3.1 Functional Requirements Specification
3.1.1 Function1 /Use-case 1
3.1.2 UC01-Login<Sample>
3.1.3 Function2 /Use-case 2
3.2 Non-Functional Requirements Specification
3.2.1 External Interface Requirements
3.2.2 Other Nonfunctional Requirements
4. Other Requirements
Appendix A: Glossary
Appendix B: Analysis Models
Appendix C: Issues List
Revision History
Name Date Reason For Changes Version
1. Introduction
1.1 Purpose

Nowadays, we have to remember a lot of things, especially learning languages and tests but remembering
is not easy, so we created this product with the aim of helping people learn the lessons. Quiz becomes
easier. This chapter provides an overview of the project including background information, a literature
review of the existing system and raising a proposal for ideas of improvement.

1.2 System Purpose

“QuizSharp” is a Web Based application about learning quiz , users can create new quizzes, learn
quiz and test quiz for people and even help them learn quiz easily.

1.3 Definitions, Acronyms and Abbreviations

Acronym Definition

QS QuizSharp

DBMS Database Management System

GUI Graphical User Interface

HTTP Hypertext Transfer Protocol

HTTPS Hypertext Transfer Protocol Secure

IDE Integrated Development Environment

N/A Not Available

OS Operating System

UC Use Case

UI User Interface

UML Unified Modeling Language

URL Uniform Resource Locator

UX User Experience
1.4 Document Conventions

- Font family: Times New Roman,


- Font weight: Regular.
- Font size: 11.
- Font weight heading 1: bold.
- Font size heading 1: 18.
- Font weight heading 2: bold.
- Font size heading 2: 14.

1.5 Project Scope

This application is for all subjects including students, teachers, language learners, or simply want to
remember something effectively. The application will make learning the quiz easier, with features like
learning flash cards or learning by listening, writing, and testing. The application is very suitable for
language learners, or for certain class or industry tests that need to be memorized a lot.

1.6 References

- Software requirement specification form


- SRS of Cafeteria Ordering System (by Karl Wiegers)
- Software engineering – Ninth Edition (by Ian Sommerville)

2. Overall Description
2.1 Product/System Perspective

This software product is eventually intended for everybody who wants to learn quiz, since there are a lot
of thing people want to remember, and not all of them are good or easy with each people‘s type, so they’ll
need application, a good one. However, there are not a lot of web provide this feature, and so our team
decide to build a website based on that demands.

Product will be deployed to web site and all users of the product will access by use of the website.
Website will be main UI where users can operate all the provided functionality

Users can easily view website by personal computer, ipad or their phone and find movie but to post their
movies list, they need to create an account and login. User info, list quiz will be kept in database

2.2 System/Product Features

The web single page application can run on any OS with a web browser and internet support, so users can
use website with many options of devices: computer, ipad, smart phone
User can easily register, login, create quiz, learn quiz and test quiz in website

QuizShap web’s aimed toward a website service about learn quiz because it will help everyone easily
find good quiz to learn.

2.3 User requirements

There are no requirements comes from end users.

2.4 User Classes and Characteristics

Object Description

Admin A normal user and can manage the system, manage users

User When logged into the system

Guest When not logged in to the system .

All user need to login to the synstem for easy management but guest can see detail order without login

Characteristics: Software doesn’t require any special characteristics of user. Every user can create an
account and become a member of system.

2.5 Operating Environment

- Distributed database
- Client / Server system
- Operating System: any OS.
- Database: MongoDB 4.0
- Platform: HTML5 /CSS3 /JavaScript
- Library: VueJS (to build front-end)
- Runtime Environment: NodeJs
- Framework: ExpressJS (to build back-end)

2.6 Design and Implementation Constraints

Developers should also be careful about the privacy of users. All user data will be kept on database and
necessary precautions should be taken to protect user data.

The Internet connection is a constraint for the application. Since the application fetches data from the
database over the Internet, it is crucial that there is an Internet connection for the application to function.
2.7 Assumptions and Dependencies

Assump user have internet connection and computer has web browser, and user also have knowledge
about using it at minimum level (access, fill in field).

One assumption is that some library that developers team use for develop like “vuejs”, “nuxtjs” or
database mongo we use have issue, bug, down or update, it’s will affect the website’s performance or
even make website down.

2.8 Apportioning of Requirements

User not only can post list quiz but also write report to admin, permission of admin and get
profits.
Link with third parties to promote with the upcoming lesson quiz
Notification system, private chat between user

3. Specific Requirements
3.1 Functional Requirements Specification

Business Rules

ID Descriptions

B01 Account’s email address must be valid

B02 Account’s password must be at least 8 characters in length and must contain at least 1 uppercase letter,
1 lower case letter and 1 digit.

B03 Account’s password must not be stored as plain text. Instead it must be hashed using secure hash
algorithm.

B04 When registering or changing password, user must enter new password twice

B05 A guest must provide their email address and password when registering an account.

B06 A guest cannot register with an email that has already been registered.

B07 After registering, guests must activate their account with the activation link sent to the account’s email
address.

B08 User must provide their account’s email address and password when logging into the app

B09 User cannot login to their account unless the account is activated
B10 Access token must be encrypted when saving into browser’s storage.

B11 User must provide their account’s username address when resetting the account’s password

B12 A guest can search any public quiz

B13 User cannot search when input empty

B14 Users can search options like users, numbers, ...

B15 A guest can search quiz without login

B17 A user can search any public quiz

B18 User can switch language when that language was supported

B19 User can learn flash card any public quiz

B20 A guest can learn flash card without login

B21 User can learn write card any public quiz.

B22 A guest can learn write without login

B23 User can learn spell any public quiz.

B24 A guest can learn spell without login

B25 User can learn play game any public quiz.

B26 A guest can learn play game without login

B27 User can test any public quiz.

B28 A guest can test without login

3.1.1 Function1 /Use-case 1

Use case Diagram


ID Actor Name

UC-1 Guest Register

UC-2 Guest, User, Admin Login

UC-3 User, Admin Log out

UC-4 Guest, User, Admin Search quiz

UC-5 Guest, User, Admin Choose Language

UC-6 Guest, User, Admin Learn quiz with Flash Card

UC-7 Guest, User, Admin Learn quiz with write


UC-8 Guest, User, Admin Learn quiz with spell

UC-9 Guest, User, Admin Learn quiz with play game

UC-10 Guest, User, Admin Test quiz

UC-11 User, Admin View profile

UC-12 User, Admin Edit profile

UC-13 User Report

UC-14 User Add quiz

UC-15 User Edit quiz

UC-16 User Delete quiz

UC-18 User View my quiz

UC-19 Admin Delete user

3.1.2 UC01 - Register

3.1.2.1 Screen Design

Table 3-1: Screen Definition


# Field Name Type Mandatory Max Description
Length

1 User Name Input/Text Yes 20

2 Full name Input/Text Yes 255

3 Job Combo box Yes Student and teacher

4 Date of Birth Date picker Yes

5 Address Text Area Yes 255

6 Password Input/Passw Yes 20


ord

7 Repassword Input/Passw Yes 20 Value must be the same


ord Password
7 Register Button Go to home page

4 Close Button

Figure 3-1: Screen Design of Register

3.1.2.2 Use Case Specification

Figure 3-2: Register Use-Case Diagram

Use Case ID UC-1


Use Name Register

Actor Guest

Description The function allows a user to be able to register in the software when he/she haven’t
registered an account and his/her account is still active.

Precondition PRE-1.1 Guest has a valid email

Trigger

Post-Condition POST-1.1 When the normal flow completes successfully, a new account is created on
the QuizSharp System

Normal Flow 1.0 Register


1. Guest open desktop application.
2. System display QuizSharp home page.
3. Guest clicks Register menu on navigation bar.
4. System displays login/register dialog box.
5. System displays the registration form in the dialog box.
6. Guest enters username, full name, job, date of birth, address, password,
repassword on the registration form.
7. Guest clicks Sign Up button on the registration form.
8. System creates a new QuizSharp’s account with field provided.
9. System generates an activation link for the account.
10. System sends an email with the activation link to provided email address.
11. System displays a message to notify that account has been created and
activation email has been sent to the registered email address.
12. Guest visits his/her email account and open the activation email.
13. Guest clicks the activation link.
14. System activates the new account, then deletes the activations link from
database.
15. System display a message to notify that the account has been activated.
16. System display the QuizSharp home page.

Alternative flows N/A

Exceptions 1.0-E1 – Cannot communicate with API server.


System displays error message.
1.0-E2 – Input data in step 7 violates one or some of the business rules.
System displays error message on the registration form.
1.0-E3 – 24 hours since the activation email is sent, the Guest does not click the
activation link.
System will deletes the account and the activation link from database.

Priority Height

Frequency of Use Height

Business Rules B01, B02, B03, B04, B05, B06, B07, B08

Other Information N/A

Assumptions Guests can access his/her email account.

3.1.3 UC02-Login
3.1.3.1 Screen Design

Figure 3-3: Screen Design of Login

Table 3-1: Screen Definition


# Field Nam Type Mandatory Max Description
e Length

1 User Name Text/ Yes 20

2 Password Text Yes 20 Display "*" instead of


clear character

3 Login Button Go to home page

4 Close Button

5 Redirect Register Link Yes Click login then


redirect to login page

3.1.3.2 Use Case Specification


Figure 3-4: Login Use-Case Diagram

Use Case ID UC-2

Use Name Login

Actor User, Admin

Description The function allows a user to be able to login in the software when he/she have
registered an account and his/her account is still active.

Precondition PRE-1.1 User has account on QS web

Trigger

Post-Condition POST-1.1 When the normal flow completes successfully, a new account is created on
the QuizSharp System and user or admin must be login to system

Normal Flow 1.0 Login


1. Type URL into location field of internet browser and then press enter
2. QS display Login screen with the following fields: user name,
password, login and close button
3. User enter user name & password into User Name & Password fields
on the Login screen, then click on Login button.
4. QS validate the entered user name & password and then display Home
screen

Alternative flows QS display "Error" page with message "Internal System Error, please contact
with administrator"

Priority Height

Frequency of Use Height

Business Rules B09, B10, B11

Other Information N/A

Assumptions Guest can access his/her email account.

3.1.4 UC3 - Logout


3.1.4.1 Screen Design

Figure 3-5: Screen Design of Logout

Table 3-1: Screen Definition

# Field Name Type Mandatory Max Description


Length

1 Logout Button When user click


Button Logout, web
redirect to Home Page
3.1.4.2 Use Case Specification

Figure 3-6: Logout Use-Case Diagram

Use Case ID UC-3

Use Name Logout

Actor User, Admin

Description The function allows a user to be able to logout in the software when he/she have
logged an account and his/her account to QS

Precondition PRE-1.1 User has account on QS web


PRE-1.2 User has logged on QS web

Trigger

Post-Condition POST-1.1 When the normal flow completes successfully

Normal Flow 1.0 Logout


1. User login on QS system successful
2. User click to Button Logout
3. User will exit the system
4. QS will redirect user to Home Page

Alternative flows QS display "Error" page with message "Internal System Error, please contact
with administrator"

Exceptions N/A

Priority Medium

Frequency of Use Height

Business Rules N/A

Other Information N/A

Assumptions N/A

3.1.5 UC04-Search
3.1.5.1 Screen Design

Figure 3-7: Screen Design of Search

Table 3-1: Screen Definition

# Field Name Type Mandatory Max Description


Length

1 Search Input/ Yes 255


Text

2 Search Button When user click


search, QS redirect to
Search Page show list
quiz with key word in
box search
3.1.5.2 Use Case Specification

Figure 3-8: Search Use-Case Diagram

Use Case ID UC-4

Use Name Search

Actor User, Admin, Guest

Description The function allows a everyone in QS can search quiz to learn

Precondition N/A

Trigger N/A

Post-Conditio N/A
n

Normal Flow 1.0 Search


1. Guest enters search keyword on search box in navigation.
2. Guest clicks search button.
3. System displays the list of issuers matched with the search
keyword. Each quiz is presented with title and content

Alternative N/A
flows

Exceptions N/A

Priority Low

Frequency of Medium
Use

Business B12, B13, B14, B15, B16, B17


Rules

Other N/A
Information

Assumptions N/A

3.1.6 UC05 - Choose Language


3.1.6.1 Screen Design

Figure 3-9: Screen Design of Choose Langue

Table 3-1: Screen Definition


# Field Name Type Mandatory Max Description
Length

1 Choose language Button

2 List language Combo


box

3.1.6.2 Use Case Specification


Figure 3-10: Search Use-Case Diagram

Use Case ID UC-5

Use Name Choose language

Actor User

Description The function allows a user can switch to other language

Precondition PRE-1.1 User has account on QS web


PRE-1.2 User has logged on QS web

Trigger N/A

Post-Condition POST-1.1 When the normal flow completes successfully, user must be login to system
before choose language

Normal Flow 1.0 Choose language


1. User click to button Choose Language
2. QS show list language system support for user choose
3. User click to Language want to switch
4. Immediately, all QS wen translate to that language

Alternative flows N/A

Exceptions N/A

Priority Low

Frequency of Use Medium

Business Rules B18

Other Information N/A

Assumptions N/A

3.1.7 UC06 - Learn quiz flashcard

3.1.7.1 Screen Design


Figure 3-11: Screen Design of Learn quiz Flashcard

Table 3-1: Screen Definition

# Field Name Type Mandatory Max Description


Length

1 Flash card Box Box flashcard have 2


face can switch

2 Next Button User can next term


quiz to learn

3 Previous Button User can previous term


quiz to learn

4 Flip Button User can switch face


by this button

3.1.7.2 Use Case Specification

Figure 3-12: Learn quiz flashcard Use-Case Diagram


Use Case ID UC-6

Use Name Learn quiz flashcard

Actor User, Amdin, Guest

Description The function allows learn quiz with flashcard.

Precondition PRE-1.1 User has account on QS web


PRE-1.2 User has logged on QS web

Trigger N/A

Post-Condition POST-1.1 When the normal flow completes successfully, a new account is created on
the QuizSharp System and user or admin must be login to system

Normal Flow 1.0 Learn quiz flashcard


1. QS show page learn with flashcard successfully
2. User can see one face of flashcard
3. User can next or previous term by click button Next or Previous, arrow key
left, arrow key right
4. User can switch 2 face by button Turn or arrow key up, arrow key down

Alternative flows N/A

Exceptions N/A

Priority Height

Frequency of Use Medium

Business Rules B19, B20

Other Information N/A

Assumptions N/A

3.1.8 UC07 - Learn quiz write


3.1.8.1 Screen Design

Figure 3-13: Screen Design of Learn quiz write

Table 3-1: Screen Definition


# Field Name Type Mandatory Max Description
Length

1 One face Box One face of term

2 Answer Input Yes 255

3 Next Button User can next term


quiz to learn

4 Previous Button User can previous term


quiz to learn

5 Check Button Check answer correct


or not
3.1.8.2 Use Case Specification

Figure 3-14: Learn quiz write Use-Case Diagram

Use Case ID UC-7

Use Name Learn quiz write

Actor User, Admin, Guest

Description The function allows learn quiz with write.

Precondition PRE-1.1 User has account on QS web


PRE-1.2 User has logged on QS web

Trigger N/A

Post-Condition POST-1.1 When the normal flow completes successfully, a new account is created on
the QuizSharp System and user or admin must be login to system

Normal Flow 1.0 Learn quiz flashcard


1. QS show page learn with write successfully
2. User can see one face of term quiz
3. Input answer of the other side in input check
4. User can next or previous term by click button Next or Previous, arrow key
left, arrow key right
5. Press Enter to check answer correct or not

Alternative flows N/A

Exceptions N/A

Priority Height

Frequency of Use Medium

Business Rules B21, B22

Other Information N/A

Assumptions N/A

3.1.9 UC08 - Learn quiz spell


3.1.9.1 Screen Design

Figure 3-15: Screen Design of Learn quiz spell

Table 3-1: Screen Definition

# Field Name Type Mandatory Max Description


Length

1 Answer Input Yes 255

2 Next Button User can next term


quiz to learn

3 Previous Button User can previous term


quiz to learn

5 Speaker Button Used to listen again

3.1.9.2 Use Case Specification


Figure 3-16: Learn quiz write Use-Case Diagram

Use Case ID UC-7

Use Name Learn quiz spell

Actor User, Admin, Guest

Description The function allows learn quiz with write.

Precondition PRE-1.1 User has account on QS web


PRE-1.2 User has logged on QS web

Trigger N/A

Post-Condition POST-1.1 When the normal flow completes successfully, a new account is created on
the QuizSharp System and user or admin must be login to system

Normal Flow 1.0 Learn quiz spell


1. QS show page learn with spell successfully
2. QS will emit the sound of one side of that term
3. User input answer of the other side in input check
4. User can next or previous term by click button Next or Previous, arrow key
left, arrow key right
5. Press Enter to check answer correct or not
Alternative flows N/A

Exceptions N/A

Priority Medium

Frequency of Use Medium

Business Rules B23, B24

Other Information N/A

Assumptions N/A

3.1.10 UC09 - Learn quiz play game

3.1.10.1 Screen Design

Figure 3-17: Screen Design of Learn quiz play game


Table 3-1: Screen Definition

# Field Name Type Mandatory Max Description


Length

1 List answer Box

2 List question Box

3.1.10.2Use Case Specification

Figure 3-18: Learn quiz write Use-Case Diagram

Use Case ID UC-9

Use Name Learn quiz play game

Actor User

Description The function allows learn quiz with write.


Precondition PRE-1.1 User has account on QS web
PRE-1.2 User has logged on QS web

Trigger N/A

Post-Condition POST-1.1 When the normal flow completes successfully, a new account is created on
the QuizSharp System and user or admin must be login to system

Normal Flow 1.0 Learn quiz play game


1. QS show page learn with spell successfully
2. QS show list answer and list question random mix up together
3. User can click any box and drag to other box to check answer correct or not.

Alternative flows N/A

Exceptions N/A

Priority Medium

Frequency of Use Medium

Business Rules B25, B26

Other Information N/A

Assumptions N/A

3.1.11 UC10 - Test quiz


3.1.11.1Screen Design

Figure 3-19: Screen Design of test quiz

Table 3-1: Screen Definition

# Field Name Type Mandatory Max Description


Length

1 List question Text Each question have list


answer

2 List answer Select


Box

3 Submit Button

3.1.11.2Use Case Specification


Figure 3-20: Learn quiz write Use-Case Diagram

Use Case ID UC-10

Use Name Test Quiz

Actor User

Description The function allows learn quiz with write.

Precondition PRE-1.1 User has account on QS web


PRE-1.2 User has logged on QS web

Trigger N/A

Post-Condition POST-1.1 When the normal flow completes successfully, a new account is created on
the QuizSharp System and user or admin must be login to system

Normal Flow 1.0 Test Quiz


1. QS show page test quiz successfully
2. QS show list question and list answer.
3. User choose answer for each question
4. Click button submit to submit

Alternative flows N/A


Exceptions N/A

Priority Medium

Frequency of Use Medium

Business Rules B27, B28

Other Information N/A

Assumptions N/A

3.1.12 UC11 - View profile

3.1.12.1Screen Design

Figure 3-21: Screen Design of view profile

Table 3-1: Screen Definition


# Field Name Type Mandatory Max Description
Length

1 List question Text Each question have list


answer

2 List answer Select


Box

3 Submit Button

3.1.12.2 Use Case Specification

Figure 3-22: Learn quiz write Use-Case Diagram

Use Case ID UC-11

Use Name View profile

Actor User

Description The function allows learn quiz with write.


Precondition PRE-1.1 User has account on QS web
PRE-1.2 User has logged on QS web

Trigger N/A

Post-Condition POST-1.1 When the normal flow completes successfully, a new account is created on
the QuizSharp System and user or admin must be login to system

Normal Flow 1.0 View profile


1. Guest and User click on avatar of owner
2. System will redirect the owner’s profile
3. Guest and User can see detail profile of owner

Alternative flows N/A

Exceptions N/A

Priority Medium

Frequency of Use Medium

Business Rules N/A

Other Information N/A

Assumptions N/A

3.1.12.3 UC12 - Edit profile


3.1.12.4Screen Design

Figure 3-23: Screen Design of edit profile

Table 3-1: Screen Definition

# Field Name Type Mandator Max Length Description


y

1 User Name Input/Text Yes 255

2 Full name Input/Text Yes 255

3 Job Input/Text Yes 255

4 Date of Birth Date Yes 255

5 Address Text Area Yes 255

6 Password Password Yes 255

7 Update Button
3.1.12.5 Use Case Specification

Figure 3-24: Learn quiz write Use-Case Diagram

Use Case ID UC-12

Use Name Update profile

Actor User

Description The function allows learn quiz with write.

Precondition PRE-1.1 User has account on QS web


PRE-1.2 User has logged on QS web

Trigger N/A

Post-Condition POST-1.1 When the normal flow completes successfully, a new account is created on
the QuizSharp System and user or admin must be login to system

Normal Flow 1.0 Update profile


1. User open QuizSharp web.
2. System display QuizSharp home page.
3. Guest clicks button edit profile menu on navigation bar.
4. System displays the update form in the dialog box.
5. Guest enters full name, job, date of birth, address, password, repassword on
the registration form.
6. Guest clicks Update button on the registration form.
7. System update account with field provided.
8. System generates an activation link for the account.
9. System displays a message to notify that account updated

Alternative flows N/A

Exceptions N/A

Priority Medium

Frequency of Use Medium

Business Rules N/A

Other Information N/A

Assumptions N/A

3.1.13 UC13 - Report


3.1.13.1Screen Design

Figure 3-25: Screen Design of edit profile

Table 3-1: Screen Definition

# Field Name Type Mandator Max Length Description


y

1 Title Text Yes 255

2 Content Textarea Yes 255

3 Submit Button

3.1.13.2 Use Case Specification


Figure 3-26: Learn quiz write Use-Case Diagram

Use Case ID UC-13

Use Name Report

Actor User

Description The function allows learn quiz with write.

Precondition PRE-1.1 User has account on QS web


PRE-1.2 User has logged on QS web

Trigger N/A

Post-Condition POST-1.1 When the normal flow completes successfully, a new account is created on
the QuizSharp System and user or admin must be login to system

Normal Flow 1.0 Report


1. User open QuizSharp web and go to page report
2. System display report page with input title, textarea context and button submit.
3. User write all field and click button submit.
4. QS send and show display status done or not.
Alternative flows N/A

Exceptions N/A

Priority Medium

Frequency of Use Medium

Business Rules N/A

Other Information N/A

Assumptions N/A

3.1.14 UC14 - Add quiz

3.1.14.1Screen Design

Figure 3-27: Screen Design of edit profile


Table 3-1: Screen Definition

# Field Name Type Mandator Max Length Description


y

1 Title quiz Input/ Text Yes 255

2 Face one Input/ Text Yes 255

3 Face two Input/ Text Yes 255

4 Add Button Add more term quiz

5 Done Button

3.1.14.2 Use Case Specification

Figure 3-28: Add quiz Use-Case Diagram


Use Case ID UC-14

Use Name Add quiz

Actor User

Description The function allows user create new quiz to learn

Precondition PRE-1.1 User has account on QS web


PRE-1.2 User has logged on QS web

Trigger N/A

Post-Condition POST-1.1 When the normal flow completes successfully, a new account is created on
the QuizSharp System and user or admin must be login to system

Normal Flow 1.0 Add quiz


1. User open QuizSharp web and go to page create quiz
2. QS create one term automatic in page create quiz
3. User fill title and two face of term, if user want to add more term then click
button Icon add to add more
4. User click button done to submit create quiz.
5. QS create new quiz to database and create url of that quiz then redirect user to
link quiz created.

Alternative flows N/A

Exceptions N/A

Priority Slow

Frequency of Use Medium

Business Rules N/A

Other Information N/A

Assumptions N/A

3.1.15 UC15 - Edit quiz


3.1.15.1Screen Design

Figure 3-29: Screen Design of edit quiz

Table 3-1: Screen Definition

# Field Name Type Mandator Max Length Description


y

1 Title quiz Input/ Text Yes 255

2 List quiz Box

3 Update Button
3.1.15.2 Use Case Specification

Figure 3-30: Add quiz Use-Case Diagram

Use Case ID UC-15

Use Name Edit quiz

Actor User

Description The function allows user create new quiz to learn

Precondition PRE-1.1 User has account on QS web


PRE-1.2 User has logged on QS web

Trigger N/A

Post-Condition POST-1.1 When the normal flow completes successfully, a new account is created on
the QuizSharp System and user or admin must be login to system

Normal Flow 1.0 Edit quiz


1. User open QuizSharp web and go to page edit quiz.
2. User can modifier title or content of list quiz
3. User click Update to submit done edit quiz
4. QS will update change to database then redirect user to link of quiz after
change.

Alternative flows N/A

Exceptions N/A

Priority Slow

Frequency of Use Medium

Business Rules N/A

Other Information N/A

Assumptions N/A

3.1.16 UC16 - Delete quiz


3.1.16.1Screen Design

Figure 3-31: Screen Design of delete quiz

Table 3-1: Screen Definition

# Field Name Type Mandatory Max Length Description

1 Title quiz Text

2 List quiz Box

3 Delete Button

3.1.16.2 Use Case Specification


Figure 3-32: Delete quiz Use-Case Diagram

Use Case ID UC-17

Use Name Delete quiz

Actor User

Description The function allows user create new quiz to learn

Precondition PRE-1.1 User has account on QS web


PRE-1.2 User has logged on QS web

Trigger N/A

Post-Condition POST-1.1 When the normal flow completes successfully, a new account is created on
the QuizSharp System and user or admin must be login to system

Normal Flow 1.0 Delete quiz


1. User open QuizSharp web and go to page quiz .
2. User click button Delete to remove the quiz from the system
3. QS delete this quiz in database and redirect home page
Alternative flows N/A

Exceptions N/A

Priority Slow

Frequency of Use Medium

Business Rules N/A

Other Information N/A

Assumptions N/A

3.1.17 UC18 - View my quiz

3.1.17.1Screen Design

Figure 3-33: Screen Design of delete quiz


Table 3-1: Screen Definition

# Field Name Type Mandatory Max Length Description

1 List quiz Box List quiz wrap title,


number term, author

2 Title Text

3 Number Term Text Number term of lesson


quiz

4 Author Text

3.1.17.2 Use Case Specification

Figure 3-34: View my quiz Use-Case Diagram

Use Case ID UC-18


Use Name View my quiz

Actor User

Description The function allows user create new quiz to learn

Precondition PRE-1.1 User has account on QS web


PRE-1.2 User has logged on QS web

Trigger N/A

Post-Condition POST-1.1 When the normal flow completes successfully, a new account is created on
the QuizSharp System and user or admin must be login to system

Normal Flow 1.0 Delete quiz


1. User open QuizSharp web and go to page view my quiz
2. QS show list quiz to user

Alternative flows N/A

Exceptions N/A

Priority Slow

Frequency of Use Medium

Business Rules N/A

Other Information N/A

Assumptions N/A

3.1.18 UC19 - Delete user


3.1.18.1 Screen Design

Figure 3-35: Screen Design of delete user

Table 3-1: Screen Definition

# Field Name Type Mandatory Max Length Description

1 List quiz Box List quiz wrap title,


number term, author

2 Title Text

3 Number Term Text Number term of lesson


quiz

4 Author Text

5 Delete Button
3.1.18.2 Use Case Specification

Figure 3-2: Delete user Use-Case Diagram

Use Case ID UC-19

Use Name Delete user

Actor Admin

Description The function allows user create new quiz to learn

Precondition PRE-1.1 User has account on QS web


PRE-1.2 User has logged on QS web

Trigger N/A

Post-Condition POST-1.1 When the normal flow completes successfully, a new account is created on
the QuizSharp System and user or admin must be login to system

Normal Flow 1.0 Delete user


1. Admin open QuizSharp web and go to page view list user
2. Admin click delete to delete user
3. QS delete user from database and refresh page list user

Alternative flows N/A

Exceptions N/A

Priority Slow

Frequency of Use Medium

Business Rules N/A

Other Information N/A

Assumptions N/A

3.3 Non-Functional Requirements Specification

3.3.1 External Interface Requirements


3.3.1.1 Hardware Interface

● Any web browers available now: Chorme, Firefox, Coc Coc, Ie.
● Internet
● Device that can connect website

3.3.1.2 Software Interface

ID Software Used Description

1 OS Any OS available now

2 ReactJs, HTML, CSS Javascript library to build front-end

3 NodeJs, ExpressJs Build backend

3.2.1.3 Communications Interface

This project supports all types of web browsers.


The communication between the different parts of the web is important since they depend on each other.
However, in what way the communication is achieved is not important for the web and is therefore
handled by the underlying operating systems for the web portal

3.3.2 Other Nonfunctional Requirements

3.3.2.1 Safety Requirements

If there is extensive damage to a wide portion of the database due to catastrophic failure, such as
a disk crash, the recovery method restores a past copy of the database that was backed up to
archival storage (typically tape) and reconstructs a more current state by reapplying or redoing
the operations of committed transactions from the backed up log, up to the time of failure.

3.3.2.2 Performance Requirements

Any response must be within 2 seconds or less


After press any button, there’re always respond within 1 seconds (loading process, save success,
etc)

3.3.2.3 Security Requirements

No user’s information, properties loss, insult from thirds party for bad behaviors

When signup, guest need to create account with real name, username must have more than 6
character, password must have more than 8 character included: letter, number. Guest need to
agree with web site ‘s privacy

4. Other requirements
4.1 Internationalization requirements
Because Vietnam is the most users from Viet Nam, so app version toward VietNamese is the prioritize.
Furthermore, QS web will provide more English and more in the future.

You might also like