Giới thiệu dự án

Thương mại điện tử (E-commerce) theo mô hình B2C (Business-to-Consumer) đã định hình lại thói quen mua sắm toàn cầu, trong đó ngành bán lẻ xuất bản phẩm trực tuyến đóng vai trò tiên phong. Theo các báo cáo kinh tế số, các nền tảng thương mại trực tuyến giúp doanh nghiệp cắt giảm tới 30-40% chi phí vận hành cửa hàng vật lý, đồng thời mở rộng phạm vi tiếp cận khách hàng không giới hạn bởi ranh giới địa lý. Đồ án tốt nghiệp "Xây dựng website thương mại điện tử, áp dụng cho bán sách trực tuyến" (thực hiện bởi sinh viên Phạm Văn Mạnh, dưới sự hướng dẫn của TS. Nguyễn Trịnh Đông tại Trường Đại học Dân lập Hải Phòng) tập trung giải quyết bài toán chuyển đổi số toàn diện quy trình phân loại, lưu trữ, quản lý và phân phối xuất bản phẩm thông qua môi trường web.

+-----------------------------------------------------------------------+
|                       HỆ THỐNG THƯƠNG MẠI ĐIỆN TỬ                     |
|                                                                       |
|   +-------------------+   HTTP/HTTPS (ASCII)   +------------------+   |
|   |    Client Side    | <====================> |   Server Side    |   |
|   |  (Giao diện Web)  |                        | (ASP.NET Engine) |   |
|   +-------------------+                        +------------------+   |
|            |                                             |            |
|            v                                             v            |
|   [Khách hàng / Admin]                         [SQL Server Database]  |
|   - Duyệt danh mục DDC                         - Bảng SanPham / Loai  |
|   - Giỏ hàng & Thanh toán                      - Bảng KhachHang / Don |
+-----------------------------------------------------------------------+

Vấn đề thực tiễn và điểm nghẽn (Pain Points)

Các cửa hàng sách truyền thống đối mặt với những rào cản lớn về quản lý và trải nghiệm người dùng:

  • Tắc nghẽn tra cứu thông tin: Khách hàng mất trung bình 15-20 phút để tìm kiếm một cuốn sách chuyên ngành nếu không nắm rõ vị trí kệ sách hoặc chuẩn phân loại.
  • Quản lý tồn kho thủ công: Sự thiếu đồng bộ giữa dữ liệu bán hàng, số lượng sách thực tế và thông tin từ nhà xuất bản dẫn đến tình trạng sai lệch tồn kho lên tới 12-18%.
  • Hạn chế giao dịch và tương tác: Không gian trưng bày vật lý giới hạn số lượng đầu sách tiếp cận độc giả, thiếu cơ chế thống kê và đo lường hành vi tiêu dùng theo thời gian thực.

Mục tiêu dự án

  1. Chuẩn hóa dữ liệu sách: Ứng dụng các khung phân loại thư viện quốc tế và quốc gia (DDC - Dewey Decimal Classification, BBK, PTB) vào cấu trúc cơ sở dữ liệu số.
  2. Xây dựng kiến trúc phần mềm Client-Server vững chắc: Ứng dụng nền tảng ASP.NET kết hợp hệ quản trị cơ sở dữ liệu Microsoft SQL Server, đảm bảo khả năng mở rộng và chịu tải.
  3. Hiện thực hóa quy trình mua sắm tự động: Xây dựng module giỏ hàng (Shopping Cart), quản lý phiên làm việc (Session State), tìm kiếm đa tiêu chí và thanh toán trực tuyến linh hoạt.
  4. Phân quyền và bảo mật đa tầng: Thiết lập hệ thống phân quyền chi tiết cho 4 tác nhân: Khách hàng, Nhân viên, Quản trị hệ thống (Admin) và Lãnh đạo.

Giải pháp kỹ thuật và kết quả kỳ vọng

Dự án triển khai mô hình kiến trúc phân tầng trên nền tảng Microsoft .NET Framework, tối ưu hóa giao tiếp Client-Server thông qua cơ chế lọc truy vấn (Query String processing), giảm thiểu lưu lượng truyền tải trên đường truyền mạng. Kết quả kỳ vọng là một hệ thống web thương mại điện tử hoàn chỉnh, thời gian phản hồi truy vấn dưới 500ms đối với cơ sở dữ liệu trên 10.000 đầu sách, hỗ trợ xử lý giao dịch an toàn và tối ưu hóa trải nghiệm người dùng.


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

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

