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 giày với ReactJS và Spring Boot" được thực hiện bởi sinh viên Hoàng Quốc Việt (MSSV: 19110315) và Nguyễn Đặng Khánh Văn (MSSV: 19110312), dưới sự hướng dẫn của ThS. Lê Thị Minh Châu tại Khoa Đào tạo Chất lượng cao, Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh (thời gian thực hiện từ 20/02/2023 đến 29/05/2023).
Lý do chọn đề tài
Trong những năm gần đây, nhu cầu sử dụng và sưu tầm giày dép tăng cao, giày không chỉ đơn thuần là phụ kiện đi lại mà còn trở thành sản phẩm kinh doanh, trao đổi giá trị cao với các phiên bản giới hạn. Nhằm đáp ứng sự tiện lợi trong quá trình mua sắm, giúp khách hàng dễ dàng tiếp cận sản phẩm từ xa và hỗ trợ các cửa hàng tối ưu hóa quy trình quản trị, nhóm tác giả lựa chọn nghiên cứu mô hình kinh doanh giày trực tuyến. Đề tài được kế thừa, mở rộng và hoàn thiện dựa trên nền tảng của học phần Tiểu luận chuyên ngành trước đó.
Mục tiêu nghiên cứu
Mục tiêu tổng quát của đề tài là xây dựng hoàn chỉnh một website bán giày trực tuyến vận hành ổn định, giao diện thân thiện, đảm bảo an toàn thông tin và mang lại hiệu quả quản trị cho cửa hàng. Các nhiệm vụ nghiên cứu cụ thể bao gồm:
- Khảo sát, phân tích các website thương mại điện tử chuyên ngành giày dép hiện có trên thị trường để đúc kết yêu cầu chức năng và phi chức năng.
- Thiết kế và xây dựng phân hệ quản trị dành cho người quản lý nhằm theo dõi khách hàng, đơn hàng, danh mục, sản phẩm, doanh thu và dòng tiền.
- Xây dựng phân hệ người dùng hỗ trợ tìm kiếm, lọc sản phẩm theo kích cỡ/giá, giỏ hàng, đặt hàng, tính phí vận chuyển tự động, thanh toán trực tuyến qua cổng PayPal và gửi thông tin xác nhận qua email.
- Tích hợp công nghệ trí tuệ nhân tạo bao gồm Chatbot hỗ trợ tư vấn tự động và thuật toán gợi ý sản phẩm phù hợp với nhu cầu của khách hàng.
- Tiến hành phân tích, thiết kế hệ thống, mô hình hóa dữ liệu và thực hiện kiểm thử phần mềm bằng các phương pháp hộp trắng và hộp đen.
Đố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 và hệ thống phần mềm thương mại điện tử chuyên ngành bán giày; các công nghệ phát triển web hiện đại (ReactJS, Redux, Spring Boot, PostgreSQL); dịch vụ điện toán đám mây và xử lý ngôn ngữ tự nhiên (Amazon Lex, AWS Lambda); các thuật toán xử lý dữ liệu dạng văn bản và gợi ý sản phẩm.
- Phạm vi không gian và triển khai: Hệ thống được thiết kế cài đặt trên máy chủ của cửa hàng kinh doanh giày, cho phép khách hàng và nhân viên truy cập từ xa thông qua trình duyệt web.
- Phạm vi dữ liệu: Quản lý dữ liệu thông tin sản phẩm, phân loại kích cỡ (size), bộ sưu tập hình ảnh, thông tin tài khoản người dùng, đơn đặt hàng, lịch sử giao dịch và mã giảm giá (voucher).
- Điều kiện ràng buộc: Dự án được thực hiện trong khung thời gian 3 tháng (20/02/2023 – 29/05/2023); tuân thủ các cam kết về tính ổn định của hệ thống, thời gian bàn giao và điều khoản bảo mật dữ liệu sau khi kết thúc dự án.
Cơ sở lý thuyết và phương pháp
Khung công nghệ và nền tảng lý thuyết
Hệ thống được phát triển dựa trên kiến trúc phân tách độc lập giữa Client (Front-end) và Server (Back-end) thông qua giao thức truyền tải dữ liệu RESTful API:
- Front-end (Giao diện người dùng):
- ReactJS: Thư viện JavaScript mã nguồn mở do Facebook phát triển, ứng dụng cơ chế Virtual DOM để tối ưu hóa hiệu năng render giao diện, sử dụng cú pháp JSX, chia tách giao diện thành các Functional Components và tái sử dụng thông qua các React Hooks (
useState, useEffect, useContext).
- Redux: Thư viện quản lý trạng thái tập trung (state management) hoạt động theo luồng dữ liệu một chiều dựa trên 3 nguyên lý: trạng thái duy nhất lưu trong Store dạng cây đối tượng, thay đổi trạng thái thông qua Action (pure object chứa
type và payload), và xử lý logic cập nhật dữ liệu bằng Reducer (pure function).
- Công nghệ phụ trợ: HTML, CSS, Bootstrap, JavaScript.
- Back-end (Xử lý nghiệp vụ):
- Spring Boot: Dự án thuộc hệ sinh thái Spring Framework trên nền tảng Java, cung cấp máy chủ nhúng Tomcat, cơ chế cấu hình tự động (auto-configuration), quản lý gói phụ thuộc thông qua Maven Starter Dependencies, hỗ trợ cấu hình ngoài (Externalized Configuration) và phân chia môi trường qua Spring Profiles.
- Hệ quản trị cơ sở dữ liệu: PostgreSQL lưu trữ dữ liệu quan hệ có cấu trúc.
- Hệ thống Chatbot thông minh:
- Amazon Lex: Dịch vụ giao tiếp đàm thoại của AWS tích hợp nhận dạng giọng nói tự động (ASR) và hiểu ngôn ngữ tự nhiên (NLU). Hệ thống phân tích phát ngôn của người dùng (Utterances) để nhận diện ý định (Intent) và trích xuất tham số bổ sung (Slots).
- AWS Lambda: Nền tảng điện toán không máy chủ (serverless) sử dụng ngôn ngữ Python để tiếp nhận dữ liệu từ Amazon Lex, thực thi logic nghiệp vụ và phản hồi kết quả về giao diện chat.
- Thuật toán gợi ý sản phẩm (Content-based Recommendation):
- Kỹ thuật trích xuất đặc trưng văn bản CountVectorizer từ thư viện Scikit-learn giúp chuyển đổi thông tin mô tả sản phẩm sang dạng ma trận tần số từ, có thiết lập chuyển đổi chữ thường (lowercase=True) và loại bỏ từ dừng (stop words).
- Phương thức tính độ tương đồng góc Cosine (Cosine Similarity) trong module
sklearn.pairwise để đo lường mức độ tương đồng giữa các vector đặc trưng của sản phẩm:
$$\text{Cosine_similarity}(A, B) = \frac{\sum_{i=1}^{n} A_i B_i}{\sqrt{\sum_{i=1}^{n} A_i^2} \sqrt{\sum_{i=1}^{n} B_i^2}}$$
Phương pháp nghiên cứu
- Phương pháp khảo sát và đánh giá hiện trạng: Khảo sát thực tế 3 hệ thống thương mại điện tử đang hoạt động:
kingshoes.vn, giayxshop.vn, và nike.com/vn nhằm so sánh giao diện, tính năng, hiệu năng và trải nghiệm người dùng.
- Phương pháp phân tích và thiết kế hệ thống hướng đối tượng: Sử dụng hệ thống biểu đồ UML gồm Use Case Diagram, Sequence Diagram, Activity Diagram, và Class Diagram để mô hình hóa hành vi và cấu trúc của phần mềm.
- Phương pháp kiểm thử phần mềm:
- Kiểm thử hộp trắng (White-box testing): Sử dụng đồ thị dòng điều khiển (Control Flow Graph) và đồ thị dòng dữ liệu (Data Flow Graph) để kiểm thử độ bao phủ nhánh và logic xử lý của module "Thêm sản phẩm vào giỏ hàng".
- Kiểm thử hộp đen (Black-box testing): Xây dựng kịch bản kiểm thử chức năng cho phân hệ quản lý khách hàng và quản lý sản phẩm.
Thiết kế và triển khai
Hệ thống được thiết kế để phân quyền chi tiết cho ba tác nhân (actors): Khách hàng (User), Quản trị viên (Admin), và Người kiểm duyệt/Nhân viên (Moderator).
| Nhóm chức năng |
Khách hàng (User) |
Người kiểm duyệt (Moderator) |
Quản trị viên (Admin) |
| Đăng ký, đăng nhập, quên mật khẩu |
Có |
Có |
Có |
| Tìm kiếm, lọc sản phẩm theo size/giá |
Có |
Có |
Có |
| Quản lý giỏ hàng, đặt hàng, hủy đơn |
Có |
Không |
Không |
| Thanh toán trực tuyến PayPal |
Có |
Không |
Không |
| Trò chuyện Chatbot & Nhận gợi ý |
Có |
Không |
Không |
| Quản lý thông tin cá nhân, mật khẩu |
Có |
Có |
Có |
| Thêm, sửa, xóa bình luận đánh giá |
Có |
Có |
Có |
| Quản lý thông tin khách hàng |
Không |
Có |
Có |
| Quản lý sản phẩm, kích cỡ (size), hình ảnh |
Không |
Có |
Có |
| Quản lý danh mục sản phẩm |
Không |
Có |
Có |
| Quản lý và chuyển trạng thái đơn hàng |
Không |
Có |
Có |
| Quản lý tài khoản hệ thống |
Không |
Không |
Có |
| Quản lý mã giảm giá (Voucher) |
Không |
Không |
Có |
| Quản lý dòng tiền PayPal & Doanh thu |
Không |
Không |
Có |
Thiết kế cơ sở dữ liệu
Cơ sở dữ liệu của hệ thống được xây dựng trên PostgreSQL, bao gồm 9 bảng chính:
accounts: Quản lý tài khoản đăng nhập, mật khẩu, phân quyền vai trò (role).
users: Lưu trữ thông tin chi tiết của người dùng (họ tên, email, số điện thoại, địa chỉ).
products: Lưu trữ thông tin cơ bản về sản phẩm giày (tên, mô tả, giá niêm yết, danh mục).
product_infors: Lưu trữ thông tin chi tiết bổ sung của sản phẩm.
size: Quản lý các kích cỡ có sẵn và số lượng tồn kho tương ứng cho từng sản phẩm.
images: Lưu trữ đường dẫn các hình ảnh chi tiết của sản phẩm.
line_items: Quản lý các mặt hàng được thêm vào giỏ hàng của người dùng.
line_item_orders: Lưu chi tiết danh sách sản phẩm và số lượng tương ứng trong mỗi đơn hàng.
wish_lists: Danh sách các sản phẩm yêu thích được lưu bởi khách hàng.
Nội dung chính theo từng chương
CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI
Chương 1 trình bày lý do chọn đề tài, mục tiêu, phạm vi nghiên cứu, các điều kiện ràng buộc trong quá trình phát triển dự án và khảo sát thực tế các website thương mại điện tử. Nhóm tác giả đã tiến hành phân tích chi tiết ba website: kingshoes.vn, giayxshop.vn, và nike.com/vn về bố cục trang chủ, trang chi tiết sản phẩm, giỏ hàng và quy trình thanh toán. Kết quả so sánh tổng hợp được thể hiện như sau:
| Tiêu chí |
kingshoes.vn |
giayxshop.vn |
nike.com/vn |
| Tốc độ tải |
8/10 |
7/10 |
9/10 |
| Giao diện bắt mắt, bố cục rõ ràng |
8/10 |
7/10 |
9.5/10 |
| Độ thân thiện, dễ sử dụng |
8.5/10 |
7.5/10 |
9/10 |
| Xếp hạng đánh giá chung |
Hạng 2 |
Hạng 3 |
Hạng 1 |
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
Chương này đi sâu vào nền tảng lý thuyết và công nghệ áp dụng trong đồ án:
- Phân tích cấu trúc thư viện ReactJS, kiến trúc Virtual DOM, cú pháp JSX, Functional/Class Components, và các loại Hooks (
useState, useEffect, useContext).
- Trình bày kiến trúc Redux với quy trình vận hành giữa Store, Actions, Reducers và Views trong việc quản lý trạng thái tập trung.
- Giới thiệu Spring Boot, cấu hình Maven, cơ chế tự động cấu hình và nhúng Tomcat.
- Trình bày kiến trúc Chatbot sử dụng Amazon Lex (NLU/ASR, Utterances, Intents, Slots) kết hợp hàm xử lý AWS Lambda (Python). Hạn chế mức chi phí miễn phí được ghi nhận là 10.000 yêu cầu văn bản và 5.000 yêu cầu giọng nói mỗi tháng trong năm đầu tiên.
- Trình bày thuật toán gợi ý dựa trên nội dung (Content-based Filtering), quy trình biến đổi văn bản thành ma trận số bằng
CountVectorizer và công thức tính độ tương đồng Cosine Similarity.
CHƯƠNG 3: YÊU CẦU NGƯỜI DÙNG
Nêu rõ các yêu cầu nghiệp vụ đối với khách hàng (tìm kiếm sản phẩm, đặt hàng, thanh toán), nhân viên/người điều hành (quản lý đơn hàng, báo cáo), và quản trị viên (quản lý người dùng, doanh thu). Xác định phương pháp tiếp cận quy trình quản lý thực tế tại cửa hàng giày và danh mục sản phẩm bàn giao cuối cùng của hệ thống.
CHƯƠNG 4: PHÂN TÍCH HỆ THỐNG
Xác định vai trò của 3 tác nhân (User, Admin, Moderator) và xây dựng lược đồ Use Case tổng thể cùng 26 bảng đặc tả Use Case chi tiết:
- Phân hệ xác thực & tài khoản: Đăng ký, đăng nhập, quên mật khẩu, quản lý thông tin cá nhân, thay đổi mật khẩu, quản lý tài khoản.
- Phân hệ sản phẩm & danh mục: Xem sản phẩm, xem chi tiết sản phẩm, quản lý sản phẩm, quản lý size, quản lý hình ảnh, quản lý danh mục.
- Phân hệ bán hàng & giao dịch: Xem giỏ hàng, thêm/sửa/xóa sản phẩm giỏ hàng, đặt hàng, xem thông tin đơn hàng, hủy đơn hàng, quản lý voucher, quản lý giao dịch online PayPal, thống kê doanh thu.
- Phân hệ tương tác: Thêm/sửa/xóa bình luận, Chatbot tư vấn, gợi ý sản phẩm.
- Thiết kế hệ thống biểu đồ tuần tự (Sequence Diagram) chi tiết cho từng ca sử dụng và biểu đồ hoạt động (Activity Diagram) quản lý danh mục.
CHƯƠNG 5: THIẾT KẾ HỆ THỐNG
Chương 5 hiện thực hóa các phân tích thành mô hình dữ liệu và giao diện người dùng:
- Thiết kế lược đồ logic, Class Diagram và cấu trúc chi tiết của 9 bảng dữ liệu trên PostgreSQL.
- Thiết kế chi tiết luồng giao diện người dùng và quản trị bao gồm: Trang chủ, Đăng nhập, Đăng ký, Quên mật khẩu, Thông tin cá nhân, Danh sách sản phẩm, Chi tiết sản phẩm, Giỏ hàng, Thanh toán, Lịch sử đặt hàng, Quản lý giao dịch PayPal, Thống kê doanh thu theo ngày (dạng bảng và đồ thị), Quản lý tài khoản, Quản lý sản phẩm (modal thêm/sửa, modal size, modal ảnh), Quản lý voucher, và Quản lý đơn hàng.
CHƯƠNG 6: CÀI ĐẶT VÀ KIỂM THỬ
Chương này trình bày chi tiết công tác cài đặt mã nguồn và phương pháp kiểm thử:
- Áp dụng phương pháp kiểm thử hộp trắng cho đoạn mã xử lý chức năng "Thêm sản phẩm vào giỏ hàng":
- Xây dựng đồ thị dòng điều khiển (Control Flow Graph - CFG) và đồ thị dòng dữ liệu (Data Flow Graph - DFG).
- Xây dựng bảng Test Case kiểm thử bao phủ các điều kiện nhánh (Bảng 40).
- Áp dụng kiểm thử hộp đen để rà soát lỗi chức năng:
- Báo cáo lỗi phân hệ Quản lý khách hàng (Bảng 41).
- Báo cáo lỗi phân hệ Quản lý sản phẩm (Bảng 42).
CHƯƠNG 7: TỔNG KẾT
Đánh giá tổng kết toàn bộ kết quả đạt được của đồ án, chỉ ra các nhược điểm còn tồn tại trong quá trình hiện thực hóa hệ thống và định hướng các nội dung cần phát triển tiếp theo.
Kết quả và đóng góp
Kết quả đạt được
- Xây dựng hoàn chỉnh hệ thống website thương mại điện tử bán giày:
- Phân hệ Front-end hoàn thiện bằng ReactJS kết hợp Redux, cung cấp đầy đủ các trang chức năng từ duyệt sản phẩm, lọc theo giá/kích thước, giỏ hàng, đặt hàng đến lịch sử đơn hàng.
- Phân hệ Back-end xây dựng trên nền tảng Spring Boot, xử lý nghiệp vụ thông suốt, tương tác an toàn với cơ sở dữ liệu PostgreSQL.
- Tích hợp các dịch vụ tiện ích mở rộng:
- Tích hợp cổng thanh toán trực tuyến quốc tế PayPal, cho phép quản lý chi tiết dòng tiền thanh toán online.
- Tự động hóa tính toán chi phí vận chuyển và thời gian giao hàng dự kiến dựa trên thông tin địa chỉ khách hàng.
- Tích hợp hệ thống gửi email tự động xác nhận thông tin đơn hàng và đính kèm liên kết xem hóa đơn trực tuyến ngay sau khi đặt hàng thành công.
- Xây dựng Chatbot đàm thoại tự động trên nền tảng Amazon Lex và AWS Lambda (Python).
- Ứng dụng thuật toán gợi ý sản phẩm dựa trên nội dung sử dụng
CountVectorizer và Cosine Similarity.
- Cung cấp phân hệ thống kê doanh thu theo ngày, tháng, năm dưới dạng bảng số liệu và biểu đồ trực quan.
Đóng góp so với giai đoạn Tiểu luận chuyên ngành
So với sản phẩm ban đầu ở giai đoạn Tiểu luận chuyên ngành, nhóm tác giả đã hoàn thành các nội dung nâng cấp và bổ sung:
- Giao diện: Bổ sung trang quên mật khẩu, trang thanh toán đặt hàng, trang cảm ơn, trang xem hóa đơn, trang quản lý voucher, trang quản lý dòng tiền PayPal, và các trang thống kê doanh thu đa chiều; tái cấu trúc bố cục giao diện người dùng và quản trị hài hòa hơn.
- Chức năng: Tích hợp AI gợi ý sản phẩm và Chatbot đàm thoại; tích hợp thanh toán trực tuyến PayPal; bổ sung cơ chế quản lý voucher; hoàn thiện bộ lọc tìm kiếm nâng cao (theo tên, khoảng giá, phân trang, kích cỡ); cho phép thêm cùng một mẫu sản phẩm với nhiều kích cỡ khác nhau vào giỏ hàng; cập nhật quy trình tính phí/thời gian giao hàng và quản lý trạng thái đơn hàng.
Hạn chế và hướng nghiên cứu tiếp
Hạn chế của đề tài
- Quá trình thử nghiệm và vận hành hệ thống chủ yếu thực hiện trong môi trường máy chủ cục bộ, chưa tiến hành đo lường tải thực tế trên quy mô người dùng lớn đồng thời.
- Việc kiểm thử hộp trắng mới chỉ tập trung vào một số hàm nghiệp vụ trọng điểm (như thêm sản phẩm vào giỏ hàng) và kiểm thử giao diện phân hệ quản lý, chưa bao phủ toàn bộ các module của hệ thống.
- Dữ liệu huấn luyện cho Chatbot trên Amazon Lex còn ở mức độ câu hỏi mẫu cơ bản, khả năng xử lý các ngữ cảnh tiếng Việt phức tạp còn hạn chế do phụ thuộc vào mô hình NLU tiêu chuẩn.
Hướng nghiên cứu và phát triển tiếp theo
- Triển khai hệ thống lên hạ tầng đám mây thực tế và tối ưu hóa hiệu năng cơ sở dữ liệu cho các truy vấn phức tạp.
- Tích hợp thêm các cổng thanh toán nội địa phổ biến tại Việt Nam (như VNPAY, MoMo, ZaloPay) bên cạnh PayPal.
- Nâng cấp mô hình Chatbot với tập dữ liệu hội thoại tiếng Việt phong phú hơn, hỗ trợ xử lý ngôn ngữ tự nhiên sâu hơn.
- Phát triển thuật toán gợi ý sản phẩm kết hợp giữa Content-based và Collaborative Filtering (lọc cộng tác dựa trên hành vi người dùng) để tăng độ chính xác.
Giá trị tham khảo
Báo cáo khóa luận là tài liệu tham khảo hữu ích cho:
- Sinh viên ngành Công nghệ thông tin và Kỹ thuật phần mềm: Nắm bắt quy trình xây dựng một ứng dụng web thương mại điện tử hoàn chỉnh theo mô hình kiến trúc phân tách Client-Server sử dụng ReactJS và Spring Boot.
- Người nghiên cứu tích hợp dịch vụ Cloud và AI: Tham khảo kiến trúc tích hợp dịch vụ đàm thoại thông minh Amazon Lex kết hợp xử lý không máy chủ AWS Lambda và ứng dụng Scikit-learn trong bài toán gợi ý sản phẩm (Recommendation System).
- Quy trình phân tích, thiết kế và kiểm thử: Cung cấp mẫu đặc tả 26 Use Case chi tiết, hệ thống sơ đồ tuần tự (Sequence Diagram), sơ đồ lớp (Class Diagram), cùng phương pháp áp dụng đồ thị dòng điều khiển/dữ liệu trong kiểm thử hộp trắng.
Câu hỏi thường gặp
1. Hệ thống sử dụng kiến trúc và công nghệ cốt lõi nào cho Front-end và Back-end?
Phần Front-end sử dụng thư viện ReactJS kết hợp Redux để quản lý trạng thái luồng một chiều và Bootstrap để định dạng giao diện. Phần Back-end sử dụng nền tảng Spring Boot (ngôn ngữ Java) với máy chủ nhúng Tomcat, kết nối với hệ quản trị cơ sở dữ liệu PostgreSQL.
2. Chatbot trong hệ thống được xây dựng bằng công nghệ gì và cơ chế hoạt động như thế nào?
Chatbot được xây dựng bằng dịch vụ Amazon Lex kết hợp với AWS Lambda (ngôn ngữ Python). Amazon Lex đóng vai trò nhận diện giọng nói (ASR) và hiểu ngôn ngữ tự nhiên (NLU) để xác định ý định (Intent) và tham số (Slots) từ phát ngôn của người dùng (Utterances), sau đó kích hoạt AWS Lambda xử lý dữ liệu và phản hồi kết quả về cho khách hàng.
3. Thuật toán gợi ý sản phẩm trong khóa luận được hiện thực bằng phương pháp nào?
Hệ thống sử dụng phương pháp gợi ý dựa trên nội dung (Content-based Filtering). Dữ liệu mô tả sản phẩm được chuyển đổi thành vector số thông qua phương thức CountVectorizer (có xử lý lowercase và loại bỏ stop words), sau đó tính toán độ tương đồng giữa các vector sản phẩm bằng công thức Cosine Similarity (sklearn.pairwise.cosine_similarity).
4. Sự khác biệt về phân quyền giữa quản trị viên (Admin) và người điều hành (Moderator) là gì?
Người điều hành (Moderator) có quyền quản lý khách hàng, sản phẩm, kích cỡ, hình ảnh, danh mục, đơn hàng và bình luận. Quản trị viên (Admin) sở hữu toàn bộ các quyền trên, đồng thời có thêm các đặc quyền cấp cao: quản lý tài khoản hệ thống, quản lý mã giảm giá (Voucher), quản lý dòng tiền thanh toán online PayPal và xem báo cáo thống kê doanh thu.
5. Đồ án đã áp dụng phương pháp kiểm thử nào để đánh giá chất lượng phần mềm?
Đồ án áp dụng cả hai phương pháp: Kiểm thử hộp trắng (White-box testing) bằng cách vẽ đồ thị dòng điều khiển (CFG) và đồ thị dòng dữ liệu (DFG) để thiết kế Test Case cho hàm thêm sản phẩm vào giỏ hàng; và Kiểm thử hộp đen (Black-box testing) để rà soát lỗi chức năng và lập bảng báo cáo lỗi cho phân hệ quản lý khách hàng và sản phẩm.
Kết luận
Khóa luận tốt nghiệp của sinh viên Hoàng Quốc Việt và Nguyễn Đặng Khánh Văn đã hoàn thành mục tiêu thiết kế và xây dựng website bán giày trực tuyến hoàn chỉnh với ReactJS và Spring Boot. Đề tài không chỉ đáp ứng các nghiệp vụ thương mại điện tử cơ bản mà còn tích hợp thành công cổng thanh toán PayPal, Chatbot Amazon Lex/AWS Lambda và thuật toán gợi ý sản phẩm dựa trên nội dung. Công trình phản ánh một quy trình kỹ thuật phần mềm bài bản, từ khảo sát hiện trạng, phân tích thiết kế UML, mô hình hóa cơ sở dữ liệu đến kiểm thử hộp trắng và hộp đen có hệ thống.