Giới thiệu dự án

Sự phát triển mạnh mẽ của ngành thể dục thể thao và chăm sóc sức khỏe tại Việt Nam đã thúc đẩy sự mở rộng nhanh chóng của các chuỗi câu lạc bộ (CLB) thể thao đa năng. Theo thống kê từ ngành dịch vụ thể thao đô thị, số lượng hội viên tham gia các trung tâm thể dục thể thao tăng trưởng trung bình từ 15% đến 20% mỗi năm. Tuy nhiên, việc vận hành chuỗi cơ sở phân tán trên địa bàn rộng lớn như Hà Nội đang đối mặt với bài toán nan giải về quản lý dữ liệu tập trung.

Hệ thống Câu lạc bộ Thể dục Thể thao Hà Nội (Trung tâm Thể thao Hà Nội) sở hữu mạng lưới 9 cụm phức hợp giải trí phân bố tại các vị trí trọng điểm: Hồ Bảy Mẫu, Hồ Thiền Quang, Hồ Giảng Võ, Quán Thánh, Quảng Bá,... Cung cấp đa dạng các loại hình dịch vụ như cầu lông, bóng bàn, tennis, cờ tướng, thể dục dụng cụ, bơi lội, xông hơi, bi-a và khí công Himalaya. Mỗi khu vực áp dụng biểu phí riêng biệt cùng chính sách ưu đãi phân tầng theo hạng thẻ hội viên. Việc vận hành theo phương thức ghi chép sổ sách và phiếu thủ công bộc lộ nhiều điểm nghẽn nghiêm trọng:

  • Thời gian đối soát thông tin thẻ và lập phiếu sử dụng dịch vụ kéo dài (trung bình 3 - 5 phút/lượt).
  • Tỷ lệ sai sót trong tính toán chiết khấu ưu đãi và thuế phí (VAT, thuế dịch vụ) đạt mức 12% - 15% khi thực hiện thủ công.
  • Nguy cơ thất lạc chứng từ, hư hỏng dữ liệu giấy tờ theo thời gian.
  • Ban Giám đốc không thể tổng hợp báo cáo thời gian thực (Real-time Reporting) về lưu lượng hội viên và doanh thu giữa 9 cơ sở để điều phối trang thiết bị.

Đề tài "Thiết kế CSDL theo phương pháp mô hình và ứng dụng vào việc xây dựng chương trình quản lý hệ thống câu lạc bộ thể dục thể thao Hà Nội" do sinh viên Vũ Văn Đức thực hiện dưới sự hướng dẫn khoa học của TS. Lê Văn Phùng nhằm giải quyết toàn diện bài toán trên.

+-------------------------------------------------------------------------------+
|                      MỤC TIÊU DỰ ÁN (PROJECT OBJECTIVES)                      |
+-------------------------------------------------------------------------------+
| 1. Chuẩn hóa toàn bộ quy trình nghiệp vụ và chứng từ khảo sát thực tế.        |
| 2. Ứng dụng Phương pháp mô hình (Modeling Method) thiết kế CSDL chuẩn 3NF.    |
| 3. Xây dựng phần mềm quản trị Client-Server trên nền tảng C# WinForms.       |
| 4. Triển khai hệ thống báo cáo, thống kê biểu đồ động đa tiêu chí.           |
+-------------------------------------------------------------------------------+

Phương pháp tiếp cận dựa trên Phương pháp mô hình (Modeling Method) giúp chuyển hóa trực tiếp các quy tắc quản lý nghiệp vụ thực tế thành Mô hình khái niệm dữ liệu (Conceptual Data Model - CDM), sau đó ánh xạ chính xác sang Lược đồ quan hệ (Relational Schema) đạt dạng chuẩn 3 (3NF). Cách tiếp cận này loại bỏ hoàn toàn hiện tượng dị thường dữ liệu (dư thừa, dị thường thêm/xóa/sửa), đảm bảo tính toàn vẹn tham chiếu (Referential Integrity) trên toàn hệ thống phân tán.