Khảo sát các giải pháp phân phối sách hiện nay cho thấy sự khác biệt rõ rệt giữa mô hình truyền thống và mô hình số hóa tùy biến:

Tiêu chí đánh giá Cửa hàng sách truyền thống CMS nguồn mở (WordPress/WooCommerce) Website chuyên biệt (ASP.NET + SQL Server)
Chi phí hạ tầng ban đầu Rất cao (Mặt bằng, nhân sự) Thấp (Mẫu dựng sẵn) Trung bình (Tối ưu theo tài nguyên)
Tốc độ tra cứu chuyên mục Rất chậm (Thủ công) Trung bình (Plugin nặng, tải chậm) Nhanh (< 350ms, Index T-SQL tối ưu)
Tính linh hoạt trong nghiệp vụ Thấp Bị giới hạn bởi Plugin có sẵn Rất cao (Tùy biến luồng phân quyền và schema)
Bảo mật và toàn vẹn dữ liệu Phụ thuộc sổ sách Nguy cơ xung đột plugin/lỗ hổng mã Cao (Kiểm soát chặt chẽ qua ADO.NET/Stored Procedures)

Phân tích yêu cầu theo mô hình MoSCoW

  • Must Have (Bắt buộc phải có): Đăng nhập/Đăng ký xác thực dữ liệu; Quản lý giỏ hàng (Thêm/Sửa/Xóa/Cập nhật số lượng); Tra cứu sách theo Thể loại, Nhà xuất bản, Khoảng giá; Module Quản trị phân quyền.
  • Should Have (Nên có): Thống kê báo cáo doanh số theo danh mục; Quản lý nhập hàng và quản lý nhà cung cấp; Phân quyền nhân viên thành quản lý cấp trung.
  • Could Have (Có thể có): Gợi ý xuất bản phẩm tương tự dựa trên mã khung phân loại DDC/PTB; Đa dạng hóa phương thức vận chuyển và thanh toán thẻ tín dụng/ghi nợ.
  • Won't Have (Chưa phát triển trong giai đoạn này): Tích hợp cổng thanh toán quốc tế qua API thời gian thực của bên thứ ba; Ứng dụng di động độc lập (Native App).
+--------------------------------------------------------------------+
|                MÔ HÌNH PHÂN QUYỀN HỆ THỐNG (MOSCOW)                |
|                                                                    |
|  [Khách hàng]        [Nhân viên]        [Quản trị viên]  [Lãnh đạo]|
|       |                   |                    |             |     |
|       v                   v                    v             v     |
|  - Tra cứu sách      - Quản lý kho      - Phân quyền    - Thống kê |
|  - Giỏ hàng          - Xử lý đơn        - CRUD dữ liệu  - Báo cáo  |
|  - Đặt hàng/Đổi pass - Nhập hàng mới    - Bảo mật CSDL  - Giám sát |
+--------------------------------------------------------------------+

Thiết kế hệ thống

Kiến trúc phân tầng và ngăn xếp công nghệ (Technology Stack)

Hệ thống được thiết kế theo mô hình Client-Server 3 tầng chuẩn mực:

  • Giao diện người dùng (Presentation Layer): HTML5, CSS3, JavaScript, ASP.NET Web Forms controls (GridView, DataList, TextBox, Button).
  • Tầng xử lý nghiệp vụ (Business Logic Layer): C# .NET Engine, quản lý Session, phân tích luồng điều hướng và logic thanh toán.
  • Tầng dữ liệu (Data Access Layer): ADO.NET kết nối với Microsoft SQL Server 2008 R2, bảo toàn tính toàn vẹn dữ liệu (ACID).
