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

Khóa luận tốt nghiệp kỹ sư ngành Công nghệ phần mềm của sinh viên Đặng Minh Nhật và Đặng Phú Quý, dưới sự hướng dẫn của TS. Mai Anh Thơ tại Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh (thực hiện từ ngày 06/01/2025 đến ngày 08/06/2025), tập trung giải quyết bài toán chuyển dịch số trong lĩnh vực bán lẻ thời trang.

Bối cảnh thực tiễn được tác giả xác định dựa trên sự phát triển của cuộc cách mạng công nghiệp 4.0 và thương mại điện tử. Thị trường thời trang trực tuyến toàn cầu duy trì tốc độ tăng trưởng kép hằng năm (CAGR) khoảng 10–15%, đi kèm sự chuyển dịch mạnh mẽ của hành vi tiêu dùng sang các thiết bị di động. Nhóm tác giả chỉ ra rằng việc chỉ duy trì website đơn lẻ không còn đáp ứng đủ kỳ vọng về tính tiện lợi, đồng bộ và cá nhân hóa của khách hàng. Do đó, việc xây dựng một hệ sinh thái bán lẻ trực tuyến hoàn chỉnh trên cả hai nền tảng web và ứng dụng di động là yêu cầu cấp thiết nhằm mở rộng phạm vi tiếp cận, tối ưu hóa quy trình tiếp thị (SEO) và quản lý vận hành tập trung.

Mục đích chính của đề tài là xây dựng hệ thống kinh doanh trực tuyến hoàn chỉnh cho cửa hàng thời trang với 4 nhiệm vụ nghiên cứu cụ thể:

  1. Phát triển website thương mại điện tử: Xây dựng giao diện trực quan, tối ưu hóa hiển thị trên nhiều loại thiết bị, đảm bảo tốc độ tải trang, khả năng tối ưu hóa công cụ tìm kiếm (SEO), xử lý logic nghiệp vụ và quản trị cơ sở dữ liệu an toàn.
  2. Phát triển ứng dụng di động đa nền tảng: Xây dựng ứng dụng di động cho hệ điều hành iOS và Android, tối ưu hóa giao diện và trải nghiệm người dùng (UI/UX) theo đặc thù thiết bị cầm tay.
  3. Tích hợp các chức năng nghiệp vụ cốt lõi: Hoàn thiện quy trình quản lý danh mục, sản phẩm, biến thể (kích thước, màu sắc), giỏ hàng, đặt hàng, cổng thanh toán trực tuyến VNPay, quản trị đơn hàng, hồ sơ khách hàng, sổ địa chỉ và đánh giá sản phẩm đồng bộ giữa web và app.
  4. Đảm bảo trải nghiệm người dùng và hiệu suất hệ thống: Đảm bảo khả năng vận hành ổn định, phản hồi nhanh khi xử lý đồng thời nhiều phiên truy cập và thao tác nghiệp vụ.

Về đối tượng và phạm vi:

  • Đối tượng nghiên cứu: Các công nghệ phát triển web và ứng dụng di động (Next.js, Spring Boot, React Native với Expo, MySQL); các công nghệ phụ trợ và dịch vụ đám mây (Google Cloud Storage, Docker, mô hình ngôn ngữ lớn OpenAI/Gemini, Pinecone Vector Database); quy trình nghiệp vụ bán lẻ thời trang và hành vi người tiêu dùng trực tuyến.
  • Phạm vi nghiên cứu: Giới hạn trong việc thiết kế, xây dựng và kiểm thử hệ thống phần mềm gồm ba thành phần (Back-end Spring Boot, Front-end Web Next.js, Mobile App React Native). Hệ thống được hoàn thiện ở quy mô phục vụ nghiên cứu, kiểm thử chức năng và đánh giá kỹ thuật, chưa tối ưu hóa cho môi trường vận hành thương mại quy mô lớn.

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

