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

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

Thị trường kinh doanh bán lẻ trực tuyến đang chứng kiến sự tăng trưởng mạnh mẽ khi người tiêu dùng ngày càng có xu hướng dịch chuyển sang mua sắm qua Internet nhằm tối ưu hóa thời gian và công sức. Trước xu thế này, các doanh nghiệp bán lẻ thời trang phải đối mặt với yêu cầu cấp thiết về việc chuyển đổi số mô hình kinh doanh.

Theo phân tích của nhóm tác giả, phương thức bán hàng truyền thống bộc lộ nhiều điểm hạn chế:

  • Công tác quảng bá sản phẩm và nhận diện thương hiệu bị giới hạn về mặt không gian và thời gian tiếp cận.
  • Hoạt động thống kê, quản lý hàng hóa và báo cáo doanh thu phụ thuộc chủ yếu vào các bảng tính thủ công (Microsoft Excel), dẫn đến việc tổng hợp số liệu chậm trễ, tiêu tốn nhiều nhân lực và chi phí.
  • Quá trình nhập liệu thủ công tiềm ẩn sai sót nhưng thiếu cơ chế cảnh báo tự động, chẳng hạn như không thể cảnh báo kịp thời khi số lượng tồn kho không đủ đáp ứng đơn hàng hoặc sản phẩm đã hết hàng.
  • Khách hàng thiếu tính chủ động trong việc đặt trước sản phẩm, quy trình giao dịch bắt buộc phải diễn ra đồng thời giữa người mua và người bán tại điểm bán vật lý.

Việc xây dựng một hệ thống website thương mại điện tử chuyên ngành thời trang giúp doanh nghiệp tự động hóa khâu quản lý kho bãi, theo dõi doanh thu chính xác, giảm thiểu nhân lực quản lý, đồng thời tạo điều kiện thuận lợi cho khách hàng chủ động tra cứu, đặt mua sản phẩm từ xa.

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