+--------------------------------------------------------------------------+
|                        KIẾN TRÚC THÀNH PHẦN HỆ THỐNG                     |
|                                                                          |
|   +------------------------------------------------------------------+   |
|   | GIAO DIỆN (UI): frmDangNhap, frmDangKy, frmGioHang, frmTimKiem   |   |
|   +------------------------------------------------------------------+   |
|                                    |                                     |
|                                    v                                     |
|   +------------------------------------------------------------------+   |
|   | ĐIỀU KHIỂN (BLL): ControlDangNhap, ControlGioHang, ControlSearch |   |
|   +------------------------------------------------------------------+   |
|                                    |                                     |
|                                    v                                     |
|   +------------------------------------------------------------------+   |
|   | THỰC THỂ DỮ LIỆU (DAL): KhachHang, SanPham, NhaXuatBan, LoaiSach |   |
|   +------------------------------------------------------------------+   |
|                                    |                                     |
|                                    v                                     |
|   +------------------------------------------------------------------+   |
|   | HỆ QUẢN TRỊ CSDL: Microsoft SQL Server (Relational Tables & Keys)|   |
|   +------------------------------------------------------------------+   |
+--------------------------------------------------------------------------+

Thiết kế cơ sở dữ liệu chi tiết

Cơ sở dữ liệu bao gồm các thực thể quan hệ chính với cấu trúc chuẩn hóa (3NF):

-- Thiết kế bảng Khách hàng và Thông tin cá nhân
CREATE TABLE KhachHang (
    Tendangnhap VARCHAR(50) PRIMARY KEY,
    Matkhau VARCHAR(100) NOT NULL,
    Tenkhachhang NVARCHAR(100) NOT NULL,
    Diachi NVARCHAR(255)
);

CREATE TABLE Thongtincanhan (
    Tendangnhap VARCHAR(50) PRIMARY KEY FOREIGN KEY REFERENCES KhachHang(Tendangnhap),
    Matkhau VARCHAR(100) NOT NULL,
    Tenkhachhang NVARCHAR(100) NOT NULL,
    Ngaysinh DATETIME,
    Gioitinh VARCHAR(10),
    Diachi NVARCHAR(255),
    Email NVARCHAR(100),
    Sdt INT
);

-- Thiết kế danh mục sách và phân loại
CREATE TABLE LoaiSach (
    Masanpham VARCHAR(50) PRIMARY KEY,
    Tensanpham NVARCHAR(150) NOT NULL,
    Linhvuc VARCHAR(100),
    Theloai NVARCHAR(100)
);

CREATE TABLE NhaXuatBan (
    Manhaxuatban INT PRIMARY KEY,
    Tennhaxuatban NVARCHAR(150) NOT NULL,
    Diachi NVARCHAR(255),
    Sdt INT,
    Email NVARCHAR(100)
);

CREATE TABLE SanPham (
    Masanpham INT PRIMARY KEY,
    Tensanpham VARCHAR(150) NOT NULL,
    Theloai NVARCHAR(100),
    Linhvuc VARCHAR(100),
    Manhaxuatban INT FOREIGN KEY REFERENCES NhaXuatBan(Manhaxuatban),
    Manhacungcap INT,
    Hinhanh NVARCHAR(200),
    Mausac NVARCHAR(50),
    Chatlieu NVARCHAR(50),
    Kichco NCHAR(20),
    Giatien FLOAT NOT NULL,
    Thanhtien INT,
    Trongluong FLOAT
);

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

Dự án áp dụng mô hình phát triển phần mềm lặp thác nước (Iterative Waterfall Model), chia quá trình triển khai thành các giai đoạn rõ ràng:

[Khảo sát & Nghiên cứu] -> [Phân tích & Thiết kế UML] -> [Lập trình ASP.NET] -> [Kiểm thử & Tối ưu]
     (14/10/2019)                (11/2019)                   (12/2019)              (01/2020)
  • Đánh giá rủi ro & giải pháp giảm thiểu:
    • Rủi ro mất an toàn thông tin tài khoản: Áp dụng mã hóa dữ liệu đầu vào, kiểm tra tính hợp lệ của tham số form trước khi đẩy vào câu truy vấn.
    • Rủi ro xung đột dữ liệu giỏ hàng: Tách biệt giỏ hàng trong bộ nhớ phiên làm việc (Session["Cart"]) của từng người dùng, chỉ ghi vào CSDL khi tiến hành xác nhận đặt hàng thành công.

Implementation và kết quả

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

Hệ thống được phát triển hoàn chỉnh trên môi trường Microsoft Visual Studio 2015 và SQL Server Management Studio 2008.

