Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 68

FamilyOKR

Software Requirement Specification


Table of Contents
Software Requirement Specification...........................................................................................................1
3.1 Purpose.............................................................................................................................................1
3.2 Functional requirements...................................................................................................................2
3.2.1 Use Case Diagram.......................................................................................................................2
3.2.2 Business Rules............................................................................................................................2
3.2.3 Use Cases....................................................................................................................................4
3.3 Non-Functional requirements.........................................................................................................67
3.3.1 Security....................................................................................................................................67
3.3.2 Availability and Scalability........................................................................................................67
3.3.3 Usability....................................................................................................................................67
3.3.4 Performance.............................................................................................................................67
3.3.5 Maintainability & Extensibility.................................................................................................68
3.4 Entity Relationship Diagram............................................................................................................68

3.1 Purpose
This chapter outlines functional and non-functional requirements of our system. It also
provides some format constraints in common requirements and project success criteria. The
content of this chapter is used as the basis for the work in the subsequent chapters.

3.2 Functional requirements


3.2.1 Use Case Diagram

Figure 3.1 - Use case diagram


3.2.2 Business Rules
ID Description

B01 Account's google address must be valid.


B02 Users cannot update their account's google address once it has been registered.

B03 Users can not see other people’s personal objective.

B04 Parents can change objective finish time when time is over.

B05 Objective text field must not be empty

B06 Key result text field must not be empty

B07 Objective start date and end date must not be empty.

B08 Category of objective must not be empty.

B09 Objective start date must be before the end day.

B10 The reward can only be redeemed when the number of stars is greater than or equal to the

number of stars in the reward.

B11 Username must not be empty.

B12 Objective always has a state: “Open” or “Reviews” or “Success” or “Fail”.

B13 Key Result alway has a state: “Open” or “Success” or “fail”.


B14 Account admin must be valid

Table 3.1 – Business rules

3.2.3 Use Cases

Actor Inherits From Description

Parent Everyone who has an account on the.

Children Parent The members in a group have management by some parent.

Admin Administrator is staff, has a highest permission level and is


responsible to management users

Table 3.2 – Actor description

ID Actor Name Description

UC-1 Parent/Children Login Login to the FamilyOKR app with your google
account.

UC-2 Parent/Children LogOut Logout to the FamilyOKR app.

UC-3 Parent/Children Update Profile Update personal profile.

UC-4 Parent/Children View Profile View personal profile.

UC-5 Parent/Children Create Objective Create objectives in group or personal


objectives.

UC-6 Parent/Children Edit Objective Edit objectives in group or personal


objectives.

UC-7 Parent/Children Delete Objective Delete objectives in group or personal


objectives
UC-8 Parent/Children View Objective View objectives in group or personal
objectives

UC-9 Parent/Children Create Key Result Create key results of objectives.

UC-10 Parent/Children Edit Key Result Edit key results of objectives.

UC-11 Parent/Children Delete Key Result Delete key results of objectives.

UC-12 Parent/Children View Key Result View key results of objectives.

UC-13 Parent Create Group Create new group.

UC-14 Parent Delete Group Delete a group.

UC-15 Parent Edit Group Edit name, image of group

UC-16 Parent View Group View list groups, view name, image, list
objective of a group.

UC-17 Parent Add Member Add members in a group.

UC-18 Parent Delete Member Delete members in groups.

UC-19 Parent Search Member Search member in list member of FamilyOKR.

UC-20 Parent/Children View Member View list member in group.

UC-21 Parent/Children View Group View group objective statistical by week,


Objective Statistical month, year, member.

UC-22 Parent/Children View Personal View group objective statistical by week,


Objective Statistical month, year.

UC-23 Parent/Children View Objective View objective evaluating in group.


Evaluating

UC-24 Parent/Children Objectives Conduct an assessment when asked to be an


Evaluating auditor for that objective.

UC-25 Parent Edit Objectives Edit reviews when they are the reviewers for
Evaluating that objective.

UC-26 Parent/Children View Align Objective View align objective in group and personal
objective.

Add align objective in group and personal


UC-27 Parent/Children Add Align Objective objective.For children to align in the group
can only be created align with the objective
that they themselves create on the team.

UC-28 Parent/Children Delete Align Delete align objective in group and personal
Objective objective.

UC-29 Parent/Children View Mark Align View marks align objectives in group and
personal objectives.

The group mark aligns when Parent/Children


UC-30 Parent/Children Mark Align is asked to be an objectives reviewer.
Personal objective parent mark align.

UC-31 Parent/Children Edit Mark Align Edit mark align objective in group and
personal objective.

UC-32 Parent/Children View Permission View permission member in group.


Member

UC-33 Parent Edit Permission Edit permission member in group.


Member

UC-34 Parent/Children View Notification View notification in group and personal


objective.

UC-35 Parent/Children Add Note Objective Add note objective in group and personal
objective.
UC-36 Parent/Children Edit Note Objective Edit note objective in group and personal
objective.

UC-37 Parent/Children Delete Note Delete note objective in group and personal
Objective objective.

UC-38 Parent/Children Add Note Key Result Add note key result of objective.

UC-39 Parent/Children Edit Note Key Result Edit note key result of objective.

UC-40 Parent/Children Delete Note Key Delete note key result of objective.
Result

UC-41 Parent/Children View Personal View personal activity.


Activity History

UC-42 Parent/Children View Group Activity View all activity of members in a group.
History

UC-43 Parent/Children Create category Create new categories in group and personal.

Just delete the categories itself created in the


UC-44 Parent/Children Delete category group.
Delete category personal.

UC-45 Parent/Children View category View category in group and personal.

Just edit the categories itself created in the


UC-46 Parent/Children Edit category group.
Edit category personal.

UC-47 Parent Create Reward Create rewards in groups.

UC-48 Parent Delete Reward Delete rewards in groups.

UC-49 Parent Edit Reward Edit rewards in groups.


UC-50 Parent/Children View Reward View rewards in groups.

UC-51 Children Exchange Reward Exchange reward in groups.

UC-52 Parent/Children Change Category Change category of objective.

UC-53 Admin Login Admin Login website admin.

UC-54 Admin Logout Admin Logout website admin.

UC-55 Admin Change Password Change password account admin.

UC-56 Admin View List Users List users in the FamilyOKR system.

UC-57 Admin View Detail User View detail a user in the FamilyOKR system.

UC-58 Admin Edit User Edit a user in the FamilyOKR system.

UC-59 Admin Delete User Delete a user in the FamilyOKR system.

UC-60 Admin Search User Search a user in list users of FamilyOKR


system.

UC-61 Admin View List Categories List Categories in the FamilyOKR system.

UC-62 Admin View Detail Category View detail a category in the FamilyOKR
system.

UC-63 Admin Edit Category Edit a category in the FamilyOKR system.

UC-64 Admin Delete Category Delete a category in the FamilyOKR system.

UC-65 Admin Search Category Search a category in list users of FamilyOKR


system.
UC-66 Admin Create category Administrator create a new category of

FamilyOKR system

UC-67 Admin Create Admin administrator can create a new admin

account account

Table 3.3 – Use Case List


3.2.3.1 Parent/ Children
3.2.3.1.1 Login
Use case specification

UC ID and Name: UC-1.0 Login

Created by: GiangDH Date Created: 17/06/2020

Primary Actor: Parent Secondary Actors: Children

Description: Login to the FamilyOKR application

Preconditions: PRE-1.1. Parents/Children has an account on google.


PRE-1.2. Parents/children must connect to the internet.

Postconditions: POST-1.1. Parents/Children login the application successfully

Normal Flow: 1.0 Login


1. Parents/Children open FamilyOKR applications.
2. Application display FamilyOKR login screen.
3. Parents/Children clicks login on the screen.
4. App display google dialog box.
5. Parents/children choose an account google or add a new account google
to login.
6. Google authenticates the login information successfully and allows the
parent/children to access the application.
7. App send and receive googleID to API check validate google account
8. If google account is false move to step 2
9. Check the exit account on server and send back to app
10. Parents/Children are moved to the home screen
Alternative N/A.
Flows:
Exceptions: 1.0-E1: GoogleId is invalid
1. Back to login screen
1.0-E2: Cannot communicate with server
1. Application displays error message

Priority: High

Frequency of High
Use:

Business Rules: N/A.

Other N/A.
Information:

Assumptions: N/A.

3.2.3.1.2 LogOut
Use case specification

UC ID and Name: UC-2.0 Logout

Created by: GiangDH Date Created: 17/06/2020

