1. Trang chủ
  2. » Cao đẳng - Đại học

ĐỒ ÁN THIẾT KẾ WEBSITE HỖ TRỢ NỘP VÀ CHẤM BÀI THÍ NGHIỆM ONLINE

63 2 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Thiết kế website hỗ trợ nộp và chấm bài thí nghiệm online
Người hướng dẫn ThS.Vũ Song Tùng, Hà Huy Đông, Đỗ Toàn Thắng
Trường học Trường Đại học Bách Khoa Hà Nội
Chuyên ngành Khoa học Máy tính và Công nghệ Thông tin
Thể loại đồ án tốt nghiệp đại học
Năm xuất bản 2019
Thành phố Hà Nội
Định dạng
Số trang 63
Dung lượng 1,95 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

ĐỒ ÁN THIẾT KẾ WEBSITE HỖ TRỢ NỘP VÀ CHẤM BÀI THÍ NGHIỆM ONLINE Nội dung chính của đề tài là trình bày các vấn đề liên quan hệ thống thí nghiệm online, sau đó đưa ra phương hướng giải quyết vấn đề. Đồ án được viết dựa trên nền tảng của ASP.NET MVC và cơ sở dữ liệu MongoDB. Nội dung chi tiết được trình bày qua 3 phần của báo cáo: Chương 1. Tổng quan hệ thống: Chương này sẽ giới thiệu tổng quan về hệ thống thí nghiệm online, mô tả hệ thống và các tính năng của hệ thống, đồng thời nêu ra lý thuyết về ASP.NET MVC và MongoDB, so sánh giữa SQL và NoSQL, giữa MongoDB và MySQL để thấy những ưu điểm rõ rệt của MongoDB Chương 2. Phân tích và thiết kế hệ thống: Trong chương này sẽ trình bày chi tiết các sơ đồ cần có của hệ thống, bao gồm: sơ đồ chức năng, các sơ đồ usecase và các biểu đồ hoạt động, đồng thời cũng nêu ra thuật toán xủa lý để đưa dữ liệu lên hệ thống. Chương 3. Kết quả đạt được và thử nghiệm: trình bày cơ bản về chức năng của hệ thống thông qua giao diện

Trang 1

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

VIỆN ĐIỆN TỬ - VIỄN THÔNG

ĐỒ ÁN

TỐT NGHIỆP ĐẠI HỌC

Đề tài:

THIẾT KẾ WEBSITE HỖ TRỢ NỘP VÀ CHẤM BÀI THÍ NGHIỆM ONLINE

Sinh viên thực hiện: Hà Huy Đông Lớp ĐT04 K59

Đỗ Toàn Thắng Lớp ĐT05 K59

Giảng viên hướng dẫn: ThS.Vũ Song Tùng

Hà Nội, 6-2019

Trang 3

ĐÁNH GIÁ QUYỂN ĐỒ ÁN TỐT NGHIỆP

(Dùng cho giảng viên hướng dẫn)

Tên giảng viên đánh giá:

Họ và tên Sinh viên: MSSV:

Tên đồ án:

Chọn các mức điểm phù hợp cho sinh viên trình bày theo các tiêu chí dưới đây:

Rất kém (1); Kém (2); Đạt (3); Giỏi (4); Xuất sắc (5)

Có sự kết hợp giữa lý thuyết và thực hành (20)

1

Nêu rõ tính cấp thiết và quan trọng của đề tài, các vấn đề và các giả thuyết

(bao gồm mục đích và tính phù hợp) cũng như phạm vi ứng dụng của đồ

án

1 2 3 4 5

2 Cập nhật kết quả nghiên cứu gần đây nhất (trong nước/quốc tế) 1 2 3 4 5

3 Nêu rõ và chi tiết phương pháp nghiên cứu/giải quyết vấn đề 1 2 3 4 5

4 Có kết quả mô phỏng/thưc nghiệm và trình bày rõ ràng kết quả đạt được 1 2 3 4 5

Có khả năng phân tích và đánh giá kết quả (15)

5 Kế hoạch làm việc rõ ràng bao gồm mục tiêu và phương pháp thực hiện dựa trên kết quả nghiên cứu lý thuyết một cách có hệ thống 1 2 3 4 5

6 Kết quả được trình bày một cách logic và dễ hiểu, tất cả kết quả đều được

7 Trong phần kết luận, tác giả chỉ rõ sự khác biệt (nếu có) giữa kết quả đạt được và mục tiêu ban đầu đề ra đồng thời cung cấp lập luận để đề xuất

hướng giải quyết có thể thực hiện trong tương lai

1 2 3 4 5

Kỹ năng viết quyển đồ án (10)

8

Đồ án trình bày đúng mẫu quy định với cấu trúc các chương logic và đẹp

mắt (bảng biểu, hình ảnh rõ ràng, có tiêu đề, được đánh số thứ tự và được

giải thích hay đề cập đến trong đồ án, có căn lề, dấu cách sau dấu chấm,

dấu phẩy v.v), có mở đầu chương và kết luận chương, có liệt kê tài liệu

tham khảo và có trích dẫn đúng quy định

1 2 3 4 5

9 Kỹ năng viết xuất sắc (cấu trúc câu chuẩn, văn phong khoa học, lập luận

logic và có cơ sở, từ vựng sử dụng phù hợp v.v.) 1 2 3 4 5

Thành tựu nghiên cứu khoa học (5) (chọn 1 trong 3 trường hợp)

10a

Có bài báo khoa học được đăng hoặc chấp nhận đăng/đạt giải SVNC khoa

học giải 3 cấp Viện trở lên/các giải thưởng khoa học (quốc tế/trong nước)

từ giải 3 trở lên/ Có đăng ký bằng phát minh sáng chế

5

10b

Được báo cáo tại hội đồng cấp Viện trong hội nghị sinh viên nghiên cứu