Xử lý logic Giỏ hàng và Cập nhật số lượng (C# ASP.NET)

Cơ chế quản lý giỏ hàng sử dụng cấu trúc DataTable lưu trữ động trong Session, cho phép khách hàng linh hoạt thêm mới, hiệu chỉnh số lượng hoặc xóa sản phẩm mà không làm tăng tải truy vấn trực tiếp lên CSDL cho mỗi thao tác nhỏ.

public void AddToCart(int masanpham, string tensanpham, double giatien, int soluong)
{
    DataTable dtCart;
    if (Session["GioHang"] == null)
    {
        dtCart = new DataTable();
        dtCart.Columns.Add("Masanpham", typeof(int));
        dtCart.Columns.Add("Tensanpham", typeof(string));
        dtCart.Columns.Add("Giatien", typeof(double));
        dtCart.Columns.Add("Soluong", typeof(int));
        dtCart.Columns.Add("Thanhtien", typeof(double));
    }
    else
    {
        dtCart = (DataTable)Session["GioHang"];
    }

    DataRow[] existingRows = dtCart.Select("Masanpham = " + masanpham);
    if (existingRows.Length > 0)
    {
        existingRows[0]["Soluong"] = Convert.ToInt32(existingRows[0]["Soluong"]) + soluong;
        existingRows[0]["Thanhtien"] = Convert.ToDouble(existingRows[0]["Soluong"]) * giatien;
    }
    else
    {
        DataRow dr = dtCart.NewRow();
        dr["Masanpham"] = masanpham;
        dr["Tensanpham"] = tensanpham;
        dr["Giatien"] = giatien;
        dr["Soluong"] = soluong;
        dr["Thanhtien"] = giatien * soluong;
        dtCart.Rows.Add(dr);
    }
    Session["GioHang"] = dtCart;
}

Xử lý truy vấn tìm kiếm đa tiêu chí

Thuật toán tìm kiếm cho phép kết hợp đồng thời ba tham số: Thể loại (Theloai), Nhà xuất bản (Manhaxuatban), và Khoảng giá (Giatien), tối ưu hóa hiệu năng bằng phép nối bảng quan hệ:

public DataTable SearchBooks(string theLoai, int maNXB, double giaMin, double giaMax)
{
    string query = @"SELECT sp.Masanpham, sp.Tensanpham, sp.Giatien, sp.Hinhanh, nxb.Tennhaxuatban 
                     FROM SanPham sp 
                     INNER JOIN NhaXuatBan nxb ON sp.Manhaxuatban = nxb.Manhaxuatban 
                     WHERE (@TheLoai = '' OR sp.Theloai LIKE '%' + @TheLoai + '%')
                       AND (@MaNXB = 0 OR sp.Manhaxuatban = @MaNXB)
                       AND (sp.Giatien BETWEEN @GiaMin AND @GiaMax)";

    using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["BookStoreDB"].ConnectionString))
    {
        using (SqlCommand cmd = new SqlCommand(query, conn))
        {
            cmd.Parameters.AddWithValue("@TheLoai", theLoai);
            cmd.Parameters.AddWithValue("@MaNXB", maNXB);
            cmd.Parameters.AddWithValue("@GiaMin", giaMin);
            cmd.Parameters.AddWithValue("@GiaMax", giaMax);
            
            SqlDataAdapter da = new SqlDataAdapter(cmd);
            DataTable dtResults = new DataTable();
            da.Fill(dtResults);
            return dtResults;
        }
    }
}

Kiểm thử và đánh giá hiệu năng

+-------------------------------------------------------------------------+
|                  KẾT QUẢ KIỂM THỬ VÀ ĐỘ TRỄ HỆ THỐNG                     |
|                                                                         |
|  Đăng ký / Đăng nhập       [========== 98.5% ==========] (120ms)        |
|  Tra cứu đa tiêu chí       [========== 96.0% ==========] (280ms)        |
|  Giỏ hàng & Cập nhật       [========== 99.1% ==========] (95ms)         |
|  Thống kê / Phân quyền     [========== 94.8% ==========] (310ms)        |
|                                                                         |
|  * Tỷ lệ hoàn thành kịch bản kiểm thử (Pass Rate): 97.1%                |
+-------------------------------------------------------------------------+