Primary Actor: Parent Secondary Actors: Children

Description: Logout to the FamilyOKR.

Preconditions: PRE-2.1. Parents/Children have logged into the FamilyOKR application.

Postconditions: POST-2.1. Parents/Children logout the application successfully

Normal Flow: 2.0 LogOut


1. Parents/Children click menu navigation on the screen.
2. Parents/Children click sign out in the menu navigation.
3. Google authenticated successfully logged out.
4. Parents/Children are moved to the login screen.
Alternative Flows: N/A.

Exceptions: N/A.

Priority: High
Frequency of Use: High

Business Rules: N/A.

Other N/A.
Information:

Assumptions: N/A.

3.2.3.1.3 Update profile


Use case specification

UC ID and Name: UC-3.0 Update profile

Created by: PhucNV Date Created: 24/06/2020

Primary Actor: Parent Secondary Actors: Children

Description: Updater personal profile of the account.

Preconditions: PRE-3.1. Parents/Children have logged into the FamilyOKR application.


PRE-3.2. Parents/Children is on the profile screen.

Postconditions: POST-3.1. Parents/Children updated profile.

3.0 Image not change


1. Parents/Children click the edit button on the profile screen.
Normal Flow: 2. App Show profile screen,
3. Parents/Children edit profile information and update
image,Parents/Children click the button “save “.
4. System check if gmail not exit back to step 1
5. System updates profile it into the database.
3.0 Image not change
1. Parents/Children click the edit button on the profile screen.
Alternative 2. Show profile screen, Parents/Children edit information to change.
Flows: 3. Parents/Children click the save button on the profile screen.
4. System check if gmail not exit back to step 1
5. If image is not change, system receives the string Http of image
6. System updates profile it into the database.
Exceptions: N/A.

Priority: High

Frequency of Use: High

Business Rules: N/A.


Other
N/A.
Information:
Assumptions: N/A.

3.2.3.1.4 View profile


Use case specification

UC ID and Name: UC-4.0 View profile

Created by: PhucNV Date Created: 26/06/2020

Primary Actor: Parent Secondary Actors: Children

Description: View personal profile of the account.

Preconditions: PRE-4.1. Parents/Children have logged into the FamilyOKR


application.

Postconditions: N/A.

4.0 View profile (bottom navigation)

Normal Flow: 1. Parents/Children click the profile icon from bottom navigation
on the screen.
2. System displays the account’s profile including email and the list
of personal information.

4.0 View profile (menu navigation)


Alternative 1. Parents/Children click menu navigation on the screen.
2. Parents/Children click the profile icon on the menu navigation.
Flows: 3. System displays the account’s profile including email and the list
of personal information.

Exceptions: N/A

Priority: High

Frequency of High
Use:

Business Rules: N/A.


Other
N/A.
Information:
Assumptions: N/A.

3.2.3.1.5 Create objective


Use case specification

UC ID and Name: UC-5.0 Create objective

Created by: LocNX Date Created: 18/06/2020

Primary Actor: Parents Secondary Actors: Children

Description: Create a new objective in FamilyOKR.

PRE-5.1. Parents/children must login to FamilyOKR


Preconditions: PRE-5.2. Parents/children have logged into the FamilyOKR
application.

Postconditions: POST-5.1. System save the new objective

5.0 Create Objective


1. Parents/Children click “New objective” on top bar

Normal Flow: 2. Parents/Children select a category


3. Parents/Children fill all information on the screen.
4. Parents/Children click button save
5. System stored the objective to the database.
5.0 Create Objective
1. Parents/Children click the button Group in bottom menu

navigation on the screen.


Alternative Flows: 2. Parents/Children click “New objective” on top bar
3. Parents/Children select a category
4. Parents/Children fill all information on the screen.
5. Parents/Children click button save
6. System stored the objective to the database.
Exceptions: 5.0-E1 – Cannot communicate with server
1. Application displays error message
Priority: High
Frequency of Use: High

Business Rules: B07, B10.

Other Information: N/A.

Assumptions: N/A.
3.2.3.1.6 Edit objective

Use case specification

UC ID and Name: UC-6 Edit objective

Created by: LocNX Date Created: 17/06/2020

Primary Actor: Parents Secondary Actors: Children

Description: Edit an objective in FamilyOKR.

PRE-6.1. Parents/Children must login to FamilyOKR


Preconditions: PRE-6.2. Parents/Children must create an objective in FamilyOKR
application.

Postconditions: POST-6.1. System save the edited objective

6.0 Edit Objective


1. Parents/Children click the button Group in the bottom menu
navigation on the screen.
2. Parents/Children click an objective on the screen.
3. Parents/Children click button “Open objective”in a popup
Normal Flow: screen
4. Parents/Children click button “Option” in navigation bar
5. Parents/Children click button “Edit Objective”
6. Parents/Children modify the information of the objective.
7. Parents/Children click button save.

8. System stored the objective to the database..


Alternative Flows: N/A

Exceptions: 6.0-E1. – Cannot communicate with server


1. Application displays error message

Priority: High

Frequency of Use: High

Business Rules: B07

Other Information: N/A

Assumptions: N/A
3.2.3.1.7 Delete objective

Use case specification

UC ID and Name: UC-7 Delete objective

Created by: HuongNT Date Created: 23/06/2020

Primary Actor: Parents Secondary Actors: Children

Description: Delete an objective in FamilyOKR.

PRE-7.1. Parents/Children must login to FamilyOKR


Preconditions: PRE-7.2. Parents/Children must create an objective in the
FamilyOKR application.
POST-7.1. System delete the objective
Postconditions:

7.0 Delete objective


1. Parents/Children click the button Group in bottom menu
navigation on the screen.
Normal Flow:
2. Parents/Children click an objective on the screen.
3. Parents/Children click the delete button in a popup screen.
4. Parents/Children click yes to confirm the message.
5. System stored the objective to the database.
Alternative Flows: N/A.

Exceptions: 7.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: High

Frequency of Use: Low

Business Rules: N/A.

Other Information: N/A.

Assumptions: N/A.
3.2.3.1.8 View objective

Use case specification

UC ID and Name: UC-8 View objective

Created by: HuongNT Date Created: 21/06/2020

Primary Actor: Parent Secondary Actors: children

Description: View an objective in FamilyOKR.

PRE-8.1. Parents/Children must login to FamilyOKR


Preconditions: PRE-8.2. Parents/Children must create an objective in the
FamilyOKR application.

Postconditions: POST-8.1. System display the objective

8.0 View Objective


1. Parents/Children click the button Group in bottom menu
Normal Flow: navigation on the screen.
2. Parents/Children click an objective on the screen.
3. app request get detail objective and display detail objective
screen

Alternative Flows: N/A.

Exceptions: 8.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: High

Frequency of Use: High

Business Rules: N/A.

Other Information: N/A.

Assumptions: N/A.

3.2.3.1.9 Create Key result

Use case specification

UC ID and Name: UC-9 Create key result

Created by: LocNX Date Created: 24/06/2020

Primary Actor: Parent Secondary Actors: Children

Description: View a new key result in Family OKR.

PRE-9.1. Parents/Children must login to FamilyOkr


Preconditions: PRE-9.2. Parents/Children must create an objective inFamily OKR
application.

Postconditions: POST-9.1 System save key result

9.0 Create Key Result


1. Parents/Children click the button Group in bottom menu
navigation on the screen.
Normal Flow: 2. Parents/Children click an objective on the screen.
3. Parents/Children click button add in bottom down of the
screen
4. Parents/Children fill information of key result
5. Parents/Children click button add in the screen
6. System stored data to the database.
Alternative Flows: N/A.

Exceptions: 9.0-E1 – Cannot communicate with server


1. Application displays error message

Priority: High

Frequency of Use: High


Business Rules: B08

Other Information: N/A.

Assumptions: N/A.
3.2.3.1.10 Edit key result

Use case specification

UC ID and Name: UC-10 Edit key result

Created by: LocNX Date Created: 25/06/2020

Primary Actor: Parent Secondary Actors: Children

Description: Edit a key result in Family OKR.

PRE-10.1. Parents/Children must login to FamilyOkr.


Preconditions: PRE-10.2 .Parents/Children must create a key result inFamily OKR
application.

10.0 Create Key Result

1. Parents/Children click the button Group in bottom menu


navigation on the screen.
2. Parents/Children click an objective on the screen.
3. Parents/Children click a key result on the screen.
Normal Flow: 4. Parents/Children click the edit button.
5. Parents/Children fill all the information.
6. Parents/Children click button save.
7. Back to list key result screen.
8. System stored data to the database.

