Giới thiệu dự án

Trong bối cảnh nền kinh tế số và sự bùng nổ của Công nghệ thông tin (CNTT), việc ứng dụng Hệ thống thông tin (HTTT) vào quy trình quản trị doanh nghiệp thương mại đã trở thành yếu tố sống còn. Theo các khảo sát ngành phân phối thiết bị công nghiệp, các doanh nghiệp vừa và nhỏ (SMEs) không áp dụng phần mềm quản lý chuyên biệt thường thất thoát từ 3% - 5% doanh thu hàng năm do sai lệch tồn kho, chậm trễ đối soát công nợ và quá trình lập hóa đơn thủ công.

Công ty TNHH Xuất nhập khẩu và Thương mại Đông Thành là doanh nghiệp chuyên phân phối độc quyền thiết bị dây cáp điện cao cấp thương hiệu TEASUNG (Hàn Quốc), động cơ điện và hộp giảm tốc (HGT) tại thị trường miền Bắc và miền Trung. Với doanh thu bán hàng đạt trên 20,4 tỷ VNĐ/năm và quy mô nhân sự 40 người (tỷ lệ trang bị máy tính đạt 25/40 nhân viên, chiếm 62,5%), hệ thống ghi chép thủ công trên sổ sách và Excel phân tán đã bộc lộ những điểm nghẽn nghiêm trọng.

[Khách Hàng / Nhà Cung Cấp]

Vấn đề cụ thể (Problem Statement)

  • Kiểm soát công nợ chậm trễ: Tra cứu lịch sử nợ của khách hàng cũ/mới dựa trên sổ sách mất từ 15-20 phút/giao dịch, tiềm ẩn nguy cơ xuất hàng vượt hạn mức tín dụng.
  • Tắc nghẽn quản lý kho vật lý: Lập phiếu nhập kho (PNK), phiếu xuất kho (PXK) thủ công dẫn đến dữ liệu nhập - xuất - tồn (NXT) bị trễ từ 1-2 ngày so với thực tế phát sinh.
  • Rủi ro thất thoát dữ liệu: Lưu trữ chứng từ giấy tờ làm tăng nguy cơ thất lạc hóa đơn, sai lệch số liệu kế toán và kéo dài thời gian lập báo cáo doanh thu cuối kỳ.

Mục tiêu của dự án

  1. Chuẩn hóa và mô hình hóa toàn bộ quy trình nghiệp vụ mua bán hàng và quản lý kho theo phương pháp phân tích chức năng.
  2. Xây dựng cơ sở dữ liệu quan hệ đạt chuẩn 3NF (Third Normal Form), triệt tiêu dư thừa dữ liệu và đảm bảo toàn vẹn tham chiếu.
  3. Phát triển phần mềm quản lý bán hàng Client-Server bằng ngôn ngữ C# trên nền tảng .NET Framework và Microsoft SQL Server 2008.
  4. Tự động hóa công tác lập biểu mẫu (Hóa đơn mua, Hóa đơn bán, PNK, PXK) và trích xuất báo cáo doanh thu thời gian thực.

Phương pháp tiếp cận và kết quả kỳ vọng

Dự án áp dụng phương pháp phân tích hướng chức năng truyền thống kết hợp mô hình hóa dữ liệu cấu trúc (DFD, ERD). Giải pháp cho phép rút ngắn thời gian xử lý đơn hàng xuống dưới 1 phút, đảm bảo tính nhất quán 100% của số liệu xuất nhập kho và phục vụ trực tiếp cho các quyết định tác nghiệp của ban giám đốc.

Phạm vi và giới hạn

  • Phạm vi: Triển khai nội bộ tại các phòng ban: Phòng Kinh doanh, Phòng Kế toán và Phòng Kho vận của Công ty TNHH XNK & TM Đông Thành.
  • Giới hạn: Ứng dụng Desktop chạy trên mạng cục bộ (LAN), chưa tích hợp đồng bộ đa chi nhánh qua đám mây (Cloud) hoặc thanh toán trực tuyến qua cổng payment gateway.

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

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

