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

Đề tài "Hệ thống quản lý nhân sự" được thực hiện dưới dạng bài tập lớn / đồ án môn học thuộc học phần Thực hành Lập trình .NET tại Khoa Công nghệ thông tin, Trường Đại học Kinh tế - Kỹ thuật Công nghiệp (UNETI), do nhóm sinh viên gồm Lê Kim Anh (nhóm trưởng), Hoàng Thu Hiền và Nguyễn Văn Chính thực hiện dưới sự hướng dẫn của ThS. Trần Thị Lan Anh vào tháng 10 năm 2024.

Bối cảnh thực tiễn của nghiên cứu xuất phát từ nhu cầu tin học hóa các nghiệp vụ quản trị nhân sự trong tổ chức nhằm đảm bảo tính chính xác, thông suốt và kịp thời trong quá trình quản lý thông tin cán bộ, công tác, tiền lương và chế độ đãi ngộ.

Mục tiêu nghiên cứu

  1. Xây dựng và hoàn thiện một hệ thống phần mềm quản lý đảm bảo tính ổn định, độ tin cậy và khả năng đáp ứng các nhu cầu nghiệp vụ quản trị (trong phần Lời mở đầu của văn bản gốc có ghi nhận mục tiêu chính là "Xây dựng và phát triển một nền tảng quản lý và bán sách trực tuyến hiệu quả...", tuy nhiên toàn bộ nội dung phân tích, thiết kế cơ sở dữ liệu và hiện thực giao diện đều tập trung chuyên biệt vào bài toán Quản lý nhân sự).
  2. Tin học hóa các quy trình quản lý hồ sơ nhân viên, quản lý quá trình công tác, theo dõi và tính toán lương, quản trị tài khoản phân quyền và kết xuất báo cáo thống kê.

Yêu cầu nghiên cứu

  • Giao diện người dùng: Thiết kế giao diện thân thiện, khoa học, trực quan, cho phép người dùng thao tác nghiệp vụ và tra cứu dữ liệu thuận tiện.
  • Tính năng hệ thống: Cung cấp đầy đủ 4 phân hệ chức năng cơ bản gồm: Quản lý nhân viên; Quản lý lương và chính sách; Quản trị hệ thống; Báo cáo thống kê.
  • Tiếp nhận phản hồi: Thiết lập cơ chế tiếp nhận phản hồi, đánh giá từ nhân viên để hỗ trợ điều chỉnh các chính sách phúc lợi và quy trình làm việc.

Đối tượng và phạm vi nghiên cứu

  • Đối tượng nghiên cứu: Quy trình nghiệp vụ quản lý nhân sự, cấu trúc dữ liệu hồ sơ - phòng ban - lương thưởng và các kỹ thuật xây dựng ứng dụng quản lý trên nền tảng .NET.
  • Phạm vi không gian và thời gian: Đề tài giới hạn trong khuôn khổ học phần Thực hành Lập trình .NET, hoàn thành vào tháng 10 năm 2024 tại Hà Nội.

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

Khung lý thuyết và mô hình tiếp cận

Nghiên cứu áp dụng phương pháp phân tích và thiết kế hệ thống có cấu trúc (Structured Systems Analysis and Design):

  • Mô hình phân rã chức năng (Functional Decomposition): Phân chia tổng thể hệ thống thành các khối chức năng và tiểu chức năng nghiệp vụ.
  • Mô hình luồng dữ liệu (Data Flow Diagram - DFD): Sử dụng các cấp độ DFD từ mức khung cảnh (Context Diagram), DFD mức đỉnh (Level 0/1) đến DFD mức dưới đỉnh (Level 2) cho từng phân hệ nghiệp vụ cụ thể.
  • Mô hình dữ liệu quan hệ (Relational Database Design): Xác định các thực thể, thuộc tính, khóa chính và thiết lập lược đồ quan hệ thực thể (Database Diagram).

Phương pháp nghiên cứu

  • Khảo sát và mô hình hóa nghiệp vụ: Khảo sát các luồng công việc thực tế trong quản lý nhân sự (tiếp nhận nhân viên mới, cập nhật thay đổi công tác, thiết lập chính sách lương, lập bảng lương định kỳ, sao lưu hệ thống và kết xuất báo cáo).
  • Thiết kế và phát triển phần mềm: Hiện thực hóa các bảng dữ liệu trên hệ quản trị cơ sở dữ liệu quan hệ và lập trình giao diện tương tác ứng dụng (Windows Forms) trên nền tảng .NET.

