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

Trong bối cảnh xã hội ngày càng phát triển, nhu cầu giáo dục và đào tạo tăng cao kéo theo sự gia tăng số lượng học sinh nhập học hàng năm tại các cơ sở giáo dục. Phương thức quản lý và lưu trữ thông tin học sinh truyền thống trên sổ sách giấy tờ bộc lộ nhiều bất cập, tiêu tốn nhân lực và thời gian xử lý. Thực tế khảo sát cho thấy nhiều trường học vẫn duy trì các công việc mang tính chất định kỳ và lặp đi lặp lại nhưng phần lớn chỉ được xử lý thủ công hoặc quản lý cục bộ trên Microsoft Excel. Các công việc này bao gồm: tiếp nhận hồ sơ đầu cấp, phân chia và cân đối lớp học, quản lý danh mục môn học, sắp xếp thời khóa biểu, cũng như ghi nhận và tính toán điểm số.

Trước sự phát triển của các dịch vụ mạng và công nghệ thông tin, đồ án "Xây dựng phần mềm Quản lý học sinh" được nhóm sinh viên thuộc Trường Đại học Công nghệ Thông tin – Đại học Quốc gia TP.HCM thực hiện nhằm giải quyết các bài toán nghiệp vụ trường học. Đề tài tập trung vào việc tự động hóa và chuẩn hóa các quy trình quản trị học vụ, hỗ trợ cán bộ giáo vụ và giáo viên giảm tải thao tác thủ công, đồng thời nâng cao độ chính xác trong việc lưu trữ và tra cứu thông tin học tập.

Phạm vi nghiên cứu và triển khai của đề tài tập trung vào các nghiệp vụ nòng cốt tại các trường trung học phổ thông, bao gồm:

  1. Tiếp nhận hồ sơ học sinh mới (độ tuổi quy định từ 15 đến 20 tuổi).
  2. Xây dựng danh sách lớp và phân bổ học sinh vào 3 khối lớp (khối 10, 11, 12) với sĩ số tối đa không quá 40 học sinh/lớp.
  3. Quản lý thông tin cá nhân và tra cứu kết quả học tập.
  4. Nhập liệu, tính toán và lưu trữ bảng điểm chi tiết các môn học theo 2 học kỳ (điểm hệ số 15 phút, điểm 1 tiết và điểm trung bình).
  5. Lập báo cáo tổng kết định kỳ theo môn học và theo học kỳ.
  6. Cho phép tùy chỉnh, thay đổi các tham số quy định hệ thống (tuổi tiếp nhận, sĩ số, cơ cấu lớp, môn học, chuẩn điểm đạt).

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

Đồ án áp dụng phương pháp luận kỹ thuật phần mềm chuẩn trong quy trình phân tích và thiết kế hệ thống thông tin, cụ thể:

  • Khung kiến trúc hệ thống: Ứng dụng mô hình kiến trúc 3 lớp (Three-layer Architecture) bao gồm:

    • Lớp Giao diện (Presentation Layer): Đảm nhiệm việc tương tác với người dùng qua giao diện ứng dụng (Winform, Web Browser), nhận dữ liệu đầu vào và kiểm tra tính hợp lệ cơ bản trước khi xử lý.
    • Lớp Nghiệp vụ (Business Layer): Chứa đựng các quy tắc xử lý logic nghiệp vụ riêng của bài toán quản lý học sinh, điều phối dữ liệu giữa lớp giao diện và lớp dữ liệu.
    • Lớp Dữ liệu (Data Layer): Thực hiện các thao tác kết nối cơ sở dữ liệu, thi hành các câu lệnh truy vấn, thêm, xóa, sửa và đảm bảo tính toàn vẹn dữ liệu.
  • Phương pháp phân tích và thiết kế:

    • Mô hình hóa yêu cầu: Sử dụng sơ đồ luồng dữ liệu (Data Flow Diagram - DFD) và xây dựng bảng ma trận trách nhiệm nghiệp vụ nhằm phân định rõ tương tác giữa người dùng và phần mềm.
    • Thiết kế dữ liệu theo thuật toán logic: Tiếp cận thiết kế cơ sở dữ liệu dựa trên hai tiêu chuẩn: tính đúng đắn (đáp ứng đúng biểu mẫu nghiệp vụ hiện tại) và tính tiến hóa (khả năng mở rộng, thay đổi tham số hệ thống mà không làm phá vỡ cấu trúc cơ sở dữ liệu).
  • Nguồn dữ liệu và công cụ kỹ thuật:

    • Môi trường lưu trữ và xử lý: Microsoft SQL Server quản lý cơ sở dữ liệu quan hệ (Student Database).
    • Công nghệ phát triển: Nền tảng ASP.NET và Windows Forms (Winform) cho thiết kế giao diện và xử lý logic kết nối.
    • Định dạng dữ liệu phối hợp: Tiếp nhận dữ liệu đầu vào từ Microsoft Excel và xuất báo cáo qua Winfax/Winform.

