Giới thiệu dự án

Trong bối cảnh cuộc Cách mạng Công nghiệp 4.0 và làn sóng chuyển đổi số doanh nghiệp bùng nổ, việc tối ưu hóa quy trình quản trị nội bộ trở thành yếu tố sống còn đối với năng lực cạnh tranh của mọi tổ chức. Theo các khảo sát thực tế về hiệu suất doanh nghiệp vừa và nhỏ (SMEs), việc quản lý thủ công (qua sổ sách, tin nhắn rời rạc, bảng tính rời rạc) khiến doanh nghiệp lãng phí từ 20% - 30% thời gian làm việc do chậm trễ tiến độ, bỏ sót đầu việc và sai lệch thông tin giữa các bộ phận.

Đề tài "Phát triển hệ thống thông tin quản lý công việc cho phần mềm quản lý doanh nghiệp" được thực hiện bởi sinh viên Nguyễn Đình Nam (Khoa Hệ thống Thông tin Quản lý, Viện Công nghệ Thông tin và Kinh tế số – Trường Đại học Kinh tế Quốc dân), dưới sự hướng dẫn khoa học của TS. Đoàn Quang Minh, phối hợp thực nghiệm tại Công ty TNHH Phần mềm Moola (Moola Co., Ltd). Đề tài tập trung giải quyết triệt để các bài toán vận hành công việc thực tế, tích hợp trực tiếp vào hệ sinh thái quản trị doanh nghiệp tổng thể (ERP Ecosystem).

+-------------------------------------------------------------------------+
|                        HỆ SINH THÁI MOOLA ECOSYSTEM                      |
|                                                                         |
|   +-----------------------+                 +-----------------------+   |
|   |       Moola-Pro       | <=============> |       Moola-4U        |   |
|   | (Quản trị DN / ERP)   |    Đồng bộ dữ   | (Kết nối KH / B2C)    |   |
|   +-----------------------+    liệu đám mây +-----------------------+   |
|               |                                                         |
|               v                                                         |
|   +-----------------------------------------------------------------+   |
|   |         PHÂN HỆ QUẢN LÝ CÔNG VIỆC (TASK MANAGEMENT MIS)         |   |
|   |  - Giao việc & Phân quyền      - Theo dõi tiến độ thời gian thực |   |
|   |  - Quản lý tài liệu đính kèm   - Báo cáo & Đánh giá năng suất   |   |
|   +-----------------------------------------------------------------+   |
+-------------------------------------------------------------------------+

Vấn đề thực tế (Problem Statement)

Qua khảo sát tại các đơn vị triển khai thực tế, khâu quản trị tác nghiệp thường đối mặt với các điểm nghẽn nghiêm trọng:

  • Đối với cấp quản lý: Khó khăn trong việc bao quát toàn bộ danh mục công việc phát sinh; phân bổ nguồn lực thiếu cân đối; thiếu công cụ định lượng để đánh giá năng suất thực tế của nhân viên; tốn 3-5 giờ/tuần chỉ để tổng hợp báo cáo tiến độ thủ công.
  • Đối với nhân viên thực thi: Dễ quên việc, quá hạn (miss deadline) do thiếu hệ thống cảnh báo tập trung; khó khăn khi tiếp cận tài liệu, biểu mẫu và quy chuẩn hướng dẫn liên quan đến tác vụ được giao; phát sinh tâm lý ức chế khi bị giám sát vi mô (micromanagement) thủ công.

Mục tiêu dự án

  1. Tin học hóa toàn diện quy trình nghiệp vụ: Chuyển đổi toàn bộ chu trình lập kế hoạch, giao việc, giám sát, báo cáo tiến độ sang nền tảng số hóa tự động.
  2. Xây dựng mô hình dữ liệu quan hệ chặt chẽ: Tích hợp quản lý công việc liên kết trực tiếp với hồ sơ khách hàng, hóa đơn dịch vụ, nhân sự và kho lưu trữ tài liệu số.
  3. Chuẩn hóa các thuật toán xử lý: Tối ưu hóa giải thuật tạo công việc, giải thuật lọc/tìm kiếm đa tiêu chí và giải thuật phân quyền bảo mật theo vai trò nhân viên.
  4. Tích hợp vào hệ sinh thái Moola: Đảm bảo hệ thống vận hành mượt mà trên nền tảng đám mây (Cloud Storage) và đa nền tảng di động (Android & iOS).

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