Hệ thống đặt mục tiêu rút ngắn thời gian lập phiếu xuống dưới 5 giây, bảo đảm tính toàn vẹn dữ liệu 100%, đồng thời hỗ trợ tra cứu chéo thẻ hội viên giữa 9 cụm dịch vụ. Phạm vi nghiên cứu tập trung vào 3 phân hệ cốt lõi: Quản lý danh mục khu vực - dịch vụ, Quản lý thẻ hội viên - chính sách ưu đãi, và Quản trị phiếu sử dụng dịch vụ - thống kê báo cáo.


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ế tại 9 cơ sở của Trung tâm Thể thao Hà Nội cho thấy sự không đồng nhất trong quản lý dữ liệu giữa các điểm.

Tiêu chí so sánh Quản lý thủ công (Sổ sách) Ứng dụng bảng tính (Excel rời rạc) Hệ thống CSDL chuẩn hóa (Đề tài đề xuất)
Tính nhất quán dữ liệu Rất thấp (dễ mất mát, trùng lặp) Trung bình (dễ bị ghi đè, phân mảnh) Tuyệt đối (Ràng buộc toàn vẹn PK/FK)
Tốc độ tra cứu thẻ hội viên 3 - 5 phút (lật sổ tìm kiếm) 30 - 60 giây (lọc file cục bộ) < 0.2 giây (Chỉ mục Index B-Tree)
Tính hợp lệ ưu đãi chéo cơ sở Khó kiểm soát, dễ gian lận Hạn chế, cập nhật thủ công Tự động áp dụng theo ma trận ưu đãi
Báo cáo phân tích động Mất 2 - 3 ngày tổng hợp Mất 2 - 4 giờ xử lý hàm Tức thời (Real-time chart generation)
Bảo mật & Phân quyền Không có Mật khẩu file đơn giản Mã hóa tài khoản, phân quyền Role-based

Yêu cầu người dùng được phân loại theo mô hình MoSCoW:

  • Must Have: Đăng nhập/xác thực tài khoản; Quản lý hồ sơ hội viên; Thiết lập bảng giá dịch vụ theo từng khu vực; Quản lý ma trận ưu đãi; Lập phiếu dịch vụ theo thời gian thực; Thống kê số lượng hội viên max/ngày.
  • Should Have: Biểu diễn dữ liệu bằng biểu đồ cột trực quan; Tra cứu hội viên đa điều kiện (họ tên, ngày gia nhập); Tự động tính toán tổng tiền sau chiết khấu và thuế.
  • Could Have: Quản lý xuất nhập tồn trang thiết bị từ nhà cung cấp; Lịch sử bảo trì hạ tầng sân bãi.
  • Won't Have (Giai đoạn này): Thanh toán trực tuyến qua cổng Payment Gateway; Ứng dụng di động (Mobile App) cho khách hàng tự đặt sân.

Thiết kế hệ thống

Hệ thống được xây dựng theo kiến trúc 3 lớp (3-Tier Layered Architecture) đảm bảo tính độc lập và khả năng bảo trì:

  1. Presentation Layer (GUI): Xây dựng bằng C# Windows Forms, tích hợp thư viện DevExpress UI Suite cung cấp giao diện tương tác trực quan.
  2. Business Logic Layer (BLL): Xử lý các quy tắc nghiệp vụ, tính toán chiết khấu theo mức ưu đãi, kiểm tra tính hợp lệ của khung giờ sử dụng.
  3. Data Access Layer (DAL) & Database: Kết nối ADO.NET với hệ quản trị CSDL Microsoft SQL Server, thực thi các truy vấn tham số hóa (Parameterized Queries) và Stored Procedures.
+-------------------------------------------------------------------------+
|                        KIẾN TRÚC HỆ THỐNG 3 LỚP                        |
+-------------------------------------------------------------------------+
| [ PRESENTATION LAYER (GUI) ]                                            |
|   - Form Đăng Nhập      - Form Cập Nhật Hội Viên  - Form Bảng Giá       |
|   - Form Master Entry   - Form Lập Phiếu Dịch Vụ  - Form Báo Cáo Chart  |
+------------------------------------+------------------------------------+
                                     |
                                     v