khoa học nhưng không đạt giải từ giải 3 trở lên/Đạt giải khuyến khích

trong các kỳ thi quốc gia và quốc tế khác về chuyên ngành như TI contest

2 10c Không có thành tích về nghiên cứu khoa học 0

Điểm tổng quy đổi về thang 10

Trang 4

Nhận xét khác (về thái độ và tinh thần làm việc của sinh viên)

Ngày: … / … / 20…

Người nhận xét

(Ký và ghi rõ họ tên)

Trang 5

ĐÁNH GIÁ QUYỂN ĐỒ ÁN TỐT NGHIỆP

(Dùng cho cán bộ phản biện)

Giảng viên đánh giá:

Họ và tên sinh viên: MSSV:

Tên đồ án:

Chọn các mức điểm phù hợp cho sinh viên trình bày theo các tiêu chí dưới đây: Rất kém (1); Kém (2); Đạt (3); Giỏi (4); Xuất sắc (5) Có sự kết hợp giữa lý thuyết và thực hành (20) 1 Nêu rõ tính cấp thiết và quan trọng của đề tài, các vấn đề và các giả thuyết (bao gồm mục đích và tính phù hợp) cũng như phạm vi ứng dụng của đồ án 1 2 3 4 5 2 Cập nhật kết quả nghiên cứu gần đây nhất (trong nước/quốc tế) 1 2 3 4 5 3 Nêu rõ và chi tiết phương pháp nghiên cứu/giải quyết vấn đề 1 2 3 4 5 4 Có kết quả mô phỏng/thưc nghiệm và trình bày rõ ràng kết quả đạt được 1 2 3 4 5 Có khả năng phân tích và đánh giá kết quả (15) 5 Kế hoạch làm việc rõ ràng bao gồm mục tiêu và phương pháp thực hiện dựa trên kết quả nghiên cứu lý thuyết một cách có hệ thống 1 2 3 4 5 6 Kết quả được trình bày một cách logic và dễ hiểu, tất cả kết quả đều được phân tích và đánh giá thỏa đáng 1 2 3 4 5 7 Trong phần kết luận, tác giả chỉ rõ sự khác biệt (nếu có) giữa kết quả đạt được và mục tiêu ban đầu đề ra đồng thời cung cấp lập luận để đề xuất hướng giải quyết có thể thực hiện trong tương lai 1 2 3 4 5 Kỹ năng viết quyển đồ án (10) 8 Đồ án trình bày đúng mẫu quy định với cấu trúc các chương logic và đẹp mắt (bảng biểu, hình ảnh rõ ràng, có tiêu đề, được đánh số thứ tự và được giải thích hay đề cập đến trong đồ án, có căn lề, dấu cách sau dấu chấm, dấu phẩy v.v), có mở đầu chương và kết luận chương, có liệt kê tài liệu tham khảo và có trích dẫn đúng quy định 1 2 3 4 5 9 Kỹ năng viết xuất sắc (cấu trúc câu chuẩn, văn phong khoa học, lập luận logic và có cơ sở, từ vựng sử dụng phù hợp v.v.) 1 2 3 4 5 Thành tựu nghiên cứu khoa học (5) (chọn 1 trong 3 trường hợp) 10a Có bài báo khoa học được đăng hoặc chấp nhận đăng/đạt giải SVNC khoa học giải 3 cấp Viện trở lên/các giải thưởng khoa học (quốc tế/trong nước) từ giải 3 trở lên/ Có đăng ký bằng phát minh sáng chế 5 10b Được báo cáo tại hội đồng cấp Viện trong hội nghị sinh viên nghiên cứu khoa học nhưng không đạt giải từ giải 3 trở lên/Đạt giải khuyến khích trong các kỳ thi quốc gia và quốc tế khác về chuyên ngành như TI contest 2 10c Không có thành tích về nghiên cứu khoa học 0 Điểm tổng /50 Điểm tổng quy đổi về thang 10 Nhận xét khác của cán bộ phản biện

Trang 6

Ngày: … / … / 20…

Người nhận xét

(Ký và ghi rõ họ tên)

Trang 7

ĐÁNH GIÁ QUYỂN ĐỒ ÁN TỐT NGHIỆP

(Dùng cho giảng viên hướng dẫn)

Tên giảng viên đánh giá:

Họ và tên Sinh viên: MSSV:

Tên đồ án:

Chọn các mức điểm phù hợp cho sinh viên trình bày theo các tiêu chí dưới đây: Rất kém (1); Kém (2); Đạt (3); Giỏi (4); Xuất sắc (5) Có sự kết hợp giữa lý thuyết và thực hành (20) 1 Nêu rõ tính cấp thiết và quan trọng của đề tài, các vấn đề và các giả thuyết (bao gồm mục đích và tính phù hợp) cũng như phạm vi ứng dụng của đồ án 1 2 3 4 5 2 Cập nhật kết quả nghiên cứu gần đây nhất (trong nước/quốc tế) 1 2 3 4 5 3 Nêu rõ và chi tiết phương pháp nghiên cứu/giải quyết vấn đề 1 2 3 4 5 4 Có kết quả mô phỏng/thưc nghiệm và trình bày rõ ràng kết quả đạt được 1 2 3 4 5 Có khả năng phân tích và đánh giá kết quả (15) 5 Kế hoạch làm việc rõ ràng bao gồm mục tiêu và phương pháp thực hiện dựa trên kết quả nghiên cứu lý thuyết một cách có hệ thống 1 2 3 4 5 6 Kết quả được trình bày một cách logic và dễ hiểu, tất cả kết quả đều được phân tích và đánh giá thỏa đáng 1 2 3 4 5 7 Trong phần kết luận, tác giả chỉ rõ sự khác biệt (nếu có) giữa kết quả đạt được và mục tiêu ban đầu đề ra đồng thời cung cấp lập luận để đề xuất hướng giải quyết có thể thực hiện trong tương lai 1 2 3 4 5 Kỹ năng viết quyển đồ án (10) 8 Đồ án trình bày đúng mẫu quy định với cấu trúc các chương logic và đẹp mắt (bảng biểu, hình ảnh rõ ràng, có tiêu đề, được đánh số thứ tự và được giải thích hay đề cập đến trong đồ án, có căn lề, dấu cách sau dấu chấm, dấu phẩy v.v), có mở đầu chương và kết luận chương, có liệt kê tài liệu tham khảo và có trích dẫn đúng quy định 1 2 3 4 5 9 Kỹ năng viết xuất sắc (cấu trúc câu chuẩn, văn phong khoa học, lập luận logic và có cơ sở, từ vựng sử dụng phù hợp v.v.) 1 2 3 4 5 Thành tựu nghiên cứu khoa học (5) (chọn 1 trong 3 trường hợp) 10a Có bài báo khoa học được đăng hoặc chấp nhận đăng/đạt giải SVNC khoa học giải 3 cấp Viện trở lên/các giải thưởng khoa học (quốc tế/trong nước) từ giải 3 trở lên/ Có đăng ký bằng phát minh sáng chế 5 10b Được báo cáo tại hội đồng cấp Viện trong hội nghị sinh viên nghiên cứu khoa học nhưng không đạt giải từ giải 3 trở lên/Đạt giải khuyến khích trong các kỳ thi quốc gia và quốc tế khác về chuyên ngành như TI contest 2 10c Không có thành tích về nghiên cứu khoa học 0 Điểm tổng /50 Điểm tổng quy đổi về thang 10 Nhận xét khác (về thái độ và tinh thần làm việc của sinh viên)

Trang 8

Ngày: … / … / 20…

Người nhận xét

(Ký và ghi rõ họ tên)

Trang 9

ĐÁNH GIÁ QUYỂN ĐỒ ÁN TỐT NGHIỆP

(Dùng cho cán bộ phản biện)

Giảng viên đánh giá:

Họ và tên sinh viên: MSSV:

Tên đồ án:

Chọn các mức điểm phù hợp cho sinh viên trình bày theo các tiêu chí dưới đây: Rất kém (1); Kém (2); Đạt (3); Giỏi (4); Xuất sắc (5) Có sự kết hợp giữa lý thuyết và thực hành (20) 1 Nêu rõ tính cấp thiết và quan trọng của đề tài, các vấn đề và các giả thuyết (bao gồm mục đích và tính phù hợp) cũng như phạm vi ứng dụng của đồ án 1 2 3 4 5 2 Cập nhật kết quả nghiên cứu gần đây nhất (trong nước/quốc tế) 1 2 3 4 5 3 Nêu rõ và chi tiết phương pháp nghiên cứu/giải quyết vấn đề 1 2 3 4 5 4 Có kết quả mô phỏng/thưc nghiệm và trình bày rõ ràng kết quả đạt được 1 2 3 4 5 Có khả năng phân tích và đánh giá kết quả (15) 5 Kế hoạch làm việc rõ ràng bao gồm mục tiêu và phương pháp thực hiện dựa trên kết quả nghiên cứu lý thuyết một cách có hệ thống 1 2 3 4 5 6 Kết quả được trình bày một cách logic và dễ hiểu, tất cả kết quả đều được phân tích và đánh giá thỏa đáng 1 2 3 4 5 7 Trong phần kết luận, tác giả chỉ rõ sự khác biệt (nếu có) giữa kết quả đạt được và mục tiêu ban đầu đề ra đồng thời cung cấp lập luận để đề xuất hướng giải quyết có thể thực hiện trong tương lai 1 2 3 4 5 Kỹ năng viết quyển đồ án (10) 8 Đồ án trình bày đúng mẫu quy định với cấu trúc các chương logic và đẹp mắt (bảng biểu, hình ảnh rõ ràng, có tiêu đề, được đánh số thứ tự và được giải thích hay đề cập đến trong đồ án, có căn lề, dấu cách sau dấu chấm, dấu phẩy v.v), có mở đầu chương và kết luận chương, có liệt kê tài liệu tham khảo và có trích dẫn đúng quy định 1 2 3 4 5 9 Kỹ năng viết xuất sắc (cấu trúc câu chuẩn, văn phong khoa học, lập luận logic và có cơ sở, từ vựng sử dụng phù hợp v.v.) 1 2 3 4 5 Thành tựu nghiên cứu khoa học (5) (chọn 1 trong 3 trường hợp) 10a Có bài báo khoa học được đăng hoặc chấp nhận đăng/đạt giải SVNC khoa học giải 3 cấp Viện trở lên/các giải thưởng khoa học (quốc tế/trong nước) từ giải 3 trở lên/ Có đăng ký bằng phát minh sáng chế 5 10b Được báo cáo tại hội đồng cấp Viện trong hội nghị sinh viên nghiên cứu khoa học nhưng không đạt giải từ giải 3 trở lên/Đạt giải khuyến khích trong các kỳ thi quốc gia và quốc tế khác về chuyên ngành như TI contest 2 10c Không có thành tích về nghiên cứu khoa học 0 Điểm tổng /50 Điểm tổng quy đổi về thang 10 Nhận xét khác của cán bộ phản biện

Trang 10

Ngày: … / … / 20…

Người nhận xét

(Ký và ghi rõ họ tên)

Trang 11

Lời nói đầu

Từ xưa đến nay, nhân loại đã không ngừng học hỏi, tìm tòi và nghiên cứu để tạo

ra những sản phẩm nhằm phục vụ cho sinh hoạt hằng ngày hay phục vụ cho mục đích nghiên cứu Cùng với sự phát triển nhanh của công nghệ, hàng loạt ứng dụng được nghiên cứu và đưa vào sử dụng Không chỉ giúp khắc phục các hạn chế về mặt thời gian, không gian, nó còn được xem là trợ thủ đắc lực để chúng ta làm việc nhanh, hiệu quả và chính xác

