Bối cảnh và vấn đề nghiên cứu

Trong bối cảnh khoa học và công nghệ phát triển nhanh chóng, chuyển đổi số và xu hướng giáo dục trực tuyến đã làm thay đổi căn bản phương thức tiếp cận tri thức và tổ chức đào tạo. Đối với các cơ sở giáo dục trung học phổ thông (THPT), công tác quản lý vận hành đòi hỏi sự phối hợp đồng bộ giữa nhiều quy trình phức tạp: quản lý hồ sơ giáo viên, tổ chức danh sách lớp học, phân công chuyên môn và đặc biệt là công tác xếp thời khóa biểu. Phương thức quản lý thủ công truyền thống thường tiêu tốn nhiều thời gian, dễ phát sinh sai sót và gặp khó khăn trong việc tối ưu hóa nguồn lực phòng học cũng như lịch giảng dạy.

Nhằm giải quyết những bất cập trên, đề tài "Xây dựng Website quản lý trường Trung học phổ thông" được thực hiện bởi sinh viên Phan Duy Lâm và Bùi Quốc Tĩnh, dưới sự hướng dẫn của ThS. Nguyễn Minh Đạo tại Khoa Công nghệ Thông tin, Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh (thời gian thực hiện từ 21/04/2024 đến 10/07/2024).

Mục tiêu và nhiệm vụ nghiên cứu của đồ án được xác định cụ thể như sau:

  1. Xây dựng website quản lý trường học với các công nghệ ASP.NET Core, Angular, SQL Server và Entity Framework Core nhằm cung cấp nền tảng quản lý trực tuyến trực quan, hỗ trợ tự động hóa các tác vụ quản trị.
  2. Tìm hiểu cơ chế vận hành của giải thuật di truyền (Genetic Algorithm - GA) và ứng dụng giải thuật này để giải quyết bài toán tối ưu hóa việc xếp thời khóa biểu tự động cho trường THPT.

Đối tượng nghiên cứu của đề tài bao gồm hai nhóm chính:

  • Ban quản lý nhà trường: Đánh giá phương thức hệ thống hỗ trợ chuẩn hóa quy trình điều hành, tổ chức lịch biểu và giám sát hiệu suất hoạt động toàn trường.
  • Nhân viên hỗ trợ kỹ thuật: Khảo sát khả năng bảo trì, quản lý hạ tầng và tính linh hoạt trong cập nhật dữ liệu của phần mềm.

Phạm vi nghiên cứu của đề tài:

  • Về chức năng nghiệp vụ: Hệ thống tập trung vào chức năng trung tâm là lập thời khóa biểu tự động cùng các phân hệ quản trị nền tảng gồm xác thực đăng nhập, quản lý hồ sơ giáo viên, quản lý lớp học, quản lý danh mục môn học, phân công lớp học và phân công giảng dạy.
  • Về phạm vi ứng dụng và thời gian: Đề tài giới hạn mô hình thực nghiệm trong khuôn khổ cơ cấu tổ chức của một trường THPT tiêu chuẩn tại Việt Nam, triển khai nghiên cứu và hoàn thành trong học kỳ khóa 2020 – 2024.

Cơ sở lý thuyết và phương pháp

