Giới thiệu dự án

Thương mại điện tử (E-Commerce) 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 20%, trong đó phân khúc bán lẻ thiết bị di động (Smartphones & Tablets) chiếm tỷ trọng giá trị giao dịch đặc biệt lớn. Tuy nhiên, các cửa hàng bán lẻ quy mô vừa và nhỏ thường gặp nhiều rào cản khi triển khai hệ thống bán hàng trực tuyến: phụ thuộc vào các nền tảng sàn thương mại điện tử với chi phí hoa hồng cao, chi phí duy trì hệ thống cồng kềnh, trải nghiệm tư vấn khách hàng bị phân mảnh và tốc độ tải trang chậm ảnh hưởng trực tiếp đến tỷ lệ chuyển đổi (Conversion Rate).

Đồ án tốt nghiệp "Xây dựng Website bán Điện Thoại và Tablet" do sinh viên Dương Sơn Bá (Khoa Khoa Học Máy Tính, Trường Đại học Công nghệ Thông tin và Truyền thông Việt - Hàn, dưới sự hướng dẫn của TS. Lê Thị Thu Nga) thực hiện nhằm giải quyết trực tiếp bài toán xây dựng nền tảng thương mại điện tử chuyên biệt cho thiết bị số, tích hợp tư vấn trực tuyến thời gian thực và quản trị đa kênh.

                  +------------------------------------------+
                  |         Client Tier (Web & Mobile)       |
                  |  TailwindCSS Web App  |  React Native App|
                  +---------------------+--------------------+
                                        | (HTTPS / WSS)
                                        v
                  +------------------------------------------+
                  |          Application Server Tier         |
                  |     Node.js Runtime + Express.js API     |
                  |   [Auth JWT] [REST Router] [WebSocket]  |
                  +---------------------+--------------------+
                                        | (Mongoose / Native Driver)
                                        v
                  +------------------------------------------+
                  |               Database Tier              |
                  |      MongoDB (NoSQL Document Store)      |
                  +------------------------------------------+

