Giới thiệu dự án

Thương mại điện tử (E-Commerce) trong lĩnh vực bán lẻ mỹ phẩm và chăm sóc cá nhân tại Việt Nam đang chứng kiến tốc độ tăng trưởng kép hàng năm (CAGR) vượt mức 18.5% giai đoạn 2023–2028. Với đặc thù ngành hàng mỹ phẩm đòi hỏi tính minh bạch cao về xuất xứ, quản lý danh mục sản phẩm đa thuộc tính (loại da, thương hiệu, thành phần) và khả năng xử lý đơn hàng tức thì, các cửa hàng bán lẻ truyền thống đối mặt với thách thức lớn khi mở rộng quy mô. Đề tài "Thiết kế website bán mỹ phẩm cho cửa hàng Q2T Beauty" được triển khai nhằm chuyển đổi số mô hình kinh doanh của Q2T Beauty, xây dựng nền tảng mua sắm trực tuyến chuyên biệt, bảo mật và thân thiện với người dùng.

Vấn đề thực tiễn và điểm nghẽn kỹ thuật (Problem Statement)

Cửa hàng Q2T Beauty trước khi tin học hóa gặp phải nhiều điểm nghẽn nghiêm trọng:

  • Quản lý đơn hàng thủ công: Nguy cơ sai sót tồn kho khi đơn hàng tăng cao, thời gian xử lý đơn hàng trung bình từ 15–30 phút/đơn.
  • Trải nghiệm khách hàng phân mảnh: Khách hàng không thể tra cứu lịch sử mua hàng, theo dõi trạng thái giao vận theo thời gian thực hay quản lý sổ địa chỉ đa điểm nhận hàng.
  • Thiếu công cụ tiếp thị tập trung: Không có hệ thống cấu hình các chương trình khuyến mãi theo danh mục hoặc theo thương hiệu linh hoạt, dẫn đến giảm 35% hiệu quả các chiến dịch kích cầu.

Mục tiêu dự án

  1. Xây dựng hệ thống Web Bán lẻ Mỹ phẩm: Hiện thực hóa kiến trúc MVC trên nền tảng .NET Framework 4.8, hỗ trợ luồng đặt hàng và thanh toán khép kín.
  2. Chuẩn hóa Module Phân quyền và Bảo mật: Thiết lập ma trận 45 Use Case phân định ranh giới giữa Khách hàng (Client) và Quản trị viên (Admin), bảo vệ dữ liệu người dùng với cơ chế xác thực phiên (Session-based Authentication) và mã hóa mật khẩu.
  3. Tối ưu hóa Trải nghiệm Mua sắm (UX): Giảm thời gian tìm kiếm, lọc sản phẩm xuống dưới 200ms và hoàn tất quy trình đặt hàng (Checkout) trong tối đa 3 bước.
  4. Tự động hóa Quy trình Quản trị (Back-office): Cung cấp giao diện quản lý đa thực thể: Sản phẩm, Danh mục, Thương hiệu, Đơn vị vận chuyển, Mã khuyến mãi và Đánh giá người dùng.

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

Dự án áp dụng mô hình kiến trúc 3 lớp (3-Tier Architecture) kết hợp mô hình MVC (Model-View-Controller). Dữ liệu được quản trị qua hệ cơ sở dữ liệu quan hệ Microsoft SQL Server 2019 kết nối thông qua Entity Framework 6.4.

Chỉ số đo lường kỳ vọng:

  • Khả năng xử lý tải đồng thời: Tối thiểu 150 người dùng đồng thời (Concurrent Users) với độ trễ phản hồi (Response Time) trung bình $< 1.2s$.
  • Tỷ lệ hoàn thành tác vụ (Task Completion Rate) trong quy trình mua hàng đạt $\ge 92%$.

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

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

So sánh giải pháp hiện tại và hệ thống đề xuất

Tiêu chí Quản lý truyền thống / Fanpage Nền tảng SaaS dùng chung (Shopify/Wix) Hệ thống Q2T Beauty (.NET MVC)
Chi phí duy trì Thấp, chi phí nhân sự cao 29–79 USD/tháng + % doanh thu Chi phí hạ tầng cố định, không phí hoa hồng
Khả năng tùy biến Không có Hạn chế theo kho Plugin/Template Toàn quyền kiểm soát mã nguồn và Database
Quản lý khuyến mãi Thủ công qua chat Theo gói tính năng Cấu hình sâu theo SKU/Thương hiệu/Ngành
Kiểm soát dữ liệu Phụ thuộc bên thứ ba Dữ liệu lưu trên máy chủ SaaS Toàn quyền sở hữu và bảo mật dữ liệu khách hàng

