Tải bản đầy đủ (.doc) (67 trang)

Xây dựng hệ thống website luyện thi trắc nghiệm trực tuyến

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.24 MB, 67 trang )

HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG
KHOA CƠNG NGHỆ THÔNG TIN I
--------

--------

Hồ Quốc Cường
ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC
ĐỀ TÀI:
XÂY DỰNG HỆ THỐNG WEBSITE
LUYỆN THI TRẮC NGHIỆM TRỰC TUYẾN

B17CNPM5

Giảng viên hướng dẫn
Sinh viên thực hiện
Mã sinh viên
Lớp
Khóa
Hệ

: TS. Đỗ Thị Bích Ngọc
: Hồ Quốc Cường
: B17DCCN096
: D17CNPM5
: 2017-2022
: Đại học chính quy

Hà Nội - 2022



HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG
KHOA CƠNG NGHỆ THÔNG TIN I
--------

--------

ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC
ĐỀ TÀI:
XÂY DỰNG HỆ THỐNG WEBSITE
LUYỆN THI TRẮC NGHIỆM TRỰC TUYẾN
Giảng viên hướng dẫn
Sinh viên thực hiện
Mã sinh viên
Lớp
Khóa
Hệ

: TS. Đỗ Thị Bích Ngọc
: Hồ Quốc Cường
: B17DCCN096
: D17CNPM5
: 2017-2022
: Đại học chính quy

Hà Nội - 2022


LỜI CẢM ƠN
Đối với một sinh viên Học Viện Công Nghệ Bưu Chính Viễn Thơng, đồ án tốt
nghiệp là một minh chứng cho những kiến thức đã có được sau thời gian học tập và rèn

luyện tại trường. Em xin chân thành gửi lời cảm ơn Học Viện Công Nghệ Bưu Chính
Viễn Thơng, các thầy, cơ trong Học Viện nói chung và khoa Cơng Nghệ Thơng Tin nói
riêng đã ln nhiệt huyết, tận tình trong từng bài giảng, trang bị cho em những kiến thức
quý báu trong suốt quá trình học tập rèn luyện tại Học viện.
Đặc biệt, trong quá trình hồn thành đồ án tốt nghiệp, ngồi những cố gắng của
bản thân, em sẽ khơng thể hồn thành tốt được cơng việc của mình nếu khơng có sự chỉ
bảo và hướng dẫn tận tình của Ts Đỗ Thị Bích Ngọc. Cô đã chia sẻ cho em những kiến
thức chuyên môn, cách thức làm việc và cả kinh nghiệm thực tế trong suốt quá trình em
thực hiện đề tài. Em xin gửi lời cảm ơn sâu sắc nhất tới cơ.
Vì thời gian có hạn, trình độ hiểu biết của bản thân cịn nhiều hạn chế. Cho nên
trong đồ án khơng thể tránh khỏi những thiếu sót, em rất mong nhận được sự đóng góp ý
kiến của tất cả các thầy cô giáo cũng như các bạn bè để đồ án của em được hoàn thiện
hơn.
Em xin chân thành cảm ơn!

Hà Nội, Tháng 01 năm 2022
Sinh viên
HỒ QUỐC CƯỜNG



NHẬN XÉT, ĐÁNH GIÁ, CHO ĐIỂM
(Của giảng viên hướng dẫn)

................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................

................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
Điểm: .............................(bằng chữ) ....................................................................................
Đồng ý/ Không đồng ý cho sinh viên bảo vệ trước hội đồng chấm đồ án tốt nghiệp?
Hà Nội, ngày...... tháng ... năm ...
CÁN BỘ - GIẢNG VIÊN HƯỚNG DẪN
(ký, họ tên)

SVTH: Hồ Quốc Cường – D17CNPM5

3


NHẬN XÉT, ĐÁNH GIÁ, CHO ĐIỂM
(Của giảng viên phản biện)

................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................

................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
Điểm: .......................

(bằng chữ) ....................................................................................