Qua những trải nghiệm thực tế suốt quá trình học tập tại trường Đại học Bách Khoa Hà Nội, kèm theo đó là mong muốn được học tập, nghiên cứu và vận dụng kiến

thức đã được học, chúng em đã lựa chọn đề tài:“ Thiết kế website hỗ trợ nộp và chấm bài thí nghiệm online ” để làm đồ án tôt nghiệp của mình Với những chức năng mà hệ

thống mang lại, nó có thể giúp đỡ các bạn sinh viên trong quá trình học tập, cũng như các thầy cô làm việc hiệu quả hơn

Chúng em xin gửi lời cảm ơn chân thành tới ThS Vũ Song Tùng, Viện Điện tử - Viễn thông, trường Đại học Bách Khoa Hà Nội đã định hướng nghiên cứu, động viên và hướng dẫn tận tình và tạo điều kiện tốt nhất cho chúng em trong suốt quá trình thực hiện

Chúng em xin chân thành cảm ơn!

Hà Nội, ngày 09 tháng 06 năm 2019

Trang 12

LỜI CAM ĐOAN

Chúng tôi là Hà Huy Đông, mã số sinh viên 20141062, sinh viên lớp điện tử 4, khóa K59; Đỗ Toàn Thắng, mã số sinh viên 20144184, sinh viên lớp điện tử 5, khóa K59 Người hướng dẫn là ThS. Vũ Song Tùng Chúng tôi xin cam đoan toàn bộ nội

dung được trình bày trong đồ án Thiết kế website hỗ trợ nộp và chấm bài thí nghiệm online là kết quả quá trình tìm hiểu và nghiên cứu của chúng tôi Các kết quả được nêu trong đồ án là hoàn toàn trung thực, phản ánh đúng kết quả thực tế Mọi thông tin trích dẫn đều tuân thủ các quy định về sở hữu trí tuệ; các tài liệu tham khảo được liệt kê rõ ràng Chúng tôi xin chịu hoàn toàn trách nhiệm với những nội dung được viết trong đồ án này

Hà Nội, ngày 09 tháng 06 năm 2019

Người cam đoan

Hà Huy Đông Đỗ Toàn Thắng

Trang 13

Mục lục

Danh mục ký hiệu và chữ viết tắt i

Danh mục hình vẽ ii

Danh mục bảng biểu iv

ABSTRACT vi

Phần mở đầu 1

Đặt vấn đề 1

Mục đích nghiên cứu 1

Phương pháp nghiên cứu 1

Chương 1 Tổng quan hệ thống 3

1.1 Tổng quan 3

1.1.1 Mô tả hệ thống và các hoạt động trên hệ thống 3

1.1.2 Ưu điểm so với hoạt động thí nghiệm truyền thống 5

1.1.3 Các tính năng hỗ trợ bài thí nghiệm 5

1.2 Cơ sở lý thuyết 6

1.2.1 Giới thiệu về ASP.NET MVC 6

1.2.2 Giới thiệu về NoSQL và MongoDB 10

1.3 Kết luận 16

Chương 2 Phân tích và thiết kế hệ thống 17

2.1 Phân tích về hệ thống thí nghiệm online 17

2.1.1 Sơ đồ phân cấp chức năng 17

2.1.2 Sơ đồ Usecase 18

2.1.3 Biểu đồ hoạt động 22

2.2 Một số thuật toán được sử dụng 29

2.2.1 Thuật toán tạo bài tập 29

2.2.2 Thuật toán chuẩn hóa họ tên 33

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

2.3.1 Thiết kế cơ sở dữ liệu theo cấu trúc SQL 34

2.3.2 Thiết kế cơ sở dữ liệu theo cấu trúc NoSQL 34

2.3.3 So sánh 2 phương pháp thiết kế cơ sở dữ liệu 35

2.4 Kết luận 36

Trang 14

Chương 3 Kết quả đạt được và kiểm thử 37

3.1 Một số hình ảnh giao diện 37

3.2 Kết luận 41

Kết luận 42

Danh mục tài liệu tham khảo 43

Trang 15

i

Danh mục ký hiệu và chữ viết tắt

MVC Model-View-Controller Mẫu kiến trúc phần mềm để tạo lập

giao diện người dùng trên máy tính

SQL Structured Query Language Ngôn ngữ truy vấn cấu trúc

NoSQL Non Structured Query

Language

Ngôn ngữ truy vấn phi cấu trúc

XML eXtensible Markup Language Ngôn ngữ đánh dấu mở rộng

JSON JavaScript Object Notation Kiểu dữ liệu mở trong Javascript có

dạng text

dạng nhị phân RDBMS Relational Database

Management System

Hệ quản trị cơ sở dữ liệu quan hệ

Trang 16

ii

Danh mục hình vẽ

Hình 1 1 Mô hình tổng quan hệ thống 5

Hình 1 2 Các mô hình lập trình web 7

Hình 1 3 Mô hình MVC 7

Hình 1 4 Sự phát triển của ASP 8

Hình 1 5 ASP.NET với Web Forms và MVC 8

Hình 1 6 Sự phát triển của ASP.NET MVC 9

Hình 1 7 Mô phỏng cơ chế hoạt động của ASP.NET MVC 10

Hình 1 8 Sự gia tăng của dữ liệu 11

Hình 1 9 Tỉ lệ sử dụng của các hệ quản trị cơ sở dữ liệu 14

Hình 1 10 MongoDB 14

Hình 2 1 Sơ đồ chức năng hệ thống………17

Hình 2 2 Usecase đăng nhập 18

Hình 2 3 Usecase quản lý danh sách 19

Hình 2 4 Usecase soạn thảo thí nghiệm 20

Hình 2 5 Usecase làm thí nghiệm 21

Hình 2 6 Biểu đồ đăng nhập 23