Khóa luận áp dụng phương pháp nghiên cứu kỹ thuật phần mềm kết hợp khảo sát thực nghiệm và mô hình hóa hệ thống thông tin:

  • Phương pháp khảo sát đối chuẩn (benchmarking): Tiến hành phân tích cấu trúc chức năng, giao diện và luồng thao tác của hai hệ thống thương mại điện tử thời trang thực tế đang vận hành tại Việt Nam là Uniqlo và H&M.
Tiêu chí phân tích Hệ thống Uniqlo Việt Nam Hệ thống H&M Việt Nam
Ưu điểm nổi bật Danh mục phân tầng rõ ràng; có bảng quy đổi kích cỡ; gợi ý phối đồ; lưu sản phẩm yêu thích; xem danh sách cửa hàng. Bộ lọc tìm kiếm chi tiết (chất liệu, kiểu cổ, chiều dài tay); hỗ trợ mua hàng không cần tài khoản; theo dõi đổi trả hàng.
Hạn chế kỹ thuật Giao diện duyệt sản phẩm chưa mượt; thiếu đăng nhập qua mạng xã hội; cho phép người chưa mua hàng viết đánh giá; thiếu trợ lý ảo 24/7. Tốc độ tải dữ liệu và hình ảnh chậm; hoàn toàn không có hệ thống đánh giá sản phẩm; thiếu đăng nhập mạng xã hội; thiếu trợ lý ảo.
  • Phương pháp phân tích và thiết kế hệ thống hướng đối tượng (OOAD): Sử dụng ngôn ngữ mô hình hóa thống nhất (UML) để xây dựng lược đồ ca sử dụng (Use Case Diagram), đặc tả chi tiết kịch bản sử dụng và thiết kế lược đồ tuần tự (Sequence Diagram) cho từng tiến trình nghiệp vụ.
  • Thiết kế cơ sở dữ liệu quan hệ: Chuẩn hóa dữ liệu để xây dựng mô hình quan hệ quản lý thực thể sản phẩm thời trang đa biến thể và phân quyền nhiều cấp bậc.
  • Khung kiến trúc kỹ thuật: Kiến trúc phần mềm phân tầng Client-Server. Phần phụ trợ (Back-end) tổ chức theo dạng khối thống nhất (Monolithic) bằng Spring Boot, giao tiếp với các ứng dụng giao diện qua giao thức RESTful API. Hệ thống bổ sung một máy chủ phụ trợ độc lập phát triển bằng Next.js để chuyên trách điều phối tính năng trí tuệ nhân tạo (Chatbot AI).

Thiết kế và triển khai

Hệ thống mang tên EzStore, được phân rã thành các khối kiến trúc công nghệ chuyên biệt nhằm phân tách trách nhiệm giữa xử lý nghiệp vụ bán hàng và xử lý ngôn ngữ tự nhiên:

Thành phần hệ thống Công nghệ / Dịch vụ sử dụng Vai trò và nhiệm vụ kỹ thuật
EzStore API (Core Back-end) Spring Boot (Java), Spring Security, Hibernate/JPA Đóng vai trò trung tâm xử lý toàn bộ logic nghiệp vụ cốt lõi, quản lý giao dịch, phân quyền bảo mật và kết nối cơ sở dữ liệu quan hệ.
EzStore Server (AI Subsystem) Next.js, OpenAI API, Gemini API, Pinecone Vector DB Máy chủ chuyên biệt phụ trách xử lý logic truy vấn ngôn ngữ tự nhiên, tìm kiếm ngữ nghĩa qua vector embedding phục vụ Chatbot hỗ trợ 24/7.
EzStore Client (Web) Next.js (React.js), SSR & CSR Giao diện web bán hàng dành cho người tiêu dùng cuối, tối ưu hóa tốc độ tải trang, lập chỉ mục tìm kiếm (SEO) và hỗ trợ giao dịch trực tuyến.
EzStore Admin (Web) Next.js (React.js) Cổng thông tin quản trị dành cho nhân viên và ban quản lý vận hành đơn hàng, danh mục, kho bãi và chương trình khuyến mãi.
EzStore App (Mobile) React Native, Expo, Zustand, expo-router Ứng dụng di động đa nền tảng (iOS/Android) dành cho khách hàng mua sắm, quản lý trạng thái bằng Zustand, điều hướng qua expo-router.
Cơ sở dữ liệu chính MySQL DBMS Lưu trữ toàn bộ dữ liệu có cấu trúc bao gồm thông tin người dùng, bảng phân quyền, sản phẩm, biến thể, giỏ hàng và đơn hàng.
Dịch vụ tích hợp bên thứ ba VNPay, Giao Hàng Nhanh (GHN), Goong Map API, Google Cloud Storage, Google OAuth 2.0, Firebase Xử lý thanh toán số (VNPay), tự động tính cước vận chuyển (GHN), tính toán khoảng cách địa lý (Goong Map), lưu trữ hình ảnh (Google Cloud), xác thực tài khoản và gửi thông báo đẩy (Firebase).

Hệ thống cơ sở dữ liệu quan hệ được xây dựng dựa trên 11 bảng trọng tâm: users (tài khoản), profile (thông tin cá nhân), roles (vai trò), permissions (quyền hạn), permission_role (bảng liên kết phân quyền), shipping_profiles (sổ địa chỉ nhận hàng), categories (danh mục hàng hóa), products (thông tin sản phẩm gốc), product_variants (biến thể kích cỡ, màu sắc và số lượng tồn), product_images (hình ảnh sản phẩm) và carts (giỏ hàng).

Hệ thống được kiểm thử chức năng thông qua việc thiết lập các kịch bản kiểm thử (Test cases) chi tiết cho từng nghiệp vụ: Đăng ký tài khoản (xác minh định dạng email và liên kết kích hoạt), Đăng nhập (xác thực mật khẩu và ủy quyền Google OAuth 2.0), Đăng xuất, Khôi phục mật khẩu (gửi mã qua email), Thay đổi thông tin tài khoản, Đổi mật khẩu, Tìm kiếm sản phẩm, Xem chi tiết sản phẩm và Hiển thị danh mục hàng hóa.

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

Chương 1: Khảo sát hiện trạng và xác định yêu cầu

Chương này thiết lập cơ sở thực tiễn cho dự án thông qua việc đánh giá hai nền tảng thương mại điện tử Uniqlo và H&M. Từ các hạn chế được nhận diện (trải nghiệm di động chưa liền mạch, thiếu liên kết mạng xã hội, chưa kiểm soát độ tin cậy của đánh giá và thiếu chatbot hỗ trợ), tác giả xác định phạm vi phục vụ gồm 4 nhóm tác nhân: Khách hàng (người dùng chưa đăng ký và đã đăng ký), Nhân viên (vận hành đơn hàng và kho), Quản lý (điều hành danh mục, khuyến mãi, bảng điều khiển thống kê) và Quản trị viên (toàn quyền hệ thống và quản lý tài khoản).