Đồng ý/ Không đồng ý cho sinh viên bảo vệ trước hội đồng chấm đồ án tốt nghiệp?
Hà Nội, ngày...... tháng ... năm ...
CÁN BỘ - GIẢNG VIÊN PHẢN BIỆN
(ký, họ tên)

SVTH: Hồ Quốc Cường – D17CNPM5

4


Đồ án tốt nghiệp Đại học

Lời mở đầu


LỜI MỞ ĐẦU
Hiện nay, công nghệ thông tin ngày càng phát triển vượt trội. Việc chuyển đổi số đóng
một vai trị quan trọng trong cuộc Cách mạng công nghiệp 4.0. Chuyển đổi số giáo dục là một
trong những lĩnh vực đang được ưu tiên hàng đầu.
Hơn 2 năm vừa qua, dịch bệnh Covid-19 đang hồnh hành trên khắp thế giới và chưa có
dấu hiệu dừng lại. Học sinh, sinh viên gặp rất nhiều khó khăn trong việc đến trường. Việc áp
dụng cơng nghệ số vào trong giáo dục đang được cả thế giới quan tâm để có thể truyền tải kiến
thức đến cho học sinh, sinh viên một cách đầy đủ và vẫn đảm bảo về an toàn sức khỏe.
Nhận thấy tầm quan trọng đó, em muốn sử dụng kiến thức của mình để xây dựng hệ
thống website luyện thi trắc nghiệm trực tuyến để giúp việc quản lý kiểm tra cho học sinh, sinh
viên một cách đơn giản.
Nội dung của đồ án bao gồm các phần sau:
Chương 1: Tổng quan về các công nghệ liên quan
Nội dung chương 1 sẽ giới thiệu các công nghệ được sử dụng để xây dựng hệ thống website
luyện thi trắc nghiệm trực tuyến.
Chương 2: Phân tích hệ thống
Nội dung chương này sẽ tập trung vào phân tích hệ thống. Thực hiện các cơng việc: xác định và
mô tả các tác nhân, xác định và mô tả các ca sử dụng, xây dựng biểu đồ ca sử dụng, các kịch bản
và biểu đồ lớp phân tích.
Chương 3: Thiết kế hệ thống
Nội dung chương này sẽ đi sâu vào phân tích hệ thống. Thực hiện các cơng việc: thiết kế sơ đồ
tuần tự của hệ thống, thiết kế sơ đồ lớp và cơ sở dữ liệu cho hệ thống.
Chương 4: Xây dựng và kiểm thử hệ thống
Nội dung chương này sẽ cài đặt hệ thống và kiểm thử hệ thống.

SVTH: Hồ Quốc Cường – D17CNPM5

5



Đồ án tốt nghiệp Đại học

SVTH: Hồ Quốc Cường – D17CNPM5

Lời mở đầu

6


Đồ án tốt nghiệp Đại học

Mục lục

MỤC LỤC
LỜI CẢM ƠN ...............................................................................................................................................

1

LỜI MỞ ĐẦU ...............................................................................................................................................

5

MỤC LỤC .....................................................................................................................................................

7

DANH MỤC CÁC BẢNG ...........................................................................................................................

9


DANH MỤC HÌNH ẢNH ..........................................................................................................................

11

CHƯƠNG 1: TỔNG QUAN VỀ CÁC CƠNG NGHỆ LIÊN QUAN ....................................................

13

1.1

Spring Boot Framework ............................................................................................................

13

1.1.1 Tổng quan .............................................................................................................................

13

1.1.2Ưu điểm và nhược điểm .......................................................................................................

13

1.1.3Tính năng của Spring Boot ...................................................................................................

14

Hệ quản trị cơ sở dữ liệu MySQL .............................................................................................

14


1.2.1 Tổng quan .............................................................................................................................

14

1.2.2Ưu nhược điểm của MySQL ................................................................................................

14

Công nghệ JSP: ..........................................................................................................................

15

1.3.1 Tổng quan .............................................................................................................................

15

1.3.2Ưu điểm và nhược điểm .......................................................................................................

16

