1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đồ Án môn học xây dựng chương trình chia sẻ Đề và thi trắc nghiệm

32 0 0
Tài liệu đã được kiểm tra trùng lặp

Đ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 đề Xây Dựng Chương Trình Chia Sẻ Đề Và Thi Trắc Nghiệm
Tác giả Phạm Thành Lợi, Trần Quốc Nhật
Người hướng dẫn Đàm Minh Lịnh
Trường học Trường Đại Học Công Nghệ TP.HCM
Chuyên ngành Lập Trình Mạng Máy Tính
Thể loại Đồ Án Môn Học
Năm xuất bản 2023
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 32
Dung lượng 2,92 MB

Nội dung

Tuy nhiên, khi chúng ta có những bài ôn tập là nhữngcâu hỏi trắc nghiệm thì chúng ta là trên giấy tốn rất nhiều giấy và dễ thất lạc.Hiểu được vấn đề đó Chúng em đã tạo ra một ứng dụng “T

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP.HCM

Trang 2

LỜI MỞ ĐẦU

- HIện nay ở các trường học thì việc thi trắc nghiệm không còn là quá xa lạ đốivới học sinh, sinh viên Tuy nhiên, khi chúng ta có những bài ôn tập là nhữngcâu hỏi trắc nghiệm thì chúng ta là trên giấy tốn rất nhiều giấy và dễ thất lạc.Hiểu được vấn đề đó Chúng em đã tạo ra một ứng dụng “Thi trắc nghiệm vàchia sẻ đề thi trắc nghiệm” để mọi người có thể dùng nó để ôn tập, làm các bàitập trắc nghiệm cũng như chia sẻ đề trắc nghiệm lên cho những người dùngkhác Chương trình chia sẻ đề thi và trắc nghiệm này được tạo ra với mục tiêucung cấp cho bạn một nguồn tài nguyên vô cùng hữu ích để hỗ trợ quá trình ôntập và chuẩn bị cho các kỳ thi trắc nghiệm quan trọng Chúng em hiểu rằngviệc tìm kiếm tài liệu ôn tập chất lượng có thể là một thách thức, và với ứngdụng này, chúng em muốn giúp bạn tiết kiệm thời gian và nỗ lực

- Chúng em hy vọng rằng ứng dụng này sẽ trở thành một công cụ hữu ích tronghành trình học tập của bạn và giúp bạn đạt được thành công tốt nhất Hãy cùngnhau hướng tới sự phát triển và vươn lên!

Trang 3

LỜI MỞ ĐẦU

MỤC LỤC

CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI

1.1 Lý do chọn đề tài

1.2 Yêu cầu của đề tài

1.3Phạm vi của đề tài

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

2.1 Lý thuyết

2.1.1 Mô hình 3 lớp

2.1.1 Mô hình Client - Server

2.1.2Giao thức TCP - UDP

2.1.3 Mã hóa dữ liệu RSA/AES

2.2 Mô hình đề xuất

2.2.1 Sơ đồ tổng quát

2.2.2 Mô hình ERD

2.2.3 Thủ tục lưu trữ Trigger

2.2.4 Các câu lệnh Procedure

CHƯƠNG 3: TRIỂN KHAI ỨNG DỤNG

3.1Client

3.1.1 Đăng nhập

3.1.2 Đăng ký

3.1 3 Cập nhật thông tin tài khoản

3.1.4 Tạo đề thi mới

3.1.5 Chức năng thi

3.1.6 Chức năng thống kê

3.1.7 Chức năng danh sách đề thi

3.1.8 Chức năng thông tin cá nhân

3.1.9 Chức năng thông báo kết quả thi

3.1.10 Chức năng cập nhật đề thi

3.2 Server

3.2.1 Chức năng thống kê người dùng

3.2.2 Chức năng chặn người dùng

3.2.3 Các chức năng truy vấn

CHƯƠNG 4:NHẬN XÉT VÀ KẾT LUẬN

4.1 Kết quả đạt được

4.2 Hạn chế

4.3 Hướng phát triển

TÀI LIỆU THAM KHẢO

Trang 4

Chương 1: TỔNG QUAN VỀ ĐỀ TÀI

1.1 Lý do chọn đề tài

