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

Trong bối cảnh công nghệ thông tin và Internet phát triển mạnh mẽ, Thương mại điện tử (E-Commerce/E-Business) đã trở thành một kênh phân phối và trao đổi thương mại quan trọng, thiết lập mối quan hệ trực tiếp giữa nhà cung cấp và khách hàng. Tuy nhiên, qua khảo sát thực tế thị trường, nhóm tác giả nhận thấy phần lớn các website bán hàng hiện nay có xu hướng trưng bày quá nhiều chủng loại mặt hàng tổng hợp. Việc này dẫn đến việc thiếu sự đầu tư chuyên sâu về mặt hình ảnh, thông số kỹ thuật và thông tin chi tiết cho từng phân khúc cụ thể, khiến người tiêu dùng gặp khó khăn trong việc tiếp cận dữ liệu sản phẩm đầy đủ. Trong khi đó, nhu cầu thời trang, đặc biệt là phân khúc giày sneaker của giới trẻ, ngày càng gia tăng và đòi hỏi trải nghiệm mua sắm trực quan, nhanh chóng.

Đề tài "Website Bán Giày Sneaker" được thực hiện dưới dạng Đồ án CDIO (mã học phần SE 347) tại Khoa Công nghệ Thông tin, Trường Đại học Duy Tân, nhằm giải quyết bài toán xây dựng một nền tảng bán hàng trực tuyến chuyên biệt hóa.

Mục tiêu nghiên cứu

  1. Xây dựng website thương mại điện tử chuyên biệt cho sản phẩm giày sneaker nhằm quảng bá sản phẩm trực tiếp đến người tiêu dùng và chuyển đổi khách truy cập thành khách hàng tiềm năng.
  2. Thiết lập hệ thống hỗ trợ vận hành thay thế cửa hàng bán lẻ vật lý và nhân viên bán hàng, cho phép khách hàng tra cứu, so sánh mẫu mã, đánh giá và đặt hàng trực tuyến.
  3. Cung cấp bộ công cụ quản trị tinh gọn cho chủ cửa hàng phục vụ quản lý danh mục sản phẩm, theo dõi đơn hàng, xử lý khiếu nại, vận hành chương trình khuyến mãi, thuế và thống kê doanh thu.
  4. Xây dựng tài nguyên mã nguồn chuẩn hóa có khả năng tái sử dụng cho các mô hình cửa hàng trực tuyến tương tự.

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

  • Đối tượng nghiên cứu:
    • Các công nghệ, ngôn ngữ lập trình phục vụ phát triển ứng dụng web: HTML, CSS, JavaScript, ReactJS, NodeJS.
    • Các công cụ và hệ quản trị cơ sở dữ liệu hỗ trợ thiết kế, phân tích và triển khai: Visual Studio Code, Draw.io, Figma, MongoDB, MySQL.
  • Phạm vi nghiên cứu:
    • Quy trình và phương thức giao dịch, mua bán trực tuyến trên nền tảng web.
    • Quy trình xử lý thông tin đơn hàng, quản lý giỏ hàng và dữ liệu khách hàng phục vụ tiếp thị số.
    • Phương thức liên kết ngân hàng phục vụ quy trình thanh toán qua thẻ trực tuyến.
    • Thời gian thực hiện: Từ ngày 20/10/2023 đến ngày 30/12/2023.

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

Đồ án vận dụng khung phương pháp luận tiếp cận kỹ thuật theo chuẩn CDIO (Conceive - Design - Implement - Operate) trong kỹ nghệ phần mềm để triển khai từ bước hình thành ý tưởng, phân tích yêu cầu, thiết kế kiến trúc đến xây dựng mô hình hệ thống.

Mô hình triển khai CDIO cho dự án:
Ý tưởng sản phẩm (Conceive) -> Phân tích yêu cầu & Thiết kế UML (Design) -> Mô hình hóa CSDL & Giao diện (Implement/Prototype)

