Giới thiệu dự án

Trong bối cảnh chuyển đổi số giáo dục đại học đầu thế kỷ XXI, công tác quản lý cán bộ, giảng viên tại các cơ sở đào tạo chuyên ngành đòi hỏi sự chuyển dịch triệt để từ lưu trữ văn bản giấy sang hệ thống thông tin điện tử. Tại Khoa Công nghệ Thông tin – Đại học Thái Nguyên (gồm 8 bộ môn chuyên môn và 5 phòng chức năng), khối lượng dữ liệu hồ sơ nhân sự gia tăng nhanh chóng cùng với các yêu cầu khắt khe về theo dõi quá trình đào tạo, bồi dưỡng chính trị, diễn biến thang bảng lương và phân loại ngạch công chức.

Thực trạng trước khi triển khai hệ thống cho thấy việc lưu trữ thủ công trong các tủ hồ sơ vật lý bộc lộ nhiều điểm nghẽn nghiêm trọng: thời gian tra cứu hồ sơ lý lịch trích ngang kéo dài từ 15–30 phút/cán bộ; rủi ro thất lạc, trùng lặp và không đồng nhất thông tin cá nhân cao; quy trình tổng hợp báo cáo định kỳ cho Ban Giám hiệu mất từ 3–5 ngày làm việc.

+-------------------------------------------------------------------------+
|                  HỆ THỐNG QUẢN LÝ NHÂN SỰ KHOA CNTT                    |
|                        (Kiến trúc Client-Server)                        |
|                                                                         |
|  [Giao diện Người dùng (VB6)] <---> [ADO 2.8 Engine] <---> [Jet 4.0 OLEDB / CSDL Access]
+-------------------------------------------------------------------------+

Đề tài "Xây dựng chương trình quản lý nhân sự Khoa Công nghệ thông tin" tập trung giải quyết các mục tiêu kỹ thuật cụ thể:

  1. Số hóa toàn diện hệ thống hồ sơ cán bộ, giảng viên, nhân viên hợp đồng và biên chế theo đúng quy chuẩn quản lý cán bộ công chức nhà nước.
  2. Thiết kế cơ sở dữ liệu quan hệ (RDBMS) chuẩn hóa, loại bỏ triệt để dị thường khi thêm, sửa, xóa và giải quyết bài toán toàn vẹn dữ liệu.
  3. Xây dựng module tự động hóa tra cứu đa tiêu chí và trích xuất báo cáo thống kê động (theo độ tuổi, học hàm/học vị, ngạch lương, lý luận chính trị, trình độ ngoại ngữ - tin học).
  4. Đảm bảo phân quyền truy cập và bảo mật dữ liệu nhân sự nội bộ theo cấp phòng ban.

Phạm vi và giới hạn dự án: Hệ thống tập trung phục vụ công tác tác nghiệp tại Phòng Tổng hợp và Ban Lãnh đạo Khoa CNTT; triển khai dưới dạng ứng dụng máy trạm (Desktop Client) tương thích trên hệ điều hành Windows với quy mô quản trị cơ sở dữ liệu vừa và nhỏ.


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

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

Khảo sát quy trình quản lý nhân sự thực tế tại các đơn vị giáo dục cho thấy sự khác biệt rõ rệt giữa phương thức quản lý truyền thống và các công nghệ cơ sở dữ liệu:

Tiêu chí đánh giá Quản lý sổ sách / Tủ hồ sơ Ứng dụng DAO 3.5 / File Excel Hệ thống Quản lý VB6 + ADO (Đề tài)
Tính toàn vẹn dữ liệu Rất thấp, dễ rách nát, thất lạc Trung bình, dễ ghi đè ô tính Rất cao, ràng buộc khóa chính/ngoại chặt chẽ
Tốc độ tra cứu thông tin 15 – 30 phút/hồ sơ 1 – 3 phút (tìm kiếm thủ công) < 1.5 giây với truy vấn SQL tối ưu
Khả năng sinh báo cáo Thủ công hoàn toàn (vài ngày) Bán tự động (cần lập hàm) Tức thời, xuất mẫu chuẩn cấp Bộ/Đại học
Kiểm soát phân quyền Phụ thuộc khóa phòng/tủ Khóa file đơn giản, dễ phá vỡ Phân quyền mức ứng dụng và người dùng
Khả năng mở rộng CSDL Không khả thi Giới hạn dung lượng trang tính Linh hoạt chuyển đổi sang MS SQL Server

Áp dụng phương pháp phân tích yêu cầu MoSCoW:

  • Must have: Quản lý sơ yếu lý lịch 36 trường dữ liệu chuẩn; quản lý diễn biến lương, quá trình đào tạo, bồi dưỡng, khen thưởng - kỷ luật; tìm kiếm theo tên, đơn vị, mã ngạch.
  • Should have: Thống kê ma trận phân bổ cán bộ theo độ tuổi và giới tính; xuất danh sách đào tạo sau đại học.
  • Could have: Quản lý quan hệ thân nhân nước ngoài, lịch sử công tác trước khi về Khoa.
  • Won't have (lần này): Cổng thông tin tự phục vụ trực tuyến (Employee Self-Service Web Portal).

Thiết kế hệ thống

Kiến trúc phần mềm được thiết kế theo mô hình phân lớp xử lý trên nền tảng Windows Forms:

graph TD
    UI[Giao diện Tương tác - VB6 Forms] --> BL[Tầng Xử lý Nghiệp vụ & Điều khiển]
    BL --> ADO[Microsoft ActiveX Data Objects 2.8]
    ADO --> OLEDB[Microsoft Jet 4.0 OLE DB Provider]
    OLEDB --> DB[(Cơ sở dữ liệu Microsoft Access .MDB)]
  • Technology Stack:
    • Ngôn ngữ lập trình & Môi trường: Microsoft Visual Basic 6.0 (Service Pack 6).
    • Công nghệ truy cập dữ liệu: ADO (ActiveX Data Objects 2.8) qua Data-bound Controls và Object Interface (ADODB.Connection, ADODB.Recordset).
    • Hệ quản trị cơ sở dữ liệu: Microsoft Jet Database Engine 4.0 / Access Database (.mdb).
  • Lược đồ Cơ sở Dữ liệu Thực thể Quan hệ (E-R):
    • SoYeuLyLich (MaCanBo [AutoNumber], TenKhaiSinh, TenThuongGoi, SoCMTND, NgaySinh, GioiTinh, MaDanToc, MaTonGiao, MaTPXT, MaNgach, NgayVaoDang, NgayVaoBC, CamDoan...).
    • DienBienHuongLuong (ID, MaCanBo, Tu, NamNangLuong, BacLuong, HeSo, PCCV, PCDT, PCVK, PCTN, PCK, GhiChu).
    • QuaTrinhDaoTao (ID, MaCanBo, Tu, Den, MaBangCap, MaCNganh, CoSoDT, NuocDT, HinhThucDT, NamTotNghiep).
    • PhongHam (ID, MaCanBo, MaHocHam, NgayPhong).
    • QuaTrinhBoiDuongLLCT (ID, MaCanBo, Tu, Den, NoiDungBD, NoiBD, LopBD, TrinhDo).
    • QuaTrinhBoiDuongNN (ID, MaCanBo, Tu, Den, LopDaoTao, NoiDaoTao, MaNgoaiNgu).
    • KhenThuong_KyLuat (ID, MaCanBo, LoaiQuyetDinh, NoiDung, HinhThuc, CoQuanQD, SoQD, NgayQD).

Methodology

Dự án áp dụng mô hình phát triển phần mềm Thác nước có hiệu chỉnh (Modified Waterfall Model) phù hợp với quy trình quản lý văn phòng hành chính công:

  1. Khảo sát & Thu thập yêu cầu (3 tuần): Phỏng vấn trực tiếp Lãnh đạo Khoa, chuyên viên Phòng Tổng hợp; chuẩn hóa hệ thống 12 mẫu biểu hành chính.
  2. Phân tích hệ thống hướng chức năng (4 tuần): Thiết kế sơ đồ phân cấp chức năng (FHD), biểu đồ luồng dữ liệu (DFD) mức khung cảnh, mức đỉnh (1.0 Cập nhật danh mục, 2.0 Cập nhật hồ sơ, 3.0 Tìm kiếm, 4.0 Thống kê) và mức dưới đỉnh.
  3. Thiết kế CSDL & Giao diện (3 tuần): Chuẩn hóa dữ liệu về dạng chuẩn 3NF, loại bỏ dư thừa thuộc tính.
  4. Hiện thực hóa mã nguồn (5 tuần): Lập trình giao diện, kết nối ADO, xây dựng truy vấn SQL.
  5. Kiểm thử, Chạy thử nghiệm & Nghiệm thu (3 tuần).

Implementation và kết quả

Development process

Hệ thống được lập trình hướng đối tượng thông qua mô hình Object Interface của thư viện ADO, đảm bảo tính tối ưu vượt trội so với các Data Control gắn cứng trên giao diện.

' Module kết nối Cơ sở dữ liệu sử dụng ADODB.Connection
Public conn As ADODB.Connection
Public rsCanBo As ADODB.Recordset