Alternative Flows: N/A.

10.0-E1 – Cannot communicate with server


Exceptions: 1. Application displays error message
Priority: High

Frequency of Use: Medium

Business Rules: B08

Other Information: N/A.

Assumptions: N/A.

3.2.3.1.11 Delete key result

Use case specification

UC ID and Name: UC-11 Delete key result

Created by: LocNX Date Created: 26/06/2020

Primary Actor: Parent Secondary Actors: Children

Description: Delete a key result in FamilyOKR.

PRE-11.1. Parents/Children must login to FamilyOKR.


Preconditions: PRE-11.2. Parents/Children must create a key result in the
FamilyOKR application.

POST-11.1. System delete key result


Postconditions:

11.0 Delete Key Result


1. Parents/Children click the button Group in bottom menu
navigation on the screen.
Normal Flow: 2. Parents/Children click an objective on the screen.
3. Parents/Children click a key result on the screen.
4. Parents/Children click the delete button.
5. Parents/Children click yes in the confirm dialog.
6. Back to list key result screen.
7. System stored data to the database.
Alternative Flows: N/A.

Exceptions: 11.0-E1 – Cannot communicate with server.


1. Application displays error message
Priority: High
Frequency of Use: Medium

Business Rules: N/A.

Other Information: N/A.

Assumptions: N/A.
3.2.3.1.12 View key result

Use case specification

UC ID and Name: UC-12 View key result

Created by: HuongNT Date Created: 26/07/2020

Primary Actor: Parent Secondary Actors: Children

Description: View a key result in FamilyOKR.

PRE-12.1. Parents/Children must create an objective in the


Preconditions: FamilyOKR application.
PRE-12.2. Parents/Children must create a key result in the
FamilyOKR application.

Postconditions: POST-12.1 System delete key result

12.0 View Key Result


1. Parents/Children click the button Group in bottom menu
Normal Flow: navigation on the screen.
2. Parents/Children click an objective on the screen.
3. Parents/Children click a key result on the screen.
4. Display detail key result screen.

Alternative Flows: N/A.

12.0-E1 – Cannot communicate with server


Exceptions:
1. Application displays error message
Priority: Medium

Frequency of Use: Medium

Business Rules: N/A.

Other Information: N/A.


Assumptions: N/A.

3.2.3.1.13 Create group

Use case specification

UC ID and Name: UC-13 Create group

Created by: PhucNV Date Created: 17/07/2020

Primary Actor: Parent Secondary Actors: Children

Description: Create a group in FamilyOKR

Preconditions: PRE-13.1. Users must login to FamilyOKR

Postconditions: POST-13.1. Users created a group

13 Create group
1. Users click the button Group in bottom menu navigation on
the screen.
Normal Flow: 2. Users click button “New Group” on top bar on the screen
3. Users enter name of the group
4. Users click button “Save”
5. System stored data to the database.

Alternative Flows: N/A

Exceptions: 13.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: Medium

Frequency of Use: Medium

Business Rules: B11

Other Information: N/A

Assumptions: N/A

3.2.3.1.14 Delete group


Use case specification
UC ID and Name: UC-14 Delete group

Created by: LocNX Date Created: 27/06/2020

Primary Actor: Parent Secondary Actors: Children

Description: Delete a group in FamilyOKR

Preconditions: PRE-14.1. Users must login to FamilyOKR


PRE-14.2. Uses must created a group

Postconditions: POST-14.1. Group is deleted

14 Delete a group
1. Users click the button Group in bottom menu navigation on
the screen.
Normal Flow: 2. Uses click on a group on the screen
3. Users button “Options”
4. Users click button “Delete Group”
5. Users click button “Delete” on the confirm dialog
6. System stored data to the database.
Alternative Flows: N/A

Exceptions: 14.0-E1 – Cannot communicate with server


1. Application displays error message

Priority: Normal

Frequency of Use: Normal

Business Rules: N/A

Other Information: N/A

Assumptions: N/A

3.2.3.1.15 Edit group

Use case specification

UC ID and Name: UC-15 Edit group

Created by: LocNX Date Created: 19/06/2020

Primary Actor: Parent Secondary Actors: children


Description: Edit a group in FamilyOKR

Preconditions: PRE-15.1. Users must login to FamilyOKR


PRE-15.2. Uses must created a group

Postconditions: POST-15.1. Group is edited

Normal Flow:

Alternative Flows: N/A


15.0-E1 – Cannot communicate with server
Exceptions: 1. Application displays error message

Priority: Normal

Frequency of Use: Normal

Business Rules: B11

Other Information: N/A

Assumptions: N/A

3.2.3.1.16 View group

Use case specification

UC ID and Name: UC-16 View group

Created by: Huongnt Date Created: 22/07/2020

Primary Actor: Parent Secondary Actors: Children

Description: View a group in FamilyOKR


PRE-16.1. Users must login to FamilyOKR
Preconditions: PRE-16.2. Uses must created a group

Postconditions: POST-16.1. Group displayed

16 View a group
Normal Flow: 1. Users login to FamilyOKR
2. Users click the button Group in bottom menu navigation on
the screen
3. Users click in an group
Alternative Flows: N/A

Exceptions: 16.0-E1 – Cannot communicate with server


1. Application displays error message

Priority: Normal

Frequency of Use: High

Business Rules: N/A

Other Information: N/A

Assumptions: N/A

3.2.3.1.17 View member


Use case specification

UC ID and Name: UC-20 View member

Created by: GiangDH Date Created: 27/06/2020

Primary Actor: Parent Secondary Actors: Children

Description: View all member in the group

Preconditions: PRE-20.1 Parents have logged into the FamilyOKR application.


PRE-20.2 Parents is on the menu group screen.

Postconditions: N/A

20.0 View member group


1. Parents/Children click the member icon from the menu group
Normal Flow: on the screen.
2. Parents/Children are moved to the member group screen.
3. System displays the account’s profile including email, image
and permission.
Alternative Flows: N/A

Exceptions: 20.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: High

Frequency of Use: High


Business Rules: N/A

Other Information: N/A

Assumptions: N/A

3.2.3.1.18 View group objective statistical

Use case specification

UC ID and Name: UC-21 View group objective statistical

Created by: GiangDH Date Created: 20/06/2020

Primary Actor: Parent Secondary Actors: Children

Description: View statistical of objective in group

Preconditions: PRE-21.1 Parents have logged into the FamilyOKR application.


PRE-21.2 Parents is on the menu group screen.

Postconditions: N/A

21.0 View group objective statistical


1. Parents/Children click the statistical icon from the menu

group on the screen.


2. Parents/Children are moved to statisticals group screens.
3. System displays statistics of objectives in a group by the
Normal Flow: current week.
4. Parents/Children click the week, month or year from the
statistical group screen.
5. System displays choose date dialog.
6. Parents/Children choose dates to show statistics.
7. Parents/Children click OK or Save button from dialog.
8. System displays statistics of objectives in a group on screen.
Alternative Flows: N/A

Exceptions: 21.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: High

Frequency of Use: High

Business Rules: N/A


Other Information: N/A

Assumptions: N/A
3.2.3.1.19 View personal objective statistical

Use case specification

UC ID and Name: UC-22 View personal objective statistical

Created by: GiangDH Date Created: 19/06/2020

Primary Actor: Parent Secondary Actors: Children

Description: View statistical of objective of user

Preconditions: PRE-22.1 Parents have logged into the FamilyOKR application.


PRE-22.2 Parents is on the menu screen.

Postconditions: N/A

22.0 View personal objective statistical


1. Parents/Children click the statistical icon from the menu on

the screen.
2. Parents/Children are moved to statisticals personer screens.
3. System displays statistics of objectives in a personer by the
Normal Flow: current week.
4. Parents/Children click the week, month or year from the
statistical personer screen.
5. System displays choose date dialog.
6. Parents/Children choose dates to show statistics.
7. Parents/Children click OK or Save button from dialog.
8. System displays statistics of objectives in a personer on
screen.
Alternative Flows: N/A

22.0-E1 – Cannot communicate with server


Exceptions: 1. Application displays error message

Priority: High

Frequency of Use: High

Business Rules: N/A


Other Information: N/A

Assumptions: N/A

3.2.3.1.20 View objective evaluating

Use case specification

UC ID and Name: UC-23 View objective evaluating

Created by: GiangDH Date Created: 22/06/2020