Nguồn dữ liệu

Dữ liệu nghiên cứu bao gồm các mẫu thông tin định danh nhân sự, cơ cấu phòng ban, danh mục quá trình công tác và biểu mẫu chính sách lương thưởng được chuẩn hóa thành các bảng dữ liệu thực nghiệm trong hệ thống.


Thiết kế và triển khai

Hệ thống được thiết kế theo cấu trúc ứng dụng quản lý dữ liệu trên môi trường .NET, phân định rõ ràng luồng dữ liệu và lược đồ cơ sở dữ liệu quan hệ.

1. Kiến trúc luồng dữ liệu (DFD)

  • DFD mức khung cảnh: Mô tả tương tác giữa hệ thống quản lý nhân sự với các tác nhân ngoài (Nhân viên, Quản lý, Bộ phận tài chính).
  • DFD mức đỉnh: Phân rã luồng dữ liệu tổng quát thành 4 khối xử lý chính: (1.0) Quản lý nhân viên, (2.0) Quản lý lương và chính sách, (3.0) Quản trị hệ thống, (4.0) Báo cáo thống kê.
  • DFD mức dưới đỉnh: Chi tiết hóa các tiến trình con xử lý cập nhật dữ liệu, ghi nhận vào các kho dữ liệu (Hồ sơ nhân viên, Bảng lương, Chính sách lương, Tài khoản).

2. Thiết kế cơ sở dữ liệu quan hệ

Hệ thống bao gồm 7 thực thể dữ liệu liên kết quan hệ chặt chẽ với nhau:

STT Tên bảng quan hệ Khóa chính Thuộc tính chính Mục đích lưu trữ
1 TaiKhoan ID TenDangNhap, MatKhau, QuyenTruyCap Thông tin tài khoản đăng nhập và quyền hạn sử dụng hệ thống
2 PhongBan MaPhongBan TenPhongBan Thông tin cơ cấu danh mục các phòng ban trong công ty
3 ChinhSachLuong MaChinhSach MucLuongCoBan, KhoanThuong, PhucLoi, NgayApDung Các quy định về mức lương cơ sở, tiền thưởng và chế độ phúc lợi
4 BangLuong MaBangLuong MaPhongBan, NgayTinhLuong, LuongThucLanh, NgayNghi, MaChinhSach Dữ liệu chi tiết tính lương cho nhân viên theo từng kỳ
5 NhanVien MaNhanVien MaPhongBan, ViTriCongViec, NgayBatDauLamViec, MaCongTac Thông tin nhân sự trực thuộc phòng ban và vị trí công tác
6 HoSo MaHoSo MaNhanVien, HoTen, NgaySinh, DiaChi, SoDienThoai, Email Chi tiết nhân thân và thông tin liên lạc của từng nhân viên
7 CongTac MaCongTac GhiChu, NgayBatDau, NgayKetThuc Lịch sử theo dõi tiến trình và các mốc thời gian công tác

Chi tiết các trường dữ liệu và kiểu dữ liệu chuẩn được định nghĩa trong tài liệu:

  • Bảng TaiKhoan: ID (Char(30), PK), TenDangNhap (Varchar(50)), MatKhau (Varchar(100)), QuyenTruyCap (Varchar(20)).
  • Bảng ChinhSachLuong: MaChinhSach (Char(30), PK), MucLuongCoBan (Demical(10,2)), KhoanThuong (Demical(10,2)), PhucLoi (Demical(10,2)), NgayApDung (Date).
  • Bảng PhongBan: MaPhongBan (Char(30), PK), TenPhongBan (Varchar(100)).
  • Bảng BangLuong: MaBangLuong (Char(30), PK), MaPhongBan (Char(30)), NgayTinhLuong (Date), LuongThucLanh (Demical(10,2)), NgayNghi (Int), MaChinhSach (Char(30)).
  • Bảng NhanVien: MaNhanVien (Char(30), PK), MaPhongBan (Char(30)), ViTriCongViec (Varchar(100)), NgayBatDauLamViec (Date), MaCongTac (Text).
  • Bảng HoSo: MaHoSo (Char(30), PK), MaNhanVien (Char(30)), HoTen (Varchar(100)), NgaySinh (Date), DiaChi (Varchar(255)), SoDienThoai (Varchar(15)), Email (Varchar(100)).
  • Bảng CongTac: MaCongTac (Char(30), PK), GhiChu (Varchar(255)), NgayBatDau (Date), NgayKetThuc (Date).