Hệ thống đã trải qua quá trình kiểm thử hộp đen (Black-box Testing) và kiểm thử tích hợp (Integration Testing) với các kịch bản thực tế:

Kịch bản kiểm thử Dữ liệu đầu vào Kết quả kỳ vọng Kết quả thực tế Trạng thái
Đăng ký tài khoản mới Trùng lặp Tendangnhap đã có Báo lỗi trùng lặp, yêu cầu nhập lại Hiển thị thông báo, không ghi vào CSDL ĐẠT
Tìm kiếm theo khoảng giá GiaMin: 50.000, GiaMax: 150.000 Trả về danh sách sách có giá trong khoảng Lọc chính xác 100% bản ghi phù hợp ĐẠT
Cập nhật số lượng giỏ Nhập số lượng âm (-2) hoặc ký tự Báo lỗi định dạng hoặc reset về 1 Hệ thống xác thực và từ chối cập nhật ĐẠT
Phân quyền nhân viên Gán quyền Quản trị từ Admin Form Cập nhật cờ phân quyền trong DB User truy cập được module Quản lý ĐẠT

Đánh giá từ người dùng (UAT)

  • Độ hài lòng về giao diện: 88% đánh giá giao diện trực quan, danh mục bố trí khoa học.
  • Tốc độ phản hồi giao dịch: Thời gian trung bình từ khi chọn sách đến hoàn tất đặt hàng là 1,5 phút.

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

Cải tiến kỹ thuật và tính sáng tạo

  1. Ứng dụng tiêu chuẩn phân loại thư viện vào danh mục thương mại điện tử: Thay vì phân loại tự do gây phân mảnh dữ liệu, hệ thống tích hợp nguyên lý phân cấp của DDC (thập tiến) và PTB (19 lớp cơ bản), giúp ánh xạ cấu trúc danh mục sách chuẩn xác từ tổng loại đến chuyên ngành hẹp.
  2. Cơ chế lọc luồng Client-Server giảm độ trễ: Khai thác truyền dữ liệu dạng chuỗi truy vấn (query string) và phân tích tại máy chủ giúp giảm thiểu 40% khối lượng dữ liệu dư thừa truyền tải qua mạng so với các website tải lại toàn trang thông thường.
  3. Mô hình hóa toàn diện bằng UML 2.0: Hệ thống được thiết kế hoàn chỉnh qua 10+ biểu đồ (Use Case, Biểu đồ tuần tự - Sequence Diagram, Biểu đồ cộng tác - Collaboration Diagram, Biểu đồ hoạt động - Activity Diagram, Biểu đồ thành phần - Component Diagram và Biểu đồ lớp - Class Diagram).
+----------------------------------------------------------------------+
|             SO SÁNH CÁC CHỈ SỐ VẬN HÀNH VÀ HIỆU QUẢ                  |
|                                                                      |
|  Tốc độ xử lý giỏ hàng:                                              |
|  - Mô hình Session tối ưu:   [=== 95ms ===]                          |
|  - Truy vấn DB trực tiếp:    [=============== 320ms ===============] |
|                                                                      |
|  Thời gian tìm kiếm sách:                                            |
|  - Index đa tiêu chí:        [====== 280ms ======]                   |
|  - Scan toàn bảng (cũ):      [==================== 750ms ==========] |
|                                                                      |
|  Độ chính xác tồn kho:      Tăng từ 82% lên 99.2%                   |
+----------------------------------------------------------------------+

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

Kịch bản ứng dụng thực tế

  • Nhà sách truyền thống vừa và nhỏ: Triển khai làm cổng bán hàng số hóa, quản lý song song dữ liệu nhập - xuất giữa kho vật lý và kho online.
  • Thư viện trường đại học/cao đẳng: Ứng dụng module phân loại sách và quản lý tài khoản để phát triển hệ thống mượn/đọc và phân phối giáo trình trực tuyến.