Đồ án xây dựng nền tảng lý thuyết và kỹ thuật dựa trên các công nghệ phần mềm hiện đại và lý thuyết tối ưu hóa:

  • C# và ASP.NET Core: Ngôn ngữ lập trình C# hướng đối tượng, biên dịch hiệu năng cao và framework ASP.NET Core hỗ trợ kiến trúc đa nền tảng, cơ chế Middleware và Dependency Injection phục vụ xây dựng Web Service (Backend).
  • Entity Framework Core: Thư viện ánh xạ đối tượng - quan hệ (ORM) cung cấp lớp trừu tượng hóa trên tầng truy cập dữ liệu (DAL), hỗ trợ truy vấn LINQ tương tác với hệ quản trị cơ sở dữ liệu Microsoft SQL Server.
  • Angular và TypeScript: Framework phía máy khách (Frontend) phát triển bởi Google, hoạt động theo mô hình thành phần (Component-based), áp dụng TypeScript nhằm đảm bảo tính cấu trúc và khả năng kiểm thử.
  • RESTful API và OpenAPI (Swagger UI): Kiến trúc giao tiếp chuẩn hóa giữa Client và Server qua các phương thức HTTP (GET, POST, PUT/PATCH, DELETE) tương ứng với các thao tác CRUD trên tài nguyên hệ thống, tích hợp tài liệu hóa API qua Swagger.
  • Lý thuyết giải thuật di truyền (Genetic Algorithm - GA): Phân ngành thuật toán tiến hóa mô phỏng chọn lọc tự nhiên của Darwin, giải quyết không gian tìm kiếm tổ hợp lớn thông qua quần thể, cá thể, nhiễm sắc thể, hàm thích nghi (Fitness Function), chọn lọc (Selection), lai ghép (Crossover) và đột biến (Mutation).

Phương pháp nghiên cứu thực tế bao gồm:

  • Phương pháp nghiên cứu tài liệu: Khảo cứu lý thuyết mô hình xếp thời khóa biểu và các tài liệu kỹ thuật về các framework phát triển web hiện đại.
  • Phương pháp khảo sát và phân tích hiện trạng: Khảo sát thực tế ba hệ thống quản lý và xếp lịch biểu phổ biến trên thị trường giáo dục Việt Nam: SMAS (Viettel), vnEdu (VNPT) và phần mềm chuyên dụng TKB 11.0. Nhóm tác giả phân tích ưu, nhược điểm của từng phần mềm để định hình các yêu cầu chức năng và phi chức năng cho hệ thống đề xuất.
  • Phương pháp mô hình hóa hướng đối tượng: Sử dụng ngôn ngữ mô hình hóa thống nhất (UML) để xây dựng biểu đồ Use Case, biểu đồ tuần tự (Sequence Diagram), lược đồ lớp (Class Diagram) và lược đồ thực thể quan hệ (ERD).
  • Nguồn dữ liệu: Dữ liệu thực tế về cơ cấu tổ chức trường THPT, danh mục môn học, số tiết quy định, danh sách phòng học (đặc biệt là phòng thực hành tin học dùng chung) và các ràng buộc sư phạm trong phân công chuyên môn.

Thiết kế và triển khai

Hệ thống được thiết kế theo kiến trúc Client-Server phân tầng tách biệt giữa tầng hiển thị và tầng dịch vụ thông qua giao diện lập trình RESTful API:

  • Kiến trúc phần mềm: Client (Angular) gửi yêu cầu HTTP đến Backend (ASP.NET Core Web API). Backend tiếp nhận qua các Controller, xử lý nghiệp vụ, gọi tầng truy xuất dữ liệu Entity Framework Core để tương tác với cơ sở dữ liệu SQL Server và trả về định dạng chuẩn JSON.

Cơ sở dữ liệu của hệ thống bao gồm 8 bảng dữ liệu quan hệ chính:

  1. Teachers: Lưu trữ thông tin chi tiết của giáo viên.
  2. Classes: Lưu trữ thông tin danh mục các lớp học.
  3. Subjects: Lưu trữ thông tin danh mục các môn học.
  4. SubjectClasses: Lưu trữ thông tin phân công các môn học cho từng lớp cụ thể.
  5. SubjectTeachers: Lưu trữ quan hệ phân công môn học cho giáo viên phụ trách.
  6. Assignments: Quản lý phân công giảng dạy chi tiết giữa giáo viên, môn học và lớp.
  7. Timetables: Lưu trữ thông tin tổng quát của các bảng thời khóa biểu được tạo ra.
  8. TimetableUnits: Lưu trữ chi tiết từng tiết học (thứ, tiết, lớp, môn, giáo viên, phòng).

