A Kết quả phân loại câu hỏi môn KTLT và CTDL&GT
4.22 Sequence Diagram cho chức năng Phân loại câu hỏi
Tuy hình ảnh tổng quan nhìn khá nhỏ, tác giả nhóm đã cố gắng giảm kích thước và đảm bảo chất lượng ảnh khi phóng to. Người đọc có thể phóng to để nhìn rõ các hàm hơn.
4.3.8 Thay đổi cơ sở dữ liệu cho tính năng phân loại câu hỏi
Khi hiện thực tính năng, vì CSDL đã được thay đổi so với trong hệ thống AGS nên việc lấy dữ liệu cũng gặp khó khăn. Đơi khi, việc xử lý dữ liệu hoặc tính tốn các cơng thức địi hỏi phải thực hiện phép toán "JOIN" 3-4 bảng trong CSDL, dẫn đến nhiều chi phi truy vấn và thời gian tính tốn. Trong mục này, nhóm thực hiện các thay đổi trong CSDL nhằm các mục đích sau:
• Tạo một bảng mới để lưu trữ kết quả phân loại.
• Thêm các cột mới vào các bảng đã có để truy vấn dữ liệu nhanh và thuận tiện. Các điều chỉnh trên CSDL:
• BảngQuestions
Bảng 4.19:Thêm mơ tả độ khó vào bảng Questions
Tên trường Kiểu dữ liệu Mơ tả trường
level INTEGER Độ khó của câu hỏi với 1: dễ, 2: trung bình, 3: khó.
• BảngExercise_Questions: thêm level vào bảng cịn nhằm mục đích cài đặt độ khó của câu hỏi trong một bài thực hành.
Bảng 4.20:Thêm mơ tả độ khó vào bảng Exercise_Questions
Tên trường Kiểu dữ liệu Mơ tả trường
level INTEGER
Độ khó của câu hỏi trong bài thực hành với 1: dễ, 2: trung bình, 3: khó. Hiện tại độ khó này bằng với độ khó gốc của câu hỏi.
• BảngSubmissions:
Bảng 4.21:Cập nhật bảng Submissions cho tính năng phân loại độ khó
Tên trường Kiểu dữ liệu Mơ tả trường
course_id UUID ID của khóa học mà bài nộp này thuộc về question_id UUID ID của câu hỏi mà bài nộp này thuộc về hash_content TEXT Giá trị băm của nội dung bài nộp
Trong các bước xử lý dữ liệu (mục c)), bước 4 thực hiện loại bỏ các bài nộp bị trùng.
Nhóm chỉ xem xét đơn giản các bài làm bị trùng là các bài nộp của một sinh viên có nội dung giống nhau. Hệ thống sẽ thực hiện băm nội dung của bài nộp và lưu giá trị băm vào CSDL để hỗ trợ bước xử lý này.
• BảngClassifications: đây là bảng mới chứa kết quả phân loại.
Kết nối của bảng với các bảng đã có như sau: