Giới thiệu dự án

Bối cảnh và thực trạng quản trị nhân sự ngành sản xuất - thương mại

Trong xu thế chuyển đổi số doanh nghiệp (Digital Transformation), hệ thống thông tin quản lý nguồn nhân lực và tiền lương (Human Resource Management & Payroll Information System - HRM-PIS) đóng vai trò là "xương sống" vận hành cho các doanh nghiệp quy mô vừa và nhỏ (SMEs). Theo thống kê từ Hiệp hội Phần mềm và Dịch vụ CNTT Việt Nam (VINASA), hơn 65% doanh nghiệp sản xuất và phân phối tại Việt Nam vẫn đối mặt với bài toán thất thoát chi phí gián tiếp, sai sót dữ liệu và chậm trễ báo cáo tài chính nội bộ do duy trì cơ chế quản trị nhân sự phân mảnh hoặc bán thủ công trên bảng tính Microsoft Excel.

Tại Công ty Cổ phần Sản xuất Thương mại Tiến Nga (hoạt động trong ngành chế biến thực phẩm với nhà máy quy mô 30.000m² tại Biên Hòa, Đồng Nai cùng mạng lưới chi nhánh tại Hà Nội, TP. Hồ Chí Minh và Phnom Penh), hệ thống thông tin xây dựng từ năm 2009 đã bộc lộ những điểm nghẽn nghiêm trọng sau giai đoạn tăng trưởng quy mô (70 cán bộ công nhân viên - CBCNV năm 2017, doanh thu tăng trưởng trên 45%/năm).

          ┌────────────────────────────────────────────────────────┐
          │     THỰC TRẠNG KHẢO SÁT HỆ THỐNG TIẾN NGA (2017)       │
          └────────────────────────────────────────────────────────┘
            [80%] Không hài lòng với hệ thống cũ
            [80%] Khó khăn trong quản lý chấm công & tính lương
            [50%] Báo cáo thống kê không hoàn chỉnh, thiếu tự động
            [40%] Bất cập trong tra cứu và cập nhật hồ sơ nhân viên
            [100%] Yêu cầu xây dựng mới hệ thống (70% rất cấp thiết)

Vấn đề cốt lõi (Problem Statement)

Hệ thống quản trị cũ tại Công ty CPSXTM Tiến Nga tồn tại các hạn chế kỹ thuật và nghiệp vụ cụ thể:

  1. Dữ liệu phân mảnh và dư thừa: Hồ sơ nhân viên, hợp đồng lao động, thông tin khen thưởng kỷ luật (KTKL) lưu trữ rời rạc, dẫn đến sai lệch dữ liệu giữa phòng Nhân sự và phòng Kế toán.
  2. Quy trình tính lương phức tạp, dễ sai sót: Nhân viên công ty có đặc thù lưu động, đi công tác và làm việc thực địa ngoài nhà xưởng; công tác ghi nhận ngày công, chấm công tăng ca và trích đóng các khoản bảo hiểm (BHXH 8%, BHYT 1.5%, BHTN 1%) xử lý thủ công, mất từ 4 - 6 ngày làm việc vào mỗi kỳ chốt lương.
  3. Báo cáo tĩnh và thiếu linh hoạt: Ban Giám đốc không có công cụ trực quan hóa biến động nhân sự, tỷ lệ biến động lương theo phòng ban theo thời gian thực để hỗ trợ ra quyết định chiến lược.

Mục tiêu dự án

  1. Mục tiêu 1 - Chuẩn hóa quy trình nghiệp vụ: Phân tích và mô hình hóa toàn diện các luồng quy trình quản lý nhân sự - tiền lương theo chuẩn UML 2.5 (Unified Modeling Language).
  2. Mục tiêu 2 - Thiết kế kiến trúc hướng đối tượng: Xây dựng mô hình lớp chi tiết, biểu đồ tuần tự và chuẩn hóa cơ sở dữ liệu quan hệ (RDBMS) đạt chuẩn dạng chuẩn 3 (3NF).
  3. Mục tiêu 3 - Tự động hóa tính toán & phân quyền: Tối ưu hóa thuật toán tính lương thực lĩnh dựa trên hệ số lương, ngày công thực tế, lương tăng ca và khấu trừ bảo hiểm pháp định với độ chính xác 100%.
  4. Mục tiêu 4 - Đánh giá khả năng chuyển giao: Kiểm thử hệ thống, đo lường các chỉ số hiệu năng truy vấn và thiết lập lộ trình triển khai hạ tầng Client-Server đồng bộ.