Primary Actor: Parent Secondary Actors: Children

Description: View objective evaluation in FamilyOKR

Preconditions: PRE-23.1. Parents/Children must login to FamilyOKR


PRE-23.2. Parents/Children must create an objective in group

Postconditions: POST-23.1. Display an evaluate of an objective

23 View OKR evaluating


Normal Flow: 1. Parents/Children login to FamilyOKR
2. Parents/Children tab “Group” in navigation bar
3. Parents/Children select a group
4. Display evaluating in objective item
Alternative Flows: N/A

Exceptions: 23.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: Normal

Frequency of Use: High

Business Rules: N/A

Other Information: N/A

Assumptions: N/A

3.2.3.1.21 Objective evaluating


Use case specification

UC ID and Name: UC-24 Objectives evaluating


Created by: LocNX Date Created: 20/06/2020

Primary Actor: Parent Secondary Actors: Children

Description: Evaluating an objective in FamilyOKR

Preconditions: PRE-24.1. Parents/children logged in to FamilyOKR


PRE-24.2. Parents/children create an objective

Postconditions: POST-24.1. An objective is evaluated

24 OKR evaluating
1. Parents/children logged in to FamilyOKR
Normal Flow:
2. Parents/children click an objective in objective screen
3. Parents/children click “Mark success” or “Mark fail” in dialog
4. System show objective screen
Alternative Flows: N/A

Exceptions: 24.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: Normal

Frequency of Use: High

Business Rules: N/A

Other Information: N/A

Assumptions: N/A
3.2.3.1.22 Edit Objectives evaluating

Use case specification

UC ID and Name: UC-25 Edit Objectives evaluating

Created by: LocNX Date Created: 22/06/2020

Primary Actor: Parent Secondary Actors:

Description: Edit an evaluation of an objective in FamilyOKR

Preconditions: PRE-25.1 Parents/Children must login to FamilyOKR


PRE-25.2 Parents/Children must create an objective in group
Postconditions: POST-25.1 Edited an evaluate of an objective

25 Edit Objectives evaluating


1. Parents login to FamilyOKR
Normal Flow: 2. Parents tab “Group” in navigation bar
3. Parents select a group
4. Parents click an objective
5. Parents click button “Success” or “Failed”
6. System show objective screen
Alternative Flows: N/A

25.0-E1 – Cannot communicate with server


Exceptions:
1. Application displays error message
Priority: Normal

Frequency of Use: High

Business Rules: N/A

Other Information: N/A

Assumptions: N/A
3.2.3.1.23 View align objective

Use case specification

UC ID and Name: UC-26 View align objective

Created by: GiangDH Date Created: 23/06/2020

Primary Actor: Parent Secondary Actors: children

Description: View align objective in group

PRE-26.1 Parents have logged into the FamilyOKR application.


Preconditions:
PRE-26.2 Parents is on the alignment screen.

Postconditions: N/A

26.0 View align objective


Normal Flow: 1. Parents/Children click an objective from the objectives screen

2. System show dialog open objective.


3. Parents/Children open objectives from dialog.
4. System show alignment screen.
Alternative Flows: N/A

Exceptions: 26.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: High

Frequency of Use: High

Business Rules: N/A

Other Information: N/A

Assumptions: N/A

3.2.3.1.24 View mark align

Use case specification

UC ID and Name: UC-29 View mark align

Created by: GiangDH Date Created: 22/07/2020

Primary Actor: Parent Secondary Actors: Children

Description: View mark align of objective in group

PRE-29.1. Parents/Children have logged into the FamilyOKR


Preconditions: application.
PRE-29.2. Parents/Children is on the alignment screen.

Postconditions: N/A

29.0 View mark align


Normal Flow: 1. Parents/Children click an objective on the objectives screen.
2. System show dialog open objective.
Alternative Flows: N/A

29.0-E1 – Cannot communicate with server


Exceptions:
1. Application
Priority: High

Frequency of Use: High

Business Rules: N/A

Other Information: N/A


Assumptions: N/A

3.2.3.1.25 View permission member

Use case specification

UC ID and Name: UC-32 View permission member

Created by: GiangDH Date Created: 30/07/2020

Primary Actor: Parent Secondary Actors: Children

Description: View permission member in the group

Preconditions: PRE-32.1 Parents have logged into the FamilyOKR application.


PRE-32.2 Parents is on the menu group screen.

Postconditions: N/A

32.0 View permission member


1. Parents/Children click the member icon from the menu group
Normal Flow: on the screen.
2. Parents/Children are moved to the member group screen.
3. System displays the account’s profile including email, image
and permission.
Alternative Flows: N/A

Exceptions: 32.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: High

Frequency of Use: High

Business Rules: N/A

Other Information: N/A

Assumptions: N/A

3.2.3.1.26 View notification


Use case specification

UC ID and Name: UC-34 View notification


Created by: GiangDH Date Created: 07/08/2020

Primary Actor: Parent Secondary Actors: Children

Description: View all notification in FamilyOKR

Preconditions: PRE-34.1. Parents/Children must login to FamilyOKR

Postconditions: N/A

34.0 Add note objective


Normal Flow: 1. Parents/Children click image notification on bottom
navigation.
2. System show notification screen.
Alternative Flows: N/A

Exceptions: 34.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: High

Frequency of Use: High

Business Rules: N/A

Other Information: N/A

Assumptions: N/A

3.2.3.1.27 Add note objective

Use case specification

UC ID and Name: UC-35 Add note objective

Created by: LocNX Date Created: 23/06/2020

Primary Actor: Parent Secondary Actors: Children

Description: Add a note to objective in FamilyOKR

Preconditions: PRE-35.1. Parents/Children must login to FamilyOKR


PRE-35.2. Users must create objective

Postconditions: POST-35.1. Note objective is added

Normal Flow: 35 Add note objective


1. Parents/Children login in FamilyOKR
2. Parents/Children click “Notes” in objective list
3. Parents/Children enter note
4. Parents/Children click add
5. System note objective screen.
Alternative Flows: N/A

Exceptions: 35.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: Normal

Frequency of Use: Normal

Business Rules: B11

Other Information: N/A

Assumptions: N/A

3.2.3.1.28 Edit note objective


Use case specification

UC ID and Name: UC-36 Edit note objective

Created by: LocNX Date Created: 17/07/2020

Primary Actor: Parent Secondary Actors: Children

Description: Edit note of an objective in FamilyOKR

PRE-36.1. Parents/Children must login to FamilyOKR


Preconditions: PRE-36.2. Parents/Children must create at least a objective
PRE-36.3. Parents/Children must create a note of objective

Postconditions: POST-36.1. Note objective is edited

36 Edit note objective


1. Parents/Children login in FamilyOKR

Normal Flow: 2. Parents/Children click “Notes” in objective


3. Parents/Children long click on a note
4. Parents/Children click edit in dialog
5. Parents/Children modify note
6. Parents/Children click update
7. System note objective screen.
Alternative Flows: N/A
36.0-E1 – Cannot communicate with server
Exceptions:
1. Application displays error message

Priority: Normal

Frequency of Use: Normal

Business Rules: B11

Other Information: N/A

Assumptions: N/A

3.2.3.1.29 Delete note objective


Use case specification

UC ID and Name: UC-37 Delete note objective

Created by: LocNX Date Created: 22/07/2020

Primary Actor: Parent Secondary Actors: Children

Description: Delete a note of objective in FalimyOKR

PRE-37.1. Parents/Children must login to FamilyOKR


Preconditions: PRE-37.2. Parents/Children must create objective
PRE-37.3. Parents/Children must create a note of objective

Postconditions: POST-37.1. Note of an objective is deleted

37 Delete note objective


1. Parents/Children login in FamilyOKR
Normal Flow: 2. Parents/Children click “Notes” in objective
3. Parents/Children long click on a note
4. Parents/Children click delete in dialog
5. Parents/Children click “Delete” in confirm dialog
6. System note objective screen.
Alternative Flows: N/A
37.0-E1 – Cannot communicate with server
Exceptions:
1. Application displays error message

Priority: Normal

Frequency of Use: Normal

Business Rules: N/A

Other Information: N/A

Assumptions: N/A

3.2.3.1.30 Add note key result


Use case specification

UC ID and Name: UC-38 Add note key result

Created by: PhucNV Date Created: 22/07/2020

Primary Actor: Parent Secondary Actors: Children

Description: Add a note to key result in FamilyOKR

PRE-38.1. Parents/Children must login to FamilyOKR

Preconditions: PRE-38-2. Parents/Children must create objective

