Liên hệ ZALO 0353764719 hoặc GMAIL: 123docntcgmail.com để mua tài liệu với giá ưu đãi, GIẢM GIÁ 20 60% giá tài liệu Liên hệ ZALO 0353764719 hoặc GMAIL: 123docntcgmail.com để mua tài liệu với giá ưu đãi, GIẢM GIÁ 20 60% giá tài liệu
BỘ THÔNG TIN VÀ TRUYỀN THÔNG HỌ VÀ TÊN SINH VIÊN HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG - NGUYỄN THỊ HUYỀN ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Đề tài: “ Nghiên cứu, xây dựng hệ thống thi trực tuyến cho hình thức thi trắc nghiệm” LỚP Giảng viên hướng dẫn : TS Ngô Quốc Dũng D17HTTT3 Sinh viên thực hiện: Nguyễn Thị Huyền MSSV: B17DCCN329 Lớp: D17HTT3 Hệ: Đại học quy HÀ NỘI - 2022 BỘ THƠNG TIN VÀ TRUYỀN THƠNG HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG - ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Đề tài: “Nghiên cứu, xây dựng hệ thống thi trực tuyến cho hình thức thi trắc nghiệm” Giảng viên hướng dẫn: TS Ngô Quốc Dũng Sinh viên thực hiện: Nguyễn Thị Huyền MSSV: B17DCCN329 Lớp: D17HTTT3 Hệ: Đại học quy HÀ NỘI - 2022 Đồ án tốt nghiệp Đại học Lời cảm ơn NHẬN XÉT (Của giảng viên phản biện) …………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ……………………………………………………………………………………… Hà Nội, 01/2022 Giảng viên phản biện i Nguyễn Thị Huyền - B17DCCN329 Đồ án tốt nghiệp Đại học Lời cảm ơn NHẬN XÉT (Của giảng viên hướng dẫn) …………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ……………………………………………………………………………………… Hà Nội, 01/2022 Giảng viên hướng dẫn ii Nguyễn Thị Huyền - B17DCCN329 Đồ án tốt nghiệp Đại học Lời cảm ơn LỜI CẢM ƠN Em xin chân thành cảm ơn Khoa Công nghệ Thông tin 1, Học viện Công nghệ Bưu Viễn thơng tạo điều kiện tốt cho em thực đề tài Em xin chân thành cảm ơn Thầy Ngô Quốc Dũng, giảng viên trực tiếp hướng dẫn em, giúp em giải vấn đề, bảo em suốt thời gian thực đề tài Em xin gửi lời cảm ơn sâu sắc đến quý Thầy Cô Khoa Công nghệ Thơng tin tận tình giảng dạy, trang bị cho em kiến thức tảng quan trọng năm học vừa qua Em xin gửi lòng biết ơn sâu sắc đến Bố, Mẹ, anh chị bạn bè ủng hộ, giúp đỡ động viên em lúc khó khăn suốt thời gian học tập nghiên cứu Mặc dù em cố gắng hoàn thành đồ án phạm vi khả cho phép, chắn không tránh khỏi thiếu sót, kính mong cảm thơng tận tình bảo q Thầy Cơ bạn Sinh viên thực Nguyễn Thị Huyền iii Nguyễn Thị Huyền - B17DCCN329 Đồ án tốt nghiệp Đại học Mục lục MỤC LỤC MỤC LỤC iv DANH MỤC CÁC KÍ HIỆU VÀ CHỮ VIẾT TẮT vi DANH MỤC CÁC BẢNG DANH MỤC CÁC HÌNH VẼ MỞ ĐẦU 11 CHƯƠNG 1: KHẢO SÁT NGHIỆP VỤ 14 1.1 Đặt vấn đề 14 1.2 Tổng quan học thức thi 14 1.2.1 Thi tự luận 15 1.2.2 Thi vấn đáp 17 1.2.3 Thi trắc nghiệm 18 1.3 Xác định yêu cầu hệ thống: .20 1.3.1 Yêu cầu chức năng: 21 1.3.2 Yêu cầu phi chức 21 1.4 Sơ đồ luồng nghiệp vụ hệ thống 22 1.4.1 Đăng nhập 22 1.4.2 Quản lý khối kiến thức: .22 1.4.3 Quản lý ngân hàng câu hỏi .22 1.4.4 Quản lý đề thi 23 1.4.5 Sinh viên làm thi 23 CHƯƠNG 2: PHÂN TÍCH HỆ THỐNG 24 2.1 Các tác nhân hệ thống 24 2.2 Xác định mô tả ca sử dụng: 24 2.2.1 Admin: .24 2.2.2 Giảng viên: 28 2.2.3 Sinh viên: 32 iv Nguyễn Thị Huyền - B17DCCN329 Đồ án tốt nghiệp Đại học Mục lục 2.3 Biểu đồ ca sử dụng tổng quát 33 2.4 Kịch cho ca sử dụng .34 2.5 Xây dựng biểu đồ lớp 48 2.6 Thiết kế sở liệu: .49 2.7 Xây dựng lược đồ 50 CHƯƠNG 3: XÂY DỰNG, CÀI ĐẶT VÀ THỬ NGHIỆM HỆ THỐNG .54 3.1 Lựa chọn ngôn ngữ kiến trúc tổng quan hệ thống: 54 3.1.1 Ngôn ngữ lập trình JavaScript: 54 3.1.2 ReactJS Framework 54 3.1.3 NodeJS Framework 55 3.1.4 MongoDB 56 3.1.5 Mơ hình MVC 57 3.1.6 Kiến trúc tổng quan hệ thống .58 3.2 Cài đặt thử nghiệm 58 3.2.1 Các công cụ sử dụng: .58 3.2.2 Giao diện cho Admin, Giảng viên: 59 3.2.3 Giao diện sinh viên: 63 KẾT LUẬN 68 DANH MỤC TÀI LIỆU THAM KHẢO 69 v Nguyễn Thị Huyền - B17DCCN329 Đồ án tốt nghiệp Đại học Danh mục ký hiệu chữ viết tắt DANH MỤC CÁC KÍ HIỆU VÀ CHỮ VIẾT TẮT Chữ viết tắt Nghĩa tiếng Việt CSDL Cơ sở liệu Admin: Administrator Người quản trị hệ thống QLĐT Quản lý đào tạo vi Nguyễn Thị Huyền - B17DCCN329 Đồ án tốt nghiệp Đại học DANH MỤC CÁC BẢNG Bảng 2-1 Chức Admin 24 Bảng 2-2 Bảng danh sách chức giảng viên 28 Bảng 2-3 Bảng danh sách chức sinh viên 32 Bảng 2-4: Kịch thêm khối kiến thức 34 Bảng 2-5: Kịch chỉnh sửa khối kiến thức 35 Bảng 2-6: Kịch xóa khối kiến thức 35 Bảng 2-7: Kịch xem khối kiến thức 35 Bảng 2-8: Kịch xem câu hỏi 36 Bảng 2-9: Kịch thêm câu hỏi 37 Bảng 2-10: Kịch chỉnh sửa câu hỏi 38 Bảng 2-11: Xóa câu hỏi ngân hàng 39 Bảng 2-12: Kịch thêm đề thi 39 Bảng 2-13: Kịch xem danh sách đề thi 40 Bảng 2-14: Kịch chỉnh sửa đề thi 40 Bảng 2-15: Kịch xóa đề thi 41 Bảng 2-16: Kịch thêm cấu trúc đề thi 41 Bảng 2-17: Kịch duyệt đề thi 42 Bảng 2-18: Kịch từ chối đề thi 42 Bảng 2-19: Kịch chỉnh sửa cấu trúc đề thi 43 Bảng 2-20: Kịch xóa cấu trúc đề thi 43 Bảng 2-21: Kịch xem đề thi 43 Bảng 2-22: Kịch xem danh sách sinh viên chưa làm 44 Bảng 2-23: Kịch Export log 44 Bảng 2-24: Kịch xem danh sách sinh viên làm 45 Bảng 2-25: Kịch export thi 45 Bảng 2-26: Kịch export kết thi 46 Nguyễn Thị Huyền - B17DCCN329 Đồ án tốt nghiệp Đại học Bảng 2-28: Kịch đăng nhập 47 Bảng 2-29: Kịch đăng xuất 47 Bảng 2-30: Kịch sinh viên xem danh sách thi 48 Bảng 2-31: Kịch sinh viên làm nộp thi 48 Nguyễn Thị Huyền - B17DCCN329 Đồ án tốt nghiệp Đại học Danh mục tài liệu tham khảo Components công cụ phát triển Facebook Nó mắt cơng cụ JavaScript mã nguồn mở vào năm 2013 React tập trung vào mục tiêu hồn thành nhiệm vụ UI hiệu Nó phân loại thành kiểu “V” mơ hình MVC (Model-View-Controller) 3.1.3 NodeJS Framework NodeJS framework mã nguồn mở miễn phí thịnh hành ngày NodeJS tảng xây dựng V8 Javascript Engine – trình thông dịch Javascript xây dựng C++, sử dụng trình duyệt Chrome để thực thi Javascript Khi NodeJS chưa đời, Javascript dường sử dụng để viết script trình duyệt Với đời NodeJS, Javascript sử dụng để xử lý phía serverside Hình 3.2: Cách thức hoạt động NodeJS Ý tưởng Node js sử dụng non-blocking, hướng vào liệu thông qua tác vụ thời gian thực cách nhanh chóng Bởi vì, Node js có khả mở rộng nhanh chóng, khả xử lý số lượng lớn kết nối đồng thời thông lượng cao Nếu ứng dụng web truyền thống, request tạo luồng xử lý yêu cầu chiếm RAM hệ thống việc tài nguyên hệ thống sử dụng không hiệu Chính lẽ giải pháp mà Node js đưa sử dụng luồng đơn (Single-Threaded), kết hợp với non-blocking I/O để thực thi request, cho phép hỗ trợ hàng chục ngàn kết nối đồng thời 55 Nguyễn Thị Huyền - B17DCCN329 Đồ án tốt nghiệp Đại học Danh mục tài liệu tham khảo 3.1.4 MongoDB Trước tìm hiểu mongoDB cần hiểu khái niệm sở liệu phi quan hệ (NoSql): • NoSQL dạng CSDL mã nguồn mở viết tắt bởi: None-Relational SQL hay có nơi thường gọi Not-Only SQL • NoSQL phát triển Javascript Framework với kiểu liệu JSON dạng liệu theo kiểu key value • NoSQL đời mảnh vá cho khuyết điểm thiếu xót hạn chế mơ hình liệu quan hệ RDBMS (Relational Database Management System - Hệ quản trị sở liệu quan hệ) tốc độ, tính năng, khả mở rộng, • Với NoSQL bạn mở rộng liệu mà khơng lo tới việc tạo khóa ngoại, khóa chính, kiểm tra ràng buộc v.v • NoSQL bỏ qua tính tồn vẹn liệu transaction để đổi lấy hiệu suất nhanh khả mở rộng Hình 3.3: Logo MongoDB MongoDB hệ quản trị sở liệu mã nguồn mở, CSDL thuộc NoSql hàng triệu người sử dụng • MongoDB database hướng tài liệu (document), liệu lưu trữ document kiểu JSON thay vì dạng bảng CSDL quan hệ nên truy vấn nhanh 56 Nguyễn Thị Huyền - B17DCCN329 Đồ án tốt nghiệp Đại học • Danh mục tài liệu tham khảo Với CSDL quan hệ có khái niệm bảng, sở liệu quan hệ (như MySQL hay SQL Server ) sử dụng bảng để lưu liệu thì với MongoDB dùng khái niệm collection thay vì bảng • So với RDBMS thì MongoDB collection ứng với table, document ứng với row , MongoDB dùng document thay cho row RDBMS • Các collection MongoDB cấu trúc linh hoạt, cho phép liệu lưu trữ không cần tuân theo cấu trúc định • Thơng tin liên quan lưu trữ để truy cập truy vấn nhanh thông qua ngôn ngữ truy vấn MongoDB 3.1.5 Mơ hình MVC Hình 3.4: Mơ hình MVC Mơ hình MVC ( Model – View – Controller ) mơ hình phát triển mã nguồn tiếng phổ biến Mô hình lần đầu giới thiệu vào năm 1978 Trygve Reenskaug Thành phần mơ hình gồm phần : - Models : thành phần đại diện cho liệu hệ thống Đây thành phần mô tả liệu mà hệ thống lưu trữ, giúp hệ thống tương tác với sở liệu 57 Nguyễn Thị Huyền - B17DCCN329 Đồ án tốt nghiệp Đại học Danh mục tài liệu tham khảo - Views : thành phần xử lý việc thể liệu cho người dùng, nhận thị trực tiếp người dùng cuối - Controllers : thành phần nhận thị người dùng cuối, từ xử lý logic nghiệp vụ hệ thống trả lại kết cho người dùng cuối Controllers thành phần trung gian Views Models 3.1.6 Kiến trúc tổng quan hệ thống Hình 3.5: Kiến trúc tổng quan hệ thống Hệ thống triển khai dựa mơ hình MVC sử dụng Framework ReactJS NodeJS Trong ReactJS đóng vai trị View triển khai phía client, NodeJS đóng vai trị Model Controller triển khai phía server Clientside Serverside tương tác với thông qua API Khi người dùng sử dụng trình duyệt để truy cập vào trang web, giao diện trang web render ReactJS Khi người dùng tác động vào hệ thống thông qua thành phần giao diện website yêu cầu liệu tác động đến liệu hệ thống, ReactJS gửi request HTTP tới server xây dựng tảng NodeJS thông qua API xây dựng phía serverside 3.2 Cài đặt thử nghiệm 3.2.1 Các công cụ sử dụng: Các ngơn ngữ lập trình, Framework, cơng cụ hỗ trợ để triển khai hệ thống thực tế: ✓ IDE: VisualStudio ✓ Hệ điều hành Window 10, Ubuntu ✓ Visual Paradigm Community Version 58 Nguyễn Thị Huyền - B17DCCN329 Đồ án tốt nghiệp Đại học Danh mục tài liệu tham khảo 3.2.2 Giao diện cho Admin, Giảng viên: - Danh sách lớp theo kỳ học: Ở để phục vụ cho đồ án, em lấy lớp để chạy thử nghiệm Hình 3.6 Danh sách lớp học phần - Danh sách lớp lấy trực tiếp từ hệ thống S-link: Hình 3.7 Danh sách hệ thống PTIT S-Link - Admin/Giảng viên thêm sửa xóa khối kiến thức theo học phần (ở em tạo khối kiến thức thi thử thi thức học phần lập trình web): 59 Nguyễn Thị Huyền - B17DCCN329 Đồ án tốt nghiệp Đại học Danh mục tài liệu tham khảo Hình 3.8 Giao diện quản lý khối kiến thức - Admin/giảng viên quản trị câu hỏi sau học phần cập nhật khối kiến thức: Hình 3.9 Quản Lý khối kiến thức - Thêm câu hỏi: Hình 3.10 Thêm câu hỏi 60 Nguyễn Thị Huyền - B17DCCN329 Đồ án tốt nghiệp Đại học - Danh mục tài liệu tham khảo Sửa câu hỏi: Hình 3.11 Giao diện sửa câu hỏi - Sau thêm câu hỏi Admin/Giảng viên tạo ngân hàng đề dựa câu hỏi tạo: Admin/Giảng viên thêm đề thi: Hình 3.12 Giao diện thêm đề thi 61 Nguyễn Thị Huyền - B17DCCN329 Đồ án tốt nghiệp Đại học - Danh mục tài liệu tham khảo Sau thêm đề, giao diện danh sách đề thi Admin tạo đề thi thì đề tự động duyệt giảng viên tạo đề thì đề trạng thái chờ duyệt: Hình 3.13 Quản lý danh sách đề thi - Admin/giảng viên xem danh sách sinh viên chưa làm bài: Hình 3.14 Quản lý danh sách sinh viên chưa làm - Xem danh sách sinh viên làm bài: 62 Nguyễn Thị Huyền - B17DCCN329 Đồ án tốt nghiệp Đại học Danh mục tài liệu tham khảo Hình 3.15 Danh sách sinh viên làm 3.2.3 Giao diện sinh viên: - Giao diện thí sinh đăng nhập: Hình 3.16 Giao diện đăng nhập 63 Nguyễn Thị Huyền - B17DCCN329 Đồ án tốt nghiệp Đại học - Danh mục tài liệu tham khảo Giao diện thí sinh xem học phần: Hình 3.17 Giao diện xem học phần - Giao diện sinh viên xem thi: Hình 3.18 Giao diện xem lại thi - Giao diện sinh viên làm thi, sinh viên làm hệ thống ghi chép lại hành vi đáng ngờ: 64 Nguyễn Thị Huyền - B17DCCN329 Đồ án tốt nghiệp Đại học Danh mục tài liệu tham khảo Hình 3.19 Giao diện thi thí sinh - Sau làm xong, sinh viên chọn nút nộp để hoàn thành thi Giao diện nộp thành cơng: Hình 3.20 Giao diện thơng báo hồn thành 65 Nguyễn Thị Huyền - B17DCCN329 Đồ án tốt nghiệp Đại học Danh mục tài liệu tham khảo Hình ảnh trình thử nghiệm sản phẩm cho lớp sở liệu lập trình web thầy Dương Trần Đức: Hình 3.21 Danh sách sinh viên môn sở liệu Hình 3.22 Danh sách sinh viên chưa làm 66 Nguyễn Thị Huyền - B17DCCN329 Đồ án tốt nghiệp Đại học Danh mục tài liệu tham khảo Hình 3.23 Danh sách sinh viên hoàn thành thi 67 Nguyễn Thị Huyền - B17DCCN329 Đồ án tốt nghiệp Đại học Danh mục tài liệu tham khảo KẾT LUẬN Các kết đạt Trong thời gian nghiên cứu thực đồ án, em hoàn thành nội dung sau: ✓ Hiểu quy trình xây dựng phát triển dự án phần mềm: khảo sát thu thập yêu cầu, phân tích hệ thống, thiết kế hệ thống, cài đặt hệ thống ✓ Học thêm kiến thức công nghệ như: Framework ReactJS, AntDesign… ✓ Website đáp ứng yêu cầu chức phi chức đặt ban đầu Hạn chế tồn Bên cạnh kết đạt được, em hạn chế đồ án mình: ✓ Quá trình phân tích thiết kế chưa hồn tồn xác ✓ Chưa tối ưu hiệu hệ thống ✓ Hệ thống nhiều lỗi tiềm ẩn chưa phát khắc phục ✓ Với loại câu hỏi mà đáp án dạng phức tạp thì chưa hỗ trợ ✓ Phần mềm giám sát dừng mức Định hướng tương lai ✓ Tìm khắc phục lỗi tiềm ẩn ✓ Tối ưu hóa hiệu hệ thống ✓ Phát triển thêm số tính : Các loại câu hỏi mới, hệ thống giám sát kiểm tra nhiều loại giám sát hơn, … 68 Nguyễn Thị Huyền - B17DCCN329 Đồ án tốt nghiệp Đại học Danh mục tài liệu tham khảo DANH MỤC TÀI LIỆU THAM KHẢO [1] PGS.TS Trần Đình Quế, Phân tích thiết kế hệ thống thơng tin, Học viện Cơng nghệ Bưu Viễn thơng, 2014 [2] TS Nguyễn Đình Hóa, Slide mơn Cơ sở liệu, Học viện Cơng nghệ Bưu Viễn thơng [3] React – A JavaScript library for building user interfaces (reactjs.org) [4] Ant Design - The world's second most popular React UI framework [5] UmiJS - Extensible enterprise-level front-end application framework 69 Nguyễn Thị Huyền - B17DCCN329