Sự phát triển của CNTT đã và đang làm thay đổi toàn bộ thế giới Mọi ngànhnghề, mọi lĩnh vực như kinh tế, y khoa, công nghiệp… dần dần được tin học hóa vàlàm cho công việc trở nên dễ dàng, nhanh chóng, chính xác hơn Đặc biệt, trong côngtác giáo dục, việc tin học hóa góp phần nâng cao chất lượng dạy và học, do đó việcứng dụng CNTT trong dạy và học đang là một trong những xu thế phát triển nhằmnâng cao chất lượng đào tạo ở bậc học phổ thông và đại học, góp phần đổi mớiphương pháp dạy học và quản lý trong trường học Nhiều thành tựu của CNTT đượcứng dụng trong dạy học và quản lý giáo dục đã góp phần thay đổi theo chiều hướngtích cực, thực tiễn đã chứng minh

Tại Việt Nam, trong những năm gần đây, song song với việc đổi mới phương phápdạy và học, việc đổi mới hình thức thi cử cũng trở thành một việc làm cấp thiết BộGiáo dục và Ðào tạo (GD&ÐT) chủ trương từng bước đưa phương pháp trắc nghiệmkhách quan (TNKQ) vào áp dụng trong các kỳ thi quốc gia và từng bước áp dụng rộngrãi để đánh giá kết quả học tập tại các bậc học Bộ GD&ÐT đã có Chỉ thị số55/2008/CT-BGDÐT ngày 30/9/2008 của Bộ trưởng Bộ GDÐT và thực hiện chủ đề

“Năm học đẩy mạnh ứng dụng CNTT” yêu cầu các đơn vị đào tạo, các sở GD&ÐT tạicác địa phương triển khai các phần mềm ứng dụng CNTT trong công tác dạy học tạicác trường phổ thông và trong công tác quản lý

Hiện nay thi trắc nghiệm là một hình thức thi rất phổ biến tại các nước trên thếgiới Nhờ vào đặc điểm luôn có sự rõ ràng của đáp án; tính khách quan trong cáchđánh giá kết quả của người học; kết quả của bài thi cũng được biết ngay sau khi thísinh hoàn thành bài 2 thi, cho nên làm tăng tính hiệu quả trong việc tổ chức thi Do đó

từ năm 2007, ở nước ta đã bắt đầu áp dụng hình thức thi trắc nghiệm cho các kỳ thi

Trang 5

tuyển sinh cao đẳng, đại học Từ năm học 2014-2015, Bộ GD&ĐT đã ghép 2 kỳ thitốt nghiệp THPT và tuyển sinh đại học, cao đẳng thành 1 đợt thi với 8 môn thi trong

đó có 4 môn thi theo hình thức trắc nghiệm

Nhằm tạo điều kiện cho SV tại trường có điều kiện học và ôn thi tốt hơn cũng nhưgiúp cho GV có thể thuận tiện hơn trong quá trình tạo đề thi (có thể tạo offline hoặconline), nhóm chúng em quyết định chọn đề tài “Xây dựng chương trình chia sẻ đề vàthi trắc nghiệm ” làm đồ án kết thúc môn học của mình

1.2 Yêu cầu của đề tài

Xây dựng hệ thống phục vụ cho việc thi trắc nghiệm trực tuyến gồm: tạo kho đềthi, tổ chức thi và luyện thi cho sinh viên, học sinh

1.3 Phạm vi của đề tài

Giới hạn việc nghiên cứu ở các lĩnh vực sau:

- Phương pháp ra đề thi trắc nghiệm với nhiều lựa chọn

- Các tập tin có định dạng *.doc, *.xml, *.pdf, *.html

- Giới hạn ở nội dung phục vụ ôn và thi theo hình thức trắc nghiệm

Trang 6

Chương 2: CƠ SỞ LÝ THUYẾT2.1 Lý thuyết

2.1.1 Mô Hình 3 Lớp

Hình 2.1.1 Mô hình 3 lớp

Mô hình 3 lớp hay còn được gọi là mô hình Three Layer (3-Layer), môhình này ra đời nhằm phân chia các thành phần trong hệ thống, các thành phầncùng chức năng sẽ được nhóm lại với nhau và phân chia công việc cho từngnhóm để dữ liệu không bị chồng chéo và chạy lộn xộn [1]

Phân loại mô hình 3 lớp ( 3-layer)

Mô hình 3-Layers có tính logic thường được sử dụng trong các dự án lớn