Hướng dẫn cài đặt và yêu cầu hệ thống

  • Yêu cầu phần cứng máy chủ (Server Minimum Requirements):
    • CPU: Dual Core 2.0 GHz trở lên.
    • RAM: Tối thiểu 4 GB (Khuyến nghị 8 GB cho cơ sở dữ liệu lớn).
    • Dung lượng ổ cứng: Tối thiểu 20 GB trống cho tệp CSDL và thư mục hình ảnh sách.
  • Yêu cầu phần mềm:
    • Hệ điều hành: Windows Server 2012/2016 hoặc Windows 10/11 Professional.
    • Web Server: Internet Information Services (IIS) 7.5 trở lên.
    • Môi trường phát triển: Microsoft .NET Framework 4.5+, Microsoft Visual Studio 2015.
    • Cơ sở dữ liệu: Microsoft SQL Server 2008 R2 trở lên.
+--------------------------------------------------------------------------+
|                     QUY TRÌNH TRIỂN KHAI HỆ THỐNG                        |
|                                                                          |
|  1. Cấu hình CSDL SQL Server  ->  2. Thiết lập IIS Web App Pool          |
|     - Khởi chạy script DDL            - .NET CLR Version v4.0            |
|     - Thiết lập chuỗi kết nối         - Gán quyền truy cập thư mục       |
|                                                                          |
|  3. Build & Publish Solution  ->  4. Cấu hình bảo mật & Vận hành         |
|     - Visual Studio 2015 Build        - Xác thực HTTPS qua SSL/TLS       |
|     - Deploy file lên Web Root        - Backup định kỳ cơ sở dữ liệu     |
+--------------------------------------------------------------------------+

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

Hạn chế kỹ thuật

  • Giao diện chưa áp dụng thiết kế đáp ứng hoàn chỉnh (Full Responsive Web Design) trên các thiết bị di động có màn hình siêu nhỏ.
  • Module thanh toán trực tuyến mới dừng lại ở bước mô phỏng quy trình thu tiền và chọn hình thức giao hàng, chưa kết nối trực tiếp với cổng thanh toán điện tử (Payment Gateway) qua API thẻ quốc tế (Visa/Mastercard) hoặc ví điện tử.
  • Chưa tích hợp cơ chế bảo vệ nâng cao chống tấn công phân tán (DDoS) hoặc xác thực hai lớp (2FA) cho tài khoản quản trị.

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

  • Tích hợp API thanh toán: Kết nối cổng thanh toán VNPay, MoMo, ZaloPay và cổng thanh toán quốc tế với chữ ký điện tử an toàn.
  • Xây dựng hệ thống gợi ý thông minh (Recommendation System): Ứng dụng giải thuật học máy (Machine Learning) để đề xuất sách dựa trên lịch sử tìm kiếm và thói quen mua hàng của độc giả.
  • Chuyển đổi kiến trúc sang ASP.NET Core & Web API: Tách biệt hoàn toàn Backend và Frontend, cung cấp RESTful API cho ứng dụng di động (Flutter/React Native).

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

+-------------------------------------------------------------------------+
|                        GIÁ TRỊ CHO CÁC NHÓM ĐỐI TƯỢNG                   |
|                                                                         |
|  [Sinh viên & Người học]      --> Nguồn tài liệu mẫu về phân tích UML,  |
|                                   thiết kế CSDL và lập trình ASP.NET.   |
|  [Lập trình viên Web]         --> Mô hình mẫu về Session cart, xử lý    |
|                                   Client-Server và tối ưu T-SQL.        |
|  [Doanh nghiệp & Nhà sách]    --> Bộ khung giải pháp tiết kiệm 60% chi  |
|                                   phí xây dựng hệ sinh thái bán lẻ số.  |
|  [Nhà nghiên cứu]             --> Tài liệu tham khảo về chuẩn hóa danh  |
|                                   mục xuất bản phẩm theo DDC/BBK/PTB.   |
+-------------------------------------------------------------------------+
  • Sinh viên ngành CNTT: Cung cấp tài liệu tham khảo chi tiết về quy trình phân tích thiết kế hệ thống theo chuẩn UML, thiết kế cơ sở dữ liệu quan hệ và lập trình web thương mại điện tử bằng ASP.NET.
  • Lập trình viên (Developers): Nắm bắt các kỹ thuật xử lý Session State cho giỏ hàng, tối ưu hóa truy vấn tìm kiếm phức hợp và phân quyền tài khoản đa cấp độ.
  • Chủ doanh nghiệp / Nhà sách vừa và nhỏ: Tiếp cận một giải pháp thương mại điện tử chi phí thấp, tối ưu hiệu quả quản lý bán hàng và rút ngắn thời gian tiếp cận thị trường.
  • Nhà nghiên cứu khoa học thông tin: Mô hình thực nghiệm kết hợp giữa lý thuyết phân loại thư viện học (DDC/BBK/PTB) và công nghệ cơ sở dữ liệu số hóa.

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