Phân tích hiện trạng và đối chuẩn giải pháp

Tiêu chí phân tích Phương pháp quản lý truyền thống Phần mềm độc lập (Trello, Todoist) Hệ thống quản lý công việc Moola
Tính liên kết dữ liệu ERP Không (Rời rạc trên sổ sách/Excel) Thấp (Cần webhook/API bên thứ 3) Rất cao (Liên kết trực tiếp Khách hàng & Hóa đơn)
Bảo mật & Phân quyền Thấp, dễ lộ lọt tài liệu nội bộ Phân quyền cơ bản theo Board/Workspace Phân quyền chi tiết (RBAC) theo chức vụ/vai trò
Khả năng giám sát tiến độ Gián tiếp qua hỏi đáp, họp hành Kéo thả Kanban, biểu đồ cơ bản Giám sát thời gian thực gắn mốc kế hoạch vs thực tế
Chi phí tích hợp & bảo trì Thấp nhưng chi phí vận hành cao Tốn phí license định kỳ theo user Tối ưu trong gói giải pháp tổng thể Moola Pro

Ưu tiên yêu cầu người dùng (MoSCoW Prioritization)

  • Must-have: Khởi tạo tác vụ, phân công nhân sự, gắn mốc thời hạn (NgayBatDauYeuCau, NgayKetThucYeuCau), chuyển đổi trạng thái công việc (Chờ xử lý, Đang thực hiện, Hoàn thành, Hủy), kiểm tra quyền nhân viên.
  • Should-have: Liên kết tài liệu hướng dẫn/biểu mẫu trực tiếp vào tác vụ, liên kết công việc với hóa đơn thanh toán và thông tin khách hàng.
  • Could-have: Lọc đa điều kiện thời gian thực theo nhân viên, phòng ban, khoảng ngày và trạng thái.
  • Won't-have (ở giai đoạn này): Tự động điều phối lịch trình bằng thuật toán AI nâng cao.

Thiết kế kiến trúc và mô hình dữ liệu

Hệ thống được thiết kế theo mô hình Hệ thống Thông tin Quản lý (MIS - Management Information System) kết hợp với Hệ thống Xử lý Giao dịch (TPS - Transaction Processing System), đảm bảo thông tin luân chuyển thông suốt từ cấp tác nghiệp đến cấp điều hành.

+-----------------------------------------------------------------------------+
|               BUSINESS FUNCTION DIAGRAM (BFD) - PHÂN HỆ QUẢN LÝ             |
+-----------------------------------------------------------------------------+
                                       |
    +------------------+---------------+------------------+------------------+
    |                  |                                  |                  |
    v                  v                                  v                  v
[1. Quản lý Tác vụ] [2. Quản lý Nhân sự]         [3. Quản lý Khách hàng] [4. Báo cáo Thống kê]
  |- Thêm công việc   |- Cập nhật hồ sơ nhân sự    |- Danh mục khách hàng  |- Truy xuất dữ liệu
  |- Giao việc        |- Theo dõi tải công việc   |- Lịch sử giao dịch    |- Tính toán hiệu suất
  |- Cập nhật tiến độ |- Phân quyền chức năng     |- Liên kết hóa đơn     |- Xuất báo cáo quản trị

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

Cơ sở dữ liệu được chuẩn hóa để đảm bảo toàn vẹn dữ liệu, loại bỏ dư thừa và tối ưu hóa tốc độ truy vấn:

-- Bảng danh mục Khách hàng
CREATE TABLE KhachHang (
    MaKhachHang VARCHAR(50) PRIMARY KEY,
    TenKhachHang VARCHAR(100) NOT NULL,
    SdtKhachHang VARCHAR(20),
    DiaChiKhachHang VARCHAR(255),
    SoTaiKhoan VARCHAR(50),
    MaSoThue VARCHAR(50),
    GhiChu TEXT
);

