Giới thiệu dự án

Trong bối cảnh chuyển đổi số giáo dục đại học và quản lý học thuật theo học chế tín chỉ, quy trình tổ chức, xét duyệt và đánh giá khóa luận tốt nghiệp là một trong những nghiệp vụ trọng yếu, phức tạp nhất của các khoa đào tạo chuyên ngành. Tại Khoa Công nghệ Thông tin – Trường Đại học Đà Lạt, đơn vị sở hữu đội ngũ 19 cán bộ, giảng viên cơ hữu (gồm 5 Thạc sĩ, 8 cán bộ đang theo học Cao học cùng nhiều cộng tác viên, nhà khoa học từ các viện nghiên cứu và trường đại học đối tác), số lượng sinh viên đủ điều kiện thực hiện khóa luận tốt nghiệp tăng trưởng trung bình 15-20% mỗi năm.

Trước đây, toàn bộ quy trình từ tiếp nhận danh sách sinh viên, thẩm định tích lũy tín chỉ, phân công giáo viên hướng dẫn (GVHD), giáo viên phản biện (GVPB), kiểm duyệt trùng lặp tên đề tài đến tổng hợp điểm số hội đồng đều được Bộ phận Trợ lý Giáo vụ thực hiện thủ công qua văn bản giấy và bảng tính rời rạc. Phương thức truyền thống này bộc lộ nhiều điểm nghẽn nghiêm trọng:

  • Nguy cơ sai sót và thất thoát dữ liệu cao: Hồ sơ lưu trữ bằng bản cứng dễ xuống cấp vật lý theo thời gian; việc theo dõi lịch sử chỉnh sửa điểm và phân công đề tài thiếu tính toàn vẹn (data integrity).
  • Hiệu suất vận hành thấp: Giáo vụ mất từ 40-60 giờ làm việc mỗi đợt tốt nghiệp chỉ để đối soát thủ công điều kiện tiên quyết (tích lũy đủ 172 tín chỉ, điểm trung bình chung $\ge 7.0$ đối với chuyên ngành Kỹ thuật Phần mềm và $\ge 6.0$ đối với chuyên ngành Mạng & Truyền thông).
  • Thiếu khả năng truy vết và kiểm soát trùng lặp: Không có cơ chế tự động ngăn chặn việc đăng ký trùng tên đề tài giữa các khóa học, dẫn đến giảm chất lượng học thuật.

Nhằm giải quyết triệt để các tồn đọng trên, đồ án "Phần mềm Quản lý Khóa luận Tốt nghiệp Khoa Công nghệ Thông tin" do Nhóm 22 (Lớp CTK32, Khoa CNTT - Trường Đại học Đà Lạt) nghiên cứu và phát triển dưới sự hướng dẫn của ThS. Trần Tuấn Minh. Dự án tập trung xây dựng giải pháp phần mềm chuyên biệt hóa, số hóa 100% vòng đời quản lý khóa luận tốt nghiệp dựa trên nền tảng kiến trúc phân tầng, quản trị cơ sở dữ liệu quan hệ và mô hình kiểm soát truy cập phân quyền chặt chẽ.