Hình 2 7 Biểu đồ lập danh sách sinh viên 24

Hình 2 8 Biểu đồ hoạt động thêm giáo viên 25

Hình 2 9 Biểu đồ lập danh sách môn học 26

Hình 2 10 Biểu đồ kiểm tra kết quả thí nghiệm 27

Hình 2 11 Biểu đồ đánh giá kết quả 28

Hình 2 12 Thuật toán thêm các trường bài tập 30

Hình 2 13 Thuật toán xóa trường thêm bài tập 31

Hình 2 14 Thuật toán upload dữ liệu bài tập 32

Hình 2 15 Lưu đồ thuật toán chuẩn hóa họ tên 33

Hình 2 16 Sơ đồ cơ sở dữ liệu theo cấu trúc SQL 34

Hình 2 17 Các colection 35

Hình 3 1 Giao diện trang chủ……….37

Trang 17

iii

Hình 3 2 Giao diện Login 38

Hình 3 3 Giao diện Admin 38

Hình 3 4 Giao diện giáo viên thêm mới bài thí nghiệm 39

Hình 3 5 Giao diện sinh viên 40

Hình 3 6 Giao diện sinh viên làm bài thí nghiệm 40

Hình 3 7 Giao diện giáo viên xem bài làm của sinh viên 41

Trang 18

iv

Danh mục bảng biểu

Bảng 1 1 Một số lệnh cơ bản trên MongoDB và MySQL 15

Bảng 2 1 Mô tả usecase đăng nhập ở hình 3.2………18

Bảng 2 2 Bảng mô tả usecase quản lý danh sách ở hình 3.3 19

Bảng 2 3 Bảng mô tả usecase soạn thảo thí nghiệm 20

Bảng 2 4 Bảng mô tả usecase làm thí nghiệm 21

Trang 19

v

Tóm tắt đồ án

Nội dung chính của đề tài là trình bày các vấn đề liên quan hệ thống thí nghiệm online, sau đó đưa ra phương hướng giải quyết vấn đề Đồ án được viết dựa trên nền tảng của ASP.NET MVC và cơ sở dữ liệu MongoDB Nội dung chi tiết được trình bày qua 3 phần của báo cáo:

Chương 1 Tổng quan hệ thống: Chương này sẽ giới thiệu tổng quan về hệ thống thí nghiệm online, mô tả hệ thống và các tính năng của hệ thống, đồng thời nêu ra lý thuyết về ASP.NET MVC và MongoDB, so sánh giữa SQL và NoSQL, giữa MongoDB

và MySQL để thấy những ưu điểm rõ rệt của MongoDB

Chương 2 Phân tích và thiết kế hệ thống: Trong chương này sẽ trình bày chi tiết các sơ đồ cần có của hệ thống, bao gồm: sơ đồ chức năng, các sơ đồ usecase và các biểu

đồ hoạt động, đồng thời cũng nêu ra thuật toán xủa lý để đưa dữ liệu lên hệ thống

Chương 3 Kết quả đạt được và thử nghiệm: trình bày cơ bản về chức năng của

hệ thống thông qua giao diện

Trang 20

Chapter 1: Overview of systems: This chapter will give an overview of the system

to support reporting and scoring online experiments, describe the system and features of the system, and describe the theory of ASP.NET MVC and MongoDB, and compare between SQL and NoSQL, between MongoDB and MySQL to see the obvious advantages of MongoDB

Chapter 2: Analysis and design system: In this chapter, present detailed diagrams

of the system, including: functional diagrams, usecase diagrams and operational diagrams, as well as outlined the algorithm to put data on the system

Chapter 3 Achievements and testing: basic presentation of the system's functions through the interface

Trang 21

Là một sinh viên viện Điện tử viễn thông, với những kiến thức đã được học cùng với mong muốn thiết kế một hệ thống thí nghiệm giúp cho cán bộ giảng viên và sinh viên

có thể tiết kiệm được thời gian, công sức, tiền bạc, cùng với sự hướng dẫn của ThS Vũ

Song Tùng chúng em đã chọn đề tài: “Thiết kế website hỗ trợ nộp và chấm bài thí

nghiệm online " làm đồ án tốt nghiệp

Mục đích nghiên cứu

Đề tài được nghiên cứu và thực hiện với mục đích áp dụng các kiến thức đã học trên ghế nhà trường để thiết kế ra một sản phẩm để làm đồ án tốt nghiệp cũng như giúp đỡ được một phần nào đó các bạn sinh viên và giảng viên hướng dẫn trong quá trình nộp

và chấm bài báo cáo thí nghiệm

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

Trong đề tài này, chúng em đã sử dụng các phương pháp nghiên cứu:

• Phương pháp tham khảo tài liệu: bằng cách thu thập thông tin từ sách, tạp chí

về thiết kế website và từ mạng internet

• Phương pháp quan sát: khảo sát một số website hiện có như: giaovu, vst

Trang 22

+ Hỗ trợ sinh viên làm và nộp online các bài báo cáo thí nghiệm

+ Hỗ trợ giảng viên phụ trách thí nghiệm trong việc chấm bài và thống kê kết quả

PHÂN CÔNG CÔNG VIỆC

Thời gian Sinh viên thực hiện Công việc

4/3 Đỗ Toàn Thắng Nhận đề tài: Thiết kế website hỗ trợ nộp và

chấm bài thí nghiệm online

Hà Huy Đông 4/3- 15/3 Đỗ Toàn Thắng Tìm hiểu đề tài đưa ra một số giải pháp để

thực hiện đề tài

Hà Huy Đông 15/3- 31/3 Đỗ Toàn Thắng Bước đầu xây dựng các View, Controller cơ

bản

Hà Huy Đông 1/4- 12/5 Đỗ Toàn Thắng Xây dựng các thuật toán tạo bài tập, upload

và làm bài tập

Hà Huy Đông Xây dựng mô hình hệ thống và cấu trúc cơ

