Bối cảnh và vấn đề nghiên cứu

Khóa luận tốt nghiệp "Xây dựng website bán hàng đặc sản Tây Nguyên có tích hợp chat box hỗ trợ khách hàng" do hai sinh viên Phan Tín Tưởng và Nguyễn Hoàng Nhật thực hiện dưới sự hướng dẫn của ThS. Võ Ngọc Tân tại Khoa Khoa học và Kỹ thuật Thông tin, Trường Đại học Công nghệ Thông tin – Đại học Quốc gia TP. Hồ Chí Minh (năm 2022).

Lý do chọn đề tài và bối cảnh thực tiễn

Theo số liệu thống kê được nhóm tác giả trích dẫn về thị trường thương mại điện tử (TMĐT) Việt Nam giai đoạn 2017–2022, doanh thu B2C liên tục tăng trưởng mạnh mẽ; dự báo đến năm 2022, tốc độ tăng trưởng đạt khoảng 20% và quy mô thị trường đạt khoảng 16,4 tỷ USD. Ứng dụng công nghệ thông tin vào thương mại điện tử giúp đơn giản hóa đáng kể quy trình mua bán và thanh toán hàng hóa.

Về mặt thực tiễn vùng miền, Tây Nguyên sở hữu nguồn nông sản và ẩm thực phong phú với các mặt hàng đặc sản nổi bật như cà phê, mắc ca, mật ong, sầu riêng. Tuy nhiên, người nông dân địa phương gặp nhiều khó khăn trong việc tìm kiếm đầu ra ổn định và thường xuyên chịu tình trạng bị ép giá. Quy trình phân bổ nông sản truyền thống từ người sản xuất đến người tiêu dùng phải trải qua nhiều khâu trung gian, gây lãng phí thời gian và tăng chi phí lưu thông. Bên cạnh đó, các đặc sản Tây Nguyên hiện chỉ được quảng bá nhỏ lẻ, chưa hình thành kênh phân phối trực tuyến mang thương hiệu tập trung. Từ thực tế này, nhóm tác giả đề xuất xây dựng hệ thống website thương mại điện tử mang tên taynguyenfood.com tích hợp tính năng trò chuyện trực tuyến (chat box) nhằm kết nối trực tiếp nhà sản xuất với người mua, hỗ trợ giải đáp thắc mắc về sản phẩm.

Mục tiêu và nhiệm vụ nghiên cứu

Mục tiêu nghiên cứu tổng quát được xác định là: Tạo ra website bán hàng đặc sản Tây Nguyên tích hợp chat box hỗ trợ khách hàng.

Để đạt được mục tiêu trên, tác giả đề ra 3 nhiệm vụ nghiên cứu cụ thể:

  1. Tìm hiểu quy trình bán hàng từ nhà cung cấp đến tay người tiêu dùng.
  2. Tìm hiểu các thiết kế hệ thống bán hàng trực tuyến.
  3. Tìm hiểu các thư viện, framework lập trình website bao gồm Reactjs, Nextjs, Expressjs, Socket.IO cùng các công cụ hỗ trợ như Visual Studio, XAMPP và Docker Desktop.

Đối tượng và phạm vi nghiên cứu

  • Đối tượng nghiên cứu: Quy trình phân tích, thiết kế và xây dựng hệ thống website thương mại điện tử bán nông sản; kỹ thuật giao tiếp thời gian thực hỗ trợ khách hàng qua chat box.
  • Phạm vi nghiên cứu: Giới hạn trong khuôn khổ phát triển hệ sinh thái website bán lẻ và bán buôn nông sản Tây Nguyên mang nhãn hiệu taynguyenfood (tên miền dự kiến taynguyenfood.com), triển khai thử nghiệm chức năng trên môi trường máy chủ cục bộ (local).

Cơ sở lý thuyết và phương pháp

Khung lý thuyết và mô hình khảo sát