Đề tài xác định 5 mục tiêu chính bao gồm:

  1. Thiết kế giao diện website thân thiện, trực quan và tối ưu trải nghiệm người dùng trong quá trình mua sắm trực tuyến.
  2. Xây dựng quy trình mua sắm hoàn chỉnh, liền mạch: từ tìm kiếm, phân loại theo bộ lọc, xem chi tiết, thêm vào giỏ hàng, lựa chọn nhiều hình thức thanh toán (trực tuyến và khi nhận hàng - COD) đến đánh giá sản phẩm sau mua.
  3. Phát triển hệ thống quản trị, kiểm soát kho hàng và báo cáo doanh số: theo dõi lộ trình đơn hàng từ lúc khởi tạo đến khi giao hoàn tất, cung cấp công cụ thống kê doanh thu, lợi nhuận và quản lý hàng tồn.
  4. Xây dựng cơ chế phân quyền bảo mật chặt chẽ: phân định quyền hạn rõ ràng cho từng nhóm đối tượng người dùng, bảo vệ an toàn thông tin hệ thống.
  5. Ứng dụng các công nghệ hiện đại: triển khai ReactJS ở phía máy khách (Front-end) và NodeJS kết hợp ExpressJS, Sequelize, MySQL ở phía máy chủ (Back-end) để xây dựng ứng dụng web đơn trang (SPA) có khả năng mở rộng.

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

  • Đối tượng nghiên cứu: Quy trình nghiệp vụ kinh doanh bán lẻ thời trang trực tuyến; các giải pháp công nghệ lập trình web hiện đại (ReactJS, NodeJS, ExpressJS, MySQL, Socket.IO, JWT, Firebase); hành vi tương tác và nhu cầu mua sắm của người dùng.
  • Phạm vi không gian và công nghệ: Đề tài tập trung nghiên cứu mô hình hoạt động của các nền tảng thương mại điện tử thực tế tại Việt Nam (Shopee, Coolmate, Biti's). Hệ thống tập trung triển khai các phân hệ nghiệp vụ cho 5 nhóm tác nhân: Quản trị viên, Khách hàng, Khách vãng lai, Nhân viên bán hàng và Nhân viên giao hàng.
  • Phạm vi tính năng mở rộng: Tích hợp công cụ hỗ trợ thiết kế áo thun ứng dụng trí tuệ nhân tạo (AI), hệ thống thu thập và áp dụng mã giảm giá (voucher), tương tác tin nhắn trực tuyến thời gian thực (live chat) và thuật toán gợi ý sản phẩm.

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

Khung lý thuyết và mô hình kiến trúc

  • Kiến trúc MVC (Model-View-Controller): Mô hình phân tách phần mềm thành 3 thành phần độc lập:
    • Model: Quản lý dữ liệu, thực hiện logic nghiệp vụ và cung cấp giao diện truy xuất cơ sở dữ liệu.
    • View: Đảm nhận hiển thị giao diện người dùng và truyền nhận tương tác từ phía máy khách.
    • Controller: Tiếp nhận yêu cầu từ View, điều phối xử lý qua Model và trả dữ liệu cập nhật về View.
  • Công nghệ Front-end:
    • ReactJS: Thư viện JavaScript xây dựng giao diện dựa trên Component, cú pháp JSX, State, Props và cơ chế Virtual DOM giúp tối ưu hiệu năng render ứng dụng đơn trang.
    • Redux: Quản lý trạng thái tập trung (State Management) với 3 thành phần cốt lõi: Action, Reducer và Store.
    • Thư viện bổ trợ: Bootstrap (khung giao diện responsive), SCSS (tiền xử lý CSS hỗ trợ nesting và biến), Axios (HTTP client nền tảng Promise).
  • Công nghệ Back-end và Dịch vụ mạng:
    • NodeJS & ExpressJS: Môi trường thực thi JavaScript phía máy chủ dựa trên V8 Engine, kết hợp framework Express cung cấp middleware xử lý định tuyến API theo chuẩn RESTful.
    • Sequelize ORM: Thư viện ánh xạ quan hệ - đối tượng cho NodeJS, hỗ trợ migration và thao tác dữ liệu MySQL thông qua JavaScript Promises.
    • Socket.IO: Giao thức truyền thông hai chiều thời gian thực giữa máy chủ và trình duyệt, phục vụ phân hệ tin nhắn và thông báo.
    • JSON Web Token (JWT): Chuẩn RFC 7519 phục vụ xác thực người dùng không lưu trạng thái (stateless authentication) với cấu trúc 3 phần: Header, Payload và Signature.
    • Firebase: Dịch vụ hỗ trợ xác thực mã OTP và lưu trữ tệp tin media.
    • MySQL: Hệ quản trị cơ sở dữ liệu quan hệ (RDBMS) lưu trữ toàn bộ dữ liệu nghiệp vụ.

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

  • Phương pháp khảo sát hiện trạng: Khảo sát trực tiếp giao diện, quy trình mua hàng, hệ thống tìm kiếm và tính năng tương tác của 3 website thương mại điện tử: Shopee, Coolmate và Biti's nhằm đúc kết ưu điểm và xác định các điểm hạn chế cần khắc phục.
  • Phương pháp mô hình hóa hướng đối tượng (UML): Sử dụng các biểu đồ use case để phân tích yêu cầu chức năng, biểu đồ lớp (Class Diagram) để cấu trúc hóa hệ thống, biểu đồ tuần tự (Sequence Diagram) để mô tả luồng dữ liệu giữa các đối tượng và biểu đồ thực thể - liên kết (ERD) để thiết kế cơ sở dữ liệu.
  • Phương pháp thực nghiệm và kiểm thử phần mềm: Cài đặt mã nguồn thực tế và thực hiện kiểm thử chức năng (Functional Testing) bằng các kịch bản kiểm thử (Test Cases) có kiểm soát.

Nguồn dữ liệu

Dữ liệu nghiên cứu ban đầu được thu thập từ việc khảo sát giao diện, cấu trúc danh mục và quy trình thanh toán trên Internet từ các trang web thương mại điện tử thời trang đang vận hành, kết hợp tham vấn ý kiến chuyên môn từ giảng viên hướng dẫn.


Thiết kế và triển khai

Phân quyền và kiến trúc chức năng hệ thống

Hệ thống được thiết kế với 5 nhóm quyền tác nhân riêng biệt, đảm bảo tính toàn vẹn dữ liệu và phân tách nhiệm vụ:

Tác nhân Ký hiệu Danh sách chức năng chính
Quản trị viên Admin Quản lý người dùng, danh mục, sản phẩm, nhãn hàng, băng rôn, chủ đề, bài đăng, loại ship, voucher, nhà cung cấp, đơn nhập hàng, đơn hàng; thống kê doanh thu, thống kê lợi nhuận, thống kê tồn kho; quản lý tin nhắn.
Khách hàng User Quản lý thông tin cá nhân, sổ địa chỉ; quản lý giỏ hàng; thu thập voucher; đặt hàng và thanh toán (COD/Online); theo dõi trạng thái đơn hàng; bình luận, đánh giá sản phẩm; thiết kế áo thun AI; nhắn tin trực tuyến.
Khách vãng lai Guest Xem danh mục, xem thông tin chi tiết sản phẩm; đọc tin tức/bài viết thời trang; đăng ký tài khoản mới qua xác thực OTP.
Nhân viên giao hàng Shipper Đăng nhập tài khoản chuyên biệt; xem danh sách đơn hàng được phân công; xem chi tiết địa chỉ/sản phẩm; cập nhật trạng thái đơn (đã nhận đơn, đã giao hàng thành công); quản lý hồ sơ cá nhân.
Nhân viên bán hàng Seller Quản lý đơn hàng (xác nhận, đổi trạng thái, xuất file Excel); quản lý nhà cung cấp (thêm, sửa, xóa, xuất Excel); quản lý nhập hàng (tạo phiếu nhập, xuất Excel); tư vấn qua tin nhắn trực tiếp với khách hàng.

Thiết kế cơ sở dữ liệu

Cơ sở dữ liệu MySQL của hệ thống được chuẩn hóa qua 22 bảng liên kết:

  • Nhóm người dùng và tương tác: User, AddressUser, Comment, Message, RoomMessage.
  • Nhóm sản phẩm và danh mục: Product, ProductDetail, ProductDetailSize, ProductImage, Allcode.
  • Nhóm giao dịch và kho vận: ShopCart, OrderProduct, OrderDetail, TypeShip, Supplier, Receipt, ReceiptDetail.
  • Nhóm khuyến mãi và nội dung: Voucher, TypeVoucher, VoucherUsed, Banner, Blog.

Kế hoạch và kết quả kiểm thử chức năng

Nhóm tác giả xây dựng kế hoạch kiểm thử hộp đen tập trung vào các chức năng cốt lõi của website từ mã kịch bản TC_01 đến TC_07:

  • Chức năng đăng nhập: Kiểm thử tính hợp lệ của dữ liệu đầu vào, cơ chế kiểm tra mật khẩu, cấp phát mã token xác thực JWT và chuyển hướng giao diện tương ứng theo vai trò.
  • Chức năng đăng ký tài khoản: Kiểm thử quy trình tiếp nhận thông tin, gửi mã OTP xác thực thông qua Firebase và khởi tạo bản ghi trong bảng User.
  • Chức năng đặt hàng và thanh toán: Kiểm thử luồng thêm sản phẩm vào giỏ hàng, áp dụng voucher khuyến mãi, tính toán cước vận chuyển theo TypeShip, ghi nhận thông tin vào bảng OrderProduct - OrderDetail và phản hồi trạng thái thanh toán.

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

Phần mở đầu

Trình bày tính cấp thiết của việc số hóa mô hình kinh doanh thời trang, phân tích các điểm nghẽn của việc vận hành bằng sổ sách/Excel truyền thống. Xác định rõ mục đích nghiên cứu, đối tượng, phạm vi triển khai và ý nghĩa khoa học - thực tiễn của đề tài.

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

Hệ thống hóa toàn bộ nền tảng kiến thức phục vụ phát triển ứng dụng web:

  • Trình bày nguyên lý hoạt động, cấu trúc 3 lớp cùng ưu - nhược điểm của mô hình kiến trúc MVC.
  • Phân tích chi tiết các công nghệ phía máy khách (Front-end): cơ chế Virtual DOM và vòng đời Component trong ReactJS, kiến trúc quản lý trạng thái tập trung Redux, cú pháp SCSS, lưới responsive Bootstrap và thư viện truyền thông Axios.
  • Làm rõ các công nghệ phía máy chủ (Back-end): môi trường NodeJS, framework ExpressJS, hệ quản trị cơ sở dữ liệu quan hệ MySQL, cơ chế truyền thông hai chiều Socket.IO, cơ chế xác thực JWT, nền tảng dịch vụ Firebase và thư viện ánh xạ dữ liệu Sequelize ORM.

Chương 2: Khảo sát hiện trạng và mô hình hóa yêu cầu

  • Phân tích chi tiết giao diện, luồng mua sắm, bộ lọc tìm kiếm và tính năng tương tác của 3 nền tảng: Shopee, Coolmate và Biti's; chỉ ra các ưu điểm về thiết kế tối giản cũng như hạn chế về bộ lọc và tính năng chat ở một số nền tảng.
  • Đặc tả yêu cầu phần mềm cho 5 nhóm tác nhân (Admin, User, Guest, Shipper, Seller) qua hệ thống bảng chức năng từ Bảng 1 đến Bảng 5.
  • Xây dựng 33 use case chi tiết bao gồm: Đăng ký, Đăng nhập, Đăng xuất, Thêm giỏ hàng, Tìm kiếm sản phẩm, Thu thập voucher, Xem thông tin sản phẩm, Xem tin tức, Quản lý tài khoản, Thao tác CRUD danh mục, Hủy/Xác nhận/Xem đơn hàng, Thao tác CRUD người dùng, Thao tác CRUD sản phẩm, Thao tác CRUD loại khuyến mãi/mã khuyến mãi, Thống kê doanh thu/lợi nhuận/tồn kho, Đánh giá sản phẩm, Thanh toán sản phẩm và Giao hàng shipper.

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

  • Thiết kế biểu đồ lớp tổng thể (Class Diagram) và chi tiết 33 biểu đồ tuần tự (Sequence Diagram) tương ứng với toàn bộ 33 use case đã xác định ở Chương 2.
  • Xây dựng lược đồ cơ sở dữ liệu thực thể - liên kết (ERD) và đặc tả cấu trúc dữ liệu chi tiết của 22 bảng trong hệ thống MySQL.
  • Thiết kế và mô tả chi tiết 32 màn hình giao diện của hệ thống, bao gồm các phân hệ: giao diện người dùng công cộng (Trang chủ, Chi tiết sản phẩm, Giỏ hàng, Thanh toán, Tin tức, Tin nhắn, Thiết kế áo thun tích hợp AI), giao diện quản trị Admin (Thống kê, Quản lý người dùng, Danh mục, Nhãn hàng, Sản phẩm, Băng rôn, Đơn hàng, Nhập hàng...) và giao diện chuyên biệt cho Nhân viên giao hàng (Shipper).

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

  • Trình bày quá trình hiện thực hóa mã nguồn phía Back-end (ExpressJS, Sequelize) và Front-end (ReactJS, Redux).
  • Thiết lập kế hoạch kiểm thử, bảng kịch bản kiểm thử chi tiết và thực thi các bộ kiểm thử chức năng từ TC_01 đến TC_07 cho các luồng nghiệp vụ: xác thực tài khoản, kiểm soát phiên đăng nhập, tạo đơn và xử lý giao dịch thanh toán.

Phần kết luận

Đánh giá mức độ hoàn thành nhiệm vụ nghiên cứu so với mục tiêu đề ra, tổng kết các kết quả đạt được và đề xuất các định hướng phát triển trong tương lai.


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

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

  • Xây dựng hoàn chỉnh website thương mại điện tử chuyên ngành thời trang với đầy đủ các phân hệ chức năng cho cả 5 nhóm tác nhân (Admin, Seller, Shipper, User, Guest).
  • Xây dựng hệ thống quản trị hoàn chỉnh hỗ trợ các thao tác CRUD danh mục, sản phẩm, nhãn hàng, đơn nhập hàng từ nhà cung cấp, kiểm soát hàng tồn kho và thống kê trực quan doanh thu, lợi nhuận.
  • Hiện thực hóa module thiết kế áo thun tích hợp công cụ AI, cho phép khách hàng cá nhân hóa màu sắc, chất liệu vải, logo và xem trước bản thiết kế trực quan trước khi đặt hàng.
  • Tích hợp thành công kênh truyền thông tin nhắn thời gian thực (live chat) bằng Socket.IO, hệ thống phân loại và áp dụng mã voucher giảm giá, phân hệ đánh giá chất lượng sản phẩm có kèm ảnh chụp thực tế và quy trình giao nhận dành riêng cho nhân viên shipper.

Giải pháp và đóng góp của đề tài

  • Cung cấp giải pháp số hóa toàn diện quy trình kinh doanh thời trang từ khâu nhập hàng, quản lý kho bãi, bán lẻ trực tuyến đến theo dõi giao vận, khắc phục hoàn toàn sự chậm trễ và sai lệch dữ liệu của phương pháp quản lý bằng bảng tính Excel truyền thống.
  • Ứng dụng mô hình kiến trúc phân tầng rõ ràng (Front-end SPA với ReactJS, Back-end RESTful API với NodeJS/ExpressJS, cơ sở dữ liệu MySQL quản lý qua Sequelize ORM), mang lại khả năng mở rộng linh hoạt cho hệ thống phần mềm thương mại điện tử.

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

Hạn chế

  • Hệ thống tập trung vận hành trên nền tảng web, chưa phát triển ứng dụng di động độc lập (Native Mobile App) cho khách hàng và nhân viên shipper.
  • Tính năng thiết kế áo thun bằng AI và cơ chế gợi ý sản phẩm dừng lại ở mức tích hợp giải pháp hỗ trợ cơ bản, chưa xây dựng các mô hình học máy (Machine Learning) học sâu chuyên biệt trên tập dữ liệu hành vi lớn.

Hướng phát triển

  • Nghiên cứu và mở rộng hệ thống sang nền tảng di động đa nền tảng bằng cách sử dụng React Native để đồng bộ mã nguồn với web.
  • Tối ưu hóa và nâng cấp các mô hình trí tuệ nhân tạo phục vụ việc thiết kế đồ họa áo thun tự động theo văn bản mô tả chi tiết của khách hàng.
  • Tích hợp thêm các cổng thanh toán điện tử phổ biến (VNPay, MoMo, ZaloPay) và phát triển thuật toán tự động phân chia tuyến đường giao hàng thông minh cho nhân viên shipper.

Giá trị tham khảo

  • Đối tượng tham khảo: Sinh viên ngành Công nghệ thông tin, Công nghệ phần mềm đang thực hiện đồ án tốt nghiệp, khóa luận hoặc các dự án môn học về phát triển ứng dụng web thương mại điện tử sử dụng ngăn xếp công nghệ NodeJS - ReactJS.
  • Nội dung có giá trị ứng dụng cao:
    • Quy trình phân tích yêu cầu phần mềm chi tiết với 33 use case đặc tả đầy đủ luồng sự kiện.
    • Bộ tài liệu thiết kế hệ thống hoàn chỉnh: hệ thống biểu đồ tuần tự (Sequence Diagram), biểu đồ lớp và lược đồ cơ sở dữ liệu chuẩn hóa 22 bảng phục vụ kinh doanh bán lẻ.
    • Tài liệu tham khảo về việc thiết lập kiến trúc dự án ExpressJS - Sequelize kết hợp ReactJS - Redux và tích hợp truyền thông thời gian thực với Socket.IO.

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

1. Hệ thống sử dụng những giải pháp công nghệ cốt lõi nào cho Front-end và Back-end?

Hệ thống sử dụng ReactJS kết hợp Redux, Bootstrap, SCSS và Axios ở phía Front-end; sử dụng NodeJS kết hợp ExpressJS framework, Sequelize ORM, Socket.IO, Firebase và cơ sở dữ liệu MySQL ở phía Back-end. Cơ chế xác thực và phân quyền được xử lý thông qua JSON Web Token (JWT).

2. Website phục vụ những nhóm tác nhân (actors) nào và có bao nhiêu use case được thiết kế?

Hệ thống được thiết kế phục vụ 5 nhóm tác nhân: Quản trị viên (Admin), Khách hàng (User), Khách vãng lai (Guest), Nhân viên giao hàng (Shipper) và Nhân viên bán hàng (Seller). Nhóm tác giả đã mô hình hóa và thiết kế tổng cộng 33 use case chi tiết cùng 33 biểu đồ tuần tự tương ứng.

3. Cơ sở dữ liệu của hệ thống gồm những bảng nào để quản lý đơn hàng và sản phẩm?

Cơ sở dữ liệu gồm 22 bảng, trong đó việc quản lý sản phẩm và đơn hàng được thực hiện qua các bảng chính: Product, ProductDetail, ProductDetailSize, ProductImage, ShopCart, OrderProduct, OrderDetail, Receipt, ReceiptDetail, Voucher và TypeShip.

4. Hệ thống có những tính năng mở rộng đặc thù nào ngoài quy trình mua bán thông thường?

Website tích hợp 4 tính năng mở rộng: công cụ hỗ trợ thiết kế áo thun ứng dụng AI (cho phép chọn màu, logo, chất liệu vải), hệ thống thu thập và sử dụng mã khuyến mãi (voucher), kênh chat trực tuyến thời gian thực giữa khách hàng và nhân viên bán hàng bằng Socket.IO, cùng cơ chế gợi ý sản phẩm dựa trên tương tác và lượt xem.

5. Quá trình kiểm thử phần mềm được tiến hành theo phương pháp nào?

Đồ án áp dụng phương pháp kiểm thử chức năng (Functional Testing) với các kịch bản kiểm thử từ TC_01 đến TC_07, tập trung kiểm tra độ chính xác của các quy trình: đăng nhập phân quyền, đăng ký tài khoản xác thực qua OTP Firebase và quy trình đặt hàng - thanh toán.


Kết luận

Khóa luận tốt nghiệp "Xây dựng website kinh doanh lĩnh vực thời trang" của nhóm sinh viên Trường Đại học Sư phạm Kỹ thuật TP.HCM đã hoàn thành đầy đủ quy trình kỹ nghệ phần mềm từ khảo sát, phân tích yêu cầu, thiết kế kiến trúc đến cài đặt và kiểm thử hệ thống. Đề tài đã xây dựng thành công một nền tảng thương mại điện tử hoàn chỉnh sử dụng công nghệ ReactJS và NodeJS, đáp ứng tốt các nghiệp vụ bán hàng, quản trị kho bãi, theo dõi doanh thu và phân quyền đa tác nhân. Đây là tài liệu tham khảo có cấu trúc mạch lạc, chuẩn mực về mặt phân tích thiết kế hệ thống và có giá trị thực tiễn cao cho các nghiên cứu phát triển ứng dụng thương mại điện tử chuyên ngành.