Public Sub OpenDatabaseConnection()
    On Error GoTo ErrorHandler
    Set conn = New ADODB.Connection
    
    ' Sử dụng chuỗi kết nối Jet 4.0 OLEDB với đường dẫn tương đối qua App.Path
    conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
                            "Data Source=" & App.Path & "\Database\QLHSCB.mdb;" & _
                            "Persist Security Info=False"
    conn.Open
    Exit Sub

ErrorHandler:
    MsgBox "Lỗi kết nối cơ sở dữ liệu: " & Err.Description, vbCritical, "Database Error"
End Sub

Quy trình thao tác nghiệp vụ thêm mới và cập nhật bản ghi hồ sơ cán bộ được chuẩn hóa với cơ chế con trỏ động (adOpenDynamic) và khóa lạc quan (adLockOptimistic):

' Thao tác thêm mới và cập nhật hồ sơ cán bộ
Public Sub InsertUpdateOfficer(ByVal MaCB As Long, ByVal HoTen As String, ByVal NgaySinh As Date, ByVal MaNgach As String)
    Dim strSQL As String
    Set rsCanBo = New ADODB.Recordset
    
    strSQL = "SELECT * FROM SoYeuLyLich WHERE MaCanBo = " & MaCB
    rsCanBo.Open strSQL, conn, adOpenDynamic, adLockOptimistic
    
    If rsCanBo.EOF Then
        rsCanBo.AddNew
        rsCanBo!TenKhaiSinh = HoTen
        rsCanBo!NgaySinh = NgaySinh
        rsCanBo!MaNgach = MaNgach
        rsCanBo.Update
        MsgBox "Thêm mới hồ sơ cán bộ thành công!", vbInformation, "Thông báo"
    Else
        rsCanBo!TenKhaiSinh = HoTen
        rsCanBo!NgaySinh = NgaySinh
        rsCanBo!MaNgach = MaNgach
        rsCanBo.Update
        MsgBox "Cập nhật dữ liệu cán bộ hoàn tất!", vbInformation, "Thông báo"
    End If
    
    rsCanBo.Close
    Set rsCanBo = Nothing
End Sub

Xây dựng module truy vấn tìm kiếm linh hoạt cho phép kết hợp đa tiêu chí động:

' Module tìm kiếm hồ sơ cán bộ theo đa điều kiện
Public Function SearchOfficers(ByVal strDonVi As String, ByVal strTrinhDo As String) As ADODB.Recordset
    Dim sqlQuery As String
    Dim rsResult As New ADODB.Recordset
    
    sqlQuery = "SELECT CB.MaCanBo, CB.TenKhaiSinh, CB.NgaySinh, DV.TenDonVi, TD.TenTrinhDo " & _
               "FROM SoYeuLyLich CB " & _
               "INNER JOIN DonVi DV ON CB.MaDonVi = DV.MaDonVi " & _
               "INNER JOIN TrinhDo TD ON CB.MaTrinhDo = TD.MaTrinhDo " & _
               "WHERE 1=1 "
               
    If Trim(strDonVi) <> "" Then
        sqlQuery = sqlQuery & " AND DV.TenDonVi LIKE '%" & Replace(strDonVi, "'", "''") & "%' "
    End If
    
    If Trim(strTrinhDo) <> "" Then
        sqlQuery = sqlQuery & " AND TD.TenTrinhDo = '" & Replace(strTrinhDo, "'", "''") & "' "
    End If
    
    rsResult.CursorLocation = adUseClient
    rsResult.Open sqlQuery, conn, adOpenStatic, adLockReadOnly
    Set SearchOfficers = rsResult
End Function

Testing và validation