Nghiên cứu áp dụng quy trình phân tích và thiết kế hệ thống thông tin theo mô hình tương tác hướng đối tượng (UML use case, actor, sơ đồ luồng hoạt động - activity diagram) và thiết kế cơ sở dữ liệu quan hệ (Entity Relationship Diagram - ERD). Hệ thống được định hình dựa trên mô hình kiến trúc phân tầng (Multi-tier Architecture) tách biệt giữa giao diện người dùng (Client/Frontend), dịch vụ nghiệp vụ (Backend RESTful API), máy chủ giao tiếp thời gian thực (Socket Server) và hệ quản trị cơ sở dữ liệu.

Phương pháp nghiên cứu

Nhóm tác giả sử dụng phương pháp khảo sát, phân tích so sánh hiện trạng các nền tảng bán lẻ đặc sản Tây Nguyên đang vận hành trên thị trường nhằm xác định ưu điểm, nhược điểm, làm căn cứ thiết kế hệ thống mới:

Website khảo sát Công nghệ sử dụng Mô hình kinh doanh Hạn chế ghi nhận trong văn bản
Website 1 CMS WordPress, CSDL MySQL Bán sỉ - Chỉ phân phối qua đại lý bán lẻ, chưa kết nối trực tiếp nông dân với người tiêu dùng.
- Đặt hàng thủ công, phức tạp, không đáp ứng lượng truy cập đặt hàng lớn.
- Tốc độ tải trang chậm; giao diện xuất hiện lỗi thiết kế.
- Chưa có kênh chat trực tuyến để hỗ trợ khách hàng.
Website 2 Framework .NET, CSDL SQL Server Bán lẻ - Quy trình đặt hàng truyền thống qua nhiều bước, kéo dài thời gian mua sắm.
- Thiếu công cụ chat box tương tác thời gian thực.

Nguồn dữ liệu

Dữ liệu nghiên cứu bao gồm: báo cáo số liệu doanh thu thương mại điện tử Việt Nam giai đoạn 2017–2022 (doanh thu B2C và tỷ lệ tăng trưởng); thông tin đặc tính và hình ảnh các nhóm sản phẩm đặc sản vùng Tây Nguyên (cà phê, sầu riêng, mắc ca, mật ong...); danh mục bảng khảo sát phân tích chức năng quản trị viên và người tiêu dùng.


Thiết kế và triển khai hệ thống

Kiến trúc công nghệ hệ thống

Hệ thống taynguyenfood được phân chia thành các khối thành phần độc lập:

Thành phần Công nghệ / Thư viện Vai trò kỹ thuật theo văn bản
Hệ quản trị CSDL MySQL (qua XAMPP) Lưu trữ dữ liệu quan hệ; tận dụng ưu thế phổ biến (top CSDL năm 2022 theo khảo sát Stack Overflow), tính ổn định cao, khả năng nhân bản gốc và hiệu suất tốt qua các tiêu chuẩn TPC-H, TPC-DS.
Backend API Express.js (Node.js) Xây dựng hệ thống REST API theo cơ chế xử lý bất đồng bộ, tiếp nhận khối lượng kết nối cao trong thời gian ngắn; sử dụng cấu trúc mã nguồn JavaScript đồng bộ giữa frontend và backend.
Frontend Khách hàng Next.js Xây dựng giao diện hiển thị phía người dùng với cơ chế Server-Side Rendering (SSR) và Incremental Static Regeneration (ISR), tối ưu hóa tốc độ tải trang, tự động chia tách mã nguồn (code splitting) và hỗ trợ công tác SEO.
Frontend Quản trị React.js Xây dựng trang điều khiển dành cho quản trị viên theo kiến trúc Single Page Application (SPA); tận dụng cơ chế DOM ảo (Virtual DOM) để tái kết xuất có chọn lọc các component giao diện.
Realtime Chat Server Socket.IO (Client & Server) Thiết lập kết nối hai chiều thời gian thực thông qua cơ chế namespace, ghép kênh TCP, cơ chế dự phòng HTTP long-polling và nhịp kiểm tra kết nối Ping/Pong tự động phục hồi.
Cổng thanh toán VNPAY Xử lý thanh toán trực tuyến cho các giao dịch đơn hàng của khách hàng.
Đóng gói môi trường Docker Desktop Ảo hóa vùng chứa, cách ly môi trường ứng dụng khỏi hạ tầng vật lý, rút ngắn thời gian khởi động so với máy ảo thông thường.
[Trình duyệt Khách hàng (Next.js)]  <--- HTTP / REST ---> [Backend Server (Express.js)] <---> [CSDL MySQL]
[Trình duyệt Quản trị (React.js)]    <--- HTTP / REST ---> [Backend Server (Express.js)]
[Giao diện Chat Box Khách/Admin]     <--- WebSockets (Socket.IO) ---> [Socket Server]
[Khách hàng thanh toán]              <--- Redirect / Webhook ---> [Cổng VNPay]