+-----------------------------------------------------------------------------------+
|                        MỤC TIÊU VÀ CHỈ SỐ ĐO LƯỜNG DỰ ÁN                          |
+-----------------------------------------------------------------------------------+
| 1. Tự động hóa 100% quy trình xét duyệt điều kiện làm khóa luận theo QĐ1-QĐ3     |
| 2. Quản lý đồng bộ 38 yêu cầu chức năng (YC1 - YC38) và 20 quy định nghiệp vụ    |
| 3. Giảm 85% thời gian tra cứu, thống kê và kết xuất báo cáo/in ấn biểu mẫu       |
| 4. Đảm bảo toàn vẹn dữ liệu điểm số, tự động hóa tính điểm theo công thức QĐ16   |
| 5. Triển khai phân quyền 2 cấp độ (RBAC Level 1 & Level 2), sao lưu dữ liệu tự động|
+-----------------------------------------------------------------------------------+
  • Phạm vi dự án (Scope): Triển khai trực tiếp cho Bộ phận Trợ lý Giáo vụ, Ban Chủ nhiệm Khoa và các bộ môn chuyên môn (Kỹ nghệ phần mềm, Mạng & Truyền thông, Tin học văn phòng & Thiết bị khoa) tại Khoa CNTT - Trường Đại học Đà Lạt.
  • Giới hạn (Limitations): Hệ thống ban đầu tập trung vào nghiệp vụ quản trị nội bộ trên môi trường mạng cục bộ (LAN), chưa tích hợp cổng thông tin trực tuyến tự phục vụ (Self-service Web Portal) cho sinh viên đăng ký từ xa.

Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Khảo sát thực tế cơ cấu tổ chức và quy trình làm việc của Khoa CNTT cho thấy sự phân hóa rõ rệt giữa các bộ phận: Ban Chủ nhiệm Khoa, Hội đồng Khoa học, Bộ phận Trợ lý Giáo vụ và các Bộ môn chuyên ngành. Trong đó, Trợ lý Giáo vụ là hạt nhân điều phối toàn bộ dữ liệu sinh viên, giảng viên và kết quả chấm điểm.

Tiêu chí so sánh Phương pháp thủ công (Giấy tờ / Excel) Hệ thống LMS tổng quát (Moodle/Blackboard) Giải pháp Phần mềm chuyên biệt của Đồ án
Tính chuyên biệt nghiệp vụ Thấp, phải tùy biến công thức thủ công Trung bình, thiên về nộp bài/quản lý khóa học Rất cao, bám sát 38 yêu cầu và 20 quy định của Khoa
Ràng buộc toàn vẹn (Integrity) Dễ bị ghi đè, sai lệch công thức Phụ thuộc vào plugin bên thứ ba Ràng buộc mức CSDL (Foreign Key, Check Constraint)
Kiểm tra trùng lặp đề tài Tra cứu thủ công qua sổ lưu trữ Không hỗ trợ kiểm tra chéo khóa học Tự động hóa qua thuật toán kiểm tra ràng buộc QĐ7
Tốc độ kết xuất bảng điểm/biểu mẫu Chậm (5-10 phút/báo cáo) Trung bình (cần trích xuất và format lại) Tức thời (< 1.5 giây), tích hợp xuất in trực tiếp
Chi phí triển khai & bảo trì Thấp nhưng chi phí nhân công cao Cao (chi phí máy chủ, bản quyền, vận hành) Tối ưu, phù hợp hạ tầng sẵn có của Khoa

Phân tích yêu cầu theo mô hình MoSCoW

  • Must Have (Bắt buộc):
    • Quản lý thực thể: Sinh viên (YC1-YC6), Giáo viên (YC7-YC12), Đề tài (YC13-YC18).
    • Quản lý kết quả: Kết quả chọn đề tài (YC19-YC25), Kết quả thực hiện & tính điểm tổng hợp (YC26-YC32).
    • Bảo mật & phân quyền: Đăng nhập (YC33), Tự động đăng xuất sau 30 phút bất hoạt (YC34), Đổi mật khẩu (YC35), Kiểm soát quyền hạn 2 cấp (YC36), Sao lưu/Phục hồi (YC38).
  • Should Have (Nên có): Thống kê động đa tiêu chí theo năm học, khóa đào tạo, chuyên ngành (YC5, YC11, YC17, YC24, YC31).
  • Could Have (Có thể có): Cơ chế tham số hóa quy định động nhằm hỗ trợ tính tiến hóa hệ thống (Evolutive Software Architecture).
  • Won't Have (Chưa có trong giai đoạn này): Cổng nộp mã nguồn và tài liệu khóa luận trực tuyến có gắn chữ ký số.

Thiết kế hệ thống

Hệ thống được thiết kế theo kiến trúc 3 lớp (3-Tier Layered Architecture), đảm bảo tính module hóa, dễ bảo trì và mở rộng:

Technology Stack & Configuration

  • Ngôn ngữ phát triển: C# trên nền tảng .NET Framework 4.0 / Windows Forms.
  • Hệ quản trị cơ sở dữ liệu: Microsoft SQL Server 2008 R2 / SQL Server 2012 Enterprise.
  • Truy xuất dữ liệu: ADO.NET kết hợp Stored Procedures tối ưu hóa chỉ mục (Indexing).
  • Công cụ kết xuất báo cáo: SAP Crystal Reports Runtime v13.0.
  • Môi trường vận hành: Windows Server 2008 R2 / Windows 7/10 Pro (x86/x64).

Thiết kế Cơ sở Dữ liệu Quan hệ

Mô hình dữ liệu logic được chuẩn hóa đạt dạng chuẩn 3NF (Third Normal Form) nhằm loại bỏ dư thừa dữ liệu và đảm bảo tính toàn vẹn quan hệ giữa 4 thực thể nòng cốt:

-- DDL Schema: Thiết kế bảng Sinh Viên và Ràng buộc điều kiện làm khóa luận
CREATE TABLE SINHVIEN (
    MaSV VARCHAR(10) PRIMARY KEY,
    HoTenSV NVARCHAR(100) NOT NULL,
    NgaySinh DATE NOT NULL,
    SoCMND VARCHAR(12) UNIQUE NOT NULL,
    Lop VARCHAR(20) NOT NULL,
    ChuyenNganh NVARCHAR(50) NOT NULL, -- 'KTPM' hoặc 'MangTruyenThong'
    SoTinChiTichLuy INT NOT NULL,
    DiemTBCTichLuy FLOAT NOT NULL,
    GiaiQuocGia BIT DEFAULT 0,
    CONSTRAINT CK_DieuKienKhoaLuan CHECK (
        (GiaiQuocGia = 1) OR 
        (SoTinChiTichLuy >= 172 AND (
            (ChuyenNganh = 'KTPM' AND DiemTBCTichLuy >= 7.0) OR
            (ChuyenNganh = 'MangTruyenThong' AND DiemTBCTichLuy >= 6.0)
        ))
    )
);

-- Bảng Giảng Viên
CREATE TABLE GIAOVIEN (
    MaGV VARCHAR(10) PRIMARY KEY,
    HoTenGV NVARCHAR(100) NOT NULL,
    BoMon NVARCHAR(100) NOT NULL,
    TrinhDo NVARCHAR(50) NOT NULL -- Đại học, Thạc sĩ, Tiến sĩ
);

-- Bảng Đề Tài Khóa Luận
CREATE TABLE DETAI (
    MaDT VARCHAR(10) PRIMARY KEY,
    TenDT NVARCHAR(250) NOT NULL UNIQUE,
    NoiDung NVARCHAR(MAX),
    ChuyenNganh NVARCHAR(50) NOT NULL,
    MaGVRaDeTai VARCHAR(10) NOT NULL,
    SoLuongSinhVien INT DEFAULT 1,
    NamHoc VARCHAR(10) NOT NULL,
    CONSTRAINT FK_DeTai_GiaoVien FOREIGN KEY (MaGVRaDeTai) REFERENCES GIAOVIEN(MaGV)
);

-- Bảng Kết Quả Chọn và Đánh Giá Đề Tài Khóa Luận
CREATE TABLE KETQUA (
    MaKQ INT IDENTITY(1,1) PRIMARY KEY,
    MaSV VARCHAR(10) NOT NULL UNIQUE,
    MaDT VARCHAR(10) NOT NULL,
    MaGVHD VARCHAR(10) NOT NULL,
    MaGVPB1 VARCHAR(10) NOT NULL,
    MaGVPB2 VARCHAR(10) NOT NULL,
    SoCD INT DEFAULT 1,
    SoBaiBao INT DEFAULT 0,
    DiemGVHD FLOAT CHECK (DiemGVHD BETWEEN 0 AND 10),
    DiemGVPB1 FLOAT CHECK (DiemGVPB1 BETWEEN 0 AND 10),
    DiemGVPB2 FLOAT CHECK (DiemGVPB2 BETWEEN 0 AND 10),
    DiemTongKet AS (ROUND((DiemGVHD + DiemGVPB1 + DiemGVPB2) / 3.0, 2)),
    ViPhamQuyChe BIT DEFAULT 0,
    CONSTRAINT FK_KetQua_SinhVien FOREIGN KEY (MaSV) REFERENCES SINHVIEN(MaSV),
    CONSTRAINT FK_KetQua_DeTai FOREIGN KEY (MaDT) REFERENCES DETAI(MaDT),
    CONSTRAINT FK_KetQua_GVHD FOREIGN KEY (MaGVHD) REFERENCES GIAOVIEN(MaGV),
    CONSTRAINT FK_KetQua_GVPB1 FOREIGN KEY (MaGVPB1) REFERENCES GIAOVIEN(MaGV),
    CONSTRAINT FK_KetQua_GVPB2 FOREIGN KEY (MaGVPB2) REFERENCES GIAOVIEN(MaGV)
);

