Để có được sự thành công trong môn học và hoàn thành tốt đồ án 1 “Website luyện thi vào lớp10” em đã nhận được rất nhiều sự giúp đỡ của các quý thầy cô và bạn bè.. Tỏ lòng biết ơn sâu sắ
Trang 1=
Trang 2ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
Trang 3TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
Trang 4KHOA CÔNG NGHỆ PHẦN MỀM
Trang 5-🙞🙞🙞🙞🙞 -
Trang 7Báo Cáo Đồ Án 1
Trang 8WEBSITE LUYỆN THI VÀO LỚP 10
Trang 9Giảng viên hướng dẫn:
Trang 10ThS.Huỳnh Hồ Thị Mộng Trinh
Trang 11Sinh viên thực hiện:
Trang 12Trần Huy Win -18521686
Trang 13Phạm Thiên Long-18521052
Trang 14Tp Hồ Chí Minh, 6/2021
Trang 15Nhận Xét Của Giáo Viên
Trang 16………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
Trang 171
Trang 18………
………
………
………
Trang 19… , ngày tháng năm 2021
Trang 20Người nhận xét
Trang 21(Ký tên)
Trang 222
Trang 23Lời cảm ơn
Trang 24Để có được sự thành công trong môn học và hoàn thành tốt đồ án 1 “Website luyện thi vào lớp10” em đã nhận được rất nhiều sự giúp đỡ của các quý thầy cô và bạn bè Tỏ lòng biết ơn sâu sắc em xinchân thành cảm ơn những giảng viên ở khoa Công nghệ phần mềm – Đại học Công Nghệ Thông Tin đãcùng với tri thức và tâm huyết của mình truyền đạt vốn kiến thức quý báu cho em trong suốt thời gianhọc tập tại trường
Trang 25Em xin chân thành cảm ơn Cô Huỳnh Hồ Thị Mộng Trinh đã tận tâm hướng dẫn chúng em quatừng buổi học trên lớp Nếu không có những lời hướng dẫn, chỉ bảo của thầy cô thì em nghĩ quá trìnhhoàn thiện bài báo cáo này của chúng em sẽ gặp nhiều vấn đề và khó khăn hơn
Trang 26Do kiến thức và khả năng của em còn nhiều hạn chế, vì vậy không tránh khỏi những thiếu sót,yếu kém Em rất mong nhận được những ý kiến đóng góp quý báu của thầy cô để kiến thức của emđược hoàn thiện hơn
Trang 27Sau cùng, em xin kính chúc quý thầy cô ở khoa Công nghệ phần mềm và Cô Huỳnh Hồ Thị Mộng Trinh thật dồi dào sức khỏe, niềm tin để tiếp tục thực hiện sứ mệnh cao đẹp của mình là truyền đạt kiến thức cho thế hệ mai sau
Trang 28Trân trọng cảm ơn.
Trang 293
Trang 30Mục Lục
Trang 311 Tổng quan đề tài 6 1.1 Đặt vấn đề 6 1.2 Giải pháp 6 1.3 Mục tiêu 6 1.4 Phạm vi 7 1.5 Công cụ sử dụng 7
Trang 322 Xác định và phân tích yêu cầu 7 2.1 Khảo sát hiện trạng 7 2.2 Phân tích yêu cầu 8
Trang 332.2.1 Yêu cầu chức năng 8 2.2.2 Yêu cầu phi chức năng 8 3 Thiết kế
hệ thống 9 3.1 Sơ đồ usecase 9 3.2 Danh sách tác nhân hệ thống 13 3.3 Danh sách
usecase 13 3.4 Đặc tả usecase 14 3.4.1 Module Lịch sử làm bài 14 3.4.2 Module Làm bài thi 15 3.4.3 Module Tạo bài kiểm tra 16 3.4.4 Module Duyệt bài kiểm tra 17 3.4.5 Module đăng nhập 18 3.4.7 Module tạo tài khoản
19 a Sơ đồ tuần tự 20 2 Thiết kế dữ liệu 23 a Mô tả chi tiết
các kiểu dữ liệu trong sơ đồ logic 23 i Bảng Ghi Chú 23 ii Mô tả chi tiết
các kiểu dữ liệu 23 1 Kiến trúc 25 2 Thiết kế giao diện 27 2.1 Danh sách màn hình 27 2.2 Chi tiết màn hình 28 Màng hình trang chủ website 28 Màn hình chọn đề(luyện thi) 28 Màn hình
làm bài thi( sau khi chọn đề) 29
Trang 344
Trang 35Màn hình chấm điểm và xem giải thích
30 Màn hình quản lý user 33 Màn hình bảng điểm 33 Màn hình điền thông tin đề thi( đăng đề) 34 Màn hình tạo câu hỏi( đăng đề) 35 Màn hình xem trước đề thi( đăng đề) 36 Màn hình duyệt đề(admin) 37 Màn hình đăng nhập 37
Trang 363 Kết luận 38 3.1 Môi trường phát triển và môi trường triển khai 38 3.2 Kết quả đạt được 38 3.3 Hướng phát triển 38
Trang 375
Trang 381 Tổng quan đề tài
Trang 391.1 Đặt vấn đề
Trang 40Dựa trên nhu cầu thực tế của xã hội ngày càng bùng nổ bệnh dịch covid 19 nên cần có nhiều thêm các website để các em nhỏ ôn tập cũng như luyện thi cho các kì thi lớn như thi đại học, thituyển sinh cấp 3 Nhằm giải quyết những vấn giúp đỡ các em có một môi trường rèn luyện các bài thi thử thật tốt, tham khảo các dạng bài thi cũng như các loại bài tập Đó là những nội dung
cơ bản đề cập đến trong đề tài này
Trang 41Website luyện thi vào lớp 10 sẽ giúp ích cho các bạn học sinh rất nhiều, đặc biệt là trong thời buổi dịch bệnh hoành hành, không thể đến trường lớp thường xuyên Bạn không cần thiết phải biết nhiều về tin học, bạn vẫn có thể sử dụng trang web một cách hiệu quả Giao diện thuận tiện dễ sử dụng của chương trình sẽ luôn khiến bạn cảm thấy thật thoải mái khi sử dụngwebsite
Trang 421.2 Giải pháp
Trang 43Để có thể hoàn thành được đề tài thì cần phải nghiên cứu những nội dung như sau: • Tìm hiểu cách thức vận hành 1 bài thi thử
Trang 44• Tìm hiểu về các nghiệp vụ liên quan tới quá trình thực hiện bài kiểm tra, đăng bài kiểm tra lên trang web, cách thức chấm điểm
Trang 45• Cần phải tìm hiểu nghiên cứu về những nhu cầu có thể phát sinh của người dùng để có giải pháp phù hợp
Trang 461.3 Mục tiêu
Trang 47Xây dựng website luyện thi lớp 10 đáp ứng những nhu cầu sau:
Trang 48• Thực hiện được các chức năng cơ bản của một website học tập
Trang 49• Trang bảng giúp chủ học sinh có thể quản lý, cập nhật thông tin các bài kiểm tra •
Có hình thức chấm điểm chính xác, phù hợp với các loại bài thi
Trang 50• Có thể giúp các giáo viên đăng đề lên trang web dễ dàng.
Trang 516
Trang 521.4 Phạm vi
Trang 53Thời gian thực hiện đồ án có hạn, việc xây dựng website sẽ tập trung vào các chức năng chính bao gồm : thống kê bảng điểm,luyện thi, quản lý đề thi, đăng đề thi, duyệt đề thi, quản lí thông tin tài khoản
Trang 541.5 Công cụ sử dụng
Trang 55Trong quá trình xây dựng phần mềm, nhóm đã sử dụng phần mềm sau:
Trang 56• Visual Studio Code: IDE xây dựng phần mềm
Trang 57• ReactJS: Xây dựng giao diện website
Trang 58• Redux: State management
Trang 59• Bootstrap: Built-in styles
Trang 60• Firebase: Database
Trang 612 Xác định và phân tích yêu cầu
Trang 622.1 Khảo sát hiện trạng
Trang 67Yêu cầu
Trang 68Nắm rõ các thành phần của thông tin nghiệp vụ
Trang 69Nắm rõ những đề thi, môn học mà nhiều người muốn luyện tập, tìm ra cách thức chấm điểm tự động phù hợp cho các dạng bài thi
Trang 70Tìm hiểu kỹ về tài nguyên máy móc, trang thiết bị, phần mềm, hệ điều hành phần lớn của các bạn
Trang 717
Trang 722.2 Phân tích yêu cầu
Trang 732.2.1 Yêu cầu chức năng
Trang 74Yêu cầu lưu trữ:
Trang 75Tính năng lưu trữ là yêu cầu quan trọng nhất của hệ thống là cơ sở để thực hiện phầnlớn tính năng của hệ thống, để đảm bảo việc quản có hiệu quả hệ thống lưu trữ cần lưu trữnhững thông tin sau:
Trang 76• Thông tin đề bài, đáp án, câu trả lời
Trang 77• Thông tin user, phân quyền các user
Trang 78•
Trang 79Yêu cầu tính năng:
Trang 80• Chức năng tìm kiếm đề kiểm tra
Trang 81• Chức năng thống kê báo cáo kết quả làm bài kiểm tra
Trang 82• Chức năng cập nhật
Trang 83• Chức năng đăng đề bài, kiểm duyệt đề bài
Trang 84• Chức năng tham gia bài kiểm tra
Trang 852.2.2 Yêu cầu phi chức năng
Trang 86Yêu cầu về giao diện: giao diện phải thân thiện với người dùng, phù hợp Người dùng có thể dễ dàng sử dụng cũng như thap tác
Trang 87Yêu cầu chất lượng:
Trang 88• Tính tiến hóa
Trang 89• Tính tiện dụng
Trang 90• Tính hiệu quả
Trang 91• Tính tương thích
Trang 928
Trang 933 Thiết kế hệ thống
Trang 943.1 Sơ đồ usecase
Trang 959
Trang 9710
Trang 9811
Trang 10012
Trang 1013.2 Danh sách tác nhân hệ thống
Trang 102STT Tác nhân của hệ thống Ý nghĩa
2 Thầy giáo Quản lý các nghiệp vụ chính của luyện thi,
đăng đề bài
3 Học sinh Thực hiện được các chức năng cơ bản khi vào
một website luyện thi
Trang 1053.3 Danh sách usecase
Trang 106STT Usecase Ý nghĩa
1 Lịch sử làm bài Giúp quản lý thông tin các bài thi đã được học
sinh tham gia
2 Luyện thi Thực hiện chức năng tham gia bài thi
3 Quản lý user Giúp quản lý thông tin user
4 Đăng đề Thực hiện chức năng tạo mới đề bài thi của
giáo viên, sửa đề bài
5 Duyệt đề Thực hiện chức năng phê duyệt, xóa bài thi
trên hệ thống
Trang 10913
Trang 1103.4 Đặc tả usecase
Trang 1113.4.1 Module Lịch sử làm bài
Trang 112Lịch sử làm bài
Tác nhân chính Học sinh Tác nhân phụ
Mô tả Tra cứu thông tin các bài kiểm tra đã được học sinh làmXảy ra khi Truy cập mục Lịch sử làm bài
Điều kiện trước PRE-1: Học sinh đã đăng nhập vào hệ thống
Điều kiện sau
Độ ưu tiên Cao
Quy định liên qua
Thông tin bổ sung
Ngầm định Không có
Trang 11514
Trang 1163.4.2 Module Làm bài thi
Trang 117Làm bài thi
Tác nhân chính Học sinh Tác nhân phụ
Mô tả Học sinh tiến hành làm bài kiểm tra thì sẽ hiện ra giao diện bắt
đầu làm bài thiXảy ra khi Khi học sinh muốn bắt đầu làm bài kiểm tra
Điều kiện trước PRE-1: Học sinh đã chọn bài kiểm tra
Điều kiện sau POST-1: Học sinh đã xác nhận chắc chắn muốn hoàn thành bài
thi POST-2: Thông tin được lưu trữ vào hệ thốngDòng sự kiện
cơ bản
1 Bắt đầu làm bài kiểm tra
2 Trả lời các câu hỏi có trong bài kiểm tra trong thời gian quy định
3 Xác nhận kết thúc bài kiểm tra
4 Xác nhận lại thông tin
5 Hệ thống ghi nhận kết quả bài làmDòng sự kiện
ngoài lề
Độ ưu tiên Cao
Quy định liên qua
Thông tin bổ sung 1 Học sinh có thể bỏ trống câu hỏi
Ngầm định Không có
Trang 12015
Trang 1213.4.3 Module Tạo bài kiểm tra
Trang 122Tạo bài kiểm tra
Tác nhân chính Giáo viên Tác nhân phụ Admin
Mô tả Khi giáo viên có nhu cầu tạo 1 bài kiểm tra và bấm vào tạo bài
kiểm tra thì giao diện sẽ hiện raXảy ra khi Khi giáo viên có nhu cầu tạo 1 bài kiểm tra
Điều kiện trước PRE-1: Khi actor đã điền thông tin bài thi (Nơi ra đề, dạng đề,
thời gian, môn,lần ra đề) PRE-2: Khi actor đã tạo đủ các câu hỏiĐiều kiện sau POST-1: Yêu cầu xác nhận kết thúc tạo bài kiểm tra
POST-2: Thông tin được lưu trữ vào hệ thốngDòng sự kiện
cơ bản
1 Điền thông tin bài thi(Nơi ra đề, dạng đề, thời gian, môn,lần ra đề)
2 Actor tạo bộ câu hỏi kèm đáp án
3 Xác nhận lại bộ câu hỏi
4 Gửi đề chờ admin phê duyệtDòng sự kiện
ngoài lề
Độ ưu tiên Cao
Quy định liên qua
Thông tin bổ sung 1 Actor có thể thêm gợi ý trả lời
Ngầm định Không có
Trang 12516
Trang 1263.4.4 Module Duyệt bài kiểm tra
Trang 127Duyệt bài kiểm tra
Tác nhân chính Admin Tác nhân phụ
Mô tả Khi actor có nhu cầu kiểm duyệt bài kiểm tra để đăng lên
website và bấm vào phần duyệt đề thì sẽ hiện ra giao diện duyệt bài
Xảy ra khi Khi actor có nhu cầu kiểm duyệt bài kiểm tra
Điều kiện trước PRE-1: Actor đã đăng nhập vào website, có quyền được truy
cập là admin PRE-2: Actor đã chọn bài kiểm traĐiều kiện sau POST-1: Hệ thống sẽ đăng bài kiểm tra lên hệ thống
POST-2: Thông tin được lưu trữ vào hệ thốngDòng sự kiện
cơ bản
1 Actor vài giao diện duyệt bài kiểm tra
2 Actor chọn bài kiểm tra muốn kiểm duyệt
3 Actor click vào duyệt đề
Độ ưu tiên Cao
Quy định liên qua
Thông tin bổ sung
Ngầm định Không có
Trang 13017
Trang 1313.4.5 Module đăng nhập
Trang 132Điều kiện trước PRE-1: Nhập đúng tài khoản, mật khẩu hoặc dùng tài khoản liên
kết của googleĐiều kiện sau POST-1:Điều hướng đến trang chủ
Dòng sự kiện
cơ bản
1 Actor bấm vào đăng nhập
2 Actor nhập tài khoản mật khẩu Dòng sự kiện
ngoài lề
1 Actor sử dụng đăng nhập qua tài khoản google 1.1 Actor chọn tài khoản google để đăng nhập
Độ ưu tiên Cao
Quy định liên qua
Thông tin bổ sung
Ngầm định Không có
Trang 13518
Trang 1363.4.7 Module tạo tài khoản
Trang 137Tạo tài khoản
Tác nhân chính Học sinh,
admin, giáo viên
Tác nhân phụ
Mô tả Khi khách hàng có nhu cầu tạo tài khoản
Xảy ra khi Khi actor có nhu cầu muốn tìm kiếm và click tạo tài khoản ở
trang chủĐiều kiện trước
Điều kiện sau POST-1: Thông tin tài khoản được lưu trữ vào hệ thống
Dòng sự kiện
cơ bản
1 Có nhu cầu tạo tài khoản
2 Actor vào giao diện website click tạo tài khoản 3 Điền đầy đủ các thông tin cần thiết(Email, tên tài khoản, mật khẩu)
4 Xác nhận lại thông tin
5 Actor nhấn hoàn tất và hệ thống lưu thông tin tài khoản mới
Dòng sự kiện
ngoài lề
Độ ưu tiên Cao
Quy định liên qua
Thông tin bổ sung
Ngầm định Không có
Trang 14019
Trang 141a Sơ đồ tuần tự
Trang 142• Sơ đồ tuần tự làm bài kiểm tra
Trang 14320
Trang 144• Sơ đồ tuần tự tạo đề kiểm tra
Trang 14521
Trang 146• Sơ đồ tuần tự duyệt đề(admin)
Trang 14722
Trang 1482 Thiết kế dữ liệu
Trang 149a Mô tả chi tiết các kiểu dữ liệu trong sơ đồ logic
Trang 150i Bảng Ghi Chú
Trang 151STT Tên bảng Ý Nghĩa
3 HomeworkHistory Lưu thông tin lịch sử bài kiểm tra
4 ListQuestion Lưu thông tin chi bộ câu hỏi
5 CorrectAnswer Lưu thông tin câu trả lời đúng
6 MultipleChoieAnswers Lưu thông tin các câu trả lời
Trang 154ii Mô tả chi tiết các kiểu dữ liệu
Trang 1551 User
Trang 15623
Trang 1602 HomeworkHistory
Trang 1643 Exam
Trang 16824
Trang 1694 ListQuestion
Trang 1735 CorrectAnswer
Trang 174STT Thuộc tính Kiểu
3 MultipleChoieAnswer string
Trang 1776 MultipleChoieAnswers
Trang 178STT Thuộc tính Kiểu
Trang 1811 Kiến trúc
Trang 182Kiến trúc Client – Server:
Trang 18325
Trang 185Kiến trúc Client-Server (máy khách-máy chủ) là một mô hình máy tính, trong đó máy chủ (server), cung cấp và quản lý hầu hết các nguồn lực và dịch vụ cho máy khách (client) Kiểu kiến trúc này có một hoặc nhiều máy khách kết nối với máy chủ trung tâm thông qua mạng hoặc Internet
Trang 186Kiến trúc Client-Server cũng có thể được gọi là mạng mô hình tính toán vì tất cả các yêu cầu và dịch vụ là được phân phối qua mạng
Trang 187Client:
Trang 188• Các ứng dụng di động (mobile apps)
Trang 189• Các ứng dụng trên máy tính bảng (tablet apps)
Trang 190• Trình duyệt (Windows)
Trang 191Sever:
Trang 192• Server của trang web (Web server)
Trang 193Ưu điêm: Ưu điểm của mô hình client server là với mô hình client server thì mọi thứ dường như đềunằm trên bàn tay của người sử dụng, nó có thể truy cập dữ liệu từ xa (bao gồm các công việc như gửi và nhận file, tìm kiếm thông tin, …) với nhiều dịch vụ đa dạng mà mô hình cũ không thể làm được Mô hình client/server cung cấp một nền tảng lý tưởng cho phép tích hợp các kỹ thuật hiện đại như mô hình thiết kế hướng đối tượng, hệ chuyên gia, hệ thông tin địa lý (GIS)…
Trang 19426
Trang 195Nhược điểm: Một trong những vấn đề nảy sinh trong mô hình này đó là tính an toàn và bảo mật thông tin trên mạng Do phải trao đổi dữ liệu giữa 2 máy ở 2 khu vực khác nhau cho nên dễ dàng xảy ra hiện tượng thông tin truyền trên mạng bị lộ
Trang 1962 Thiết kế giao diện
Trang 1972.1 Danh sách màn hình
Trang 198STT Tên màn hình Ý nghĩa/Ghi chú
2 Chọn đề luyện thi Học sinh chọn đề để thi thử
3 Làm bài thi Sau khi học sinh chọn đề thì học sinh bắt đầu làm
bài thi
4 Chấm điểm và xem giải thích Sau khi hoàn thành bài thi, học sinh bắt đầu xem
lời giải của trang web và xem điểm của mình đạt
được
5 Quản lý user Người dung có thể chỉnh sửa chi tiết của mình
6 Màn hình bảng điểm Hiển thị lịch sử làm bài của học sinh
7 Điền thông tin đề Đề thông tin đề thi cần đăng
8 Tạo câu hỏi Sau khi điền thông tin đề sẽ đến tạo câu hỏi, điền
đầy đủ thông tin của từng câu hỏi muốn themvào Đây cũng là làm hình sửa câu hỏi sau khi
click sửa câu hỏi
9 Xem trước đề Sẽ hiển thị toàn bộ câu hỏi để xem qua trước khi
gửi đề cho admin
10 Duyệt đề Sẽ hiển thị toàn bộ đề cần duyệt để hiển thị cho
cá học sinh làm, có thể “xem trước” đề trước khi
Trang 20127
Trang 2022.2 Chi tiết màn hình
Trang 203Màng hình trang chủ website
Trang 204Màn hình chọn đề(luyện thi)
Trang 20528
Trang 206Màn hình làm bài thi( sau khi chọn đề)
Trang 20729
Trang 208Màn hình chấm điểm và xem giải thích
Trang 20930
Trang 21031
Trang 21132
Trang 212Màn hình quản lý user
Trang 214Màn hình bảng điểm
Trang 21533
Trang 216Màn hình điền thông tin đề thi( đăng đề)
Trang 21734
Trang 218Màn hình tạo câu hỏi( đăng đề)
Trang 21935
Trang 220Màn hình xem trước đề thi( đăng đề)
Trang 22136
Trang 222Màn hình duyệt đề(admin)
Trang 223Màn hình đăng nhập
Trang 2247
Trang 2253 Kết luận
Trang 2263.1 Môi trường phát triển và môi trường triển khai
Trang 2273.1.1 Môi trường phát triển
Trang 228• Hệ điều hành: Microsoft Win 10
Trang 229• Ngôn ngữ: JavaScript
Trang 230• FameWork: ReactJS
Trang 231• Cần cài đặt: NodeJS
Trang 232• Hệ quản trị cơ sở dữ liệu: Firebase
Trang 233• Công cụ phân tích thiết kế: LucidChart
Trang 234• Công cụ chạy ứng dụng: Visual studio code
Trang 2353.1.2 Môi trường triển khai
Trang 236• Cần cài đặt: NodeJS
Trang 237• Khi chạy ứng dụng cần chép và cài đặt đầy đủ các tập tin
Trang 2383.2 Kết quả đạt được
Trang 239• Website đã thực hiện được những chức năng cơ bản của một website luyện thi lớp 10, giúp cho việc quản lý,học tập của giáo viên, học sinh trở nên dễ quản lý và dễ dàng tiếp cận các dạng đề thi hơn cho học sinh
Trang 240• Xây dựng được website có giao diện thân thiện với người dùng cũng như dễ dàng tương tác
Trang 241• Website hỗ trợ những tính năng giúp cho người dùng dễ trải nghiệm việc thi cử bằng hình thức online
Trang 2423.3 Hướng phát triển
Trang 243• Sẽ tiếp tục nghiên cứu để phát triển phần mềm hoàn thiện hơn nữa, sửa chửa các sai xót khi website được đưa vào hoạt động thực tiễn
Trang 244• Thêm các tính năng như chatbox để học sinh dễ trao đổi hơn với giáo viên • Cải tiến chức năng chấm điểm, có thề tự động chấm được các bài làm tự luận.
Trang 24538