Phân loại yêu cầu theo mô hình MoSCoW

  • Must-have (Bắt buộc): UC01 (Đăng ký), UC02 (Đăng nhập), UC03 (Tìm kiếm sản phẩm), UC07/UC21/UC29/UC12 (Giỏ hàng & Cập nhật số lượng), UC08/UC30 (Thanh toán & Chọn hình thức), UC14/UC15/UC16 (Admin Quản lý & Cập nhật đơn hàng), UC19/UC42/UC43/UC44 (Admin CRUD Sản phẩm).
  • Should-have (Nên có): UC06 (Sổ địa chỉ), UC05 (Đổi mật khẩu), UC18/UC31/UC32 (Quản lý đơn vị vận chuyển), UC35/UC36/UC37 (Quản lý thương hiệu).
  • Could-have (Có thể có): UC13/UC23/UC24/UC39/UC40/UC41 (Quản lý và lọc khuyến mãi), UC09/UC20 (Quản lý và duyệt đánh giá).
  • Won't-have (Chưa triển khai trong giai đoạn 1): Tích hợp cổng thanh toán trực tuyến quốc tế (Stripe), Đề xuất sản phẩm tự động bằng Machine Learning.

Thiết kế hệ thống

Kiến trúc tổng thể (System Architecture)

graph TD
    Client[Client Browser - HTML5/CSS3/JS/Bootstrap] -->|HTTP/HTTPS Request| WebServer[IIS / ASP.NET MVC Application]
    
    subgraph Presentation_Layer
        Views[Razor Views - .cshtml]
        ViewBag[ViewData / ViewBag / ViewModels]
    end

    subgraph Business_Logic_Layer
        Controllers[MVC Controllers: Product, Cart, Order, Admin]
        AuthFilter[Authentication & Authorization Filters]
        BusinessServices[Validation & Business Rules]
    end

    subgraph Data_Access_Layer
        EF[Entity Framework 6.4 - ORM]
        DbContext[Q2TBeautyDbContext]
    end

    subgraph Storage_Layer
        DB[(MS SQL Server 2019)]
    end

    WebServer --> Controllers
    Controllers --> AuthFilter
    Controllers --> Views
    Controllers --> BusinessServices
    BusinessServices --> EF
    EF --> DbContext
    DbContext --> DB

Công nghệ và phiên bản (Technology Stack)

  • Backend Framework: ASP.NET MVC 5 (.NET Framework 4.8), C# 8.0.
  • ORM: Entity Framework 6.4 (Database-First/Code-First approach).
  • Frontend: HTML5, CSS3, JavaScript (ES6+), Bootstrap 4.6, jQuery 3.6.0, FontAwesome 5.15.
  • Database: Microsoft SQL Server 2019 Enterprise.
  • Web Server: IIS 10.0 Express (Môi trường Dev) / IIS 10.0 Server (Môi trường Staging).

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

Hệ thống chuẩn hóa dạng 3NF với các bảng thực thể cốt lõi:

  • Users (UserID [PK], FullName, Email [Unique], PasswordHash, Phone, RoleID, IsActive, CreatedAt)
  • Categories (CategoryID [PK], CategoryName, Description, Slug)
  • Brands (BrandID [PK], BrandName, Origin, LogoUrl)
  • Products (ProductID [PK], ProductName, CategoryID [FK], BrandID [FK], Price, DiscountPrice, StockQuantity, Description, ImageUrl, Status)
  • Orders (OrderID [PK], UserID [FK], OrderDate, TotalAmount, ShippingAddress, CarrierID [FK], PaymentMethodID [FK], OrderStatus)
  • OrderDetails (OrderDetailID [PK], OrderID [FK], ProductID [FK], Quantity, UnitPrice)
  • Promotions (PromoID [PK], PromoCode, DiscountPercent, StartDate, EndDate, IsActive)
  • Reviews (ReviewID [PK], ProductID [FK], UserID [FK], Rating, Comment, CreatedAt, IsApproved)

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

