Tải bản đầy đủ (.pdf) (49 trang)

Xây dựng ứng dụng chia sẻ file

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.02 MB, 49 trang )

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM

BÁO CÁO MÔN HỌC

XỬ LÝ PHÂN BỐ
Đề tài

XÂY DỰNG ỨNG DỤNG CHIA SẺ FILE

Giảng viên hướng dẫn: Thầy NGUYỄN CÔNG HOAN
Nhóm 5:

PHẠM VĂN TRUNG – 11520438
VÕ VĂN TỊNH

- 11520415

NGUYỄN VĂN TIẾN - 11520408
Lớp: SE339.F11

Tp. Hồ Chí Minh, tháng 1 năm 2015


LỜI CẢM ƠN
---------Lời đầu tiên, nhóm em xin chân thành cảm ơn Thầy Nguyễn Công Hoan! Thầy đã
tận tình chỉ bảo, truyền đạt những kiến thức vô cùng bổ ích, quý báu cũng như những
ví dụ cụ thể, sinh động, hấp dẫn để nhóm em có thể thực hiện tốt đề tài này.

Nhóm em cũng xin cảm ơn Trường Đại Học Công Nghệ Thông Tin! Trường đã


tạo thư viện học tập rất lý tưởng cho chúng em có thể họp nhóm hiệu quả.

Nhóm em cũng xin gửi lời cảm ơn sâu sắc đến gia đình, bạn bè và những người
thân đã động viên, cổ vũ về vật chất cũng như tinh thần giúp em vượt qua khó khăn, trở
ngại để tiếp tục hoàn thành đề tài.

Xin chân thành cảm ơn!

Tp. HCM, tháng 1– 2015

Nhóm thực hiện


MỤC LỤC
1

TÌM HIỂU WEB SHARE FILE OPEN SOURE ................................................... 1

2

CÔNG NGHỆ SỬ DỤNG TRONG HỆ THỐNG ................................................. 2

2.1

Công nghệ RMI trong xử lý phân bố ..................................................................... 2

2.1.1

Các đặt tính của RMI ...................................................................................... 2


2.1.2

Kiến trúc cơ bản của RMI ............................................................................... 3

2.1.3

Cách làm việc của RMI ................................................................................... 3

2.2

Load balancing (cân bằng tải) với mod_jk ............................................................ 4

2.2.1

Sơ lược về mod_jk .......................................................................................... 4

2.2.2

Cài đặt mod_jk ................................................................................................ 4

3

HIGH LEVEL DESIGN WEB SHARE FILE APPLICATION ........................... 8

3.1

Kiến trúc Web Share File Aplication ..................................................................... 8

3.2


Package Diagram ................................................................................................... 9

3.2.1

Spring File 3T.................................................................................................. 9

3.2.2

RMI Server .................................................................................................... 10

3.3

Component Diagram ............................................................................................ 10

3.4

Deployment Diagram ........................................................................................... 11

3.5

Actors and Use Cases Description ....................................................................... 11

3.5.1

Actor .............................................................................................................. 11

3.5.2

Use case diagram ........................................................................................... 12


3.5.3

Class diagram ................................................................................................ 12

3.5.4

Mô tả Use Case ............................................................................................. 13

4

DETAIL DESIGN................................................................................................ 13

4.1

UC1: Login .......................................................................................................... 13

4.1.1

Tác nhân ........................................................................................................ 13

4.1.2

Pre-Condition ................................................................................................ 13

4.1.3

Mô tả chức năng ............................................................................................ 13

4.1.4


UML Activity Diagram (Đăng nhập) ............................................................ 14

4.1.5

UML Sequence Diagram (Đăng nhập) ......................................................... 15

4.1.6

Screen Flow ................................................................................................... 15

4.2

UC2: HomePage .................................................................................................. 16


4.2.1

Tác nhân ........................................................................................................ 16

4.2.2

Pre-condition ................................................................................................. 16

4.2.3

Mô tả chức năng ............................................................................................ 16

4.2.4

UML Activity Diagram ................................................................................. 17


4.2.5

UML Sequence Diagram............................................................................... 17

4.2.6

Screen Flow ................................................................................................... 18

4.3

UC3: Quản lý file ................................................................................................. 18

4.3.1

Tác nhân ........................................................................................................ 18

4.3.2

Pre-condition ................................................................................................. 18

4.3.3

Mô tả chức năng ............................................................................................ 18

4.3.4

UML Activity Diagram ................................................................................. 19

4.3.5


UML Sequence Diagram............................................................................... 24

4.3.6

Screen Flow ................................................................................................... 26

4.4

UC4: Xử lý hệ thống phân tán ............................................................................. 27

4.4.1

Tác nhân ........................................................................................................ 27

4.4.2

Pre-condition ................................................................................................. 27

4.4.3

Mô tả chức năng ............................................................................................ 27

4.4.4

UML Activity Diagram ................................................................................. 28

4.4.5

UML Sequence Diagram............................................................................... 29


4.5

UC5: Đồng bộ hóa dữ liệu, cân bằng tải .............................................................. 29

4.5.1

Tác nhân ........................................................................................................ 29

4.5.2

Pre-condition ................................................................................................. 29

4.5.3

Mô tả chức năng ............................................................................................ 29

4.5.4

UML Activity Diagram ................................................................................. 30

5

CÀI ĐẶT – TRIỂN KHAI ................................................................................... 30

5.1

Cài đặt môi trường phát triển ............................................................................... 30

5.1.1


Install Tomcat ................................................................................................ 30

5.1.2

Cài MYSQL .................................................................................................. 31

5.2

Triển khai hệ thống .............................................................................................. 31

6

CHẠY THỬ VÀ KIỂM TRA HỆ THỐNG ........................................................ 33

6.1

Test Upload File lên server rồi phân tán file........................................................ 33


6.1.1

Log Console RMI ban đầu. ........................................................................... 33

6.1.2

Tiến hành upload trên GUI ........................................................................... 36

6.1.3


Console log RMI sau khi Upload .................................................................. 39

7

ĐÁNH GIÁ – KẾT LUẬN .................................................................................. 42

7.1

Đánh giá ............................................................................................................... 42

7.2

Kết luận ................................................................................................................ 42

7.3

Hướng phát triển .................................................................................................. 42

8

TÀI LIỆU THAM KHẢO ................................................................................... 43


NHẬN XÉT CỦA GIẢNG VIÊN
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………

…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………


Nhóm 5 – SE339.F11 – Thầy Nguyễn Công Hoan

1

TÌM HIỂU WEB SHARE FILE OPEN SOURE

Hiện nay có rất nhiều website chưa sẻ file mã nguồn mở trên thế giới, dưới đây là
một số website mã nguồn mở phổ biến nhất, tốt nhất hiện nay:
-

HTTP Commander
eXtplorer
AjaXplorer
KFM
PAFM
QuiXplorer
BytesFall Explorer

Website chia sẻ file – File Cloud

1


Nhóm 5 – SE339.F11 – Thầy Nguyễn Công Hoan

2

CÔNG NGHỆ SỬ DỤNG TRONG HỆ THỐNG

2.1 Công nghệ RMI trong xử lý phân bố
Lập trình đối tượng phân tán là một trong những vấn đề nóng bỗng của công nghệ
phân tán phần mềm ngày nay. Java là ngôn ngữ đi tiên phong với RMI (Remote
Method Invocation) - một kĩ thuật cài đặt các đối tượng phân tán vô cùng hiệu quả và
linh động.
Thông thường các chương trình của chúng ta được viết dưới dạng thủ tục hoặc hàm và
việc các hàm gọi lẫn nhau, truyền tham số hay kết quả cho nhau chỉ xảy ra ở máy cục

bộ. Kỷ thuật RMI (Remote Method Invoke) – mang ý nghĩa triệu gọi phương thức từ
xa – là cách thức giao tiếp giữa các đối tượng trong Java có mã lệnh cài đặt nằm trên
các máy khác nhau có thể triệu gọi lẫn nhau.

Để giải quyết một số vấn đề trong việc truyền thông giữa Client/Server. RMI không
gọi trực tiếp mà thông qua lớp trung gian. Lớp này tồn tại ở cả hai phía Client và
Server. Lớp ở máy Client gọi là Stub, lớp ở máy Server gọi là Skel (Skeletion).
2.1.1 Các đặt tính của RMI
 RMI là mô hình đối tượng phân tán của Java, nó giúp cho việc truyền thông
giữa các đối tượng phân tán được dễ dàng hơn.
 RMI là API bậc cao được xây dựng dựa trên lập trình Socket.
 RMI không những cho phép chúng ta truyền dữ liệu giữa các đối tượng trên
