Tải bản đầy đủ (.pdf) (81 trang)

xây dựng website hệ thống thi trắc nghiệm trựctuyến cho học viện nông nghiệp việt nam

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.56 MB, 81 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<b>BỘ GIÁO DỤC VÀ ĐÀO TẠOBỘ NÔNG THÔN VÀ PTNTTRƯỜNG ĐẠI HỌC THỦY LỢI</b>

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

<b>BỘ GIÁO DỤC VÀ ĐÀO TẠOBỘ NÔNG THÔN VÀ PTNTTRƯỜNG ĐẠI HỌC THỦY LỢI</b>

NGUYỄN THÀNH LONG

<b>XÂY DỰNG WEBSITE THI TRẮC NGHIỆM TRỰC TUYẾNCHO HỌC VIỆN NÔNG NGHIỆP VIỆT NAM</b>

Ngành: Hệ thống thông tinMã số: HT

Người hướng dẫn: TS. Nguyễn Thọ Thơng

<b>HÀ NỘI, NĂM 2023</b>

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

<b>GÁY BÌA ĐỒ ÁN TỐT NGHIỆP, KHÓA LUẬN TỐT NGHIỆPHỌ</b>

<b>2023</b>

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

<b>LỜI CAM ĐOAN</b>

Em tên là Nguyễn Thành Long, em xin cam đoan đây là Đồ án tốt nghiệp / Luận án tốt nghiệp do chính bản thân em làm. Các kết quả trong Đồ án tốt nghiệp / Khóa luận tốt nghiệp này mà em làm là trung thực, khơng sao chép tồn bộ từ bất cứ một nguồn nào, dưới mọi hình thức nào. Việc thao khảo các nguồn tài liệu (nếu có) đã được em thực hiện trích dẫn và ghi nguồn tài liệu tham khảo một cách rõ ràng, đúng quy định.

<b>Tác giả ĐATN / KLTN</b>

<b>Nguyễn Thành Long</b>

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

<b>LỜI CẢM ƠN</b>

Lời đầu tiên em xin chân thành cảm ơn các thầy, cô trong khoa Công nghệ thông tin, trường Đại học Thủy Lợi đã tạo điều kiện thuận lợi cho em trong quá trình học tập tại trường cũng như trong thời gian thực hiện đồ án tốt nghiệp. Đặc biệt, em muốn gửi lời cảm ơn tới thầy Nguyễn Thọ Thông – giáo viên trực tiếp hướng dẫn, chỉ bảo để em khắc phục những khó khăn, thiếu xót và hồn thành các phần trong đồ án tốt nghiệp từ lý thuyết cho tới thực hành một cách thuận lợi.

Mặc dù em đã cố gắng với tất cả sự nỗ lực của bản thân để hoàn thiện đồ án, nhưng do thời gian có hạn, năng lực và kinh nghiệm cịn hạn chế nên đồ án không thể tránh khỏi những thiếu sót. Kính mong nhận được sự đóng góp ý kiến từ phía thầy cơ, bạn bè để em có thể nâng cao tư duy, kiến thức của bản thân và hoàn thiện đồ án tốt hơn.

Em xin chân thành cảm ơn!

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

<b>CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAMĐộc lập - Tự do - Hạnh phúc</b>

<b>---★---NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP</b>

<b>Họ tên sinh viên:</b> Nguyễn Thành Long <b>Hệ đào tạo: Đại học chính quy</b>

<b>Khoa:</b> Cơng nghệ thông tin

<b>1 – TÊN ĐỀ TÀI</b>

Xây dựng website thi trắc nghiệm trực tuyến cho Học Viện Nông Nghiệp Việt Nam.

<b>2 - CÁC TÀI LIỆU THAM KHẢO</b>

[1][2][3][4][5][6]

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

<b>3 – NỘI DUNG CÁC PHẦN THUYẾT MINH VÀ TÍNH TOÁN</b>

Chương 1: Tổng quan và cơ sở lý thuyết 10%Chương 2: Phân tích thiết kế hệ thống 40%Chương 3: Thực nghiệm và đánh giá 40%

Chương 3: Thực nghiệm và đánh giáKẾT LUẬN

<b>5 – NGÀY GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP</b>

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

TRƯỜNG ĐẠI HỌC THỦY LỢI

<b>KHOA CÔNG NGHỆ THÔNG TIN</b>

Tại Việt Nam, đồng thời với sự đổi mới phương pháp dạy và học, việc cải tiếnhình thức thi cũng trở thành một yêu cầu cấp bách. Trong các hình thức thi cử, trắcnghiệm khách quan được coi là hình thức thu hút nhiều sự quan tâm nhất, nhờ những ưuđiểm của nó trong việc kiểm tra và đánh giá trình độ của thí sinh. Hình thức này mangtính khách quan, trung thực, và kiểm tra được nhiều kiến thức, từ đó tránh được việc họclịng và thuộc vẹt. Hiện nay, trắc nghiệm đang là xu hướng chung trong hầu hết các kỳ thiở Việt Nam.

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