Thiết kế và triển khai

Hệ thống được thiết kế hoàn chỉnh từ kiến trúc luồng dữ liệu, thuật toán xử lý đến mô hình cơ sở dữ liệu quan hệ gồm 17 bảng.

+-------------------------------------------------------------+
|               LỚP GIAO DIỆN (PRESENTATION)                  |
|     Giao diện Winform / Trình duyệt web (WML, HTML)        |
+------------------------------+------------------------------+
                               | Request / Response
+------------------------------v------------------------------+
|                LỚP NGHIỆP VỤ (BUSINESS)                     |
|           Xử lý logic, kiểm tra ràng buộc (ASP.NET)          |
+------------------------------+------------------------------+
                               | Query / Result
+------------------------------v------------------------------+
|                  LỚP DỮ LIỆU (DATA)                         |
|      Microsoft SQL Server (Lưu trữ và thực thi dữ liệu)     |
+-------------------------------------------------------------+

1. Kiến trúc phân rã các yêu cầu phi chức năng

Hệ thống thiết lập các tiêu chí kỹ thuật chi tiết để đảm bảo tính sẵn sàng khi vận hành:

Loại yêu cầu Quy định kỹ thuật chi tiết
Yêu cầu hiệu quả Tốc độ xử lý tức thì cho mọi nghiệp vụ tiếp nhận, xếp lớp, tra cứu, lập báo cáo; dung lượng lưu trữ đáp ứng dữ liệu điểm lớn.
Yêu cầu bảo mật Phân quyền chi tiết trên 4 nhóm: Quản trị hệ thống, Ban giám hiệu, Giáo vụ và Khác; bảo vệ thông tin hồ sơ và điểm số.
Yêu cầu an toàn Hỗ trợ phục hồi hồ sơ học sinh đã xóa; cho phép hủy thật sự; nghiêm cấm xóa lớp học khi đang có dữ liệu học sinh bên trong.
Yêu cầu công nghệ Khả năng xác định lỗi trung bình trong 10–15 phút; dễ mở rộng tính năng mới; dễ mang chuyển sang hệ quản trị CSDL mới trong tối đa 2–3 ngày; mã nguồn có thể tái sử dụng cho phần mềm quản lý học sinh cấp 1 & 2 trong 3 ngày.

2. Thiết kế dữ liệu logic

Cơ sở dữ liệu của phần mềm quản lý học sinh được chuẩn hóa gồm 17 bảng dữ liệu quan hệ:

STT Tên bảng dữ liệu Diễn giải chức năng Các trường thuộc tính chính
1 HOCSINH Lưu trữ hồ sơ lý lịch học sinh MaHS (PK), HoTen, GioiTinh, NgSinh, DiaChi, Email, Tuoi
2 LOP Thông tin các lớp học trong trường MaLop (PK), TenLop, SiSo, MaKhoi (FK)
3 KHOI Danh mục các khối lớp (10, 11, 12) MaKhoi (PK), TenKhoi
4 QUATRINHHOC Quá trình theo học của học sinh theo kỳ MaQTH/MaTKM (PK), MaLop (FK), MaHK (FK), MaHS (FK), DiemTB_HocKy
5 HOCKY Danh mục học kỳ và năm học MaHK (PK), TenHocKy, NamHoc
6 MONHOC Danh mục các môn học trong chương trình MaMH (PK), TenMH
7 BANGDIEMMON Bảng điểm môn học của từng học sinh MaBDM (PK), MaMH (FK), MaQTH (FK), DiemTBMon
8 LOAIHINHKIEMTRA Hình thức kiểm tra và hệ số điểm MaLHKT (PK), HeSoDiem, ThoiGianKiemTra
9 CT_BANGDIEMMON Chi tiết điểm thành phần từng bài thi MaLHKT (PK/FK), MaBDM (PK/FK), Diem
10 CHUONGTRINHHOC Quy định cơ cấu môn và hệ số từng khối MaCTH (PK), MaKhoi (FK), MaMH (FK), HeSo
11 TONGKETMON Báo cáo tổng kết môn của từng lớp MaTKM (PK), MaMH (FK), MaLop (FK), MaHK (FK), SoLuongDat, TiLe
12 TONGKETHOCKY Báo cáo tổng kết toàn diện theo học kỳ MaTKHK (PK), MaLop (FK), MaHK (FK), SoLuongDat, TiLeDat
13 THAMSO Bảng lưu các quy định có thể thay đổi TenThamSo (PK), GiaTri
14 CHUCNANG Danh mục chức năng phần mềm MaChucNang (PK), TenChucNang, TenManHinhDuocLoad
15 NHOMNGUOIDUNG Danh mục nhóm người dùng phân quyền MaNhom (PK), TenNhom
16 NGUOIDUNG Tài khoản người dùng hệ thống TenNguoiDung (PK), MatKhau, MaNhom (FK)
17 PHANQUYEN Bảng ma trận phân quyền người dùng MaNhom (PK/FK), MaChucNang (PK/FK)

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