Phương pháp nghiên cứu và mô hình hóa

  • Phương pháp thu thập và phân tích yêu cầu: Phân tích quy trình kinh doanh bán lẻ truyền thống và thương mại điện tử để trích xuất các yêu cầu chức năng (functional requirements) và phi chức năng (non-functional requirements).
  • Phương pháp mô hình hóa hướng đối tượng bằng UML (Unified Modeling Language):
    • Sử dụng biểu đồ ca sử dụng (Use Case Diagram) để phân định ranh giới hệ thống và trách nhiệm của từng tác nhân.
    • Sử dụng biểu đồ tuần tự (Sequence Diagram) để mô tả luồng thông điệp giữa các đối tượng và thành phần hệ thống theo thời gian.
    • Sử dụng biểu đồ hoạt động (Activity Diagram) để thể hiện logic nghiệp vụ và luồng xử lý dữ liệu của từng chức năng cụ thể.
  • Phương pháp thiết kế cơ sở dữ liệu: Chuẩn hóa dữ liệu quan hệ và mô hình hóa cấu trúc lưu trữ thông tin nghiệp vụ bán hàng.
  • Phương pháp thiết kế trải nghiệm và giao diện người dùng (UI/UX): Xây dựng mẫu giao diện tương tác hỗ trợ đa nền tảng thông qua phần mềm Figma.

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

Đề xướng ý tưởng sản phẩm (Cá nhân)

Trong giai đoạn đầu của mô hình CDIO, các thành viên nhóm đã tiến hành khảo sát và đề xuất ý tưởng cá nhân nhằm đánh giá tính khả thi và định hướng phát triển:

Tiêu chí đánh giá Nguyễn Đình Hậu Dương Văn Hữu
Tên ý tưởng sản phẩm Website bán giày sneaker Website mua bán đồ second hand
Chuyên ngành Công nghệ phần mềm Công nghệ phần mềm
Ngày đề xướng 24/08/2023 24/08/2023
Nền tảng kiến thức áp dụng HTML, CSS, JavaScript, ReactJS, NodeJS, Figma, MongoDB HTML, CSS, JavaScript, ReactJS, NodeJS, Figma, MongoDB
Đối tượng hưởng lợi ước tính Các cửa hàng bán giày và khách hàng có nhu cầu xem, mua giày trực tuyến Khách hàng muốn mua đồ cũ và các cửa hàng thời trang second hand
Quy mô đối tượng hưởng lợi 1.000 người 1.000 người
Số lượng khách hàng trả phí 20 người 20 người
Khả năng thu hút đầu tư Khá Khá
Độ khó ước tính Trung bình Khá
Thời gian phát triển dự kiến 01 tháng 04 tháng

Dựa trên sự cân đối về thời gian, mức độ khả thi và tính tập trung của thị trường, nhóm đã thống nhất lựa chọn đề tài phát triển hệ thống Website bán giày sneaker làm nội dung chính của đồ án.

Phần I: Đặc tả yêu cầu chức năng

Phần này làm rõ kiến trúc phân quyền và các yêu cầu nghiệp vụ của hệ thống:

  • Khách vãng lai (Guest): Cho phép tìm kiếm sản phẩm theo từ khóa, xem danh sách sản phẩm, xem chi tiết mẫu mã/thông số giày và đăng ký tài khoản thành viên mới.
  • Thành viên (User): Thực hiện đăng nhập/đăng xuất, quản lý và cập nhật thông tin cá nhân, thay đổi mật khẩu, quản lý giỏ hàng (thêm, sửa số lượng, xóa), thực hiện quy trình đặt hàng và chọn phương thức thanh toán, xem lịch sử đơn hàng, mua lại đơn hàng cũ, và gửi đánh giá/bình luận sản phẩm.
  • Nhà quản trị (Admin): Quản lý toàn bộ danh mục sản phẩm (thêm mới, cập nhật thông tin, xóa sản phẩm), quản lý và duyệt trạng thái đơn hàng, tìm kiếm đơn hàng, quản lý và kiểm duyệt đánh giá, quản lý tài khoản người dùng (xem danh sách, khóa/mở tài khoản, xóa), quản trị chương trình khuyến mãi, thiết lập biểu thuế và xuất các báo cáo thống kê (doanh thu, sản phẩm bán chạy, hiệu quả khuyến mãi, khách hàng mua nhiều nhất).
  • Yêu cầu phi chức năng: Hệ thống vận hành trên môi trường web, tương thích với các trình duyệt phổ biến trên máy tính và thiết bị di động chạy Android/iOS; tốc độ phản hồi nhanh, đáp ứng khả năng truy cập đồng thời của nhiều người dùng; giao diện tối giản, thẩm mỹ và dễ thao tác.