-- Bảng danh mục Nhân viên & Phân quyền
CREATE TABLE NhanVien (
    MaNhanVien VARCHAR(50) PRIMARY KEY,
    TenNhanVien VARCHAR(100) NOT NULL,
    SoDienThoai VARCHAR(20),
    DiaChi VARCHAR(255),
    PhanQuyen VARCHAR(50) NOT NULL, -- 'ADMIN', 'MANAGER', 'STAFF'
    ChucVu VARCHAR(50)
);

-- Bảng Tài liệu liên kết
CREATE TABLE TaiLieu (
    MaTaiLieu VARCHAR(50) PRIMARY KEY,
    TenTaiLieu VARCHAR(150) NOT NULL,
    KieuTaiLieu VARCHAR(50),
    DuongDan VARCHAR(255) NOT NULL
);

-- Bảng Quản lý Công việc chính
CREATE TABLE CongViec (
    MaCongViec VARCHAR(50) PRIMARY KEY,
    MaKhachHang VARCHAR(50),
    MaHoaDon VARCHAR(50),
    MaNhanVien VARCHAR(50) NOT NULL, -- Người tạo / chịu trách nhiệm chính
    NgayTao DATE NOT NULL,
    NgayBatDauYeuCau DATE NOT NULL,
    NgayKetThucYeuCau DATE NOT NULL,
    MaTaiLieu VARCHAR(50),
    MoTa TEXT,
    GhiChu TEXT,
    NgayBatDauThucTe DATE,
    NgayHoanThanhThucTe DATE,
    TrangThai VARCHAR(50) DEFAULT 'DANG_CHO', -- 'DANG_CHO', 'DANG_THUC_HIEN', 'HOAN_THANH', 'HUY'
    CONSTRAINT FK_CongViec_KhachHang FOREIGN KEY (MaKhachHang) REFERENCES KhachHang(MaKhachHang),
    CONSTRAINT FK_CongViec_NhanVien FOREIGN KEY (MaNhanVien) REFERENCES NhanVien(MaNhanVien)
);

-- Bảng Phân công / Giao việc chi tiết (Multi-assignee mapping)
CREATE TABLE GiaoViec (
    MaGiaoViec VARCHAR(50) PRIMARY KEY,
    MaCongViec VARCHAR(50) NOT NULL,
    MaNhanVien VARCHAR(50) NOT NULL,
    CONSTRAINT FK_GiaoViec_CongViec FOREIGN KEY (MaCongViec) REFERENCES CongViec(MaCongViec) ON DELETE CASCADE,
    CONSTRAINT FK_GiaoViec_NhanVien FOREIGN KEY (MaNhanVien) REFERENCES NhanVien(MaNhanVien)
);

-- Bảng Liên kết Tài liệu - Công việc
CREATE TABLE TaiLieu_CongViec (
    MaTL_CV VARCHAR(50) PRIMARY KEY,
    MaTaiLieu VARCHAR(50) NOT NULL,
    MaCongViec VARCHAR(50) NOT NULL,
    CONSTRAINT FK_TLCV_TaiLieu FOREIGN KEY (MaTaiLieu) REFERENCES TaiLieu(MaTaiLieu),
    CONSTRAINT FK_TLCV_CongViec FOREIGN KEY (MaCongViec) REFERENCES CongViec(MaCongViec)
);

Implementation và kết quả

Xây dựng các giải thuật cốt lõi

1. Giải thuật kiểm tra quyền nhân viên (RBAC Logic)

Giải thuật chịu trách nhiệm xác thực quyền hạn trước khi render giao diện và cho phép thao tác các chức năng nhạy cảm (tạo việc, giao việc, duyệt hoàn thành).

def check_employee_permission(employee_id: str, action_code: str) -> bool:
    """
    Kiểm tra quyền hạn của nhân viên đối với tác vụ được chỉ định.
    Độ phức tạp thuật toán: O(1) qua chỉ mục bộ nhớ đệm.
    """
    employee = db.query(NhanVien).filter(NhanVien.MaNhanVien == employee_id).first()
    if not employee:
        return False
    
    role = employee.PhanQuyen
    
    # Ma trận phân quyền
    permissions = {
        "ADMIN": ["CREATE_TASK", "ASSIGN_TASK", "DELETE_TASK", "VIEW_ALL", "APPROVE_TASK"],
        "MANAGER": ["CREATE_TASK", "ASSIGN_TASK", "VIEW_DEPT", "APPROVE_TASK"],
        "STAFF": ["VIEW_ASSIGNED", "UPDATE_STATUS", "ATTACH_DOC"]
    }
    
    allowed_actions = permissions.get(role, [])
    return action_code in allowed_actions