Nó góp phần quản lý các thành phần của hệ thống Mô hình cho phép lập trình.NET, lập trình ứng dụng, lập trình C#,

Mô hình 3-layer được biết đến với 3 phần chính là:

● GUI (Presentation Layer)

Mô hình thực hiê Œn nhiệm vụ giao tiếp với người dùng trước khi gọi lớpBLL Gồm: các thành phần giao diện ( winform, webform,…) thực hiện nhiê Œmvụ:

Trang 7

1 Nhập liệu

2 Hiển thị dữ liệu

3 Kiểm tra tính đúng đắn dữ liệu

● BLL (Business Logic Layer)

Mô hình thực hiên 2 nhiệm vụ chính bao gồm :

Mô Œt là, đáp ứng và xử lý các yêu cầu thao tác dữ liệu của GUI layer Nóphải đảm bảo hoàn thành trước truyền xuống DAL và lưu xuống hệ quản trịCSDL

Hai là, kiểm tra các ràng buộc, tính toàn vẹn, tính hợp lệ dữ liệu Trướckhi trả kết quả về GUI, tại BLL sẽ thực hiện tính toán và xử lý các yêu cầunghiệp vụ

DAL (Data Access Layer)

Ứng dụng thực hiê Œn chức năng giao tiếp với hệ quản trị CSDL Đồngthời, tham gia lưu trữ và truy vấn dữ liệu ( tìm kiếm, sửa, thêm, xóa,…).Như vâ Œy, mô hình quản lý 3 lớp hoạt động theo sơ đồ như sau:

1 GUI liên kết với BLL và Data Transfer Objects ( DTO thành phầnthuô Œc lớp BLL)

2 BLL liên kết tới được DAL và DTO

3 DAL chỉ liên kết tới DTO

2.1.2 Mô hình Client - Server

Mô hình client - server là mô hình giúp các máy tính giao tiếp truyền tải dữ liệucho nhau Nhắc đến Client với Server thì đây là 2 từ khóa khá phổ biến và ai cũngbiết Và cũng nhắc lại tóm tắt về client - server

Client và server về bản chất thì nó là 2 máy tính giao tiếp và truyền tải dữ liệu chonhau

Trang 8

Máy tính đóng vai trò là máy khách – Client: Với vai trò là máy khách, chúng sẽkhông cung cấp tài nguyên đến các máy tính khác mà chỉ sử dụng tài nguyên đượccung cấp từ máy chủ Một client trong mô hình này có thể là một server cho mô hìnhkhác, tùy thuộc vào nhu cầu sử dụng của người dùng.

Máy tính đóng vai trò là máy chủ – Server: Là máy tính có khả năng cung cấp tàinguyên và các dịch vụ đến các máy khách khác trong hệ thống mạng Server đóng vaitrò hỗ trợ cho các hoạt động trên máy khách client diễn ra hiệu quả hơn

Trong mô hình Client Server, server chấp nhận tất cả các yêu cầu hợp lệ từ mọinơi khác nhau trên Internet, sau đó trả kết quả về máy tính đã gửi yêu cầu đó Máy tính được coi là máy khách khi chúng làm nhiệm vụ gửi yêu cầu đến các máychủ và đợi câu trả lời được gửi về

Hình 2.1.2 Miêu tả Client - Server

Để máy khách và máy chủ có thể giao tiếp được với nhau thì giữa chúng phải cómột chuẩn nhất định, và chuẩn đó được gọi là giao thức (Giao thức là gì thì các bạn

có thể tham khảo tại đây) Một số giao thức được sử dụng phổ biến hiện nay như:HTTPS, TCP/IP, FTP,

Nếu máy khách muốn lấy được thông tin từ máy chủ, chúng phải tuân theo mộtgiao thức mà máy chủ đó đưa ra Nếu yêu cầu đó được chấp nhận thì máy chủ sẽ thuthập thông tin và trả về kết quả cho máy khách yêu cầu Bởi vì Server - máy chủ luônluôn trong trạng thái sẵn sàng để nhận request từ client nên chỉ cần client gửi yêu cầu

Trang 9

tín hiệu và chấp nhận yêu cầu đó thì server sẽ trả kết quả về phía client trong thời gianngắn nhất.

Nguyên lý hoạt động của TCP:

TCP là giao thức được sử dụng phổ biến nhất trên Internet Khi bạn yêu cầu mộttrang web trong trình duyệt, máy tính sẽ gửi các gói tin TCP đến địa chỉ của máy chủweb, yêu cầu nó gửi lại trang web Máy chủ web phản hồi bằng cách gửi một luồngcác gói tin TCP, mà trình duyệt web của bạn kết hợp với nhau để tạo thành trang web.Khi click vào liên kết, đăng nhập, đăng nhận xét hoặc làm bất kỳ điều gì khác, trìnhduyệt web của bạn sẽ gửi gói tin TCP tới máy chủ và máy chủ gửi lại các gói tin choTCP

Giao thức TCP có độ tin cậy cao, các gói tin được gửi bằng TCP sẽ được theo dõi

do vậy dữ liệu sẽ không bị mất hoặc hỏng trong quá trình vận chuyển Đó là lý do tạisao file tải xuống không bị hỏng ngay cả khi mạng có vấn đề Tất nhiên, nếu bên nhậnhoàn toàn ngoại tuyến, máy tính của bạn sẽ từ bỏ và bạn sẽ thấy một thông báo lỗi ghi

nó không thể giao tiếp với máy chủ lưu trữ từ xa

Giao thức TCP đạt được điều này theo hai cách Đầu tiên, nó yêu cầu các gói tinbằng cách đánh số chúng Thứ hai, nó kiểm tra lỗi bằng cách yêu cầu bên nhận gửiphản hồi đã nhận được cho bên gửi Nếu bên gửi không nhận được phản hồi đúng, nó

có thể gửi lại gói tin để đảm bảo bên nhận nhận chúng một cách chính xác

Nguyên lý hoạt động của UDP:

Trang 10

Giao thức UDP hoạt động tương tự như TCP, nhưng nó bỏ qua quá trình kiểm tralỗi Khi một ứng dụng sử dụng giao thức UDP, các gói tin được gửi cho bên nhận vàbên gửi không phải chờ để đảm bảo bên nhận đã nhận được gói tin, do đó nó lại tiếptục gửi gói tin tiếp theo Nếu bên nhận bỏ lỡ một vài gói tin UDP, họ sẽ mất vì bên gửikhông gửi lại chúng Do đó thiết bị có thể giao tiếp nhanh hơn.

UDP được sử dụng khi cần tốc độ nhanh và không cần thiết sửa lỗi Ví dụ, UDPthường được sử dụng cho các chương trình phát sóng trực tiếp và game online Cácvideo được phát trực tiếp thường sử dụng giao thức UDP thay vì TCP Máy chủ sẽ gửimột luồng liên tục các gói tin UDP tới máy tính đang xem Nếu bạn mất kết nối trongvài giây, video sẽ bị dừng hoặc bị giật trong giây lát và sau đó chuyển sang bit hiện tạicủa chương trình phát sóng Nếu bạn chỉ bị mất gói tin nhỏ, video hoặc âm thanh cóthể bị méo trong giây lát vì video sẽ tiếp tục phát mà không có dữ liệu bị thiếu Điều này hoạt động tương tự trong các trò chơi trực tuyến Nếu bạn bỏ lỡ một sốgói tin UDP, nhân vật người chơi có thể dịch chuyển trên bản đồ khi bạn nhận gói tinUDP mới Việc bỏ qua sửa lỗi sẽ giúp tăng tốc kết nối trò chơi và giảm độ trễ

Hình 2.1.3 mô tả TCP VÀ UDP

Trang 11

2.1.4 Mã hóa dữ liệu RSA/AES

RSA:

Giả sử bạn muốn nói với bạn mình một bí mật Nếu bạn ở ngay bên cạnh họ, bạnchỉ cần thì thầm điều gì đó Nếu bạn ở hai phía đối nhau của đất nước, điều đó sẽkhông an toàn Bạn có thể viết nó ra và gửi cho họ qua đường bưu điện hoặc sử dụngđiện thoại Những cách này sẽ không an toàn và bất kỳ ai có động cơ đủ mạnh đều cóthể chặn được tin nhắn [3]

Một giải pháp để ngăn chặn kẻ nghe trộm và truy cập nội dung tin nhắn là mã hóa

nó Về cơ bản, điều này có nghĩa là thêm một mã vào tin nhắn, nó sẽ làm cho tin nhắnthành một mớ hỗn độn Nếu mã của bạn đủ phức tạp, thì những người duy nhất có thểtruy cập vào thư gốc là những người có quyền truy cập vào mã