1.3.3Lý do lựa chọn ......................................................................................................................

16

Tổng kết .......................................................................................................................................

16

CHƯƠNG 2: PHÂN TÍCH HỆ THỐNG .................................................................................................


18

1.2

1.3

1.4
2.1

Tổng quan về hệ thống: .............................................................................................................

18

2.2

Xác định các tác nhân của hệ thống (Actor) ............................................................................

18

2.3

Xác định và mô tả các ca sử dụng (usecase) .............................................................................

18

2.4

Xây dựng biểu đồ ca sử dụng ....................................................................................................

19


2.5

Kịch bản ......................................................................................................................................

22

2.6

Biểu đồ lớp phân tích .................................................................................................................

35

2.7

Kết luận .......................................................................................................................................

36

CHƯƠNG 3: THIẾT KẾ HỆ THỐNG ....................................................................................................

37

3.1 Biểu đồ tuần tự các usecase .............................................................................................................

37

3.2 Sơ đồ lớp thiết kế ..............................................................................................................................

50


3.3 Lược đồ cơ sở dữ liệu .......................................................................................................................

51

3.4 Mô tả các bảng cơ sở dữ liệu ...........................................................................................................

52

SVTH: Hồ Quốc Cường – D17CNPM5

7


Đồ án tốt nghiệp Đại học

Mục lục

3.5 Kết luận........................................................................................................................................... 54
CHƯƠNG 4: XÂY DỰNG VÀ KIỂM THỬ HỆ THỐNG.................................................................... 55
4.1 Kiến trúc hệ thống.......................................................................................................................... 55
4.2 Một số giao diện của hệ thống....................................................................................................... 55
4.3 Kết luận........................................................................................................................................... 63
KẾT LUẬN............................................................................................................................................... 64
Tài liệu tham khảo................................................................................................................................... 65

SVTH: Hồ Quốc Cường – D17CNPM5

8



Đồ án tốt nghiệp Đại học

Danh mục các bảng

DANH MỤC CÁC BẢNG
Bảng 1: Ca sử dụng cho admin......................................................................................................18
Bảng 2: Ca sử dụng cho giáo viên................................................................................................. 18
Bảng 3: Ca sử dụng cho sinh viên..................................................................................................19
Bảng 4: Kịch bản đăng nhập..........................................................................................................22
Bảng 5: Kịch bản chỉnh sửa thông tin cá nhân..............................................................................23
Bảng 6: Kịch bản thêm câu hỏi......................................................................................................23
Bảng 7: Kịch bản import câu hỏi từ file excel............................................................................... 24
Bảng 8: Kịch bản chỉnh sửa câu hỏi..............................................................................................24
Bảng 9: Kịch bản xóa câu hỏi........................................................................................................25
Bảng 10: Kịch bản tìm kiếm câu hỏi..............................................................................................25
Bảng 11: Kịch bản thêm đề kiểm tra mới.......................................................................................26
Bảng 12: Kịch bản chỉnh sửa đề kiểm tra......................................................................................27
Bảng 13: Kịch bản xóa đề kiểm tra................................................................................................27
Bảng 14: Kịch bản tìm kiếm đề kiểm tra........................................................................................28
Bảng 15: Kịch bản giao đề kiểm tra cho lớp học...........................................................................28
Bảng 16: Kịch bản xóa đề kiểm tra................................................................................................29
Bảng 17: Kịch bản thêm sinh viên................................................................................................. 29
Bảng 18: Kịch bản xóa sinh viên................................................................................................... 30
Bảng 19: Kịch bản tìm kiếm sinh viên............................................................................................30
Bảng 20: Kịch bản thêm lớp học....................................................................................................31
Bảng 21: Kịch bản xóa giáo viên...................................................................................................31
Bảng 22: Kịch bản thêm sinh viên cho lớp học..............................................................................32
Bảng 23: Kịch bản xóa sinh viên của lớp học................................................................................32
Bảng 24: Kịch bản sinh viên tham gia kiểm tra.............................................................................33