PRE-38-3. Parents/Children must create key result

Postconditions: POST-38.1 Note Key result is added

38 Add note key result


1. Parents/Children login in FamilyOKR
Normal Flow: 2. Parents/Children click “Notes” in key result list
3. Parents/Children enter note
4. Parents/Children click add
5. System note key result screen.
Alternative Flows: N/A

Exceptions: 38.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: Normal
Frequency of Use: Normal

Business Rules: B11

Other Information: N/A

Assumptions: N/A
3.2.3.1.31 Edit note key result

Use case specification

UC ID and Name: UC-39 Edit note key result

Created by: PhucNV Date Created: 26/07/2020

Primary Actor: Parent Secondary Actors: Children

Description: Edit a note of key result in FamilyOKR

PRE-39.1. Parents/Children must login to FamilyOKR

Preconditions: PRE-39. Parents/Children must create objective

PRE-39.3. Parents/Children must create key result


PRE-39.4. Parents/Children must create a note of key result

Postconditions: POST-39.1. Note key result is edited

39 Edit note key result


1. Parents/Children login in FamilyOKR
2. Parents/Children click “Notes” in key result
Normal Flow: 3. Parents/Children long click on a note
4. Parents/Children click edit in dialog
5. Parents/Children modify note
6. Parents/Children click update
7. System show note key result screen.
Alternative Flows: N/A
39.0-E1 – Cannot communicate with server
Exceptions:
1. Application displays error message

Priority: Normal
Frequency of Use: Normal

Business Rules: B11

Other Information: N/A

Assumptions: N/A
3.2.3.1.32 Delete note key result

Use case specification

UC ID and Name: UC-401 Delete note key result

Created by: LocNX Date Created: 26/07/2020

Primary Actor: Parent Secondary Actors: Children

Description: Delete a note of key result in FamilyOKR

PRE-40.1. Parents/Children must login to FamilyOKR

Preconditions: PRE-40-2. Parents/Children must create objective

PRE-40-3. Parents/Children must create key result


PRE-40-4. Parents/Children must create a note of key result

Postconditions: POST-40.1 Note key result is deleted

40 Delete note key result


1. Parents/Children login in FamilyOKR
Normal Flow: 2. Parents/Children click “Notes” in key result
3. Parents/Children long click on a note
4. Parents/Children click delete in dialog
5. Parents/Children click “Delete” in confirm dialog
6. System show list note key result screen.
Alternative Flows: N/A
40.0-E1 – Cannot communicate with server
Exceptions:
1. Application displays error message

Priority: Normal

Frequency of Use: Normal


Business Rules: N/A

Other Information: N/A

Assumptions: N/A
3.2.3.1.33 View personal activity history

Use case specification

UC ID and Name: UC-41 View personal activity history

Created by: GiangDH Date Created: 11/08/2020

Primary Actor: Parent Secondary Actors: Children

Description: View all activity in group

Preconditions: PRE-41.1. Parents/Children must login to FamilyOKR.

PRE-41.2. Parents/Children is on the group screen.

Postconditions: N/A

41 View personal activity history


1. Parents/Children login in FamilyOKR.
Normal Flow: 2. Parents/Children click the menu icon on the home screen.
3. System show menu screen.
4. Parents/Children click the activity icon on the menu screen.
5. System show activity screen.
Alternative Flows: N/A
41.0-E1 – Cannot communicate with server
Exceptions:
1. Application displays error message

Priority: Medium

Frequency of Use: Medium

Business Rules: N/A

Other Information: N/A

Assumptions: N/A
3.2.3.1.34 View group activity history
Use case specification

UC ID and Name: UC-42 View group activity history

Created by: GiangDH Date Created: 15/08/2020

Primary Actor: Parent Secondary Actors: children

Description: View all activity of personal

Preconditions: PRE-42.1. Parents/Children must login to FamilyOKR.

Postconditions: N/A

42 View group activity history


1. Parents/Children login in FamilyOKR.
2. Parents/Children click the group icon in the bottom
Normal Flow: navigation on the home screen.
3. System show group screen.
4. Parents/Children click activity in bottom navigation on the
group screen.
5. System show activity screen.
Alternative Flows: N/A

Exceptions: 42.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: Medium

Frequency of Use: Medium

Business Rules: N/A

Other Information: N/A

Assumptions: N/A

3.2.3.1.35 Create category


Use case specification

UC ID and Name: UC-43 Create category

Created by: LocNX Date Created: 30/07/2020


Primary Actor: Parent Secondary Actors: Children

Description: Create a new category inFamilyOKR

Preconditions: PRE-43.1. Parents/Children must login to FamilyOKR

Postconditions: POST-43.1. Category is created

43 Create category
1. Parents/Children click the button Group in bottom menu

navigation on the screen.


Normal Flow: 2. Parents/Children click “New objective” on top bar
3. Parents/Children select “Create a custom”
4. Parents/Children click “Create category”
5. Parents/Children enter category name and description
6. Parents/Children click button save
7. System show list category screen.
Alternative Flows: N/A

Exceptions: 43.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: Normal

Frequency of Use: Normal

Business Rules: B11

Other Information: N/A

Assumptions: N/A
3.2.3.1.36 Delete category

Use case specification

UC ID and Name: UC-44 Delete category

Created by: LocNX Date Created: 03/08/2020

Primary Actor: Parent Secondary Actors: Children

Description: Delete a category parents/children were created.

Preconditions: PRE-44.1. Parents/children have logged into the Family OKR


application.
PRE-44.2. Parents/children created a category in FamilyOKR

Postconditions: POST-44.1. A category is deleted

44 Delete category
1. Parents/children click “New objective” in top bar navigation
Normal Flow: 2. Parents/children long click to a category in the list
3. Parents/children click button “Delete”
4. Parents/children click button “Delete” in confirm dialog
5. System show list category screen.
Alternative Flows: N/A

Exceptions: 44.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: Normal

Frequency of Use: Normal

Business Rules: N/A

Other Information: N/A

Assumptions: N/A
3.2.3.1.37 View category

Use case specification

UC ID and Name: UC-45 View category

Created by: LocNX Date Created: 07/08/2020

Primary Actor: Parent Secondary Actors: Children

Description: View list category in FamilyOKR

Preconditions: PRE-45.1. Parents have logged into the FamilyOKR application.

Postconditions: POST-45.1. Display list category

45 View category
Normal Flow: 1. Parents/Children click the button Group in bottom menu

navigation on the screen.


2. Parents/Children click “New objective” on top bar
3. Display list category
Alternative Flows: N/A

Exceptions: 45.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: Normal

Frequency of Use: Normal

Business Rules: N/A

Other Information: N/A

Assumptions: N/A

3.2.3.1.38 Edit category


Use case specification

UC ID and Name: UC-46 Edit category

Created by: LocNX Date Created: 11/08/2020

Primary Actor: Parent Secondary Actors: Children

Description: Edit a category in FamilyOKR

PRE-46.1. Parents/children have logged into the Family OKR


Preconditions: application.
PRE-46.2. Parents/children created a category in FamilyOKR

Postconditions: POST-46.1 A category is edited

46 Edit category
1. Parents/children click “New objective” in top bar navigation

Normal Flow: 2. Parents/children long click to a category in the list


3. Parents/children click button “Edit”
4. Parents/children enter category name and description
5. Parents/children click button “Save”
6. System show list category screen
Alternative Flows: N/A

Exceptions: 46.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: Normal

Frequency of Use: Normal

Business Rules: B11

Other Information: N/A

Assumptions: N/A

3.2.3.1.39 View reward

Use case specification

UC ID and Name: UC-50 View reward

Created by: GiangDH Date Created: 23/08/2020

Primary Actor: Parent Secondary Actors: Children

Description: View reward in the group

PRE-50.1 Parents/Children have logged into the FamilyOKR


Preconditions: application.
PRE-50.2 Parents/Children is on the reward screen.

Postconditions: N/A

50.0 View reward


Normal Flow: 1. Parents/Children click the reward image on the menu group
screen.
2. System show reward screen.
Alternative Flows: N/A

Exceptions: 50.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: High

Frequency of Use: High

Business Rules: N/A

Other Information: N/A

Assumptions: N/A
3.2.3.1.40 Add align objective
Use case specification

UC ID and Name: UC-27 Add align objective

Created by: GiangDH Date Created: 24/06/2020

Primary Actor: Parent Secondary Actors: Children

Description: Add align objective in group

Preconditions: PRE-27.1 Parents have logged into the FamilyOKR application.