Trang 12

Nếu bạn có cơ hội chia sẻ mã với bạn mình trước đó, thì một trong hai người cóthể gửi tin nhắn được mã hóa bất cứ lúc nào Nhưng nếu bạn không có cơ hội chia sẻ

mã đó thì sao?

Đây là một trong những vấn đề cơ bản của mật mã, đã được giải quyết bằng các

sơ đồ mã hóa public-key (còn được gọi là mã hóa bất đối xứng) như RSA

Theo mã hóa RSA, các tin nhắn được mã hóa bằng một mã gọi là public key, mãnày có thể được chia sẻ công khai Do một số đặc thù tính toán khoa học khác biệt củathuật toán RSA, một khi một thông điệp đã được mã hóa bằng public key, nó chỉ cóthể được giải mã bằng một key được gọi là private key Mỗi người dùng RSA có cặpkey bao gồm public key và private key của riêng họ Private key cần được giữ bí mật

Các lược đồ public key khác với key symmetric, trong khi đó cả quá trình mã hóa

và giải mã đều phải sử dụng private key Những khác biệt này làm cho mã hóa publickey như RSA hữu ích để giao tiếp trong các tình huống mà trước đó không có cơ hội

để phân phối key một cách an toàn

Các thuật toán key đối xứng có các ứng dụng riêng của chúng Chẳng hạn như

mã hóa dữ liệu cho mục đích sử dụng các nhân hoặc khi có các kênh bảo mật màprivate có thể được chia sẻ

AES :

AES gồm ba mật mã khối AES-128, AES-192, AES-256 tương ứng với độ dài củakey là 128 bit, 192 bit và 256 bit Số vòng của key khác nhau, cụ thể 10 vòng cho 128bit, 12 vòng cho 192 bit và 14 vòng cho 256 bit Mỗi vòng đều thực hiện ba bước thaythế, biến đổi và hòa trộn khối plain text (văn bản thuần túy) đầu vào để biến nó thànhCiphertext (văn bản đã mã hóa)

Trang 13

Hình 2.1.5 Mô tả AES

Thông tin được chính phủ phân loại theo ba cấp độ: bảo mật, bí mật, tối mật Tất

cả các độ dài của key từ 128, 192 và 256 bit đều được dùng ở cấp độ bảo mật, bí mật.Riêng với những thông tin tối mật để đảm bảo không xảy ra bất cứ sai sót nào phảicần đến key 192 hoặc 256 bit Mật mã sẽ dùng một key riêng tư để mã hóa và giải mã

dữ liệu và tất nhiên cả người gửi và người nhận đều phải nhận biết và sử dụng đượckey này

Trang 14

2.2 Mô hình đề xuất

2.2.1 Sơ đồ tổng quát

Hình 2.2.1 Sơ đồ tổng quát

Trang 16

(data modification) Trigger được lưu trữ và quản lý trong Server DB, được dùngtrong trường hợp ta muốn kiểm tra các ràng buộc toàn vẹn trong DB.

Trigger thường được sử dụng trong :

+ Trigger thường được sử dụng để kiểm tra ràng buộc (check constraints) trênnhiều quan hệ (nhiều bảng/table) hoặc trên nhiều dòng (nhiều record) của bảng.+ Ngoài ra việc sử dụng Trigger để chương trình có những hàm chạy ngầm nhằmphục vụ những trường hợp hữu hạn và thường không sử dụng cho mục đíchkinh doanh hoặc giao dịch

+ Ngăn chặn việc xóa những dữ liệu quan trọng (có thể dùng back up các dữ liệuquan trọng sang table khác phòng khi …bị xóa ngoài ý muốn)

Ưu điểm của Trigger

● Trigger có thể bắt lỗi business logic ở mức csdl

● Có thể dùng trigger là một cách khác để thay thế việc thực hiện những côngviệc hẹn giờ theo lịch

● Trigger rất hiệu quả khi được sử dụng để kiểm soát những thay đổi của dữliệu trong bảng

Nhược điểm của Trigger

● Trigger chỉ là một phần mở rộng của việc kiểm tra tính hợp lệ của dữ liệuchứ không thay thế được hoàn toàn công việc này

Ngày đăng: 24/10/2024, 16:10

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

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN

w