Trong bài toán xếp thời khóa biểu, giải thuật di truyền được mô hình hóa như sau:

  • Cá thể (Individual): Đại diện cho một lịch học hoàn chỉnh của toàn trường.
  • Nhiễm sắc thể (Chromosome): Đại diện cho lịch học hoàn chỉnh của một lớp học, chứa đựng thông tin về giáo viên và môn học phân bổ theo các tiết.
  • Quần thể (Population): Tập hợp nhiều phương án thời khóa biểu hoàn chỉnh của trường qua các thế hệ.
  • Toán tử di truyền:
    • Chọn lọc: Kết hợp phương pháp chọn lọc dựa trên xếp hạng (Rank-based Selection) với kỹ thuật chọn lọc cạnh tranh (Tournament Selection) trong quá trình lai ghép.
    • Lai ghép: Áp dụng phép lai ghép 1 điểm (Single-point Crossover) bằng cách chọn ngẫu nhiên một điểm cắt trên nhiễm sắc thể của hai cá thể cha mẹ và hoán vị đoạn gen phía sau.
    • Đột biến: Chọn ngẫu nhiên một lớp học và tiến hành hoán đổi vị trí của hai tiết học ngẫu nhiên trong lớp đó.
    • Kỹ thuật tăng cường: Tích hợp thêm thuộc tính tuổi cá thể để loại bỏ các cá thể quá tuổi, ngăn ngừa hiện tượng hội tụ sớm tại cực trị địa phương.

Hàm thích nghi (Fitness Function) đánh giá mức độ tối ưu của cá thể dựa trên hệ thống 18 ràng buộc sư phạm được lượng hóa bằng trọng số:

Mã ràng buộc Tên ràng buộc Phân loại Mô tả chi tiết Trọng số
H01 Đụng độ phân công Ràng buộc cứng Phân công của một giáo viên hoặc một lớp không được xếp vào cùng một vị trí tiết học. 1000
H02 Tính đầy đủ của phân công Ràng buộc cứng Tất cả các phân công chuyên môn bắt buộc phải được đưa vào thời khóa biểu. 1000
H03 Phân công được xếp sẵn Ràng buộc cứng Các phân công đã khóa vị trí phải được ưu tiên xếp trước, không để tiết khác chèn vào. 1000
H04 Đụng độ phòng học Ràng buộc cứng Mỗi phòng học chỉ chứa 1 phân công tại một thời điểm (áp dụng cho phòng thực hành tin học). 1000
H05 Giáo viên không dạy trùng Ràng buộc cứng Một giáo viên không được dạy nhiều lớp khác nhau trong cùng một khung giờ học. 1000
H06 Tiết học liên tiếp Ràng buộc cứng Môn có quy định tiết đôi phải được bố trí đúng một cặp phân công liền kề trong ngày. 1000
H07 Tiết trống của lớp Ràng buộc cứng Các tiết học trong một buổi phải xếp liền mạch, các tiết trống dồn về cuối buổi. 1000
H08 Giới hạn phòng bộ môn Ràng buộc cứng Trong một khung giờ, số giáo viên dạy Tin học không vượt quá số phòng máy tính hiện có. 1000
H09 Tần suất môn trong buổi Ràng buộc cứng Mỗi môn chỉ học một lần trong một buổi (ngoại trừ trường hợp có tiết đôi). 1000
H10 Tiết không xếp Ràng buộc cứng Vị trí tiết học được chỉ định cấm xếp cho giáo viên hoặc môn học cụ thể. 1000
H11 Ngày nghỉ cho giáo viên Ràng buộc cứng Mỗi giáo viên phải có ít nhất 1 ngày nghỉ hoàn toàn trong tuần (không tính Chủ nhật). 1000
S01 Tiết đôi không qua giờ chơi Ràng buộc mềm Ưu tiên tránh bố trí tiết đôi qua giờ ra chơi (tiết 2-3 buổi sáng, tiết 3-4 buổi chiều). 2
S02 Giảm số buổi dạy Ràng buộc mềm Tối ưu lịch giảng dạy để tổng số buổi đến trường của giáo viên là ít nhất. 1
S03 Hạn chế tiết trống giáo viên Ràng buộc mềm Giảm thiểu các tiết trống xen kẽ giữa các giờ dạy của giáo viên trong cùng một buổi. 1
S04 Nghỉ giữa hai buổi Ràng buộc mềm Tránh xếp tiết cuối buổi sáng kết hợp ngay với tiết đầu buổi chiều cho cùng một giáo viên. 1
S05 Giới hạn tiết dạy trong buổi Ràng buộc mềm Khống chế số lượng tiết dạy tối thiểu và tối đa của giáo viên trong một buổi học. 1
S06 Lịch bận của giáo viên Ràng buộc mềm Ưu tiên không xếp lịch vào những buổi giáo viên đã đăng ký bận trước. 10
S07 Các tiết cách ngày Ràng buộc mềm Các phân công cùng môn của một lớp không nên xếp vào hai ngày học liên tiếp nhau. 1