PRE-27.2 Parent is on the alignment screen.

Postconditions: POST-27.1 Parent add align objective.

27.0 Add align objective


1. Parents click an objective from an objective screen.

2. System show dialog open objective.


Normal Flow: 3. Parents click the open objective from dialog.
4. System show alignment screen.
5. Parent click add alignment from alignment screen.
6. System show add alignment dialog.
7. Parents choose an objective of listview on dialog.
8. Parent click add button on dialog.
Alternative Flows: N/A

Exceptions: 27.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: High

Frequency of Use: High

Business Rules: N/A

Other Information: N/A

Assumptions: N/A

3.2.3.1.41 Delete align objective


Use case specification

UC ID and Name: UC-28 Delete align objective

Created by: GiangDH Date Created: 25/06/2020


Primary Actor: Parent Secondary Actors: Children

Description: Delete align objective in group

Preconditions: PRE-28.1 Parents have logged into the FamilyOKR application.


PRE-28.2 Parent is on the alignment screen.

Postconditions: POST-28.1 Parent delete align objective.

28.0 Delete align objective


1. Parents click an objective from an objective screen.

2.
System show dialog open objective.
Normal Flow: 3.
Parents click the open objective from dialog.
4.
System show alignment screen.
5.
Parent click delete button of objective in listview on
alignment screen.
6. System show confirm delete align dialog.
7. Parent click save button on dialog.
Alternative Flows: N/A

28.0-E1 – Cannot communicate with server


Exceptions: 1. Application displays error message

Priority: High

Frequency of Use: High

Business Rules: N/A

Other Information: N/A

Assumptions: N/A
3.2.3.1.42 Mark align

Use case specification

UC ID and Name: UC-30 Mark align

Created by: GiangDH Date Created: 17/07/2020

Primary Actor: Parent Secondary Actors: Children

Description: Mark align of objective in group


Preconditions: PRE-30.1 Parents have logged into the FamilyOKR application.
PRE-30.2 Parent is on the alignment screen.

Postconditions: POST-30.1 Parent evaluating objective.

30.0 Mark align


1. Parents click an objective from an objective screen.

Normal Flow: 2. System show dialog open objective.


3. Parents click the open objective from dialog.
4. System show alignment screen.
5. Parents click mark success or mark fail from the alignment
screen.
Alternative Flows: N/A

Exceptions: 30.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: High

Frequency of Use: High

Business Rules: N/A

Other Information: N/A

Assumptions: N/A

3.2.3.1.43 Edit mark align

Use case specification

UC ID and Name: UC-31 Edit mark align

Created by: GiangDH Date Created: 26/07/2020

Primary Actor: Parent Secondary Actors: Children

Description: Edit mark align of objective in group

Preconditions: PRE-31.1 Parents have logged into the FamilyOKR application.


PRE-31.2 Parent is on the alignment screen.

Postconditions: POST-31.1 Parent edit evaluating objective.

31.0 Edit mark align


Normal Flow: 1. Parents click an objective from an objective screen.

2. System show dialog open objective.


3. Parents click open objective dialog.
4. System show alignment screen.
5. Parent click edit alignment button from alignment screen.
6. System show edit mark dialog.
7. Parents choose success or failure status on screen.
8. Parents click the save button on screen.
Alternative Flows: N/A

Exceptions: 31.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: High

Frequency of Use: High

Business Rules: N/A

Other Information: N/A

Assumptions: N/A
3.2.3.1.44 Change Category
Use case specification

UC ID and Name: UC-52 Change category

Created by: LocNX Date Created: 15/08/2020

Primary Actor: Parent Secondary Actors: Children

Description: Change category of an objective in FamilyOKR

PRE-52.1 Parents/children have logged into the FamilyOKR


Preconditions: application
PRE-52.2 Parents/children created an objective

Postconditions: POST-52.1 Category of an objective is changed

52 Change category
1. Parents/children logged in FamilyOKR
2. Parents/children click an objective name
Normal Flow: 3. Parents/children click option
4. Parents/children click “Edit objective”
5. Parents/children click on category name
6. Parents/children click a category
7. System show edit objective dialog
Alternative Flows: N/A

Exceptions: 52.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: High

Frequency of Use: High

Business Rules: N/A

Other Information: N/A

Assumptions: N/A
3.2.3.2 Parent
3.2.3.2.1 Add member
Use case specification

UC ID and Name: UC-17 Add member

Created by: GiangDH Date Created: 26/06/2020

Primary Actor: Parent Secondary Actors: N/A

Description: Add member into group

Preconditions: PRE-17.1 Parents have logged into the FamilyOKR application.


PRE-17.2 Parent is on the add member group screen.

Postconditions: POST-17.1 Parent insert new member into group.

17.0 Add member group


1. Parents enter email to search.
2. Parents click the search button on the member group screen.
Normal Flow: 3. Parents select one user to add.
4. Parent click add member button on the member group
screen.
5. System receives the user's information and inserts it into the
database.
Alternative Flows: N/A

Exceptions: 17.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: High
Frequency of Use: High

Business Rules: N/A

Other Information: N/A

Assumptions: N/A
3.2.3.2.2 Delete member

Use case specification

UC ID and Name: UC-18 Delete member

Created by: GiangDH Date Created: 28/06/2020

Primary Actor: Parent Secondary Actors: N/A

Description: Delete member from group

Preconditions: PRE-18.1 Parents have logged into the FamilyOKR application.


PRE-18.2 Parent is on the member group screen.

Postconditions: POST-18.1 Parent delete member from group.

18.0 Delete member group


1. Parents select one user to delete on the member group
screen.
Normal Flow: 2. Parents click the edit button on the member group screen.
3. Application show dialog edit member.
4. Parent click delete member button on the edit dialog.
5. System receives the user's information and deletes it from the
database.
Alternative Flows: N/A

Exceptions: 18.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: High

Frequency of Use: High

Business Rules: N/A

Other Information: N/A

Assumptions: N/A
3.2.3.2.3 Search member
Use case specification

UC ID and Name: UC-19 Search member

Created by: GiangDH Date Created: 28/06/2020

Primary Actor: Parent Secondary Actors: N/A

Description: Search member to add into group

PRE-19.1 Parents have logged into the FamilyOKR application.


Preconditions:
PRE-19.2 Parent is on the add member group screen.

Postconditions: N/A

19.0 Search member group


Normal Flow: 1. Parents enter email to search.
2. Parents click the search button on the member group screen.
3. System receives the user's information and selects it from the
database and shows it on screen.
Alternative Flows: N/A

Exceptions: 19.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: High

Frequency of Use: High

Business Rules: N/A

Other Information: N/A

Assumptions: N/A

3.2.3.2.4 Edit permission member


Use case specification

UC ID and Name: UC-33 Edit permission member

Created by: GiangDH Date Created: 03/08/2020

Primary Actor: Parent Secondary Actors: N/A

Description: Edit permission member in the group


Preconditions: PRE-33.1 Parents have logged into the FamilyOKR application.
PRE-33.2 Parent is on the member group screen.

Postconditions: POST-33.1 Parent edit permission member in the group.

33.0 Edit permission member


1. Parents select one user to delete on the member group
screen.
Normal Flow: 2. Parents click the edit button on the member group screen.
3. Application show dialog edit member.
4. Parents choose parent or children permission on dialog..
5. Parents click the save button on the dialog.
6. System receives the user's information and edits it from the
database.
Alternative Flows: N/A

Exceptions: 33.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: High

Frequency of Use: High

Business Rules: N/A

Other Information: N/A

Assumptions: N/A
3.2.3.2.5 Create reward
Use case specification

UC ID and Name: UC-47 Create reward

Created by: GiangDH Date Created: 19/08/2020

Primary Actor: Parent Secondary Actors: N/A

Description: Create reward in group

Preconditions: PRE-47.1 Parents have logged into the FamilyOKR application.


PRE-47.2 Parent is on the reward screen.

Postconditions: POST-47.1 Parents add new rewards in the group.

Normal Flow: 47.0 Create reward


1. Parents click the add reward button on the reward screen.
2. System show add reward screen.
3. Parents enter name, star and image of reward on the add
reward screen.
4. Parents click the save button on the add reward screen.
5. System receives the reward information and adds it from the
database.
Alternative Flows: N/A

Exceptions: 47.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: High

Frequency of Use: High

Business Rules: N/A

Other Information: N/A

Assumptions: N/A

3.2.3.2.6 Delete reward


Use case specification