sở dữ liệu 12/5- 31/5 Đỗ Toàn Thắng Xây dựng thuật toán chuẩn hoá và sửa lỗi hệ

thống

Hà Huy Đông Hoàn thiện layout, giao diện hệ thống 1/6- 9/6 Đỗ Toàn Thắng Hoàn thiện báo cáo

Hà Huy Đông

Trang 23

3

Chương 1 Tổng quan hệ thống

Trong chương này mô tả tổng quan về hệ thống và các hoạt đông trên hệ thống, các

ưu điểm của hệ thống so với hệ thống thí nghiệm truyền thống Đồng thời, trình bày cơ

sở lý thuyết về ASP.NET MVC và những điểm mạnh của nó, trình bày về NoSQL và MongoDB cũng như so sánh với các ngôn ngữ truy vấn SQL Sau đây là nội dung chi tiết

1.1 Tổng quan

1.1.1 Mô tả hệ thống và các hoạt động trên hệ thống

Thí nghiệm là hoạt động bắt buộc của một số môn đặc thù, yêu cầu sinh viên tìm hiểu và thực hành các kiến thức được học trong quá trình học lý thuyết

Các đối tượng liên quan đến hoạt động thí nghiệm gồm có:

• Sinh viên thí nghiệm (ĐT1): Đối tượng cần thực hiện các bài thí nghiệm theo chương trình môn học Theo truyền thống, việc thực hiện được tiến hành trên phòng thí nghiệm chỉ định của Viện

• Người quản lý Thí nghiệm (ĐT2): Là người có nhiệm vụ thực hiện giờ thực hành thí nghiệm, quản lý cấp phát trang thiết bị, trông quản phòng thí nghiệm, điểm danh theo dõi lớp và chấm điểm kết quả thí nghiệm Là người nắm chuyên môn, đảm trách thao tác vận hành các thiết bị thí nghiệm, giải đáp thắc mắc, hướng dẫn tiến trình để sinh viên có thể hoàn thành các bước thí nghiệm Người soạn thảo chương trình thí nghiệm Là người soạn các bước, các tiến trình để sinh viên thực hiện

• Người quản trị hệ thống (ĐT3): Là người có nhiệm vụ tạo và cập nhật dữ liệu cho hệ thống Đối tượng này có chức năng thêm bớt danh sách các môn học, tạo

ra danh sách các lớp sinh viên (ĐT1) và giáo viên phụ trách (ĐT2)

Dưới đây (Hình 1.1) là mô hình tổng quan hệ thống, từ đó xác định được nhiệm vụ cần thực hiện trong hệ thống, giúp xác định rõ đầu vào cũng như đầu ra

Mô tả hoạt động

• Đối với đối tượng sinh viên:

- Đăng nhập: Mỗi sinh viên đăng kí học phần có yêu cầu thí nghiệm sẽ được quản trị viên (admin) cung cấp 1 account để đăng nhập vào hệ thống Sau khi

Trang 24

4

đăng nhập sinh viên có thể tham khảo tài liệu TN của học phần tương ứng mà

GV quản lí lớp thí nghiệm đã up lên

- Làm báo cáo thí nghiệm: Khi kết thúc quá trình thí nghiệm (3 buổi), sinh viên đăng nhập vào hệ thống và hoàn thành mẫu báo cáo thí nghiệm ứng với từng môn học Sau khi nộp bài, hệ thống sẽ hiển thị kết quả mà sinh viên đạt được

• Đối với đối tượng giáo viên quản lí thí nghiệm:

- Đăng nhập: Mỗi giáo viên quản lí thí nghiệm sẽ được quản trị viên (admin) cung cấp 1 account để đăng nhập vào hệ thống Account này phù hợp với danh sách phân công công việc của Viện đã phân công

- Gửi tài liệu thí nghiệm: Sau khi soạn thảo chương trình thí nghiệm, đối tượng soạn các bước, các tiến trình để sinh viên thực hiện sau đó tổng hợp thành tài liệu thí nghiệm và form báo cáo thí nghiệm mẫu đối với từng học phần và gửi lên hệ thống

- Khi thời hạn hoàn thành báo cáo thí nghiệm của sinh viên kết thúc, hệ thống

sẽ tổng hợp và gửi kết quả của sinh viên cho đối tượng

• Đối với đối tượng admin

Dựa vào danh sách đăng kí lớp học của sinh viên và danh sách phân công công việc của mỗi học kì, admin sẽ thực hiện các chức năng:

- Tạo danh sách học phần: Thêm các danh sách học phần mới và xóa đi các học phần kì này không mở đăng kí

- Tạo danh sách lớp sinh viên: Xóa các acc cũ sau mỗi học kì Tạo mới acc cho các sinh viên và giáo viên quản lí và phân quyền cho phù hợp

• Hệ thống: Nhận dữ liệu từ các đối tượn trên và xử lí kết quả

Sau khi các đối tượng thực hiện nhiệm vụ của mình, hệ thống xử lí và đưa ra kết quả của sinh viên giúp cho giáo viên quản lí thí nghiệm thực hiện công việc của mình nhanh hơn

Trang 25

5

Hình 1 1 Mô hình tổng quan hệ thống

1.1.2 Ưu điểm so với hoạt động thí nghiệm truyền thống

Từ những chức năng trên, có thể thấy Hệ thống nộp và chấm điểm báo cáo thí nghiệm online có các ưu điểm sau so với hoạt động thí nghiệm truyền thống:

- Hiệu quả hơn về mặt thời gian với sinh viên làm thí nghiệm

- Hiệu quả hơn về truyền đạt thông tin, kỹ năng và kiến thức

- Giảm thời gian đánh giá kết quả, theo dõi tiến trình đối với Cán bộ quản lý lớp thí nghiệm

- Hiệu quả giảng dạy và hướng dẫn đối với Cán bộ hướng dẫn