Mục tiêu dự án

  1. Xây dựng hệ thống Web E-commerce toàn diện: Cung cấp đầy đủ tính năng tìm kiếm, lọc theo thông số kỹ thuật (RAM, ROM, CPU, Camera), quản lý giỏ hàng và đặt hàng trực tuyến.
  2. Tích hợp kênh hỗ trợ khách hàng theo thời gian thực: Triển khai module Chat/Tư vấn trực tiếp giữa người mua và quản trị viên thông qua giao thức WebSocket, giảm độ trễ phản hồi xuống dưới 100ms.
  3. Phát triển giao diện tối ưu trải nghiệm (UX/UI): Thiết kế giao diện hiện đại với hai tông màu chủ đạo (#ffffff#06c1d4), ứng dụng Utility-First CSS (TailwindCSS) giúp tối ưu hóa bundle style.
  4. Mở rộng nền tảng ứng dụng di động: Định hướng cross-platform qua React Native, chia sẻ mô hình dữ liệu và API backend với ứng dụng web.
  5. Cung cấp công cụ quản trị (Admin Dashboard): Giúp chủ cửa hàng theo dõi doanh thu, quản lý danh mục, kiểm soát kho hàng và phản hồi bình luận/đánh giá của khách hàng.

Giải pháp kỹ thuật và phạm vi triển khai

  • Phương pháp tiếp cận: Xây dựng kiến trúc Single Language Fullstack dựa trên JavaScript Runtime (Node.js, Express.js) kết hợp cơ sở dữ liệu phi quan hệ Document-oriented NoSQL (MongoDB), phân tách rõ ràng giữa Web Client, Admin Client và RESTful/WebSocket Server.
  • Kết quả kỳ vọng định lượng: Thời gian tải trang ban đầu (First Contentful Paint) < 1.2s; thời gian phản hồi API trung bình < 150ms; thông lượng xử lý đạt tối thiểu 500 yêu cầu đồng thời (Requests Per Second - RPS) trên môi trường máy chủ tiêu chuẩn.
  • Phạm vi và giới hạn: Dự án tập trung vào luồng nghiệp vụ bán lẻ và tư vấn trực tiếp; hệ thống thanh toán dừng ở mức xử lý đơn hàng và ghi nhận lịch sử giao dịch (chưa tích hợp trực tiếp cổng thanh toán trực tuyến như VNPay/MoMo); triển khai thử nghiệm trên hạ tầng Cloud Serverless (Vercel) và môi trường Localhost.

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

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

Nhiều giải pháp thương mại điện tử mã nguồn mở truyền thống (như WordPress/WooCommerce hoặc Magento) yêu cầu tài nguyên phần cứng lớn, kiến trúc hướng quan hệ (RDBMS) thường xuyên gặp tình trạng nghẽn cổ chai (bottleneck) khi cấu trúc dữ liệu sản phẩm công nghệ biến động phức tạp theo cấu hình phần cứng.

Tiêu chí kỹ thuật Hệ thống đề xuất (Node.js + MongoDB) WooCommerce (PHP + MySQL) Magento 2 (PHP + MySQL)
Mô hình I/O Non-blocking I/O, Event-driven Blocking I/O theo luồng (Thread per request) Blocking I/O, tiêu tốn CPU/RAM cao
Cấu trúc Schema Dynamic Schema (BSON/JSON linh hoạt) Ràng buộc quan hệ cố định, phức tạp bảng EAV EAV Model cồng kềnh, query chậm
Giao tiếp Real-time WebSocket Native (Tích hợp liền mạch) Cần cài Plugin ngoài / Polling liên tục Cần Extension bên thứ ba đắt đỏ
Kích thước CSS Bundle Siêu nhẹ nhờ TailwindCSS Purge Phụ thuộc thư viện CSS nặng Rất nặng, tốn nhiều công tối ưu
Khả năng mở rộng (Scale) Dễ dàng scale ngang (Horizontal Scaling) Phức tạp khi scale database Đòi hỏi hạ tầng server chuyên biệt

Phân loại yêu cầu người dùng theo mô hình MoSCoW

  • Must-have: Xác thực tài khoản (Validation 10 số điện thoại, mã hóa mật khẩu, JWT Access Token); Tìm kiếm & bộ lọc sản phẩm đa tiêu chí; Giỏ hàng và đặt hàng; Real-time chat qua WebSocket.
  • Should-have: Đánh giá sản phẩm (Sao & nhận xét); Hệ thống trả lời bình luận nhiều cấp; Lịch sử mua hàng chi tiết; Quản lý trạng thái đơn hàng.
  • Could-have: Module tin tức/bài viết công nghệ; Đổi ảnh đại diện người dùng; Thống kê doanh số theo kỳ.
  • Won't-have (Hiện tại): Tích hợp cổng thanh toán trực tiếp qua thẻ quốc tế; Tự động tính cước vận chuyển qua API đối tác logistics.

Thiết kế hệ thống

Hệ thống được thiết kế theo mô hình Client-Server phân tầng, giao tiếp qua giao thức HTTPS (RESTful API) và WSS (WebSocket).

                      +---------------------------------+
                      |          User Browser           |
                      +----------------+----------------+
                                       |
                +----------------------+----------------------+
                | HTTP Requests (REST)                        | WebSocket (WSS)
                v                                             v
+-------------------------------+             +-------------------------------+
|  Express.js API Endpoints     |             |    WebSocket Server Handler   |
|  - Auth Middleware (JWT)      |             |    - Realtime Messaging       |
|  - Controllers & Routes       |             |    - Event Dispatcher         |
+---------------+---------------+             +---------------+---------------+
                |                                             |
                +----------------------+----------------------+
                                       |
                                       v
                      +---------------------------------+
                      |       Mongoose Data Models      |
                      +----------------+----------------+
                                       |
                                       v
                      +---------------------------------+
                      |   MongoDB Database Collections  |
                      +---------------------------------+

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

  • Runtime Environment: Node.js (v16.x LTS) - Tận dụng Google Chrome V8 Engine, mô hình đơn luồng (Single-thread Event Loop) với Non-blocking I/O.
  • Web Framework: Express.js (v4.17.x) - Xây dựng RESTful API, định tuyến (Routing) và cấu hình Middlewares.
  • Database: MongoDB (v5.0) - Cơ sở dữ liệu NoSQL lưu trữ Document dạng BSON, đánh chỉ mục tự động trên trường _id (ObjectId).
  • Frontend Web: HTML5, Modern JavaScript (ES6+), TailwindCSS (v2.2) phục vụ Responsive Web Design.
  • Mobile Framework: React Native (v0.65) - Phát triển ứng dụng di động đa nền tảng.
  • Giao thức Real-time: WebSocket - Thiết lập kênh truyền dữ liệu song công (Full-duplex).

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

Cơ sở dữ liệu bao gồm 13 collections chuyên biệt, tối ưu hóa cho tác vụ truy vấn và cập nhật:

[Brand] 1 --- n [GroupProduct] 1 --- n [Product] <--- 1..n --- [Cart]
                                           ^
                                           |--- 1..n --- [Evalute]
                                           |--- 1..n --- [Comment] <-- 1..n -- [ReplyComment]
                                           +--- 1..n --- [ProductShopingHistory]
                                                                ^
                                                                |
[User] 1 --- n [ShopingHistory] --------------------------------+
  |
  +--- 1 --- n [Message]

Chi tiết các trường dữ liệu nòng cốt:

  • Product: _id (ObjectId), ProductName (String), DisplayImage (String), Processor (String), Ram (String), Memory (String), FrontCamera (String), BackCamera (String), OperatingSystem (String), Price (Number), Quantity (Number).
  • User: _id (ObjectId), PhoneNumber (String, Unique), Password (String, Hashed), Name (String), Address (String), Avatar (String).
  • Cart: _id (ObjectId), Id_Product (ObjectId), Id_User (ObjectId), Amount (Number).
  • ShopingHistory & ProductShopingHistory: Lưu trữ snapshot đơn hàng, bao gồm TotalMoney, Status, PriceSale, Amount nhằm bảo toàn dữ liệu lịch sử khi giá sản phẩm thay đổi.
  • Message: _id (ObjectId), Id_User (String), MessageContent (String), Time (Date), Role (String: "User" / "Admin").

Thiết kế RESTful API Endpoints

Method Endpoint Mô tả chức năng Quyền truy cập
POST /api/auth/register Đăng ký tài khoản (Validate số điện thoại & mã hóa mật khẩu) Public
POST /api/auth/login Xác thực đăng nhập và cấp phát Access Token (JWT) Public
GET /api/products Lấy danh sách sản phẩm (Hỗ trợ lọc theo RAM, ROM, Giá, Hãng) Public
POST /api/cart/add Thêm sản phẩm vào giỏ hàng cá nhân Authenticated
POST /api/orders/checkout Kiểm tra tồn kho và tạo đơn hàng (ShopingHistory) Authenticated
GET /api/admin/orders Quản lý toàn bộ danh sách đơn đặt hàng của hệ thống Admin

Methodology

Dự án được triển khai theo mô hình Agile/Scrum rút gọn với chu kỳ 4 Sprint (tổng thời gian 8 tuần):

  1. Giai đoạn 1 (Tuần 1 - 2): Khảo sát yêu cầu, mô hình hóa Use Case, thiết kế biểu đồ trình tự (Sequence Diagrams) và cấu trúc Collection MongoDB.
  2. Giai đoạn 2 (Tuần 3 - 4): Xây dựng Core API trên Node.js/Express.js, mã hóa bảo mật Bcrypt, tạo cơ chế xác thực Access Token.
  3. Giai đoạn 3 (Tuần 5 - 6): Lập trình giao diện Frontend bằng TailwindCSS, tích hợp WebSockets Chat Server và xây dựng Client Mobile bằng React Native.
  4. Giai đoạn 4 (Tuần 7 - 8): Kiểm thử tích hợp (Integration Testing), đo kiểm hiệu năng và triển khai lên môi trường Cloud (Vercel & MongoDB Atlas).

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 các thuật toán xử lý dữ liệu bất đồng bộ và cơ chế bảo mật xác thực nhiều lớp.

1. Khởi tạo máy chủ Node.js & Express.js

const express = require('express');
const http = require('http');
const mongoose = require('mongoose');
const cors = require('cors');

const app = express();
const server = http.createServer(app);

// Middleware cấu hình
app.use(cors());
app.use(express.json());
app.use(express.urlencoded({ extended: true }));

// Kết nối cơ sở dữ liệu MongoDB
mongoose.connect('mongodb://localhost:27017/phonex_db', {
    useNewUrlParser: true,
    useUnifiedTopology: true
}).then(() => console.log('MongoDB Connected Successfully'))
  .catch(err => console.error('Database Connection Error:', err));

const PORT = process.env.PORT || 5000;
server.listen(PORT, () => {
    console.log(`Server is running on port ${PORT}`);
});

2. Xử lý Logic xác thực & Đăng nhập cấp phát Access Token

Hệ thống kiểm tra định dạng số điện thoại (đúng 10 chữ số), kiểm tra trùng lặp và so khớp mật khẩu mã hóa:

const bcrypt = require('bcryptjs');
const jwt = require('jsonwebtoken');
const User = require('../models/User');

exports.login = async (req, res) => {
    const { phoneNumber, password } = req.body;
    try {
        const user = await User.findOne({ PhoneNumber: phoneNumber });
        if (!user) {
            return res.status(404).json({ message: "Tài khoản không tồn tại" });
        }
        
        const isMatch = await bcrypt.compare(password, user.Password);
        if (!isMatch) {
            return res.status(400).json({ message: "Mật khẩu không chính xác" });
        }

        // Tạo Access Token xác thực
        const token = jwt.sign(
            { id: user._id, phoneNumber: user.PhoneNumber },
            process.env.JWT_SECRET || 'SECRET_KEY_PHONEX',
            { expiresIn: '24h' }
        );

        return res.status(200).json({
            token,
            user: { id: user._id, name: user.Name, phoneNumber: user.PhoneNumber }
        });
    } catch (error) {
        return res.status(500).json({ error: error.message });
    }
};

3. Module Tư vấn Real-time qua WebSocket

const WebSocket = require('ws');
const wss = new WebSocket.Server({ server });

wss.on('connection', (ws) => {
    ws.on('message', async (messageData) => {
        const parsedMessage = JSON.parse(messageData);
        // Lưu tin nhắn vào MongoDB Collection: Message
        const newMessage = await Message.create({
            Id_User: parsedMessage.userId,
            MessageContent: parsedMessage.content,
            Role: parsedMessage.role,
            Time: new Date()
        });

        // Broadcast tin nhắn tới các client liên quan
        wss.clients.forEach((client) => {
            if (client.readyState === WebSocket.OPEN) {
                client.send(JSON.stringify(newMessage));
            }
        });
    });
});

Testing và validation

Hệ thống đã trải qua quá trình kiểm thử hộp đen (Black-box Testing) và kiểm tra tải giả lập:

  • Kiểm thử chức năng (Functional Testing): Thực hiện 32 Test Cases bao gồm xác thực form, logic thêm/sửa/xóa giỏ hàng, kiểm tra tính toàn vẹn của giao dịch đặt hàng khi tồn kho về 0. Tỷ lệ vượt qua đạt 100%.
  • Kiểm thử hiệu năng (Lighthouse & Load Test):
    • Lighthouse Performance Score: 92/100 trên nền tảng Desktop và 86/100 trên Mobile.
    • First Contentful Paint (FCP): 0.95 giây.
    • Time to Interactive (TTI): 1.4 giây.
    • Tải đồng thời: Xử lý ổn định 450 requests/s với độ trễ (latency) trung bình 128ms mà không phát sinh lỗi HTTP 5xx.

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

Hệ thống đã hoàn thiện toàn bộ các tính năng cốt lõi theo đề cương ban đầu:

  • Người dùng: Đăng ký/Đăng nhập, tìm kiếm - lọc sản phẩm đa thuộc tính, quản lý giỏ hàng ảo, đặt hàng, gửi đánh giá (Rating sao), viết bình luận và tương tác trực tiếp với tư vấn viên.
  • Quản trị viên: Bảng điều khiển quản lý danh mục, thêm mới/cập nhật sản phẩm, điều chỉnh giá khuyến mại, xử lý đơn đặt hàng, kiểm duyệt bình luận và khung chat CSKH thời gian thực.
  • Độ hài lòng người dùng: Khảo sát thử nghiệm trên 40 người dùng cho điểm số trải nghiệm đạt 4.6/5.0 về tốc độ phản hồi và tính tiện dụng của giao diện.

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

  1. Ứng dụng cấu trúc Styling tiện ích (Utility-First CSS với TailwindCSS): Khắc phục triệt để nhược điểm thừa mã nguồn của Bootstrap, giảm dung lượng tệp CSS tải về tới 65%, loại bỏ hoàn toàn việc xung đột class name khi mở rộng dự án.
  2. Kiến trúc đồng bộ Fullstack JavaScript: Sử dụng JavaScript xuyên suốt từ Frontend Web, Mobile App (React Native), Backend Server (Node.js) đến Database Layer (MongoDB BSON). Điều này giúp tối ưu hóa việc chuyển đổi kiểu dữ liệu (Data Serialization), loại bỏ chi phí chuyển đổi định dạng phức tạp giữa các tầng kiến trúc.
  3. Kênh trao đổi thời gian thực tích hợp Native: Thay vì phụ thuộc vào các widget bên thứ ba (như Facebook Messenger Plugin hay Tawk.to làm chậm tốc độ tải trang), việc tự xây dựng WebSocket Gateway nội bộ giúp bảo mật 100% dữ liệu cuộc hội thoại và lịch sử trao đổi của khách hàng.

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

Hướng dẫn triển khai (Deployment Strategy)

Triển khai môi trường phát triển (Localhost)

# Bước 1: Clone mã nguồn và cài đặt dependencies
$ git clone https://github.com/duongsonba/phone-tablet-store.git
$ cd phone-tablet-store && npm install

# Bước 2: Khởi động môi trường dev
$ npm run dev
# Truy cập giao diện tại: http://localhost:3000

Triển khai môi trường Production (Cloud/Serverless)

  • Backend & Frontend: Triển khai trên nền tảng Vercel Hosting với Domain:
    • Trang người dùng: https://do-an-phonex-client.app
    • Trang quản trị: https://do-an-phonex-admin.app
  • Cơ sở dữ liệu: Lưu trữ phân tán trên cụm MongoDB Atlas Cluster.

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

  • Chi phí đầu tư hạ tầng ban đầu: Gần như 0 VNĐ nhờ tối ưu trên nền tảng mã nguồn mở (Node.js, Express, MongoDB Community/Atlas Free Tier, Vercel Hobby Tier).
  • Khả năng sinh lời (ROI): Tiết kiệm 100% chi phí bản quyền phần mềm so với các giải pháp thương mại độc quyền (khoảng 15 - 30 triệu VNĐ/năm). Doanh nghiệp hoàn toàn làm chủ mã nguồn, dễ dàng tùy biến tính năng khi có nhu cầu mở rộng quy mô kinh doanh.

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

Hạn chế kỹ thuật

  • Độ trễ Cold Start: Do sử dụng gói lưu trữ miễn phí trên Vercel, serverless function tự động chuyển sang chế độ ngủ (sleep) sau 30 phút không có lượt truy cập, dẫn đến yêu cầu đầu tiên sau thời gian nghỉ mất khoảng 2 - 3 phút để khởi động lại máy chủ.
  • Thanh toán trực tuyến: Chưa tích hợp trực tiếp cổng thanh toán điện tử (Payment Gateway Webhooks) để tự động hóa đối soát giao dịch ngân hàng.
  • Phân phối Mobile App: Ứng dụng React Native mới được kiểm thử cục bộ trên thiết bị phát triển cá nhân, chưa được xuất bản lên App Store và Google Play Store.

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

  1. Nâng cấp hạ tầng backend lên VPS chuyên dụng (DigitalOcean/AWS EC2) kết hợp công cụ quản lý tiến trình PM2 và Nginx Reverse Proxy để triệt tiêu tình trạng cold start.
  2. Tích hợp cổng thanh toán trực tuyến chuẩn PCI-DSS (VNPay, ZaloPay, MoMo).
  3. Ứng dụng thuật toán gợi ý sản phẩm (Recommendation System) dựa trên lịch sử xem hàng và hành vi mua sắm của người dùng.
  4. Bổ sung hệ thống bộ nhớ đệm phân tán (Redis Caching) để tối ưu hóa hơn nữa tốc độ đọc dữ liệu danh mục sản phẩm có lượng truy cập lớn.

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

  • Sinh viên chuyên ngành CNTT/Khoa học Máy tính: 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, mô hình hóa Use Case, thiết kế cơ sở dữ liệu NoSQL và xây dựng ứng dụng Fullstack JavaScript.
  • Lập trình viên Web/Mobile: Cung cấp pattern mẫu về tích hợp WebSocket thời gian thực vào kiến trúc Express.js và kỹ thuật tối ưu hóa giao diện với TailwindCSS.
  • Doanh nghiệp và chủ cửa hàng bán lẻ: Nắm bắt được giải pháp công nghệ giá thành thấp, hiệu quả cao để số hóa quy trình kinh doanh và chăm sóc khách hàng.
  • Nhà nghiên cứu ứng dụng: Nền tảng dữ liệu thực nghiệm phục vụ việc đánh giá hiệu năng so sánh giữa cơ sở dữ liệu Document NoSQL và RDBMS truyền thống trong lĩnh vực thương mại điện tử.

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

1. Yêu cầu phần cứng và môi trường để triển khai hệ thống là gì?

Máy chủ cần tối thiểu 1 vCPU, 1GB RAM, môi trường cài đặt Node.js (từ bản v14.x trở lên), npm (từ v6.x) và quyền kết nối tới cơ sở dữ liệu MongoDB (Local hoặc Cloud MongoDB Atlas URI).

2. Hệ thống xử lý thế nào khi xảy ra xung đột mua hàng lúc sản phẩm chỉ còn 1 chiếc trong kho?

Tại controller đặt hàng (/api/orders/checkout), hệ thống áp dụng thao tác truy vấn có điều kiện nguyên tử (Atomic Update) trên MongoDB: findOneAndUpdate({ _id: productId, Quantity: { $gte: amount } }, { $inc: { Quantity: -amount } }). Nếu số lượng tồn kho không đáp ứng, giao dịch sẽ bị từ chối ngay lập tức và trả thông báo lỗi về cho người dùng.

3. Làm sao để khắc phục tình trạng website bị chậm ở lần truy cập đầu trên gói Vercel Free?

Để khắc phục triệt để, có thể thiết lập một tiến trình Cron-job định kỳ (ví dụ: mỗi 10 phút) gửi một request ping dạng GET /api/health tới máy chủ nhằm giữ cho serverless instance luôn ở trạng thái active (Warm State), hoặc chuyển đổi backend sang chạy liên tục trên VPS/Docker container.

4. Tại sao lại chọn TailwindCSS thay vì Bootstrap hay Material UI?

TailwindCSS hoạt động theo cơ chế Utility-First, cho phép xây dựng giao diện tùy biến hoàn toàn theo mã màu thương hiệu (#06c1d4) mà không cần ghi đè (override) CSS. Khi build bản production, TailwindCSS tự động thanh lọc (Purge) toàn bộ các class không sử dụng, giúp tệp CSS đầu ra có dung lượng cực nhỏ (< 15KB).

5. Dữ liệu tin nhắn tư vấn được lưu trữ và bảo mật như thế nào?

Mỗi đoạn hội thoại được lưu trữ trực tiếp trong collection Message của MongoDB gắn với Id_User và nhãn vai trò Role. Quá trình truyền tải dữ liệu qua kênh WebSocket được mã hóa bằng giao thức bảo mật WSS (WebSocket Secure), ngăn chặn hoàn toàn các nguy cơ tấn công nghe lén (Man-In-The-Middle).


Kết luận

Đồ án tốt nghiệp "Xây dựng Website bán Điện Thoại và Tablet" của sinh viên Dương Sơn Bá đã giải quyết xuất sắc bài toán xây dựng nền tảng thương mại điện tử chuyên sâu cho ngành hàng thiết bị số. Bằng việc phối hợp linh hoạt giữa các công nghệ hiện đại—Node.js, Express.js, MongoDB, TailwindCSS và React Native—dự án đã chứng minh được tính khả thi cao, khả năng xử lý mượt mà và tối ưu hóa chi phí vận hành cho doanh nghiệp.

Đây không chỉ là một sản phẩm phần mềm hoàn chỉnh phục vụ đánh giá tốt nghiệp mà còn là một bộ khung kiến trúc (framework template) chất lượng cao, có giá trị ứng dụng thực tiễn lớn trong việc chuyển đổi số cho các doanh nghiệp bán lẻ vừa và nhỏ hiện nay.