3. Triển khai chức năng và giao diện

Phần mềm hiện thực 97 giao diện biểu mẫu (form) thao tác kết nối trực tiếp với cơ sở dữ liệu:

  • Phân hệ Nhân viên: Biểu mẫu đăng nhập; form cập nhật thông tin nhân viên (thêm/sửa/xóa với các mã nhân viên cụ thể như NV003, NV004); form quản lý phòng ban (thêm/sửa/xóa phòng ban PB007); form quản lý hồ sơ nhân viên (thao tác thêm/xóa mã hồ sơ HS016, cập nhật họ tên từ Nguyen Van A sang Nguyen Van Main); form cập nhật quá trình công tác (thêm/xóa mã công tác CT006, cập nhật ghi chú từ nothing sang du an b); form tra cứu nhân viên.
  • Phân hệ Lương và chính sách: Biểu mẫu cập nhật bảng lương (thêm bảng lương, cập nhật phòng ban từ PB001 sang PB002, xóa mã bảng lương BL006); form cập nhật chính sách lương (thêm mã chính sách CS003, điều chỉnh mức lương từ 2700000 xuống 1500000, xóa chính sách CS003/CT003); form tính lương thực tế (thực hiện tính lương cho nhân viên NV010); form tra cứu lương theo năm; form tra cứu chính sách theo ngày áp dụng và theo mã chính sách CS001.
  • Phân hệ Quản trị hệ thống & Báo cáo: Các biểu mẫu quản lý danh sách tài khoản người dùng, chức năng sao lưu dữ liệu và tạo báo cáo tổng hợp.

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

CHƯƠNG 1: PHÂN TÍCH HỆ THỐNG

Chương này tập trung trình bày kết quả khảo sát hiện trạng nghiệp vụ và xây dựng các mô hình luồng dữ liệu cho hệ thống quản lý nhân sự:

  • Nhiệm vụ cơ bản: Xác lập 4 nhóm nhiệm vụ trọng tâm: Quản lý nhân viên, Quản lý lương và chính sách, Quản trị hệ thống, Báo cáo thống kê.
  • Quy trình xử lý nghiệp vụ:
    • Quy trình nhân sự: Tiếp nhận thông tin nhân viên mới, lưu trữ vào "Hồ sơ nhân viên", cập nhật thông tin bổ nhiệm/chuyển đổi bộ phận vào cơ sở dữ liệu và xử lý các yêu cầu tra cứu lý lịch công tác.
    • Quy trình lương thưởng: Quản lý ban hành chính sách đãi ngộ; bộ phận tài chính cập nhật vào hệ thống; định kỳ hệ thống lập "bảng lương" gửi nhân viên xem xét; sau khi xác nhận, dữ liệu được chuyển đến bộ phận tài chính thực hiện chi trả.
    • Quy trình quản trị và an toàn dữ liệu: Quản lý tra cứu, cập nhật danh sách tài khoản (thêm, sửa, xóa) và kích hoạt cơ chế sao lưu dữ liệu bảo mật.
    • Quy trình báo cáo thống kê: Định kỳ tổng hợp dữ liệu từ "Hồ sơ nhân viên", "Bảng lương" và "Chính sách lương" để cung cấp báo cáo tổng quan về nhân sự và tài chính cho cấp quản lý.
  • Mô hình hóa dữ liệu (DFD): Xây dựng hệ thống sơ đồ từ Sơ đồ phân rã chức năng (Hình 1.1), DFD mức khung cảnh (Hình 1.2), DFD mức đỉnh (Hình 1.3), cùng các DFD mức dưới đỉnh cho các chức năng 1.0 (Hình 1.4), 2.0 (Hình 1.5), 3.0 (Hình 1.6) và 4.0 (Hình 3.7).

CHƯƠNG 2: XÂY DỰNG CƠ SỞ DỮ LIỆU

Chương 2 thiết kế chi tiết cấu trúc dữ liệu lưu trữ cho toàn bộ hệ thống:

  • Mô tả 7 thực thể nghiệp vụ: Nhân viên, Tài khoản, Chính sách lương, Bảng lương, Phòng ban, Hồ sơ, Công tác.
  • Lược đồ quan hệ: Chuyển đổi mô hình thực thể thành 7 bảng dữ liệu quan hệ gồm TaiKhoan, PhongBan, ChinhSachLuong, BangLuong, NhanVien, CongTac, HoSo.
  • Từ điển dữ liệu và sơ đồ quan hệ (Database Diagrams - Hình 3.8): Xác định chi tiết từng thuộc tính, kiểu dữ liệu (Char, Varchar, Demical(10,2), Date, Int, Text), định vị khóa chính và mối liên kết tham chiếu giữa các bảng dữ liệu.