Chương trình đã vượt qua quy trình kiểm thử hệ thống với 45 ca kiểm thử (Test Cases) bao quát mọi phân hệ:

  • Kiểm thử chức năng (Functional Testing): 100% các chức năng Cập nhật danh mục, Thêm/Sửa/Xóa hồ sơ, Tính toán nâng bậc lương tự động đạt yêu cầu độ chính xác.
  • Kiểm thử hiệu năng (Performance Benchmark):
    • Tốc độ phản hồi truy vấn tìm kiếm danh sách trên bộ dữ liệu giả lập 1,000 cán bộ: trung bình 0.45 giây.
    • Thời gian nạp dữ liệu Form chính (Form_Load) có kết nối CSDL: 0.82 giây.
    • Tốc độ kết xuất bảng thống kê độ tuổi/giới tính: 1.15 giây.
  • Kiểm thử chấp nhận người dùng (UAT): Thực hiện thử nghiệm thực tế tại Văn phòng Khoa CNTT với 5 cán bộ văn phòng; 100% đánh giá giao diện trực quan, thao tác nhập liệu đơn giản, biểu mẫu chuẩn xác.

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

  1. Chuẩn hóa mô hình thông tin nhân sự giáo dục: Xây dựng cấu trúc dữ liệu liên kết đa chiều giữa lý lịch gốc của cán bộ với các bảng lịch sử động (quá trình tăng lương, quá trình học tập nâng cao trình độ, hồ sơ phong hàm Giáo sư/Phó Giáo sư), tránh triệt để tình trạng phân mảnh thông tin.
  2. Khai thác công nghệ ADO Object Interface tiên tiến: Thay thế hoàn toàn cơ chế liên kết dữ liệu trực quan cũ (DAO/Data Controls) vốn dễ gây treo ứng dụng và rò rỉ bộ nhớ, mang lại khả năng xử lý ngắt kết nối (Disconnected Recordset) và tiết kiệm tài nguyên bộ nhớ hệ thống.
  3. Hiệu quả định lượng vượt trội:
    • Giảm 85% thời gian tìm kiếm, lập danh sách trích ngang hồ sơ phục vụ công tác thanh kiểm tra.
    • Rút ngắn 90% thời gian tổng hợp báo cáo định kỳ về cơ cấu đội ngũ cán bộ giảng dạy.
    • Đảm bảo 100% dữ liệu nhân sự được đồng bộ hóa và lưu trữ tập trung, triệt tiêu lỗi thất lạc chứng chỉ, bằng cấp.

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

Triển khai thực tế

Chương trình được cấu hình chạy thử nghiệm và chuyển giao cho Văn phòng Khoa CNTT – Đại học Thái Nguyên, hỗ trợ quản lý toàn bộ đội ngũ cán bộ biên chế, giảng viên thỉnh giảng và chuyên viên các phòng chức năng.

+-------------------------------------------------------------------------+
|                  QUY TRÌNH TRIỂN KHAI VÀ VẬN HÀNH                       |
|                                                                         |
|  [Chuẩn bị CSDL .MDB] ---> [Cài đặt Runtime VB6] ---> [Cấu hình OLEDB]   |
|                                                               |         |
|  [Bảo trì & Backup]   <--- [Vận hành & Xuất BC]  <--- [Phân quyền User]  |
+-------------------------------------------------------------------------+
  • Yêu cầu phần cứng & môi trường triển khai:

    • CPU: Pentium III 800 MHz trở lên (Tối ưu trên Pentium IV / Core 2 Duo).
    • RAM: Tối thiểu 128 MB (Khuyến nghị 256 MB trở lên).
    • Ổ đĩa cứng: Tối thiểu 50 MB không gian trống cho mã nguồn và dữ liệu.
    • Hệ điều hành: Microsoft Windows 98, Windows 2000, Windows XP, Windows Vista/7 (32-bit).
    • Runtime components: Microsoft Data Access Components (MDAC 2.8), VB6 Runtime Files (msvbvm60.dll).
  • Phân tích Chi phí - Lợi ích (Cost-Benefit Analysis):

    • Chi phí đầu tư: ~0 VNĐ (tận dụng cơ sở hạ tầng máy tính văn phòng sẵn có, không phát sinh chi phí bản quyền RDBMS đắt tiền).
    • Thời gian hoàn vốn (ROI Timeline): Đạt điểm hòa vốn hiệu quả làm việc ngay trong 02 tháng đầu vận hành nhờ cắt giảm giờ công lao động hành chính thủ công.

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

Hạn chế kỹ thuật

  • Ứng dụng xây dựng trên kiến trúc Desktop 32-bit nguyên khối (Monolithic Client), gây khó khăn khi cần truy cập từ xa qua mạng Internet.
  • Cơ sở dữ liệu Microsoft Access có dung lượng tối đa 2 GB, không tối ưu cho môi trường đa truy cập đồng thời với lưu lượng đọc/ghi cực lớn (concurrency limitations).
  • Giao diện đồ họa chưa hỗ trợ đầy đủ bộ mã ký tự Unicode đồng bộ trên mọi hệ điều hành đời mới nếu thiếu bộ phông TCVN3/VNI chuẩn.