Bảng 25: Kịch bản xem lịch sử kiểm tra........................................................................................34
Bảng 26: Mô tả tổng quát các bảng trong cơ sở dữ liệu............................................................... 52
Bảng 27: Mô tả bảng User.............................................................................................................52
Bảng 28: Mô tả bảng Role............................................................................................................. 52
Bảng 29: Mô tả bảng Course.........................................................................................................53
Bảng 30: Mô tả bảng Subject.........................................................................................................53
Bảng 31: Mô tả bảng Question...................................................................................................... 53
Bảng 32: Mô tả bảng Answer.........................................................................................................53
Bảng 33: Mô tả bảng Exam............................................................................................................54
Bảng 34: Mô tả bảng Detail_Exam................................................................................................54
Bảng 35: Mô tả bảng Exam_Course..............................................................................................54
Bảng 36: Mô tả bảng Detail_Course............................................................................................. 54
Bảng 37: Mô tả bảng Result_Test..................................................................................................54

SVTH: Hồ Quốc Cường – D17CNPM5

9


Đồ án tốt nghiệp Đại học

SVTH: Hồ Quốc Cường – D17CNPM5

Danh mục các bảng

10


Đồ án tốt nghiệp Đại học


Danh mục hình ảnh

DANH MỤC HÌNH ẢNH
Hình 1: Spring Boot Framework....................................................................................................13
Hình 2: Hệ quản trị cơ sở dữ liệu MySQL.....................................................................................14
Hình 3: Vị trí cử JSP trong ứng dụng Web....................................................................................16
Hình 4: Biểu đồ sử dụng tổng quát của hệ thống...........................................................................19
Hình 5: Biểu đồ phân rã ca sử dụng quản lý câu hỏi.................................................................... 20
Hình 6: Biểu đồ phân rã ca sử dụng quản lý đề kiểm tra..............................................................20
Hình 7: Biểu đồ phân rã ca sử dụng quản lý sinh viên..................................................................21
Hình 8: Biểu đồ phân rã ca sử dụng quản lý lớp học sinh viên.....................................................21
Hình 9: Biểu đồ lớp phân tích........................................................................................................35
Hình 10: Sơ đồ tuần tự chức năng đăng nhập............................................................................... 37
Hình 11: Biểu đồ tuần tự chức năng chỉnh sửa thơng tin cá nhân................................................ 37
Hình 12: Sơ đồ tuần tự chức năng thêm câu hỏi............................................................................38
Hình 13: Sơ đồ tuần tự chức năng import câu hỏi từ file excel..................................................... 38
Hình 14: Biểu đồ tuần tự chức năng sửa câu hỏi.......................................................................... 39
Hình 15: Biểu đồ tuần tự chức năng xóa câu hỏi.......................................................................... 39
Hình 16: Biểu đồ tuần tự chức năng Tìm kiếm câu hỏi................................................................. 40
Hình 17: Biểu đồ tuần tự chức năng thêm đề kiểm tra.................................................................. 40
Hình 18: Biểu đồ tuần tự chức năng sửa đề kiểm tra.................................................................... 41
Hình 19: Biểu đồ tuần tự chức năng xóa đề kiểm tra.................................................................... 42
Hình 20: Biểu đồ tuần tự chức năng tìm kiếm đề kiểm tra............................................................ 42
Hình 21: Biểu đồ tuần tự chức năng giao đề cho lớp học............................................................. 43
Hình 22: Biểu đồ tuần tự chức năng xóa đề thi của lớp học......................................................... 44
Hình 23: Biểu đồ tuần tự thêm sinh viên........................................................................................44
Hình 24: Biểu đồ tuần tự chức năng xóa sinh viên........................................................................45
Hình 25: Biểu đồ tuần tự chức năng tìm kiếm sinh viên................................................................45
Hình 26: Biểu đồ tuần tự chức năng thêm lớp học........................................................................ 46
Hình 27: Biểu đồ tuần tự chức năng sửa lớp học.......................................................................... 46