Phần II: Phân tích và thiết kế hệ thống

Tài liệu tập trung chi tiết hóa 3 tác nhân hệ thống cùng toàn bộ sơ đồ phân tích nghiệp vụ:

  • Tác nhân Guest: Người dùng chưa đăng ký tài khoản.
  • Tác nhân User: Thành viên đã đăng ký tài khoản hợp lệ.
  • Tác nhân Admin: Người quản trị hệ thống có toàn quyền cấu hình và giám sát.

Phần phân tích cung cấp hệ thống biểu đồ Use Case tổng quát và chi tiết, đi kèm biểu đồ tuần tự (Sequence Diagram) và biểu đồ hoạt động (Activity Diagram) cho từng nhóm nghiệp vụ độc lập: Quản lý thông tin cá nhân, Quản lý sản phẩm, Đặt hàng và thanh toán, Quản lý đơn hàng, Quản lý đánh giá, Đăng ký tài khoản, Tìm kiếm sản phẩm, Quản lý giỏ hàng, Xem chi tiết sản phẩm, Quản lý lịch sử đơn hàng, Quản lý khuyến mãi, Quản lý tài khoản người dùng, Quản lý thuế và Báo cáo thống kê.


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

Đặc tả luồng sự kiện một số ca sử dụng tiêu biểu

  1. Ca sử dụng "Đăng ký tài khoản" (Guest):

    • Luồng sự kiện chính: Guest truy cập chức năng Đăng ký -> Hệ thống hiển thị form nhập liệu -> Người dùng nhập thông tin (Tên đăng nhập, Email, Mật khẩu) và gửi yêu cầu -> Hệ thống xác thực tính hợp lệ của dữ liệu, ghi nhận thông tin vào cơ sở dữ liệu và hiển thị thông báo thành công.
    • Luồng thay thế: Nếu định dạng email không chính xác hoặc email/tên tài khoản đã tồn tại, hoặc độ dài mật khẩu không đạt yêu cầu, hệ thống xuất cảnh báo lỗi tương ứng để người dùng chỉnh sửa.
  2. Ca sử dụng "Quản lý sản phẩm - Thêm sản phẩm" (Admin):

    • Luồng sự kiện chính: Admin chọn chức năng Thêm mới sản phẩm -> Hệ thống trả về biểu mẫu nhập thông tin sản phẩm -> Admin điền đầy đủ dữ liệu (tên giày, hình ảnh, giá, mô tả, thông số) và nhấn nút Thêm -> Hệ thống kiểm tra tính hợp lệ -> Lưu vào CSDL và gửi thông báo thành công lên giao diện.
  3. Ca sử dụng "Đặt hàng và Chọn phương thức thanh toán" (User):

    • Điều kiện tiên quyết: User đã đăng nhập và có ít nhất một sản phẩm trong giỏ hàng.
    • Luồng sự kiện chính: User xem lại giỏ hàng, xác nhận đặt hàng và lựa chọn phương thức thanh toán -> Hệ thống truy vấn CSDL để cập nhật thông tin đơn hàng -> Xác thực dữ liệu thanh toán -> Trả về thông báo hoàn tất giao dịch và chuyển hướng người dùng về trang chủ.
  4. Ca sử dụng "Duyệt đơn hàng" (Admin):

    • Luồng sự kiện chính: Admin chọn xem trạng thái đơn hàng -> Hệ thống truy xuất CSDL và hiển thị danh sách đơn hàng cần xử lý -> Admin kiểm tra chi tiết và thay đổi trạng thái đơn hàng (Đã tiếp nhận, Đang xử lý, Hoàn tất hoặc Hủy) -> Hệ thống xử lý cập nhật trạng thái trong CSDL và hiển thị kết quả.

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

Hệ thống được thiết kế với 10 bảng dữ liệu chính phục vụ toàn bộ chu trình lưu trữ và xử lý nghiệp vụ bán hàng:

Tên bảng CSDL Mục đích và vai trò lưu trữ
Tài khoản Lưu trữ thông tin đăng nhập, thông tin định danh của người dùng và quản trị viên.
Loại tài khoản Định nghĩa các nhóm quyền hạn và vai trò trong hệ thống (Admin, User).
Phân loại Tài khoản Bảng trung gian/chi tiết quản lý phân cấp và ràng buộc nhóm quyền của tài khoản.
Sản phẩm Lưu trữ thông tin chi tiết các mẫu giày sneaker (mã, tên, giá, số lượng tồn, hình ảnh, mô tả).
Chi tiết Hóa đơn Lưu trữ danh sách sản phẩm, số lượng, đơn giá trong từng đơn hàng cụ thể.
Nhập - Xuất Quản lý lịch sử và biến động xuất/nhập kho của danh mục sản phẩm.
Đánh giá Lưu trữ nội dung nhận xét, phản hồi, điểm đánh giá của người dùng đối với từng sản phẩm.
Khuyến mại Lưu trữ các chương trình giảm giá, mã ưu đãi, thời hạn áp dụng.
Chi tiết Khuyến mại Quản lý quy tắc áp dụng khuyến mãi theo từng mặt hàng hoặc hóa đơn.
Thuế Lưu trữ các cấu hình và định mức biểu thuế áp dụng cho các giao dịch bán lẻ.

Thiết kế giao diện (UI)

Báo cáo trình bày đặc tả bố cục và chức năng của các giao diện trọng tâm:

  • Giao diện Trang chủ (Home): Được thiết kế theo cơ chế liên kết danh mục, hiển thị các khối sản phẩm nổi bật, hệ thống hashtag hỗ trợ liên kết các sản phẩm tương tự nhằm gia tăng trải nghiệm tìm kiếm và tối ưu doanh thu.
  • Giao diện Đăng ký: Form chuẩn hóa các trường nhập liệu thông tin cá nhân và tài khoản, tích hợp các bộ kiểm tra điều kiện dữ liệu (validation) trực tiếp trước khi gửi về máy chủ.

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

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

  • Hoàn thành đầy đủ hồ sơ thiết kế kỹ thuật phần mềm theo phương pháp luận CDIO cho đề tài Website bán giày sneaker.
  • Xây dựng hệ thống tài liệu mô hình hóa hoàn chỉnh bao gồm 13 nhóm Use Case, 28 biểu đồ tuần tự (Sequence Diagram), 28 biểu đồ hoạt động (Activity Diagram) phản ánh chi tiết các luồng xử lý logic.
  • Thiết lập cấu trúc cơ sở dữ liệu quan hệ chuẩn hóa với 10 thực thể bảng, đảm bảo bao quát toàn bộ nghiệp vụ từ quản lý danh mục, đơn hàng, hóa đơn đến chính sách thuế, khuyến mãi và báo cáo thống kê.
  • Đưa ra bản thiết kế giao diện chi tiết cho các chức năng cơ bản (Home, Đăng ký) tạo tiền đề cho giai đoạn lập trình và đóng gói sản phẩm.

Đóng góp thực tiễn của đề tài

  • Khắc phục nhược điểm của các website thương mại điện tử tổng hợp bằng việc đề xuất mô hình website chuyên sâu cho ngành hàng giày dép, chú trọng vào chi tiết sản phẩm, hình ảnh và hệ thống thẻ liên kết tương đồng.
  • Xây dựng mô hình lưu trữ dữ liệu khách hàng làm tài nguyên phục vụ các chiến dịch tiếp thị số (Digital Marketing) và Email Marketing cá nhân hóa trong thương mại điện tử.

Hạn chế và hướng phát triển

  • Hạn chế: Báo cáo hiện tại tập trung chủ yếu vào giai đoạn Phân tích và Thiết kế hệ thống (Conceive & Design), bao gồm đặc tả yêu cầu, mô hình hóa UML, thiết kế cơ sở dữ liệu và thiết kế giao diện mẫu. Phần triển khai mã nguồn chi tiết, kiểm thử phần mềm trên môi trường thực nghiệm và tích hợp cổng thanh toán trực tiếp với các đơn vị trung gian thanh toán ngân hàng chưa được trình bày chi tiết trong văn bản.
  • Hướng phát triển:
    • Tiếp tục hoàn thiện lập trình toàn diện hệ thống backend (NodeJS) và frontend (ReactJS) dựa trên các biểu đồ thiết kế đã xây dựng.
    • Tích hợp và cấu hình hệ quản trị cơ sở dữ liệu (MySQL/MongoDB) để kiểm thử hiệu năng truy vấn dữ liệu thực tế.
    • Xây dựng các module kết nối trực tiếp với API thanh toán ngân hàng và ví điện tử trực tuyến.
    • Tối ưu hóa khả năng hiển thị tương thích trên các thiết bị di động (Android và iOS).