Hệ thống yêu cầu nghiệp vụ được chuẩn hóa qua 32 tiêu chí (YC1–YC32), đi kèm hệ thống 4 quy định ràng buộc:

  • QĐ01: Đăng ký tài khoản yêu cầu mật khẩu tối thiểu 6 ký tự, bắt buộc kích hoạt qua thư điện tử và chấp thuận điều khoản bảo mật.
  • QĐ02: Đăng nhập phân biệt chính xác chữ hoa và chữ thường cho cả tài khoản và mật khẩu.
  • QĐ03: Khôi phục mật khẩu yêu cầu xác thực qua địa chỉ thư điện tử đã đăng ký, độ dài tối thiểu 6 ký tự.
  • QĐ04: Mật khẩu do quản trị viên cấp phát phải chứa tối thiểu 1 ký tự viết hoa (A–Z), 1 ký tự viết thường (a–z), 1 chữ số (0–9) và 1 ký tự đặc biệt (@, #, $, %, !). Bên cạnh đó, chương này xác lập 5 nhóm yêu cầu hệ thống (YCHT1–YCHT5: Tìm kiếm hiệu quả, Quản lý sản phẩm linh hoạt, Giỏ hàng và thanh toán an toàn, Báo cáo và phân tích, Sao lưu phục hồi) cùng 7 tiêu chuẩn phi chức năng (Hiệu suất, Khả năng mở rộng, Bảo mật, Độ tin cậy, Thời gian phản hồi, Tính sẵn sàng và Tính tương thích).

Chương 2: Cơ sở lý thuyết

Chương 2 trình bày cơ sở công nghệ và kiến trúc phân tầng Client-Server. Khối Back-end sử dụng Spring Boot đóng gói dạng JAR/WAR độc lập máy chủ, kết hợp hệ quản trị cơ sở dữ liệu MySQL thông qua tầng giao tiếp JPA/Hibernate. Nhóm nghiên cứu phân tích việc phân tách dịch vụ Chatbot AI thành một khối chạy máy chủ Next.js riêng biệt kết hợp cơ sở dữ liệu vector Pinecone nhằm tối ưu hóa việc truy xuất dữ liệu ngữ nghĩa mà không làm ảnh hưởng đến hiệu năng của khối xử lý nghiệp vụ chính. Phía Front-end làm rõ nguyên lý kết hợp giữa Server-Side Rendering (SSR) và Client-Side Rendering (CSR) trong Next.js để tối ưu SEO và tải trang, đồng thời giới thiệu giải pháp phát triển ứng dụng di động đa nền tảng React Native với bộ công cụ Expo, thư viện điều hướng expo-router và giải pháp quản lý trạng thái tập trung Zustand.

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

Chương 3 chi tiết hóa kiến trúc logic của phần mềm thông qua hệ thống lược đồ ca sử dụng tổng quát và các đặc tả ca sử dụng chi tiết (từ UC-01 đến UC-04: Đăng ký, Đăng nhập, Đăng xuất, Khôi phục mật khẩu). Tiến trình trao đổi thông điệp giữa các đối tượng được trực quan hóa qua 24 lược đồ tuần tự (Sequence Diagram), bao quát toàn bộ luồng nghiệp vụ: xác thực qua Google, tìm kiếm, lọc đa tiêu chí, quản lý giỏ hàng, quy trình thanh toán cổng VNPay, xử lý kết quả giao dịch IPN, quản lý sổ địa chỉ giao hàng và quy trình đánh giá sản phẩm. Phần thiết kế cơ sở dữ liệu chuẩn hóa cấu trúc 11 bảng thực thể. Phần thiết kế giao diện minh họa chi tiết hệ thống màn hình cho cả ba ứng dụng: Web Client (9 trang chính), Mobile App (17 màn hình chức năng) và Web Admin (10 trang quản trị chuyên sâu từ quản lý tồn kho đến tiếp nhận yêu cầu đổi trả).

Chương 4: Cài đặt và kiểm thử

Chương 4 mô tả quy trình thiết lập môi trường phát triển cục bộ, cài đặt các gói phụ thuộc và cấu hình kết nối các dịch vụ bên thứ ba. Nhóm tác giả thực hiện kiểm thử chức năng thông qua bộ kịch bản kiểm thử (Test cases) chuẩn hóa cho 9 phân hệ chức năng người dùng chính, ghi nhận các trường hợp kiểm thử hợp lệ và ngoại lệ để đảm bảo hệ thống phản hồi chính xác theo các quy định nghiệp vụ đã đặt ra tại Chương 1.

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

Về sản phẩm kỹ thuật, đề tài đã xây dựng thành công một hệ sinh thái thương mại điện tử đa nền tảng hoàn chỉnh mang tên EzStore, bao gồm:

  • Một ứng dụng web khách hàng (Next.js) và một ứng dụng web quản trị (Next.js) vận hành đồng bộ.
  • Một ứng dụng di động đa nền tảng (React Native/Expo) tương thích với cả hệ điều hành Android và iOS.
  • Một khối xử lý dịch vụ trung tâm (Spring Boot) cung cấp toàn bộ RESTful API cho hoạt động thương mại.
  • Một máy chủ dịch vụ trí tuệ nhân tạo riêng biệt tích hợp các mô hình ngôn ngữ lớn (OpenAI, Gemini) và cơ sở dữ liệu vector Pinecone.

Về mặt đóng góp giải pháp so với các hệ thống khảo sát thực tế:

  • Khắc phục lỗ hổng trong hệ thống đánh giá sản phẩm của Uniqlo và H&M bằng cách áp dụng quy trình kiểm soát nghiệp vụ: chỉ những tài khoản khách hàng đã mua sản phẩm thành công mới được cấp quyền chấm điểm thang 5 sao và viết nhận xét (YC21).
  • Bổ sung cơ chế xác thực linh hoạt thông qua Google OAuth 2.0 song song với xác thực tài khoản truyền thống, giải quyết nhược điểm phải tạo tài khoản thủ công phức tạp của các nền tảng hiện hữu.
  • Tự động hóa khâu tính cước vận chuyển và đo đạc khoảng cách thực tế thông qua việc kết nối API của đơn vị vận chuyển Giao Hàng Nhanh (GHN) và Goong Map API.
  • Tích hợp cổng thanh toán trực tuyến nội địa VNPay và hệ thống thông báo đẩy Firebase trực tiếp về thiết bị di động của người dùng.

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

Theo tự đánh giá của nhóm tác giả trong văn bản khóa luận:

  • Phạm vi hoàn thiện hệ thống hiện dừng lại ở mức độ phục vụ nghiên cứu thực nghiệm, kiểm thử chức năng và đánh giá kỹ thuật; mã nguồn và kiến trúc chưa được tối ưu hóa chuyên sâu để đưa vào vận hành thương mại ở quy mô tải lớn.
  • Các tính năng hỗ trợ chuyên sâu được ghi nhận trong phần phân tích bài toán (như công cụ mô phỏng trực quan chọn kích cỡ trang phục, tra cứu tình trạng hàng tồn kho tại cửa hàng vật lý theo thời gian thực) chưa được cài đặt trong phiên bản hiện tại.
  • Hướng phát triển tiếp theo của đề tài tập trung vào việc hoàn thiện các tính năng nâng cao, tối ưu hóa hiệu năng chịu tải của máy chủ API và mở rộng khả năng phản hồi tự động của trợ lý ảo AI trong tư vấn phối đồ thời trang.

Giá trị tham khảo

Tài liệu khóa luận có giá trị tham khảo chuyên môn đối với sinh viên chuyên ngành Công nghệ thông tin, Kỹ thuật phần mềm và Hệ thống thông tin đang thực hiện đồ án tốt nghiệp hoặc xây dựng các hệ thống thương mại điện tử đa nền tảng:

  • Cung cấp mô hình tham chiếu chi tiết về cách đặc tả yêu cầu phần mềm theo cấu trúc phân rã chuẩn hóa (Bảng mã yêu cầu YC, Bảng quy định nghiệp vụ QĐ, Bảng yêu cầu hệ thống YCHT và Yêu cầu phi chức năng).
  • Cung cấp giải pháp thiết kế cơ sở dữ liệu quan hệ hoàn chỉnh cho bài toán kinh doanh thời trang, đặc biệt là cấu trúc tách biệt giữa bảng sản phẩm gốc (products) và bảng biến thể đa thuộc tính kích thước, màu sắc (product_variants).
  • Tài liệu hóa quy trình tích hợp các dịch vụ bên thứ ba phổ biến trong hệ sinh thái ứng dụng tại Việt Nam (VNPay, GHN, Goong Map, Google OAuth 2.0, Firebase và Pinecone Vector DB).

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

1. Kiến trúc phân tầng của hệ thống EzStore có điểm gì đặc biệt trong việc xử lý tính năng Chatbot AI?

Hệ thống không tích hợp logic xử lý ngôn ngữ tự nhiên trực tiếp vào Back-end Spring Boot mà tách thành một máy chủ riêng biệt (EzStore Server) xây dựng trên Next.js. Máy chủ này chịu trách nhiệm giao tiếp với các mô hình ngôn ngữ lớn (OpenAI, Gemini) và truy vấn cơ sở dữ liệu vector Pinecone để phục vụ tính năng trợ lý ảo 24/7 mà không ảnh hưởng đến hiệu năng của máy chủ nghiệp vụ cốt lõi.

2. Quy trình đánh giá sản phẩm của hệ thống giải quyết bất cập của hệ thống Uniqlo như thế nào?

Khảo sát hiện trạng cho thấy Uniqlo cho phép cả người chưa mua hàng viết nhận xét, dẫn đến dữ liệu đánh giá thiếu tin cậy. Khóa luận giải quyết vấn đề này tại nghiệp vụ YC21: hệ thống ràng buộc chỉ những khách hàng đã thực hiện mua sản phẩm mới có quyền chấm điểm theo thang điểm 5 sao, gửi nhận xét và cập nhật nội dung đánh giá của chính mình.

3. Quy định đặt mật khẩu cấp bởi quản trị viên (QĐ04) được thiết lập như thế nào?

Theo quy định QĐ04 trong văn bản khóa luận, mật khẩu tài khoản do quản trị viên cấp phát bắt buộc phải thỏa mãn đồng thời 4 điều kiện: tối thiểu 1 ký tự viết hoa (A–Z), 1 ký tự viết thường (a–z), 1 ký tự số (0–9) và 1 ký tự đặc biệt (ví dụ: @, #, $, %, !).

4. Ứng dụng di động EzStore App được xây dựng bằng những công nghệ nào?

Ứng dụng di động được xây dựng bằng framework React Native với công cụ hỗ trợ Expo, cho phép xuất bản ứng dụng trên cả iOS và Android từ một codebase duy nhất. Ứng dụng sử dụng expo-router để quản lý điều hướng màn hình và thư viện Zustand để quản lý trạng thái toàn cục.

5. Hệ thống tích hợp dịch vụ nào để tự động tính toán phí vận chuyển đơn hàng?

Hệ thống tích hợp đồng thời hai dịch vụ: dịch vụ vận chuyển Giao Hàng Nhanh (GHN) để tính toán biểu phí giao hàng tự động và dịch vụ bản đồ Goong Map API để tính toán chính xác khoảng cách giao vận thực tế giữa cửa hàng và địa chỉ người nhận.

Kết luận

Khóa luận tốt nghiệp của sinh viên Đặng Minh Nhật và Đặng Phú Quý đã hoàn thành mục tiêu xây dựng hệ thống kinh doanh trực tuyến đa nền tảng EzStore cho cửa hàng thời trang. Đề tài kết hợp kiến trúc nguyên khối Spring Boot cho nghiệp vụ cốt lõi với máy chủ Next.js chuyên biệt cho Chatbot AI, phục vụ đồng thời giao diện web Next.js và ứng dụng di động React Native. Mặc dù cần tiếp tục tối ưu hóa để vận hành ở quy mô thương mại lớn, công trình đã thể hiện quy trình phân tích, thiết kế và cài đặt bài bản một hệ sinh thái thương mại điện tử hoàn chỉnh.