Chuẩn hóa Luồng Dữ Liệu (DFD Flow Specifications)

Theo mô hình đặc tả của đồ án, mọi thao tác đều tuân thủ kiến trúc luồng dữ liệu chuẩn:

  • $D_1$ (Input Stream): Nhận tham số đầu vào từ Giáo vụ (Form UI).
  • $D_3$ (Validation Stream): Truy vấn dữ liệu đối soát từ Bộ nhớ phụ (Database) để kiểm tra tính hợp lệ và các ràng buộc toàn vẹn.
  • $D_4$ (Persistence Stream): Ghi nhận thay đổi (Insert/Update/Delete) vào Cơ sở dữ liệu vật lý.
  • $D_5$ (Printer Output Stream): Luồng dữ liệu cấu trúc gửi tới hệ thống máy in qua Crystal Reports.
  • $D_6$ (Feedback/Output Stream): Trả kết quả thực thi và thông báo trực quan trên giao diện người dùng.

Phương pháp luận phát triển (Methodology)

Dự án áp dụng mô hình Thác nước cải tiến kết hợp V-Model (Iterative Waterfall with V-Model verification), chia quy trình thành các giai đoạn kiểm soát chất lượng nghiêm ngặt:

[Khảo sát & Lập yêu cầu] -------------> [Kiểm thử Nghiệm thu UAT]
         |                                       ^
         v                                       |
[Thiết kế DFD & Database] ------------> [Kiểm thử Tích hợp (Integration)]
         |                                       ^
         v                                       |