Môi trường thử nghiệm cục bộ

Toàn bộ hệ thống được cài đặt và vận hành kiểm thử trên cấu hình phần cứng:

  • Dòng máy: Laptop Asus G750JX.
  • Hệ điều hành: Microsoft Windows 10 Pro.
  • Bộ nhớ trong (RAM): 16 GB.
  • Ổ đĩa lưu trữ: Ổ cứng SSD dung lượng 237 GB.

Nội dung chính theo từng chương

Chương 1. Tổng quan đề tài

Chương 1 trình bày bối cảnh chung của nền kinh tế số và sự phát triển của thương mại điện tử B2C tại Việt Nam với tốc độ tăng trưởng đạt khoảng 20% vào năm 2022. Tác giả phân tích thực trạng tiêu thụ nông sản Tây Nguyên: phụ thuộc vào khâu trung gian, tình trạng bị ép giá, thiếu hụt kênh quảng bá số chuyên biệt. Từ đó, xác định mục tiêu xây dựng nền tảng taynguyenfood.com, đặt ra ba nhiệm vụ nghiên cứu và tiến hành khảo sát so sánh hai hệ thống website bán nông sản sẵn có (nền tảng WordPress/MySQL và .NET/SQL Server) nhằm chỉ ra các điểm yếu cần khắc phục về tốc độ tải, trải nghiệm đặt hàng và tính năng trò chuyện trực tuyến.

Chương 2. Phân tích thiết kế hệ thống

Chương này xác định các tác nhân và chi tiết hóa toàn bộ các trường hợp sử dụng (use case) của hệ thống:

  • Tác nhân:
    1. Quản trị viên (Admin): Nắm quyền hạn cao nhất trong hệ thống; thực hiện các quyền xem, thêm mới, sửa, xóa, tìm kiếm, xuất dữ liệu và khóa tài khoản.
    2. Người dùng (Khách hàng): Đóng vai trò người thụ hưởng dịch vụ mua sắm, giới hạn trong phạm vi các quyền người dùng cuối.
  • Chức năng phía Quản trị viên (10 nhóm use case): Đăng nhập; Đăng xuất; Quản lý sản phẩm; Quản lý bình luận sản phẩm; Quản lý đánh giá sản phẩm; Quản lý tin tức; Quản lý bình luận tin tức; Quản lý đơn hàng (xem chi tiết, xóa, thay đổi trạng thái xử lý, xuất file Excel, in đơn hàng hàng loạt); Quản lý người dùng (xem danh sách, tìm kiếm, khóa hoặc mở khóa tài khoản); Quản lý tin nhắn chat (tiếp nhận danh sách phòng chat và trả lời phản hồi khách hàng).
  • Chức năng phía Người dùng (14 use case): Đăng ký; Đăng nhập; Đăng xuất; Xem sản phẩm; Tìm kiếm sản phẩm (hỗ trợ tìm kiếm theo tên gần đúng, hiển thị sản phẩm gợi ý nếu không có kết quả khớp); Bình luận sản phẩm; Đánh giá sản phẩm (tính điểm trung bình cộng hiển thị lên giao diện); Xem tin tức; Bình luận tin tức; Quản lý giỏ hàng (thêm, xóa, chỉnh sửa số lượng; dữ liệu giỏ hàng được đồng bộ hóa khi chuyển đổi thiết bị đăng nhập); Đặt hàng; Hủy đơn hàng; Thanh toán trực tuyến (thông qua cổng VNPay hoặc phương thức thanh toán khi nhận hàng); Quản lý chat trực tuyến với quản trị viên.
  • Toàn bộ các luồng thao tác trọng yếu đều được mô hình hóa qua các lưu đồ (đăng nhập quản trị, đăng ký/đăng nhập khách hàng, lưu đồ quy trình đặt hàng, lưu đồ hủy đơn hàng).