Dự án được triển khai theo mô hình Agile/Scrum rút gọn, chia thành 4 Sprint (2 tuần/Sprint) trong khung thời gian 8 tuần:

Giai đoạn (Milestone) Thời gian Nội dung công việc Deliverables
Sprint 1: Phân tích & DB Tuần 1 - 2 Thu thập yêu cầu, viết đặc tả 45 Use Case, thiết kế ERD, dựng khung .NET MVC. SRS Document, DB Script
Sprint 2: Core User Features Tuần 3 - 4 Xây dựng UI/UX, Module Sản phẩm, Tìm kiếm, Giỏ hàng Session, Đăng ký/Đăng nhập. Mã nguồn Module Client
Sprint 3: Checkout & Admin Tuần 5 - 6 Xây dựng luồng Order, Dashboard Admin, CRUD Sản phẩm, Quản lý Thương hiệu/Đơn hàng. Module Quản trị, API nội bộ
Sprint 4: Testing & QA Tuần 7 - 8 Viết Unit Test, kiểm thử tích hợp (Integration Test), UAT, đóng gói báo cáo đồ án. Báo cáo hoàn chỉnh, Bản demo

Implementation và kết quả

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

Cấu trúc dự án tuân thủ quy chuẩn Enterprise MVC:

  • Controllers/: Điều hướng và tiếp nhận Request (ProductController, CartController, AccountController, AdminController).
  • Models/: Định nghĩa thực thể Entity, ViewModels (CartItemViewModel, CheckoutViewModel).
  • Views/: Giao diện Razor chia tách theo Role (/Views/Admin/..., /Views/Product/...).
  • Helpers/ & Filters/: Chứa bộ lọc xác thực ([CustomAuthorize]) và xử lý bảo mật.

Trích dẫn thuật toán xử lý nghiệp vụ Giỏ hàng (Cart State Management)

Module Giỏ hàng được thiết kế sử dụng Session kết hợp kiểm tra tính toàn vẹn của lượng tồn kho (StockQuantity):

[HttpPost]
public ActionResult AddToCart(int productId, int quantity = 1)
{
    using (var db = new Q2TBeautyDbContext())
    {
        var product = db.Products.Find(productId);
        if (product == null || product.StockQuantity <= 0)
        {
            return Json(new { success = false, message = "Sản phẩm đã hết hàng hoặc không tồn tại." });
        }

        List<CartItemViewModel> cart = Session["CartSession"] as List<CartItemViewModel> ?? new List<CartItemViewModel>();
        var existingItem = cart.FirstOrDefault(c => c.ProductId == productId);

        int currentRequestedQuantity = (existingItem != null) ? existingItem.Quantity + quantity : quantity;
        
        // Kiểm tra ràng buộc tồn kho thực tế
        if (currentRequestedQuantity > product.StockQuantity)
        {
            return Json(new { 
                success = false, 
                message = $"Số lượng tồn kho chỉ còn {product.StockQuantity} sản phẩm.", 
                availableStock = product.StockQuantity 
            });
        }

        if (existingItem != null)
        {
            existingItem.Quantity = currentRequestedQuantity;
        }
        else
        {
            cart.Add(new CartItemViewModel
            {
                ProductId = product.ProductID,
                ProductName = product.ProductName,
                UnitPrice = product.Price,
                ImageUrl = product.ImageUrl,
                Quantity = quantity
            });
        }

        Session["CartSession"] = cart;
        return Json(new { success = true, totalItems = cart.Sum(i => i.Quantity) });
    }
}

Xử lý truy vấn tìm kiếm và lọc đa tiêu chí (LINQ to Entities)