Quá trình triển khai và kiểm thử phần mềm được phân định thành kiểm thử cài đặt Frontend (Bảng 52), Backend (Bảng 53) và 9 nhóm kịch bản kiểm thử chức năng (Bảng 54 đến Bảng 62) bao gồm: đăng nhập, quản lý giáo viên, phân công giáo viên, quản lý lớp học, phân công lớp học, quản lý môn học, phân công chủ nhiệm, phân công giảng dạy và quản lý thời khóa biểu.


Nội dung chính theo từng chương

Chương 1. Cơ sở lý thuyết

Chương này trình bày các nền tảng kỹ thuật và cơ sở giải thuật của đề tài:

  • Tổng quan về ngôn ngữ C# với các ưu điểm về tính dễ tiếp cận, hiệu suất biên dịch cao, hỗ trợ đa nền tảng và hạn chế về mức độ phụ thuộc vào hệ sinh thái Microsoft.
  • Nền tảng ASP.NET Core, cơ chế Middleware và kỹ thuật tiêm phụ thuộc (Dependency Injection).
  • Thư viện Entity Framework Core và kỹ thuật truy vấn dữ liệu LINQ giúp giảm tải mã boilerplate.
  • Framework Angular, ngôn ngữ TypeScript và kiến trúc RESTful API chuẩn hóa theo các phương thức HTTP.
  • Nguyên lý giải thuật di truyền (GA) với chu trình tiến hóa qua các bước: khởi tạo quần thể ban đầu, tính toán độ thích nghi, chọn lọc theo xếp hạng, lai ghép 1 điểm, đột biến ngẫu nhiên và kiểm soát tuổi cá thể.

Chương 2. Khảo sát và phân tích hiện trạng

Chương 2 tập trung khảo sát các giải pháp quản lý nhà trường đang lưu hành:

  • Đánh giá hệ thống SMAS (Viettel) và vnEdu (VNPT): Nhận diện các ưu thế về quản lý học sinh, điểm danh, sổ liên lạc điện tử nhưng chỉ ra nhược điểm về giao diện phức tạp, trải nghiệm người dùng chưa tối ưu và hạn chế trong việc tạo thời khóa biểu tự động chuyên sâu.
  • Phân tích ứng dụng TKB 11.0: Nhận định đây là phần mềm xếp thời khóa biểu lâu đời (từ năm 1989) với các thuật toán mạnh mẽ (Fix Position Replacement, Dynamic Position Replacement), tuy nhiên nhược điểm lớn là phần mềm thương mại trả phí, hoạt động ngoại tuyến (offline) trên hệ điều hành máy tính để bàn (PC), không thể đồng bộ hóa dữ liệu trực tuyến.
  • Xác định hệ thống yêu cầu: Xác lập yêu cầu chức năng (lưu trữ thông tin, tạo thời khóa biểu, kết xuất báo cáo, quản lý chuyên môn) và yêu cầu phi chức năng (bảo mật, thiết kế Responsive thích ứng thiết bị, tốc độ tải nhanh, độ tương thích trình duyệt Chrome, Firefox, Safari, Edge).

Chương 3. Mô hình hóa yêu cầu