Với sự phổ biến của hình thức thi trắc nghiệm, đã có nhiều phần mềm được pháttriển nhằm hỗ trợ sinh viên ơn luyện kiến thức theo hình thức này. Hơn nữa, các trangweb hỗ trợ làm bài thi trắc nghiệm trực tuyến cũng đã ra đời. Vì lý do đó, Học Viện Nơng

<b>Nghiệp Việt Nam đã hợp tác với tôi “Xây dựng website thi trắc nghiệm trực tuyến choHọc viện Nông Nghiệp Việt Nam” để phục vụ cho các kì thi của trường .</b>

<b>●</b> Nghiên cứu về lý thuyết trắc nghiệm.

<b>●</b> Tìm hiểu về quy trình tạo đề thi, chấm điểm đề thi , tạo câu hỏi trực tuyến.

<b>●</b> Tìm hiểu về framework Laravel của PHP

<b>●</b> Tìm hiểu về cách thiết kế website, thiết kế cơ sở dữ liệu.Kỹ năng

<b>●</b> Sinh viên tìm hiểu kiến thức về hình thức thi trắc nghiệm .

<b>●</b> Sinh viên nắm rõ và sử dụng Framework Laravel để xây dụng website thi trắcnghiệm trực tuyến.

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

<b>KẾT QUẢ DỰ KIẾN</b>

Kiến thức

<b>●</b> Sinh viên hiểu được về những kiến thức tìm hiểu trong báo cáo.

<b>●</b> Sinh viên hiểu được cách triển khai một và quản lý một hệ thống thi trắc nghiệmtrực tuyến hiệu quả.

<b>●</b> Sinh viên nắm rõ các kỹ thuật phân tích xử lý dữ liệu liên quan đến hệ thống thitrắc nghiệm trực tuyến.

Kỹ năng

<b>●</b> Sinh viên ứng dụng cài đặt thành cơng chương trình trên ngơn ngữ lập trình PHPcùng với framework Laravel về hệ thống thi trắc nghiệm trực tuyến.

<b>●</b> Thu thập dữ liệu, tiền xử lí dữ liệu.

<b>●</b> Sinh viên có khả năng thiết kế và triển khai hệ thống một cách chuyên nghiệp.

<b>●</b> Sinh viên có khả năng nghiên cứu và áp dụng các cơng nghệ mới nhất để nângcao hiệu suất và tính năng của hệ thống.

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

1.2. Mục tiêu nghiên cứu...2

1.3. Phương pháp nghiên cứu...3

2.2.6. Các thư viện khác được sử dụng trong đề tài...9

CHƯƠNG 2: PHÂN TÍCH, THIẾT KẾ HỆ THỐNG...9

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

2.1. Đặc tả phần mềm...9

2.2. Thiết kế chi tiết hệ thống...10

2.2.1 Sơ đồ UseCase...10

2.2.2 Biểu đồ hoạt động, phân rã chức năng...14

2.3. Thiết kế cơ sở dữ liệu...40

2.3.1 Các bảng trong CSDL...40

2.3.2 Sơ đồ quan hệ của CSDL...47

CHƯƠNG 3: THỰC NGHIỆM VÀ ĐÁNH GIÁ SO SÁNH...48

3.1. Môi trường thực nghiệm...48

3.2. Kết quả thực nghiệm...49

3.2.1. Chức năng chung...49

3.2.2. Chức năng của Admin...53

3.2.3. Chức năng của Giảng viên...54

3.3. Đánh giá so sánh...62

KẾT LUẬN...63

8.1. Kết quả đạt được...63

8.2. Một số điểm hạn chế trong hệ thống...63

8.3. Hướng phát triển của hệ thống trong tương lai...63

TÀI LIỆU THAM KHẢO...64

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

<b>DANH MỤC HÌNH ẢNH</b>

Hình 2.1 Sơ đồ Use case tổng quát...14

Hình 2.2 Sơ đồ Use case phân rã chức năng của Admin...15

Hình 2.3 Sơ đồ Use case phân rã chức năng của Giảng viên...16

Hình 2.4 Sơ đồ Use case phân rã chức năng của Sinh viên...17

Hình 2.5 Sơ đồ Use case phân rã chức năng Đăng nhập...17

Hình 2.6 Sơ đồ Use case phân rã chức năng Thơng tin cá nhân...18

Hình 2.7 Sơ đồ Use case phân rã chức năng Tìm kiếm...18

Hình 2.8 Sơ đồ hoạt động đăng nhập...20

Hình 2.9 Sơ đồ hoạt động đăng xuất...21

Hình 2.10 Sơ đồ hoạt động thêm mới khoa...23

Hình 2.11 Sơ đồ hoạt động sửa khoa...23

Hình 2.12 Sơ đồ hoạt động xóa khoa...24

Hình 2.13 Sơ đồ hoạt động thêm mới tài khoản...25

Hình 2.14 Sơ đồ hoạt động sửa tài khoản...26

Hình 2.15 Sơ đồ hoạt động xóa tài khoản...26

Hình 2.16 Sơ đồ hoạt động thêm mới lớp học...28

Hình 2.17 Sơ đồ hoạt động sửa lớp học...29

Hình 2.18 Sơ đồ hoạt động xóa lớp học...29

Hình 2.19 Sơ đồ hoạt động thêm sinh viên vào lớp học...30