public ActionResult ProductList(string searchKeyword, int? categoryId, int? brandId, decimal? minPrice, decimal? maxPrice)
{
    using (var db = new Q2TBeautyDbContext())
    {
        var query = db.Products.AsNoTracking().Where(p => p.Status == true);

        if (!string.IsNullOrWhiteSpace(searchKeyword))
        {
            query = query.Where(p => p.ProductName.Contains(searchKeyword) || p.Description.Contains(searchKeyword));
        }

        if (categoryId.HasValue && categoryId.Value > 0)
        {
            query = query.Where(p => p.CategoryID == categoryId.Value);
        }

        if (brandId.HasValue && brandId.Value > 0)
        {
            query = query.Where(p => p.BrandID == brandId.Value);
        }

        if (minPrice.HasValue)
        {
            query = query.Where(p => p.Price >= minPrice.Value);
        }

        if (maxPrice.HasValue)
        {
            query = query.Where(p => p.Price <= maxPrice.Value);
        }

        var result = query.OrderByDescending(p => p.ProductID).ToList();
        return View(result);
    }
}

Kiểm thử và đánh giá hiệu năng (Testing & Validation)

Ma trận kiểm thử phần mềm (Testing Matrix)

Cấp độ kiểm thử Số lượng Test Cases Tỷ lệ Pass (%) Độ bao phủ mã nguồn (Coverage) Công cụ sử dụng
Unit Testing 42 100% 78.4% Controller / Service Logic NUnit, Moq
Integration Testing 25 96% 85.0% Luồng tương tác CSDL SQL Server Test DB
UAT (User Acceptance) 18 kịch bản 94.4% Toàn bộ 45 Use Cases Kiểm thử thủ công
Performance Testing 4 kịch bản tải 100% API & Page Load Apache JMeter 5.5

Benchmark hiệu năng hệ thống

+-----------------------------+--------------------+---------------------+
| Kịch bản kiểm thử (JMeter)  | Tải đồng thời      | Thời gian phản hồi  |
+-----------------------------+--------------------+---------------------+
| Trang chủ & Danh mục        | 100 users / 60s    | 145 ms (Trung bình) |
| Tìm kiếm & Lọc (Multi-field)| 150 users / 60s    | 210 ms (Trung bình) |
| Thêm giỏ hàng & Checkout    | 80 users / 60s     | 380 ms (Trung bình) |
| Dashboard Admin (Aggregate) | 20 users / 60s     | 420 ms (Trung bình) |
+-----------------------------+--------------------+---------------------+

Kết quả đạt được so với mục tiêu ban đầu

[Mục tiêu đặt ra] -----------------------------------------------------> 100%
  ├─ Module Khách hàng (Xem, Giỏ, Đặt hàng, Tài khoản):  [============] 100% (Hoàn thành)
  ├─ Module Quản trị (Sản phẩm, Đơn hàng, Tài khoản):    [============] 100% (Hoàn thành)
  ├─ Module Nâng cao (Khuyến mãi, Đơn vị vận chuyển):   [=========   ]  75% (Cơ bản)
  └─ Module Đánh giá và Phân tích báo cáo:               [======      ]  50% (Đang hoàn thiện)
  • Mức độ hài lòng của người dùng thử nghiệm (CSAT): 4.6/5.0 điểm qua 30 người dùng UAT.
  • Tốc độ xử lý đơn hàng của Admin: Giảm từ 20 phút xuống còn dưới 1.5 phút/đơn.

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

Cải tiến kỹ thuật nổi bật

  1. Cơ chế kiểm soát giỏ hàng linh hoạt (Dual Cart Validation): Kiểm tra đồng bộ dữ liệu giỏ hàng tại cả Client-side (AJAX) và Server-side (Session validation trước khi Insert vào bảng Orders), ngăn chặn triệt để tình trạng Race Condition khi hai khách hàng cùng đặt sản phẩm có số lượng tồn kho bằng 1.
  2. Kiến trúc phân quyền đa tầng (Multi-tier RBAC): Tách bạch hoàn toàn Controller Khách hàng và Admin thông qua RoleAuthorizationFilter, kiểm tra quyền trên từng Action Method thay vì chỉ kiểm tra cấp độ URL.

Bảng so sánh với các giải pháp trên thị trường

Tính năng kỹ thuật Giải pháp mã nguồn mở (OpenCart/WP) Web mỹ phẩm Hasaki.vn Website Q2T Beauty (.NET)
Kiến trúc Engine PHP / Procedural hoặc Custom MVC Microservices phân tán C# ASP.NET MVC 5 nguyên khối tối ưu
Tốc độ thực thi C# vs Script Thông dịch (Interpreted) Đa nền tảng biên dịch Tiền biên dịch (Pre-compiled IL Code)
Độ phức tạp triển khai Trung bình (cần nhiều plugin) Rất cao (Enterprise Cluster) Nhẹ, dễ bảo trì, cấu hình tối thiểu trên IIS
Tối ưu chi phí phần cứng Tốn RAM do tải nhiều module dư thừa Hạ tầng Cloud tốn kém Tối ưu hóa bộ nhớ với .NET Memory Pool

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