Chương 3 chuẩn hóa yêu cầu phần mềm bằng lược đồ Use Case và biểu đồ tuần tự:

  • Xác định tác nhân duy nhất có toàn quyền quản trị và vận hành hệ thống là Ban lãnh đạo nhà trường (BLĐ).
  • Xây dựng danh mục 26 Use Case (từ UC_01 đến UC_26) bao quát toàn bộ quy trình: xác thực người dùng (Login, Logout); quản lý lớp học (View, Add, Edit, Delete Classes); quản lý phân công lớp học (View, Add, Edit, Delete Class Assignments); quản lý hồ sơ giáo viên (View, Add, Edit, Delete Teachers); quản lý phân công môn học (View, Add, Edit, Delete Assignments); quản lý môn học (View, Add, Edit, Delete Subjects); quản lý và sinh thời khóa biểu (View, Generate, Edit, Delete Timetable).
  • Trình bày đặc tả chi tiết cho từng Use Case kèm 22 biểu đồ tuần tự phản ánh luồng tương tác giữa Tác nhân, Giao diện (Boundary), Bộ điều khiển (Controller) và Cơ sở dữ liệu.

Chương 4. Thiết kế phần mềm

Chương này chi tiết hóa cấu trúc dữ liệu và mô hình hướng đối tượng:

  • Thiết lập lược đồ thực thể quan hệ (ERD) và lược đồ lớp (Class Diagram) bảo đảm tính toàn vẹn dữ liệu.
  • Thiết kế chi tiết cấu trúc 8 bảng dữ liệu quan hệ trong hệ quản trị SQL Server (Teachers, Classes, Subjects, SubjectClasses, SubjectTeachers, Assignments, Timetables, TimetableUnits), định nghĩa tường minh các khóa chính, khóa ngoại và các trường thuộc tính quy định số tiết, khối lớp, vai trò chủ nhiệm và vị trí tiết dạy.

Chương 5. Thiết kế giao diện xử lý

Chương 5 minh họa trực quan 15 giao diện người dùng tương ứng với các bảng chú thích từ Bảng 37 đến Bảng 51:

  • Giao diện đăng nhập hệ thống và bảng điều khiển tổng quan (Dashboard).
  • Giao diện danh sách lớp học, biểu mẫu thêm lớp học và màn hình cập nhật giáo viên chủ nhiệm.
  • Giao diện quản lý danh mục môn học, chi tiết cấu hình môn học theo khối.
  • Giao diện quản lý hồ sơ giáo viên, màn hình phân công chủ nhiệm và phân công giảng dạy chuyên môn.
  • Giao diện quản lý danh sách các bản thời khóa biểu và giao diện cấu hình tham số kích hoạt giải thuật sinh thời khóa biểu tự động.

Chương 6. Cài đặt và kiểm thử ứng dụng

Chương 6 tổng kết quá trình hiện thực hóa mã nguồn và đánh giá chất lượng phần mềm:

  • Cấu hình môi trường thực thi cho Frontend (NodeJS, Angular CLI) và Backend (.NET SDK, SQL Server).
  • Thực thi 9 bảng kịch bản kiểm thử chức năng (từ Bảng 54 đến Bảng 62) cho các ca kiểm thử: đăng nhập hệ thống, quản lý và phân công giáo viên, quản lý và phân công lớp học, quản lý danh mục môn học, phân công chủ nhiệm, phân công giảng dạy và quản lý thời khóa biểu tự động, ghi nhận kết quả đáp ứng đúng yêu cầu thiết kế ban đầu.

Kết quả và đóng góp

Về kết quả đạt được:

  • Xây dựng hoàn chỉnh ứng dụng web quản lý trường THPT với đầy đủ 26 chức năng đã mô hình hóa, giao diện Responsive tương thích nhiều loại màn hình.
  • Ứng dụng thành công giải thuật di truyền vào việc giải quyết bài toán xếp thời khóa biểu, đáp ứng 100% các ràng buộc cứng (H01 đến H11) và tối ưu hóa thỏa mãn các ràng buộc mềm (S01 đến S07) theo trọng số định sẵn.
  • Trình bày và làm chủ trên 90% khối lượng kiến thức liên quan đến các công nghệ hiện đại gồm C#, ASP.NET Core Web API, Entity Framework Core, Angular và SQL Server.