Hình 2.20 Sơ đồ hoạt động xóa sinh viên khỏi lớp học...30

Hình 2.21 Sơ đồ hoạt động thêm câu hỏi...32

Hình 2.22 Sơ đồ hoạt động tham khảo câu hỏi...33

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

Hình 2.23 Sơ đồ hoạt động thêm đề thi...35

Hình 2.24 Sơ đồ hoạt động thêm câu hỏi vào đề thi...36

Hình 2.25 Sơ đồ hoạt động thêm sinh viên vào đề thi...36

Hình 2.26 Sơ đồ hoạt động tạo mật khẩu đề thi...37

Hình 2.27 Sơ đồ hoạt động kích hoạt đề thi...37

Hình 2.28 Sơ đồ hoạt động cho xem đáp án đề thi...38

Hình 2.29 Sơ đồ hoạt động kết thúc đề thi...38

Hình 2.30 Sơ đồ hoạt đơng xem kết quả đề thi...40

Hình 2.31 Sơ đồ hoạt đơng xem biểu đồ thống kê đề thi...40

Hình 2.32 Sơ đồ hoạt đơng xem đáp án bài thi...41

Hình 2.33 Sơ đồ hoạt đơng xuất file điểm đề thi...41

Hình 2.34 Sơ đồ hoạt động làm bài thi...43

Hình 2.35 Sơ đồ hoạt động xem kết quả bài thi...44

Hình 2.36 Sơ đồ quan hệ CSDL...51

Hình 3.1 Trang đăng nhập...53

Hình 3.2 Trang quên mật khẩu...54

Hình 3.3 Mail quên mật khẩu...54

Hình 3.4 Trang cài đặt mật khẩu mới...55

Hình 3.5 Trang thơng tin cá nhân...55

Hình 3.6 Trang sửa thơng tin cá nhân...56

Hình 3.7 Trang đổi mật khẩu...56

Hình 3.8 Chat giữa giảng viên và admin...57

Hình 3.9 Trang quản lý khoa...57

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

Hình 3.11 Trang quản lý lớp học...58

Hình 3.12 Trang thêm sinh viên vào lớp học...59

Hình 3.13 Ngân hàng câu hỏi...59

Hình 3.16 Thêm mới đề thi...61

Hình 3.17 Trang chi tiết đề thi...61

Hình 3.17 Thêm câu hỏi vào đề thi...62

Hình 3.19 Thêm sinh viên vào đề thi...62

Hình 3.20 Tạo mật khẩu cho đề thi...63

Hình 3.21 Xem kết quả đề thi...63

Hình 3.22 Xem đáp án của sinh viên...64

Hình 3.23 Quản lý bài thi của sinh viên...64

Hình 3.24 Nhập mật khẩu bài thi...65

Hình 3.25 Làm bài thi của sinh viên...65

Hình 3.26 Kết quả bài thi sau khi nộp...66

Hình 3.27 Danh sách kết quả các bài thi của sinh viên...66

</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">

<b>DANH MỤC BẢNG BIỂU</b>

Bảng 2.1 Kịch bản use case đăng nhập...20

Bảng 2.2 Kịch bản use case đăng xuất...21

Bảng 2.3 Kịch bản use case quản lý khoa...22

Bảng 2.4 Kịch bản use case quản lý tài khoản...26

Bảng 2.5 Kịch bản use case quản lý lớp học...28

Bảng 2.6 Kịch bản use case Ngân hàng câu hỏi...32

Bảng 2.7 Kịch bản use case Quản lý đề thi...35

Bảng 2.8 Kịch bản use case Thống kê...41

Bảng 2.9 Kịch bản use case Làm bài thi...44

Bảng 2.10 Kịch bản use case Xem kết quả...46

Bảng 2.11 Bảng Users...47

</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">

<b>DANH MỤC CÁC TỪ VIẾT TẮT VÀ GIẢI THÍCH CÁC THUẬT NGỮ</b>

<b>Từ viết tắt</b> Viết đầy đủ

<b>HTML</b> HyperText Markup Language

<b>CSS</b> Cascading Style Sheets

<b>SASS</b> Syntactically Awesome Style Sheets

<b>JS</b> JavaScript

<b>DOM</b> Document Object Model

<b>JSX</b> Javascript syntax extension

<b>SQL</b> Structured Query Language

<b>MySQL</b> Structured Query Language

<b>API</b> Application Programming Interface

<b>MVC</b> Model – View – Controller

<b>FE</b> Front-End

<b>URL</b> Uniform Resource Locator

<b>CSDL</b> Cơ sở dữ liệu

</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">

<b>MỞ ĐẦU</b>

<b>1.1.Lý do chọn đề tài</b>

Đầu tiên, việc áp dụng công nghệ thông tin và internet vào tổ chức các kỳ thi trực tuyến là một xu hướng phát triển hiện đại. Thông qua website thi trắc nghiệm, chúng tacó thể đáp ứng nhu cầu thi trắc nghiệm hiện đại và mang lại sự tiện lợi cho cả người rađề và thí sinh.

