TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH
KHOA CÔNG NGHỆ THÔNG TIN
BỘ MÔN CÔNG NGHỆ PHẦN MỀM
BÁO CÁO KHÓA LUẬN TỐT NGHIỆP
XÂY DỰNG WEBSITE CỘNG ĐỒNG HỖ TRỢ HỌC TẬP
HỌC SIÊU DỄ - EASY LEARN
GIÁO VIÊN HƯỚNG DẪN: ThS. Mai Anh Thơ
GIÁO VIÊN PHẢN BIỆN: ThS. Nguyễn Hữu Trung
NHIỆM VỤ THỰC HIỆN KHỐ ḶN TỐT NGHIỆP
Chun ngành: Cơng nghệ phần mềm
Tên đề tài: Xây dựng website cộng đồng hỗ trợ học tập Học Siêu Dễ - Easy Learn
Nội dung thực hiện:
Lý thuyết:
- Tìm hiểu MERN stack.
- Tìm hiểu về lập trình Website với MERN.
- Tìm hiểu bộ nhớ đám mây với Cloudinary.
Thực hành:
-Xây dựng website cộng đồng hỗ trợ học tập, với các tính năng chính như sau:
+ Quản lý các bài viết, khóa học,…
+ Thao tác, tìm kiếm, xem chi tiết các bài viết, khóa học,…
+ Hỏi bài trực tiếp trợ giảng.
+ Thực hiện nhiệm vụ kiếm thưởng.
+ Quản lý hệ thống và người dùng.
+ Đăng ký, đăng nhập.
-Xây dựng API Server cho website và ứng dụng bằng NodeJs/Express/MongoDB
-Xây dựng website bằng ReactJs.
-Thời gian thực hiện: Bắt đầu từ 30/01/2023 đến 07/07/2023
Chữ ký của SV: ……………………………………………………………
Chữ ký của SV: ……………………………………………………………
TP.HCM, tháng năm
GIẢNG VIÊN PHẢN BIỆN
GIẢNG VIÊN HƯỚNG DẪN
LỜI CẢM ƠN
Trước tiên, chúng em muốn gửi lời cảm ơn chân thành đến với Khoa Công
Nghệ Thông Tin – Trường Đại Học Sư Phạm Kỹ Thuật Thành Phố Hồ Chí Minh đã
tạo điều kiện cho nhóm được học tập và phát triển những kiến thức về cả chuyên môn
và kỹ năng mềm.
Bên cạnh đó, nhóm chúng em xin gửi lời cảm ơn chân thành và sâu sắc nhất
đến cô Mai Anh Thơ là giảng viên hướng dẫn của nhóm. Cơ đã nhiệt tình hướng dẫn
và đưa ra những góp ý q báu cho nhóm trong suốt q trình từ lúc bắt đầu cũng như
kết thúc đề tài này. Tuy nhiên, trong q trình làm sẽ khơng tránh khỏi những sai sót,
chúng em mong nhận được sự góp ý tận tình của q thầy (cơ) qua đó nhóm có thể rút
ra được bài học kinh nghiệm, hoàn thiện và cải thiện nâng cấp lại sản phẩm của mình
một cách tốt nhất có thể.
Chúng em xin chân thành cảm ơn!
Nhóm sinh viên thực hiện
TÓM TẮT
Trang web Học Siêu Dễ - Easy Learn là một cộng đồng học tập trực tuyến
được xây dựng trên hệ sinh thái giáo dục 4.0, nhằm đáp ứng nhu cầu ngày càng tăng
về giáo dục trực tuyến và cung cấp một môi trường học tập đơn giản, dễ triển khai và
tiếp cận.
Với sự hỗ trợ của công nghệ MERN Stack (MongoDB, Express.js, React.js,
Node.js), Học Siêu Dễ mang đến một giao diện trực quan và tính năng mạnh mẽ.
Trang web tạo điều kiện cho cộng đồng người học và trợ giảng giao lưu, chia sẻ kiến
thức và hỗ trợ lẫn nhau trong quá trình học tập.
Học Siêu Dễ giúp người dùng dễ dàng tìm kiếm và tham gia vào các khóa học,
bài giảng và tài liệu học tập. Ngồi ra, trang web cịn cung cấp cơng cụ thảo luận giữa
trợ giảng và học viên, tạo ra một môi trường học tập tương tác và đáng tin cậy.
Cộng đồng Học Siêu Dễ cũng cho phép người dùng đánh giá và chia sẻ phản
hồi về khóa học, giúp cải thiện chất lượng giảng dạy và tạo ra sự minh bạch trong quá
trình học tập.
Với sự phát triển của công nghệ và tác động của đại dịch COVID-19, Học Siêu
Dễ đóng vai trị quan trọng trong việc cung cấp một giải pháp học tập linh hoạt và tiện
ích, tạo điều kiện thuận lợi cho mọi người tiếp cận kiến thức và phát triển cá nhân
trong một cộng đồng hỗ trợ sôi nổi.
MỤC LỤC
DANH MỤC HÌNH
1
DANH MỤC BẢNG
3
DANH MỤC TỪ VIẾT TẮT
5
CHƯƠNG 1: TỔNG QUAN ỨNG DỤNG
6
1.1. Lý do chọn đề tài.......................................................................................................................6
1.2. Tính cấp thiết của đề tài...........................................................................................................6
1.3. Mục tiêu xây dựng ứng dụng...................................................................................................7
1.4. Đối tượng nghiên cứu...............................................................................................................7
1.5. Phạm vi nghiên cứu..................................................................................................................8
CHƯƠNG 2: KHẢO SÁT HIỆN TRẠNG VÀ XÁC ĐỊNH YÊU CẦU
9
2.1 Đánh giá tổng quan website dạy học số tương tự....................................................................9
2.2 Các chức năng đặc biệt của từng trang web..........................................................................10
2.3. Đặc tả yêu cầu người dùng.....................................................................................................10
2.3.1. Yêu cầu về Quản trị viên
10
2.3.2 Yêu cầu về Trợ giảng
11
2.3.3. Yêu cầu về Người dùng
11
2.4. Đặc tả yêu cầu hệ thống..........................................................................................................11
2.4.1. Yêu cầu về giao diện
11
2.4.2. Yêu cầu về Internet
11
2.4.3. Yêu cầu về hệ điều hành
12
2.4.4. Kiến trúc hệ thống
12
CHƯƠNG 3: CƠ SỞ LÝ THUYẾT
13
3.1. MERN Stack...........................................................................................................................13
3.1.1. Khái niệm
13
3.1.2. Cách thức hoạt động
14
3.1.3. Ưu điểm
14
3.1.4. Nhược điểm
15
3.1.4. Áp dụng MERN Stack cho dự án
15
3.2. Các công nghệ sử dụng ở Back-end.......................................................................................16
3.2.1. Nodejs
16
3.2.2. Express
17
3.2.3. MongoDB
19
3.2.4. Cloudinary
19
3.3. Các công nghệ sử dụng ở Front-end......................................................................................20
3.3.1. React Framework
20
3.3.2. Tailwind CSS
22
3.3.3. React Query
23
3.3.4. Các thư viện hỗ trợ khác
24
CHƯƠNG 4. THIẾT KẾ HỆ THỐNG PHẦN MỀM
25
4.1. Sơ đồ phân rã chức năng........................................................................................................25
4.2. Sơ đồ lớp..................................................................................................................................25
4.3. Mơ hình hố yêu cầu...............................................................................................................26
4.3.1. Lược đồ Usecase
26
4.3.1.1. Usecase khách
26
4.3.1.2. Usecase người dùng
27
4.3.1.3. Usecase trợ giảng
28
4.3.1.4. Usecase quản trị
28
4.3.2. Lược đồ tuần tự và mô tả chi tiết chức năng
29
4.3.2.1. Chức năng “Đăng nhập”
29
4.3.2.2. Chức năng “Đăng ký”
30
4.3.2.3. Chức năng “Quên mật khẩu”
32
4.3.2.4. Chức năng “Chỉnh sửa thông tin tài khoản”
33
4.3.2.5. Chức năng “Tìm kiếm”
35
4.3.2.6. Chức năng “Tạo bài viết”
36
4.3.2.7. Chức năng “Quản lý bài viết”
38
4.3.2.8. Chức năng “Xem bảng xếp hạng"
41
4.3.2.9. Chức năng “Điểm danh”
42
4.3.2.10. Chức năng “Cho điểm người trả lời”
43
4.3.2.11. Chức năng “Hỏi và trả lời”
45
4.3.2.12. Chức năng “Bình chọn câu trả lời”
46
4.3.2.13. Chức năng “Báo cáo bài viết”
47
4.3.2.14. Chức năng “Đăng ký làm trợ giảng”
49
4.3.2.15. Chức năng “Trợ giảng đăng ký trả lời và hỗ trợ”
50
4.3.2.16. Chức năng “Quản trị xét duyệt”
51
4.3.2.17. Chức năng “Tạo khoá học”
53
4.3.2.18. Chức năng “Quản lý khoá học”
54
4.3.2.19. Chức năng “Quản lý giỏ hàng”
57
4.3.2.20. Chức năng “Thanh toán”
59
4.4. Thiết kế cơ sở dữ liệu..............................................................................................................61
4.4.1. Nhóm cơ sở dữ liệu người dùng
61
4.4.2. Nhóm cơ sở dữ liệu bài viết
66
4.4.3. Nhóm cơ sở dữ liệu khố học
72
4.5. Thiết kế giao diện....................................................................................................................78
4.5.1. Giao diện cho khách (chưa đăng nhập)
78
4.5.2. Giao diện cho người dùng
81
4.5.3. Giao diện cho trợ giảng
88
4.5.4. Giao diện cho quản trị viên
90
CHƯƠNG 5. CÀI ĐẶT VÀ KIỂM THỬ
95
5.1. Cài đặt.................................................................................................................................95
5.1.1. Truy cập bằng Visual Studio Code
95
5.1.2. Truy cập bằng trình duyệt web
95
5.2. Kiểm thử..............................................................................................................................96
5.2.1. Kế hoạch kiểm thử
96
5.2.1.1. Phạm vi kiểm thử
96
5.2.1.2. Loại kiểm thử
98
5.2.1.3. Rủi ro và các vấn đề
99
5.2.1.4. Logistics kiểm thử
99
5.2.2. Quy trình kiểm thử
5.2.3. Kết quả kiểm thử
99
100
5.2.3.1. Kết quả kiểm thử chức năng phía Người dùng
100
5.2.3.2. Kết quả kiểm thử chức năng phía Người dùng (Người dùng đã đăng nhập)
101
5.2.3.3. Kết quả kiểm thử chức năng phía Trợ giảng
103
5.2.3.4. Kết quả kiểm thử chức năng phía Quản trị viên
103
CHƯƠNG 6. KẾT LUẬN
104
6.1. Kết quả đạt được..................................................................................................................104
6.1.1. Về lý thuyết:
104
6.1.2. Về kĩ năng:
104
6.1.3. Về ứng dụng:
105
6.2. Ưu điểm.................................................................................................................................105
6.3. Nhược điểm...........................................................................................................................106
6.4. Hướng phát triển..................................................................................................................106
DANH MỤC TÀI LIỆU THAM KHẢO
107
DANH MỤC HÌNH
Hình 1 Sơ đồ kiến trúc hệ thống
Hình 2 Mơ hình hoạt động MERN Stack
Hình 3 Code minh hoạ sử dụng thư viện Paginate
Hình 4 Code minh hoạ sử dụng Express
Hình 5 Code giá tiền của một sản phẩm
Hình 6 Code minh hoạ sử dụng Tailwind trong hình ảnh
Hình 7 Code minh hoạ sử dụng useQuery để gọi API
Hình 8 Code minh hoạ sử dụng useMutation để gọi API
Hình 9 Sơ đồ phân rã chức năng
Hình 10 Sơ đồ lớp
Hình 11 Usecase Khách
Hình 12 Usecase Người dùng
Hình 13 Usecase Trợ giảng
Hình 14 Usecase Quản trị
Hình 15 Sequence Diagram Đăng nhập
Hình 16 Sequence Diagram Đăng ký
Hình 17 Sequence Diagram Qn mật khẩu
Hình 18 Sequence Diagram Chỉnh sửa thơng tin tài khoản
Hình 19 Sequence Diagram Tìm kiếm
Hình 20 Sequence Diagram Tạo bài viết
Hình 21 Sequence Diagram Quản lý bài viết
Hình 22 Sequence Diagram Xem bảng xếp hạng
Hình 23 Sequence Diagram Điểm danh
Hình 24 Sequence Diagram Cho điểm người trả lời
Hình 25 Sequence Diagram Hỏi và trả lời
Hình 26 Sequence Diagram Bình chọn câu trả lời
Hình 27 Sequence Diagram Báo cáo bài viết
Hình 28 Sequence Diagram Đăng ký làm trợ giảng
Hình 29 Sequence Diagram Trợ giảng đăng ký trả lời và hỗ trợ
Hình 30 Sequence Diagram Quản trị xét duyệt
Hình 31 Sequence Diagram Tạo khố học
Hình 32 Sequence Diagram Quản lý khố học
Hình 33 Sequence Diagram Quản lý giỏ hàng
Hình 34 Sequence Diagram Thanh tốn
Hình 35 Nhóm cơ sở dữ liệu người dùng
Hình 36 Nhóm cơ sở dữ liệu bài viết
Hình 37 Nhóm cơ sở dữ liệu khố học
Hình 38: Trang chủ cho khách
Hình 39: Trang tìm kiếm
Hình 40: Trang đăng kí
Hình 41: Trang đăng nhập
12
14
17
18
22
22
23
24
25
25
26
27
28
28
29
30
32
33
35
36
38
41
42
43
45
46
47
49
50
51
53
54
57
59
61
66
72
78
78
79
79
Trang 1
Hình 42: Trang bảng xếp hạng
Hình 43: Trang khóa học
Hình 44: Trang chi tiết khóa học
Hình 45: Trang chủ cho người dùng đã đăng nhập
Hình 46: Trang cá nhân
Hình 47: Trang khóa học của tơi
Hình 48: Trang đơn hàng
Hình 49: Trang điểm
Hình 50:Trang danh sách u thích
Hình 51: Trang bạn bè
Hình 52: Trang nhiệm vụ
Hình 53: Trang giỏ hàng
Hình 54: Trang thơng tin thanh tốn
Hình 55: Trang thanh tốn
Hình 56 Trang hỏi gia sư
Hình 57 Trang quản lý câu hỏi gia sư
Hình 58: Trang trợ giảng
Hình 59: Trang đăng kí làm trợ giảng
Hình 60 Trang hỗ trợ khố học
Hình 61 Trang hỗ trợ câu hỏi
Hình 62: Trang chủ quản trị viên
Hình 63: Trang quản lí người dùng
Hình 64: Trang quản lí trợ giảng
Hình 65: Trang quản lí bài viết vi phạm
Hình 66: Trang quản lí khóa học
Hình 67: Quản lí quảng cáo
Hình 68 Trang quản lý trợ giảng khố học
Hình 69 Trang quản lý bài viết gia sư
80
80
81
81
82
82
83
83
84
84
85
85
86
86
87
88
88
89
89
90
90
91
91
92
92
93
93
94
Trang 2
DANH MỤC BẢNG
Bảng 1 Đánh giá các webite dạy học số tương tự
Bảng 2 Phân tích chức năng của các website tương tự
Bảng 3 Usecase Đăng nhập
Bảng 4 Usecase Đăng ký tài khoản
Bảng 5 Usecase Quên mật khẩu
Bảng 6 Usecase Chỉnh sửa thơng tin tài khoản
Bảng 7 Usecase Tìm kiếm
Bảng 8 Usecase Tạo bài viết
Bảng 9 Usecase Xem danh sách bài viết
Bảng 10 Usecase Chỉnh sửa bài viết
Bảng 11 Usecase Xoá bài viết
Bảng 12 Usecase Xem bảng xếp hạng
Bảng 13 Usecase Điểm danh mỗi ngày
Bảng 14 Usecase Cho điểm người trả lời
Bảng 15 Usecase Bình luận bài viết
Bảng 16 Usecase Bình chọn câu trả lời
Bảng 17 Usecase Báo cáo bài viết
Bảng 18 Usecase Đăng ký làm trợ giảng
Bảng 19 Usecase Trợ giảng đăng ký trả lời và hỗ trợ
Bảng 20 Usecase Quản trị xét duyệt
Bảng 21 Usecase Tạo khoá học
Bảng 22 Usecase Xem khoá học
Bảng 23 Usecase Chỉnh sửa khoá học
Bảng 24 Usecase Xoá khoá học
Bảng 25 Usecase Thêm khoá học vào giỏ hàng
Bảng 26 Usecase Xoá khoá học trong giỏ hàng
Bảng 27 Usecase Thanh toán
Bảng 28 Model User
Bảng 29 Model Rank
Bảng 30 Model OTP
Bảng 31 Model Point
Bảng 32 Model HistoryPoint
Bảng 33 Model Mission
Bảng 34 Model ViewMission
Bảng 35 Model Notification
Bảng 36 Model Post
Bảng 37 Model Comment
Bảng 38 Model React
Bảng 39 Model ObIClass và Subject
10
10
30
31
33
34
36
37
39
40
40
42
43
44
46
47
48
50
51
52
54
55
56
56
58
59
60
62
63
63
64
64
65
65
66
67
68
69
69
Trang 3
Bảng 40 Model Assistant
Bảng 41 Model Attachment
Bảng 42 Model Advertise
Bảng 43 Model CategoryCourse
Bảng 44 Model CategoryCourse
Bảng 45 Model VideoCourse
Bảng 46 Model ViewVideoCourse
Bảng 47 Model RatingCourse
Bảng 48 Model Cart
Bảng 49 Model BillRecord
Bảng 50 Model AssistantCourse
Bảng 51 Model CourseWishList
Bảng 52 Phạm vi kiểm thử
Bảng 53 Rủi ro và các vấn đề
Bảng 54 Kiểm thử chức năng phía người dùng
Bảng 55 Kiểm thử chức năng người dùng đã đăng nhập
Bảng 56 Kiểm thử chức năng phía Trợ giảng
Bảng 57 Kiểm thử chức năng phía Quản trị viên
70
71
71
72
73
74
74
75
75
76
77
77
98
99
101
103
103
103
Trang 4
Trang 5
CHƯƠNG 1: TỔNG QUAN ỨNG DỤNG
DANH MỤC TỪ VIẾT TẮT
1. Web: Website
2. API: Application Programming interface
Trang 5
CHƯƠNG 1: TỔNG QUAN ỨNG DỤNG
CHƯƠNG 1: TỔNG QUAN ỨNG DỤNG
1.1. Lý do chọn đề tài
Trong thời đại hiện đại, công nghệ thông tin và internet đã thay đổi cách chúng ta
liên lạc, trao đổi thông tin và học tập. Trước đây, việc trau dồi kiến thức và trao đổi
bài tập khó thường yêu cầu chúng ta phải đến trường để hỏi thầy cơ, tìm kiếm sách
giải hoặc nhờ sự trợ giúp của bạn bè. Tuy nhiên, không phải tất cả học sinh hoặc sinh
viên đều có điều kiện về di chuyển, thời gian và tiền bạc để làm điều này.
Ngoài ra, từ khi đại dịch Covid-19 bùng phát, việc hạn chế tiếp xúc giữa con
người đã trở thành một ưu tiên hàng đầu để tránh nhiễm bệnh và lây lan dịch. Do đó,
mọi người đã phải chuyển sang làm việc và học tập trực tuyến nhiều hơn.
Từ những nhận thức đó, chúng tơi nhận thấy tầm quan trọng cần thiết phải có một
nơi để mọi người có thể cùng nhau học tập, chia sẻ kiến thức. Vì vậy, nhóm chúng tôi
đã quyết định thực hiện đề tài "Xây dựng website cộng đồng hỗ trợ học tập: Học Siêu
Dễ - Easy Learn". Mục tiêu của chúng tôi là phát triển một cộng đồng học tập trực
tuyến riêng biệt, với phương châm "Học siêu dễ - Học siêu dễ mọi lúc - Học siêu dễ
mọi nơi".
1.2. Tính cấp thiết của đề tài
Trong thời đại Cách mạng Công nghệ 4.0 và sự phát triển nhanh chóng của
Internet, chúng ta đã trải qua một cuộc cách mạng trong việc học tập trực tuyến. Giờ
đây, mọi người có thể tiếp cận nhiều tiện ích hơn trong cuộc sống, trong đó việc học
trực tuyến đóng vai trị quan trọng. Thay vì đến lớp học truyền thống, chúng ta có thể
học tập ở bất kỳ đâu và bất kỳ lúc nào.
Đi theo xu hướng đó, nhóm chúng tôi quyết định thực hiện đề tài "Xây dựng
website cộng đồng hỗ trợ học tập: Học siêu dễ - Easy learn", hoạt động theo mơ hình
mạng xã hội giáo dục. Trang web này sẽ kết nối các gia sư và học sinh với nhau, tạo
ra một cộng đồng học tập đầy đủ và sôi động. Các tương tác giữa thành viên sẽ diễn ra
như một mạng xã hội thông qua giao diện trực quan và thân thiện.
Trang 6
CHƯƠNG 1: TỔNG QUAN ỨNG DỤNG
Website "Học siêu dễ - Easy learn" sẽ cung cấp các chức năng hỗ trợ việc học tập
một cách nhanh chóng và hiệu quả nhất. Đây là một nền tảng giúp người học và người
dạy có thể tương tác, chia sẻ kiến thức, tư vấn và giải đáp câu hỏi. Các tài liệu, bài
giảng và bài tập sẽ được cập nhật đều đặn để đảm bảo người học có nguồn kiến thức
phong phú và đa dạng.
Với đề tài này, chúng tơi hy vọng có thể tận dụng tối đa lợi ích của cơng nghệ để
tạo ra một môi trường học tập trực tuyến thú vị và hữu ích, giúp mọi người tiếp cận
kiến thức một cách dễ dàng và nâng cao khả năng học tập của mình.
1.3. Mục tiêu xây dựng ứng dụng
Ứng dụng được xây dựng nhằm tạo ra một nền tảng học tập trực tuyến phổ biến,
kết nối gia sư và học sinh. Chúng tôi tập trung vào việc cung cấp môi trường học tập
đa dạng và phong phú, giúp người học tiếp cận kiến thức dễ dàng và nâng cao khả
năng học tập.
1.4. Đối tượng nghiên cứu
Người dùng: người dùng đăng nhập và sử dụng các chức năng với vai trò học sinh
sẽ có thể xem, đăng các câu hỏi và trả lời các câu hỏi của người khác. Tham gia học
các khóa học được bán trên trang web. Tham gia hỏi bài trực tiếp với gia sư và tham
gia các hoạt động kiếm điểm thưởng để tích lũy thành tích lên bảng xếp hạng, đổi các
quà tặng giá trị.
Trợ giảng: sau khi được phê duyệt làm gia sư, gia sư sẽ có thể tích lũy điểm
thưởng đổi ra q hoặc tiền bằng cách tham gia hỗ trợ trả lời thắc mắc của các khóa
học hoặc tham gia trả lời trực tiếp với học sinh.
Quản trị viên: có thể quản lý tài khoản người dùng trên website (gmail, tên đăng
nhập, ngày sinh, ngày tạo tài khoản, vai trò người dùng). Quản lý các bài đăng, thơng
báo, khóa học, quảng cáo,... Xem báo cáo của website về lượt truy cập, lượng tương
tác của người dùng với website, tổng kết theo từng tháng, quý, năm.
Trang 7
CHƯƠNG 1: TỔNG QUAN ỨNG DỤNG
1.5. Phạm vi nghiên cứu
Website chủ yếu tập trung đi vào việc xử lý các nghiệp vụ cốt lõi của một website
cộng đồng học tập, như những website thực tế hiện nay. Cụ thể là: đăng ký có sự xác
nhận của email, bài đăng có thể tải lên với nhiều định dạng, theo sát tình hình học trên
các khóa học,…Về ban quản trị, xây dựng đầy đủ các chức năng thêm, xóa, sửa, tìm
kiếm người dùng, khóa học
Trang 8
CHƯƠNG 2: KHẢO SÁT HIỆN TRẠNG VÀ XÁC ĐỊNH YÊU CẦU
CHƯƠNG 2: KHẢO SÁT HIỆN TRẠNG VÀ XÁC ĐỊNH YÊU CẦU
2.1 Đánh giá tổng quan website dạy học số tương tự
CÁC TIÊU CHÍ
diendan.hocmai.vn
lazi.vn
Giao diện Website
Giao diện chưa thật sự tối ưu
Giao diện đẹp, gọn gàng
Tốc độ phản hồi
Nhanh.
Nhanh.
Quản trị
Hệ thống lớn với lượng
Hệ thống lớn với lượng người
người dùng lớn nên việc
dùng lớn chủ yếu là các bạn
quản trị sẽ khó khăn hơn.
nhỏ từ THPT tới tiểu học nên
việc quản trị có phần khó
khăn.
Tính năng website
Nhiều tính năng tuy nhiên
Đáp ứng hầu hết các yêu cầu
không dễ sử dụng cho những
cơ bản dành cho website cộng
người mới.
đồng học tập
Tốc độ tải trang website
Tốc độ load nhanh
Tốc độ load nhanh
Dễ dàng thao tác và điều
Điều hướng thao tác dễ
Điều hướng thao tác dễ dàng,
hướng.
dàng, dễ thực hiện
dễ thực hiện
Hạn chế tối thiểu các lỗi
Còn một số lỗi nhỏ, nhiều
Còn một số lỗi nhỏ, dễ bị làm
ảnh bị lỗi.
phiền bởi các người dùng
khác.
Website dễ dàng nâng
Có thể thêm được nhiều tính
Đa số đầy đủ các tính năng cơ
cấp
năng một cách dễ dàng mà
bản, việc nâng cấp tính năng
khơng ảnh hưởng đến những
có thể khả thi trong tương lai
tính năng cũ
Website dễ dàng triển
Website có số lượng tính
Website có nhiều cấp bậc học
khai
năng quá là nhiều nên việc
sinh dùng nên việc triển khai
triển khai cho những cơ sở
và quản lý cần phân bổ quản
nhỏ những nơi chưa có đủ
lý nhân lực phải hợp lý
nguồn lực thì là khơng thể
Bảng 1 Đánh giá các webite dạy học số tương tự
2.2 Các chức năng đặc biệt của từng trang web
PHÂN LOẠI
Chức năng cơ bản
diendan.hocmai.vn
- Quản lý các câu hỏi, tài liệu
lazi.vn
- Quản lý các câu hỏi.
học tập
Trang 9
CHƯƠNG 2: KHẢO SÁT HIỆN TRẠNG VÀ XÁC ĐỊNH YÊU CẦU
- Có diễn đàn và thơng báo
- Có khơng gian trị chuyện
- Có những mục trao đổi
- Lọc và tìm kiếm câu hỏi
khác ngoài vấn đề học tập
- Lọc và tìm kiếm tài liệu học
Chức năng nâng cao
- Nhiệm vụ và bảng xếp hạng.
Bảng 2 Phân tích chức năng của các website tương tự
Đánh giá:
- Ưu điểm: Dễ sử dụng, tốc độ phản hồi nhanh, đầy đủ các chức năng cơ bản.
- Nhược điểm: Giao diện khá thô sơ, không bắt mắt, chưa thật sự tối ưu với
người mới, còn một số lỗi giao diện.
2.3. Đặc tả yêu cầu người dùng
1. 2.3.1. Yêu cầu về Quản trị viên
−
Quản lý khóa học: thêm, xóa, sửa.
−
Quản lý bài đăng: xóa..
−
Quản lí thơng báo: thêm, xóa.
−
Quản lý người dùng: thêm, xóa, sửa.
−
Quản lý thông tin cá nhân: Sửa
2. 2.3.2 Yêu cầu về Trợ giảng
−
Quản lý môn học: Sửa
−
Quản lý tài liệu: Sửa, thêm, xóa
−
Quản lý đề thi: Sửa, thêm, xóa
−
Quản lý thơng báo: Xóa, sửa
−
Quản lý thơng tin cá nhân: Sửa
Trang 10
CHƯƠNG 2: KHẢO SÁT HIỆN TRẠNG VÀ XÁC ĐỊNH YÊU CẦU
3. 2.3.3. Yêu cầu về Người dùng
−
Quản lí bài đăng: thêm, xóa, sửa..
−
Xem thơng báo.
−
Quản lí giỏ hàng: thêm, xóa, sửa.
−
Quản lý thơng tin cá nhân: sửa.
−
Quản lí điểm: thêm
2.4. Đặc tả yêu cầu hệ thống
4. 2.4.1. Yêu cầu về giao diện
−
Giao diện đẹp, dễ sử dụng.
−
Khi kéo, co giãn độ dài rộng trên trang web thì giao diện phải co giãn
theo không được bể, khuất giao diện. Tương tự giao diện trên app có thể thích
ứng với các kích thước màn hình điện thoại to, nhỏ khác nhau.
−
Khi một trang response quá lâu nên có biểu tượng loading để người
dùng biết.
5. 2.4.2. Yêu cầu về Internet
−
Bắt buộc phải có internet.
−
Internet cần ổn định.
6. 2.4.3. Yêu cầu về hệ điều hành
−
Tất cả các hệ điều hành Windows, Linux… miễn có thể truy cập
Internet.
Trang 11
CHƯƠNG 2: KHẢO SÁT HIỆN TRẠNG VÀ XÁC ĐỊNH YÊU CẦU
7. 2.4.4. Kiến trúc hệ thống
Hệ thống sử dụng mô hình Client Server với:
−
Server sử dụng Node.JS ExpressJS
−
Database sử dụng MongoDB
−
Client sử dụng ReactJS cho website
Hình 1 Sơ đồ kiến trúc hệ thống
Trang 12