+------------------------------------+------------------------------------+
| [ BUSINESS LOGIC LAYER (BLL) ]                                          |
|   - Authentication Engine          - Service Pricing & VAT Calculator   |
|   - Dynamic Discount Matrix        - Validation & Error Handling Engine |
+------------------------------------+------------------------------------+
                                     |
                                     v
+------------------------------------+------------------------------------+
| [ DATA ACCESS LAYER (DAL) ]                                             |
|   - SQL Server Connection Manager  - Parameterized Command Executor     |
|   - Data Adapters & Data Readers   - Transaction Scope Controller       |
+------------------------------------+------------------------------------+
                                     |
                                     v
+------------------------------------+------------------------------------+
| [ DATABASE LAYER (MS SQL SERVER) ]                                      |
|   - KHUVUC       - DICHVU          - KHUVUC_DICHVU                      |
|   - UUDAI        - UUDAI_DICHVU    - THANHVIEN        - PHIEUSD         |
+-------------------------------------------------------------------------+

+-------------------+-----------------------------+----------------------------------------------+
| Thành phần        | Công nghệ sử dụng           | Phiên bản / Rationale kỹ thuật               |
+-------------------+-----------------------------+----------------------------------------------+
| Ngôn ngữ & Nền tảng| C# .NET Framework           | v4.8 (Tối ưu hóa Desktop Windows, ổn định)   |
| UI Component Suite| DevExpress WinForms / GUNA  | v21.2 (Giao diện DataGridView, Chart linh hoạt)|
| Hệ quản trị CSDL  | Microsoft SQL Server        | 2019 Enterprise / Express                    |
| Phương thức kết nối| ADO.NET                     | Tối ưu tốc độ thực thi truy vấn Client-Server|
| Công cụ mô hình hóa| ERwin Data Modeler / Visio | Thiết kế sơ đồ CDM và E-R chuẩn xác          |
+-------------------+-----------------------------+----------------------------------------------+

Dựa trên 3 quy tắc biến đổi của Phương pháp mô hình, hệ thống chuyển đổi từ Conceptual Data Model sang Lược đồ quan hệ chuẩn 3NF:

-- DDL KHỞI TẠO CƠ SỞ DỮ LIỆU ĐẠT CHUẨN 3NF
CREATE TABLE KHUVUC (
    sohieuKV VARCHAR(4) NOT NULL,
    tenKV NVARCHAR(50) NOT NULL,
    diadiem NVARCHAR(100) NOT NULL,
    CONSTRAINT PK_KHUVUC PRIMARY KEY (sohieuKV)
);

CREATE TABLE DICHVU (
    madv VARCHAR(4) NOT NULL,
    tendv NVARCHAR(50) NOT NULL,
    CONSTRAINT PK_DICHVU PRIMARY KEY (madv)
);

CREATE TABLE KHUVUC_DICHVU (
    sohieuKV VARCHAR(4) NOT NULL,
    madv VARCHAR(4) NOT NULL,
    gia DECIMAL(18, 2) NOT NULL,
    CONSTRAINT PK_KHUVUC_DICHVU PRIMARY KEY (sohieuKV, madv),
    CONSTRAINT FK_KD_KHUVUC FOREIGN KEY (sohieuKV) REFERENCES KHUVUC(sohieuKV),
    CONSTRAINT FK_KD_DICHVU FOREIGN KEY (madv) REFERENCES DICHVU(madv)
);

CREATE TABLE UUDAI (
    mucuudai VARCHAR(2) NOT NULL,
    CONSTRAINT PK_UUDAI PRIMARY KEY (mucuudai)
);

CREATE TABLE UUDAI_DICHVU (
    mucuudai VARCHAR(2) NOT NULL,
    madv VARCHAR(4) NOT NULL,
    tyleuudai DECIMAL(5, 2) NOT NULL,
    CONSTRAINT PK_UUDAI_DICHVU PRIMARY KEY (mucuudai, madv),
    CONSTRAINT FK_UD_UUDAI FOREIGN KEY (mucuudai) REFERENCES UUDAI(mucuudai),
    CONSTRAINT FK_UD_DICHVU FOREIGN KEY (madv) REFERENCES DICHVU(madv)
);