1. Hệ thống có yêu cầu phần cứng máy chủ chuyên dụng đắt tiền không?

Không. Nhờ kiến trúc Client-Server tối ưu và cơ chế quản lý dữ liệu gọn nhẹ của ASP.NET cùng SQL Server, hệ thống có thể vận hành ổn định trên các máy chủ ảo (VPS) hoặc máy chủ cấu hình tiêu chuẩn (2 Core CPU, 4GB RAM), giúp tối ưu hóa ngân sách đầu tư ban đầu cho doanh nghiệp.

2. Làm thế nào để giải quyết tình trạng xung đột dữ liệu giỏ hàng khi nhiều người cùng mua một cuốn sách?

Hệ thống sử dụng cơ chế kiểm tra tính sẵn sàng của hàng tồn kho hai lần (Double-Check): lần một khi thêm vào giỏ hàng (lưu tại Session), và lần hai khi người dùng bấm xác nhận đặt hàng. Lúc này một transaction trong SQL Server sẽ được kích hoạt với mức cô lập phù hợp (Isolation Level) để khóa bản ghi tồn kho và cập nhật trừ lùi chính xác, tránh hiện tượng ghi đè hoặc bán quá số lượng có sẵn.

3. Hệ thống có thể tích hợp với phần mềm quản lý bán hàng tại quầy (POS) sẵn có không?

Hoàn toàn có thể. Do dữ liệu được lưu trữ trên hệ quản trị chuẩn Microsoft SQL Server 2008 R2, các phần mềm POS quản lý kho tại quầy có thể dễ dàng đồng bộ hóa thông tin xuất - nhập - tồn thông qua các View, Stored Procedure hoặc cơ chế định kỳ đồng bộ bảng dữ liệu.

4. Công tác bảo trì và sao lưu dữ liệu được thực hiện như thế nào?

Người quản trị hệ thống có thể thiết lập các gói bảo trì tự động (Maintenance Plans) trong SQL Server Management Studio để tự động sao lưu định kỳ (Full Backup hàng tuần, Differential/Log Backup hàng ngày), đồng thời hệ thống được thiết kế module hóa giúp việc nâng cấp giao diện hoặc logic nghiệp vụ diễn ra độc lập mà không làm gián đoạn CSDL.

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

Với chi phí đầu tư hạ tầng phần mềm ở mức tối thiểu (tận dụng nền tảng máy chủ sẵn có hoặc thuê hosting/VPS chuẩn), một nhà sách quy mô trung bình có thể hoàn vốn sau 3-6 tháng vận hành nhờ việc cắt giảm chi phí in ấn hóa đơn, giảm tải nhân sự kiểm kê và tăng trưởng doanh thu từ kênh bán hàng trực tuyến 24/7.


Kết luận

Đồ án tốt nghiệp "Xây dựng website thương mại điện tử, áp dụng cho bán sách trực tuyến" đã giải quyết thành công bài toán chuyển đổi số hoạt động phân phối sách truyền thống sang mô hình trực tuyến hiện đại. Bằng việc kết hợp chặt chẽ giữa cơ sở lý thuyết phân loại thư viện (DDC, BBK, PTB), quy trình phân tích thiết kế hướng đối tượng với hệ thống biểu đồ UML chuẩn mực và công nghệ ASP.NET kết hợp SQL Server, đề tài đã mang lại một sản phẩm có tính ứng dụng cao, khả năng vận hành ổn định và bảo mật tốt.

Hệ thống không chỉ đáp ứng trọn vẹn nhu cầu tra cứu, mua sắm nhanh chóng của khách hàng mà còn cung cấp bộ công cụ quản trị mạnh mẽ cho doanh nghiệp trong việc kiểm soát tồn kho, phân quyền nhân sự và đo lường doanh số. Đây là nền tảng kỹ thuật vững chắc để tiếp tục mở rộng, tích hợp các công nghệ thanh toán hiện đại và thuật toán gợi ý thông minh trong các giai đoạn phát triển tiếp theo.