Chương 3. Công cụ và ngôn ngữ lập trình

Chương 3 tập trung phân tích lý do lựa chọn, ưu điểm, nhược điểm và quy trình cài đặt các công nghệ cốt lõi cấu thành dự án:

  • MySQL: Trình bày các ưu điểm về thời gian cài đặt nhanh, độ ổn định sau hơn 25 năm phát triển, đáp ứng các tiêu chuẩn TPC-H/TPC-DS; nhược điểm về giới hạn dung lượng trong phiên bản miễn phí.
  • Express.js: Nhấn mạnh ưu thế định tuyến REST API tốc độ cao, khả năng bất đồng bộ của Node.js; nêu rõ mặt hạn chế liên quan đến kiến trúc đơn luồng (single-thread) và độ phức tạp khi quản lý mã nguồn bất đồng bộ.
  • React.js: Phân tích cơ chế Single Page Application, Virtual DOM giúp giảm tải việc render lại trang; nhược điểm về vòng đời công nghệ thay đổi quá nhanh và cú pháp JSX gây khó khăn bước đầu cho lập trình viên.
  • Next.js: Trình bày 6 nguyên tắc ban đầu của nền tảng; nêu bật khả năng tối ưu hóa SEO thông qua SSR và ISR so với React thuần túy; nhược điểm về cấu trúc định tuyến tập tin (file-based routing) khó tùy biến sâu.
  • Socket.IO: Phân tích cơ chế hoạt động theo sự kiện, cấu trúc namespace, tính năng Ping/Pong duy trì kết nối; hạn chế về việc thiếu cơ chế mã hóa đầu cuối, không tích hợp sẵn hệ thống cấp lại token xác thực và tối ưu kém trên mô hình phân tán đa vùng (multi-region).
  • Docker: Nêu các ưu điểm về mức tiêu thụ bộ nhớ thấp, tốc độ khởi động tức thời; nhược điểm về sự hạn chế khi ứng dụng yêu cầu giao diện đồ họa (GUI) phức tạp, khó khăn khi quản lý nhiều container lớn và thiếu công cụ sao lưu dữ liệu tự động.

Chương 4. Cơ sở dữ liệu

Chương 4 thiết kế cấu trúc lưu trữ gồm sơ đồ quan hệ thực thể (ERD) và đặc tả chi tiết 16 bảng dữ liệu:

Tên bảng dữ liệu Vai trò và chức năng lưu trữ theo văn bản
admin Lưu trữ thông tin tài khoản đăng nhập và phân quyền của Quản trị viên.
user Lưu thông tin người dùng (id, username, fullname, phone, createdAt, updatedAt...).
group_product Danh mục phân loại các nhóm sản phẩm nông sản (id, name, param...).
product Thông tin chi tiết sản phẩm: mã, tên, tiêu đề, mô tả, nội dung chi tiết, đơn giá (price), lượt xem, số lượng tồn kho (amount), tình trạng, khuyến mãi (sale), quy cách đóng gói kích thước (height, length, weight, width).
image_product Đường dẫn lưu trữ hình ảnh minh họa cho từng sản phẩm.
comment_product Nội dung phản hồi, ý kiến bình luận của khách hàng về sản phẩm.
ratings Điểm đánh giá sản phẩm (rate kiểu FLOAT) liên kết giữa người dùng và sản phẩm.
group_blog Phân nhóm danh mục các bài viết tin tức (id, name, param...).
blog Nội dung các bài viết tin tức: tiêu đề, mô tả tóm tắt, nội dung chi tiết (detail kiểu TEXT), lượt xem, trạng thái hiển thị.
images_blog Danh sách hình ảnh đính kèm theo bài viết tin tức.
comment_blog Bình luận của người dùng tương tác dưới mỗi bài viết tin tức.
cart_item Lưu trữ các mặt hàng được khách hàng chọn đưa vào giỏ trước khi tạo đơn hàng chính thức.
order Lưu trữ thông tin tổng quát đơn đặt hàng: người mua, địa chỉ nhận hàng (tỉnh/thành, quận/huyện, xã/phường), số điện thoại, hình thức thanh toán, phí vận chuyển (shipping), mã giảm giá (promo), tổng tiền thanh toán (grandtotal), trạng thái xử lý đơn hàng.
order_item Chi tiết số lượng, đơn giá của từng sản phẩm trong mỗi đơn đặt hàng.
rooms_chat Quản lý danh sách các phòng/nhóm hội thoại giữa khách hàng và quản trị viên.
messages_chat Nội dung tin nhắn văn bản trao đổi thời gian thực, lưu vết thời gian gửi.