Phương pháp tiếp cận giải pháp

Đề tài áp dụng Phương pháp Phân tích Thiết kế Hướng đối tượng (Object-Oriented Analysis and Design - OOAD) kết hợp mô hình hóa qua ngôn ngữ UML. Khác với phương pháp hướng cấu trúc (Structured Analysis and Design Technique - SADT) phân rã chức năng từ trên xuống (Top-Down) dễ gây phá vỡ liên kết khi hệ thống mở rộng, tiếp cận OOAD đóng gói dữ liệu và hành vi vào các lớp thực thể (Entity Classes), tăng khả năng tái sử dụng mã nguồn và dễ dàng bảo trì.

Kết quả kỳ vọng và chỉ số đo lường (Measurable Metrics)

  • Tốc độ xử lý tính lương: Rút ngắn thời gian lập bảng lương định kỳ từ 4 ngày xuống còn dưới 15 phút.
  • Độ chính xác dữ liệu: Đạt 100% trong tính toán khấu trừ các khoản bảo hiểm và thuế thu nhập cá nhân.
  • Thời gian phản hồi truy vấn (Response Time): Đạt < 500ms cho các tác vụ tìm kiếm hồ sơ và trích xuất báo cáo nhân sự theo phòng ban.
  • Mức độ hài lòng của người dùng: Nâng tỷ lệ hài lòng nội bộ từ 20% lên > 90%.

Phạm vi và giới hạn hệ thống

  • Phạm vi nghiệp vụ: Quản lý hồ sơ nhân sự, phòng ban, hợp đồng lao động, chấm công chi tiết, khen thưởng - kỷ luật, tính lương định kỳ và xuất báo cáo quản trị.
  • Phạm vi tác nhân: Áp dụng cho 4 nhóm tác nhân chính: Ban Giám đốc, Nhân viên Nhân sự (NVNS), Nhân viên Kế toán (NVKT), Nhân viên trực thuộc (NV).
  • Giới hạn kỹ thuật: Triển khai trong môi trường mạng nội bộ LAN của công ty qua giao thức TCP/IP; chưa tích hợp thiết bị IoT sinh trắc học vân tay/nhận diện khuôn mặt thời gian thực.

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

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

So sánh giải pháp quản trị hiện nay

Tiêu chí kỹ thuật & nghiệp vụ Bảng tính thủ công (Excel) Phần mềm đóng gói (SaaS/ERP lớn) Hệ thống tùy biến OOAD (.NET/SQL)
Chi phí đầu tư ban đầu Rất thấp (có sẵn) Rất cao (chi phí bản quyền + triển khai) Hợp lý, tối ưu cho SMEs
Tính tương thích nghiệp vụ Trung bình, phụ thuộc người lập Thấp (phải thay đổi quy trình doanh nghiệp) Cao (may đo theo quy trình Tiến Nga)
Tính toàn vẹn dữ liệu Kém, dễ bị ghi đè/xóa nhầm Rất cao Rất cao (ràng buộc toàn vẹn RDBMS)
Khả năng phân quyền (RBAC) Không có hoặc rất yếu Đầy đủ nhưng phức tạp Phân quyền 4 cấp rõ ràng
Bảo mật & Sao lưu Thủ công, dễ lộ lọt dữ liệu Lưu trên Cloud bên thứ ba Chủ động lưu trữ tại Local Server

Phân loại yêu cầu người dùng theo mô hình MoSCoW

  • Must Have (Bắt buộc có):
    • Quản lý hồ sơ nhân viên (CRUD thông tin, CMND/CCCD, chức vụ, phòng ban).
    • Quản lý hợp đồng lao động (phân loại hợp đồng, thời hạn, công việc đảm nhiệm).
    • Chấm công chi tiết theo tháng và phòng ban (ngày công chuẩn, ngày nghỉ phép, ngày làm thêm).
    • Tính toán bảng lương chi tiết tự động theo công thức nghiệp vụ và khấu trừ bảo hiểm.
    • Phân quyền người dùng theo vai trò và bảo mật đăng nhập tài khoản.
  • Should Have (Nên có):
    • Tra cứu thông tin hồ sơ và bảng lương cá nhân dành cho nhân viên.
    • Quản lý quá trình khen thưởng, kỷ luật tích hợp trực tiếp vào biến số tính lương.
    • Tự động kết xuất báo cáo thống kê nhân sự và biến động quỹ lương ra file định dạng chuẩn.
  • Could Have (Có thể có):
    • Nhật ký ghi lại dấu vết thao tác hệ thống (Audit Log).
    • Cơ chế tự động sao lưu dự phòng (Automated Database Backup) theo chu kỳ.
  • Won't Have (Chưa thực hiện trong giai đoạn này):
    • Tích hợp cổng thanh toán ngân hàng trực tiếp để chi trả lương tự động qua Internet Banking.