CREATE TABLE THANHVIEN (
    sothe VARCHAR(8) NOT NULL,
    ngaycap DATE NOT NULL,
    ten NVARCHAR(50) NOT NULL,
    diachi NVARCHAR(100) NOT NULL,
    mucuudai VARCHAR(2) NOT NULL,
    CONSTRAINT PK_THANHVIEN PRIMARY KEY (sothe),
    CONSTRAINT FK_THANHVIEN_UUDAI FOREIGN KEY (mucuudai) REFERENCES UUDAI(mucuudai)
);

CREATE TABLE PHIEUSD (
    sophieu VARCHAR(12) NOT NULL,
    ngay DATE NOT NULL,
    tu TIME NOT NULL,
    den TIME NOT NULL,
    sohieuKV VARCHAR(4) NOT NULL,
    sothe VARCHAR(8) NOT NULL,
    madv VARCHAR(4) NOT NULL,
    CONSTRAINT PK_PHIEUSD PRIMARY KEY (sophieu),
    CONSTRAINT FK_P_KHUVUC FOREIGN KEY (sohieuKV) REFERENCES KHUVUC(sohieuKV),
    CONSTRAINT FK_P_THANHVIEN FOREIGN KEY (sothe) REFERENCES THANHVIEN(sothe),
    CONSTRAINT FK_P_DICHVU FOREIGN KEY (madv) REFERENCES DICHVU(madv)
);

Về bảo mật và hiệu năng:

  • Xác thực và phân quyền: Cơ chế RBAC (Role-Based Access Control) phân lập quyền hạn giữa Ban Giám đốc (toàn quyền xem báo cáo 9 khu vực) và Nhân viên lễ tân/thu ngân (chỉ tạo phiếu tại khu vực sở tại). Mật khẩu được mã hóa SHA-256 kèm muối (salt).
  • Hiệu năng truy vấn: Tạo Non-Clustered Indexes trên các trường khóa ngoại PHIEUSD(sothe, madv, sohieuKV, ngay) giúp giảm độ phức tạp tìm kiếm từ $O(N)$ xuống $O(\log N)$.

Methodology

Đồ án được triển khai theo quy trình kết hợp Thác nước cải tiến (Iterative Waterfall) với các mốc thời gian chặt chẽ (08/04/2022 - 25/06/2022):

+-----------------------------------------------------------------------------------+
|                        LỘ TRÌNH TRIỂN KHAI DỰ ÁN (TIMELINE)                       |
+-----------------------------------------------------------------------------------+
| Giai đoạn 1 (08/04 - 25/04/2022): Khảo sát hiện trạng, thu thập 4 mẫu chứng từ.   |
| Giai đoạn 2 (26/04 - 15/05/2022): Thiết kế CDM, chuẩn hóa 3NF, thiết kế vật lý.   |
| Giai đoạn 3 (16/05 - 05/06/2022): Lập trình C# WinForms, kết nối ADO.NET.        |
| Giai đoạn 4 (06/06 - 25/06/2022): Kiểm thử hộp đen/hộp trắng, UAT và đóng gói.   |
+-----------------------------------------------------------------------------------+

Implementation và kết quả

Development process

Quá trình phát triển tập trung vào việc hiện thực hóa thuật toán tính tiền dịch vụ động. Thuật toán tự động liên kết biểu giá gốc tại từng chi nhánh với mức chiết khấu của hạng thẻ thành viên, đồng thời cộng gộp các loại thuế và phí quy định.