Chương 1: Giới thiệu

Chương 1 trình bày tổng quan về đề tài "Quản lý danh sách học sinh". Nội dung nhấn mạnh việc chuyển dịch từ hình thức quản lý truyền thống trên giấy tờ và các bảng tính Excel rời rạc sang ứng dụng phần mềm theo mô hình 3 lớp. Tác giả khảo sát thực trạng quản lý học vụ tại các trường, xác định rõ nhu cầu cấp thiết về việc số hóa các khâu: tiếp nhận học sinh, phân chia danh sách lớp, sắp xếp thời khóa biểu, quản lý môn học và lưu trữ điểm số.

Chương 2: Phân tích và mô hình hóa yêu cầu phần mềm

Chương 2 mô tả chi tiết quy trình thực hiện các nghiệp vụ chính cùng các biểu mẫu (BM) và quy định (QĐ) đi kèm:

  • Tiếp nhận học sinh (BM1 - QĐ1): Thu thập các trường thông tin cá nhân (Họ tên, Giới tính, Ngày sinh, Địa chỉ, Email), kiểm tra ràng buộc độ tuổi của học sinh trong phạm vi từ 15 đến 20 tuổi.
  • Lập danh sách lớp (BM2 - QĐ2): Phân bổ học sinh vào 3 khối (10, 11, 12), đảm bảo sĩ số mỗi lớp không vượt quá 40 học sinh.
  • Tra cứu học sinh (BM3): Tìm kiếm thông tin học sinh dựa trên họ tên hoặc lớp, trích xuất điểm trung bình học kỳ I và học kỳ II.
  • Nhập bảng điểm môn học (BM4 - QĐ4): Quản lý điểm kiểm tra 15 phút, điểm 1 tiết trên thang điểm từ 0 đến 10 cho 2 học kỳ.
  • Lập báo cáo tổng kết (BM5 - QĐ5): Tổng hợp báo cáo tổng kết theo môn học (BM5.1) và tổng kết theo học kỳ (BM5.2) dựa trên tiêu chuẩn học sinh đạt khi điểm trung bình từ 5.0 trở lên.
  • Thay đổi quy định (QĐ6): Cho phép người dùng có thẩm quyền thay đổi các giới hạn về tuổi tiếp nhận, sĩ số tối đa, số lượng và tên các lớp học, danh mục môn học, cũng như điểm số chuẩn để xét đạt.

Chương này cũng thiết lập bảng trách nhiệm chi tiết cho người dùng và phần mềm, cùng thuật toán điều khiển các luồng dữ liệu (D1 đến D6) từ khâu nhận thông tin, kết nối CSDL, kiểm tra ràng buộc logic, ghi nhận vào bộ nhớ phụ đến xuất thông tin ra màn hình/máy in.

Chương 3: Thiết kế dữ liệu