Về giải pháp và đóng góp của đề tài:

  • Cung cấp một giải pháp quản lý trực tuyến tập trung thay thế cho phương thức quản lý rời rạc hoặc sử dụng các phần mềm desktop truyền thống.
  • Khắc phục hạn chế lớn của phần mềm TKB 11.0: chuyển đổi từ mô hình ứng dụng offline sang nền tảng web trực tuyến, cho phép truy cập linh hoạt qua trình duyệt, không đòi hỏi cài đặt phức tạp trên máy trạm của người dùng.
  • Chuẩn hóa quy trình phân công giảng dạy và tự động hóa khâu lập lịch biểu phức tạp, giúp giảm thiểu đáng kể thời gian và sai sót chủ quan của người làm công tác quản lý đào tạo tại trường THPT.

Hạn chế và hướng nghiên cứu tiếp

Hạn chế của đề tài:

  • Hệ thống tập trung chủ yếu vào tác nhân Ban lãnh đạo nhằm giải quyết bài toán quản trị và lập lịch biểu, chưa mở rộng các phân hệ tài khoản riêng biệt dành cho giáo viên bộ môn, học sinh và phụ huynh (như theo dõi điểm số, liên lạc điện tử).
  • Thời gian tính toán của giải thuật di truyền có thể gia tăng khi quy mô số lớp, số giáo viên và số lượng ràng buộc mở rộng ở mức độ trường học có quy mô rất lớn.
  • Nền tảng công nghệ chịu sự phụ thuộc nhất định vào hệ sinh thái của Microsoft (.NET, SQL Server).

Hướng nghiên cứu và phát triển tiếp theo:

  • Tích hợp thêm các thuật toán tối ưu hóa bổ trợ như tìm kiếm Tabu (Tabu Search) hoặc thuật toán tham lam (Greedy Algorithms) kết hợp với giải thuật di truyền để tăng tốc độ hội tụ và tìm kiếm nghiệm tối ưu toàn cục nhanh hơn.
  • Mở rộng phân quyền người dùng: xây dựng cổng thông tin cho giáo viên tra cứu lịch dạy cá nhân và cổng thông tin học sinh tra cứu thời khóa biểu lớp.
  • Bổ sung tính năng xuất kết quả thời khóa biểu và danh sách phân công ra các định dạng chuẩn văn phòng (Excel, PDF) để phục vụ in ấn trực tiếp.

Giá trị tham khảo

Đồ án là tài liệu tham khảo giá trị cho các đối tượng sau:

  • Sinh viên chuyên ngành Công nghệ phần mềm và Hệ thống thông tin: Cung cấp tài liệu mẫu mực về quy trình phân tích thiết kế hệ thống theo chuẩn UML, từ khảo sát hiện trạng, mô hình hóa Use Case, biểu đồ tuần tự cho đến thiết kế cơ sở dữ liệu quan hệ hoàn chỉnh.
  • Lập trình viên xây dựng ứng dụng web phân tầng: Minh họa thực tế cách tích hợp giữa ASP.NET Core Web API, Entity Framework Core và Angular, cùng phương pháp chuẩn hóa API bằng Swagger.
  • Người nghiên cứu bài toán lập lịch (Timetabling Problem): Cung cấp mô hình toán học chi tiết về việc chuyển đổi các quy chuẩn sư phạm thực tế thành 18 ràng buộc định lượng (11 ràng buộc cứng, 7 ràng buộc mềm) kèm cơ chế thiết lập nhiễm sắc thể, đột biến và hàm thích nghi trong giải thuật di truyền.

Câu hỏi thường gặp

1. Giải thuật di truyền được biểu diễn và vận hành như thế nào trong bài toán thời khóa biểu của đề tài?
Trong đề tài, một cá thể đại diện cho toàn bộ thời khóa biểu của trường; một nhiễm sắc thể là lịch học của một lớp cụ thể. Thuật toán sử dụng phương pháp chọn lọc theo xếp hạng (Rank-based Selection) kết hợp chọn lọc cạnh tranh (Tournament Selection), phép lai ghép 1 điểm cắt (Single-point Crossover), phép đột biến hoán đổi 2 tiết ngẫu nhiên trong một lớp và cơ chế loại bỏ cá thể theo tuổi để duy trì tính đa dạng của quần thể.

