BỘ THÔNG TIN VÀ TRUYỀN THÔNG
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA CÔNG NGHỆ THÔNG TIN 1
ĐỒ ÁN
TỐT NGHIỆP ĐẠI HỌC
ĐỀ TÀI:
XÂY DỰNG HỆ THỐNG CHIA SẺ TÀI LIỆU THEO KIẾN TRÚC
HƯỚNG DỊCH VỤ
Giảng viên hướng dẫn: TS. Đặng Ngọc Hùng
Sinh viên thực hiện: Phan Quốc Anh
Lớp: D19CNPM1
Mã sinh viên: B19DCCN040
Hệ đào tạo: Chính quy
Hà Nội - 2023
ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC
LỜI CẢM ƠN
Đầu tiên, em xin được gửi lời cảm ơn đến Ban Giám đốc Học Viện Công Nghệ
Bưu chính Viễn thông đã tạo môi trường tốt cho em có thể học tập, tiếp thu được
những kiến thức bổ ích trong những năm qua.
Em xin bày tỏ lòng biết ơn của em tới TS. Đặng Ngọc Hùng vì sự hướng dẫn
tận tình, chu đáo, tạo điều kiện thuận lợi cho em trong quá trình thực hiện và hoàn
thành đồ án tốt nghiệp.
Em xin cảm ơn tất cả các thầy các cô, đặc biết là các thầy cô trong khoa Công
nghệ thông tin 1 đã tận tình, chỉ dạy những kiến thức để em có thể hoàn thành được đồ
án tốt nghiệp cũng như là hành trang để em bước lên con đường sự nghiệp sau này.
Cuối cùng, em xin chúc các thầy cô, gia đình và bạn bè sức khỏe dồi dào, hạnh
phúc, thành công trong sự nghiệp.
Em xin chân thành cảm ơn!
Hà Nội, Ngày 31 tháng 12 năm 2023
Sinh viên
Phan Quốc Anh
Phan Quốc Anh - B19DCCN040
ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC
NHẬN XÉT, ĐÁNH GIÁ, CHO ĐIỂM
(Của giảng viên phản biện)
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
Điểm……………………………………(Bằng chữ…………………..)
Hà Nội, Ngày……tháng…….năm…...
CÁN BỘ - GIẢNG VIÊN PHẢN BIỆN
(Ký, họ tên)
MỤC LỤC
Phan Quốc Anh - B19DCCN040
ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC
MỞ ĐẦU...................................................................................................................................................................
CHƯƠNG 1: GIỚI THIỆU VỀ ĐỀ TÀI, KIẾN TRÚC VÀ CÔNG NGHỆ SỬ
DỤNG........................................................................................................................................................................
1.1. Đặt vấn đề.....................................................................................................................................................
1.2 Tìm hiểu các giải pháp..................................................................................................................................
1.2.1. Tổng quan về yêu cầu..........................................................................................................................
1.2.1.1. Giới thiệu về bài toán chia sẻ tài liệu.........................................................................................
1.2.1.2. Giới thiệu sơ qua về đề tài..........................................................................................................
1.2.2. Giải pháp..............................................................................................................................................
1.2.2.1. Kiến trúc Monolithic...................................................................................................................
1.2.2.2. Kiến trúc Microservices..............................................................................................................
1.2.2.3. So sánh giữa Monolithic và Microservices................................................................................
1.3. Giải pháp......................................................................................................................................................
1.3.1. Kiến trúc...............................................................................................................................................
1.3.1.1. Khái niệm kiến trúc Microservices............................................................................................
1.3.1.2. Một số đặc điểm chính của kiến trúc Microservices.................................................................
1.3.1.3. Lợi ích của kiến trúc Microservices...........................................................................................
1.3.1.4. Ưu điểm của Microservices........................................................................................................
1.3.1.5. Nhược điểm của Microservices..................................................................................................
1.3.2. Công nghệ.............................................................................................................................................
1.3.2.1. Giới thiệu về Spring Boot...........................................................................................................
1.3.2.2. Giới thiệu về Spring Data JPA.................................................................................................
1.3.2.3 Giới thiệu về Git.........................................................................................................................
1.3.2.4 Giới thiệu về MySQL.................................................................................................................
1.4 Kết luận chương 1.......................................................................................................................................
CHƯƠNG 2: PHÂN TÍCH THIẾT KẾ HỆ THỐNG.........................................................................................
2.1. Phân tích yêu cầu hệ thống........................................................................................................................
2.1.1. Xác định yêu cầu chức năng.............................................................................................................
2.1.2. Xác định yêu cầu phi chức năng.......................................................................................................
2.1.3. Xác định các tác nhân của hệ thống.................................................................................................
2.1.4. Xác định và mô tả các ca sử dụng....................................................................................................
2.2. Biểu đồ Use case.........................................................................................................................................
2.2.1 Biểu đồ Use case tổng quan................................................................................................................
2.2.2 Biểu đồ Use case phân rã...................................................................................................................
2.2.2.1. Phân rã Use case Quản lý người dùng.....................................................................................
2.2.2.2. Phân rã Use case quản lý danh mục........................................................................................
Phan Quốc Anh - B19DCCN040
ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC
2.2.2.3. Phân rã Use case quản lý tài liệu..............................................................................................
2.2.2.4. Phân rã Use case Upload tài liệu lên kho.................................................................................
2.2.2.5. Phân rã Use case Quản lý bình luận........................................................................................
2.2.2.6. Phân rã Use case Quản lý thông tin người dùng.....................................................................
2.2.2.7. Phân rã Use case bình luận.......................................................................................................
2.3. Kịch bản......................................................................................................................................................
2.3.1 Kịch bản cho chức năng Đăng nhập.................................................................................................
2.3.2 Kịch bản cho chức năng Đăng ký tài khoản.....................................................................................
2.3.3 Kịch bản cho chức năng Đăng xuất...................................................................................................
2.3.4 Kịch bản cho chức năng quản lý người dùng...................................................................................
2.3.4.1. Kịch bản “ Thêm mới người dùng”.........................................................................................
2.3.4.2. Kịch bản “ Sửa thông tin người dùng”....................................................................................
2.3.4.3. Kịch bản “ Xóa người dùng”....................................................................................................
2.3.5 Kịch bản cho chức năng quản lý danh mục......................................................................................
2.3.5.1. Kịch bản “ Thêm mới danh mục”............................................................................................
2.3.5.2. Kịch bản “ Sửa thông tin danh mục”......................................................................................
2.3.5.3. Kịch bản “ Xóa danh mục”......................................................................................................
2.3.6 Kịch bản cho chức năng quản lý tài liệu...........................................................................................
2.3.6.1. Kịch bản “ Thêm mới tài liệu”.................................................................................................
2.3.6.2. Kịch bản “ Sửa thông tin tài liệu”............................................................................................
2.3.6.3. Kịch bản “ Xóa tài liệu”............................................................................................................
2.3.7 Kịch bản cho chức năng quản lý bình luận......................................................................................
2.3.7.1. Kịch bản “ Thêm mới bình luận”............................................................................................
2.3.7.2. Kịch bản “ Sửa thông tin bình luận”.......................................................................................
2.3.7.3. Kịch bản “ Xóa bình luận”.......................................................................................................
2.3.8. Kịch bản cho chức năng Upload tài liệu lên kho.............................................................................
2.3.9. Kịch bản cho chức năng cập nhật thông tin cá nhân......................................................................
2.3.10. Kịch bản cho chức năng tìm kiếm tài liệu theo tên.......................................................................
2.3.11. Kịch bản cho chức năng xem chi tiết tài liệu.................................................................................
2.3.12. Kịch bản cho chức năng Viết bình luận.........................................................................................
2.3.13. Kịch bản cho chức năng Thay đổi mật khẩu.................................................................................
2.4 Biểu đồ lớp...................................................................................................................................................
2.4.1. Xác định các lớp.................................................................................................................................
2.4.2. Biểu đồ lớp phân tích...................................................................................................................................
2.4.3. Biểu đồ lớp thiết kế............................................................................................................................
2.5. Biểu đồ giao tiếp.........................................................................................................................................
2.5.1. Biểu đồ giao tiếp cho chức năng đăng nhập....................................................................................
2.5.2. Biểu đồ giao tiếp cho chức năng đăng ký.........................................................................................
Phan Quốc Anh - B19DCCN040