CHƯƠNG 3: XÂY DỰNG PHẦN MỀM CHO BÀI TOÁN QUẢN LÝ

Chương 3 trình bày việc xây dựng giao diện ứng dụng và kiểm thử tương tác dữ liệu trên nền tảng .NET:

  • Phân hệ Nhân viên (Mục 3.1): Trình bày chi tiết chuỗi 64 giao diện kiểm thử từ đăng nhập, thêm/sửa/xóa nhân viên, cập nhật thông tin phòng ban, quản lý hồ sơ nhân sự đến lịch sử công tác và tra cứu nhân viên.
  • Phân hệ Lương và chính sách (Mục 3.2): Trình bày chuỗi giao diện từ Hình 3.65 đến Hình 3.97, minh họa quy trình thao tác thêm/sửa/xóa bảng lương, thiết lập mức lương/thưởng trong chính sách, thực hiện tính lương thực lãnh cho nhân viên (NV010) và các thao tác tra cứu lương/chính sách theo tiêu chí năm và ngày áp dụng.
  • Phân hệ Quản trị hệ thống (Mục 3.3): Cung cấp các giao diện quản lý tài khoản người dùng và thực thi chức năng sao lưu an toàn dữ liệu.

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

Kết quả chính đạt được

  • Thiết lập hoàn chỉnh mô hình phân tích chức năng và mô hình luồng dữ liệu (DFD) đa cấp độ cho bài toán quản lý nhân sự.
  • Thiết kế thành công cấu trúc cơ sở dữ liệu quan hệ gồm 7 bảng với đầy đủ khóa chính và kiểu dữ liệu chuẩn xác (TaiKhoan, PhongBan, ChinhSachLuong, BangLuong, NhanVien, CongTac, HoSo).
  • Xây dựng hệ thống giao diện ứng dụng hoàn chỉnh với gần 100 màn hình thao tác (từ Hình 3.1 đến Hình 3.97), thực hiện đầy đủ các chức năng thêm, sửa, xóa, tính toán tự động và tra cứu dữ liệu.
  • Minh chứng hoạt động thực tế của hệ thống qua các ca kiểm thử dữ liệu cụ thể:
    • Cập nhật và xóa nhân viên mã NV003, NV004.
    • Quản lý phòng ban mã PB007, chuyển đổi phòng ban tính lương từ PB001 sang PB002.
    • Xử lý hồ sơ nhân sự mã HS016 (thay đổi tên thành Nguyen Van Main).
    • Cập nhật quá trình công tác mã CT006 (ghi chú du an b).
    • Cập nhật chính sách lương CS003 (điều chỉnh mức lương 2.700.000 thành 1.500.000) và thực hiện tính lương thành công cho mã nhân viên NV010.

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

  • Đưa ra giải pháp chuẩn hóa quy trình trao đổi dữ liệu nhân sự - tài chính trong một ứng dụng duy nhất, giảm thiểu sai sót thủ công khi tính toán lương và quản lý quá trình công tác.
  • Cung cấp tài liệu thiết kế hệ thống chi tiết từ mô hình DFD, lược đồ quan hệ thực thể đến thiết kế giao diện Form Windows trong môi trường .NET phục vụ mục tiêu học tập và thực hành phát triển phần mềm.

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

Hạn chế được ghi nhận

  • Trong nội dung Lời mở đầu của văn bản còn tồn tại sự thiếu nhất quán khi ghi nhận mục tiêu nghiên cứu liên quan đến "nền tảng quản lý và bán sách trực tuyến", trong khi toàn bộ nội dung học thuật và kỹ thuật của đồ án là "Hệ thống quản lý nhân sự".
  • Phần bảng đặc tả từ điển dữ liệu trong Chương 2 xuất hiện đoạn văn bản lặp lại định nghĩa các trường của bảng HoSo vào vị trí của bảng CongTac trước khi trình bày bảng thuộc tính chính thức của CongTac.
  • Hệ thống tập trung chủ yếu vào giao diện tương tác dữ liệu cơ bản (CRUD) trên nền tảng ứng dụng desktop; các thuật toán xử lý báo cáo thống kê phức tạp hoặc cơ chế phân quyền nâng cao chưa được phân tích chi tiết trong tài liệu.