UC ID and Name: UC-48 Delete reward

Created by: GiangDH Date Created: 27/08/2020

Primary Actor: Parent Secondary Actors: N/A

Description: Delete reward in the group

Preconditions: PRE-48.1 Parents have logged into the FamilyOKR application.


PRE-48.2 Parent is on the reward screen.

Postconditions: POST-48.1 Parent delete reward in the group.

48.0 Delete reward


1. Parent click image reward of gridview on the reward screen.

Normal Flow: 2. System show detail reward screen.


3. Parents click the delete reward button on the detail reward
screen.
4. System receives the reward information and deletes it from
the database.
Alternative Flows: N/A
Exceptions: 48.0-E1 – Cannot communicate with server
1. Application displays error message
Priority: High

Frequency of Use: High

Business Rules: N/A

Other Information: N/A

Assumptions: N/A

3.2.3.2.7 Edit reward


Use case specification

UC ID and Name: UC-49 Edit reward

Created by: GiangDH Date Created: 17/08/2020

Primary Actor: Parent Secondary Actors: N/A

Description: Edit reward in the group

Preconditions: PRE-49.1 Parents have logged into the FamilyOKR application.


PRE-49.2 Parent is on the reward screen.

Postconditions: POST-51.1 Parent edit reward in the group.

49.0 Edit reward


1. Parent click image reward of gridview on the reward screen.
2. System show detail reward screen.
3. Parents click the edit reward button on the detail reward
Normal Flow: screen.
4. System show edit reward screen.
5. Parent enter name, star and image of reward on the edit
reward screen.
6. Parents click the save button on the eidt reward screen.
7. System receives the reward information and updates it from
the database.
Alternative Flows: N/A

Exceptions: 49.1 – Cannot communicate with server


1. Application displays error message
Priority: High
Frequency of Use: High

Business Rules: N/A

Other Information: N/A

Assumptions: N/A

3.2.3.3 Children
3.2.3.3.1. Exchange reward
Use case specification

UC ID and Name: UC-51 Exchange reward

Created by: GiangDH Date Created: 21/08/2020

Primary Actor: Parent Secondary Actors: children

Description: Exchange reward in the group

PRE-51.1 Parents/Children have logged into the Family OKR


Preconditions: application.
PRE-51.2 Parents/Children is on the reward screen.

Postconditions: POST-51.1 Parents/Children exchange rewards in the group.


POST-51.2 Parents/Children update star in the group.

51.0 Exchange reward


1. Parents/Children click the reward image on the menu group
screen.
Normal Flow: 2. System show reward screen.
3. Parents/Children click the cart button on the reward screen.
4. System show confirm exchange reward dialog.
5. Parent click save button on the confirm exchange reward
dialog.
6. System update it from the database.
Alternative Flows: N/A

Exceptions: 51.0-E1 – Cannot communicate with server


1. Application displays error message
Priority: High

Frequency of Use: High


Business Rules: N/A

Other Information: N/A

Assumptions: N/A

3.2.3.4 Admin
3.2.3.4.1 Login Admin
Use case specification

UC ID and Name: UC-53 Login Admin

Created by: DuongDV Date Created: 24/06/2020

Primary Actor: Administrator Secondary Actors: N/A

Description: Allow admin who has FamilyOKR account to login

Preconditions: PRE-53.1. Admin account has been set up and username password
has been create

POST-53.1 The Administrator is logged into FamilyOKR admin


Postconditions: success
POST-53.2 System display Dashboard Home page

53.0 Login Admin


Normal Flow: 1. Admin visits the website
2. Admin fill valid username and password the click button
“Login”
3. System display Dashboard Home page
53.0 Login Admin with incorrect account
Alternative Flows: 1. System refresh the login page
2. Go to step 2 in normal flow
53.0-E1 – Cannot communicate with server
Exceptions:
1. Admin page display error message
Priority: High

Frequency of Use: High

Business Rules: B14

Other Information: N/A


Assumptions: N/A

3.2.3.4.2 Logout Admin


Use case specification

UC ID and Name: UC-54 Logout Admin

Created by: DuongDV Date Created: 24/06/2020

Primary Actor: Administrator Secondary Actors: N/A

Description: Allow admin logout of FamilyOKR admin system


PRE-54.1. Administrator can access the system
Preconditions: PRE-54.2. Administrator logged in

Postconditions: POST-54.1 The Administrator is logged out FamilyOKR admin


success

54.0 Logout Admin


Normal Flow: 1. On the navigation Bar, admin clicks on the user avatar.
2. Click button “ Logout”
3. System logs admin out of system and redirects to login page
Alternative Flows: N/A

Exceptions: 54.0-E1 – Cannot communicate with server


1. Admin page display error message
Priority: High

Frequency of Use: Medium

Business Rules: N/A

Other Information: N/A

Assumptions: N/A

3.2.3.4.3 Change Password


Use case specification

UC ID and Name: UC-55 Change password

Created by: DuongDV Date Created: 24/06/2020

Primary Actor: Administrator Secondary Actors: N/A

Description: Allow admin change password of admin account


Preconditions: PRE-55.1. Administrator can access the system
PRE-55.2. Administrator logged in

Postconditions: POST-55.1 The Administrator account is change password success

55.0 Change password


1. On the navigation Bar, admin clicks on the user avatar.
Normal Flow: 2.Click button “ Change Password”
3.Fill old account and new password
4.Click button ”save”
5.System update password and redirect to Dashboard home
page
55.1 cancel Change password
1. On the navigation Bar, admin clicks on the user avatar.
Alternative Flows: 2. Click button “ Change Password”
3. File old account and new password
4. Click button cancel
5. System redirects to dashboard home page
Exceptions: 55.0-E1 – Cannot communicate with server
1. Dashboard page display error message
Priority: High

Frequency of Use: Medium

Business Rules: N/A

Other Information: N/A

Assumptions: N/A
3.2.3.4.4 View list users
Use case specification

UC ID and Name: UC-56 View list users

Created by: DuongDV Date Created: 27/06/2020

Primary Actor: Administrator Secondary Actors: N/A

Description: Allow administrator View list users information


PRE-56.1. Administrator can access the system
Preconditions: PRE-56.2. Administrator logged in
Postconditions: N/A

56.0 View list users


Normal Flow: 1. On the left navigation Bar, the admin clicks the button “list
users”.
2. System display the table list user information
Alternative Flows: N/A

Exceptions: 56.0-E1 – Cannot communicate with server


1. Dashboard page display error message
Priority: High

Frequency of Use: Medium

Business Rules: N/A

Other Information: N/A

Assumptions: N/A

3.2.3.4.5 View detail User


Use case specification

UC ID and Name: UC-57 View Detail User

Created by: DuongDV Date Created: 27/06/2020

Primary Actor: Administrator Secondary Actors: N/A

Description: Allow administrator View detail user information

Preconditions: PRE-57.1. Administrator can access the system


PRE-57.2. Administrator logged in

Postconditions: N/A

57.0 View Detail user


2. On the left navigation Bar, the admin clicks the button “list
Normal Flow: users”.
2. System display the table list user information
3. click button “detail” on column Action
4. system display the detail page show detail user information

Alternative Flows: N/A


Exceptions: 57.0-E1 – Cannot communicate with server
1. Dashboard page display error message
Priority: High

Frequency of Use: Medium

Business Rules: N/A

Other Information: N/A

Assumptions: N/A
3.2.3.4.6 Edit user

Use case specification

UC ID and Name: UC-58 Edit User

Created by: DuongDV Date Created: 08/08/2020

Primary Actor: Administrator Secondary Actors: N/A

Description: Allow administrator Edit user information


PRE-58.1. Administrator can access the system
Preconditions: PRE-58.2. Administrator logged in

Postconditions: POST-58.1 the user information updated success

58.0 Edit user


1. On the left navigation Bar, the admin clicks the button “list
users”.
Normal Flow: 2. System display the table list user information
3. Admin click button “Edit” on column action
4. system display edit page
5. admin edit user information and click button “save”
6. system update user information
Alternative Flows: N/A

Exceptions: 58.0-E1 – Cannot communicate with server


1. Dashboard page display error message
Priority: High

Frequency of Use: Medium

Business Rules: N/A


Other Information: N/A

Assumptions: N/A
3.2.3.4.7 Delete user

Use case specification

UC ID and Name: UC-59 Delete users

Created by: DuongDV Date Created: 08/08/2020

Primary Actor: Administrator Secondary Actors: N/A

Description: Allow administrator Delete user information