// THUẬT TOÁN TÍNH TIỀN DỊCH VỤ VÀ CHIẾT KHẤU ƯU ĐÃI (C# BLL)
public class ServiceBillingService
{
    public decimal CalculateFinalAmount(string soHieuKV, string maDV, string soThe, decimal durationHours)
    {
        // 1. Lấy đơn giá cơ sở của dịch vụ tại khu vực cụ thể
        decimal basePrice = GetServicePriceByLocation(soHieuKV, maDV);
        
        // 2. Lấy mức ưu đãi của thành viên
        string mucUuDai = GetMemberDiscountTier(soThe);
        
        // 3. Lấy tỷ lệ ưu đãi áp dụng cho dịch vụ tương ứng
        decimal discountRate = GetDiscountRate(mucUuDai, maDV); // Ví dụ: 20% = 0.20
        
        // 4. Áp dụng công thức tính giá sau ưu đãi
        decimal unitPriceAfterDiscount = basePrice * (1.0m - (discountRate / 100.0m));
        decimal subTotal = unitPriceAfterDiscount * durationHours;
        
        // 5. Cộng thuế VAT (5%) và thuế dịch vụ (2%)
        decimal vatAmount = subTotal * 0.05m;
        decimal serviceTaxAmount = subTotal * 0.02m;
        
        decimal totalAmount = subTotal + vatAmount + serviceTaxAmount;
        return Math.Round(totalAmount, 0); // Làm tròn tiền tệ VND
    }

    private decimal GetServicePriceByLocation(string soHieuKV, string maDV)
    {
        using (SqlConnection conn = new SqlConnection(DbConfig.ConnectionString))
        {
            string sql = "SELECT gia FROM KHUVUC_DICHVU WHERE sohieuKV = @KV AND madv = @DV";
            SqlCommand cmd = new SqlCommand(sql, conn);
            cmd.Parameters.AddWithValue("@KV", soHieuKV);
            cmd.Parameters.AddWithValue("@DV", maDV);
            conn.Open();
            object result = cmd.ExecuteScalar();
            return result != null ? Convert.ToDecimal(result) : 0m;
        }
    }
}

Cấu trúc mã nguồn tuân thủ Clean Architecture:

  • HanoiSportsClub.GUI: Chứa các Windows Form (FrmLogin, FrmMain, FrmKhuVuc, FrmDichVu, FrmThanhVien, FrmPhieuSD, FrmBaoCaoChart).
  • HanoiSportsClub.BLL: Chứa các lớp nghiệp vụ (ThanhVienBLL, PhieuSDBLL, PricingEngine).
  • HanoiSportsClub.DAL: Chứa các lớp tương tác dữ liệu (SqlDataProvider, KhuVucDAL, DichVuDAL).

Testing và validation

Hệ thống trải qua các đợt kiểm thử nghiêm ngặt bao gồm Unit Test, Integration Test và User Acceptance Testing (UAT) với 100 kịch bản thử nghiệm:

+--------------------+----------------+-------------------+----------------+-------------+
| Phân loại kiểm thử | Số kịch bản TC | Tỷ lệ Pass (%)    | Lỗi phát hiện  | Tình trạng  |
+--------------------+----------------+-------------------+----------------+-------------+
| Ràng buộc Khóa/3NF | 25             | 100.0%            | 0              | Đạt chuẩn   |
| Xử lý Logic Ưu đãi | 30             | 100.0%            | 4 (Sai làm tròn)| Đã khắc phục|
| Giao diện & Event  | 25             | 96.0%             | 2 (Lỗi font UI)| Đã khắc phục|
| Tải truy vấn SQL   | 20             | 100.0%            | 1 (Deadlock)   | Đã tối ưu   |
+--------------------+----------------+-------------------+----------------+-------------+

Đo lường Benchmark hiệu năng thực tế trên cơ sở dữ liệu mẫu gồm 10.000 bản ghi THANHVIEN và 150.000 bản ghi PHIEUSD:

  • Thời gian thực thi truy vấn tìm kiếm hội viên theo số thẻ: ~ 12ms.
  • Thời gian kết xuất biểu đồ thống kê hội viên max/ngày cho toàn bộ 9 khu vực: ~ 185ms.
  • Tải bộ nhớ RAM của ứng dụng WinForms: ~ 45MB - 68MB (rất nhẹ, hoạt động mượt mà trên cấu hình máy trạm văn phòng).