Chương 5. Giao diện và kết quả thử nghiệm

Chương 5 minh họa toàn bộ các giao diện đồ họa đã được hiện thực hóa trong thực tế:

  • Giao diện Quản trị viên (Admin): Trang đăng nhập quản trị; trang chủ dashboard; trang danh sách sản phẩm; trang tạo mới và cập nhật thông tin sản phẩm; trang quản lý đánh giá và bình luận sản phẩm; trang danh sách tin tức và cập nhật tin tức; trang danh sách đơn hàng, xem đơn hàng chi tiết và trang in hóa đơn trước khi đóng gói; trang quản lý danh sách người dùng; trang quản lý hội thoại chat trực tuyến.
  • Giao diện Khách hàng (User): Trang chủ website hiển thị banner và khối danh mục đặc sản; trang đăng ký/đăng nhập; trang danh mục sản phẩm và trang chi tiết sản phẩm; trang tìm kiếm sản phẩm; trang giỏ hàng; trang nhập thông tin giao hàng và chọn hình thức thanh toán; trang danh sách bài viết và chi tiết tin tức; trang cập nhật hồ sơ cá nhân; trang theo dõi lịch sử đơn hàng; cửa sổ popup chat trực tuyến góc màn hình.

Chương 6. Kết luận và hướng phát triển

Chương cuối tóm tắt các kết quả kỹ thuật đã hoàn thành: thiết kế thành công cơ sở dữ liệu quan hệ đồng bộ; hoàn thiện đầy đủ các chức năng quản trị và chức năng mua sắm phía người dùng; xây dựng cơ chế chat box thời gian thực thông qua Socket.IO. Song song đó, tác giả thừa nhận các mặt hạn chế còn tồn tại và vạch ra định hướng nâng cấp hệ thống trong tương lai.


Kết quả và đóng góp

Kết quả chính

  • Xây dựng hoàn chỉnh kiến trúc website bán hàng đặc sản Tây Nguyên gồm 2 phân hệ độc lập: cổng người dùng (Next.js) và cổng quản trị (React.js), kết nối thông suốt với máy chủ backend Express.js và cơ sở dữ liệu MySQL.
  • Thiết kế hệ thống cơ sở dữ liệu quan hệ gồm 16 bảng dữ liệu chuẩn hóa, phản ánh đầy đủ nghiệp vụ thương mại điện tử (sản phẩm, nhóm sản phẩm, giỏ hàng, đơn hàng, hóa đơn chi tiết, tài khoản, đánh giá, bình luận, bài viết và tin nhắn chat).
  • Tích hợp thành công kênh giao tiếp thời gian thực (realtime chat) sử dụng thư viện Socket.IO, cho phép khách hàng trao đổi trực tiếp với quản trị viên thông qua cửa sổ popup mà không cần tải lại trang.
  • Tích hợp chức năng thanh toán trực tuyến qua cổng thanh toán VNPay bên cạnh phương thức thanh toán tiền mặt khi nhận hàng.
  • Hoàn thiện tính năng xuất hóa đơn đơn hàng ra định dạng Excel và hỗ trợ in đơn hàng hàng loạt trong giao diện quản trị.