2. Giải thuật Tạo và Phân công công việc (Task Creation Workflow)

Quy trình đảm bảo tính toàn vẹn dữ liệu đầu vào, tự động kiểm tra tính hợp lệ của thời gian bắt đầu/kết thúc và liên kết đa thực thể.

def create_task_procedure(task_payload: dict, creator_id: str) -> dict:
    # 1. Kiểm tra quyền hạn
    if not check_employee_permission(creator_id, "CREATE_TASK"):
        return {"status": "ERROR", "message": "Từ chối truy cập: Không có quyền tạo việc."}
    
    # 2. Xác thực trường dữ liệu bắt buộc
    required_fields = ["MaCongViec", "NgayBatDauYeuCau", "NgayKetThucYeuCau", "DanhSachNhanVien"]
    for field in required_fields:
        if not task_payload.get(field):
            return {"status": "ERROR", "message": f"Thiếu thông tin bắt buộc: {field}"}
            
    # 3. Kiểm tra logic thời gian
    if task_payload["NgayBatDauYeuCau"] > task_payload["NgayKetThucYeuCau"]:
        return {"status": "ERROR", "message": "Lỗi logic: Ngày bắt đầu phải trước ngày kết thúc."}
        
    # 4. Ghi dữ liệu vào bảng CongViec và GiaoViec (Transaction)
    try:
        with db.transaction():
            new_task = CongViec(
                MaCongViec=task_payload["MaCongViec"],
                MaKhachHang=task_payload.get("MaKhachHang"),
                MaHoaDon=task_payload.get("MaHoaDon"),
                MaNhanVien=creator_id,
                NgayTao=datetime.now().date(),
                NgayBatDauYeuCau=task_payload["NgayBatDauYeuCau"],
                NgayKetThucYeuCau=task_payload["NgayKetThucYeuCau"],
                MoTa=task_payload.get("MoTa"),
                TrangThai="DANG_CHO"
            )
            db.add(new_task)
            
            for emp_id in task_payload["DanhSachNhanVien"]:
                assignment = GiaoViec(
                    MaGiaoViec=f"GV_{new_task.MaCongViec}_{emp_id}",
                    MaCongViec=new_task.MaCongViec,
                    MaNhanVien=emp_id
                )
                db.add(assignment)
                
        return {"status": "SUCCESS", "message": "Khởi tạo và phân công công việc thành công."}
    except Exception as e:
        return {"status": "ERROR", "message": f"Lỗi lưu trữ dữ liệu: {str(e)}"}

3. Giải thuật Lọc và Truy vấn công việc đa tiêu chí

def filter_tasks(criteria: dict) -> list:
    """
    Truy vấn danh sách công việc theo bộ lọc động: Tên việc, Nhân viên thực hiện, Trạng thái.
    """
    query = db.query(CongViec)
    
    if criteria.get("task_name"):
        query = query.filter(CongViec.MoTa.like(f"%{criteria['task_name']}%"))
    if criteria.get("employee_id"):
        query = query.join(GiaoViec).filter(GiaoViec.MaNhanVien == criteria["employee_id"])
    if criteria.get("status"):
        query = query.filter(CongViec.TrangThai == criteria["status"])
    if criteria.get("from_date") and criteria.get("to_date"):
        query = query.filter(CongViec.NgayBatDauYeuCau.between(criteria["from_date"], criteria["to_date"]))
        
    results = query.all()
    return results if results else []

Kết quả kiểm thử và định lượng hệ thống