Hình thức thi trắc nghiệm trực tuyến cịn mang lại tính chính xác và khách quan trong việc đánh giá trình độ. Quá trình chấm điểm và đánh giá trên website được thực hiện tự động, giảm thiểu sai sót và yếu tố con người. Điều này đảm bảo tính khách quan và cơng bằng trong q trình thi, đồng thời tạo điều kiện thuận lợi cho người ra đề và quản lý kỳ thi.

Sử dụng website thi trắc nghiệm trực tuyến còn giúp tiết kiệm thời gian và tài ngun. Thí sinh có thể dễ dàng tham gia vào bất kỳ thời điểm và địa điểm nào có kết nối internet. Q trình chấm điểm và cơng bố kết quả cũng được thực hiện nhanh chóng vàtiện lợi. Đồng thời, việc quản lý thông tin về thí sinh, đề thi, kết quả và thống kê trở nên dễ dàng qua hệ thống quản lý trên website.

Một ưu điểm khác của việc xây dựng website thi trắc nghiệm trực tuyến là khả năng mở rộng và linh hoạt. Hệ thống có thể dễ dàng mở rộng để đáp ứng quy mô và phạm vi của các kỳ thi ngày càng lớn hơn. Ngoài ra, website cũng cho phép tùy chỉnh và linhhoạt trong việc thiết kế các bài thi, tạo điều kiện cho việc đổi mới và nâng cao chất lượng của quá trình kiểm tra và đánh giá.

<b>Tổng quan, việc “ Xây dựng website thi trắc nghiệm trực tuyến cho Học Viện Nông Nghiệp Việt Nam ” là một lựa chọn hợp lý để đáp ứng nhu cầu thi trắc nghiệm </b>

hiện đại, tăng tính chính xác và khách quan trong quá trình kiểm tra, tiết kiệm thời gian và tài nguyên, đồng thời tạo sự linh hoạt và mở rộng cho quy mô kỳ thi trong tương lai.

</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">

 Xây dựng một giao diện trực quan, thân thiện với người dùng và dễ sử dụng để thí sinh có thể tham gia vào các kỳ thi trắc nghiệm một cách thuận tiện.

 Cung cấp các tính năng để quản lý các kỳ thi, tạo quản lý và lưu trữ các bài thi, câu hỏi trắc nghiệm, thơng tin thí sinh và kết quả thi.

 Đảm bảo tính khách quan và bảo mật trong quá trình thi trắc nghiệm. Hệ thống sẽ áp dụng các biện pháp bảo mật để đảm bảo rằng chỉ thí sinh được phép truy cập và làm bài thi. Đồng thời, sẽ có các cơ chế kiểm sốt để đảm bảo tính kháchquan và trung thực của quá trình chấm điểm và đánh giá kết quả.

<b>1.3.Phương pháp nghiên cứu</b>

 Tìm hiểu phân tích u cầu của “Học viên Nông Nghiệp Việt Nam” đối với hệ thống và thập thơng tin chi tiết về các tính năng, quy trình và yêu cầu kỹ thuật cần thiết để xây dựng một hệ thống thi trắc nghiệm đáng tin cậy và hiệu quả. Tiến hành thiết kế tổng quan của hệ thống, bao gồm cấu trúc dữ liệu, giao diện

người dùng, quy trình thi trắc nghiệm và cơ chế quản lý kết quả. Việc thiết kế được thực hiện theo các nguyên tắc và tiêu chuẩn chung trong lĩnh vực phát triển website để đảm bảo tính hợp lý và khả năng mở rộng của hệ thống. <b>Triển khai và phát triển “Xây dựng website thi trắc nghiệm trực tuyến cho </b>

<b>Học Viện Nông Nghiệp Việt Nam”, sử dụng các công nghệ và ngôn ngữ lập </b>

 Nghiên cứu tập trung vào xây dựng các chức năng cơ bản của hệ thống, bao gồm: đăng ký và quản lý tài khoản thí sinh, tạo và quản lý các bài thi trắc nghiệm, giao diện làm bài thi, chấm điểm và lưu trữ kết quả thi. Các chức năng

</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21">

này sẽ đảm bảo tính khách quan, trung thực và thuận tiện trong quá trình thi trắcnghiệm.

 Nghiên cứu tập trung vào việc áp dụng các công nghệ và ngơn ngữ lập trình phù hợp để xây dựng hệ thống website thi trắc nghiệm trực tuyến. Các công nghệ và ngôn ngữ này sẽ được lựa chọn và triển khai để đảm bảo tính ổn định, hiệu suất và bảo mật của hệ thống.

 Nghiên cứu tập trung vào việc phát triển và xây dựng website thi trắc nghiệm trực tuyến cho Học Viện Nông Nghiệp Việt Nam, với phạm vi sử dụng trong các kỳ thi và hoạt động giảng dạy của Học Viện. Tuy nhiên, hệ thống có khả năng mở rộng để phục vụ các đối tượng và tổ chức có nhu cầu tương tự trong lĩnh vực giáo dục.

<b>CHƯƠNG 1: CƠ SỞ LÝ THUYẾT VÀ CÔNG NGHỆ</b>

<b>2.1.Cơ sở lý thuyết</b>

<b>2.1.1. Lý thuyết trắc nghiệm</b>