Giải pháp và kiến nghị của tác giả

  • Ứng dụng mô hình Server-Side Rendering (Next.js) cho cổng người tiêu dùng nhằm khắc phục triệt để nhược điểm tải trang chậm và hạn chế hỗ trợ SEO vốn có trên các nền tảng thương mại điện tử viết bằng WordPress hoặc React SPA truyền thống.
  • Đơn giản hóa quy trình đặt hàng, cho phép người dùng theo dõi lịch sử đơn hàng và thực hiện thao tác hủy đơn trực tiếp trên hệ thống nếu đơn hàng chưa xử lý.
  • Tận dụng cơ chế đồng bộ giỏ hàng (cart_item) theo tài khoản người dùng, đảm bảo dữ liệu giỏ hàng được giữ nguyên khi đăng nhập trên các thiết bị khác nhau.

Đóng góp so với các hệ thống trước

So với hai hệ thống website bán đặc sản Tây Nguyên đã khảo sát tại Chương 1, đồ án giải quyết được các điểm hạn chế cụ thể:

  1. Tạo kênh tương tác trực tiếp: Khắc phục nhược điểm thiếu vắng công cụ hỗ trợ trực tuyến bằng việc tích hợp chat box Socket.IO, rút ngắn thời gian tư vấn sản phẩm.
  2. Tối ưu quy trình mua sắm: Giảm bớt các bước đặt hàng trung gian phức tạp của hệ thống .NET cũ, hỗ trợ thanh toán điện tử VNPay.
  3. Cải thiện hiệu năng hiển thị: Ứng dụng kỹ thuật phân tách mã nguồn và kết xuất máy chủ của Next.js để tăng tốc độ tải trang so với website xây dựng bằng WordPress CMS.

Hạn chế và hướng nghiên cứu tiếp

Những hạn chế được văn bản ghi nhận

  • Môi trường triển khai: Hệ thống mới dừng lại ở mức độ triển khai thử nghiệm trên môi trường máy chủ cục bộ (localhost) trên một máy tính cá nhân (Laptop Asus G750JX), chưa đưa lên môi trường máy chủ thực tế (Production) hoặc hạ tầng đám mây.
  • Hạn chế của công nghệ tích hợp:
    • Thư viện Socket.IO chưa được tích hợp giải pháp mã hóa đầu cuối (End-to-End Encryption) cho nội dung tin nhắn; chưa có cơ chế tự động tạo và gia hạn mã thông báo (token) để bảo mật xác thực chuyên sâu; hoạt động trên thiết kế đơn vùng, dễ phát sinh độ trễ nếu mở rộng địa lý.
    • Cơ sở dữ liệu MySQL phiên bản miễn phí có giới hạn về dung lượng và lưu lượng truy cập đồng thời lớn, cần giải pháp tạo bộ nhớ đệm (cache) hoặc cụm máy chủ trả phí khi mở rộng quy mô.
    • Việc đóng gói bằng Docker mới thiết lập ở mức cơ bản, chưa xây dựng kịch bản quản lý tự động cho các cụm container phức tạp cũng như chưa cấu hình cơ chế sao lưu/phục hồi dữ liệu tự động.

Hướng phát triển của đề tài

  • Nâng cấp và triển khai hệ thống lên máy chủ thực tế trên nền tảng đám mây để phục vụ người dùng thực tế.
  • Tối ưu hóa cơ chế bảo mật cho phân hệ trò chuyện trực tuyến: triển khai mã hóa tin nhắn và tích hợp cơ chế xác thực người dùng bằng token định danh an toàn.
  • Cải thiện thuật toán tìm kiếm sản phẩm thông minh, mở rộng cơ chế gợi ý sản phẩm tự động theo thói quen mua hàng.
  • Nâng cấp hệ thống bộ nhớ đệm (caching) để cải thiện tốc độ truy vấn cơ sở dữ liệu khi lượng người dùng đồng thời tăng cao.

Giá trị tham khảo

Đồ án là tài liệu tham khảo phù hợp cho:

  • Sinh viên ngành Công nghệ Thông tin, Hệ thống Thông tin, Kỹ thuật Phần mềm: Cung cấp tài liệu tham khảo chi tiết về quy trình phân tích thiết kế một hệ thống thương mại điện tử hoàn chỉnh theo mô hình hiện đại sử dụng ngăn xếp công nghệ JavaScript/TypeScript (Next.js, React.js, Express.js, Node.js).
  • Người phát triển ứng dụng web thời gian thực: Tham khảo mô hình tích hợp Socket.IO vào hệ sinh thái thương mại điện tử để xử lý các luồng sự kiện phân chia theo phòng chat (room/namespace) giữa khách hàng và bộ phận quản trị.
  • Các đề tài xây dựng cổng nông sản số: Cung cấp cấu trúc cơ sở dữ liệu quan hệ (16 bảng) đặc thù cho các mặt hàng nông sản có quản lý quy cách đóng gói (kích thước, cân nặng), bình luận, đánh giá và tích hợp cổng thanh toán trực tuyến trong nước (VNPay).

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