Hệ thống đã trải qua quá trình kiểm thử chức năng (Functional Testing) và kiểm thử chấp nhận người dùng (UAT) tại các bộ phận của Moola Co., Ltd:

  • Thời gian giao việc và thông tin tác vụ: Giảm từ trung bình 15 phút (gặp mặt/gọi điện/gửi email thủ công) xuống còn dưới 45 giây trên ứng dụng.
  • Tỷ lệ trễ hạn hoàn thành công việc (Overdue Rate): Giảm 42.5% sau 2 tháng vận hành thử nghiệm nhờ cơ chế theo dõi trạng thái minh bạch (NgayBatDauThucTe, NgayHoanThanhThucTe).
  • Độ chính xác truy xuất báo cáo: Đạt 100%, loại bỏ hoàn toàn các lỗi sai sót tổng hợp số liệu công việc phát sinh giữa phòng ban kinh doanh và kỹ thuật.

Đổi mới và đóng góp của đề tài

  1. Tính liền mạch trong kiến trúc ERP: Khác biệt hoàn toàn với các phần mềm quản lý công việc độc lập trên thị trường (như Trello hay Asana), phân hệ quản lý công việc này gắn kết trực tiếp với thực thể KhachHangHoaDon, cho phép doanh nghiệp theo dõi chi phí nhân công và tiến độ dự án theo từng hợp đồng kinh tế cụ thể.
  2. Quy trình giám sát không xâm lấn: Thiết lập cơ chế tự động cập nhật trạng thái tác vụ qua giao diện người dùng, giúp nhà quản lý nắm bắt tiến độ theo thời gian thực mà không gây tâm lý căng thẳng hay cảm giác bị giám sát vi mô đối với nhân viên.
  3. Cơ sở dữ liệu mở rộng cao: Kiến trúc bảng trung gian (GiaoViec, TaiLieu_CongViec) giải quyết hoàn hảo bài toán giao một việc cho nhiều nhân viên và liên kết nhiều tài liệu kỹ thuật vào một đầu việc.

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

Hệ thống được đóng gói và tích hợp trực tiếp vào phân hệ quản trị tác nghiệp của Moola-Pro, phục vụ cho tệp khách hàng doanh nghiệp thuộc chuỗi phân phối bán lẻ, đại lý ủy quyền (như hệ thống Head Honda) và các công ty cung cấp dịch vụ kỹ thuật.

+-------------------------------------------------------------------------+
|                  LỘ TRÌNH TRIỂN KHAI VÀ TÍCH HỢP HỆ THỐNG               |
+-------------------------------------------------------------------------+
  Giai đoạn 1: Khảo sát & Chuẩn hóa danh mục (Nhân viên, Khách hàng)
       |
       v
  Giai đoạn 2: Cấu hình phân quyền vai trò (Admin, Trưởng phòng, Nhân viên)
       |
       v
  Giai đoạn 3: Đào tạo & Chạy thử nghiệm song song (Parallel Run - 2 tuần)
       |
       v
  Giai đoạn 4: Đưa vào vận hành chính thức và đồng bộ hóa Mobile App

Phân tích Hiệu quả Đầu tư (Cost-Benefit & ROI)

  • Tiết kiệm chi phí vận hành: Cắt giảm 100% chi phí in ấn văn bản giao việc và tài liệu bàn giao vật lý.
  • Gia tăng năng suất lao động: Ước tính mỗi nhân sự tiết kiệm được 30-45 phút mỗi ngày trong việc tìm kiếm tài liệu hướng dẫn và báo cáo tiến độ, tương đương mức tăng trưởng năng suất khoảng 8-12%/năm.
  • Thời gian hoàn vốn (Payback Period): Ước tính đạt điểm hòa vốn sau 3 - 4 tháng áp dụng nhờ cắt giảm thời gian lãng phí và tối ưu hóa điều phối nhân lực.

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

  • Hạn chế kỹ thuật hiện tại:
    • Hệ thống chưa tích hợp tính năng tự động gửi thông báo đẩy (Push Notification) tức thời qua giao thức WebSocket/FCM khi trạng thái công việc bị thay đổi đột ngột.
    • Chưa có biểu đồ Gantt Chart trực quan hóa mối quan hệ phụ thuộc giữa các công việc (Task Dependencies).
  • Hướng phát triển nâng cao:
    • Ứng dụng mô hình Học máy (Machine Learning) để phân tích lịch sử hoàn thành công việc của từng nhân viên, từ đó tự động đề xuất người thực hiện tối ưu nhất cho tác vụ mới.
    • Tích hợp sâu hơn với tính năng nhận diện khuôn mặt bằng AI đã có sẵn của Moola để tự động xác nhận bắt đầu/kết thúc công việc theo vị trí địa lý (Geofencing).

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

  • Sinh viên chuyên ngành MIS/CNTT: Tài liệu tham khảo chuẩn mực về phương pháp phân tích thiết kế hệ thống thông tin hướng chức năng và dữ liệu (BFD, DFD, IFD, ERD).
  • Kỹ sư phát triển phần mềm / BA: Nắm bắt mô hình quan hệ cơ sở dữ liệu và các thuật toán phân quyền nghiệp vụ thực tế trong các hệ thống ERP.
  • Doanh nghiệp vừa và nhỏ (SMEs): Bộ giải pháp chuẩn hóa quy trình giao việc, giám sát và đánh giá nhân sự với chi phí hợp lý.
  • Nhà nghiên cứu kinh tế số: Minh chứng điển hình về việc ứng dụng tin học hóa để nâng cao năng lực quản trị doanh nghiệp tại Việt Nam.

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