- Đánh giá sinh viên chính xác hơn

- Sinh viên có điều kiện thực hiện bài thí nghiệm linh hoạt hơn về thời gian, và

kế hoạch học tập

- Tiết kiệm các chi phí in ấn tài liệu trong quá trình báo cáo, hướng dẫn thí nghiệm

1.1.3 Các tính năng hỗ trợ bài thí nghiệm

- Kiểm tra tức thời kết quả làm thí nghiệm trong các hoạt động; tính toán, mô phỏng, đo lường và trả lời tương tác kiến thức

- Lưu trữ và thể hiện cho sinh viên các nội dung hướng dẫn, chỉ dẫn thực hành Truy xuất tham khảo đến nội dung kiến thức lý thuyết

Trang 26

6

- Kho lưu trữ và thể hiện cho sinh viên các sơ đồ mạch là đối tượng thí nghiệm

và các tính toán liên quan

- Kho lưu trữ học liệu về hướng dẫn sử dụng thiết bị thí nghiệm, sử dụng phần mềm mô phỏng và phần mềm thiết kế

- Môi trường chia sẻ thông tin và hướng dẫn thực hiện đề tài có ứng dụng mạch điện tử

- Hỗ trợ soạn thảo chương trình, bài thí nghiệm và cập nhật các yêu cầu và hướng dẫn thí nghiệm với sinh viên

1.2 Cơ sở lý thuyết

1.2.1 Giới thiệu về ASP.NET MVC

Những ai yêu thích lập trình web sử dụng công nghệ ASP.NETcủa Microsoft thì chắc chắn một điều là ai cũng phải biết đến Webform, một công nghệ khá cũ của Microsoft giúp lập trình web Tuy nhiên với công nghệ ASP.Net webform thì có rất nhiều nhược điểm và một trong nhược điểm đáng chú ý là giao diện webform phải sử dụng toolbox sẵn có, do đó mất linh hoạt trong việc điều khiển giao diện

Vì vậy, “ông lớn” Microsoft đã cho ra đời 1 công nghệ lập trình web mới đó

là ASP.NET MVC với rất nhiều ưu điểm

1.1.1.1 Tổng quan mô hình MVC

Trước khi đi vào tìm hiểu về mô hình MVC cần tìm hiểu khái quát cấu trúc cơ bản của mô hình lập trình web hiện nay

Cấu trúc lập trình web được minh họa trong hình 1.2

Trong lập trình web chia ra 3 tầng như sau:

- Presentation Layer (tầng 3): tầng này giúp hiển thị giao diện

- Business Logic Layer (tầng 2): tầng này chứa các hàm thực thi, giúp xử lý sự kiện xảy ra trên tầng Presentation Layer

- Data Access Layer (tầng 1): tầng này chứa hàm kết nối với các hệ quản trị cở

sở dữ liệu như SQL Server, Mysql, Oracle …

• Theo như hình mô tả, cấu trúc cổ điển là 3 tầng này trộn vào nhau hay còn gọi

là cấu trúc One – Tier Khi làm việc với cấu trúc One – Tier khó khăn trong việc chỉnh sửa code hay chỉnh sửa giao diện vì các tầng này bi trộn vào nhau

• Tiếp đó, cấu trúc Two – Tier ra đời, tuy nhiên vẫn chưa giải quyết vấn đề của cấu trúc One – Tier gặp phải đó là việc chỉnh sửa code hay giao diện gặp khó khăn vì tầng 2 và tầng 3 vẫn chưa tách biệt khỏi nhau

• Vì vậy cấu trúc Three – Tier đã ra đời và giải quyết tất cả các vần đề mà One – Tier, Two – Tier gặp phải Lúc này 3 tầng đã tách biệt nhau ra do đó việc chỉnh sửa code hay giao diện sẽ trở nên dễ dàng hơn giúp cho ứng dụng tối ưu hóa nhất

Trang 27

• Model: ở phần trước đã nhắc lại về 3 tầng trong mô hình Three – Tier thì trong

đó gồm có 2 tầng Data Access Layer và tầng Business Logic Layer Hai tầng này

là hai tầng tương đương với tầng model trong mô hình MVC

• View: là tầng giao diện, hiển thị dữ liệu được truy xuất từ tầng model Tầng này tương đương với tầng Presentation Layer trong cấu trúc Three – Tier

Trang 28

8

• Controller: đây là tầng giúp kết nối giữa tầng model và tầng view trong mô hình MVC, có nghĩa là nếu phía client yêu cầu hiển thị dữ liệu thì controller gọi giữ liệu từ model và trả về cho view vì view tương tác trực tiếp với client

Ví dụ: User yêu cầu hiển thị thông tin cá nhân của user

1 User gửi một yêu cầu tới controller

2 Controller nhận yêu cầu, xử lý yêu cầu, nếu yêu cầu cần truy xuất dữ liệu

thì controller sẽ gửi yêu đó xuống tầng model để truy xuất dữ liệu

3 Tầng model sẽ lấy dữ liệu từ database sau đó truyền dữ liệu qua tầng view thông qua tầng controller để tầng view hiển thị dữ liệu cho User

4 User sẽ thấy thông tin hiển thị ở giao diện và cụ thể ở đây là tầng view

1.2.1.2 Tổng quan về mô hình lập trình web ASP.NET MVC

Hình 1 4 Sự phát triển của ASP

Hình mô tả phía trên cho thấy trước khi ASP.NET MVC ra đời thì ASP.NET webform là 1 framework lập trình web khá quen thuộc đối với những tín đồ của ASP.NET Tuy nhiên, khi ASP.NET MVC xuất hiện thì dường như ASP.NET webform bị lãng quên

-Khái niệm về ASP.NET

Hình 1 5 ASP.NET với Web Forms và MVC

ASP.NET là 1 framwork lập trình web được cung cấp bởi Microsoft và nó sử dụng ngôn ngữ C# làm ngôn ngữ phát triển ASP.NET bao gồm 2 model đó là Web Forms và MVC