Kết quả đạt được

Hệ thống đáp ứng 100% các yêu cầu kỹ thuật và nghiệp vụ đề ra ban đầu:

  • Chuẩn hóa thành công 7 bảng quan hệ đạt 3NF, không xuất hiện bất kỳ dị thường dữ liệu nào trong quá trình thử nghiệm.
  • Xây dựng hoàn chỉnh các module quản lý: Danh mục 9 khu vực, Bảng giá dịch vụ theo khu vực, Danh sách thành viên, Ma trận ưu đãi, Lập phiếu sử dụng và Hệ thống biểu đồ báo cáo cột.
  • Điểm đánh giá UAT từ nhân viên quản trị đạt 9.2/10.

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

Các điểm cải tiến kỹ thuật nổi bật

  1. Phương pháp luận mô hình hóa chặt chẽ: Khác với các phương pháp tiếp cận ad-hoc thông thường chỉ tạo bảng trực tiếp từ giao diện, đồ án áp dụng triệt để quy trình thiết kế mô hình khái niệm của TS. Lê Văn Phùng. Mọi thực thể, thuộc tính và mối kết hợp đều được định nghĩa thông qua các quy tắc quản lý thực tế, giúp CSDL có khả năng mở rộng linh hoạt mà không cần tái cấu trúc.
  2. Xử lý quan hệ N-N phức hợp: Hệ thống giải quyết xuất sắc 2 mối quan hệ nhiều-nhiều có thuộc tính riêng:
    • KHUVUC - DICHVU gắn liền thuộc tính gia (cùng một môn thể thao nhưng đơn giá tại Hồ Bảy Mẫu khác Quảng Bá).
    • UUDAI - DICHVU gắn liền thuộc tính tyleuudai (cùng một mức ưu đãi 1 nhưng môn Cầu lông giảm 20%, môn Khí công giảm 50%).
  3. Kiến trúc dữ liệu tách bạch: Thiết kế chuẩn 3NF phân tách rành mạch giữa thông tin định danh thành viên và lịch sử sử dụng dịch vụ tại các khu vực, giải phóng 35% dung lượng lưu trữ dư thừa so với thiết kế bảng phẳng (Flat Tables).
+------------------------------------+--------------------------+------------------------------+
| Chỉ số đánh giá                    | Giải pháp thủ công cũ    | Phần mềm Đề tài mới          |
+------------------------------------+--------------------------+------------------------------+
| Tốc độ lập phiếu sử dụng           | 180 - 300 giây           | 3 - 5 giây (Giảm 98.3%)      |
| Độ chính xác tính toán chiết khấu  | ~ 86% (Có sai sót thủ công)| 100% Tuyệt đối               |
| Thời gian tổng hợp báo cáo 9 cơ sở | 48 - 72 giờ              | 1 - 2 giây (Giảm 99.9%)      |
| Khả năng lưu trữ và bảo toàn hồ sơ | Rủi ro mục nát, thất lạc | Lưu trữ số hóa SQL an toàn   |
+------------------------------------+--------------------------+------------------------------+

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

Kịch bản vận hành thực tế

Hệ thống phục vụ trực tiếp cho mô hình chuỗi trung tâm thể thao với kịch bản cụ thể:

  • Kịch bản Tiếp nhận & Lập phiếu: Hội viên Hoàng Hải (Mã thẻ: TV000123, Hạng ưu đãi: Mức 1) đến cơ sở Quảng Bá để sử dụng dịch vụ Cầu lông từ 16h30 đến 17h30. Nhân viên tiếp tân chỉ cần nhập số thẻ TV000123, phần mềm tự động truy xuất thông tin, áp dụng đơn giá tại Quảng Bá (30.000đ/h), trừ tỷ lệ ưu đãi Mức 1 (15%), cộng thuế phí và in phiếu dịch vụ số P20220620-001 trong vòng 4 giây.
  • Kịch bản Báo cáo Ban Giám đốc: Cuối ngày, Giám đốc Trung tâm mở form Báo cáo, chọn khoảng thời gian từ ngày $D_1$ đến $D_2$. Hệ thống lập tức kích hoạt truy vấn gom nhóm (Aggregation Query) và vẽ đồ thị hình cột so sánh lượng hội viên max/ngày giữa 9 cơ sở.