Hướng phát triển

  1. Nâng cấp hệ thống quản trị cơ sở dữ liệu lên Microsoft SQL Server 2005/2008 nhằm nâng cao năng lực bảo mật, hỗ trợ Transaction Processing và xử lý dữ liệu lớn.
  2. Chuyển đổi mô hình ứng dụng sang kiến trúc Web-based (.NET Framework / ASP.NET C#) cho phép cán bộ tự tra cứu và cập nhật hồ sơ cá nhân trực tuyến.
  3. Tích hợp module chấm công điện tử, quản lý định mức giờ giảng và tự động tính thu nhập tăng thêm theo quy chế chi tiêu nội bộ của Nhà trường.

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

  • Sinh viên chuyên ngành Hệ thống Thông tin & Kỹ thuật Phần mềm: Nắm bắt mô hình phân tích thiết kế hệ thống thông tin hoàn chỉnh từ biểu đồ luồng dữ liệu (DFD) đến sơ đồ thực thể quan hệ (ERD) và kỹ thuật lập trình ADO trên Visual Basic.
  • Lập trình viên & Kỹ sư bảo trì: Tham khảo kỹ thuật xây dựng ứng dụng cơ sở dữ liệu desktop gọn nhẹ, phương pháp viết câu lệnh SQL động và xử lý bẫy lỗi hệ thống.
  • Nhà quản lý & Bộ phận Tổ chức Cán bộ: Sở hữu giải pháp mẫu về tin học hóa quy trình quản trị hồ sơ cán bộ công chức theo quy định hành chính của ngành giáo dục.
  • Nhà nghiên cứu khoa học: Cung cấp số liệu thực nghiệm và phương pháp luận về chuẩn hóa quy trình nghiệp vụ trong trường đại học công lập.

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

1. Hệ thống có thể chạy trên các phiên bản Windows 64-bit hiện đại (Windows 10/11) không?
Có. Mặc dù được phát triển trên VB6 32-bit, ứng dụng hoàn toàn có thể chạy trên Windows 64-bit thông qua hệ thống tương thích WoW64 (Windows 32-bit on Windows 64-bit) đi kèm việc đăng ký các thư viện liên kết động (.ocx, .dll) như mscomctl.ocxmsflxgrd.ocx.

2. Cơ sở dữ liệu Microsoft Access .mdb có an toàn khi có nhiều người cùng kết nối?
File .mdb qua Jet 4.0 hỗ trợ chia sẻ tệp mạng nội bộ (File-share LAN) cho nhóm làm việc nhỏ (dưới 5–10 máy trạm đồng thời). Để đảm bảo an toàn tuyệt đối, hệ thống cần thực hiện sao lưu định kỳ file dữ liệu và thiết lập quyền truy cập thư mục chặt chẽ.

3. Làm thế nào để sao lưu và phục hồi dữ liệu khi xảy ra sự cố phần cứng?
Chỉ cần sao chép toàn bộ tệp tin cơ sở dữ liệu QLHSCB.mdb sang thiết bị lưu trữ ngoài hoặc ổ đĩa an toàn. Khi phục hồi, chỉ cần thiết lập lại đường dẫn trong chuỗi kết nối của chương trình.

4. Ứng dụng xử lý bài toán nâng lương cán bộ như thế nào?
Hệ thống sử dụng các trường NgayNangLuong, BacLuong, HeSo và thời hạn nâng bậc (2 năm đối với cán bộ có trình độ đại học trở xuống, 3 năm đối với giảng viên/chuyên viên) để lập trình thuật toán quét ngày tự động, cảnh báo danh sách cán bộ đến hạn xét nâng lương trước 30 ngày.

5. Chi phí bảo trì phần mềm hàng năm là bao nhiêu?
Do cấu trúc phần mềm nhỏ gọn, không phụ thuộc máy chủ chuyên dụng đắt tiền, chi phí vận hành và bảo trì kỹ thuật hàng năm gần như bằng 0, chỉ yêu cầu bảo dưỡng định kỳ máy trạm văn phòng.


Kết luận

Đề tài "Xây dựng chương trình quản lý nhân sự Khoa Công nghệ thông tin" là một công trình nghiên cứu ứng dụng thực tiễn xuất sắc, giải quyết triệt để bài toán tin học hóa quản trị nhân sự tại đơn vị giáo dục đại học. Thông qua sự kết hợp giữa phương pháp phân tích thiết kế hệ thống bài bản (DFD, ERD) và công nghệ lập trình trực quan Microsoft Visual Basic 6.0 cùng ActiveX Data Objects (ADO), tác giả đã tạo nên một sản phẩm phần mềm hoàn chỉnh, giao diện thân thiện, vận hành ổn định và đạt hiệu quả tác nghiệp cao. Đồ án không chỉ mang giá trị học thuật chuẩn mực trong lĩnh vực Công nghệ Phần mềm mà còn đóng góp trực tiếp vào công cuộc hiện đại hóa công tác hành chính văn phòng của Khoa Công nghệ Thông tin.