Chương 3 tập trung vào thiết kế hệ thống và thiết kế dữ liệu logic. Tác giả diễn giải chi tiết 3 lớp kiến trúc (Presentation, Business, Data), xác định vai trò của các thành phần như Trình duyệt web, kết nối ASP.NET và Microsoft SQL Server. Dựa trên các biểu mẫu và quy định từ Chương 2, chương này mô tả thuật toán lập sơ đồ logic theo 2 tiêu chí tính đúng đắn và tính tiến hóa, từ đó hình thành cấu trúc 17 bảng dữ liệu quan hệ kèm các khóa chính, khóa ngoại và ràng buộc toàn vẹn.

Chương 4: Thiết kế giao diện

Chương 4 xây dựng sơ đồ liên kết giữa các màn hình chức năng và phân loại hệ thống màn hình tương tác, bao gồm:

  • Màn hình đăng nhập (nhập liệu tài khoản và xác thực mật khẩu).
  • Màn hình quản lý học sinh (xuất danh sách và quản lý thông tin chung).
  • Màn hình thay đổi độ tuổi (nhập liệu tham số tuổi tối thiểu và tối đa).
  • Màn hình tra cứu học sinh (màn hình tra cứu theo tiêu chí và hiển thị kết quả học tập).
  • Màn hình thêm học sinh (nhập liệu và lưu trữ thông tin hồ sơ học sinh mới).

Chương 5: Cài đặt và thử nghiệm

Chương 5 trình bày việc hiện thực hóa các chức năng phần mềm đã được thiết kế trên môi trường Windows Forms và kết nối cơ sở dữ liệu SQL Server, tiến hành chạy thử nghiệm các ca kiểm thử nghiệp vụ (tiếp nhận hồ sơ, tính toán điểm trung bình, xếp lớp và phân quyền).

Chương 6: Nhận xét và kết luận

Chương 6 tổng kết các kết quả đạt được của phần mềm trong việc đáp ứng đầy đủ các yêu cầu nghiệp vụ đặt ra, đánh giá mức độ ổn định của các chức năng và mức độ thuận tiện trong thao tác của người dùng.

Chương 7: Hướng phát triển

Chương 7 đưa ra các đề xuất mở rộng phần mềm trong tương lai nhằm hoàn thiện hơn các quy trình quản lý học vụ phức tạp chưa được bao hàm trong phạm vi đồ án.

Chương 8: Tài liệu tham khảo

Liệt kê các tài liệu, giáo trình kỹ thuật phần mềm, tài liệu hướng dẫn về ngôn ngữ lập trình, hệ quản trị cơ sở dữ liệu SQL Server và mô hình 3 lớp được nhóm sử dụng trong quá trình thực hiện đề tài.

Chương 9: Bảng phân công công việc

Chương 9 ghi nhận chi tiết nhiệm vụ và trách nhiệm cụ thể của 5 thành viên trong nhóm thực hiện đề tài (Đỗ Vũ Gia Cần, Nguyễn Quốc Huy, Nguyễn Thành Công, Lý Sô Ly, Trần Thị Ngọc Quyên).

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

Đồ án đã xây dựng hoàn chỉnh hồ sơ phân tích thiết kế hệ thống phần mềm quản lý học sinh với các kết quả cụ thể:

  1. Chuẩn hóa quy trình nghiệp vụ: Chuyển đổi toàn bộ các khâu nghiệp vụ quản lý học sinh (tiếp nhận, xếp lớp, nhập điểm, báo cáo) từ phương thức thủ công sang quy trình xử lý dữ liệu tự động có ràng buộc chặt chẽ.
  2. Thiết kế dữ liệu có khả năng tiến hóa: Xây dựng mô hình 17 bảng dữ liệu với bảng THAMSO chuyên biệt, cho phép thay đổi linh hoạt các quy định (độ tuổi từ 15–20, sĩ số tối đa 40, chuẩn điểm đạt 5.0, danh mục môn học) trực tiếp từ giao diện mà không cần chỉnh sửa cấu trúc mã nguồn hay cấu trúc bảng.
  3. Phân quyền và bảo mật chặt chẽ: Phân định rõ 4 nhóm quyền sử dụng (Quản trị hệ thống, Ban giám hiệu, Giáo vụ, Khác), bảo vệ tính toàn vẹn của hồ sơ và ngăn chặn việc xóa lớp học khi đang có dữ liệu học sinh.

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

  • Hạn chế: Nhằm phù hợp với khuôn khổ môn học Nhập môn Công nghệ phần mềm, đồ án đã chủ động lược bớt một số công việc mang tính phức tạp cao trong thực tế quản lý trường học như: sắp xếp thời khóa biểu tự động, quản lý học phí, theo dõi kỷ luật và điểm danh chi tiết từng ngày.
  • Hướng nghiên cứu tiếp: Mở rộng và tích hợp các module nghiệp vụ nâng cao; phát triển phiên bản trên nền tảng web hoàn chỉnh để phụ huynh và học sinh có thể trực tiếp tra cứu kết quả trực tuyến từ xa; tối ưu hóa khả năng tái sử dụng mã nguồn để áp dụng cho khối trường tiểu học và trung học cơ sở.