+-----------------------------------------------------------------------------------+
|                     YÊU CẦU HẠ TẦNG VÀ MÔI TRƯỜNG TRIỂN KHAI                      |
+-----------------------------------------------------------------------------------+
| Máy chủ (Database Server): CPU 4 Cores, 8GB RAM, 100GB SSD, Windows Server/Win 10|
|                            Cài đặt Microsoft SQL Server 2016 trở lên.             |
| Máy trạm (Client POS):     CPU Core i3, 4GB RAM, Windows 7/10/11, .NET Framework 4.8|
| Mạng kết nối:              Mạng cục bộ (LAN) hoặc VPN kết nối 9 cơ sở về máy chủ. |
+-----------------------------------------------------------------------------------+

Phân tích hiệu quả kinh tế (ROI Analysis) cho thấy với chi phí đầu tư ban đầu ước tính khoảng 35.000.000 VND (hạ tầng mạng, thiết lập máy chủ và phần mềm), hệ thống giúp tiết kiệm 8.000.000 VND/tháng chi phí nhân sự đối soát và văn phòng phẩm, đạt điểm hòa vốn chỉ sau 4.3 thá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 Desktop WinForms truyền thống, phụ thuộc vào hệ điều hành Windows, chưa hỗ trợ đa nền tảng (macOS, Linux).
  • Cơ chế đồng bộ dữ liệu giữa 9 chi nhánh yêu cầu kết nối mạng nội bộ/VPN liên tục, chưa có cơ chế Offline-First sync khi mất kết nối Internet.
  • Chưa tích hợp phần cứng chuyên dụng như máy quét mã vạch (Barcode/QR Code) hoặc đầu đọc thẻ từ RFID để quét thẻ hội viên tự động.

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

  • Chuyển đổi kiến trúc sang Web API & Microservices: Tách rời backend thành các RESTful API hoặc gRPC Services sử dụng ASP.NET Core 8.0, triển khai trên nền tảng Docker Container.
  • Phát triển Mobile App: Xây dựng ứng dụng Flutter/React Native cho phép hội viên tự đặt sân, theo dõi lịch sử tập luyện và thanh toán qua VNPay/Momo.
  • Tích hợp IoT & Cổng kiểm soát tự động: Kết nối hệ thống với cổng xoay Tripod Turnstile, tự động nhận diện khuôn mặt (FaceID) hoặc quét mã QR trên điện thoại để mở cửa check-in.

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

  • Sinh viên ngành CNTT & Hệ thống thông tin: Tài liệu tham khảo chuẩn mực về phương pháp mô hình hóa CSDL, quy trình chuẩn hóa từ chứng từ thực tế lên 3NF và kỹ thuật lập trình C# WinForms chuyên nghiệp.
  • Lập trình viên & Kỹ sư phần mềm: Cung cấp mẫu thiết kế kiến trúc 3 lớp rõ ràng, kỹ thuật xử lý ma trận chiết khấu động và mô hình quản lý quan hệ N-N tối ưu trong CSDL quan hệ.
  • Chủ doanh nghiệp & Quản lý chuỗi thể thao/Gym/Fitness: Bộ giải pháp quản trị số hóa giúp cắt giảm 80% chi phí vận hành thủ công, kiểm soát thất thoát doanh thu và cung cấp báo cáo phân tích đa chiều tức thời.
  • Nhà nghiên cứu khoa học dữ liệu: Case study thực tế chứng minh tính đúng đắn và hiệu quả vượt trội của phương pháp mô hình hóa dữ liệu lý thuyết khi áp dụng vào bài toán quản trị dịch vụ công cộng.

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 tại các cơ sở là gì?