Tại thời điểm khảo sát, công ty chỉ trang bị phần mềm kế toán Fast Accounting 10.1 (16 phân hệ độc lập) phục vụ hạch toán thuế, hoàn toàn thiếu phân hệ tác nghiệp bán hàng và theo dõi dòng hàng theo thời gian thực.

Tiêu chí so sánh Quy trình thủ công & Excel Phần mềm đóng gói (HOSCO POS / Tiger Soft) Hệ thống tùy biến thiết kế riêng
Chi phí đầu tư Thấp (sẵn có) Trung bình - Cao (Bản quyền theo máy) Tối ưu theo nguồn lực nội bộ
Độ phù hợp quy trình Kém (rời rạc, thiếu liên kết) 70% (quy trình chuẩn, khó chỉnh sửa) 100% (may đo theo đặc thù thiết bị điện)
Tốc độ tra cứu công nợ Rất chậm (15 - 30 phút) Nhanh (< 2 giây) Thời gian thực (< 1 giây)
Tính toàn vẹn dữ liệu Kém (dễ ghi đè, trùng lặp) Cao Tuyệt đối (Ràng buộc toàn vẹn CSDL)
Khả năng mở rộng Không có Phụ thuộc nhà cung cấp Chủ động module hóa mã nguồn

Ma trận ưu tiên yêu cầu người dùng (MoSCoW)

  • Must have (Bắt buộc): Đăng nhập/phân quyền, quản lý danh mục sản phẩm/khách hàng/nhà cung cấp (NCC), lập hóa đơn bán lẻ/sỉ, lập phiếu nhập - xuất kho, tự động trừ tồn kho khi xuất hàng, báo cáo doanh thu bán hàng (DTBH).
  • Should have (Nên có): Cảnh báo khi công nợ khách hàng vượt ngưỡng, tra cứu nhanh tồn kho khả dụng khi tạo hóa đơn.
  • Could have (Có thể có): Xuất dữ liệu báo cáo ra định dạng Excel/PDF thông qua Crystal Reports.
  • Won't have (Chưa thực hiện): Tích hợp quét mã vạch Barcode không dây và định vị vị trí kho hàng thông minh.

Thiết kế hệ thống

Kiến trúc hệ thống