Thiết kế hệ thống

Kiến trúc hệ thống 3 lớp (3-Tier Architecture)

Hệ thống được thiết kế theo mô hình 3 lớp phân tách rõ ràng trách nhiệm:

graph TD
    subgraph Presentation_Layer [Tầng giao diện - Presentation Layer]
        UI1[Form Đăng nhập / Đổi MK]
        UI2[Form Quản lý Hồ sơ NV]
        UI3[Form Quản lý Chấm công]
        UI4[Form Tính lương & Thống kê]
    end

    subgraph Business_Logic_Layer [Tầng xử lý nghiệp vụ - BLL]
        BLL1[Authentication & Authorization Service]
        BLL2[Employee & Contract Controller]
        BLL3[Timekeeping & Attendance Engine]
        BLL4[Payroll & Insurance Calculation Engine]
    end

    subgraph Data_Access_Layer [Tầng truy cập dữ liệu - DAL]
        DAL1[SQL Command & Stored Procedure Execution]
        DAL2[Connection Pool & Transaction Manager]
    end

    subgraph Database_Storage [Cơ sở dữ liệu - MS SQL Server]
        DB[(RDBMS: Data Files & Logs)]
    end

    Presentation_Layer -->|Dữ liệu nhập / Thao tác| Business_Logic_Layer
    Business_Logic_Layer -->|DTOs / Data Models| Presentation_Layer
    Business_Logic_Layer -->|Thực thi nghiệp vụ| Data_Access_Layer
    Data_Access_Layer -->|Dataset / Data Reader| Business_Logic_Layer
    Data_Access_Layer <-->|TCP/IP Port 1433| Database_Storage

Ngăn xếp công nghệ (Technology Stack)

  • Frontend / Client UI: C# .NET Windows Forms / WPF trên nền .NET Framework 4.7.2.
  • Backend / Business Logic: C# OOP (Encapsulation, Inheritance, Polymorphism) với Entity Framework / ADO.NET Data Provider.
  • Database Management System (DBMS): Microsoft SQL Server 2016 Enterprise Edition (hỗ trợ chỉ mục B-Tree, Stored Procedures, Triggers).
  • Môi trường phát triển: Microsoft Visual Studio 2019 Professional, StarUML 5.0 (mô hình hóa UML).

Thiết kế cơ sở dữ liệu quan hệ (Database Schema)

  +------------------+         +--------------------+         +--------------------+
  |    PHONGBAN      | 1     n |    HOSONHANVIEN    | 1     n |     KTKL           |
  +------------------+---------+--------------------+---------+--------------------+
  | PK: MaPB         |         | PK: MaNV           |         | PK: MaKTKL         |
  |     TenPB        |         |     TenNV, GioiTinh|         |     TenKTKL, Lydo  |
  |     SoNV         |         |     SDT, DiaChi    |         | FK: MaNV           |
  |     TruongPhong  |         |     SoCMT, Chucvu  |         +--------------------+
  +------------------+         |     Ngayvaolam, HSL|
                               | FK: MaPB           | 1     n +--------------------+
                               +--------------------+---------+    HOPDONGLD       |
                                         | 1                  +--------------------+
                                         |                    | PK: MaHD           |
                                         | n                  |     LoaiHD, Thoigian|
                               +--------------------+         |     Congviec       |
                               |    CTBANGLUONG     |         | FK: MaNV           |
                               +--------------------+         +--------------------+
                               | PK: MaCTBL         |
                               | FK: MaNV           |
                               | FK: MaBL           |
                               |     Thang, Nam     |
                               |     Songaytangca   |
                               |     Luongtangca    |
                               |     Baohiem        |
                               |     Thuclinh       |
                               +--------------------+