1. Hệ thống taynguyenfood sử dụng những công nghệ lập trình chính nào cho các phân hệ?
Hệ thống sử dụng cơ sở dữ liệu quan hệ MySQL; máy chủ backend xây dựng bằng framework Express.js (Node.js); giao diện quản trị viên (Admin) phát triển bằng thư viện React.js theo mô hình Single Page Application; giao diện khách hàng (User) xây dựng bằng framework Next.js hỗ trợ Server-Side Rendering; tính năng chat box tương tác thời gian thực sử dụng thư viện Socket.IO; thanh toán trực tuyến qua cổng VNPay.

2. Điểm khác biệt về công nghệ giữa giao diện Quản trị viên và giao diện Khách hàng là gì?
Giao diện quản trị viên sử dụng React.js thuần nhằm tối ưu hóa các thao tác xử lý dữ liệu phức tạp trong trang điều khiển theo dạng SPA. Giao diện khách hàng sử dụng Next.js để tận dụng tính năng kết xuất phía máy chủ (SSR) và Incremental Static Regeneration, giúp tăng tốc độ tải trang ban đầu và tối ưu hóa khả năng hiển thị trên các công cụ tìm kiếm (SEO).

3. Cơ sở dữ liệu của hệ thống gồm bao nhiêu bảng và những bảng nào phục vụ trực tiếp cho tính năng chat box?
Cơ sở dữ liệu của hệ thống gồm tổng cộng 16 bảng dữ liệu. Trong đó, tính năng chat box được quản lý và lưu trữ thông qua 2 bảng chuyên biệt là rooms_chat (lưu trữ danh sách các phòng/nhóm chat giữa khách hàng và quản trị) và messages_chat (lưu trữ chi tiết nội dung tin nhắn và thời gian gửi).

4. Phân hệ Quản trị viên hỗ trợ những tính năng xử lý đơn hàng cụ thể nào?
Trong phân hệ quản lý đơn hàng, quản trị viên có thể xem danh sách đơn hàng, xem nội dung chi tiết từng đơn, thay đổi trạng thái xử lý đơn hàng, xóa đơn hàng, xuất toàn bộ dữ liệu đơn hàng ra file Excel và thực hiện in danh sách đơn hàng hàng loạt trước khi đóng gói.

5. Môi trường phần cứng và hạ tầng được tác giả sử dụng để thử nghiệm hệ thống có cấu hình như thế nào?
Hệ thống được đóng gói và thử nghiệm trên môi trường máy chủ cục bộ bằng Docker Desktop và XAMPP trên máy tính xách tay Asus G750JX, chạy hệ điều hành Microsoft Windows 10 Pro, trang bị bộ nhớ trong RAM 16 GB và ổ cứng SSD dung lượng 237 GB.


Kết luận

Khóa luận tốt nghiệp của tác giả Phan Tín Tưởng và Nguyễn Hoàng Nhật đã hoàn thành việc phân tích, thiết kế và hiện thực hóa hệ thống website thương mại điện tử taynguyenfood phục vụ kinh doanh đặc sản Tây Nguyên. Đề tài kết hợp thành công ngăn xếp công nghệ phổ biến bao gồm MySQL, Express.js, React.js, Next.js và Socket.IO, giải quyết đồng thời bài toán bán hàng số hóa và hỗ trợ khách hàng tức thời qua chat box. Mặc dù hệ thống còn giới hạn ở phạm vi thử nghiệm cục bộ và cần tăng cường bảo mật cho đường truyền tin nhắn, kết quả đạt được cung cấp mô hình tham khảo thực tiễn và đầy đủ cho việc xây dựng ứng dụng web thương mại điện tử hiện đại.