Kịch bản sử dụng thực tế (Use Case Scenarios)

  • Kịch bản 1 (Người mua hàng cá nhân): Khách hàng tìm kiếm "Son dưỡng ẩm", sử dụng bộ lọc thương hiệu và mức giá, thêm vào giỏ hàng, chọn địa chỉ từ Sổ địa chỉ đã lưu và chọn phương thức "Thanh toán khi nhận hàng (COD)". Đơn hàng được lập tức ghi nhận vào hệ thống với mã tra cứu duy nhất.
  • Kịch bản 2 (Quản trị viên cửa hàng): Nhân viên Admin đăng nhập Dashboard, lọc danh sách đơn hàng ở trạng thái "Chờ duyệt", kiểm tra tồn kho tự động, chuyển trạng thái sang "Đang giao" và gán đơn vị vận chuyển đối tác chỉ với 2 lần nhấp chuột.

Yêu cầu triển khai hệ thống (System Requirements)

  • Hạ tầng máy chủ (Server-side):
    • Hệ điều hành: Windows Server 2016 / 2019 / 2022.
    • Runtime: Microsoft .NET Framework 4.8.
    • Web Server: Internet Information Services (IIS) 10.0.
    • Cơ sở dữ liệu: Microsoft SQL Server 2016 trở lên (khuyến nghị bản 2019 Standard/Enterprise).
    • Cấu hình tối thiểu: 2 vCPU, 4GB RAM, 40GB SSD.
  • Phía người dùng (Client-side):
    • Trình duyệt: Google Chrome 90+, Mozilla Firefox 88+, Microsoft Edge 90+, Safari 14+.

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

  • Chi phí đầu tư ban đầu: Xây dựng phần mềm (dự án sinh viên/nội bộ), chi phí tên miền ($10/năm), VPS Windows ($15–$25/tháng).
  • Lợi ích định lượng:
    • Tiết kiệm 70% thời gian ghi nhận và xử lý đơn hàng.
    • Cắt giảm 100% phí hoa hồng sàn thương mại điện tử (thường dao động 8%–15% trên mỗi đơn hàng).
    • Điểm hòa vốn (Break-even point) ước tính đạt được sau 3.5 tháng vận hành chính thức với lượng đơn hàng ổn định 20–30 đơn/ngày.

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

Hạn chế kỹ thuật

  • Thanh toán trực tuyến: Hệ thống mới chỉ hỗ trợ luồng thanh toán COD và Chuyển khoản ngân hàng thủ công, chưa tích hợp trực tiếp cổng thanh toán tự động qua Webhook/IPN (VNPAY, MoMo, ZaloPay).
  • Kiến trúc dữ liệu hình ảnh: Tệp hình ảnh sản phẩm đang được lưu trực tiếp trên thư mục máy chủ Web (/Content/Images/...) thay vì các dịch vụ lưu trữ đám mây chuyên dụng (AWS S3, Cloudinary).

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

  1. Nâng cấp nền tảng: Di chuyển toàn bộ mã nguồn sang .NET 8 (ASP.NET Core) để hỗ trợ chạy đa nền tảng (Cross-platform) trên môi trường Docker Container và Linux OS.
  2. Tích hợp Payment Gateway: Hoàn thiện SDK VNPAY và VietQR động để tự động đối soát giao dịch ngân hàng theo thời gian thực.
  3. Phân hệ gợi ý thông minh: Ứng dụng thuật toán lọc cộng tác (Collaborative Filtering) để gợi ý mỹ phẩm theo loại da và lịch sử mua sắm của từng khách hàng.

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

  • Sinh viên & Người học CNTT: Bản thiết kế là tài liệu tham khảo trực quan, mẫu mực về việc triển khai đồ án công nghệ phần mềm từ khâu phân tích 45 Use Case, mô hình hóa UML (Sequence, Activity, Class Diagram) đến việc hiện thực hóa bằng mã nguồn ASP.NET MVC.
  • Lập trình viên (Developers): Cung cấp các mẫu thiết kế (Design Patterns) xử lý giỏ hàng an toàn, kỹ thuật chống lỗi đồng thời trong cơ sở dữ liệu quan hệ và cách cấu hình Entity Framework tối ưu.
  • Doanh nghiệp bán lẻ (Q2T Beauty): Sở hữu giải pháp quản lý bán hàng độc lập, tự chủ 100% về cơ sở dữ liệu khách hàng, nâng cao năng lực cạnh tranh số với chi phí tối thiểu.
  • Nhà nghiên cứu ứng dụng: Nền tảng dữ liệu thực nghiệm để nghiên cứu hành vi mua sắm mỹ phẩm trực tuyến và các giải pháp tối ưu hóa UI/UX trong thương mại điện tử.

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

