Download Đồ án tốt nghiệp Hệ thống thông tin Đại Học bách khoa Hà nội and more Papers Software Development in PDF only on Docsity!
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
ĐỒ ÁN TỐT NGHIỆP
Xây dựng hệ thống hỗ trợ tìm kiếm
và gợi ý học bổng du học
NGUYỄN THỊ THÙY DƯƠNG
duong.ntt160849@sis.hust.edu.vn
Ngành Công nghệ thông tin
Chuyên ngành Hệ thống thông tin
Giảng viên hướng dẫn: TS. Nguyễn Nhật Quang Bộ môn: Hệ Thống Thông Tin Viện: Công nghệ thông tin và Truyền thông HÀ NỘI, 01/ Chữ ký của GVHD
ĐỀ TÀI TỐT NGHIỆP
- Thông tin sinh viên Họ và tên sinh viên: Nguyễn Thị Thùy Dương Điện thoại liên lạc: 0979836561 Email: duong.ntt160849@sis.hust.edu.vn Lớp: CNTT2.03 K61 Hệ đào tạo: Đại học đại trà Đồ án tốt nghiệp được thực hiện tại: Bộ môn Hệ thống thông tin, Viện Công nghệ thông tin và truyền thông, Trường Đại học Bách Khoa Hà Nội. Thời gian làm đồ án tốt nghiệp: 14/09/2020-6/1/
- Mục tiêu chính của đồ án Xây dựng hệ thống hỗ trợ người dùng tìm kiếm và nhận gợi ý học bổng du học.
- Các nhiệm vụ cụ thể của đồ án Tìm hiểu về bài toán xây dựng hệ thống cung cấp thông tin học bổng du học Tìm hiểu về các hệ thống gợi ý và các phương pháp gợi ý cơ bản. Phân tích yêu cầu phần mềm. Thu thập dữ liệu về học bổng du học từ các nguồn thích hợp. Thiết kế phương pháp cho 3 chức năng gợi ý của hệ thống. Thiết kế hệ thống. Lập trình cài đặt hệ thống website hỗ trợ người dùng tìm kiếm và nhận gợi ý học bổng.
- Lời cam đoan của sinh viên Tôi – Nguyễn Thị Thùy Dương cam kết đồ án tốt nghiệp là công trình nghiên cứu của bản thân tôi dưới sự hướng dẫn của TS.Nguyễn Nhật Quang. Các kết quả nêu trong đồ án là trung thực, không phải là sao chép toàn văn của bất kỳ công trình nghiên cứu nào khác.
- Xác nhận của giáo viên hướng dẫn về mức độ hoàn thành của ĐATN và cho phép bảo vệ …………………………………………………………………………………….. …………………………………………………………………………………….. .……………………………………………………………………………………. .……………………………………………………………………………………. Giáo viên hướng dẫn Ký và ghi rõ họ tên
Tóm tắt nội dung đồ án Hiện nay, du học nước ngoài là khuynh hướng được không ít người lựa chọn, dù là học sinh, sinh viên hay cả những người đã đi làm vì nhu cầu học tập, tiếp thu kiến thức, phát triển bản thân hay khám phá một nền văn hóa khác để có những trải nghiệm mới. Du học là niềm mơ ước của nhiều người vì chi phí của việc du học là không hề nhỏ, chính vì vậy việc tìm kiếm học bổng để giảm bớt đi gánh nặng chi phí khi sinh hoạt và học tập tại nước ngoài là việc mà ai cũng nghĩ tới. Nhưng làm thế nào để chọn được học bổng phù hợp với sở thích, năng khiếu của bản thân trong hàng chục, hàng trăm bài đăng học bổng tại những trang web khác nhau mỗi ngày. Vì vậy em đã lựa chọn đề tài “Xây dựng hệ thống hỗ trợ tìm kiếm và gợi ý học bổng du học” để đáp ứng nhu cầu này. Các công việc chính để xây dựng đồ án tốt nghiệp này bao gồm: Thu thập và trích rút nguồn dữ liệu học bổng từ các trang web, xây dựng trang web hỗ trợ tìm kiếm và cung cấp các thông tin học bổng, nghiên cứu các thuật toán gợi ý và tìm ra giải pháp để áp dụng vào hệ thống gợi ý học bổng cho người dùng. Sinh viên thực hiện Ký và ghi rõ họ tên
MỤC LỤC
DANH MỤC HÌNH VẼ
- CHƯƠNG 1. GIỚI THIỆU ĐỀ TÀI...................................................................
- 1.1 Lý do chọn đề tài
- 1.2 Mục đích.....................................................................................................
- 1.3 Bố cục đồ án
- CHƯƠNG 2. PHÂN TÍCH YÊU CẦU
- 2.1 Các tác nhân
- 2.2 Quy trình nghiệp vụ của hệ thống
- Quy trình “Đăng ký” của Khách
- Quy trình “Đăng nhập” của Khách
- Quy trình Tìm kiếm học bổng
- Quy trình “Quản lý Profile”
- Quy trình “Xem chi tiết bài đăng học bổng”
- Quy trình So sánh học bổng
- Quy trình sử dụng của Quản trị viên
- 2.3 Sơ đồ usecase
- Sơ đồ usecase tổng quan
- Phân rã usecase “Xem chi tiết học bổng”
- Phân rã usecase “Quản lý profile”
- Phân rã usecase “Quản lý nguồn thông tin học bổng”
- 2.4 Đặc tả usecase
- UC01 “Đăng ký”
- UC02 “Đăng nhập”
- UC03 “Tìm kiếm Học Bổng”
- UC04 “So sánh Học Bổng”.......................................................
- UC05 “Xem danh sách Học Bổng gợi ý”
- UC06 “Xem chi tiết Bài đăng Học Bổng”
- UC07 “Xem HB gợi ý dựa trên phản hồi”
- UC08 “Quản lý danh sách yêu thích”
- UC09 “Quản lý thông tin cá nhân”
- UC010 “Quản lý nguồn trích rút HB”
- UC11 “Báo cáo”........................................................................
- UC12 “Quản lý tài khoản Quản Trị Viên”................................
- UC13 “Phân loại ngành học”
- 2.5 Các yêu cầu phi chức năng.......................................................................
- Yêu cầu bảo mật
- Yêu cầu hiệu năng
- Yêu cầu giao diện
- CHƯƠNG 3. THIẾT KẾ HỆ THỐNG
- 3.1 Mô hình hóa cấu trúc................................................................................
- Biểu đồ lớp tham gia ca sử dụng “Đăng ký”
- Biểu đồ lớp tham gia ca sử dụng “Đăng nhập”.........................
- Biểu đồ lớp tham gia ca sử dụng “Tìm kiếm học bổng”...........
- Biểu đồ lớp tham gia ca sử dụng “So sánh học bổng”
- Biểu đồ lớp tham gia ca sử dụng “Xem danh sách HB gợi ý”
- Biểu đồ lớp tham gia ca sử dụng “Xem chi tiết bài đăng HB”
- Biểu đồ lớp tham gia ca sử dụng “Quản lý thông tin cá nhân”
- Biểu đồ lớp tham gia ca sử dụng “Quản lý DS yêu thích”
- Biểu đồ lớp tham gia ca sử dụng “Quản lý nguồn trích rút”
- Biểu đồ lớp tham gia ca sử dụng “Báo cáo”
- Biểu đồ lớp tham gia ca sử dụng “Quản lý tài khoản QTV”
- Biểu đồ lớp tham gia ca sử dụng “Phân loại ngành học”
- 3.2 Mô hình hóa sự tương tác.........................................................................
- Biểu đồ trình tự cho ca sử dụng “Đăng ký”
- Biểu đồ trình tự cho ca sử dụng “Đăng nhập”
- Biểu đồ trình tự cho ca sử dụng “Tìm kiếm học bổng”
- Biểu đồ trình tự cho ca sử dụng “So sánh học bổng”
- Biểu đồ trình tự cho ca sử dụng “Xem danh sách gợi ý”..........
- Biểu đồ trình tự cho ca sử dụng “Xem chi tiết HB”
- Biểu đồ trình tự cho ca sử dụng “Quản lý thông tin cá nhân”
- Biểu đồ trình tự cho ca sử dụng “Quản lý DS yêu thích”
- Biểu đồ trình tự cho ca sử dụng “Quản lý nguồn trích rút HB”
- Biểu đồ trình tự cho ca sử dụng “Báo cáo”...............................
- Biểu đồ trình tự cho ca sử dụng “Quản lý tài khoản QTV”
- Biểu đồ trình tự cho ca sử dụng “Phân loại ngành học”
- Biểu đồ trình tự cho nghiệp vụ “Trích rút dữ liệu tự động”
- 3.3 Kiến trúc tổng thể của hệ thống
- Sơ đồ kiến trúc
- Đặc tả thiết kế kiến trúc
- 3.4 Thiết kế giao diện
- Giao diện dành cho Khách
- Giao diện dành cho Người dùng
- Giao diện dành cho Quản trị viên
- 3.5 Thiết kế chi tiết lớp
- Sơ đồ lớp tổng quan
- Đặc tả chi tiết các lớp
- 3.6 Thiết kế cơ sở dữ liệu
- Bảng dữ liệu “Scholarship”.......................................................
- Bảng dữ liệu “Country”
- Bảng dữ liệu “School”
- Bảng dữ liệu “Major”
- Bảng dữ liệu “MajorScholarship”
- Bảng dữ liệu “Requirement”
- Bảng dữ liệu “Level”
- Bảng dữ liệu “Money”
- Bảng dữ liệu “Web”
- Bảng dữ liệu “CountryFavorite”
- Bảng dữ liệu “SchoolFavorite”
- Bảng dữ liệu “MajorFavorite”
- Bảng dữ liệu “ScholarshipInteractive”
- Bảng dữ liệu “Comment”
- Bảng dữ liệu “Account”
- Bảng dữ liệu “Admin”
- Bảng dữ liệu “User”
- Bảng dữ liệu “Token”
- 3.7 Thiết kế Trích rút dữ liệu
- Các nguồn thu thập
- Các giá trị thu thập chính
- Cài đặt trích rút và lưu trữ
- CHƯƠNG 4. THIẾT KẾ PHƯƠNG PHÁP GỢI Ý
- 4.1 Giới thiệu hệ thống gợi ý
- Khái niệm về hệ thống gợi ý
- Các phương pháp gợi ý phổ biến
- 4.2 Thiết kế các chức năng gợi ý học bổng du học
- Gợi ý dựa trên hồ sơ người dùng
- Gợi ý dựa trên học bổng đang xem
- Gợi ý dựa trên phản hồi
- CHƯƠNG 5. CÀI ĐẶT HỆ THỐNG
- 5.1 Các công nghệ sử dụng
- Công cụ thu thập và trích xuất dữ liệu Scrapy.
- Spring Boot
- Vuejs và cách tiếp cận với Client-side rendering
- FastApi
- Các công nghệ khác
- 5.2 Kết quả cài đặt hệ thống
- 5.3 Kết quả kiểm thử
- CHƯƠNG 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN.................................
- 6.1 Kết luận
- 6.2 Hướng phát triển của đồ án
- TÀI LIỆU THAM KHẢO
- Hình 2.1 Sơ đồ hoạt động quy trình Đăng ký
- Hình 2.2 Sơ đồ hoạt động quy trình Đăng nhập
- Hình 2.3 Sơ đồ hoạt động quy trình Tìm kiếm
- Hình 2.4 Sơ đồ hoạt động quy trình Quản lý profile
- Hình 2.5 Sơ đồ hoạt động quy trình Xem chi tiết bài đăng học bổng....................
- Hình 2.6 Sơ đồ hoạt động quy trình So sánh Học bổng
- Hình 2.7 Sơ đồ hoạt động của Quản trị viên
- Hình 2.8 Sơ đồ usecase tổng quan
- Hình 2.9 Sơ đồ phân rã usecase Xem chi tiết học bổng
- Hình 2.10 Sơ đồ phân rã usecase Quản lý profile
- Hình 2.11 Sơ đồ phân rã usecase Quản lý nguồn thông tin học bổng
- Hình 3.1 Biểu đồ lớp tham gia ca sử dụng “Đăng ký”
- Hình 3.2 Biểu đồ lớp tham gia ca sử dụng “Đăng nhập”
- Hình 3.3 Biểu đồ lớp tham gia ca sử dụng “Tìm kiếm học bổng”
- Hình 3.4 Biểu đồ lớp tham gia ca sử dụng “So sánh học bổng”
- Hình 3.5 Biểu đồ lớp tham gia ca sử dụng “Xem danh sách HB gợi ý”..............
- Hình 3.6 Biểu đồ lớp tham gia ca sử dụng “Xem chi tiết bài đăng HB”
- Hình 3.7 Biểu đồ lớp tham gia ca sử dụng “Quản lý thông tin cá nhân”
- Hình 3.8 Biểu đồ lớp tham gia ca sử dụng “Quản lý danh sách yêu thích”.........
- Hình 3.9 Biểu đồ lớp tham gia ca sử dụng “Quản lý nguồn trích rút HB”
- Hình 3.10 Biểu đồ lớp tham gia ca sử dụng “Báo cáo”
- Hình 3.11 Biểu đồ lớp tham gia ca sử dụng “Quản lý tài khoản QTV”
- Hình 3.12 Biểu đồ lớp tham gia ca sử dụng “Phân loại ngành học”....................
- Hình 3.13 Biểu đồ trình tự cho ca sử dụng “Đăng ký”
- Hình 3.14 Biểu đồ trình tự cho ca sử dụng “Đăng nhập”
- Hình 3.15 Biểu đồ trình tự cho ca sử dụng “Tìm kiếm học bổng”
- Hình 3.16 Biểu đồ trình tự cho ca sử dụng “So sánh học bổng”
- Hình 3.17 Biểu đồ trình tự cho ca sử dụng “Xem DS gợi ý”
- Hình 3.18 Biểu đồ trình tự cho ca sử dụng “Xem chi tiết HB”
- Hình 3.19 Biểu đồ trình tự cho ca sử dụng “Quản lý thông tin cá nhân”
- Hình 3.20 Biểu đồ trình tự cho ca sử dụng “Quản lý DS yêu thích”
- Hình 3.21 Biểu đồ trình tự cho ca sử dụng “Quản lý nguồn trích rút HB”
- Hình 3.22 Biểu đồ trình tự cho ca sử dụng “Báo cáo”
- Hình 3.23 Biểu đồ trình tự cho ca sử dụng “Quản lý tài khoản QTV”
- Hình 3.24 Biểu đồ trình tự cho ca sử dụng “Phân loại ngành học”
- Hình 3.25 Biểu đồ trình tự cho nghiệp vụ “Trích rút dữ liệu tự động”
- Hình 3.26 Sơ đồ kiến trúc của hệ thống
- Hình 3.27 Thiết kế giao diện Đăng ký-1
- Hình 3.28 Thiết kế giao diện đăng ký-2...............................................................
- Hình 3.29 Thiết kế giao diện đăng ký-3...............................................................
- Hình 3.30 Thiết kế giao diện đăng nhập
- Hình 3.31 Thiết kế giao diện tìm kiếm của Khách
- Hình 3.32 Thiết kế giao diện Trang chủ
- Hình 3.33 Thiết kế giao diện Tìm kiếm của người dùng
- Hình 3.34 Thiết kế giao diện So sánh Học bổng
- Hình 3.35 Thiết kế giao diện Xem chi tiết HB
- Hình 3.36 Thiết kế giao diện Gợi ý dựa trên phản hồi
- Hình 3.37 Thiết kế giao diện Trang cá nhân
- Hình 3.38 Thiết kế giao diện Danh sách HB yêu thích........................................
- Hình 3.39 Thiết kế giao diện Sở thích khác
- Hình 3.40 Thiết kế giao diện Đăng nhập của QTV
- Hình 3.41 Thiết kế giao diện Quản lý nguồn trích rút HB...................................
- Hình 3.42 Thiết kế giao diện Quản lý tài khoản QTV
- Hình 3.43 Thiết kế giao diện Báo cáo
- Hình 3.44 Thiết kế giao diện Phân loại ngành học
- Hình 3.45 Sơ đồ lớp gói Khách............................................................................
- Hình 3.46 Sơ đồ lớp gói Người dùng
- Hình 3.47 Sơ đồ lớp gói Quản trị viên
- Hình 3.48 Sơ đồ lớp gói Xử lý tương tác
- Hình 3.49 Sơ đồ lớp gói Truy cập và thay đổi DL...............................................
- Hình 3.50 Sơ đồ lớp gói Gợi ý
- Hình 3.51 Sơ đồ lớp gói Trích rút
- Hình 3.52 Sơ đồ lớp Tầng dữ liệu
- Hình 3.53 Sơ đồ thiết kế cơ sở dữ liệu
- Hình 3.54 Biểu đồ thống kê số học bổng/quốc gia
- Hình 3.55 Biểu đồ thể hiện phân bố học bổng theo thời gian..............................
- Hình 3.56 Thiết kế csdl lưu trữ dữ liệu trích rút
- Hình 4.1 Mô hình mô tả hệ thống gợi ý [3]
- Hình 4.2 Mô hình gợi ý dựa trên lọc cộng tác [3]................................................
- Hình 4.3 Mô hình gợi ý dựa trên nội dung [3]
- Hình 4.4 Mô hình gợi ý dựa trên cơ sở tri thức [3]
- Hình 4.5 Mô hình gợi ý dựa trên hồ sơ người dùng.............................................
- Hình 4.6 Mô hình gợi ý dựa trên học bổng đang xem
- Hình 4.7 Hội thoại dựa trên phản hồi
- Hình 4.8 Mô hình gợi ý dựa trên phản hồi
- Hình 5.1 Giao diện /docs của FastApi
- Hình 5.2 Màn hình tìm kiếm học bổng
- Hình 5.3 Màn hình trang chủ - gợi ý dựa trên sở thích người dùng
- Hình 5.4 Màn hình chi tiết học bổng – gợi ý học bổng tương tự
- Hình 5.5 Màn hình gợi ý học bổng dựa trên phản hồi người dùng
- Hình 5.6 Màn hình so sánh học bổng...................................................................
- Hình 5.7 Màn hình quản lý thông tin cá nhân
- Hình 5.8 Màn hình quản lý danh sách yêu thích
- Hình 5.9 Màn hình đăng nhập
- Hình 5.10 Màn hình đăng ký – 1..........................................................................
- Hình 5.11 Màn hình đăng ký – 2..........................................................................
- Hình 5.12 Màn hình đăng ký – 3..........................................................................
- Hình 5.13 Màn hình quản lý nguồn trích rút học bổng
- Hình 5.14 Màn hình Phân loại ngành học
- Hình 5.15 Màn hình Báo cáo
- Hình 5.16 Màn hình quản lý tài khoản QTV
- Bảng 2.1 Bảng đặc tả usecase “Đăng ký” DANH MỤC BẢNG
- Bảng 2.2 Bảng dữ liệu đầu vào usecase “Đăng ký”.............................................
- Bảng 2.3 Bảng đặc tả usecase “Đăng nhập”
- Bảng 2.4 Bảng dữ liệu đầu vào usecase “Đăng nhập”
- Bảng 2.5 Bảng đặc tả usecase “Tìm kiếm”
- Bảng 2.6 Bảng dữ liệu đầu vào usecase “Tìm kiếm”...........................................
- Bảng 2.7 Bảng đặc tả usecase “So sánh”
- Bảng 2.8 Bảng dữ liệu đầu vào usecase “So sánh”
- Bảng 2.9 Bảng đặc tả usecase “Xem DS gợi ý”
- Bảng 2.10 Bảng đặc tả usecase “Xem chi tiết bài đăng HB”
- Bảng 2.11 Bảng đặc tả usecase “Xem HB gợi ý dựa trên phản hồi”
- Bảng 2.12 Bảng đặc tả usecase “Quản lý danh sách yêu thích”
- Bảng 2.13 Bảng đặc tả usecase “Quản lý thông tin cá nhân”
- Bảng 2.14 Bảng dữ liệu đầu vào usecase “Quản lý thông tin”
- Bảng 2.15 Bảng đặc tả usecase “Quản lý nguồn trích rút HB”
- Bảng 2.16 Bảng đặc tả usecase “Báo cáo”...........................................................
- Bảng 2.17 Bảng đặc tả usecase “Quản lý tài khoản quản trị viên”
- Bảng 2.18 Bảng đặc tả usecase “Phân loại ngành học”
- Bảng 3.1 Danh sách nguồn trích rút từ trang web Việt Nam
- Bảng 3.2 Danh sách nguồn trích rút từ trang web nước ngoài.............................
- Bảng 3.3 Bảng số lượng học bổng/bậc học
- Bảng 5.1 Bảng kết quả kiểm thử
1
CHƯƠNG 1. GIỚI THIỆU ĐỀ TÀI
1.1 Lý do chọn đề tài Hiện nay, du học nước ngoài là khuynh hướng được không ít người lựa chọn và nó đã trở thành xu hướng trở nên khá thịnh hành ở Việt Nam, dù là học sinh, sinh viên hay cả những người đã đi làm vì nhu cầu học tập, tiếp thu kiến thức, phát triển bản thân hay khám phá một nền văn hóa khác để có những trải nghiệm mới. Du học là niềm mơ ước của nhiều người vì chi phí của việc du học là không hề nhỏ, chính vì vậy việc tìm kiếm học bổng để giảm bớt đi gánh nặng chi phí khi sinh hoạt và học tập tại nước ngoài là việc mà ai cũng nghĩ tới. Nhưng làm thế nào để chọn được học bổng phù hợp với sở thích, năng khiếu của bản thân trong hàng chục, hàng trăm bài đăng học bổng tại những trang web khác nhau mỗi ngày. Vì vậy em đã lựa chọn đề tài “Xây dựng hệ thống hỗ trợ tìm kiếm và gợi ý học bổng” để đáp ứng nhu cầu này. 1.2 Mục đích Dựa trên nguồn thông tin học bổng được đăng trên các website như www.scholarshipsads.com, www.scholarship-positions.com, cappex.com … hệ thống thu thập và trích rút các thông tin học bổng để hỗ trợ tìm kiếm và gợi ý các học bổng phù hợp với nhu cầu và sở thích của người dùng. 1.3 Bố cục đồ án Đồ án bao gồm:
- Chương 1: Giới thiệu đề tài
- Chương 2: Phân tích yêu cầu hệ thống
- Chương 3: Thiết kế hệ thống
- Chương 4: Thiết kế phương pháp gợi ý
- Chương 5: Cài đặt hệ thống
- Chương 6: Kết luận
3 Quy trình “Quản lý Profile” Hình 2.4 Sơ đồ hoạt động quy trình Quản lý profile
4 Quy trình “Xem chi tiết bài đăng học bổng” Hình 2.5 Sơ đồ hoạt động quy trình Xem chi tiết bài đăng học bổng
6 Quy trình sử dụng của Quản trị viên Hình 2.7 Sơ đồ hoạt động của Quản trị viên
7 2.3 Sơ đồ usecase Sơ đồ usecase tổng quan Hình 2.8 Sơ đồ usecase tổng quan