Bối cảnh và vấn đề nghiên cứu
Trong bối cảnh chuyển đổi số và sự phổ biến của các thiết bị di động, ngành thương mại điện tử (TMĐT) thời trang chứng kiến sự tăng trưởng liên tục. Theo các số liệu khảo sát thị trường được trích dẫn trong đồ án:
- Báo cáo của Milieu Insight đối với người tiêu dùng Đông Nam Á trên nền tảng Lazada cho thấy 73% người dùng xem việc mua sắm trực tuyến là một phần không thể thiếu trong đời sống hàng ngày, tăng đáng kể so với mức khoảng 60% của hai năm trước đó.
- Nền kinh tế số tại Việt Nam ghi nhận tốc độ tăng trưởng nổi bật trong khu vực với tổng giá trị hàng hóa (GMV) dự kiến tăng 28% từ 18 tỷ USD (năm 2021) lên 23 tỷ USD, trong đó động lực chính đến từ mức tăng trưởng 26% của lĩnh vực thương mại điện tử.
- Thống kê hành vi tiêu dùng chỉ ra rằng 80% người tiêu dùng duy trì thói quen mua sắm trực tuyến nhờ tính tiện lợi, trong đó các mặt hàng tìm kiếm phổ biến gồm thời trang nam, túi xách nữ, mỹ phẩm và đồ điện tử. Giá trị đơn hàng trung bình ghi nhận mức tăng từ 45 USD (năm 2021) lên 50 USD (năm 2022).
Xuất phát từ bối cảnh thực tiễn đó, đồ án tốt nghiệp ngành Công nghệ Thông tin với đề tài "Xây Dựng Hệ Thống Thương Mại Điện Tử Cho Cửa Hàng Thời Trang" (Building an E-Commerce System for Fashion Stores) do sinh viên Phạm Hoàng Phúc thực hiện dưới sự hướng dẫn của ThS. Nguyễn Trần Thi Văn tại Trường Đại học Sư phạm Kỹ thuật TP.HCM (giai đoạn từ 25/02/2024 đến 17/06/2024) tập trung giải quyết bài toán xây dựng nền tảng bán lẻ thời trang đa kênh kết hợp hệ thống gợi ý sản phẩm thông minh dựa trên hình ảnh.
Mục tiêu và nhiệm vụ nghiên cứu
- Xây dựng website thương mại điện tử và ứng dụng di động (mobile app) phục vụ hoạt động kinh doanh hàng may mặc, đảm bảo tính tiện dụng, ổn định và bảo mật.
- Tích hợp hệ thống gợi ý sản phẩm cá nhân hóa (Recommender System) sử dụng mạng nơ-ron học sâu (Deep Neural Networks) dựa trên hình ảnh đầu vào thay vì chỉ dựa vào lịch sử mua hàng truyền thống.
- Thiết lập hệ thống quản trị hoàn chỉnh cho phép quản lý tài khoản, phân loại danh mục, cập nhật thông tin sản phẩm (CRUD), kiểm duyệt và xử lý trạng thái đơn hàng.
- Xây dựng quy trình thanh toán đa dạng (thanh toán khi nhận hàng - COD và thanh toán trực tuyến), kết nối đơn vị vận chuyển bên thứ ba (Giao Hàng Nhanh - GHN) và hệ thống thông báo trạng thái đơn hàng thời gian thực.
Đối tượng và phạm vi nghiên cứu
- Đối tượng nghiên cứu: Quy trình vận hành hệ thống thương mại điện tử thời trang, kiến trúc Client-Server, các giải pháp phát triển web/mobile, và mô hình trích xuất đặc trưng hình ảnh phục vụ gợi ý thời trang.
- Phạm vi hệ thống: Phục vụ 3 nhóm tác nhân chính gồm Khách vãng lai (Guest), Khách hàng đã đăng ký (Customer), và Quản trị viên (Admin), kết hợp quy trình giao vận qua đối tác vận chuyển bên thứ ba.
Cơ sở lý thuyết và phương pháp
Đồ án ứng dụng phương pháp nghiên cứu kỹ thuật hệ thống (System Engineering) kết hợp phân tích đối sánh thực nghiệm.
1. Khảo sát và đối sánh các hệ thống thương mại điện tử thực tế
Tác giả tiến hành khảo sát ưu điểm và hạn chế của các nền tảng TMĐT phổ biến nhằm xác định yêu cầu hệ thống:
| Nền tảng |
Ưu điểm ghi nhận |
Nhược điểm ghi nhận |
| Shopee & Lazada |
Tốc độ truy cập nhanh; giao diện trực quan; tích hợp chatbox tương tác; điều hướng sản phẩm logic; tương thích đa thiết bị. |
Xuất hiện nhiều quảng cáo gây gián đoạn trải nghiệm người dùng. |
| Amazon |
Hỗ trợ đa ngôn ngữ; giao diện chuẩn mực; bố cục chức năng khoa học; cung cấp đầy đủ chính sách và thông tin liên kết; tương thích đa nền tảng. |
Nhiều quảng cáo; giới hạn phương thức thanh toán quốc tế (chủ yếu là PayPal và MasterCard). |
| TikTok Shop |
Hỗ trợ đa ngôn ngữ; điều hướng chi tiết sản phẩm hợp lý; giao diện tương thích tốt trên thiết bị cá nhân. |
Nhiều nội dung quảng cáo không cần thiết; giới hạn hoạt động chủ yếu trên ứng dụng di động. |
2. Khung lý thuyết và mô hình gợi ý sản phẩm (Machine Learning)
- Mô hình Client-Server: Phân tách rõ ràng giữa máy khách (Client) chịu trách nhiệm hiển thị/thu nhận tương tác và máy chủ (Server) xử lý logic nghiệp vụ, quản lý dữ liệu tập trung và đảm bảo tính đồng thời.
- Học chuyển giao (Transfer Learning) với ResNet-50: Sử dụng kiến trúc mạng nơ-ron tích chập (CNN) 50 lớp đã qua huấn luyện trước trên tập dữ liệu lớn để trích xuất vector đặc trưng (feature extraction) từ hình ảnh sản phẩm trong bộ dữ liệu Fashion Product Images Dataset.
- Thuật toán K-Nearest Neighbors (KNN) & Thư viện Annoy: Sử dụng thuật toán tìm kiếm láng giềng gần nhất được tối ưu hóa bởi thư viện Annoy (Approximate Nearest Neighbors Oh Yeah) để đo lường độ tương đồng vector hình ảnh, từ đó trả về danh sách top 5 sản phẩm thời trang tương đồng nhất với sản phẩm người dùng đang quan sát.
Thiết kế và triển khai
Hệ thống được thiết kế theo kiến trúc phân tầng độc lập giữa giao diện người dùng, máy chủ dịch vụ API nghiệp vụ, máy chủ dịch vụ AI và hệ cơ sở dữ liệu quan hệ.
[ Web Client: ReactJS ] [ Mobile Client: Flutter ]
\ /
\ /
[ Backend API: Java Spring Boot 3.1 ] <---> [ Database: MySQL 8.x ]
| |
[ Firebase FCM / GHN API ] +---------> [ AI Service: Python Flask / ResNet-50 ]
1. Công nghệ và thư viện triển khai
Phía giao diện (Front-End)
- Web Application: Phát triển trên nền tảng
ReactJS (v18.0) kết hợp Bootstrap, react-router-dom (v6.0) cho định tuyến, axios (v1.1) xử lý HTTP request, js-cookie (v3.5) quản lý cookie, react-bootstrap-pagination-control (v1.5) phân trang, react-app-rewired (v2.1) và web-vitals (v2.4).
- Mobile Application: Phát triển bằng
Flutter (ngôn ngữ Dart), biên dịch mã nguồn đa nền tảng cho thiết bị di động (ưu tiên hệ điều hành Android), hỗ trợ cơ chế Hot Reload và xử lý tương tác trực tiếp.
Phía máy chủ và dịch vụ nền tảng (Back-End)
- Core API Server: Xây dựng bằng
Java Spring Boot (Spring MVC 3.1, máy chủ nhúng Tomcat), sử dụng Spring Security kết hợp JWT (io.jsonwebtoken:jjwt v0.3) cho xác thực và phân quyền, Jackson Core (v1.0) xử lý dữ liệu JSON, và Google OAuth Client Library (v0.1).
- Dịch vụ gợi ý (Recommendation Engine): Xây dựng riêng biệt bằng
Python Flask, tích hợp TensorFlow, mysql-connector-python (v8.0), mysqlclient (v2.0) để kết nối cơ sở dữ liệu và thực thi mô hình ResNet-50.
- Tích hợp dịch vụ đám mây và bên thứ ba:
Firebase Cloud Messaging (FCM): Gửi thông báo đẩy về trạng thái đơn hàng theo thời gian thực.
Google Drive API / Cloud Storage JSON API: Lưu trữ và truy xuất hình ảnh sản phẩm.
Google Translate API: Hỗ trợ tính năng tìm kiếm song ngữ.
Giao Hàng Nhanh (GHN): Tích hợp API tạo đơn và theo dõi vận chuyển của đơn vị thứ ba.
2. Thiết kế cơ sở dữ liệu (MySQL Database)
Cơ sở dữ liệu của hệ thống gồm 18 bảng dữ liệu quan hệ được chuẩn hóa:
| Tên bảng dữ liệu |
Vai trò và chức năng trong hệ thống |
login_accounts |
Lưu trữ tài khoản đăng nhập, mật khẩu mã hóa và vai trò người dùng |
staffs |
Quản lý thông tin định danh và quyền hạn của nhân viên |
customers |
Quản lý hồ sơ chi tiết của khách hàng (họ tên, số điện thoại, địa chỉ) |
products |
Lưu trữ thông tin sản phẩm thời trang (tên, mô tả, giá cả, số lượng tồn) |
catalog |
Định nghĩa danh mục sản phẩm |
catalogs_with_products |
Thiết lập quan hệ liên kết nhiều-nhiều giữa danh mục và sản phẩm |
product_images_management |
Quản lý danh sách URL hình ảnh liên kết với từng sản phẩm |
product_management |
Theo dõi trạng thái vận hành và quản lý sản phẩm |
product_import_manager |
Ghi nhận lịch sử nhập hàng và số lượng tồn kho |
cart |
Quản lý thông tin giỏ hàng tạm thời của khách hàng |
invoice |
Lưu trữ hóa đơn đặt hàng và trạng thái tổng quát của đơn |
invoice_with_product |
Lưu trữ chi tiết từng mặt hàng, số lượng và đơn giá trong hóa đơn |
delivery |
Quản lý thông tin vận chuyển, địa chỉ nhận hàng và đối tác giao vận |
online_payment_accounts |
Lưu trữ thông tin đối soát tài khoản thanh toán trực tuyến |
comments |
Lưu trữ bình luận, đánh giá của người dùng về sản phẩm |
comment_like |
Ghi nhận lượt yêu thích bình luận từ các tài khoản khác nhau |
notification |
Lưu trữ nội dung thông báo hệ thống gửi đến người dùng |
device_fcm_token |
Quản lý mã định danh thiết bị (FCM token) phục vụ gửi thông báo đẩy |
Nội dung chính theo từng chương
CHAPTER 1: INTRODUCTION
Trình bày tính cấp thiết của đề tài trong bối cảnh thương mại điện tử thời trang bùng nổ. Xác định mục tiêu nghiên cứu là phát triển một giải pháp bán hàng đa kênh toàn diện kết hợp hệ thống gợi ý thông minh nhằm nâng cao tính cá nhân hóa. Chương này cũng phân định rõ phạm vi đối tượng sử dụng hệ thống bao gồm khách hàng, quản trị viên và đơn vị vận chuyển.
CHAPTER 02: THEORETICAL BASIS
Trình bày cơ sở lý thuyết về các công nghệ được lựa chọn trong dự án:
- Phân tích ưu điểm của kiến trúc Client-Server trong việc phân tách tầng nghiệp vụ và tầng hiển thị dữ liệu.
- Giới thiệu các đặc tính kỹ thuật của ReactJS (Virtual DOM, kiến trúc thành phần), Bootstrap (hệ thống lưới responsive), Flutter (biên dịch mã máy native, hot reload), Java Spring Boot (cấu hình tối giản, Spring Data JPA, Spring Security, JWT), và Flask.
- Trình bày cơ sở lý thuyết về Trí tuệ nhân tạo, Mạng nơ-ron tích chập (CNN), kiến trúc mô hình ResNet-50 và cơ chế tìm kiếm độ tương đồng vector bằng thuật toán K-Nearest Neighbors thông qua thư viện Annoy.
CHAPTER 03: SYSTEM REQUIREMENTS CAPTURING AND MODELLING
Tổng hợp số liệu khảo sát thị trường và hành vi tiêu dùng TMĐT. Tiến hành phân tích đối sánh điểm mạnh/yếu của Shopee, Lazada, Amazon, TikTok Shop. Xác định các yêu cầu phi chức năng (tính thân thiện, tốc độ xử lý dữ liệu, bảo mật thông tin, tính mở rộng và toàn vẹn dữ liệu) và mô hình hóa hệ thống:
- Xây dựng sơ đồ trường hợp sử dụng tổng quát (Fashion Store System Usecase Diagram) và các sơ đồ phân rã theo tác nhân: Guest, Customer, Admin.
- Đặc tả chi tiết 18 chức năng nghiệp vụ trọng tâm (Đăng nhập, Đăng ký, Lọc sản phẩm trong giỏ hàng, Chọn mua từ giỏ hàng, Tìm kiếm sản phẩm, Bình luận/Đánh giá, Thêm/Sửa sản phẩm, Duyệt/Hủy đơn hàng, Quản lý tài khoản khách hàng, Tạo đơn vận chuyển qua GHN, Xử lý hoàn tiền).
CHAPTER 04: SYSTEM DESIGN
Chuyển đổi các yêu cầu chức năng thành thiết kế chi tiết:
- Xây dựng sơ đồ tuần tự (Sequence Diagrams) cho các luồng nghiệp vụ cốt lõi: Đăng ký/Đăng nhập, Tìm kiếm sản phẩm, Thêm vào giỏ hàng, Thanh toán đơn hàng, Bình luận sản phẩm, Quản trị viên duyệt đơn hàng, Tạo vận đơn GHN và Quản lý tài khoản.
- Thiết kế lược đồ cơ sở dữ liệu chi tiết cho 18 bảng quan hệ cùng ràng buộc khóa chính - khóa ngoại.
- Xây dựng thiết kế giao diện chi tiết (UI Mockup) cho 47 màn hình trên cả nền tảng Website và Mobile App (Trang chủ, Chi tiết sản phẩm, Bộ lọc tìm kiếm, Quản lý giỏ hàng, Chọn địa chỉ giao hàng, Xác nhận thanh toán, Lịch sử mua hàng, Bảng điều khiển quản trị, Quản lý hóa đơn và Quản lý sản phẩm).
CHAPTER 05: IMPLEMENTATION AND TESTING
Tổ chức cấu trúc thư mục dự án cho từng phân hệ (Back-end Spring Boot, Front-end ReactJS, Mobile Flutter, và Recommendation Engine Python Flask). Hiện thực hóa các giao diện và luồng tương tác thực tế:
- Kiểm thử các ca sử dụng chính: tìm kiếm sản phẩm, phân loại danh mục, thêm sản phẩm vào giỏ, điều chỉnh số lượng/màu sắc/kích thước, thực hiện quy trình checkout, và hiển thị danh sách gợi ý liên quan từ mô hình ResNet-50.
- Tự đánh giá các điểm mạnh đạt được về mặt tính năng và các điểm hạn chế trong quá trình triển khai mã nguồn.
Kết quả và đóng góp
Kết quả triển khai thực tế
- Phân hệ Web Client: Hoàn thiện giao diện web bán hàng và hệ thống trang quản trị tương thích responsive, cung cấp đầy đủ tính năng tìm kiếm sản phẩm, giỏ hàng, đánh giá, bình luận và quản lý danh mục.
- Phân hệ Mobile Client: Xây dựng thành công ứng dụng di động Flutter hỗ trợ khách hàng duyệt danh mục, tương tác sản phẩm, nhận thông báo đẩy qua Firebase và quản lý trạng thái đơn hàng.
- Phân hệ Back-End Service: Xây dựng hệ thống RESTful API hoàn chỉnh trên nền Spring Boot, quản lý giao dịch an toàn với MySQL, bảo mật bằng JWT và tích hợp các dịch vụ bên thứ ba (Google Drive API, Google Translate API, GHN Shipping API).
- Hệ thống gợi ý sản phẩm: Xây dựng thành công dịch vụ gợi ý thông minh chạy trên nền Flask, sử dụng mạng ResNet-50 trích xuất đặc trưng hình ảnh thời trang và thuật toán KNN để đề xuất chính xác top 5 sản phẩm có độ tương đồng cao nhất cho người dùng.
Đóng góp kỹ thuật của đề tài
- Tích hợp thành công mô hình học sâu (ResNet-50) vào hệ thống thương mại điện tử phục vụ gợi ý theo đặc trưng thị giác của trang phục, khắc phục sự phụ thuộc vào dữ liệu lịch sử mua hàng trong giai đoạn đầu (vấn đề Cold Start).
- Xây dựng giải pháp kiến trúc phân tách rõ ràng giữa Core Business Backend (Java) và AI Backend (Python), giúp hệ thống duy trì tính độc lập và linh hoạt khi mở rộng.
Hạn chế và hướng nghiên cứu tiếp
Theo tự nhận xét và phạm vi nghiên cứu của tác giả trong tài liệu:
- Hạn chế về dữ liệu và thuật toán: Hệ thống gợi ý hiện tại tập trung trích xuất đặc trưng dựa trên hình ảnh đầu vào thông qua tập dữ liệu mẫu (Fashion Product Images Dataset), chưa kết hợp đa phương thức với lịch sử hành vi mua sắm và tương tác thực tế của người dùng theo thời gian dài.
- Hạn chế trong triển khai: Đồ án được hoàn thành trong khung thời gian một học kỳ với nguồn lực giới hạn, do đó một số xử lý tối ưu hóa hiệu năng chuyên sâu cho các tập dữ liệu có quy mô hàng triệu bản ghi và xử lý phân tán chưa được kiểm thử toàn diện trên môi trường production thực tế.
- Hướng phát triển: Tích hợp mô hình gợi ý lai (Hybrid Recommendation) kết hợp giữa thị giác máy tính và lọc cộng tác (Collaborative Filtering), mở rộng các cổng thanh toán trực tuyến trong nước và hoàn thiện hệ thống báo cáo phân tích doanh thu chuyên sâu cho quản trị viên.
Giá trị tham khảo
Đồ án là tài liệu tham khảo hữu ích cho sinh viên và lập trình viên chuyên ngành Công nghệ thông tin, Kỹ thuật phần mềm:
- Tài liệu tham khảo kiến trúc đa nền tảng: Cung cấp mô hình triển khai thực tế kết hợp giữa Spring Boot (REST API), ReactJS (Web), Flutter (Mobile App) và Flask (Machine Learning Service).
- Thiết kế cơ sở dữ liệu TMĐT: Cung cấp cấu trúc 18 bảng quan hệ chi tiết, bao quát các nghiệp vụ từ giỏ hàng, hóa đơn, tài khoản, danh mục, lưu trữ token thiết bị đến tích hợp giao vận bên thứ ba.
- Tích hợp mô hình thị giác máy tính: Cung cấp quy trình trích xuất vector đặc trưng hình ảnh bằng ResNet-50 và tìm kiếm tương đồng láng giềng gần nhất bằng thuật toán tối ưu hóa Annoy trong bài toán thương mại điện tử thời trang.
Câu hỏi thường gặp
1. Hệ thống sử dụng mô hình nào để xây dựng tính năng gợi ý sản phẩm thời trang?
Hệ thống sử dụng kỹ thuật học chuyển giao (Transfer Learning) với kiến trúc mạng nơ-ron tích chập ResNet-50 huấn luyện trên tập dữ liệu Fashion Product Images Dataset để trích xuất vector đặc trưng hình ảnh, kết hợp thuật toán K-Nearest Neighbors (KNN) thông qua thư viện Annoy để tìm kiếm và trả về top 5 sản phẩm thời trang có độ tương đồng cao nhất.
2. Ngăn xếp công nghệ (Tech Stack) chính của hệ thống gồm những thành phần nào?
Hệ thống sử dụng:
- Front-End: ReactJS (v18.0), Bootstrap trên Web; Flutter trên thiết bị di động.
- Back-End API: Java Spring Boot (Spring MVC 3.1, Spring Security, JWT).
- AI/Recommendation Service: Python Flask, TensorFlow, Annoy.
- Cơ sở dữ liệu: MySQL (18 bảng quan hệ).
3. Hệ thống tích hợp các dịch vụ bên thứ ba nào để hoàn thiện quy trình nghiệp vụ?
Hệ thống tích hợp 4 dịch vụ chính:
Firebase Cloud Messaging (FCM) để gửi thông báo đẩy đến ứng dụng người dùng.
Google Drive API / Cloud Storage API để lưu trữ và phân phối hình ảnh sản phẩm.
Google Translate API hỗ trợ tìm kiếm sản phẩm song ngữ.
API Giao Hàng Nhanh (GHN) để đồng bộ và quản lý vận đơn giao hàng.
4. Cơ sở dữ liệu MySQL của hệ thống bao gồm những bảng chính nào?
Cơ sở dữ liệu gồm 18 bảng: login_accounts, staffs, customers, products, catalog, catalogs_with_products, product_images_management, product_management, product_import_manager, cart, invoice, invoice_with_product, delivery, online_payment_accounts, comments, comment_like, notification, và device_fcm_token.
5. Khách hàng và Quản trị viên có các quyền hạn chính nào trên hệ thống?
- Khách hàng: Tìm kiếm/lọc sản phẩm, xem chi tiết, chọn kích cỡ/màu sắc, quản lý giỏ hàng, đặt hàng (thanh toán COD hoặc online), theo dõi trạng thái đơn hàng, hủy đơn có điều kiện, viết bình luận và chấm điểm đánh giá sản phẩm.
- Quản trị viên: Quản lý tài khoản người dùng, thực hiện thao tác CRUD trên sản phẩm và danh mục, tiếp nhận và duyệt/từ chối đơn hàng, tạo đơn vận chuyển GHN, gọi điện xác nhận đơn, và xử lý hoàn tiền cho khách hàng.
Kết luận
Đồ án tốt nghiệp "Xây Dựng Hệ Thống Thương Mại Điện Tử Cho Cửa Hàng Thời Trang" của sinh viên Phạm Hoàng Phúc đã hoàn thành việc thiết kế và xây dựng một hệ thống bán lẻ thời trang đa nền tảng (Web và Mobile). Dự án giải quyết tốt bài toán tích hợp giữa kiến trúc backend Java Spring Boot truyền thống và dịch vụ AI gợi ý sản phẩm dựa trên hình ảnh sử dụng ResNet-50 và Annoy KNN. Đây là tài liệu tham khảo có giá trị kỹ thuật thực tiễn cao cho việc nghiên cứu, phát triển các ứng dụng thương mại điện tử kết hợp học máy.