Trang 29

9

Nhược điểm khi lập trình với ASP.NET Web Forms:

• Web Forms không có sự tách biệt rõ ràng 3 tầng trong mô hình lập trình web

• Trong Web Forms có sử dụng 1 đối tượng View State mà đối tượng này làm cho trang web bị tăng kích thước vì vậy làm giảm hiệu năng của ứng dụng

• Giao diện của Web Forms được thiết kế dựa trên những toolbox có sẵn mà web forms cung cấp mà hiện nay đa phần designer sử dụng html, css để thiết kế website vì nó gây khó khăn trong việc thiết kế web hiện nay, việc thiết kế trở nên mất linh hoạt

Với những khó khăn như vậy thì Microsoft đã cho ra đời ASP.NET MVC

+ Cơ chế hoạt động và những ưu điểm trong lập trình web với ASP.NET MVC

ASP.NET MVC là 1 framework lập trình web mới của microsoft, công nghệ này ứng dụng mô hình MVC vào trong ASP.NET

Hình 1 6 Sự phát triển của ASP.NET MVC

Qua hình mô tả phía trên cho thấy tuy ASP.NET MVC ra đời năm 2009 nhưng

mà tính tới năm 2013 thì nó đã được update lên tới phiên bản ASP.NET MVC 5, đây cũng là 1 trong những ưu điểm của ông lớn Microsoft cập nhật công nghệ liên tục Và mới đây thì ASP.NET cũng đã cho ra đời 1 công nghệ mới đó là ASP.NET core 1.0 Với

sự cập nhật thường xuyên như vậy đã giúp cho ASP.NET MVC ngày nay phát triển mạnh mẽ không thua kém gì các công nghệ lập trình web sử dụng Java và Php

-Cơ chế hoạt động của ASP.NET MVC

Trang 30

10

Hình 1 7 Mô phỏng cơ chế hoạt động của ASP.NET MVC

-Dựa vào hình mô phỏng phía trên khái quát sơ qua cơ chế hoạt động của ASP.NET MVC

Bước 1: User gửi 1 yêu cầu tới server bằng cách truyền vào 1 URL trong browser Bước 2: Yêu cầu đó được gửi tới controller đầu tiên, controller sẽ xử lý yêu cầu, nếu yêu cầu cần truy xuất dữ liệu thì controller sẽ chuyển qua tầng model

Bước 3: Tại tầng model, dữ liệu được truy xuất từ database và sau đó truyền qua view thông qua controller

Bước 4: Controller sẽ giúp dữ liệu được chuyển từ model qua view

Bước 5: View là tầng cuối cùng giao tiếp với User, mọi dữ liệu sẽ được hiển thị cho User thông qua tầng View

-Những ưu điểm mà ASP.NET MVC mạng lại:

+Do sử dụng mô hình MVC nên trong ASP.Net MVC đã tách biệt được các tầng trong

mô hình lập trình web vì vậy giúp tối ưu ứng dụng và dễ dàng trong việc viết code, giao diện

+Giao diện trong ASP.Net MVC sử dụng công nghệ thiết kế web HTML, CSS nền việc thiết kế giao diện trở nên dễ dàng và giúp cho designer linh hoạt trong việc thiết

kế

+ASP.Net MVC không sử dụng view state vì vậy trang web không bị tăng kích thước

do đó hiệu năng hoạt động không bị bị giảm

ASP.Net MVC đã khắc phục được các nhược điểm của web forms vì vậy web forms hiện nay không còn được dùng phổ biến nữa

1.2.2 Giới thiệu về NoSQL và MongoDB

1.2.2.1 Giới thiệu về NoSQL

Khi làm việc với database, đã quá quen với SQLServer, MySQL, PostgreSQL, Oracle Điểm chung của những database này là sử dụng ngôn ngữ SQL để truy vấn

dữ liệu Nhưng có 1 dạng database khác với những đặc tính khác biệt được gọi chung dưới cái tên là NoSQL Hãy cùng tìm hiểu xem nó là cái gì, và tại sao nó lại rất phát triển và được nhiều người quan tâm đến vậy

Trang 31

11

a Khái niệm về NoSQL

Thuật ngữ NoSQL được giới thiệu lần đầu vào năm 1998 sử dụng làm tên gọi chung cho các lightweight open source relational database (cơ sở dữ liệu quan hệ nguồn mở nhỏ) nhưng không sử dụng SQL cho truy vấn Vào năm 2009, Eric Evans, nhân viên của Rackspace giới thiệu lại thuật ngữ NoSQL trong một hội thảo về cơ sở

dữ liệu nguồn mở phân tán Thuật ngữ NoSQL đánh dấu bước phát triển của thế hệ database mới: distributed (phân tán) + non-relational (không ràng buộc) Đây là 2 đặc tính quan trọng nhất

-Tại sao lại cần phải có NoSQL:

• Sở dĩ người ta phát triển NoSQL xuất phát từ yêu cầu cần những database có khả năng lưu trữ dữ liệu với lượng cực lớn, truy vấn dữ liệu với tốc độ cao mà không đòi hỏi quá nhiều về năng lực phần cứng cũng như tài nguyên hệ thống

và tăng khả năng chịu lỗi

• Đây là những vấn đề mà các relational database không thể giải quyết được

• Lượng dữ liệu mà các hệ thống cần phải xử lý giờ đây ngày 1 lớn Ví dụ như Google, Facebook phải lưu trữ và xử lý một lượng dữ liệu cực lớn mỗi ngày

Hình 1 8 Sự gia tăng của dữ liệu

• Atomicity: Độc lập data state trong các operation

• Consistency: chấp nhận tính nhất quán yếu, có thể không thấy ngay được sự thay đổi mặc dù đã cập nhật dữ liệu

Ngày đăng: 28/04/2023, 07:19

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w