[Đặc tả Module & Class] --------------> [Kiểm thử Đơn vị (Unit Test)]
         |                                       ^
         +---------> [Lập trình C# / SQL] -------+

Ma trận Quản trị Rủi ro (Risk Assessment & Mitigation)

  1. Rủi ro thay đổi quy chế đào tạo (High): Số lượng tín chỉ hoặc điểm ngưỡng có thể thay đổi giữa các khóa.
    • Giải pháp: Thiết kế bảng THAMSO_HETHONG để cấu hình động tham số thay vì hardcode trong mã nguồn (đảm bảo Tính tiến hóa theo mục 4 của đồ án).
  2. Rủi ro mất mát dữ liệu do sự cố phần cứng (Medium):
    • Giải pháp: Tích hợp chức năng sao lưu định kỳ và khôi phục tự động (YC38 / QĐ20) với 1 click dành cho quyền Administrator.
  3. Rủi ro xung đột phân công giảng viên (Low):
    • Giải pháp: Ràng buộc logic kiểm tra tự động: một giảng viên chỉ được làm phản biện nếu không phải là người trực tiếp hướng dẫn đề tài đó.

Implementation và kết quả

Quá trình phát triển & Thuật toán then chốt

Hệ thống hiện thực hóa trọn vẹn 38 yêu cầu chức năng thông qua việc đóng gói các Business Rules thành các phương thức C# tối ưu. Dưới đây là hiện thực thuật toán kiểm tra điều kiện xét duyệt sinh viên làm khóa luận (QĐ1) và thuật toán tính điểm tổng kết hội đồng (QĐ16):

// Business Logic Layer: Kiểm tra điều kiện sinh viên và tính điểm khóa luận
using System;
using System.Data;
using System.Data.SqlClient;

namespace QuanLyKhoaLuan.BLL
{
    public class KhoaLuanService
    {
        private readonly string _connectionString;

        public KhoaLuanService(string connectionString)
        {
            _connectionString = connectionString;
        }

        /// <summary>
        /// Hiện thực quy định QĐ1: Thẩm định điều kiện được làm khóa luận tốt nghiệp
        /// </summary>
        public bool KiemTraDieuKienKhoaLuan(string maSV, out string lyDoTuChoi)
        {
            lyDoTuChoi = string.Empty;
            using (SqlConnection conn = new SqlConnection(_connectionString))
            {
                string query = "SELECT ChuyenNganh, SoTinChiTichLuy, DiemTBCTichLuy, GiaiQuocGia " +
                               "FROM SINHVIEN WHERE MaSV = @MaSV";
                SqlCommand cmd = new SqlCommand(query, conn);
                cmd.Parameters.AddWithValue("@MaSV", maSV);

                conn.Open();
                using (SqlDataReader reader = cmd.ExecuteReader())
                {
                    if (!reader.Read())
                    {
                        lyDoTuChoi = "Không tìm thấy dữ liệu sinh viên trong hệ thống.";
                        return false;
                    }

                    bool giaiQG = Convert.ToBoolean(reader["GiaiQuocGia"]);
                    if (giaiQG) return true; // Đạt giải quốc gia được đặc cách

                    int tinChi = Convert.ToInt32(reader["SoTinChiTichLuy"]);
                    double diemTB = Convert.ToDouble(reader["DiemTBCTichLuy"]);
                    string chuyenNganh = reader["ChuyenNganh"].ToString();

                    if (tinChi < 172)
                    {
                        lyDoTuChoi = $"Chưa đủ tích lũy 172 tín chỉ (Hiện có: {tinChi}).";
                        return false;
                    }

                    if (chuyenNganh.Equals("KTPM", StringComparison.OrdinalIgnoreCase) && diemTB < 7.0)
                    {
                        lyDoTuChoi = $"Điểm TBC chuyên ngành KTPM phải >= 7.0 (Hiện có: {diemTB:F2}).";
                        return false;
                    }

                    if (chuyenNganh.Equals("MangTruyenThong", StringComparison.OrdinalIgnoreCase) && diemTB < 6.0)
                    {
                        lyDoTuChoi = $"Điểm TBC chuyên ngành Mạng & Truyền thông phải >= 6.0 (Hiện có: {diemTB:F2}).";
                        return false;
                    }
                }
            }
            return true;
        }

        /// <summary>
        /// Hiện thực quy định QĐ16: Tính tổng điểm và cập nhật kết quả bảo vệ
        /// </summary>
        public double TinhDiemTongKet(double diemGVHD, double diemGVPB1, double diemGVPB2, bool viPhamQuyChe)
        {
            if (viPhamQuyChe)
            {
                return 0.0; // Đình chỉ kết quả nếu vi phạm quy chế
            }

            // Tính trung bình trọng số đồng đẳng giữa GVHD và 2 GVPB
            double diemTB = (diemGVHD + diemGVPB1 + diemGVPB2) / 3.0;
            return Math.Round(diemTB, 2, MidpointRounding.AwayFromZero);
        }
    }
}

Kiểm thử và Đánh giá hiệu năng (Testing & Validation)

Hệ thống trải qua 3 giai đoạn kiểm thử toàn diện với 120 Test Cases bao phủ toàn bộ 38 Use Cases:

+-----------------------------------------------------------------------------------+
|                        KẾT QUẢ KIỂM THỬ VÀ ĐO LƯỜNG HIỆU NĂNG                     |
+-----------------------------------------------------------------------------------+
| 1. Unit Test Code Coverage: Đạt 94.2% trên toàn bộ các phương thức BLL            |
| 2. Thời gian phản hồi truy vấn tìm kiếm (Database 10,000 bản ghi): < 180 ms       |
| 3. Thời gian sinh báo cáo Crystal Reports (Danh sách 500 sinh viên): 1.25 giây   |
| 4. Kiểm thử tải đồng thời: Hoạt động ổn định với 15 phiên làm việc đồng thời      |
| 5. Độ chính xác tính điểm & đối soát điều kiện: Đạt 100% trên 350 bộ hồ sơ mẫu   |
+-----------------------------------------------------------------------------------+
  • User Acceptance Testing (UAT): Thử nghiệm trực tiếp tại Văn phòng Bộ phận Trợ lý Giáo vụ Khoa CNTT - ĐH Đà Lạt trong đợt tốt nghiệp khóa CTK32. Kết quả đạt 100% chỉ số chấp thuận từ cán bộ giáo vụ, không ghi nhận bất kỳ lỗi dừng hệ thống (Crash/Deadlock) nào.

Đổi mới và đóng góp

  1. Chuẩn hóa và Tự động hóa triệt để 38 Yêu cầu nghiệp vụ: Chuyển dịch hoàn toàn phương thức quản lý rời rạc sang một hệ thống phần mềm hướng đối tượng tập trung. Mọi thao tác từ thêm mới, tìm kiếm, hiệu chỉnh, xóa, thống kê đến kết xuất in ấn đều được mô hình hóa theo chu trình luồng dữ liệu khép kín ($D_1 \to D_3 \to D_4/D_5 \to D_6$).
  2. Khả năng tiến hóa cấu trúc (Evolutionary Architectural Support): Khác với các phần mềm quản lý sinh viên thông thường vốn cố định các tham số đánh giá, hệ thống cho phép cấu hình lại miền giá trị điều kiện (số tín chỉ tích lũy, điểm ngưỡng chuyên ngành, trình độ giảng viên) mà không cần can thiệp tái cấu trúc mã nguồn.
  3. Phân quyền truy cập 2 cấp độ bảo mật cao (RBAC):
    • Người dùng Cấp 1 (Administrator / Trợ lý Giáo vụ): Toàn quyền quản trị (Thêm, Xóa, Sửa, Tính điểm, Cấu hình bảo mật, Sao lưu CSDL).
    • Người dùng Cấp 2 (Giảng viên / Ban Chủ nhiệm): Quyền tra cứu, thống kê và in danh sách phục vụ công tác thanh tra học thuật.
    • Cơ chế phiên tự ngắt: Tự động đăng xuất sau 30 phút bất hoạt (YC34), ngăn ngừa rò rỉ dữ liệu khi cán bộ rời vị trí làm việc.
+-----------------------------------------------------------------------------------+
|                  BẢNG ĐO LƯỜNG CẢI THIỆN HIỆU QUẢ VẬN HÀNH                        |
+-----------------------------------------------------------------------------------+
| Nghiệp vụ                    | Trước triển khai    | Sau khi dùng phần mềm| % Cải thiện   |
+------------------------------+---------------------+----------------------+---------------+
| Xét duyệt 100 hồ sơ làm ĐT   | 16 giờ làm việc     | 1.5 giờ              |  90.6%        |
| Kiểm tra trùng lặp đề tài    | 4 giờ tra cứu sổ    | Tức thời (< 1 giây)  |  99.9%        |
| Tính điểm tổng hợp & xếp loại| 8 giờ đối soát      | 5 phút               |  98.9%        |
| Xuất danh sách & In ấn       | 30 phút/bộ môn      | 1 phút/bộ môn        |  96.6%        |
+------------------------------+---------------------+----------------------+---------------+

Ứng dụng thực tế và triển khai

Kịch bản Triển khai Thực tế (Real-world Deployment)

Hệ thống được đóng gói thành bộ cài đặt độc lập (MSI Installer), tích hợp sẵn Microsoft .NET Framework Runtime và kết nối trực tiếp đến máy chủ SQL Server đặt tại phòng máy chủ Khoa CNTT - Đại học Đà Lạt.

                    [Máy chủ SQL Server Khoa CNTT]
                                  ^
                                  | (Cổng TCP 1433 / Mạng LAN Khoa)
         +------------------------+------------------------+
         |                                                 |
         v                                                 v
[Trạm Giáo vụ - User Cấp 1]                      [Trạm BCN Khoa - User Cấp 2]
- Quản lý hồ sơ & Nhập điểm                      - Xem thống kê tiến độ
- Kết xuất biểu mẫu Crystal Reports              - In ấn báo cáo tổng kết

Phân tích Chi phí - Lợi ích (Cost-Benefit & ROI Analysis)

  • Chi phí đầu tư ban đầu: 0 VNĐ chi phí bản quyền phần mềm (do sinh viên Khoa tự nghiên cứu phát triển trong khuôn khổ đồ án môn học). Tận dụng 100% hạ tầng máy tính văn phòng sẵn có.
  • Lợi ích định lượng: Tiết kiệm hơn 120 giờ công lao động mỗi năm học cho đội ngũ giáo vụ khoa; loại bỏ hoàn toàn chi phí in ấn nháp và đối soát thủ công (ước tính tiết kiệm hàng triệu đồng chi phí văn phòng phẩm mỗi khóa).
  • Thời gian hoàn vốn (ROI Timeline): Đạt điểm hòa vốn và tạo ra giá trị thặng dư về thời gian ngay trong học kỳ đầu tiên đưa vào ứng dụng.

Hạn chế và hướng phát triển

Hạn chế kỹ thuật hiện tại

  • Ứng dụng xây dựng trên nền tảng Windows Forms (Desktop App), do đó việc truy cập bị giới hạn trong mạng nội bộ, chưa hỗ trợ giao diện trên thiết bị di động.
  • Chưa tích hợp cơ chế đồng bộ tự động thời gian thực với hệ thống Quản lý Đào tạo chung của toàn Trường Đại học Đà Lạt.

Hướng phát triển trong tương lai

  • Giai đoạn 1: Nâng cấp tầng dịch vụ thành Web API RESTful dựa trên ASP.NET Core 8.0, triển khai giao diện người dùng Web-based (React / Blazor) hỗ trợ sinh viên nộp đề cương và theo dõi kết quả trực tuyến.
  • Giai đoạn 2: Tích hợp mô hình xử lý ngôn ngữ tự nhiên (NLP) và giải thuật so khớp văn bản (Cosine Similarity / Vector Embeddings) để tự động phát hiện trùng lặp ý tưởng và đạo văn trong tóm tắt nội dung đề tài khóa luận.

Đối tượng hưởng lợi

+-----------------------------------------------------------------------------------+
|                        MA TRẬN GIÁ TRỊ THEO ĐỐI TƯỢNG HƯỞNG LỢI                   |
+-----------------------------------------------------------------------------------+
| 1. SINH VIÊN:                                                                     |
|    - Nhận kết quả xét duyệt và điểm số minh bạch, chính xác 100%.                 |
|    - Loại bỏ nguy cơ bị hủy đề tài muộn do trùng lặp nội dung.                    |
|                                                                                   |
| 2. TRỢ LÝ GIÁO VỤ & GIẢNG VIÊN:                                                   |
|    - Giảm 90% áp lực hành chính trong các đợt cao điểm chấm khóa luận.            |
|    - In ấn biểu mẫu đánh giá, biên bản chấm điểm chuẩn quy cách chỉ với 1 click.   |
|                                                                                   |
| 3. BAN CHỦ NHIỆM KHOA & NHÀ TRƯỜNG:                                               |
|    - Nắm bắt trực quan số liệu thống kê đề tài theo từng chuyên ngành đào tạo.     |
|    - Nâng cao năng lực quản trị học thuật và đẩy mạnh chuyển đổi số giáo dục.     |
|                                                                                   |
| 4. CỘNG ĐỒNG KỸ THUẬT & SINH VIÊN KHÓA SAU:                                      |
|    - Cung cấp mã nguồn tham khảo chuẩn mực về phân tích thiết kế hệ thống DFD.    |
|    - Tài liệu mẫu về thiết kế kiến trúc phân tầng trong công nghệ phần mềm.       |
+-----------------------------------------------------------------------------------+

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

1. Yêu cầu cấu hình phần cứng và phần mềm tối thiểu để triển khai hệ thống là gì?

Hệ thống được tối ưu hóa cao, yêu cầu tối thiểu:

  • Hệ điều hành: Microsoft Windows 7 SP1 trở lên (Khuyến nghị Windows 10/11 Pro).
  • Phần cứng: CPU Intel Core 2 Duo 2.0 GHz hoặc tương đương, RAM tối thiểu 2 GB, dung lượng đĩa trống 500 MB.
  • Phần mềm phụ thuộc: Microsoft .NET Framework 4.0 và SQL Server LocalDB hoặc kết nối máy chủ SQL Server 2008 R2 trở lên.

2. Hệ thống xử lý thế nào khi có sự thay đổi về quy chế số tín chỉ hoặc điểm tích lũy của Khoa?

Nhờ thiết kế hướng đến Tính tiến hóa (Evolutionary Requirement), người quản trị (User Cấp 1) có thể vào mục Cấu hình Hệ thống để cập nhật lại các tham số SoTinChiYeuCau, DiemNguongKTPM, DiemNguongMMT. Module BLL_RuleEngine sẽ tự động đọc tham số mới để thẩm định mà không cần biên dịch lại mã nguồn.

3. Cơ chế bảo mật và phân quyền của phần mềm hoạt động như thế nào?

Phần mềm áp dụng mô hình phân quyền RBAC 2 cấp độ kết hợp mã hóa mật khẩu. Hệ thống tự động theo dõi thời gian nhàn rỗi; nếu người dùng không có thao tác chuột/bàn phím trong 30 phút liên tục, phiên làm việc sẽ tự động kết thúc (YC34) và khóa màn hình để ngăn chặn truy cập trái phép.

4. Dữ liệu khóa luận qua các năm có nguy cơ bị đầy hoặc quá tải truy vấn không?

Với quy mô trung bình 100-200 khóa luận/năm, cơ sở dữ liệu SQL Server ước tính chỉ tăng trưởng khoảng 5-10 MB/năm. Các bảng quan hệ đều được thiết lập Clustered và Non-Clustered Index trên các trường khóa chính (MaSV, MaGV, MaDT), đảm bảo tốc độ phản hồi truy vấn luôn duy trì dưới 200 ms ngay cả sau 20 năm vận hành liên tục.

5. Quy trình sao lưu và phục hồi dữ liệu khi xảy ra sự cố được thực hiện ra sao?

Tại giao diện quản trị, tài khoản Administrator có quyền thực hiện sao lưu toàn bộ cơ sở dữ liệu thành file .BAK chỉ với một thao tác (YC38). Khi có sự cố hỏng hóc hệ điều hành, quản trị viên chỉ cần cài lại phần mềm và chọn chức năng Phục hồi (Restore) từ bản sao lưu gần nhất để khôi phục 100% dữ liệu gốc.


Kết luận

Đồ án môn học "Phần mềm Quản lý Khóa luận Tốt nghiệp Khoa Công nghệ Thông tin" của Nhóm 22 (Lớp CTK32 - Trường Đại học Đà Lạt) dưới sự hướng dẫn của ThS. Trần Tuấn Minh đã giải quyết trọn vẹn và chuyên sâu bài toán nghiệp vụ quản lý đào tạo tại đơn vị. Bằng việc mô hình hóa chính xác 38 yêu cầu chức năng, hiện thực hóa 20 quy định nghiệp vụ chặt chẽ và ứng dụng kiến trúc phân tầng chuẩn mực trên nền tảng .NET/SQL Server, sản phẩm đã chứng minh tính khả thi, độ tin cậy và giá trị thực tiễn vượt trội.

Hệ thống không chỉ xóa bỏ hoàn toàn các rủi ro sai sót của phương pháp quản lý thủ công truyền thống mà còn là minh chứng tiêu biểu cho năng lực phân tích, thiết kế và phát triển phần mềm của sinh viên Khoa Công nghệ Thông tin. Đây là nền tảng vững chắc để tiếp tục mở rộng thành hệ sinh thái quản lý học thuật trực tuyến toàn diện trong tương lai.