các hệ thống máy tính khác nhau, mà còn triệu gọi các phương thức trong các
đối tượng ở xa (Remote Object).
 Việc truyền dữ liệu giữa các máy khác nhau được xử lý một cách trong suốt
bởi máy ảo Java (Java virtual machine).
 Tương tự như mô hình Client/Server, RMI vẫn lấy/duy trì khái niệm của Client
và Server, tuy nhiên cách tiếp cận (approach) của RMI linh hoạt hơn, mềm dẻo
hơn so với môt hình Client/Server.

Website chia sẻ file – File Cloud

2


Nhóm 5 – SE339.F11 – Thầy Nguyễn Công Hoan
 Một điều thuận lợi quan trong nhất của RMI là nó cung cấp cớ chế callbacks,
nó cho phép Server triệu gọi các phương thức ở Client.
2.1.2 Kiến trúc cơ bản của RMI
 Remote interface: Nên extend từ java.rmi.remote.Nó khai báo tất cả các

phương thức mà Client có thể triệu gọi. Tất cả các method trong interface này
nên throw RemoteException
 Remote implementation: Được thực thi từ Remote interface và mở rộng từ
UnicastRemoteObject. Triển khai các method được khai báo trong Interface tại
đây. Nó là một Remote Object thực sự. Phát sinh hai lớp trung gian Stub và
Skel.
 Server class bao gồm:
o RMI registry: Bộ đăng kí này sẽ đăng kí một Remote object với Naming
Registry. Giúp các Remote object được chấp nhận khi gọi các method từ
xa.
o Các class thực thi trên server.
 Client class: Truy vấn trên tên Remote object trên RMI registry, thông qua stub
để gọi các phương thức trên server.

2.1.3 Cách làm việc của RMI
 Các Đối tượng ở phía Server đăng kí với bộ đăng kí RMI registry.
 Client kiểm tra các đối tượng ở xa trong RMI Registry.
 Vị trí của một đối tượng ở xa được xác định trong RMI Registry. Một stub
được trả về cho Client.
 Remote object có thể được sử dụng tương tự như Local object để truy xuất đến
toàn bộ tài nguyên. Việc truyền thông giữa Client và Server được xử lý bởi
Stub và Skel.
Website chia sẻ file – File Cloud

3


Nhóm 5 – SE339.F11 – Thầy Nguyễn Công Hoan
2.2 Load balancing (cân bằng tải) với mod_jk
2.2.1 Sơ lược về mod_jk

Trong khi các ứng dụng web càng lúc càng nhiều người sử dụng thì tomcat có lẽ
càng chịu tải. Chúng ta cần phải xem đến cơ chế cân bằng tải cho server. Thông
thường có hai hướng xử lý trong cân bằng tải: sử dụng phần mềm cài đặt (mod_jk,
HAProxy…), viết ứng dụng xử lý phân bố cho phần mềm. Ở trong đề tài này chúng
em sẽ giới thiệu về cơ chế cân bằng tải cho tomcat với mod_jk.
Mod_jk là một phiên bản thay thế cho mod_jserv, được sử dụng để xử lý các
thông tin liên lạc giữa Tomcat và Apache.
Lý do chọn mod_jk: Hiện nay có rất nhiều ứng dụng hỗ trợ để xử lý cơ chế load
balancing cho tomcat.
Mod_jserv: Quá phức tạp, nó đã được chuyển Apache/ Jserv, mod_jserv mang
nhiều bits không cần thiết cho tomcat. Mod_jserv chỉ hỗ trợ Apche. Tomcat hỗ trợ
nhiều máy chủ thông qua một lớp tương thích trong thư viện jk. Các vấn đề về hỗ trợ,
tài liệu và sửa lỗi khó khăn. Mod_jk khắc phục được điều này.
Các cách tiếp cận lớp được cung cấp bởi thư viện jk làm cho nó dễ dàng hỗ trợ cả
hai Apache 1.3.x và Apache 2.xx.
Mode_jk còn hỗ trợ tốt cho SSL. Khi một request được thực hiện thông qua HTTP
và HTTPS thì mod_jserv không đáng tin cậy. Mod_jk có thể hỗ trợ tốt vấn đề này
bằng cách sử dụng một giao thức Ajpv13 mới.
2.2.2 Cài đặt mod_jk
1. Sử dụng instance-1 là server chính dùng balancing cũng như chứa tomcat
- Instance-1 : Apache(mod_jk), Tomcat7
- Instance-2: Tomcat7
- Instance-3: Tomcat7
- Instance-4: Tomcat7
2. Cài đặt mod_jk trên Instance-1
B1: Cài đặt Apache : sudo apt-get install apache2
B2: Cài đặt mod_jk trên Apache: sudo apt-get install libapache2-mod-jk
B3: Tạo file config để định nghĩa các worker:
sudo nano /etc/apache2/workers.properties
Nội dung File: workers.properties