Lý thuyết trắc nghiệm là một lĩnh vực trong lĩnh vực đo lường và đánh giá, tập trung vào việc phát triển và áp dụng các phương pháp, quy trình và công cụ để xây dựng các câu hỏi trắc nghiệm và đánh giá kiến thức, kỹ năng hoặc phẩm chất của cá nhân.

Lý thuyết trắc nghiệm đề cập đến các khía cạnh quan trọng trong việc thiết kế, xây dựng, đánh giá và sử dụng các bài kiểm tra trắc nghiệm. Nó nghiên cứu các nguyên tắcvà quy tắc để đảm bảo tính chính xác, độ tin cậy và hiệu quả của các bài kiểm tra trắc nghiệm.

Các khái niệm và nguyên tắc cơ bản trong lý thuyết trắc nghiệm bao gồm:

 Câu hỏi trắc nghiệm: Lý thuyết trắc nghiệm xem xét cách thiết kế và phân loại các loại câu hỏi trắc nghiệm, bao gồm câu hỏi đúng/sai, câu hỏi multiple-choice(nhiều lựa chọn), câu hỏi điền từ/câu trả lời ngắn và câu hỏi kéo thả.

 Độ tin cậy: Lý thuyết trắc nghiệm quan tâm đến độ tin cậy của bài kiểm tra, tức là mức độ mà bài kiểm tra đo lường được đúng đắn và ổn định đối với mục tiêu

</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">

đo lường. Độ tin cậy có thể được ước lượng bằng các phương pháp thống kê như hệ số alpha Cronbach.

 Validity (Hợp lệ): Validity đề cập đến mức độ mà một bài kiểm tra đo lường chính xác và tồn diện mục tiêu đo lường. Các phương pháp đánh giá tính hợp lệ bao gồm phân tích nội dung, phân tích mặt trực tiếp và phân tích hệ thống. Thang điểm và chấm điểm: Lý thuyết trắc nghiệm nghiên cứu về các phương

pháp thiết lập thang điểm và quy trình chấm điểm cho bài kiểm tra trắc nghiệm. Điều này bao gồm việc thiết lập các tiêu chuẩn chấm điểm, xác định điểm cho từng câu hỏi và tính điểm tổng thể cho thí sinh.

 Bias (Thiên lệch): Lý thuyết trắc nghiệm quan tâm đến các yếu tố thiên lệch có thể ảnh hưởng đến kết quả đo lường, chẳng hạn như thiên lệch giới tính, thiên lệch văn hóa hoặc thiên lệch ngôn ngữ. Nghiên cứu về bias giúp đảm bảo tính cơng bằng và cơng hiệu của bài kiểm tra trắc nghiệm.

Tóm lại, lý thuyết trắc nghiệm là một lĩnh vực quan trọng trong đo lường và đánh giá, nghiên cứu các nguyên tắc và quy tắc để xây dựng, đánh giá và sử dụng các bàikiểm tra trắc nghiệm một cách chính xác, tin cậy và hiệu quả.

<i><b>2.1.2. Hệ thống thi trắc nghiệm trực tuyến</b></i>

Lý thuyết về hệ thống thi trắc nghiệm trực tuyến là một lĩnh vực liên quan đến việc xây dựng và phát triển các hệ thống điện tử cho việc tổ chức và quản lý các bài kiểm tra trắc nghiệm trực tuyến. Lý thuyết này tập trung vào các khía cạnh kỹ thuật, thiết kế giao diện, quy trình kiểm sốt và tính bảo mật của hệ thống.

Các khái niệm và nguyên tắc cơ bản trong lý thuyết về hệ thống thi trắc nghiệm trực tuyến bao gồm:

 Thiết kế giao diện: Lý thuyết này quan tâm đến việc thiết kế giao diện người dùng trực quan và dễ sử dụng cho hệ thống thi trắc nghiệm trực tuyến. Điều nàyđảm bảo rằng thí sinh có thể dễ dàng truy cập, làm bài thi và gửi kết quả một cách thuận tiện và khơng gặp khó khăn trong q trình sử dụng hệ thống. Quản lý đề thi: Lý thuyết nghiên cứu về cách quản lý và lưu trữ các bộ đề thi

trong hệ thống. Điều này bao gồm việc tổ chức các danh mục đề thi, quản lý

</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">

phiên bản và cập nhật, và đảm bảo tính bảo mật của các đề thi để ngăn chặn việc rị rỉ thơng tin và gian lận trong q trình thi.

 Quy trình kiểm sốt: Lý thuyết này tập trung vào việc xác định và áp dụng các quy trình kiểm sốt chặt chẽ để đảm bảo tính chính xác và trung thực của quá trình thi trắc nghiệm. Điều này bao gồm việc xác thực thí sinh, giám sát quá trình thi, kiểm tra độ tin cậy của kết quả và xử lý các hành vi gian lận và vi phạm quy tắc thi.

 Tính bảo mật: Lý thuyết nghiên cứu về các biện pháp bảo mật để đảm bảo rằng hệ thống thi trắc nghiệm trực tuyến được bảo vệ khỏi các mối đe dọa an ninh vàtruy cập trái phép. Điều này bao gồm việc áp dụng các biện pháp bảo vệ dữ liệu, mã hóa thơng tin, kiểm sốt quyền truy cập và giám sát hoạt động hệ thốngđể ngăn chặn sự xâm nhập và lợi dụng.