Giá trị tham khảo

Báo cáo đồ án CDIO SE 347 là tài liệu tham khảo hữu ích cho:

  • Sinh viên ngành Công nghệ phần mềm và Công nghệ thông tin: Tham khảo cấu trúc chuẩn mực của một bài báo cáo phân tích thiết kế hệ thống thương mại điện tử theo mô hình CDIO; học hỏi phương pháp đặc tả luồng sự kiện chi tiết của ca sử dụng (Use Case Specification).
  • Người nghiên cứu và xây dựng hệ thống bán hàng trực tuyến: Tham khảo cách thức phân rã nghiệp vụ quản lý bán lẻ (sản phẩm, giỏ hàng, hóa đơn, khuyến mãi, quản lý thuế và báo cáo thống kê) cùng cấu trúc thiết kế 10 bảng dữ liệu cơ bản.

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

1. Đồ án này được thực hiện bởi nhóm tác giả nào và trong thời gian bao lâu?

Đề tài do nhóm sinh viên Nhóm 05 gồm Nguyễn Đình Hậu (Trưởng nhóm, MSV: 27211202570) và Dương Văn Hữu (MSV: 27211202219) thuộc lớp SE347 AI / K27 TPM17, Khoa Công nghệ Thông tin, Trường Đại học Duy Tân thực hiện dưới sự hướng dẫn của GVHD Đỗ Thành Bảo Ngọc. Thời gian triển khai dự án từ ngày 20/10/2023 đến ngày 30/12/2023.

2. Hệ thống phân chia người dùng thành những tác nhân (actors) nào?

Hệ thống xác định 3 tác nhân chính:

  • Guest (Khách vãng lai): Người dùng chưa đăng ký, có quyền tìm kiếm, xem chi tiết sản phẩm và đăng ký tài khoản.
  • User (Thành viên): Người dùng đã có tài khoản, có quyền đăng nhập, quản lý thông tin cá nhân, quản lý giỏ hàng, đặt hàng, xem lịch sử đơn hàng và gửi đánh giá.
  • Admin (Nhà quản trị): Quản lý toàn bộ sản phẩm, đơn hàng, tài khoản, đánh giá, khuyến mãi, biểu thuế và xem báo cáo thống kê.

3. Cơ sở dữ liệu của hệ thống gồm những bảng nào?

Cơ sở dữ liệu được thiết kế gồm 10 bảng: Bảng CSDL Nhập - Xuất, Bảng CSDL phân loại Tài khoản, Bảng CSDL Tài khoản, Bảng CSDL loại tài khoản, Bảng CSDL Đánh giá, Bảng CSDL chi tiết Hóa đơn, Bảng CSDL Sản phẩm, Bảng CSDL Thuế, Bảng CSDL Khuyến mại và Bảng CSDL chi tiết Khuyến mại.

4. Nhóm chức năng thống kê dành cho Admin hỗ trợ những báo cáo nào?

Hệ thống cung cấp 4 chức năng thống kê nghiệp vụ cụ thể cho Admin bao gồm:

  • Thống kê doanh thu bán hàng.
  • Thống kê danh sách sản phẩm bán chạy.
  • Thống kê hiệu quả áp dụng các chương trình khuyến mãi.
  • Thống kê danh sách khách hàng có lượng mua nhiều nhất.

Kết luận

Đồ án CDIO SE 347 "Website Bán Giày Sneaker" của nhóm sinh viên Trường Đại học Duy Tân đã hoàn thành việc khảo sát, đề xuất ý tưởng và xây dựng hồ sơ phân tích thiết kế chi tiết cho một nền tảng thương mại điện tử chuyên biệt. Bằng việc áp dụng các công cụ mô hình hóa UML, thiết kế cơ sở dữ liệu quan hệ và đặc tả giao diện theo định hướng tối ưu hóa trải nghiệm người dùng, đồ án đã giải quyết bài toán nghiệp vụ bán lẻ trực tuyến cho ngành hàng thời trang sneaker. Đây là cơ sở kỹ thuật vững chắc để tiếp tục triển khai lập trình hoàn thiện và đưa sản phẩm vào ứng dụng thực tế.