worker.list=balancer,stat
worker.tomcat1.type=ajp13
worker.tomcat1.port=8080
worker.tomcat1.host=localhost
Website chia sẻ file – File Cloud

4


Nhóm 5 – SE339.F11 – Thầy Nguyễn Công Hoan
worker.tomcat2.type=ajp13
worker.tomcat2.port=8080
worker.tomcat2.host=107.167.182.83
worker.tomcat3.type=ajp13
worker.tomcat3.port=8080
worker.tomcat3.host=104.155.209.128
worker.tomcat4.type=ajp13
worker.tomcat4.port=8080
worker.tomcat4.host=104.155.197.173
worker.balancer.type=lb
worker.balancer.balance_workers=tomcat1,tomcat2,tomcat3,tomcat4
worker.stat.type=status

B4: Định nghĩa lại đường dẫn worker mặc định của mod_jk
Trong File: sudo nano /etc/apache2/mods-available/jk.conf
Website chia sẻ file – File Cloud

5



Nhóm 5 – SE339.F11 – Thầy Nguyễn Công Hoan
Tìm và thay đổi lại đường dẫn thành : /etc/apache2/workers.properties để
mod_jk biết các worker.

B5: Định nghĩa mod_jk trong Apache config
sudo nano /etc/apache2/sites-enabled/000-default.conf
Xóa hết và thêm bên dưới
<VirtualHost *:80>
JkMount /status stat
JkMount / balancer
JkMount /* balancer
</VirtualHost>

Website chia sẻ file – File Cloud

6


Nhóm 5 – SE339.F11 – Thầy Nguyễn Công Hoan

B6: Retart Apache Server
sudo /etc/init.d/apache2 restart

Tham khảo: />
Website chia sẻ file – File Cloud

7


Nhóm 5 – SE339.F11 – Thầy Nguyễn Công Hoan


3

HIGH LEVEL DESIGN WEB SHARE FILE APPLICATION

3.1 Kiến trúc Web Share File Aplication

Application Tomcat Server 2

Database Server 2

Server Load Balancing
Client1

Apache Web Server(mod_jk)

Application Tomcat Server 1

Application Tomcat Server 3

Client2

Database Server 1

Client3

Application Tomcat Server 4

Database Server 4


Database Server 3

Hình 1: Kiến trúc tổng quan của hệ thống 1
Hệ thống chia sẻ file được xây dựng nhằm phục vụ cho nhóm người dùng nhỏ để
thử nghiệm tính ổn định và tìm hiểu cách xây dựng một hệ thống xử lý phân bố nên
chỉ giới hạn số người dùng ở mức 2-10 người sử dụng, hệ thống server, database được
đặt trên 5 máy, và cho phép người dùng có thể download và upload dữ liệu tại mỗi
máy tính cá nhân, đồng bộ hóa dữ liệu giữa các database đảm bảo hệ thống hoạt động
tốt với mức giới hạn trên.

Website chia sẻ file – File Cloud

8


Nhóm 5 – SE339.F11 – Thầy Nguyễn Công Hoan
3.2 Package Diagram
3.2.1 Spring File 3T

Website chia sẻ file – File Cloud

9


Nhóm 5 – SE339.F11 – Thầy Nguyễn Công Hoan
3.2.2 RMI Server

3.3 Component Diagram

Index.html


Website chia sẻ file – File Cloud

10


Nhóm 5 – SE339.F11 – Thầy Nguyễn Công Hoan
3.4 Deployment Diagram
App Server 1

Database 1

App Server 2

Database 2

App Server 3

Database 3

Client 1

Client 2

Web Server

AppServer 0

Database
Server 0


Client 3

3.5 Actors and Use Cases Description
3.5.1 Actor
Danh sách các actor
STT

Actor Name

Definition & Interests

1

Admin

Quản trị hệ thống, thêm xóa sửa cấp quyền cho User

2

User

Upload, download, delete, share file

3

Guest User

Download file


4

System

Tự động chạy, phân tải, kiểm tra server cho hệ thống

Mô tả các Actor:
-

Admin: người quản trị hệ thống, quản lý thiết lập các thông tin, cấu hình hệ
thống. Người có toàn quyền trên hệ thống.
Guest user: người dùng này chỉ có quyền download file do user chia sẻ.
User: người dùng sử dụng hệ thống thông qua việc đăng ký, mỗi user có tài
khoản trên hệ thống có một dung lượng lưu trữ nhất định trên hệ thống. Người
dùng có thể thực hiện các thao tác quản lý file của mình trên hệ thống, như
upload file lên, download file, cập nhật, sửa đổi, xóa, chia sẻ file cho mọi
người, lấy link download file…

Website chia sẻ file – File Cloud

11


Nhóm 5 – SE339.F11 – Thầy Nguyễn Công Hoan
-

System: actor này là hệ thống ứng dụng, tự động chạy để thực hiện các công
việc kiểm tra xem trạng thái của file, của các server, cân bằng tải cho hệ
thống…


3.5.2 Use case diagram
Quản lý thông tin chung

Download

Upload

Menu chức năng
<<extend>>

<<extend>>

<<extend>>

Guest user

HomePage

Quản lý file

<<include>>

User

<<extend>>

<<include>>

<<extend>>


Share file

<<extend>>

Cloud Share File System

Delete file

uses

Login
<<include>>

<<include>>

Đồng bộ hóa
dữ liệu

Xử lý hệ thống
phân tán

<<include>>

<<include>>

System

Hình II.3.1 Use Case diagram chính của hệ thống
3.5.3 Class diagram
MainController

-userBO : UserBO
-doHome()
-doLogin()
-doFileManager()
-doDownloadFile()
-doUploadFile()
-doDeleteFile()
-doGetLink()

UserBO
-memberName
-memberName

UserDAO
-dataSource : DataSource
+setDataSource()
+getUserByUsername(String username) : User
+logUserLogin(User user)
+getLogUserLogin(User user) : List<LogUserLogin>

User
-id : int
-username : String
-email : String
-password : String
-salt : String

LogUserLogin
-userid
-time


File
-name
-type
-size
-location
-dateCreated
-dateModified
-checkSumMD5
-checkSumSHA1

Website chia sẻ file – File Cloud

12


Nhóm 5 – SE339.F11 – Thầy Nguyễn Công Hoan
3.5.4 Mô tả Use Case
STT Code

Tên

1

UC1
UC1.1

Login
Đăng nhập


UC1.2

Đăng xuất

2

UC2

HomePage

3

UC3

Quản lý file

UC3.1
UC3.2

Upload file
Download file về
máy
Xóa file

UC3.3

4

UC3.4
UC4


5

UC5

4

Mô tả

Programer
Võ Văn Tịnh

Cho phép actor đăng nhập vào hệ
thống, kiểm tra quyền truy cập hệ
thống
Actor thoát khỏi hệ thống
Trang mặc định của hệ thống khi
đăng nhập
Quản lý file trên hệ thống (upload,
delete, search…)
Tải file lên server
Tải file về máy tính

Xóa file đang được lưu trữ trên
server
Share file
Chia sẻ file
Xử lý hệ thống
File được lưu ở nhiển nơi trên
phân tán

server
Đồng bộ hóa dữ
Đồng bộ file giữa các server, cân
liệu, cân bằng tải
bằng tải khi download file
Bảng 3.1: Danh sách các Use Case của hệ thống

Phạm Văn Trung
Nguyến Văn Tiến
Phạm Văn Trung
Phạm Văn Trung
Phạm Văn Trung
Nguyến Văn Tiến
Nguyến Văn Tiến
Phạm Văn Trung
Võ Văn Tịnh
Võ Văn Tịnh
Phạm Văn Trung

DETAIL DESIGN

4.1 UC1: Login
4.1.1 Tác nhân
Người dùng hệ thống: Admin, user…
4.1.2 Pre-Condition
N/A
4.1.3 Mô tả chức năng
Người dùng đăng nhập vào hệ thống để thực hiện các chức năng tương ứng của hệ
thống tùy thuộc vào quyền của người dùng.
Người dùng truy cập vào đăng nhập của hệ thống, tại đây người dùng có thể nhập

tên đăng nhập và mật khẩu để đăng nhập hệ thống

Website chia sẻ file – File Cloud

13


Nhóm 5 – SE339.F11 – Thầy Nguyễn Công Hoan
4.1.4 UML Activity Diagram (Đăng nhập)
-User
-Admin

Actor
Người dùng truy
cập trang web

Nhập tên đăng nhập
& mật khẩu

Thông báo sai tên
đăng nhập hoặc mật
khẩu

No

Kiểm tra tên đăng nhập
& mật khẩu

Yes


Đăng nhập thành
công

Hiển thị HomePage

Website chia sẻ file – File Cloud

14


Nhóm 5 – SE339.F11 – Thầy Nguyễn Công Hoan
4.1.5 UML Sequence Diagram (Đăng nhập)

Actor

:LoginGUI

BUSUser

DAOUser

Nhập tên đăng nhập
& mật khẩu

CheckLogin(userName, password)
CheckLogin(userName, password)
Kiểm tra
Tên đăng nhập hoặc mật khẩu
không đúng


Tên đăng nhập hoặc mật khẩu
không đúng

Nhập lại tên đăng nhập
& mật khẩu
CheckLogin(userName, password)
CheckLogin(userName, password)

Kiểm tra
Đúng

Đúng

4.1.6 Screen Flow

Field name

Mandatory

Control Type

Data Type

Decriptions

Input
Username

Textbox


Text

Nhập tên đăng nhập

Password

Textbox

Text

Nhập mật khẩu đăng nhập

Output
Website chia sẻ file – File Cloud

15


Nhóm 5 – SE339.F11 – Thầy Nguyễn Công Hoan
Login

Label

Text

Hiển thị nội dung trang

Username

Label


Text

Tên đăng nhập

Password

Label

Text

Mật khẩu

Log in

Button

Nút đăng nhập

Reset

Button

IP: …

Label

Nút làm mới lại tên đăng
nhập & mật khẩu
Hiển thị IP của server hiện

tại mà client truy cập

Text

4.2 UC2: HomePage
4.2.1 Tác nhân
Người dùng hệ thống: Admin, user…
4.2.2 Pre-condition
Đăng nhập vào hệ thống
4.2.3 Mô tả chức năng
Màn hình homepage là màn hình hiển thị chính các thông tin về các file của người
dùng, cũng như các tính năng chính của hệ thống. Đối với người dùng bình thường
chỉ hiển thị một số thông tin về một số chức năng. Đối với Admin sẽ hiển thị toàn bộ
các chức năng của hệ thống.
Màn hình chính chứa menu chức năng cho người dùng sử dụng như upload file,
quản lý file…

Website chia sẻ file – File Cloud

16


Nhóm 5 – SE339.F11 – Thầy Nguyễn Công Hoan
4.2.4 UML Activity Diagram
Tất cả các người
dùng hệ thống

Actor

Đăng nhập vào hệ

thống

Thông báo đăng
nhập lại

No

Yes

Hiển thị HomePage
với các menu chức
năng

Người dùng sử dụng các
chức năng tương ứng với
quyền vừa đăng nhập

4.2.5 UML Sequence Diagram

User

:LoginGUI

:HomePage

Truy cập vào hệ thống
Kiểm tra
đăng nhập

Đăng nhập thành công


Hiển thị menu
chức năng

Website chia sẻ file – File Cloud

17


Nhóm 5 – SE339.F11 – Thầy Nguyễn Công Hoan
4.2.6 Screen Flow

Field name

Mandatory

Control Type

Data Type

Rules

Screen

Input
Search

Textbox

Text


HomePage

Cloud

Label

Text

HomePage

Name user



Text

HomePage







HomePage

Output

4.3 UC3: Quản lý file

4.3.1 Tác nhân
Người dùng hệ thống: Admin, user, guest user (download file)
4.3.2 Pre-condition
Đăng nhập vào hệ thống
4.3.3 Mô tả chức năng
Use case quản lý file cung cấp cho người dùng các tính năng cơ bản về quản lý tập
tin, người dùng có thể upload, download, get link(share file), xóa, tìm kiếm file.
Đồng thời cũng thông tin cho người dùng về các thông tin liên quan đến các tập
tin như: tên, vị trí, loại, kích thước file…

Website chia sẻ file – File Cloud

18


Nhóm 5 – SE339.F11 – Thầy Nguyễn Công Hoan
4.3.4 UML Activity Diagram
4.3.4.1 UC3.1 Upload file

Website chia sẻ file – File Cloud

19


×