<b>2.2.Nền tảng công nghệ sử dụng2.2.1. HTML</b>

HTML viết tắt cho Hypertext Markup Language, tạm dịch là ngôn ngữ đánh dấu siêu văn bản. HTML được sử dụng để tạo và cấu trúc các thành phần trong trang web hoặc ứng dụng, phân chia các đoạn văn, heading, links, blockquotes,… HTML khơng phải là ngơn ngữ lập trình. Điều này có nghĩa là nó khơng thể tạo ra các chức năng "động". Hiểu một cách đơn giản hơn, HTML cũng tương tự như phần mềm Microsoft Word, nóchỉ có tác dụng bố cục và định dạng trang web.

Một tài liệu HTML được hình thành bởi các phần tử HTML (HTML Elements) được quy định bằng các cặp thẻ (tag và attributes). Các cặp thẻ này được bao bọc bởi một dấu ngoặc nhọn (ví dụ ) và thường là sẽ được khai báo thành một cặp, bao gồm thẻ mởvà thẻ đóng.

<b>2.2.2. CSS</b>

CSS (viết tắt của Cascading Style Sheets) là một ngôn ngữ được sử dụng để áp dụng và định dạng các phần tử được tạo bởi ngôn ngữ đánh dấu HTML. Nó cho phép tách biệt việc xác định kiểu dáng và trình bày của tài liệu HTML khỏi nội dung chính của nó.

</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="24">

Thay vì đặt các quy tắc kiểu dáng trực tiếp trong mã HTML, CSS cho phép bạn tạo cáctập tin riêng biệt chứa các quy tắc kiểu dáng và áp dụng chúng cho các phần tử HTML.Điều này giúp giữ mã HTML gọn gàng hơn và tách biệt hóa nội dung và kiểu dáng, giúp việc cập nhật và thay đổi kiểu dáng trở nên dễ dàng hơn.

CSS cung cấp khả năng tạo ra các kiểu dáng và định dạng có thể áp dụng cho nhiều trang web, giúp tiết kiệm thời gian và công sức trong việc lặp lại mã code cho các trang web tương tự nhau.

Tóm lại, CSS là một ngôn ngữ quan trọng trong việc định dạng và áp dụng kiểu dáng cho các trang web, cho phép tách biệt nội dung và kiểu dáng, giúp mã nguồn trang web trở nên gọn gàng và dễ quản lý hơn.

<b>2.2.3. Javascript</b>

JavaScript (viết tắt là JS) là một ngôn ngữ lập trình kịch bản dựa trên đối tượng, được sử dụng rộng rãi trong phát triển ứng dụng web. JS có khả năng xử lý các phần tử HTML trên trình duyệt và thực hiện các hành động như thêm, sửa đổi và xóa thuộc tính CSS và thẻ HTML một cách linh hoạt. Nó hoạt động trên phía client, tương tác trực tiếp với người dùng trên trình duyệt.

JS mang lại nhiều ưu điểm như sau:

 JS cho phép tương tác với người dùng trên phía client và tách biệt giữa các client. Ví dụ, nếu có hai người sử dụng trình duyệt khác nhau, JS sẽ xử lý mỗi phiên làm việc riêng biệt cho từng người dùng mà khơng ảnh hưởng lẫn nhau. JS có thể hoạt động trên nhiều nền tảng khác nhau, bao gồm Windows, MacOS

và các hệ điều hành di động.

 JS là ngôn ngữ dễ tiếp cận và học, không yêu cầu cài đặt phần mềm phức tạp.Tuy nhiên, JS cũng có một số nhược điểm:

 Vì mã nguồn JS dễ bị lộ, nên có thể dễ bị tấn cơng từ phía hacker.

 JS có thể được sử dụng để thực thi mã độc trên máy tính của người dùng. Sự triển khai của JS có thể khác nhau trên các thiết bị, dẫn đến sự không đồng

nhất trong việc hiển thị và chạy các chức năng.

<b>2.2.4. PHP/Laravel</b>

</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="25">

PHP (viết tắt của Hypertext Preprocessor) là một ngôn ngữ lập trình phía server được sử dụng chủ yếu để phát triển ứng dụng web động. Nó có khả năng tạo nội dung động và tương tác trực tiếp với cơ sở dữ liệu. PHP là một ngôn ngữ mã nguồn mở, tức là mãnguồn của nó có thể được sửa đổi và tùy chỉnh theo nhu cầu của từng dự án cụ thể.

<b>Laravel hiện là PHP Framework phổ biến hàng đầu trên thế giới. Laravel càng ngày</b>

càng phát triển và được sử dụng vào nhiều dự án Web lớn nhỏ.

Laravel là PHP Web Framework miễn phí, mã nguồn mở, được tạo bởi TaylorOtwell và dành cho việc phát triển các ứng dụng web theo mơ hình kiến trúc mơ hìnhMVC và dựa trên Symfony PHP Framework. Một số tính năng của Laravel như là sửdụng hệ thống đóng gói module, quản lý package (Composer), hỗ trợ nhiều hệ quản trịCSDL quan hệ (MySQL, MariaDB, SQLite, PostgreSQL,…), các tiện ích hỗ trợ triểnkhai và bảo trì ứng dụng.