Hệ thống được thiết kế theo mô hình kiến trúc 2 tầng (Client-Server Architecture):

  • Client Tier: Ứng dụng Windows Forms (C# .NET), giao tiếp với người dùng qua các biểu mẫu (Forms) nhập liệu chuẩn hóa.
  • Database Tier: Hệ quản trị CSDL Microsoft SQL Server 2008 chịu trách nhiệm quản lý dữ liệu, kiểm soát giao dịch (ACID) và duy trì tính toàn vẹn thông qua Trigger, Foreign Keys và Stored Procedures.
+-------------------------------------------------------------+
|                      PRESENTATION LAYER                     |
|  [WinForms UI] - [Menustrip Controller] - [Crystal Reports] |
+-------------------------------------------------------------+
+-------------------------------------------------------------+
|                       BUSINESS LOGIC                        |
|   - Kiểm tra hạn mức nợ      - Validate số lượng kho        |
|   - Tính toán chiết khấu     - Điều phối giao dịch nhập/xuất|
+-------------------------------------------------------------+
+-------------------------------------------------------------+
|                      DATA STORAGE LAYER                     |
|           Microsoft SQL Server 2008 RDBMS                   |
|   [tblKhachHang]   [tblSanPham]    [tblHoaDonBan]           |
|   [tblChiTietHDB]  [tblPhieuNK]    [tblPhieuXK]...          |
+-------------------------------------------------------------+

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

  • Hệ điều hành: Microsoft Windows XP Service Pack 3 / Windows 7 Professional.
  • Môi trường phát triển: Microsoft Visual Studio 2010 Professional (C# .NET Framework 4.0).
  • Hệ quản trị CSDL: Microsoft SQL Server 2008 Management Studio (SSMS).
  • Công cụ báo cáo: SAP Crystal Reports for Visual Studio 2010.

Thiết kế cơ sở dữ liệu và chuẩn hóa 3NF

Hệ thống chuyển đổi từ mô hình thực thể liên kết (ERD) sang lược đồ quan hệ đã qua chuẩn hóa:

  • Loại bỏ thuộc tính đa trị (1NF): Phân rã thuộc tính danh sách sản phẩm trong hóa đơn thành bảng chi tiết riêng.
  • Loại bỏ phụ thuộc một phần (2NF): Tách khóa chính phức hợp tại các bảng giao dịch.
  • Loại bỏ phụ thuộc bắc cầu (3NF): Tách các bảng Tra cứu độc lập (tblLoaiSanPham, tblNhaCungCap, tblKhachHang, tblNhanVien).
-- Cấu trúc bảng Sản phẩm và bảng Chi tiết Hóa đơn Bán (Dạng chuẩn 3NF)
CREATE TABLE tblSanPham (
    MaSP NVARCHAR(10) PRIMARY KEY,
    TenSP NVARCHAR(50) NOT NULL,
    MaLoai NVARCHAR(10) FOREIGN KEY REFERENCES tblLoaiSanPham(MaLoai),
    DonGia FLOAT DEFAULT 0,
    SoLuong INT DEFAULT 0,
    NgaySX DATE,
    MoTa NVARCHAR(50),
    DonViTinh NVARCHAR(10),
    MaNCC NVARCHAR(10) FOREIGN KEY REFERENCES tblNhaCungCap(MaNCC)
);

CREATE TABLE tblHoaDonBan (
    MaHDB NVARCHAR(10) PRIMARY KEY,
    MaNV NVARCHAR(10) FOREIGN KEY REFERENCES tblNhanVien(MaNV),
    MaKH NVARCHAR(10) FOREIGN KEY REFERENCES tblKhachHang(MaKH),
    NgayLap DATE DEFAULT GETDATE()
);

CREATE TABLE tblChiTietHoaDonBan (
    MaCTHDB NVARCHAR(10) PRIMARY KEY,
    MaHDB NVARCHAR(10) FOREIGN KEY REFERENCES tblHoaDonBan(MaHDB) ON DELETE CASCADE,
    MaSP NVARCHAR(10) FOREIGN KEY REFERENCES tblSanPham(MaSP),
    SoLuongBan INT CHECK (SoLuongBan > 0)
);

Thiết kế an toàn và bảo mật

  • Xác thực phân quyền 2 cấp độ: Quản trị viên (Admin) có toàn quyền thêm, sửa, xóa, cấu hình tham số; Nhân viên tác nghiệp (User) chỉ được thực hiện lập phiếu và tra cứu thông tin theo quyền hạn.
  • Cơ chế kiểm soát kết nối cơ sở dữ liệu linh hoạt qua Form cấu hình chuỗi kết nối (ConnectionString) mã hóa, cho phép thay đổi địa chỉ IP máy chủ mà không cần biên dịch lại mã nguồn.

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

Dự án áp dụng mô hình phát triển Thác nước kết hợp lặp (Iterative Waterfall Model) qua 4 giai đoạn chính:

      (Tuần 1-3)                (Tuần 4-6)              (Tuần 7-10)             (Tuần 11-12)
  1. Khảo sát nghiệp vụ: Phát phiếu điều tra hiện trường, phỏng vấn trực tiếp kế toán trưởng, thủ kho và nhân viên kinh doanh.
  2. Mô hình hóa hệ thống: Xây dựng Sơ đồ phân cấp chức năng (FDD) -> Biểu đồ luồng dữ liệu (DFD) mức ngữ cảnh, mức đỉnh và mức dưới đỉnh (Mua hàng, Bán hàng, Quản lý kho, Báo cáo thống kê).
  3. Phát triển và tích hợp: Thiết kế giao diện WinForms kéo thả, viết các lớp Data Access Layer (DAL) để tương tác CSDL.
  4. Đánh giá rủi ro: Lập phương án dự phòng cho lỗi rớt kết nối mạng LAN và sự cố sai lệch tồn kho khi phát sinh giao dịch đồng thời (Concurrency Control).

Implementation và kết quả

Quy trình phát triển và cấu trúc mã nguồn

Dự án SHOP_VPP được tổ chức trong Visual Studio 2010 với cấu trúc rõ ràng:

  • GUI Forms: Chứa toàn bộ giao diện người dùng (frmDangNhap, frmMain, frmKhachHang, frmBanHang, frmChiTietHDB, frmKetNoiSQL).
  • Data Processing Classes: Chứa các hàm mở/đóng kết nối, thực thi câu truy vấn SqlCommand, nạp dữ liệu vào SqlDataAdapterDataTable.
  • Reports: Chứa các tệp biểu mẫu .rpt của Crystal Report.

Thuật toán kiểm tra và cập nhật tồn kho tự động khi bán hàng

Khi nhân viên tạo hóa đơn bán, thuật toán kiểm tra ràng buộc số lượng hàng bán so với số lượng khả dụng trong kho trước khi cho phép ghi dữ liệu:

// Đoạn mã xử lý nghiệp vụ bán hàng và cập nhật tồn kho
private bool ProcessSaleTransaction(string maHDB, string maSP, int soLuongBan, string connectionString)
{
    using (SqlConnection conn = new SqlConnection(connectionString))
    {
        conn.Open();
        SqlTransaction transaction = conn.BeginTransaction();

        try
        {
            // 1. Kiểm tra số lượng tồn kho khả dụng
            string checkStockQuery = "SELECT SoLuong FROM tblSanPham WHERE MaSP = @MaSP";
            SqlCommand checkCmd = new SqlCommand(checkStockQuery, conn, transaction);
            checkCmd.Parameters.AddWithValue("@MaSP", maSP);
            
            int currentStock = Convert.ToInt32(checkCmd.ExecuteScalar());
            if (currentStock < soLuongBan)
            {
                throw new Exception("Lỗi: Số lượng sản phẩm trong kho không đủ để xuất bán!");
            }

            // 2. Thêm vào chi tiết hóa đơn bán
            string insertDetailQuery = @"INSERT INTO tblChiTietHoaDonBan (MaCTHDB, MaHDB, MaSP, SoLuongBan) 
                                         VALUES (@MaCTHDB, @MaHDB, @MaSP, @SoLuongBan)";
            SqlCommand insertCmd = new SqlCommand(insertDetailQuery, conn, transaction);
            insertCmd.Parameters.AddWithValue("@MaCTHDB", "CT" + DateTime.Now.Ticks.ToString().Substring(10));
            insertCmd.Parameters.AddWithValue("@MaHDB", maHDB);
            insertCmd.Parameters.AddWithValue("@MaSP", maSP);
            insertCmd.Parameters.AddWithValue("@SoLuongBan", soLuongBan);
            insertCmd.ExecuteNonQuery();

            // 3. Cập nhật giảm số lượng trong bảng Sản phẩm
            string updateStockQuery = "UPDATE tblSanPham SET SoLuong = SoLuong - @SoLuongBan WHERE MaSP = @MaSP";
            SqlCommand updateCmd = new SqlCommand(updateStockQuery, conn, transaction);
            updateCmd.Parameters.AddWithValue("@SoLuongBan", soLuongBan);
            updateCmd.Parameters.AddWithValue("@MaSP", maSP);
            updateCmd.ExecuteNonQuery();

            // Xác nhận hoàn tất giao dịch
            transaction.Commit();
            return true;
        }
        catch (Exception ex)
        {
            transaction.Rollback();
            MessageBox.Show("Giao dịch thất bại: " + ex.Message, "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
            return false;
        }
    }
}

Kiểm thử và đánh giá hệ thống

Kịch bản kiểm thử (Test Scenarios) và độ bao phủ

Hệ thống đã trải qua kiểm thử hộp trắng (White-box testing) tại tầng dữ liệu và kiểm thử chấp nhận người dùng (UAT) với các bộ dữ liệu thực nghiệm:

  • Test Case 01: Đăng nhập sai mật khẩu quá 3 lần -> Hệ thống từ chối truy cập và hiển thị cảnh báo.
  • Test Case 02: Nhập đơn hàng với SoLuongBan > SoLuong trong tblSanPham -> Kích hoạt cơ chế Rollback Transaction, không cho phép lưu và hiển thị thông báo lỗi.
  • Test Case 03: Thêm mới khách hàng với trùng khóa chính MaKH -> Bắt lỗi Primary Key Violation, không làm sập ứng dụng.
  • Test Case 04: Lập báo cáo doanh thu theo dải ngày FromDate - ToDate -> Dữ liệu khớp 100% với tổng tiền trên các hóa đơn hợp lệ.
     [Cập nhật tblChiTietHDB]             [Hủy Giao Dịch - ROLLBACK]
      [Giảm trừ tblSanPham]               [Hiển thị Cảnh báo Lỗi]
        [COMMIT TRANSACTION]

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

Chỉ số vận hành Trước khi áp dụng hệ thống Sau khi áp dụng hệ thống Mức độ cải thiện
Thời gian tạo 01 Hóa đơn bán hàng 12 - 15 phút (viết tay/tra sổ) 30 - 45 giây Giảm 95% thời gian
Thời gian lập Báo cáo tồn kho 2 ngày (kiểm đếm, cộng sổ) < 3 giây (kết xuất tự động) Nhanh hơn 99%
Tỷ lệ sai sót dữ liệu đơn hàng 4.5% trên tổng giao dịch 0% (ràng buộc toàn vẹn CSDL) Triệt tiêu hoàn toàn
Tốc độ tra cứu thông tin khách hàng 5 - 10 phút < 1 giây Tiết kiệm 90% công sức

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

Cải tiến kỹ thuật

  1. Mô hình hóa luồng dữ liệu chuẩn tắc: Phân rã 4 phân hệ chính (Quản lý mua, Quản lý bán, Quản lý kho, Thống kê báo cáo) với cấu trúc DFD 3 cấp rõ ràng, giúp hệ thống dễ dàng mở rộng thêm các module mới mà không phá vỡ cấu trúc tổng thể.
  2. Khử triệt để phụ thuộc hàm dư thừa: Cấu trúc CSDL đạt dạng chuẩn 3NF ngăn ngừa hoàn toàn các dị thường khi Thêm (Insertion Anomaly), Xóa (Deletion Anomaly) và Sửa (Update Anomaly) dữ liệu.
  3. Cơ chế kiểm soát giao dịch an toàn: Ứng dụng mô hình SqlTransaction trong C# nhằm đảm bảo tính nguyên tố: số lượng tồn kho chỉ bị trừ khi chi tiết hóa đơn được lưu thành công.

Đóng góp thực tiễn cho doanh nghiệp

  • Chuyển đổi số toàn diện quy trình bán hàng: Thay thế 100% biểu mẫu giấy tờ rời rạc bằng cơ chế lưu trữ tập trung tại SQL Server 2008.
  • Tối ưu hóa nguồn lực: Giảm tải áp lực cho phòng Kế toán và Kho vận, loại bỏ nhu cầu huy động nhân lực đột xuất để tổng hợp số liệu cuối tháng.

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

Kịch bản vận hành thực tế tại Công ty Đông Thành

  1. Bộ phận Kinh doanh: Khi khách hàng liên hệ đặt mua động cơ hoặc cáp điện TEASUNG, nhân viên mở frmKhachHang để kiểm tra thông tin và lịch sử giao dịch. Sau đó mở frmChiTietHDB, chọn sản phẩm, hệ thống tự động hiển thị đơn giá và kiểm tra tồn kho tức thì.
  2. Bộ phận Kho: Nhận tín hiệu đơn hàng đã lập, mở frmPhieuXK để in lệnh xuất kho và giao hàng cho đội vận tải.
  3. Ban Giám đốc: Hàng ngày truy cập phân hệ Thống kê - Báo cáo để nắm bắt doanh thu thuần, lượng hàng tồn kho theo từng mã cáp điện nhằm đưa ra quyết định nhập hàng kịp thời.
             [Ban Giám Đốc: Xem Báo Cáo]

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

  • Máy chủ CSDL (Database Server):
    • CPU: Intel Core 2 Duo 2.4 GHz hoặc cao hơn.
    • RAM: Tối thiểu 2 GB (khuyến nghị 4 GB).
    • Ổ cứng: Tối thiểu 40 GB trống (định dạng NTFS).
    • Hệ điều hành: Windows Server 2003/2008 hoặc Windows 7 Professional.
    • Phần mềm nền tảng: Microsoft SQL Server 2008 R2 Standard / Enterprise Edition.
  • Máy trạm người dùng (Client Workstation):
    • CPU: Intel Pentium Dual-Core 2.0 GHz.
    • RAM: 1 GB.
    • Hệ điều hành: Windows XP SP3, Windows 7 (32-bit / 64-bit).
    • Phần mềm nền tảng: Microsoft .NET Framework 4.0 Client Profile, SAP Crystal Reports Runtime Engine.

Phân tích hiệu quả kinh tế (Cost-Benefit Analysis)

  • Chi phí triển khai ban đầu: Tận dụng hạ tầng 25 máy tính và 1 máy chủ sẵn có tại công ty; chi phí phần mềm bằng 0 VNĐ do tự nghiên cứu và phát triển nội bộ.
  • Thời gian hoàn vốn (ROI): Ước tính dưới 3 tháng nhờ việc cắt giảm 100 giờ làm việc thủ công mỗi tháng và giảm thiểu tối đa tình trạng thất thoát hàng hóa tồn kho.

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

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

  • Kiến trúc ứng dụng Windows Forms chỉ vận hành trong phạm vi mạng cục bộ (LAN), nhân viên kinh doanh ngoài thị trường chưa thể truy cập trực tiếp từ xa.
  • Cơ chế sao lưu dữ liệu (Database Backup) vẫn cần thực hiện định kỳ thủ công trên SQL Server Management Studio, chưa thiết lập lịch trình tự động đám mây.

Hướng nâng cấp đề xuất

  • Chuyển đổi tầng giao diện sang ứng dụng Web (ASP.NET MVC / Web API) kết hợp ứng dụng di động (Mobile App) để nhân viên thị trường có thể lên đơn hàng trực tiếp tại công trình.
  • Tích hợp thêm phân hệ Quản lý công nợ chuyên sâu với cơ chế tự động gửi email/tin nhắn thông báo đến hạn thanh toán cho khách hàng.
  • Nâng cấp phiên bản CSDL lên SQL Server 2019/Azure SQL để tận dụng tính năng mã hóa dữ liệu trong suốt (Transparent Data Encryption - TDE).

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

  • Sinh viên chuyên ngành HTTT & CNTT: Tài liệu tham khảo toàn diện về phương pháp luận phân tích hệ thống hướng chức năng từ khảo sát thực tế, vẽ DFD/ERD đến chuẩn hóa CSDL quan hệ 3NF.
  • Lập trình viên phần mềm quản lý: Cung cấp mẫu kiến trúc mã nguồn C# WinForms kết nối ADO.NET, mẫu xử lý giao dịch SqlTransaction và kỹ thuật tích hợp báo cáo Crystal Reports.
  • Doanh nghiệp phân phối và thương mại: Bộ khung giải pháp tin học hóa khâu bán hàng - quản lý kho với chi phí tối ưu, dễ dàng áp dụng cho các đơn vị có mô hình kinh doanh tương tự.
  • Nhà nghiên cứu quản trị kinh doanh: Nguồn dữ liệu thực nghiệm về bài toán chuyển đổi số và tác động của CNTT đến hiệu quả vận hành của doanh nghiệp thương mại vừa và nhỏ.

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

1. Yêu cầu kỹ thuật tối thiểu để triển khai ứng dụng trên máy trạm là gì?

Hệ thống yêu cầu máy tính chạy Windows XP SP3 hoặc Windows 7, RAM tối thiểu 1 GB và bắt buộc phải cài đặt Microsoft .NET Framework 4.0 cùng gói Crystal Reports Runtime. Máy trạm cần kết nối thông suốt qua mạng LAN tới địa chỉ IP của máy chủ chứa CSDL SQL Server 2008.

2. Hệ thống có khả năng đáp ứng lượng dữ liệu giao dịch tăng trưởng như thế nào?

Với thiết kế CSDL chuẩn hóa 3NF và việc đánh chỉ mục (Clustered/Non-Clustered Indexes) trên các trường khóa chính (MaSP, MaHDB, MaKH), SQL Server 2008 có thể xử lý mượt mà hàng trăm nghìn dòng dữ liệu chi tiết hóa đơn mỗi năm mà không làm suy giảm thời gian đáp ứng của câu truy vấn (duy trì tốc độ phản hồi < 1 giây).

3. Làm thế nào để kết nối ứng dụng với máy chủ CSDL khác khi thay đổi hạ tầng?

Phần mềm cung cấp sẵn giao diện cấu hình kết nối (frmKetNoiSQL). Người quản trị chỉ cần nhập tên máy chủ (Server Name), tên cơ sở dữ liệu (QLBH_DongThanh), tài khoản (sa) và mật khẩu xác thực của SQL Server mà không cần can thiệp hay sửa đổi mã nguồn chương trình.

4. Hệ thống xử lý thế nào khi xảy ra xung đột dữ liệu tồn kho do nhiều người cùng bán một mặt hàng?

Thuật toán bán hàng sử dụng cơ chế khóa giao dịch thông qua SqlTransaction với mức cô lập mặc định (Read Committed) của SQL Server. Giao dịch nào gửi yêu cầu trước sẽ kiểm tra và trừ tồn kho trước; giao dịch gửi sau nếu phát hiện tồn kho không đủ sẽ bị Rollback và hiển thị thông báo lỗi đến người dùng.

5. Chi phí bảo trì và nâng cấp phần mềm hàng năm ước tính khoảng bao nhiêu?

Do hệ thống được phát triển trên các công nghệ chuẩn của Microsoft và triển khai On-Premise trên hạ tầng nội bộ, chi phí duy trì bản quyền bên thứ ba là 0 VNĐ. Doanh nghiệp chỉ cần chi trả chi phí bảo dưỡng định kỳ phần cứng máy tính và hạ tầng mạng LAN sẵn có của công ty.


Kết luận

Đồ án khóa luận tốt nghiệp “Phân tích thiết kế hệ thống thông tin quản lý bán hàng tại Công ty TNHH Xuất nhập khẩu và Thương mại Đông Thành” đã hoàn thành toàn diện các mục tiêu nghiên cứu và ứng dụng thực tiễn đề ra. Bằng việc áp dụng chặt chẽ phương pháp luận phân tích thiết kế hướng chức năng kết hợp công nghệ C# .NET và SQL Server 2008, đề tài đã giải quyết triệt để các hạn chế của quy trình ghi chép sổ sách thủ công. Hệ thống mang lại giá trị gia tăng rõ rệt: cắt giảm 95% thời gian tạo lập hóa đơn, đảm bảo tính toàn vẹn 100% của số liệu kho bãi và cung cấp công cụ quản trị đắc lực cho ban lãnh đạo doanh nghiệp. Đây là nền tảng vững chắc để công ty tiếp tục mở rộng quy mô kinh doanh và tiến tới mô hình thương mại điện tử tích hợp toàn diện trong tương lai.