Dự án

Tổng quan

Hồ sơ

Hành động

Task #1238

mở
HN TP

Task #947: Thi công màn hình thời khóa biểu cho quý

[TKB]: ghép logic các ràng buộc vào xếp thời khoá biểu

Task #1238: [TKB]: ghép logic các ràng buộc vào xếp thời khoá biểu

Thêm bởi Hải Yến Ngô cách đây khoảng 1 tháng. Cập nhật cách đây 15 ngày.

Trạng thái:
Commit
Mức ưu tiên:
Cao
Phân công cho:
Bắt đầu:
04-05-2026
Hết hạn:
08-05-2026 (Trễ 31 ngày)
Tiến độ:

100%

Thời gian ước lượng:
Build tại bản:
Người Test:
Thời gian test xong:

Mô tả

  1. Mục đích
    Bổ sung chức năng thiết lập và ghép logic các ràng buộc vào quá trình xếp thời khóa biểu nhằm:
    Đảm bảo thời khóa biểu tuân thủ các quy tắc học thuật (theo môn, theo bài)
    Giảm thao tác thủ công và hạn chế sai sót khi xếp thời khóa biểu
    Cho phép hệ thống tự động hóa xử lý nhiều ràng buộc phức tạp
  2. Yêu cầu nghiệp vụ
    2.1. Câu chuyện nghiệp vụ
    Thiết lập các ràng buộc liên quan đến môn học và bài học
    Kết hợp (ghép logic) nhiều ràng buộc khác nhau để áp dụng khi xếp thời khóa biểu
    Đảm bảo thứ tự học các bài trong cùng một môn (ví dụ: Bài 1 phải trước Bài 2)
    Áp dụng các quy tắc như: các môn trước sau, song song, tiên quyết
    ví dụ bài 5 môn triết phải học trước bài 7 môn tư tưởng hcm,... ngoài ra còn học xen kẽ kẽ, như trong tài liệu mô tả ràng buộc
    Khi hệ thống xếp TKB, các ràng buộc này được tự động kiểm tra và áp dụng
    Ví dụ nghiệp vụ:
    Môn Toán có các bài: Bài 1, Bài 2, Bài 3
    Ràng buộc:
    Bài 1 → phải học trước Bài 2

Khi xếp TKB, hệ thống phải đảm bảo các điều kiện trên luôn đúng
2.2. Mong muốn
Cho phép cấu hình ràng buộc linh hoạt theo:
Môn học
Bài học
Thời gian (ngày, tiết)
Có khả năng ghép nhiều ràng buộc bằng logic
Hệ thống kiểm tra và cảnh báo khi ràng buộc bị vi phạm
Cho phép bật/tắt từng ràng buộc (Sau này, có thể chưa cần ngay)
Hỗ trợ ưu tiên (priority) giữa các ràng buộc (Sau này, cho việc xếp tkb tự động)
2.3. Khó khăn
Số lượng ràng buộc lớn và có thể xung đột lẫn nhau
Logic ghép ràng buộc phức tạp
Khó đảm bảo hiệu năng khi xếp thời khóa biểu với nhiều điều kiện
Người dùng nghiệp vụ có thể khó hiểu cách thiết lập rule phức tạp
Cần xử lý trường hợp không tồn tại lời giải thỏa mãn tất cả ràng buộc
3. Giải pháp phần mềm, chức năng nghiệp vụ bị ảnh hưởng
3.1. Giải pháp đề xuất
Thiết kế hệ thống gồm:
Danh sách ràng buộc
Các loại ràng buộc:
Thứ tự bài học
Ràng buộc theo môn,bài
Khi xếp lịch → hệ thống kiểm tra toàn bộ ràng buộc
Nếu vi phạm:
Hard → không cho phép
Soft → cảnh báo / tính điểm tối ưu (nên có)
3.2. Chức năng bị ảnh hưởng
Xếp thời khóa biểu (core)
Quản lý môn học và bài học
Phân công giảng dạy
Báo cáo và kiểm tra tính hợp lệ của thời khóa biểu

TP Cập nhật bởi Tiến Lực Phạm cách đây khoảng 1 tháng Hành động #1

TP Cập nhật bởi Tiến Lực Phạm cách đây khoảng 1 tháng Hành động #2

  • Trạng thái thay đổi từ New tới Approved

TP Cập nhật bởi Tiến Lực Phạm cách đây khoảng 1 tháng Hành động #3

  • Tiến độ thay đổi từ 0 tới 80

HN Cập nhật bởi Hải Yến Ngô cách đây khoảng 1 tháng Hành động #4

  • Phiên bản gán cho B9 (04 - 08/05/2026)

HN Cập nhật bởi Hải Yến Ngô cách đây khoảng 1 tháng Hành động #5

  • Tác vụ cha gán cho #947

TP Cập nhật bởi Tiến Lực Phạm cách đây khoảng 1 tháng Hành động #6

TP Cập nhật bởi Tiến Lực Phạm cách đây 28 ngày Hành động #7

  • Tiến độ thay đổi từ 80 tới 100

TP Cập nhật bởi Tiến Lực Phạm cách đây 28 ngày Hành động #8

  • Trạng thái thay đổi từ Approved tới Commit

TP Cập nhật bởi Tiến Lực Phạm cách đây 25 ngày Hành động #9

  • Trạng thái thay đổi từ Commit tới Approved
  • Tiến độ thay đổi từ 100 tới 90

TP Cập nhật bởi Tiến Lực Phạm cách đây 19 ngày Hành động #10

  • Tiến độ thay đổi từ 90 tới 100

TP Cập nhật bởi Tiến Lực Phạm cách đây 15 ngày Hành động #11

  • Trạng thái thay đổi từ Approved tới Commit
Hành động

Định dạng khác của trang này: PDF Atom