2. Các ràng buộc khi xếp thời khóa biểu được phân cấp và gán trọng số ra sao?
Các ràng buộc được chia thành hai nhóm:

  • Ràng buộc cứng (H01 - H11): Mang trọng số 1000, bắt buộc phải thỏa mãn tuyệt đối (không trùng giáo viên, không trùng lớp, tính đầy đủ của phân công, môn học chỉ học 1 lần/buổi, giới hạn phòng tin học, giáo viên có ít nhất 1 ngày nghỉ trong tuần).
  • Ràng buộc mềm (S01 - S07): Mang trọng số thấp hơn từ 1 đến 10, đóng vai trò tối ưu hóa sự thuận tiện (tránh tiết đôi qua giờ chơi - trọng số 2; giảm số buổi dạy, hạn chế tiết trống, thời gian nghỉ giữa 2 buổi, tiết cách ngày - trọng số 1; đáp ứng lịch bận của giáo viên - trọng số 10).

3. Tác nhân nào tham gia vận hành hệ thống và có bao nhiêu ca sử dụng (use case) được xây dựng?
Hệ thống xác định một tác nhân duy nhất là Ban lãnh đạo nhà trường (BLĐ) với toàn quyền quản trị. Có tổng cộng 26 ca sử dụng được phân tích và thiết kế chi tiết (từ UC_01 đến UC_26), chia thành các nhóm chức năng: xác thực (Login, Logout), quản lý lớp học, phân công lớp học, quản lý giáo viên, phân công chuyên môn, quản lý môn học và quản lý/sinh thời khóa biểu tự động.

4. Tại sao nhóm tác giả lại lựa chọn phát triển ứng dụng trên nền tảng Web thay vì ứng dụng Desktop như phần mềm TKB 11.0?
Qua khảo sát thực tế, phần mềm TKB 11.0 dù có thuật toán mạnh nhưng là ứng dụng ngoại tuyến (offline) chỉ chạy trên PC, có thu phí và không hỗ trợ đồng bộ dữ liệu giữa các thiết bị. Việc xây dựng ứng dụng Web dựa trên ASP.NET Core và Angular giúp ban quản lý nhà trường truy cập dữ liệu linh hoạt mọi lúc mọi nơi qua trình duyệt mà không cần cài đặt phần mềm cục bộ.

5. Cơ sở dữ liệu của phần mềm gồm những bảng dữ liệu nào?
Hệ thống sử dụng cơ sở dữ liệu quan hệ Microsoft SQL Server gồm 8 bảng chính: Teachers (thông tin giáo viên), Classes (danh mục lớp), Subjects (danh mục môn học), SubjectClasses (môn học phân cho lớp), SubjectTeachers (môn học phân cho giáo viên), Assignments (phân công giảng dạy chi tiết), Timetables (thông tin bảng thời khóa biểu) và TimetableUnits (dữ liệu chi tiết từng ô tiết học trong thời khóa biểu).


Kết luận

Đồ án "Xây dựng Website quản lý trường Trung học phổ thông" của sinh viên Phan Duy Lâm và Bùi Quốc Tĩnh đã hoàn thành toàn diện các mục tiêu nghiên cứu và nhiệm vụ kỹ thuật được giao. Bằng việc kết hợp kiến trúc web hiện đại (ASP.NET Core, Angular, SQL Server) với giải thuật di truyền (Genetic Algorithm), hệ thống đã giải quyết hiệu quả bài toán tự động hóa xếp thời khóa biểu và quản trị chuyên môn trường THPT. Kết quả nghiên cứu có tính thực tiễn cao, đóng vai trò tài liệu kỹ thuật hữu ích cho việc phát triển các giải pháp tin học hóa quản lý giáo dục.