Hình 28: Biểu đồ tuần tự chức năng xóa lớp học.......................................................................... 47
Hình 29: Biểu đồ tuần tự chức năng tìm kiếm lớp học.................................................................. 47
Hình 30: Biểu đồ tuần tự chức năng thêm sinh viên vào lớp học.................................................. 48
Hình 31: Biểu đồ tuần tự chức năng xóa sinh viên của lớp học.................................................... 49
Hình 32: Biểu đồ tuần tự chức năng làm bài kiểm tra...................................................................49
Hình 33: Biểu đồ tuần tự chức năng xem lịch sử kiểm tra.............................................................49
Hình 34: Biểu đồ lớp phân tích......................................................................................................50
Hình 35: Lược đồ cơ sở dữ liệu..................................................................................................... 51
Hình 36: Kiến trúc MVC................................................................................................................ 55
Hình 37: Giao diện danh sách câu hỏi.......................................................................................... 56
Hình 38: Giao diện import câu hỏi từ file excel............................................................................ 57
Hình 39: Giao diện chi tiết câu hỏi................................................................................................57
SVTH: Hồ Quốc Cường – D17CNPM5

11


Đồ án tốt nghiệp Đại học

Danh mục hình ảnh

Hình 40: Giao diện danh sách đề kiểm tra.................................................................................... 57
Hình 41: Giao diện chi tiết đề kiểm tra..........................................................................................58
Hình 42: Giao diện danh sách lớp học.......................................................................................... 59
Hình 43: Giao diện chi tiết thơng tin lớp học................................................................................ 59
Hình 44: Giao diện danh sách sinh viên của lớp học....................................................................60
Hình 45: Giao diện thêm sinh viên vào lớp học.............................................................................60
Hình 46: Giao diện danh sách các bài kiểm tra của lớp học.........................................................61
Hình 47: Giao diện danh sách sinh viên........................................................................................61
Hình 48: Giao diện chi tiết thơng tin sinh viên..............................................................................62

Hình 49: Giao diện chi tiết bài kiểm tra của sinh viên..................................................................63
Hình 50: Giao diện xem lịch sử các bài kiểm tra của sinh viên.................................................... 63

SVTH: Hồ Quốc Cường – D17CNPM5

12


Đồ án tốt nghiệp Đại học

Chương 1: Tổng quan về các cơng nghệ

CHƯƠNG 1: TỔNG QUAN VỀ CÁC CƠNG NGHỆ LIÊN QUAN
1.1 Spring Boot Framework
1.1.1 Tổng quan
- Spring Boot là một module của Spring Framework được phát triển dựa trên ngơn ngữ
Java, cung cấp tính năng RAD (Rapid Application) - Phát triển ứng dụng nhanh. Spring Boot
được dùng để tạo các ứng dụng độc lập dựa trên Spring. Spring Boot khơng u cầu cấu hình
XML. Spring Boot là một chuẩn cho cấu hình thiết kế phần mềm, tăng cao năng suất cho lập trình
viên.

Hình 1: Spring Boot Framework
1.1.2 Ưu điểm và nhược điểm
- Spring Boot được thiết kế để giúp các developer đẩy nhanh quá trình phát triển, cho phép
loại bỏ việc thiết lập và cấu hình ban đầu tốn thời gian của mơi trường triển khai. Các lợi ích của
Spring Boot bao gồm:
• Phát triển các ứng dụng dựa trên Spring một cách tiết kiệm thời gian và dễ dàng
• Tự động cấu hình tất cả các components cho một ứng dụng Spring.
• Các server được nhúng tạo sẵn (Tomcat, Jetty và Undertow), dẫn đến việc triển khai
ứng dụng được tăng tốc và hiệu quả hơn.

• Khơng có cấu hình XML.
• Dễ dàng truy cập cơ sở dữ liệu và các dịch vụ hàng đợi như MySQL, Oracle,
MongoDB, Redis, ActiveMQ và các dịch vụ khác.
• Spring Boot có mã nguồn mở, vì vậy có cộng đồng sử dụng lớn và rất nhiều hướng
dẫn, tạo điều kiện cho giai đoạn làm quen.
• Dễ dàng tích hợp các mơ-đun liên quan như Spring-MVC, Spring Data, Spring
Security, Spring Cloud, …
- Ngoài các ưu điểm trên, Spring Boot vẫn tồn tại một số nhược điểm:
• Máy ảo Java làm tăng thời gian thực thi mã nguồn của phần mềm (code sẽ được trình
biên dịch thành byte code và mã byte code sẽ được chạy trên bất kì thiết bị nào)
• Khi có sự cố với máy ảo Java thì đều làm ảnh hưởng đến source code của phần mềm
SVTH: Hồ Quốc Cường – D17CNPM5

13


Đồ án tốt nghiệp Đại học

Chương 1: Tổng quan về các cơng nghệ

1.1.3 Tính năng của Spring Boot
- SpringApplication: SpringApplication là một class giúp khởi chạy các ứng dụng từ hàm
main thuận tiện. Để bắt đầu ứng dụng chỉ cần gọi các method run.
- Profiles: Spring Boot Profiles sẽ cung cấp một cách phân chia các cấu hình cho từng mơi
trường. Các annotation là @Component hoặc @Configuration có thể sẽ được đánh dấu profiles
để giới hạn thời điểm hoặc môi trường sẽ được tải lên.
- Externalized Configuration: Externalized Configuration cho phép khả năng cấu hình
được từ bên ngồi. Vì vậy, một ứng dụng được xây dựng có thể được vận hành và hoạt động trên
nhiều môi trường khác nhau. Để thực hiện Externalized Configuration có thể sử dụng các file
properties, YAML, các tham số command line hay các biến môi trường.

- Logging: Tất cả các chức năng log nội bộ đều được spring boot sử dụng common
logging. Chúng được quản lý một cách mặc định. Vì vậy, khơng nên hoặc không cần sửa các
dependency logging nếu các tuỳ biến customization không được yêu cầu.
1.2 Hệ quản trị cơ sở dữ liệu MySQL
1.2.1 Tổng quan
- MySQL là một hệ thống quản trị cơ sở dữ liệu mã nguồn mở (Relational Database
Management System, viết tắt là RDBMS), trong đó, cơ sở dữ liệu là một hệ thống lưu trữ thông
tin được sắp xếp rõ ràng, phân lớp ngăn nắp. MySQL hoạt động theo mơ hình client-server, có
thể truy cập dữ liệu một cách thuận lợi và nhanh chóng nhất. MySQL hỗ trợ đa số các ngơn ngữ
lập trình vì vậy nó là hệ quản trị cơ sở dữ liệu phổ biến nhất trên thế giới.

Hình 2: Hệ quản trị cơ sở dữ liệu
MySQL 1.2.2 Ưu nhược điểm của MySQL
-

Ưu điểm:
• Độ bảo mật cao: MySQL rất thích hợp cho các ứng dụng có truy cập CSDL trên
Internet khi sở hữu nhiều nhiều tính năng bảo mật thậm chí là ở cấp cao.
• Đa tính năng: MySQL hỗ trợ rất nhiều chức năng SQL được mong chờ từ một hệ
quản trị cơ sở dữ liệu quan hệ cả trực tiếp lẫn gián tiếp.
• Khả năng mở rộng và mạnh mẽ: MySQL có thể xử lý rất nhiều dữ liệu và nó có thể

SVTH: Hồ Quốc Cường – D17CNPM5

14


Đồ án tốt nghiệp Đại học

Chương 1: Tổng quan về các cơng nghệ