Đặc tả từ điển dữ liệu (Data Dictionary):

  1. Bảng HOSONHANVIEN (Hồ sơ nhân viên):

    • MaNV (VARCHAR(10), Primary Key): Định danh duy nhất cho nhân viên.
    • TenNV (NVARCHAR(100), NOT NULL): Họ và tên đầy đủ.
    • GioiTinh (NVARCHAR(5)): Giới tính (Nam/Nữ).
    • SDT (VARCHAR(15)): Số điện thoại liên hệ.
    • DiaChi (NVARCHAR(200)): Địa chỉ thường trú.
    • SoCMT (VARCHAR(20), UNIQUE): Số chứng minh thư / Thẻ căn cước.
    • MaPB (VARCHAR(10), Foreign Key $\rightarrow$ PHONGBAN.MaPB): Mã phòng ban.
    • HSL (DECIMAL(4,2)): Hệ số lương chuyên môn.
    • Chucvu (NVARCHAR(50)): Chức vụ đảm nhiệm.
    • Ngayvaolam (DATE): Ngày ký quyết định tiếp nhận.
  2. Bảng CTBANGLUONG (Chi tiết bảng lương):

    • MaCTBL (VARCHAR(15), Primary Key): Định danh chi tiết bản ghi lương.
    • MaNV (VARCHAR(10), Foreign Key $\rightarrow$ HOSONHANVIEN.MaNV).
    • MaBL (VARCHAR(10), Foreign Key $\rightarrow$ BANGLUONG.MaBL).
    • Thang (INT), Nam (INT): Kỳ tính lương.
    • Songaytangca (FLOAT): Số ngày làm thêm giờ trong tháng.
    • Luongtangca (DECIMAL(18,2)): Tổng số tiền làm thêm giờ.
    • Baohiem (DECIMAL(18,2)): Tổng số tiền khấu trừ bảo hiểm (10.5%).
    • Thuclinh (DECIMAL(18,2)): Tiền lương thực lĩnh cuối kỳ.
  3. Bảng BANGCHAMCONG & CTBANGCHAMCONG:

    • MaBCC (VARCHAR(10), Primary Key), MaPB (VARCHAR(10)), Thoigian (VARCHAR(20)), Ngaylapbang (DATE).
    • MaCTBCC (VARCHAR(15), Primary Key), MaBCC (FK), MaNV (FK), Songaycong (FLOAT), Songaynghi (FLOAT).

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

Dự án áp dụng quy trình Vòng đời phát triển hệ thống (SDLC - System Development Life Cycle) tích hợp 6 giai đoạn nghiêm ngặt:

[Khảo sát & Lập dự án] ──> [Phân tích nghiệp vụ] ──> [Thiết kế hệ thống]
        │                           │                        │
[Bảo trì & Tối ưu]     <── [Triển khai & Cài đặt] <── [Xây dựng phần mềm]
  1. Khảo sát hiện trạng & Xác lập dự án (2 tuần): Thu thập biểu mẫu nghiệp vụ, phỏng vấn lãnh đạo và lập bảng khảo sát trắc nghiệm 70 nhân viên.
  2. Phân tích hệ thống (3 tuần): Xây dựng biểu đồ ca sử dụng (Use Case), biểu đồ phân rã hoạt động (Activity Diagrams) cho từng luồng dữ liệu.
  3. Thiết kế hệ thống (3 tuần): Mô hình hóa lớp chi tiết (Class Diagram), biểu đồ tuần tự (Sequence Diagram), chuẩn hóa cấu trúc quan hệ CSDL và phác thảo Mockup giao diện.
  4. Xây dựng chương trình (4 tuần): Lập trình mã nguồn hướng đối tượng trên Visual Studio, tạo các Stored Procedures trên SQL Server.
  5. Cài đặt & Kiểm thử (2 tuần): Chạy thử nghiệm hộp trắng (White-box), hộp đen (Black-box), kiểm thử chấp nhận người dùng (UAT) và chuyển đổi dữ liệu lịch sử.
  6. Đánh giá & Bảo trì (Liên tục): Đóng gói bản cài đặt, đào tạo người dùng và thiết lập quy trình vá lỗi.

Ma trận đánh giá rủi ro và biện pháp giảm thiểu

  • Rủi ro sai lệch công thức trích nộp: Chính sách bảo hiểm xã hội thay đổi $\rightarrow$ Giải pháp: Thiết kế bảng tham số cấu hình động tỷ lệ phần trăm bảo hiểm trong cơ sở dữ liệu thay vì hardcode trong mã nguồn.
  • Rủi ro mất mát dữ liệu: Sự cố phần cứng máy chủ $\rightarrow$ Giải pháp: Cấu hình chiến lược sao lưu tự động (Full Backup hàng tuần, Differential Backup hàng ngày và Transaction Log Backup mỗi 60 phút).

Implementation và kết quả

Quá trình phát triển và thuật toán cốt lõi

1. Công thức toán học và quy tắc nghiệp vụ tính lương

Tổng tiền lương thực lĩnh của một cán bộ nhân viên được xác định chính xác theo công thức:

$$\text{Thuclinh} = \text{LuongCB} + \text{LuongTangCa} - \text{TongKhauTruBaoHiem}$$

Trong đó:

  • $\text{LuongCB} = \text{MucLuongCoSo} \times \text{HSL} \times \left(\frac{\text{Songaycong}}{\text{NgayCongChuan}}\right)$
  • $\text{LuongTangCa} = \text{Songaytangca} \times \left(\frac{\text{LuongCB}}{\text{NgayCongChuan}}\right) \times \text{HeSoTangCa}$ (với $\text{HeSoTangCa} = 1.5$ cho ngày thường hoặc $2.0$ cho ngày nghỉ/lễ)
  • $\text{TongKhauTruBaoHiem} = (\text{MucLuongDongBaoHiem} \times \text{HSL}) \times (8% \text{ [BHXH]} + 1.5% \text{ [BHYT]} + 1% \text{ [BHTN]}) = (\text{MucLuongDongBaoHiem} \times \text{HSL}) \times 10.5%$

2. Hiện thực hóa mã nguồn (C# Implementation)

using System;
using System.Data;
using System.Data.SqlClient;

namespace HRM_TienNga.BLL
{
    public class PayrollService
    {
        private const decimal BHXH_RATE = 0.080m;
        private const decimal BHYT_RATE = 0.015m;
        private const decimal BHTN_RATE = 0.010m;
        private const decimal TOTAL_INSURANCE_RATE = BHXH_RATE + BHYT_RATE + BHTN_RATE; // 10.5%

        public decimal CalculateNetSalary(
            decimal baseSalaryRate, 
            decimal salaryCoefficient, 
            double actualWorkDays, 
            double standardWorkDays, 
            double overtimeDays, 
            decimal overtimeFactor)
        {
            if (standardWorkDays <= 0) 
                throw new ArgumentException("Số ngày công chuẩn phải lớn hơn 0");

            // 1. Tính lương cơ bản thực nhận theo ngày công
            decimal standardSalary = baseSalaryRate * salaryCoefficient;
            decimal baseEarned = standardSalary * (decimal)(actualWorkDays / standardWorkDays);

            // 2. Tính lương làm thêm giờ (tăng ca)
            decimal dailyRate = standardSalary / (decimal)standardWorkDays;
            decimal overtimeEarned = (decimal)overtimeDays * dailyRate * overtimeFactor;

            // 3. Tính trích nộp bảo hiểm bắt buộc theo luật (10.5%)
            decimal insuranceDeduction = standardSalary * TOTAL_INSURANCE_RATE;

            // 4. Lương thực lĩnh
            decimal netSalary = baseEarned + overtimeEarned - insuranceDeduction;
            
            return Math.Round(netSalary, 0, MidpointRounding.AwayFromZero);
        }
    }
}

3. Cài đặt Stored Procedure trên Microsoft SQL Server

-- Stored Procedure: Tính toán và cập nhật chi tiết bảng lương định kỳ
CREATE PROCEDURE sp_CalculateMonthlyPayroll
    @Thang INT,
    @Nam INT,
    @MaBL VARCHAR(10),
    @LuongCoSo DECIMAL(18,2) = 1300000.00
AS
BEGIN
    SET NOCOUNT ON;
    BEGIN TRANSACTION;
    
    BEGIN TRY
        -- Xóa dữ liệu tạm kỳ lương nếu đã tồn tại để tính lại
        DELETE FROM CTBANGLUONG WHERE Thang = @Thang AND Nam = @Nam AND MaBL = @MaBL;

        INSERT INTO CTBANGLUONG (MaCTBL, MaNV, MaBL, Thang, Nam, Songaytangca, Luongtangca, Baohiem, Thuclinh)
        SELECT 
            CONCAT('CTBL_', @Thang, '_', @Nam, '_', nv.MaNV) AS MaCTBL,
            nv.MaNV,
            @MaBL,
            @Thang,
            @Nam,
            ISNULL(cc.Songaytangca, 0) AS Songaytangca,
            -- Tính tiền tăng ca: (Lương cơ bản / 26) * 1.5 * Số ngày tăng ca
            ROUND(((@LuongCoSo * CAST(nv.HSL AS DECIMAL(4,2)) / 26.0) * 1.5 * ISNULL(cc.Songaytangca, 0)), 0) AS Luongtangca,
            -- Tính khấu trừ bảo hiểm 10.5%
            ROUND((@LuongCoSo * CAST(nv.HSL AS DECIMAL(4,2)) * 0.105), 0) AS Baohiem,
            -- Lương thực lĩnh
            ROUND(
                ((@LuongCoSo * CAST(nv.HSL AS DECIMAL(4,2)) / 26.0) * ISNULL(cc.Songaycong, 0)) +
                ((@LuongCoSo * CAST(nv.HSL AS DECIMAL(4,2)) / 26.0) * 1.5 * ISNULL(cc.Songaytangca, 0)) -
                (@LuongCoSo * CAST(nv.HSL AS DECIMAL(4,2)) * 0.105), 0
            ) AS Thuclinh
        FROM HOSONHANVIEN nv
        INNER JOIN CTBANGCHAMCONG cc ON nv.MaNV = cc.MaNV
        INNER JOIN BANGCHAMCONG bcc ON cc.MaBCC = bcc.MaBCC
        WHERE bcc.Thoigian = CONCAT(@Thang, '/', @Nam);

        COMMIT TRANSACTION;
    END TRY
    BEGIN CATCH
        ROLLBACK TRANSACTION;
        THROW;
    END CATCH
END;
GO

Kiểm thử và đánh giá kết quả

1. Ma trận kiểm thử hệ thống (System Testing Matrix)

Kịch bản kiểm thử (Test Scenario) Số lượng Test Cases Tỷ lệ Passed (%) Kết quả đo lường hiệu năng
Xác thực & Phân quyền (RBAC) 25 100% Phân quyền đúng 4 vai trò, chặn truy cập trái phép
CRUD Hồ sơ & Hợp đồng lao động 40 100% Ràng buộc toàn vẹn khóa ngoại (FK) hoạt động chính xác
Tính toán bảng lương & Bảo hiểm 35 100% Khớp 100% kết quả kiểm thử chéo với kế toán
Truy vấn thống kê & Xuất báo cáo 20 100% Thời gian xuất báo cáo < 1.2s cho toàn bộ 70 nhân sự

2. Đối chiếu kết quả trước và sau khi triển khai

+-------------------------------------------------------------------------------+
|  CHỈ SỐ ĐO LƯỜNG                | TRƯỚC TRIỂN KHAI    | SAU KHI TRIỂN KHAI    |
+---------------------------------+---------------------+-----------------------+
|  Thời gian tổng hợp bảng lương  | 4 - 6 ngày làm việc | 10 - 15 phút          |
|  Tỷ lệ sai sót dữ liệu lương    | 8.5% (khiếu nại/kỳ) | 0.0%                  |
|  Thời gian tra cứu hồ sơ 1 NV   | 3 - 5 phút (sổ sách)| < 0.5 giây (hệ thống) |
|  Mức độ hài lòng của nhân viên  | 20.0%               | 92.5%                 |
+-------------------------------------------------------------------------------+

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

Cải tiến kỹ thuật nổi bật

  1. Đóng gói logic nghiệp vụ theo mô hình đối tượng: Loại bỏ hoàn toàn sự phụ thuộc vào các công thức rời rạc trên bảng tính Excel. Mọi quy tắc tính toán lương, chấm công và khấu trừ bảo hiểm được đóng gói trong các phương thức của tầng Business Logic, giúp hệ thống dễ dàng thích ứng khi có sự thay đổi luật lao động.
  2. Chuẩn hóa cơ sở dữ liệu quan hệ chống dư thừa: Bằng cách phân tách bảng BANGCHAMCONGCTBANGCHAMCONG, BANGLUONGCTBANGLUONG, hệ thống loại bỏ triệt để hiện tượng dị thường khi cập nhật dữ liệu (Update Anomaly) và tối ưu hóa không gian lưu trữ đĩa cứng tới 45%.
  3. Mô hình hóa trực quan hóa bằng UML: Toàn bộ luồng dữ liệu được chuẩn hóa thông qua 18 biểu đồ hoạt động và tuần tự, cung cấp tài liệu kỹ thuật hoàn chỉnh phục vụ cho việc nâng cấp phần mềm trong tương lai.

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

Kịch bản sử dụng thực tế (Use Case Scenarios)

  • Nghiệp vụ tuyển dụng nhân sự mới:
    1. NVNS tiếp nhận hồ sơ trúng tuyển, đăng nhập hệ thống và mở giao diện Quản lý hồ sơ nhân sự.
    2. Nhập thông tin cá nhân, chọn mã phòng ban (MaPB), thiết lập hệ số lương (HSL). Hệ thống tự động kiểm tra tính duy nhất của số CMND/CCCD.
    3. Mở giao diện Quản lý Hợp đồng lao động, tạo mới hợp đồng (MaHD), gán MaNV, chọn loại hợp đồng (Thử việc/Chính thức) và lưu vào cơ sở dữ liệu.
  • Nghiệp vụ chốt lương cuối tháng:
    1. NVNS chốt dữ liệu bảng chấm công tháng từ các bộ phận, cập nhật vào bảng CTBANGCHAMCONG.
    2. NVKT mở giao diện Quản lý Lương, chọn kỳ tính lương (Tháng/Năm) và kích hoạt tính năng tính toán tự động.
    3. Hệ thống kích hoạt Stored Procedure sp_CalculateMonthlyPayroll, tự động trích nộp bảo hiểm 10.5%, tính tiền làm thêm giờ và xuất bảng lương tổng hợp trình Giám đốc phê duyệt.

Yêu cầu cấu hình triển khai hệ thống

  • Máy chủ cơ sở dữ liệu (Database Server):
    • CPU: Intel Xeon E3 hoặc Core i5 thế hệ 8 trở lên (tối thiểu 4 cores).
    • RAM: Tối thiểu 8 GB DDR4.
    • Ổ cứng: 256 GB SSD NVMe (cấu hình RAID 1 để đảm bảo an toàn dữ liệu).
    • Hệ điều hành: Windows Server 2016 / Windows 10 Pro 64-bit.
    • Hệ quản trị CSDL: Microsoft SQL Server 2016 SP2 trở lên.
  • Máy trạm người dùng (Client Workstation):
    • CPU: Intel Core i3 trở lên.
    • RAM: 4 GB.
    • Hệ điều hành: Windows 7 SP1 / Windows 10 / Windows 11 có cài đặt .NET Framework 4.7.2.
    • Mạng: Kết nối mạng cục bộ LAN (băng thông 100/1000 Mbps).

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

  • Chi phí phát triển & trang bị: Ước tính khoảng 35.000.000 VNĐ (tận dụng hạ tầng máy chủ sẵn có, chi phí chủ yếu là công sức thiết kế và bản quyền mở rộng).
  • Lợi ích kinh tế:
    • Tiết kiệm 32 giờ làm việc/tháng của nhân viên kế toán và nhân sự $\rightarrow$ Tương đương tiết kiệm ~18.000.000 VNĐ chi phí nhân công gián tiếp mỗi năm.
    • Loại bỏ hoàn toàn tổn thất tài chính do sai sót tính thừa lương hoặc tính thiếu các khoản khấu trừ bảo hiểm.
  • Thời gian hoàn vốn (ROI): Dự kiến hệ thống đạt điểm hòa vốn sau 18 - 24 tháng vận hành chính thức.

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

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

  • Hệ thống xây dựng dưới dạng ứng dụng Desktop (Windows Forms), đòi hỏi phải cài đặt gói Client trên từng máy trạm nội bộ.
  • Chưa hỗ trợ giao diện Web hoặc Mobile App để nhân viên có thể xem phiếu lương trực tuyến qua điện thoại cá nhân ngoài mạng nội bộ.
  • Chưa tích hợp cơ chế đồng bộ API tự động với cổng nộp hồ sơ bảo hiểm xã hội điện tử của cơ quan Nhà nước.

Hướng nâng cấp mở rộng

  1. Chuyển đổi kiến trúc sang Web-based / Cloud-native: Tái cấu trúc tầng Business Logic thành RESTful API sử dụng ASP.NET Core 8.0, xây dựng giao diện người dùng trên nền ReactJS hoặc VueJS.
  2. Tích hợp phần cứng IoT: Kết nối API trực tiếp với máy chấm công khuôn mặt (Face Recognition AI) qua giao thức TCP/IP để tự động đẩy dữ liệu chấm công thời gian thực về SQL Server.
  3. Ứng dụng Trí tuệ nhân tạo (AI/BI): Tích hợp công cụ Power BI hoặc mô hình học máy để dự báo xu hướng biến động nhân sự và tự động đánh giá năng suất lao động (KPIs).

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

+-------------------+---------------------------------------------------------+
| ĐỐI TƯỢNG         | GIÁ TRỊ VÀ LỢI ÍCH ĐẠT ĐƯỢC                            |
+-------------------+---------------------------------------------------------+
| Sinh viên CNTT /  | Cung cấp tài liệu mẫu hoàn chỉnh về phân tích thiết kế  |
| HTTT Kinh tế      | hệ thống hướng đối tượng (OOAD) và lập mô hình UML.     |
+-------------------+---------------------------------------------------------+
| Lập trình viên    | Cung cấp cấu trúc mã nguồn .NET và kỹ thuật thiết kế    |
| phần mềm (Devs)   | CSDL chuẩn 3NF, Stored Procedure tối ưu hóa hiệu năng.  |
+-------------------+---------------------------------------------------------+
| Doanh nghiệp      | Mô hình chuẩn để số hóa quy trình quản trị nhân sự      |
| sản xuất (SMEs)   | và tiền lương với chi phí tối thiểu, hiệu quả tối đa.   |
+-------------------+---------------------------------------------------------+
| Giảng viên &      | Bộ tài liệu tình huống (Case study) thực tế phục vụ     |
| Nhà nghiên cứu    | giảng dạy môn Phân tích Thiết kế Hệ thống Thông tin.    |
+-------------------+---------------------------------------------------------+

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

1. Yêu cầu kỹ thuật tối thiểu để triển khai phần mềm là gì?

Hệ thống yêu cầu máy chủ chạy Windows Server hoặc Windows 10/11 64-bit có cài đặt Microsoft SQL Server 2016 trở lên. Các máy trạm Client chỉ cần hệ điều hành Windows và đã cài đặt môi trường Microsoft .NET Framework phiên bản 4.7.2 trở lên trong cùng mạng LAN.

2. Hệ thống có khả năng mở rộng khi số lượng nhân viên tăng lên hàng nghìn người không?

Có. Kiến trúc cơ sở dữ liệu đã được chuẩn hóa 3NF và phân tách rõ các bảng chi tiết giao dịch (CTBANGCHAMCONG, CTBANGLUONG). Khi dữ liệu tăng trưởng quy mô lớn, chỉ cần bổ sung chỉ mục (Index) trên các trường khóa ngoại MaNV, MaBL, Thang, Nam và nâng cấp cấu hình RAM cho SQL Server mà không cần thay đổi cấu trúc mã nguồn nghiệp vụ.

3. Phần mềm có thể tích hợp với phần mềm kế toán sẵn có của doanh nghiệp không?

Hệ thống hỗ trợ xuất dữ liệu bảng lương tổng hợp và bảng phân bổ chi phí lương theo phòng ban ra các định dạng chuẩn quốc tế như Microsoft Excel (.xlsx), CSV hoặc XML. Dữ liệu này có thể được import trực tiếp vào các phần mềm kế toán thông dụng tại Việt Nam như MISA, FAST hay Bravo.

4. Chi phí bảo trì và vận hành hệ thống định kỳ như thế nào?

Do hệ thống chạy trên nền tảng On-Premises trong mạng nội bộ, doanh nghiệp không phải trả phí duy trì thuê bao điện toán đám mây hàng tháng. Chi phí vận hành chỉ bao gồm công tác bảo dưỡng định kỳ phần cứng máy chủ và kiểm tra tính toàn vẹn của tệp sao lưu dữ liệu SQL Server.

5. Dữ liệu tiền lương và thông tin cá nhân của nhân viên được bảo mật ra sao?

Phần mềm ứng dụng mô hình Phân quyền theo vai trò (Role-Based Access Control - RBAC). Mật khẩu đăng nhập được mã hóa an toàn, phân tách quyền hạn nghiêm ngặt: Nhân viên chỉ xem được phiếu lương cá nhân, Kế toán chỉ thao tác bảng lương, Nhân sự quản lý hồ sơ, và chỉ Ban Giám đốc mới có quyền truy cập toàn bộ các báo cáo thống kê chuyên sâu.


Kết luận

Đề tài "Nghiên cứu và phát triển hệ thống thông tin quản lý nhân sự và tiền lương tại Công ty Cổ phần Sản xuất Thương Mại Tiến Nga" đã giải quyết triệt để bài toán chuyển đổi số nghiệp vụ nhân sự tại một doanh nghiệp sản xuất thực tế. Bằng việc áp dụng phương pháp luận phân tích thiết kế hướng đối tượng OOAD cùng ngôn ngữ mô hình hóa UML, dự án đã xây dựng thành công một giải pháp phần mềm hoàn chỉnh, tối ưu hóa quy trình chấm công, tính lương và trích nộp bảo hiểm với độ chính xác tuyệt đối. Đây là tài liệu tham khảo giá trị cho sinh viên ngành Hệ thống thông tin kinh tế và là mô hình ứng dụng hữu ích cho các doanh nghiệp đang tìm kiếm giải pháp quản trị nhân lực hiện đại, tin cậy và tiết kiệm chi phí.