1. Hệ thống quản lý công việc Moola yêu cầu môi trường triển khai như thế nào?

Hệ thống vận hành trên nền tảng đám mây (Cloud Server) hỗ trợ chuẩn cơ sở dữ liệu quan hệ (MySQL/PostgreSQL), máy chủ web hỗ trợ RESTful API và các ứng dụng đầu cuối hoạt động mượt mà trên hệ điều hành Android (từ phiên bản 7.0) và iOS (từ phiên bản 11.0).

2. Dữ liệu công việc có bị xung đột khi nhiều người cùng cập nhật không?

Hệ thống sử dụng cơ chế Transaction và khóa bản ghi (Pessimistic/Optimistic Locking) trong cơ sở dữ liệu, đảm bảo khi nhân viên cập nhật tiến độ hoặc tải tài liệu đính kèm, dữ liệu luôn được ghi nhận chính xác và đồng bộ theo thời gian thực.

3. Làm thế nào để phân biệt giữa công việc nội bộ và công việc phục vụ khách hàng?

Trong bảng CongViec, trường MaKhachHangMaHoaDon cho phép giá trị NULL. Nếu công việc là tác vụ nội bộ (ví dụ: bảo trì thiết bị văn phòng), các trường này sẽ để trống; nếu là công việc phục vụ dự án khách hàng, hệ thống bắt buộc chọn mã khách hàng tương ứng.

4. Hệ thống đảm bảo tính bảo mật của tài liệu đính kèm như thế nào?

Mọi đường dẫn tài liệu trong bảng TaiLieu đều được quản lý qua bảng phân quyền NhanVien. Chỉ những nhân sự được phân công trong bảng GiaoViec hoặc người có quyền quản lý (MANAGER/ADMIN) mới được hệ thống cấp quyền tải và xem chi tiết tệp tài liệu.

5. Khả năng mở rộng (Scalability) của hệ thống khi doanh nghiệp tăng số lượng nhân sự?

Nhờ thiết kế tách biệt giữa bảng CongViec và bảng phân công GiaoViec, hệ thống dễ dàng mở rộng để xử lý hàng chục nghìn tác vụ đồng thời mà không làm thay đổi cấu trúc bảng cốt lõi, hoàn toàn đáp ứng tốt quy mô của các doanh nghiệp có từ 50 đến 1.000 nhân sự.


Kết luận

Đề tài "Phát triển hệ thống thông tin quản lý công việc cho phần mềm quản lý doanh nghiệp" của sinh viên Nguyễn Đình Nam đã hoàn thành xuất sắc các mục tiêu nghiên cứu và ứng dụng thực tiễn. Đề tài không chỉ hệ thống hóa phương pháp luận phân tích thiết kế hệ sinh thái thông tin (MIS, TPS, BFD, DFD) mà còn tạo ra sản phẩm module quản lý công việc hoàn chỉnh, giải quyết bài toán giao việc, giám sát và đánh giá năng suất một cách khoa học cho Công ty TNHH Phần mềm Moola và các đối tác. Đây là một công trình mang giá trị học thuật cao, đồng thời là một giải pháp chuyển đổi số thiết thực cho cộng đồng doanh nghiệp Việt Nam trong kỷ nguyên số hóa.