được mở rộng nếu cần thiết.
• Nhanh chóng: Việc đưa ra một số tiêu chuẩn cho phép MySQL để làm việc rất hiệu
quả và tiết kiệm chi phí, do đó nó làm tăng tốc độ thực thi.
• Dễ dàng sử dụng: MySQL là cơ sở dữ liệu tốc độ cao, ổn định, dễ sử dụng và hoạt
động trên nhiều hệ điều hành cung cấp một hệ thống lớn các hàm tiện ích rất mạnh.
• Tương thích trên nhiều hệ điều hành: MySQL tương thích để chạy trên nhiều hệ
điều hành, như Novell NetWare, Windows, Linux, nhiều loại UNIX. MySQL cũng
cung cấp phương tiện mà các máy khách có thể chạy trên cùng một máy tính với máy
chủ hoặc trên một máy tính khác (giao tiếp qua mạng cục bộ hoặc Internet).
- Nhược điểm:
• Dung lượng hạn chế: MySQL bị hạn chế dung lượng, cụ thể, khi số bản ghi của
người dùng lớn dần, sẽ gây khó khăn cho việc truy xuất dữ liệu, khiến người dùng cần
áp dụng nhiều biện pháp để tăng tốc độ chia sẻ dữ liệu như chia tải database ra nhiều
server, hoặc tạo cache MySQL.
1.2.3 Lý do lựa chọn
- MySQL là một hệ quản trị cơ sở dữ liệu thông dụng nhất dành cho các ứng dụng web,
ứng dụng xử lý giao dịch trực tuyến và website thương mại điện tử. MySQL được tích
hợp đầy đủ các tiện ích, dễ sử dụng, lại thêm khả năng giao dịch an tồn, chi phí thấp, ...
- MySQL là một cơng cụ có tốc độ cao cùng với tính ổn định tốt. Cơng cụ này dễ sử dụng,
và có thể hoạt động được ở nhiều hệ điều hành. Ngồi ra, tính bảo mật của MySQL rất
mạnh, có thể sử dụng được ở trên nhiều ứng dụng.
1.3 Công nghệ JSP:
1.3.1 Tổng quan
- JSP (Java Server Pages) là một công nghệ để phát triển các trang web động. JSP giúp các
nhà phát triển chèn java code vào các trang HTML bằng cách sử dụng các thẻ JSP đặc biệt.
- JSP là một kiểu Java servlet được thiết kế để tạo ra giao diện người dùng cho một ứng
dụng Java web. Các nhà phát triển web viết các JSP như các tệp văn bản kết hợp mã HTML hoặc
XHTML, các phần tử XML, các action và lệnh JSP.
- Khi sử dụng JSP, có thể thu thập dữ liệu đầu vào từ người dùng thơng qua các Form của

trang web, trình bày các bản ghi từ một cơ sở dữ liệu hoặc một nguồn khác, và tạo các trang web
động.
- Các thẻ JSP có thể được sử dụng cho nhiều mục đích khác nhau, chẳng hạn như truy xuất
thơng tin từ cơ sở dữ liệu hoặc đăng ký mới, truy cập các thành phần JavaBeans, kiểm soát giữa
các trang và chia sẻ thông tin giữa các request, các trang.

SVTH: Hồ Quốc Cường – D17CNPM5

15


Đồ án tốt nghiệp Đại học

Chương 1: Tổng quan về các cơng nghệ

Hình 3: Vị trí cử JSP trong ứng dụng
Web 1.3.2 Ưu điểm và nhược điểm
-

Ưu điểm:
• Với một phần mở rộng cho Java servlet, JSP có thể sử dụng mọi tính năng của Java
Servlet. Ngồi ra, các thẻ tùy chỉnh có thể được sử dụng cùng với nó.
• Không cần phải biên dịch lại JSP khi thay đổi. Các thay đổi tự động xuất hiện khi
chạy.
• Các thẻ được sử dụng rất dễ hiểu và viết.
• Hỗ trợ Java API, giờ đây bạn có thể dễ dàng sử dụng và tích hợp với mã HTML.
• Các kết quả thu được có định dạng HTML, do đó có thể được mở trên mọi trình duyệt.

• Thay đổi có thể được thêm vào business logic page thay vì thay đổi trong mỗi trang
- Nhược điểm:

• Cơ sở dữ liệu có thể được truy cập bằng JSP, nhưng không dễ để truy cập cơ sở dữ
liệu vì hầu hết các servlet khơng cung cấp hỗ trợ.
• JSP là một servlet, nên có vấn đề trong code sẽ khó theo dõi và khắc phục.
• Thời gian để biên dịch JSP lâu hơn.
1.3.3 Lý do lựa chọn
- JSP lợi thế hơn so với Active Server Pages (ASP) vì phần động được viết bằng Java,
không phải Visual Basic hoặc ngôn ngữ Microsoft nên dễ dàng sử dụng.
- JSP thuận tiện hơn Servlet thuần để viết và để sửa đổi HTML hơn là sử dụng lệnh
println() để tạo ra HTML trong Servlet.
- JSP có thể truy cập được cơ sở dữ liệu và xử lý hình ảnh mà Javascript khơng làm được.
1.4 Tổng kết
Trong chương 1 của đồ án đã giới thiệu tổng quan về các công nghệ sử dụng để xây dựng
hệ thống website luyện thi trắc nghiệm trực tuyến.
Các chương tiếp theo sẽ đi sâu vào quy trình phát triển phần mềm để có thể hiểu rõ hơn về
SVTH: Hồ Quốc Cường – D17CNPM5

16


Đồ án tốt nghiệp Đại học

Chương 1: Tổng quan về các công nghệ

hệ thống website luyện thi trắc nghiệm trực tuyến.

SVTH: Hồ Quốc Cường – D17CNPM5

17



Đồ án tốt nghiệp Đại học

Chương 2: Phân tích hệ thống

CHƯƠNG 2: PHÂN TÍCH HỆ THỐNG
2.1 Tổng quan về hệ thống:
- Hệ thống website luyện thi trắc nghiệm trực tiếp cho phép sinh viên có thể tham gia các
bài kiểm tra trực tiếp trên trình duyệt. Giáo viên có thể quản lý bộ câu hỏi, quản lý các bài
kiểm tra, giao bài kiểm tra cho các lớp học và quản lý sinh viên của các lớp học. Quản trị
hệ thống có thể quản lý thơng tin người dùng hệ thống
2.2 Xác định các tác nhân của hệ thống (Actor)
- User: Gọi chung cho tất cả người dùng hệ thống
- Admin (Quản trị viên hệ thống): Admin có quyền quản lý các sinh viên
- Teacher (Giáo viên): Giáo viên có quyền quản lý ngân hàng câu hỏi, các đề kiểm tra
quản lý lớp học sinh viên
- Student (Sinh viên): Sinh viên có thể quản lý thơng tin cá nhân, tham gia các bài kiểm tra,
xem lịch sử các bài kiểm tra
2.3 Xác định và mô tả các ca sử dụng (usecase)
- Ca sử dụng cho Admin
Ca sử dụng
Đăng nhập

Mô tả
Admin đăng nhập và sử dụng các chức năng của hệ thống
dưới quyền admin

Quản lý thông tin cá nhân
Quản lý sinh viên

Admin có thể chỉnh sửa thơng tin cá nhân

Admin có chức năng quản lý sinh viên với các thao tác: thêm,
sửa, xóa
Bảng 1: Ca sử dụng cho admin

-

Ca sử dụng cho Teacher (Giáo viên)

Ca sử dụng
Đăng nhập

Mơ tả
Giáo viên có quyền đăng nhập và sử dụng các chức năng
của hệ thống

Chỉnh sửa thơng tin cá nhân
Quản lý câu hỏi

Giáo viên có thể chỉnh sửa thơng tin cá nhân
Giáo viên có chức năng quản lý câu hỏi với các thao tác:
thêm, sửa, xóa

Quản lý đề thi

Giáo viên có chức năng quản lý đề thi với các thao tác:
thêm, sửa, xóa, giao đề thi cho lớp học

Quản lý lớp học sinh viên

Giáo viên có chức năng quản lý lớp học với các thao tác:

thêm, xửa, xóa lớp học, thêm sinh viên cho lớp học, xóa
sinh viên của lớp học
Bảng 2: Ca sử dụng cho giáo viên

SVTH: Hồ Quốc Cường – D17CNPM5

18



×