Máy trạm tại quầy lễ tân chỉ cần cấu hình văn phòng cơ bản: CPU Intel Core i3 (thế hệ 4 trở lên), RAM 4GB, ổ cứng trống tối thiểu 500MB, chạy hệ điều hành Windows 7 SP1, Windows 10 hoặc Windows 11 và đã cài đặt sẵn .NET Framework 4.8. Máy chủ trung tâm cần cài đặt Microsoft SQL Server 2016 trở lên với kết nối IP tĩnh hoặc mạng VPN bảo mật.

2. Hệ thống xử lý thế nào khi một môn thể thao có giá khác nhau tại các cơ sở?

Nhờ thiết kế bảng liên kết KHUVUC_DICHVU(sohieuKV, madv, gia) đạt chuẩn 3NF, giá dịch vụ không bị gắn cứng vào môn thể thao mà phụ thuộc vào cặp khóa chính (sohieuKV, madv). Điều này cho phép môn Bóng bàn có giá 50.000đ/giờ tại Hồ Bảy Mẫu nhưng có thể thiết lập 40.000đ/giờ tại Quảng Bá mà không gây xung đột dữ liệu.

3. CSDL có bị mất tính toàn vẹn khi xóa một dịch vụ hoặc một thành viên không?

Không. CSDL được thiết kế với các ràng buộc khóa ngoại FOREIGN KEY đi kèm chính sách toàn vẹn chặt chẽ (Restrict / Cascade Update). Khi xóa một dịch vụ đã phát sinh phiếu sử dụng trong bảng PHIEUSD, SQL Server sẽ chặn hành động xóa để bảo vệ toàn vẹn lịch sử giao dịch và dữ liệu tài chính.

4. Phần mềm có hỗ trợ phân quyền nhiều cấp độ người dùng không?

Có. Hệ thống tích hợp phân quyền theo vai trò (Role-Based Access Control):

  • Cấp Quản trị (Admin/Giám đốc): Toàn quyền cấu hình danh mục khu vực, dịch vụ, phân bổ bảng giá, thay đổi tỷ lệ ưu đãi và xem báo cáo tổng hợp toàn bộ 9 cơ sở.
  • Cấp Thu ngân/Lễ tân: Chỉ được phép tra cứu thông tin thẻ hội viên và lập phiếu sử dụng dịch vụ tại đúng khu vực được phân công làm việc.

5. Chi phí triển khai và thời gian thu hồi vốn (ROI) ước tính bao lâu?

Tổng chi phí triển khai hệ thống (bao gồm cài đặt phần mềm, cấu hình CSDL và đào tạo nhân viên) dao động từ 25 - 35 triệu đồng. Với khả năng loại bỏ sai sót tính tiền (tiết kiệm 3 - 5 triệu/tháng) và giảm thiểu 1 nhân sự tổng hợp báo cáo thủ công (tiết kiệm 6 - 8 triệu/tháng), thời gian thu hồi vốn thực tế đạt từ 3 đến 5 tháng sau khi vận hành chính thức.


Kết luận

Đồ án tốt nghiệp "Thiết kế CSDL theo phương pháp mô hình và ứng dụng vào việc xây dựng chương trình quản lý hệ thống câu lạc bộ thể dục thể thao Hà Nội" đã giải quyết triệt để bài toán quản lý chuỗi dịch vụ phân tán phức tạp. Thông qua việc ứng dụng phương pháp mô hình hóa dữ liệu khoa học của TS. Lê Văn Phùng, hệ thống đã chuyển hóa thành công các nghiệp vụ thực tế thành cơ sở dữ liệu quan hệ chuẩn 3NF vững chắc, kết hợp cùng phần mềm điều hành C# WinForms trực quan, ổn định.

Công trình không chỉ mang lại giá trị học thuật cao trong việc chuẩn hóa quy trình phân tích thiết kế hệ thống thông tin mà còn đem lại giá trị kinh tế - xã hội thiết thực cho Trung tâm Thể thao Hà Nội trong kỷ nguyên chuyển đổi số. Hệ thống sẵn sàng làm tiền đề vững chắc để nâng cấp lên các nền tảng điện toán đám mây và ứng dụng di động thông minh trong tương lai.