<b>2.2.5. Mysql</b>

MySQL là một hệ quản trị cơ sở dữ liệu mã nguồn mở, tức là một hệ quản trị cơ sở dữ liệu quan hệ được sử dụng rộng rãi trên tồn cầu. Nó được thiết kế dựa trên mơ hình Client-Server, trong đó máy khách (client) và máy chủ (server) tương tác với nhau.MySQL cho phép lưu trữ, truy xuất và quản lý dữ liệu trong một mơi trường quan hệ. Nó hỗ trợ ngơn ngữ truy vấn SQL (Structured Query Language) để thực hiện các thao tác truy xuất và cập nhật dữ liệu trong cơ sở dữ liệu. MySQL có thể được sử dụng để xây dựng và quản lý các ứng dụng web, hệ thống quản lý nội dung, hệ thống e-commerce và nhiều ứng dụng khác.

Đặc điểm nổi bật của MySQL bao gồm khả năng xử lý dữ liệu nhanh, khả năng mở rộng linh hoạt, tính bảo mật cao và khả năng tương thích với các nền tảng khác nhau.

</div><span class="text_page_counter">Trang 26</span><div class="page_container" data-page="26">

Nó cung cấp các tính năng như quản lý người dùng, giao dịch, kiểm soát truy cập và sao lưu/ phục hồi dữ liệu.

MySQL đã trở thành một công cụ quan trọng trong lĩnh vực phát triển phần mềm và quản lý cơ sở dữ liệu. Sự phổ biến của nó chủ yếu đến từ tính đơn giản, hiệu suất cao và tính linh hoạt trong triển khai. Với MySQL, người dùng có thể xây dựng và quản lýcơ sở dữ liệu một cách dễ dàng và hiệu quả.

<b>2.2.6. Các thư viện khác được sử dụng trong đề tài</b>

 Laravel Dompdf Laravel Snappy DomPDF Laravel Scout Laravolt avatar Maatwebsite Excel Chatify

 Pusher Toastr JS

<b>CHƯƠNG 2: PHÂN TÍCH, THIẾT KẾ HỆ THỐNG</b>

<b>2.1.Đặc tả phần mềm</b>

Với ưu điểm của hình thức thi trắc nghiệm như tính khách quan, chính xác và tiện lợi, hệ thống giúp đảm bảo sự cơng bằng và trung thực trong q trình đánh giá trình độ của các thí sinh. Bằng việc áp dụng cơng nghệ hiện đại, hệ thống giúp tối ưu hố quy trình thi, từ việc quản lý người dùng, quản lý câu hỏi và đề thi, đến việc tổ chức và

<b>xem kết quả của các kỳ thi.Việc “Xây dựng website thi trắc nghiệm trực tuyến cho Học Viện Nông Nghiệp Việt Nam” nhắm giải quyết các yêu cầu chức năng sau:Admin:</b>

 Quản lý tài khoản người dùng.

 Quản lý danh sách thông tin các Khoa trong trường.

<b>Giảng viên:</b>

</div><span class="text_page_counter">Trang 27</span><div class="page_container" data-page="27">

 Quản lý lớp học và sinh viên trong lớp học.

 Tạo ngân hàng câu hỏi, có thể tham khảo câu hỏi từ giảng viên cùng khoa khác. Tạo đề thi và các chức năng như kích hoạt đề thi, tạo mật khẩu cho đề thi, kết

thúc đề thi, xem biểu đồ thống kê kết quả,…

 Thống kê kết quả bài thi, xuất file điểm dạng excel, pdf hoặc xem đáp án của từng thí sinh.

<b>Sinh viên:</b>

 Làm bài thi, hiển thị câu hỏi tuần tự hoặc ngẫu nhiên,  Hỗ trợ đánh dấu câu hỏi để xem lại sau.

 Tính tốn và hiển thị kết quả sau khi thí sinh hồn thành bài thi.

 Cho phép sinh viên xem kết quả của bài thi đã hoàn thành, cung cấp chi tiết số câu đúng, số câu sai và kết quả đạt được.

 Lưu trữ kết quả của mỗi thí sinh để phục vụ cho việc thống kê và đánh giá.Ngồi ra cần có một số chức năng cơ bản như đăng nhập, đăng xuất, quên mật khẩu, thay đổi thông tin người dung, chat real-time và an tồn về bảo mật thơng tin.

<b>2.2.Thiết kế chi tiết hệ thống</b>

<i><b>2.2.1 Sơ đồ UseCase</b></i>

<b>Use-Case tổng quát:</b>

</div><span class="text_page_counter">Trang 28</span><div class="page_container" data-page="28">

<i>Hình 2.1 Sơ đồ Use case tổng quát.</i>

<b>Sơ đồ Use-Case phân rã</b>

</div><span class="text_page_counter">Trang 29</span><div class="page_container" data-page="29">

<i>Hình 2.2 Sơ đồ Use case phân rã chức năng của Admin.</i>

</div><span class="text_page_counter">Trang 30</span><div class="page_container" data-page="30">

<i>Hình 2.3 Sơ đồ Use case phân rã chức năng của Giảng viên.</i>

