STT Tên Use Case Ý Nghĩa/ Ghi Chú
1 Lựa chọn bài thi Thí sinh tự do có thể tự lựa chọn đề thi cho bản thân. 2 Xem kết quả bài thi Thí sinh tự do có thể xem kết quả bài thi sau khi thực
hiện xong bài thi.
3 Xem chi tiết bài thi Sau khi thực hiện bài thi thí sinh tự do có thể xem chi tiết bài thi.
3.4.11 Sơ đồ use case thực hiện chơi trò chơi
Hình 31: Sơ đồ use case thực hiện chơi trò chơi Hình 11: Mô tả use case thực hiện chơi trò chơi Hình 11: Mô tả use case thực hiện chơi trò chơi
STT Tên Use Case Ý Nghĩa/ Ghi Chú
1 Chọn các quyền trợ giúp
Thí sinh tự do có thể thực hiện chọn các quyền trợ giúp trong trò chơi.
54
SVTH: Nguyễn Quang Trung Hiếu – Lớp: 17CNTTC
3.4.12 Sơ đồ use case quản lý lịch sử bài làm cá nhân
Hình 32: Sơ đồ use case quản lý lịch sử bài làm cá nhân Hình 12: Mô tả use case quản lý lịch sử bài làm cá nhân Hình 12: Mô tả use case quản lý lịch sử bài làm cá nhân
STT Tên Use Case Ý Nghĩa/ Ghi Chú
1 Xem thông kế về điểm số cá nhân
Thí sinh tự do có thể xem thống kê điểm số ngày thi của bản thân.
3.4.13 Sơ đồ use case kiểm tra thông tin cá nhân
Hình 33: Sơ đồ use case kiểm tra thông tin cá nhân Hình 13: Mô tả use case kiểm tra thông tin cá nhân Hình 13: Mô tả use case kiểm tra thông tin cá nhân
55
SVTH: Nguyễn Quang Trung Hiếu – Lớp: 17CNTTC
STT Tên Use Case Ý Nghĩa/ Ghi Chú
1 Nhập mã sinh viên Thí sinh cố định có thể nhập mã sinh viên để kiểm tra thông tin cá nhân.
3.4.14 Sơ đồ use case đăng nhập
56
SVTH: Nguyễn Quang Trung Hiếu – Lớp: 17CNTTC
Bảng 14: Mô tả use case đăng nhập
STT Tên Use Case Ý Nghĩa/ Ghi Chú
1 Đăng ký thành viên Thí sinh tự do hay giáo viên có quyền đăng ký thành viên để phân trang của mình.
2 Nhập thông tin đăng nhập
Thí sinh tự do hay giáo viên hay admin phải nhập thông tin đăng nhập để chuyển sang trang của bản thân mình. 3 Quên mật khẩu Thí sinh tự do hay giáo viên có thể thực hiện chức năng
quên mật khẩu
3.5 Biểu đồ tuần tự
Biểu đồ tuần tự là biểu đồ dùng để xác định các trình tự diễn ra sự kiện của một nhóm đối tượng nào đó. Nó miêu tả chi tiết các thông điệp được gửi và nhận giữa các đối tượng đồng thời cũng chú trọng đến việc trình tự về mặt thời gian gửi và nhận các thông điệp đó.
57
SVTH: Nguyễn Quang Trung Hiếu – Lớp: 17CNTTC
3.5.1 Biểu đồ tuần tự đăng ký thành viên
Hình 35: Biểu đồ tuần tự cho chức năng đăng ký thành viên Đặc tả chức năng Đăng ký: Đặc tả chức năng Đăng ký:
- Khi thí sinh tự do hoặc truy cập vào trang chủ website, thì họ chọn mục đăng ký thành viên.
- Sau đó họ nhập các thông tin cần thiết cho quá trình đăng ký thành viên. - Khi nhấn nút đăng ký thì hệ thống tiếp nhận thông tin và xử lý.
- Nếu thông tin đăng ký đã tồn tại thì hệ thống sẽ trả về thông báo cho thí sinh tự do hoặc giảng viên, và yêu cầu nhập lại.
58
SVTH: Nguyễn Quang Trung Hiếu – Lớp: 17CNTTC
- Ngược lại nếu thông tin chưa có trong cơ sở dữ liệu thì hệ thống sẽ thông báo đăng ký thành công.
3.5.2 Biểu đồ tuần tự đăng nhập
Hình 36: Biểu đồ tuần tự cho chức năng đăng nhập Đặc tả chức năng đăng nhập: Đặc tả chức năng đăng nhập:
- Khi thí sinh tự do truy cập vào trang chủ của website muốn đăng nhập thì nhập thông tin đăng nhập vào ô đăng nhập.
59
SVTH: Nguyễn Quang Trung Hiếu – Lớp: 17CNTTC
- Sau khi nhấn nút đăng nhập hệ thống sẽ tiếp nhận thông tin và xử lý, sau đó sẽ tìm thông tin từ Database của hệ thống.
- Nếu như thông tin không tồn tại thì sẽ thông báo cho thí sinh tự do sai tên đăng nhập hoặc mật khẩu, và yêu cầu nhập lại.
- Ngược lại nếu có thông tin thì thông báo đăng ký thành công và chuyển hướng sang trang lựa chọn.
3.5.3 Biểu đồ tuần tự chức năng thi
Hình 37: Biểu đồ tuần tự chức năng thi Đặc tả chức năng thi: Đặc tả chức năng thi:
- Khi thí sinh tự do truy cập vào trang lựa chọn của website, thí sinh tự do có quyền lựa chọn thể loại câu hỏi cho bản thân.
- Sau đó hệ thống sẽ tiếp nhận câu hỏi lựa chọn và xử lý để tìm dữ liệu từ database.
60
SVTH: Nguyễn Quang Trung Hiếu – Lớp: 17CNTTC
- Sau đó hệ thống sẽ lấy thông tin câu hỏi và chuyển hướng đến trang thi cho thí sinh tự do.
- Thí sinh tự do thực hiện quá trình thi, sau khi nhấn nút nộp bài hệ thống sẽ tiếp nhận thông tin bài làm và phân tích câu hỏi đúng sai rồi trả lại thông tin về điểm cho thí sinh.
- Thí sinh tự do có thể xem thông tin chi tiết bài làm hoặc quay trở về trang lựa chọn.
3.5.4 Biểu đồ tuần tự chức năng thêm câu hỏi
Hình 38: Biểu đồ tuần tự chức năng thêm câu hỏi Đặc tả chức năng thêm câu hỏi: Đặc tả chức năng thêm câu hỏi:
61
SVTH: Nguyễn Quang Trung Hiếu – Lớp: 17CNTTC
- Admin truy cập vào trang thêm câu hỏi, sau đó nhập nội dung câu hỏi cần thêm vào hệ thống.
- Sau khi nhấn nút thêm thì hệ thống sẽ tiếp nhận thông tin và xử lý thêm câu hỏi vào database.
- Sẽ có hai trường hợp xảy ra, nếu thêm câu hỏi thất bại hệ thống sẽ trả về thông tin, và yêu cầu nhập lại.
- Nếu thêm câu hỏi thành công thì hệ thống sẽ thông báo cho admin và quay trở lại trang thêm câu hỏi.
3.5.5 Biểu đồ tuần tự chức năng điểm danh
62
SVTH: Nguyễn Quang Trung Hiếu – Lớp: 17CNTTC
Đặc tả chức năng thêm điểm danh:
- Giảng viên truy cập trang điểm danh, chọn vào nút điểm danh sau đó giảng viên chọn môn học, mã học phần, buổi học để điểm danh.
- Sau đó hệ thống sẽ tiếp nhận thông tin của giảng viên và tìm dữ liệu từ database, nếu như không có dữ liệu thì hệ thống sẽ thông báo cho giảng viên, chọn lại từ đầu.
- Nếu như thông tin có trong database thì hệ thống sẽ chuyển hướng sang trang QR.
3.5.6 Biểu đồ tuần tự chức năng thi của thí sinh cố định
63
SVTH: Nguyễn Quang Trung Hiếu – Lớp: 17CNTTC
Đặc tả chức năng thi của thí sinh cố định:
- Thí sinh cố định sử dụng điện thoại di động để quét mã QR để truy cập vào trang QR.
- Sau đó thí sinh cố định sẽ xác thực bản thân bằng cách nhập mã sinh viên của mình, nếu thông tin không chính xác hệ thống sẽ yêu cầu thí sinh cố định nhập lại thông tin của bản thân.
- Nếu như mã sinh viên chính xác thì thí sinh cố định có thể truy cập vào trang thi của bản thân mình và hoàn thành bài làm để điểm danh.
64
SVTH: Nguyễn Quang Trung Hiếu – Lớp: 17CNTTC
3.6 Biểu đồ hoạt động
3.6.1 Biểu đồ hoạt động chức năng đăng nhập
65
SVTH: Nguyễn Quang Trung Hiếu – Lớp: 17CNTTC
3.6.2 Biểu đồ hoạt động chức năng đăng ký thành viên
66
SVTH: Nguyễn Quang Trung Hiếu – Lớp: 17CNTTC
3.6.3 Biểu đồ hoạt động chức năng thêm câu hỏi
67
SVTH: Nguyễn Quang Trung Hiếu – Lớp: 17CNTTC
3.6.4 Biểu đồ hoạt động chức năng điểm danh
Hình 44: Biểu đồ hoạt động chức năng điêm danh
3.7 Thiết kế Database 3.7.1 Bảng Users 3.7.1 Bảng Users
68
SVTH: Nguyễn Quang Trung Hiếu – Lớp: 17CNTTC
Bảng 15: Bảng lưu trữ thông tin users
USERS
STT Tên trường Kiểu dữ liệu Khóa Mô tả
1 ID Int Primary key Mã người dùng
2 Name Varchar(255) Tên người dùng
3 Username Varchar(255) Tên tài khoản
4 Password Varchar(255) Mật khẩu tài khoản
5 Email Varchar(255) Email tài khoản
6 Nghề nghiệp Varchar(255) Nghề nghiệp của người dùng
7 Token Varchar(255) Token xác thực thông tin
của tài khoản
8 Xác thực Varchar(255) Xác thực gmail của tài
khoản
3.7.2 Bảng tài khoản của Admin
Chức năng: lưu trữ thông tin Admin.
Bảng 16: Bảng lưu trữ thông tin admin ADMIN ADMIN
69
SVTH: Nguyễn Quang Trung Hiếu – Lớp: 17CNTTC
1 ID Int Primary key Mã Admin
2 Name Varchar(255) Tên Admin
3 Username Varchar(255) Tên tài khoản
Admin
4 Password Varchar(255) Mật khẩu tài
khoản Admin
5 Email Varchar(255) Email tài
khoản Admin
3.7.3 Bảng công việc cá nhân
Chức năng: lưu trữ thông tin công việc cá nhân của giảng viên. Bảng 17: Bảng công việc cá nhân
CATEGORY
STT Tên trường Kiểu dữ liệu Khóa Mô tả
1 ID Int Primary key Mã công việc
2 title Varchar(255) Tiêu đề
3 Start Date Thời gian bắt
đầu
4 End Date Thời gian kết
thúc
5 Taikhoan Varchar(255) Tên tài khoản
3.7.4 Bảng câu hỏi
70
SVTH: Nguyễn Quang Trung Hiếu – Lớp: 17CNTTC
Bảng 18: Bảng câu hỏi
QUESTIONS
STT Tên trường Kiểu dữ liệu Khóa Mô tả
1 ID Int Primary key Mã câu hỏi
2 Questions Varchar(255) Câu hỏi
3 Ans1 Varchar(255) Đáp án A
4 Ans2 Varchar(255) Đáp án B
5 Ans3 Varchar(255) Đáp án C
6 Ans4 Varchar(255) Đáp án D
7 Ans5 Varchar(255) Đáp án đúng
3.7.5 Bảng chi tiết bài làm
71
SVTH: Nguyễn Quang Trung Hiếu – Lớp: 17CNTTC
Bảng 19: Bảng chi tiết bài làm
LICHSU
STT Tên trường Kiểu dữ liệu Khóa Mô tả
1 ID Int Primary key Mã câu hỏi
2 Questions Varchar(255) Câu hỏi
3 Ans1 Varchar(255) Đáp án A
4 Ans2 Varchar(255) Đáp án B
5 Ans3 Varchar(255) Đáp án C
6 Ans4 Varchar(255) Đáp án D
7 Anscx Varchar(255) Đáp án đúng
8 Anslc Varchar(255) Đáp án của người dùng
9 Session Varchar(255) Session của ngườ dùng
3.7.6 Bảng điểm số
Chức năng: lưu trữ điểm số của thí sính tự do. Bảng 20: Bảng điểm số
SCORE
STT Tên trường Kiểu dữ liệu Khóa Mô tả
1 ID Int Primary key Mã điểm
72
SVTH: Nguyễn Quang Trung Hiếu – Lớp: 17CNTTC
2 Score Varchar(255) Số điểm
3 Date DATE Ngày thực hành
3.7.7 Bảng API
Chức năng: lưu trữ câu hỏi trò chơi của thí sinh tự do. Bảng 21: Bảng lưu trữ câu hỏi trò chơi
API
STT Tên trường Kiểu dữ liệu Khóa Mô tả
1 ID Int Primary key Id câu hỏi
2 Ansa Varchar(255) Đáp án A 3 Ansb Varchar(255) Đáp án B 4 Ansc Varchar(255) Đáp án C 5 Ansd Varchar(255) Đáp án D 6 Anscx Varchar(255) Đáp án chính xác 3.7.8 Bảng sinh viên
Chức năng: lưu trữ thông tin sinh viên. Bảng 22: Bảng lưu trữ dữ liệu sinh viên
Sinhvien
STT Tên trường Kiểu dữ liệu Khóa Mô tả
73
SVTH: Nguyễn Quang Trung Hiếu – Lớp: 17CNTTC
2 Msv Int Mã sinh viên
3 Hoten Varchar(255) Họ tên sinh viên
4 Mahocphan Varchar(255) Mã học phần của sinh viên 5 Tenmonhoc Varchar(255) Tên môn học của sinh viên 6 Giaovien Varchar(255) Email của giáo viên
3.7.9 Bảng lịch sử điểm danh
Chức năng: lưu trữ thông tin yêu cầu của điểm danh. Hình 23: Bảng lưu trữ tùy chọn điểm danh của giảng viên
Lichsu_diemdanh
STT Tên trường Kiểu dữ liệu Khóa Mô tả
1 ID Int Primary key ID điểm danh
2 Mahocphan Int Mã học phần yêu cầu điểm
danh
3 Buoi_hoc Varchar(255) Buổi học điểm danh
3.7.10 Bảng câu hỏi điểm danh
Chức năng: lưu trữ câu hỏi điểm danh. Hình 24: Bảng lưu trữ câu hỏi điểm danh
Cauhoi_diemdanh
STT Tên trường Kiểu dữ liệu Khóa Mô tả
74
SVTH: Nguyễn Quang Trung Hiếu – Lớp: 17CNTTC
2 Cauhoi Varchar(255) Câu hỏi điểm danh
3 Ansa Varchar(255) Đáp án a
4 Ansb Varchar(255) Đáp án b
5 Ansc Varchar(255) Đáp án c
6 Ansd Varchar(255) Đáp án d
7 Caucx Varchar(255) Đáp án chính xác
8 Buoi Int Buổi học điểm danh
9 Mahocphan Varchar(255) Mã học phần điểm danh
10 Monhoc Varchar(255) Môn học điểm danh
11 Giaovien Varchar(255) Giáo viên phụ trách
3.7.11 Bảng điểm danh
Chức năng: lưu trữ thông tin điểm danh của sinh viên. Bảng 25: Bảng lưu trữ thông tin điểm danh của sinh viên
Table_cauhoi_diemdanh
STT Tên trường Kiểu dữ liệu Khóa Mô tả
1 ID Int Primary key ID
2 MSV Varchar(255) Mã sinh viên
3 Hoten Varchar(255) Họ tên sinh viên
4 Lop Varchar(255) Lớp sinh viên
75
SVTH: Nguyễn Quang Trung Hiếu – Lớp: 17CNTTC
6 Diem Varchar(255) Điểm của buổi học điểm
danh
7 Mahocphan Varchar(255) Mã học phần điểm danh
8 Monhoc Varchar(255) Môn học điểm danh
9 Giaovien Varchar(255) Giảng viên
3.7.12 Bảng bài tập
Chức năng: lưu trữ bài tập của sinh viên. Table_btvn
STT Tên trường Kiểu dữ liệu Khóa Mô tả
1 ID Int Primary key ID
2 Monhoc Varchar(255) Môn học của bài tập
3 mhp Varchar(255) Mã học phần của bài tập
4 tieude Varchar(255) Tiêu đề của bài tập
5 Ngayhancuoi Date Ngày cuối nộp bài
6 Giohancuoi Date Giờ cuối nộp bài
7 File Varchar(255) File bài tập
8 Ramdom Varchar(255) Mã ramdom
9 Giaovien Varchar(255) Bài tập thuộc giáo viên
3.7.13 Bảng nộp bài tập
76
SVTH: Nguyễn Quang Trung Hiếu – Lớp: 17CNTTC
Table_nop_btvn
STT Tên trường Kiểu dữ liệu Khóa Mô tả
1 ID Int Primary key ID
2 MSV Varchar(255) Mã sinh viên nộp bài tập
3 Hoten Varchar(255) Họ tên sinh viên nộp bài
tập
4 Lop Varchar(255) Lớp sinh viên nộp bài tập
5 Mahocphan Varchar(255) Mã học phần bài tập 6 Tenhocphan Varchar(255) Tên học phần bài tập
7 Ngayhancuoi Date Ngày sinh viên nộp bài tập
8 Giohancuoi Date Giờ sinh viên nộp bài tập
9 Filedinhkem Varchar(255) File bài tập của sinh viên 10 Ghichu Varchar(255) Thời gian nộp bài hợp lệ
hay không
77
SVTH: Nguyễn Quang Trung Hiếu – Lớp: 17CNTTC
3.7.14 Sơ đồ thực thể kết hợp
78
SVTH: Nguyễn Quang Trung Hiếu – Lớp: 17CNTTC
CHƯƠNG 4: KẾT QUẢ VÀ CÀI ĐẶT PHẦN MỀN 4.1 CÀI ĐẶT PHẦN MỀN
4.1.1 Tìm hiểu về XAMPP
Phần mềm máy chủ XAMPP cung cấp cho bạn môi trường thích hợp để thử nghiệm các dự án MYSQL, PHP, Apache và Perl trên máy tính cục bộ.
Dạng đầy đủ của XAMPP là X là viết tắt của Cross-platform, (A) máy chủ Apache, (M) MariaDB, (P) PHP và (P) Perl. Nền tảng của nó có thể chạy trên bất kỳ máy tính nào với bất kỳ hệ điều hành nào.
Các cài đặt XAMPP rất đơn giản và nhanh chóng, khi XAMPP được cài đặt trên máy tính của bạn, nó hoạt động như một máy chủ cục bộ hoặc localhost. Bạn có thể kiểm tra các trang web trước khi tải nó lên máy chủ web từ xa.
Phần mềm XAMPP này cung cấp cho bạn môi trường thích hợp để thử nghiệm các ứng dụng MYSQL, PHP, Apache và Perl trên máy tính.
4.1.2 Làm thế nào để sử dụng XAMPP cho PHP
Sau khi cài đặt XAMPP xong, bạn có thể bắt đầu và dừng từng mô-đun bằng cách sử dụng bảng điều khiển XAMPP. Ví dụ, thử nghiệm các ứng dụng PHP trên máy tính của bạn, bạn có thể bắt đầu hai mô-đun Apache và MySQL. Nó sẽ cho phép các chương trình PHP chạy trên máy tính của bạn. Phần mềm XAMPP này mô phỏng máy chủ từ xa như môi trường trên máy tính cục bộ của bạn.
Là một nhà phát triển ứng dụng, bạn cần phải kiểm tra các ứng dụng nhiều lần nhất có thể để tìm và sửa lỗi. Nếu bạn đang thử nghiệm trong môi trường cục bộ như