Giá trị tham khảo

Đồ án là tài liệu tham khảo phù hợp cho sinh viên chuyên ngành Công nghệ Phần mềm, Hệ thống Thông tin và Công nghệ Thông tin đang thực hiện đồ án môn học hoặc khóa luận về phân tích thiết kế hệ thống. Tài liệu cung cấp cách tiếp cận bài bản trong việc lập sơ đồ luồng dữ liệu (DFD), thiết kế cơ sở dữ liệu quan hệ có tính tiến hóa và phân rã kiến trúc phần mềm theo mô hình 3 lớp.

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

1. Độ tuổi quy định khi tiếp nhận học sinh vào trường là bao nhiêu và có thể thay đổi được không?
Theo quy định chuẩn ban đầu (QĐ1), học sinh được tiếp nhận phải trong độ tuổi từ 15 đến 20 tuổi. Quy định này có thể thay đổi linh hoạt thông qua chức năng cập nhật bảng THAMSO (với tham số Tuoi_min và Tuoi_max) trên màn hình thay đổi độ tuổi.

2. Quy định về phân chia lớp học và sĩ số tối đa được thiết kế như thế nào?
Hệ thống quản lý 3 khối lớp gồm khối 10, 11 và 12 (QĐ2). Sĩ số mỗi lớp được giới hạn tối đa không quá 40 học sinh. Người dùng có quyền thay đổi sĩ số tối đa cũng như thêm, sửa, xóa tên và số lượng lớp học trong trường (với điều kiện không được xóa lớp khi đã có học sinh).

3. Điểm số của học sinh được quản lý theo những đầu điểm nào và tiêu chuẩn đạt môn là gì?
Hệ thống quản lý điểm trên thang điểm từ 0 đến 10 cho 2 học kỳ (Học kỳ I và Học kỳ II), bao gồm điểm kiểm tra 15 phút, điểm kiểm tra 1 tiết và điểm trung bình môn. Học sinh được xếp loại đạt môn hoặc đạt học kỳ khi có điểm trung bình từ 5.0 trở lên (QĐ5).

4. Kiến trúc 3 lớp trong phần mềm phân chia trách nhiệm cụ thể như thế nào?
Kiến trúc gồm: Lớp Presentation (giao diện Winform/Web) đảm nhận nhận dữ liệu và hiển thị kết quả; Lớp Business (ASP.NET) xử lý các quy tắc logic nghiệp vụ và kiểm tra tính toàn vẹn; Lớp Data (kết nối Microsoft SQL Server) thực hiện các tác vụ truy vấn và lưu trữ trên cơ sở dữ liệu Student Database.

5. Cơ chế an toàn dữ liệu của phần mềm xử lý việc xóa dữ liệu ra sao?
Hệ thống hỗ trợ phục hồi hồ sơ học sinh đã bị xóa tạm thời, cho phép tùy chọn hủy thật sự khi có yêu cầu và áp dụng ràng buộc an toàn tuyệt đối: không cho phép xóa lớp học khi lớp đó đã có dữ liệu học sinh.

Kết luận

Đồ án "Xây dựng phần mềm Quản lý học sinh" của nhóm sinh viên Trường Đại học Công nghệ Thông tin – ĐHQG TP.HCM đã giải quyết toàn diện bài toán tin học hóa quản trị học vụ trường học thông qua mô hình kiến trúc 3 lớp và cơ sở dữ liệu 17 bảng được chuẩn hóa. Đề tài thể hiện rõ nét tư duy thiết kế phần mềm hiện đại thông qua việc kết hợp giữa tính đúng đắn của nghiệp vụ và tính tiến hóa của hệ thống tham số. Đây là công trình đồ án môn học có cấu trúc phân tích mạch lạc, mang giá trị ứng dụng và tham khảo học thuật thiết thực.