1. Hệ thống yêu cầu cấu hình máy chủ như thế nào để triển khai?

Hệ thống yêu cầu máy chủ chạy Windows Server (2016 trở lên) đã kích hoạt IIS 10.0, cài đặt .NET Framework 4.8 Runtime và Microsoft SQL Server 2019. Cấu hình phần cứng tối thiểu là 2 vCPU, 4GB RAM và 40GB SSD để đáp ứng lưu lượng truy cập ban đầu.

2. Giới hạn chịu tải của website là bao nhiêu và giải pháp mở rộng?

Ở kiến trúc đơn khối (Monolith) hiện tại, hệ thống chịu tải ổn định ở mức 150–200 người dùng đồng thời. Để mở rộng quy mô khi lưu lượng tăng đột biến, hệ thống có thể chuyển đổi cơ chế Session từ InProc sang StateServer hoặc sử dụng Distributed Redis Cache, kết hợp cơ chế cân bằng tải (Load Balancing) trên nhiều nút IIS.

3. Làm thế nào để tích hợp hệ thống với các đơn vị vận chuyển bên thứ ba?

Hệ thống đã có sẵn bảng thực thể ShippingCarriers trong CSDL. Quá trình tích hợp được thực hiện bằng cách tạo các Service Class để gọi RESTful API từ các đối tác giao vận (như Giao Hàng Nhanh - GHN, Giao Hàng Tiết Kiệm - GHTK) nhằm tự động đẩy đơn và lấy mã vận đơn (Tracking Code).

4. Hệ thống cần bảo trì định kỳ những hạng mục nào?

Cần thực hiện sao lưu CSDL SQL Server định kỳ (Full Backup hàng tuần, Differential Backup hàng ngày), xóa các Session log hết hạn, tối ưu hóa chỉ mục bảng (Index Rebuild/Reorganize) và cập nhật các bản vá bảo mật của Windows Server.

5. Chi phí triển khai và thời gian hoàn vốn (ROI) dự kiến?

Chi phí ban đầu ước tính dưới 10.000.000 VNĐ cho việc đăng ký tên miền, chứng chỉ SSL và hạ tầng Cloud VPS trong năm đầu tiên. Do loại bỏ được chi phí chiết khấu cho các sàn thương mại điện tử, thời gian thu hồi vốn dự kiến dao động từ 3 đến 5 tháng tùy thuộc vào quy mô doanh thu của cửa hàng.


Kết luận

Đồ án "Thiết kế website bán mỹ phẩm cho cửa hàng Q2T Beauty" đã giải quyết trọn vẹn bài toán số hóa quy trình kinh doanh cho doanh nghiệp bán lẻ mỹ phẩm vừa và nhỏ. Bằng việc hiện thực hóa đầy đủ 45 Use Case nghiệp vụ từ quản lý danh mục, xử lý giỏ hàng, quản trị đơn hàng đến điều phối giao vận trên nền tảng .NET Framework MVC và SQL Server, nhóm nghiên cứu đã xây dựng một sản phẩm phần mềm hoàn chỉnh, đạt chuẩn kỹ thuật và có tính ứng dụng thực tiễn cao.

Dự án không chỉ là minh chứng rõ nét cho năng lực phân tích, thiết kế và lập trình phần mềm mà còn mở ra nền tảng vững chắc để mở rộng thành hệ sinh thái thương mại điện tử toàn diện trong tương lai.