Hướng nghiên cứu tiếp

  • Hoàn thiện tính năng kết xuất báo cáo thống kê tổng hợp nhiều tiêu chí dưới dạng biểu đồ hoặc tập tin số liệu (Excel/PDF).
  • Chuẩn hóa và mở rộng các quy tắc nghiệp vụ tự động hóa trong quy trình tính lương (tính bảo hiểm, thuế thu nhập cá nhân dựa trên ngày nghỉ và phụ cấp).
  • Nâng cấp hệ thống lên nền tảng Web hoặc kiến trúc Client-Server hiện đại để phục vụ truy cập phân tán.

Giá trị tham khảo

Đồ án là tài liệu tham khảo thực tiễn hữu ích cho:

  1. Sinh viên ngành Công nghệ thông tin: Đặc biệt là sinh viên đang học tập các học phần Phân tích thiết kế hệ thống thông tin, Cơ sở dữ liệu và Thực hành lập trình .NET / C# Windows Forms.
  2. Người nghiên cứu xây dựng phần mềm quản lý vừa và nhỏ: Tham khảo cấu trúc phân tích quy trình DFD đa cấp độ, cách thiết kế cơ sở dữ liệu quan hệ cho bài toán nhân sự - tiền lương và cách bố cục luồng giao diện CRUD trực quan.

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

1. Hệ thống quản lý nhân sự trong đồ án bao gồm những phân hệ chức năng cơ bản nào?
Hệ thống được thiết kế gồm 4 phân hệ chức năng chính: (1) Quản lý nhân viên, (2) Quản lý lương và chính sách, (3) Quản trị hệ thống, và (4) Báo cáo thống kê.

2. Cơ sở dữ liệu của hệ thống gồm những bảng dữ liệu quan hệ nào?
Cơ sở dữ liệu bao gồm 7 bảng quan hệ: TaiKhoan (quản lý tài khoản và quyền truy cập), PhongBan (quản lý danh mục phòng ban), ChinhSachLuong (lưu mức lương cơ bản, thưởng, phúc lợi), BangLuong (lưu kết quả tính lương và ngày nghỉ), NhanVien (lưu vị trí công việc, ngày bắt đầu), CongTac (lưu lịch sử công tác) và HoSo (lưu chi tiết thông tin cá nhân nhân viên).

3. Khóa chính và kiểu dữ liệu của mức lương cơ bản trong bảng ChinhSachLuong được định nghĩa như thế nào?
Trong bảng ChinhSachLuong, khóa chính là MaChinhSach với kiểu dữ liệu Char(30). Thuộc tính mức lương cơ bản mang tên MucLuongCoBan được định nghĩa với kiểu dữ liệu Demical(10,2).

4. Quy trình tính và chi trả lương trong hệ thống được thực hiện theo các bước nào?
Quản lý ban hành chính sách lương; bộ phận tài chính cập nhật chính sách vào hệ thống. Đến kỳ tính lương, hệ thống tổng hợp thông tin lập "bảng lương" cho nhân viên xem xét. Khi nhân viên xác nhận và hài lòng với mức lương, dữ liệu tính lương được gửi sang bộ phận tài chính để tiến hành chi trả.

5. Trong các ca kiểm thử giao diện tại Chương 3, thao tác cập nhật chính sách lương đã thực hiện điều chỉnh số liệu cụ thể nào?
Tại màn hình cập nhật chính sách lương (Hình 3.84 và Hình 3.85), thao tác sửa chính sách thành công đã thực hiện điều chỉnh trường Mức lương từ 2700000 thành 1500000 đối với mã chính sách CS003.


Kết luận

Đồ án môn học "Hệ thống quản lý nhân sự" của nhóm sinh viên Trường Đại học Kinh tế - Kỹ thuật Công nghiệp đã hoàn thành việc khảo sát, phân tích quy trình nghiệp vụ và xây dựng mô hình luồng dữ liệu DFD từ mức khung cảnh đến mức chi tiết. Nghiên cứu đã thiết kế lược đồ cơ sở dữ liệu gồm 7 thực thể quan hệ chặt chẽ và triển khai thành công hệ thống biểu mẫu giao diện tương tác trên nền tảng .NET. Tài liệu cung cấp cấu trúc chi tiết, số liệu thuộc tính rõ ràng và hệ thống ca kiểm thử trực quan, đáp ứng đầy đủ yêu cầu học thuật của học phần Thực hành Lập trình .NET.