</div><span class="text_page_counter">Trang 31</span><div class="page_container" data-page="31">

<i>Hình 2.4 Sơ đồ Use case phân rã chức năng của Sinh viên.</i>

<i>Hình 2.5 Sơ đồ Use case phân rã chức năng Đăng nhập.</i>

</div><span class="text_page_counter">Trang 32</span><div class="page_container" data-page="32">

<i>Hình 2.6 Sơ đồ Use case phân rã chức năng Thơng tin cá nhân.</i>

<i>Hình 2.7 Sơ đồ Use case phân rã chức năng Tìm kiếm.</i>

<i><b>2.2.2 Biểu đồ hoạt động, phân rã chức năng</b></i>

</div><span class="text_page_counter">Trang 33</span><div class="page_container" data-page="33">

<i><b>Bảng 2.1 Kịch bản use case đăng nhập </b></i>

Tên use case Đăng nhập

Tên Actor Admin, giảng viên, sinh viên

Mô tả Người dùng yêu cầu chức năng đăng nhập.Tiền điều kiện Người dùng có tài khoản trên hệ thống.

<b>Hành động tác nhânPhản ứng hệ thống</b>

1.Người dùng truy cập chứcnăng đăng nhập

1.1.Hệ thống hiển thị giao diện đăng nhập yêu cầunhập tài khoản và mật khẩu vào giao diện.

2.Người dùng nhập tàikhoản và mật khẩu rồi chọnđăng nhập

2.1.Hệ thống kiểm tra và xác thực thông tin, gánthông tin phiên đăng nhập, thông báo đăng nhập thànhcông và hiển thị giao diện.

Ngoại lệ Hệ thống thông báo lỗi yêu cầu đăng nhập lại.

</div><span class="text_page_counter">Trang 34</span><div class="page_container" data-page="34">

<i>Hình 2.8 Sơ đồ hoạt động đăng nhập.</i>

<i><b>Bảng 2.2 Kịch bản use case đăng xuất </b></i>

Tên use case Đăng xuất

Tên Actor Admin, giảng viên, sinh viên

Mô tả Người dùng muốn đăng xuất khỏi Hệthống thi trắc nghiệm.

Tiền điều kiện Người dùng đang đăng nhập.

<b>Hành động tác nhânPhản ứng hệ thống</b>

1.Người dùng truy cập giao diện đăng 1.1.Hệ thống hiển thị giao diện đăng xuất.

</div><span class="text_page_counter">Trang 35</span><div class="page_container" data-page="35">

<i><b>Bảng 2.3 Kịch bản use case quản lý khoa </b></i>

Tên use case Quản lý khoa

Mô tả Người dùng muốn thực hiện các chứcnăng quản lý thơng tin các khoa nhưthêm, sửa, xóa khoa.

Tiền điều kiện Người dùng có tài khoản trên hệ

</div><span class="text_page_counter">Trang 36</span><div class="page_container" data-page="36">

3.Người dùng muốn sửa Khoa, chọn khoacần sửa và nhận nút sửa, điền thông tin mớicủa Khoa và nhấn nút Lưu.

3.1.Hệ thống kiếm tra và xác thựcthông tin, hiển thị thông báo thànhcông hay thất bại.

4.Người dùng muốn xóa Khoa, chọn khoacần xóa và nhấn nút xóa.

4.1.Hệ thống xóa Khoa đó khỏi hệthống. Thơng báo thành công hoặcthất bại.

</div><span class="text_page_counter">Trang 37</span><div class="page_container" data-page="37">

<i>Hình 2.10 Sơ đồ hoạt động thêm mới khoa.</i>

</div><span class="text_page_counter">Trang 38</span><div class="page_container" data-page="38">

<i>Hình 2.12 Sơ đồ hoạt động xóa khoa.</i>

<i><b>Bảng 2.4 Kịch bản use case quản lý tài khoản </b></i>

Tên use case Quản lý tài khoản

Mô tả Người dùng muốn thực hiện cácchức năng quản lý thông tin tàikhoản.

Tiền điều kiện Người dùng có tài khoản trên hệthống và có quyền admin.

</div><span class="text_page_counter">Trang 39</span><div class="page_container" data-page="39">

thêm mới và nhập thông tin của người dùngmới.

thông tin, hiển thị thông báo thêmthành công hay thất bại.

3.Người dùng muốn sửa tài khoản, chọn tàikhoản cần sửa và nhận nút sửa, điền thông tinmới của tài khoản và nhấn nút Lưu.

3.1.Hệ thống kiếm tra và xác thựcthông tin, hiển thị thông báo thànhcông hay thất bại.

4.Người dùng muốn xóa tài khoản người dùng,chọn tài khoản cần xóa và nhấn nút xóa.

4.1.Hệ thống xóa tài khoản đó khỏihệ thống. Thơng báo thành cơnghoặc thất bại.

<i>Hình 2.13 Sơ đồ hoạt động thêm mới tài khoản.</i>

</div><span class="text_page_counter">Trang 40</span><div class="page_container" data-page="40">

<i>Hình 2.14 Sơ đồ hoạt động sửa tài khoản.</i>

<i>Hình 2.15 Sơ đồ hoạt động xóa tài khoản.</i>

</div>

×