Preconditions: PRE-59.1. Administrator can access the system


PRE-59.2. Administrator logged in

Postconditions: POST-59.1 the user has been deleted success

59.0 Delete user the user had been deleted success


1. On the left navigation Bar, the admin clicks the button “list
Normal Flow: users”.
2. System display the table list user information
3. admin click button delete on column action
4. system update delete status of user to false and refresh
Dashboard page
Alternative Flows: N/A

Exceptions: 59.0-E1 – Cannot communicate with server


1. Dashboard page display error message
Priority: High

Frequency of Use: Medium

Business Rules: N/A

Other Information: N/A

Assumptions: N/A

3.2.3.4.8 Search user


Use case specification
UC ID and Name: UC-60 Search user

Created by: DuongDV Date Created: 08/08/2020

Primary Actor: Administrator Secondary Actors: N/A

Description: Allow administrator search user by user name

Preconditions: PRE-60.1. Administrator can access the system


PRE-60.2. Administrator logged in

Postconditions: N/A

60.0 Search user


1. On the left navigation Bar, the admin clicks the button “list
Normal Flow: users”.
2. System display the table list user information
3. admin enter text in search text box and click button “Search”
4. system search user by name and display user information on
table list user information
Alternative Flows: N/A

Exceptions: 60.0-E1 – Cannot communicate with server


1. Admin page display error message
Priority: High

Frequency of Use: Medium

Business Rules: N/A

Other Information: N/A

Assumptions: N/A
3.2.3.4.9 View list Categories
Use case specification

UC ID and Name: UC-61 View list Categories

Created by: DuongDV Date Created: 13/08/2020

Primary Actor: Administrator Secondary Actors: N/A

Description: Allow administrator View list default Categories

Preconditions: PRE-61.1. Administrator can access the system


PRE-61.2. Administrator logged in

Postconditions: N/A

61.0 view list categories


Normal Flow: 1. On the left navigation Bar, the admin clicks the button “list
categories”.
2. System display the table list categories information
Alternative Flows: N/A

Exceptions: 61.0-E1 – Cannot communicate with server


1. Dashboard page display error message
Priority: High

Frequency of Use: Medium

Business Rules: N/A

Other Information: N/A

Assumptions: N/A

3.2.3.4.10 View detail Category


Use case specification

UC ID and Name: UC-62 View Detail Category

Created by: DuongDV Date Created: 13/08/2020

Primary Actor: Administrator Secondary Actors: N/A

Description: Allow administrator View detail a category information


PRE-62.1. Administrator can access the system
Preconditions: PRE-62.2. Administrator logged in

Postconditions: N/A

62.0 View Detail user


1. On the left navigation Bar, the admin clicks the button “list
Normal Flow: categories”.
2. System display the table list categories information
3. click button “detail” on column Action
4. system display the detail page show detail category
information
Alternative Flows: N/A

Exceptions: 62.0-E1 – Cannot communicate with server


1. Dashboard page display error message
Priority: High

Frequency of Use: Medium

Business Rules: N/A

Other Information: N/A

Assumptions: N/A

3.2.3.4.11 Edit category


Use case specification

UC ID and Name: UC-63 Edit category

Created by: DuongDV Date Created: 19/08/2020

Primary Actor: Administrator Secondary Actors: N/A

Description: Allow administrator Edit category information

Preconditions: PRE-63.1. Administrator can access the system


PRE-63.2. Administrator logged in

Postconditions: POST-63.1 The Administrator updated category information success

63.0 Edit category


1. On the left navigation Bar, the admin clicks the button “list
category”.
Normal Flow: 2. System display the table list categories information
3. Admin click button “Edit” on column action
4. system display edit category page
5. admin edit category information and click button “save”
6. system updated category information
Alternative Flows: N/A

Exceptions: 63.0-E1 – Cannot communicate with server


1. Dashboard page display error message
Priority: High
Frequency of Use: Medium

Business Rules: N/A

Other Information: N/A

Assumptions: N/A
3.2.3.4.12 Delete category

Use case specification

UC ID and Name: UC-64 Delete category

Created by: DuongDV Date Created: 19/08/2020

Primary Actor: Administrator Secondary Actors: N/A

Description: Allow administrator Delete category

Preconditions: PRE-64.1. Administrator can access the system


PRE-64.2. Administrator logged in

Postconditions: POST-64.1 delete category success

64.0 Delete category


1. On the left navigation Bar, the admin clicks the button “list
Normal Flow: categories”.
2. System display the table list categories information
3. admin click button delete on column action
4. system
Alternative Flows: N/A

Exceptions: 64.0-E1 – Cannot communicate with server


1. Dashboard page display error message
Priority: High

Frequency of Use: Medium

Business Rules: N/A

Other Information: N/A

Assumptions: N/A
3.2.3.4.13 Search categories
Use case specification

UC ID and Name: UC-65 Search categories

Created by: DuongDV Date Created: 19/08/2020

Primary Actor: Administrator Secondary Actors: N/A

Description: Allow administrator search category by category name

Preconditions: PRE-65.1. Administrator can access the system


PRE-65.2. Administrator logged in

Postconditions: N/A

65.0 Search categories


1. On the left navigation Bar, the admin clicks the button “list
Normal Flow: categories”.
2. System display the table list categories information
3. admin enter text in search text box and click button “Search”
4. system search category by name and display category
information on table list category information
Alternative Flows: N/A

Exceptions: 65.0-E1 – Cannot communicate with server


1. Admin page display error message
Priority: High

Frequency of Use: Medium

Business Rules: N/A

Other Information: N/A

Assumptions: N/A
3.2.3.4.14 Create Category
Use case specification

UC ID and Name: UC-66 Create Category

Created by: DuongDV Date Created: 22/08/2020

Primary Actor: Administrator Secondary Actors: N/A

Description: Allow administrator create new admin account


Preconditions: PRE-66.1. Administrator can access the system
PRE-66.2. Administrator logged in

Postconditions: POST-66.1. create category success

66.0 create category


1. On the left navigation Bar, the admin clicks the button “list
category”.
Normal Flow: 2. System display the table list categories information
3. Admin click button “create”
4. system display create category page
5. admin fill category information and click button “save”
6. system add category information to database
Alternative Flows: N/A

Exceptions: 66.0-E1 – Cannot communicate with server


1. Admin page display error message
Priority: High

Frequency of Use: Medium

Business Rules: N/A

Other Information: N/A

Assumptions: N/A

3.2.3.4.14 Create admin account


Use case specification

UC ID and Name: UC-67 Create admin account

Created by: DuongDV Date Created: 27/08/2020

Primary Actor: Administrator Secondary Actors: N/A

Description: Allow administrator create new admin account

Preconditions: PRE-67.1. Administrator can access the system


PRE-67.2. Administrator logged in

Postconditions: N/A

Normal Flow: 67.0 Search categories


1. On the navigation Bar, admin clicks on the user avatar.
2. Click button “Add admin”
3. Enter new username , password and confirm password
4. Click button ”add admin”
5. add new admin account to database and redirect to
dashboard page
Alternative Flows: N/A

Exceptions: 67.0-E1 – Cannot communicate with server


1. Admin page display error message
Priority: High

Frequency of Use: Medium

Business Rules: N/A

Other Information: N/A

Assumptions: N/A

3.3 Non-Functional requirements


3.3.1 Security
● Token-Based Authentication, relies on a signed token that is sent to the server on
each request.
● Apply SSL encryption to restrict user access and prevent man-in-the-middle attacking.
● The system must use HTTPS to encrypt the information transferred between clients
and servers.
3.3.2 Availability and Scalability
● Using Azure Load Balancer for high availability.
● Using Microsoft Azure Virtual Machines for automatic horizontal scalability.
● Using Azure Monitor to monitor all services and alert when something wrong happened

3.3.3 Usability
● User interface should be clear and easy to use
● Main functions are organized into tabs for easier access.
● Links, buttons, and checkboxes are easily clickable.
● Important commands are displayed as buttons with distinct background colors.
3.3.4 Performance
● Using HTTP/2 for API, which uses a single, multiplexed connection to allow multiple requests to
be sent on the same connection instead of establishing a new connection for each request,
increases speed of request-response.
● Application font-end with the goal of providing a more fluid user experience.
● Using Microsoft Azure, Linux Virtual Machine for storage, hosting and deployment.
3.3.5 Maintainability & Extensibility
● Apply microservices architecture for Web Service.

3.4 Entity Relationship Diagram

Figure 3.2 - Entity relationship diagram

You might also like