Professional Documents
Culture Documents
Report Week345
Report Week345
Report Week345
GRADUATION THESIS
Developing a files and directories system
Hanoi, 04 – 2022
Table of Contents
I. GENERAL INTRODUCTION .................................................................................................................. 3
II. ANALYZING THE SYSTEM ................................................................................................................... 3
2.1. USE CASES OVERVIEW ................................................................................................................................. 3
2.1.1. Operating with file Use cases ........................................................................................................... 4
2.1.2. Operating with directory Use cases ................................................................................................. 4
2.2. USE CASES SPECIFICATION ............................................................................................................................ 4
2.2.1. Guest use cases ................................................................................................................................ 5
2.2.1.1. Login........................................................................................................................................................ 5
2.2.1.2. Register ................................................................................................................................................... 5
2.2.1.3. Forgot Password ..................................................................................................................................... 6
2.2.2. User use cases .................................................................................................................................. 7
2.2.2.1. Log out .................................................................................................................................................... 7
2.2.2.2. Search ..................................................................................................................................................... 7
2.2.2.3. Update information ................................................................................................................................ 8
2.2.2.4. Use case Change Password..................................................................................................................... 9
2.2.2.5. Use case Upload ..................................................................................................................................... 9
2.2.2.6. Use case Download............................................................................................................................... 10
2.2.2.7. Use case Preview .................................................................................................................................. 11
2.2.2.8. Use case Set Permission permissions ................................................................................................... 11
2.2.2.9. Use case Share ...................................................................................................................................... 11
2.2.2.10. Use case Delete File .............................................................................................................................. 12
2.2.2.11. Use case Watch List File........................................................................................................................ 12
2.2.2.12. Use case Create .................................................................................................................................... 13
2.2.2.13. Use case Delete .................................................................................................................................... 14
2.3. FLOWS OF SYSTEM ...................................................................................................................................14
2.3.1. Login ...............................................................................................................................................14
2.3.2. Register...........................................................................................................................................15
2.3.3. Forgot password.............................................................................................................................15
2.3.4. Search .............................................................................................................................................15
2.3.5. Change Information .......................................................................................................................16
2.3.6. Change password ...........................................................................................................................16
2.3.7. Upload ............................................................................................................................................17
2.3.8. Download .......................................................................................................................................17
2.3.9. Preview ...........................................................................................................................................17
2.3.10. Set permission ...........................................................................................................................18
2.3.11. Share..........................................................................................................................................18
2.3.12. Delete File ..................................................................................................................................19
2.3.13. Watch List File ...........................................................................................................................19
2.3.14. Create Directory ........................................................................................................................19
2.3.15. Delete Directory .........................................................................................................................20
III. DESIGNING THE SYSTEM .................................................................................................................. 21
3.1. DATABASE ..............................................................................................................................................21
3.2. CLASS AND PACKAGE DIAGRAM ...................................................................................................................22
3.3. SYSTEM STRUCTURE..................................................................................................................................24
I. General introduction
II. Analyzing the system
2.1. Use cases overview
When not logged in, guests can register for a new account, log in, or request a password reset
when they forget their password, and reset their password when they receive setup instructions
via email. When the guest successfully logs in, the software displays a menu containing the
corresponding functions. When the guest requests to reset the password, the software generates
the token and sends the password reset instructions via email.
After logging in, the user can perform operations with their files and directory given by the
system, such as uploading files, creating directories and updating personal information, and
changing the password.
2.1.1. Operating with file Use cases
• Fields in Login:
Name Description Required Eligibility conditions Example
Username User account Yes Accept letters, numbers, Longnh123
longer than 0 and shorter
than 255 characters.
Password Password Yes Accept letters, numbers, 123456
longer than 0 and shorter
than 255 characters.
2.2.1.2. Register
Name Register
Purpose Allowing a Guest creating an account to become a User
Actor Guest
Pre- No
condition
Post- Guest owns a account and can use that account to login the system
condition
Main flow 1. Actor accesses Register page.
2. The system shows up Register pages.
3. The actor fills in the fields:
3.1. If one or many required fields are missed, move to Flow 3.1.
3.2. Username is duplicated, move to Flow 3.2
3.3. Password is not strong enough, move to Flow 3.3
3.4. Email is not valid, move to Flow 3.4
3.5.Actor chooses “Cancel”, move to Flow 3.5
4. System saves the information and notifies success. Actor is directed
to the Login pages.
Sub-flow No
Branch flow - Flow 3.1: System notifies required fields not filled. Ask the actor to
fill the fields.
- Flow 3.2: System notifies username is duplicated, Ask the actor to
enter a new username.
- Flow 3.3: System notifies Password is not strong enough, notifies a
strong password condition. Ask for a new password.
- Flow 3.4: System notifies email Is invalid, Ask for re-filling the field.
- Flow 3.5: System directs the actor to the Login page.
• Fields in Register:
Name Description Required Eligibility conditions Example
Username Username Yes Accept letters, Longnh123
numbers, longer than 0
and shorter than 255
characters.
Password Password Yes Longer than 0, shorter L@123456
than 255 characters.
Include letters, numbers
or special characters.
Email Email used to Yes In form xxx@xxx.xxx longnh@gmail.com
contact with the
actor
Name Actor Name Yes Include letters and Nguyễn Hoàng
spaces. Longer than 0, Long
shorter than 255
characters.
Birthday Actor birthday No In form DD / MM / 20/8/1999
YYYY,
A date exists in real life.
Phone Phone number Yes The length is 10 0123456789
number used to contact
with the actor
Sub-flow No
Branch flow - 3.1. System notifies email invalid, Ask Actor re-filling the fields.
- 3.2. System directs the actor to the login page.
- 4.1. System notifies email does not exist.
- 5.1. System notifies errors and directs to Forgot Password page.
• Used fields
Name Description Required Eligibility conditions Example
Email Email used to Yes In form xxx@xxx.xxx longnh@gmail.com
contact with
Actor
2.2.2.2. Search
Name Search
Purpose Search directories or files
Actor User
Pre- Actor is logged in the system
condition
Post- Files/ directories are shown up in Search. Actor can open directories or
condition preview the files from search.
Main flow 1. Actor fills in the files or directories name in Search input and chooses
the search icon.
- Actor click outside the search input, move to Flow 1.1
2. System shows up files or directories available in the actor repository.
- System does not find any result , move to Flow 2.1
Sub-flow No
Branch flow - 1.1 System directs actor to the previous page.
- 2.1 System shows up notifies “Not found any result”.
• Used fileds
Name Description Required Eligibility conditions Example
keyword Keywords in files or Yes Longer than 0, shorter than Lib
directories 255 characters.
• Used fileds
Name Description Required Eligibility conditions Example
Old Current Password Yes Accept letters, and 123456
password numbers, longer than 0 and
shorter than 255 characters.
Password must be the same
current Password.
New New Password Yes Accept letters, numbers, 123456
password longer than 0 and shorter
than 255 characters.
Confirmed Confirmed password Yes Accept letters, and 123456
Password numbers, longer than 0 and
shorter than 255 characters.
Match the new password.
Branch flow - 2.1 System shows up pop-up “File or directories do not exist”.
- 2.2 System shows up pop-up “File or directories do not belong to
you”.
- 3.1. System directs the actor to the previous page.
- 3.2. System notifies email does not exist and does bot set permissions
to that email.
• Used fileds
Name Description Required Eligibility conditions Example
Email Email used to No In form xxx@xxx.xxx longnh@gmail.com
contact with
Actor
Sub-flow No
Branch flow - 1.1 System shows up pop-up “Directory hiện tại not exist”.
- 1.2 System shows up pop-up “Directory does not belonged to you”.
• Used fileds
Name Description Example
Name File name New Dir 1
Type File extension doc
Size File size 17 KB
Time The day that file is 8:00 13/4/2020
Added upload
2.3.1. Login
2.3.2. Register
2.3.4. Search
2.3.5. Change Information
2.3.8. Download
2.3.9. Preview
2.3.10. Set permission
2.3.11. Share
2.3.12. Delete File