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

Thương mại điện tử tại Việt Nam trong những năm gần đây ghi nhận tốc độ tăng trưởng nhanh chóng. Trong phần đặt vấn đề, nhóm tác giả dẫn lại nhận định từ trang thông tin Fibre2fashion cho thấy thị trường thương mại điện tử Việt Nam có tiềm năng vươn lên vị trí dẫn đầu tại khu vực Đông Nam Á. Sự phổ biến của các mô hình sàn giao dịch thương mại điện tử trực tuyến cho phép các thương nhân, tổ chức và cá nhân tiến hành một phần hoặc toàn bộ quy trình mua bán hàng hóa, dịch vụ qua mạng Internet, dần thay đổi hành vi tiêu dùng và từng bước cạnh tranh với các phương thức bán hàng truyền thống.

Đối với sinh viên chuyên ngành Công nghệ phần mềm, việc hiện thực hóa một hệ thống thương mại điện tử quy mô sàn giao dịch đa người dùng (multi-vendor marketplace) đặt ra nhiều thử thách kỹ thuật phức tạp về mặt kiến trúc, quản lý dữ liệu và luồng nghiệp vụ. Thêm vào đó, việc lựa chọn bộ công nghệ MERN stack (MongoDB, Express.js, React.js, Node.js) – một tập hợp công nghệ chưa nằm trong chương trình giảng dạy chính khóa tại trường Đại học Sư phạm Kỹ thuật TP. Hồ Chí Minh ở thời điểm thực hiện – là một bài toán kỹ thuật mới đối với các thành viên thực hiện đề tài.

Mục tiêu và nhiệm vụ của đề tài được xác định cụ thể như sau:

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

    1. Tìm hiểu và làm chủ bộ công nghệ MERN stack.
    2. Xây dựng hoàn chỉnh một hệ thống thương mại điện tử hoạt động dưới hình thức sàn giao dịch.
  • Nhiệm vụ nghiên cứu:

    1. Tìm hiểu lý thuyết chuyên sâu về bộ công nghệ MERN stack.
    2. Nghiên cứu phương pháp và quy trình phân tích, thiết kế, xây dựng hệ thống thương mại điện tử.
    3. Tiến hành lập trình, hiện thực hóa các chức năng của hệ thống sàn giao dịch thương mại điện tử.
    4. Cải thiện, tối ưu hóa hệ thống và phát triển mở rộng ứng dụng trên nền tảng di động (Android App).
  • Đố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 của sàn giao dịch thương mại điện tử; các kỹ thuật xây dựng ứng dụng web và di động toàn diện bằng hệ sinh thái ngôn ngữ JavaScript (MERN stack và React Native).
    • Phạm vi không gian: Đề tài được thực hiện tại Khoa Công nghệ Thông tin, Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh.
    • Phạm vi thời gian: Đề tài triển khai từ ngày 14/02/2022 đến ngày 30/06/2022 theo đề cương luận văn tốt nghiệp.

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

Khung lý thuyết của đề tài tập trung vào hệ sinh thái lập trình JavaScript toàn diện (Full-stack JavaScript), cho phép phát triển đồng bộ từ giao diện người dùng, logic máy chủ đến cơ sở dữ liệu và ứng dụng di động:

  • Ngôn ngữ JavaScript: Nền tảng lập trình bậc cao, kiểu động (dynamic), hoạt động theo cơ chế hướng đối tượng dựa trên nguyên mẫu (prototype-based) và thông dịch tại thời điểm chạy (scripting).
  • Bộ công nghệ MERN stack:
    • MongoDB: Hệ quản trị cơ sở dữ liệu hướng tài liệu (NoSQL Document Store), lưu trữ dữ liệu dưới cấu trúc Document JSON linh hoạt, cho phép mở rộng quy mô và tối ưu hiệu suất truy vấn. Tác giả sử dụng thêm công cụ giao diện người dùng đồ họa MongoDB Compass để quản lý và thao tác dữ liệu cục bộ (Local).
    • Node.js: Môi trường thực thi (Runtime Environment) cho phép chạy mã nguồn JavaScript độc lập ở phía máy chủ (Back-end) ngoài trình duyệt.
    • Express.js: Framework tối giản xây dựng trên nền Node.js, cung cấp hệ thống định tuyến (Routing), quản lý Middleware và hỗ trợ phát triển hệ thống giao diện lập trình ứng dụng RESTful API.
    • React.js: Thư viện mã nguồn mở xây dựng giao diện người dùng do Facebook phát triển, ứng dụng cơ chế Document Object Model ảo (Virtual DOM) và cú pháp JSX nhằm tối ưu tốc độ kết xuất thành phần giao diện.
  • Các thư viện và công nghệ mở rộng:
    • Mongoose ODM: Công cụ mô hình hóa dữ liệu (Object Data Modeling) đóng vai trò cầu nối chuyển đổi giữa các đối tượng trong mã nguồn Node.js và các Document trong cơ sở dữ liệu MongoDB.
    • Redux: Thư viện quản lý trạng thái tập trung (State Management) cho ứng dụng React.js, xử lý dữ liệu thông qua 5 Reducer chính: account, vendor, product, store, user.
    • Bootstrap 5: Thư viện CSS hỗ trợ thiết kế bố cục và các thành phần giao diện web.
    • CORS (Cross-Origin Resource Sharing): Cơ chế trung gian xử lý chia sẻ tài nguyên giữa các cổng (Port) khác nhau của Client và Server.
    • React Native: Framework phát triển ứng dụng di động đa nền tảng bằng JavaScript; kết hợp thư viện @react-navigation để điều hướng màn hình, React Hook useContext (thông qua AuthContext và VendorContext) để quản lý trạng thái nhẹ, và @react-native-async-storage để lưu trữ dữ liệu xác thực cục bộ.

Phương pháp nghiên cứu thực tế bao gồm:

  • Phương pháp nghiên cứu tài liệu: Thu thập, tổng hợp tài liệu kỹ thuật từ các cổng thông tin chính thức của các công nghệ thành phần, tài liệu trực tuyến từ nền tảng Udemy và YouTube.
  • Phương pháp khảo sát hiện trạng: Phân tích, so sánh các tính năng, ưu điểm và nhược điểm thực tế của 4 hệ thống thương mại điện tử lớn gồm Tiki, Shopee, Lazada (tại Việt Nam) và Etsy (quốc tế).
  • Phương pháp mô hình hóa và thiết kế phần mềm: Sử dụng ngôn ngữ mô hình hóa thống nhất (UML) để xây dựng biểu đồ Use case, biểu đồ tuần tự (Sequence Diagram), biểu đồ quan hệ thực thể (ERD) và thiết kế kịch bản kiểm thử (Test cases).

Nguồn dữ liệu của đề tài bao gồm dữ liệu khảo sát tính năng từ các sàn thương mại điện tử hiện hữu và dữ liệu giả lập được thiết kế dạng JSON Document trong quá trình cài đặt, thử nghiệm hệ thống.


Thiết kế và triển khai

Hệ thống mang tên GoodDeal, được thiết kế theo kiến trúc 3 tầng (3-tier Architecture) hiện đại kết hợp với mô hình MVC (Model - View - Controller) ở phía máy chủ:

  • Tầng Cơ sở dữ liệu (Database Layer): Sử dụng cơ sở dữ liệu phi quan hệ MongoDB. Mặc dù các Document JSON có tính cấu trúc linh hoạt và không ràng buộc cứng nhắc như cơ sở dữ liệu quan hệ, nhóm tác giả vẫn áp dụng các mối liên kết trừu tượng (1-1, 1-N, N-N) thông qua Mongoose để duy trì sự nhất quán của thực thể dữ liệu.
  • Tầng Ứng dụng / Máy chủ (Application / Back-end Layer): Xây dựng bằng Node.js và Express.js, chạy trên một cổng (Port) độc lập. Hệ thống triển khai các Router để tiếp nhận yêu cầu HTTP/HTTPS, gọi qua các Middleware kiểm tra quyền truy cập (Authentication, Authorization) và chuyển tới Controller xử lý logic nghiệp vụ trước khi tương tác với cơ sở dữ liệu qua Mongoose ODM.
  • Tầng Hiển thị (Presentation / Client Layer):
    • Web App (Client PC): Phát triển bằng React.js, phân tách cấu trúc thành các Page và Component tái sử dụng. Hệ thống định tuyến chia làm 3 cấp độ: Route (truy cập tự do cho khách), PrivateRoute (yêu cầu đăng nhập dành cho người mua và người bán) và AdminRoute (chỉ dành riêng cho quản trị viên). Trạng thái ứng dụng quy mô lớn được đồng bộ qua Redux Store.
    • Mobile App (Android): Phát triển bằng React Native, thay thế khái niệm Route/Page bằng Navigation (Bottom Navigation) và Screen. Giao diện được xây dựng từ các thành phần nguyên bản của React Native (không dùng HTML/Bootstrap). Cơ chế quản lý dữ liệu sử dụng useContext với AuthContext (quản lý phiên tài khoản) và VendorContext (quản lý bảng điều khiển bán hàng), kết hợp lưu trữ phiên bằng AsyncStorage.
  • Kiểm thử hệ thống: Đề tài tiến hành xây dựng các kịch bản kiểm thử (Test cases) tại Chương 4 để rà soát các luồng nghiệp vụ chính, bảo đảm tính ổn định khi người dùng thao tác qua các chức năng đăng ký, đăng nhập, tìm kiếm, đặt hàng và quản lý gian hàng.

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

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

Nội dung chương trình bày nền tảng lý thuyết về ngôn ngữ JavaScript, phân tích sâu cơ chế hoạt động của từng thành phần trong bộ công nghệ MERN stack (MongoDB, Express.js, React.js, Node.js). Chương này cũng đi sâu vào kiến trúc hệ thống 3 tầng, phân tích việc tổ chức thư mục mã nguồn back-end và front-end, cấu hình cổng kết nối, giải pháp cấu hình CORS nhằm giải quyết bài toán giao tiếp tài nguyên giữa các tiến trình chạy trên các port khác nhau. Ngoài ra, tác giả thuyết minh chi tiết việc mở rộng hệ thống sang nền tảng di động bằng React Native, so sánh sự khác biệt giữa cấu trúc Route/Page trên nền web và Navigation/Screen trên ứng dụng di động, cũng như lý do lựa chọn useContext thay thế cho Redux nhằm tinh gọn ứng dụng di động.

Chương 2: Khảo sát hiện trạng

Chương 2 thực hiện khảo sát chi tiết 4 sàn giao dịch thương mại điện tử điển hình: Tiki, Shopee, Lazada và Etsy. Nhóm tác giả tổng hợp các đặc điểm về giao diện, luồng trải nghiệm, tính năng quản lý gian hàng và thanh toán thành các tiêu chí ưu điểm và nhược điểm:

Sàn TMĐT Ưu điểm chính Nhược điểm chính
Tiki Giao diện đồng nhất; tìm kiếm và lịch sử tìm kiếm hiệu quả; tốc độ tải nhanh; bộ lọc phong phú; thông tin sản phẩm chi tiết; hỗ trợ Chat và nhiều kênh thanh toán. Bố cục trang nhiều thành phần gây rối mắt; danh mục và quảng cáo quá dày đặc; thiếu thanh Menu chính; chưa tối ưu giao diện Responsive cho web; đăng ký gian hàng phức tạp.
Shopee Giao diện dễ nhìn; hỗ trợ nhiều phương thức thanh toán; hệ thống đánh giá theo số sao trực quan; bộ lọc đa dạng; mặc định mỗi tài khoản có gian hàng cá nhân; hệ thống Category và Style đa dạng. Xuất hiện quá nhiều quảng cáo; tải trang, hình ảnh và video đôi khi không ổn định; nhiều tính năng bị hạn chế trên Web và chỉ ưu tiên cho Mobile App; mỗi tài khoản chỉ mở được một gian hàng; chưa hỗ trợ Chat trên phiên bản khảo sát.
Lazada Bố cục dễ tiếp cận; hỗ trợ Chat; đánh giá theo số sao rõ ràng; hỗ trợ đa dạng phương thức thanh toán và tiêu chí tìm kiếm sản phẩm. Mật độ banner quảng cáo quá lớn lấn át sản phẩm; ứng dụng di động bị chia cắt thành 2 ứng dụng riêng biệt giữa người mua và người bán.
Etsy Thiết kế phong cách mới lạ, trẻ trung; hỗ trợ Responsive trên Web; tốc độ tải nhanh; danh mục phân cấp sâu, chi tiết; có chức năng Chat; đầy đủ đánh giá và media. Bố cục trang chứa quá nhiều chi tiết; không lưu lịch sử tìm kiếm; chỉ hỗ trợ thanh toán trực tuyến (Online); tách biệt 2 ứng dụng di động riêng cho người mua và người bán.

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

Chương 3 chiếm dung lượng lớn nhất trong khóa luận, mô tả toàn diện hệ thống từ phân tích yêu cầu nghiệp vụ đến thiết kế chi tiết:

  • Phân tích chức năng theo 4 nhóm tác nhân:
    • Phía Khách (Guest): Đăng ký tài khoản; tìm kiếm, xem danh sách và xem chi tiết sản phẩm; tìm kiếm và xem thông tin gian hàng; tìm kiếm và xem trang cá nhân của người dùng khác.
    • Phía Người mua (Customer): Đăng nhập, đăng xuất, khôi phục mật khẩu qua email; quản lý thông tin tài khoản, đổi mật khẩu; quản lý hồ sơ (ảnh đại diện, ảnh bìa); quản lý danh sách địa chỉ nhận hàng; quản lý giỏ hàng; đặt hàng và thanh toán; theo dõi lịch sử và trạng thái đơn hàng, hủy đơn; đánh giá, phản hồi sản phẩm; theo dõi (follow) sản phẩm và cửa hàng yêu thích.
    • Phía Người bán (Vendor): Đăng ký tạo mới cửa hàng kinh doanh; quản lý nhiều cửa hàng (sở hữu hoặc hợp tác); cập nhật thông tin cửa hàng (ảnh đại diện, ảnh bìa, ảnh đặc trưng); phân quyền và quản lý nhân viên cửa hàng; quản lý danh mục sản phẩm (thêm mới, chỉnh sửa, lưu trữ hoặc mở bán); quản lý trạng thái đơn hàng của shop; quản lý ví điện tử, theo dõi lịch sử biến động số dư và yêu cầu rút tiền; thống kê doanh thu theo đơn hàng, sản phẩm dưới dạng biểu đồ đường, cột, tròn theo mốc thời gian (giờ, ngày, tháng, năm).
    • Phía Quản trị viên (Admin): Thống kê doanh thu toàn sàn, thống kê lượng người dùng mới và cửa hàng mới đăng ký (theo biểu đồ đường, cột, tròn theo giờ, ngày, tháng, năm); quản lý trạng thái người dùng (cấp phép/khóa); kiểm duyệt gian hàng và sản phẩm; theo dõi và cập nhật trạng thái mọi đơn hàng; thiết lập cấu hình danh mục sản phẩm (Category) và thuộc tính sản phẩm (Style); quản lý hệ thống phân cấp người dùng (User level) gắn với tỷ lệ chiết khấu mua hàng; quản lý hệ thống phân cấp cửa hàng (Store level) gắn với chiết khấu thu phí; quản lý danh sách đơn vị vận chuyển (Delivery unit); quản lý biểu phí chính sách hoa hồng (Commission); giám sát toàn bộ lịch sử giao dịch trong hệ thống.
  • Đặc tả Use case và Biểu đồ tuần tự: Trình bày chi tiết các kịch bản tương tác (tiền điều kiện, luồng sự kiện chính, luồng thay thế, ngoại lệ) từ mã UC_001 (Sign up), UC_002 (Sign in), UC_003 (Sign out), UC_004 (Password Recovery) cho đến UC_008 (Account Management) và hàng loạt biểu đồ tuần tự tương ứng cho từng chức năng.
  • Thiết kế cơ sở dữ liệu và giao diện: Xây dựng biểu đồ quan hệ thực thể, đặc tả các trường dữ liệu cho các collection MongoDB và trực quan hóa toàn bộ giao diện từ màn hình máy tính đến ứng dụng di động cho cả 4 phân hệ người dùng.

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

Chương này phản ánh giai đoạn hiện thực hóa đồ án thành sản phẩm phần mềm, thiết lập môi trường chạy cho server Node.js, cấu hình kết nối MongoDB và xây dựng các giao diện web, mobile. Tác giả tiến hành thiết kế bảng kiểm thử (Bảng 4-1: Một số test case) nhằm kiểm tra tính chính xác của các chức năng trọng yếu, kiểm tra phản hồi của giao diện khi nhập dữ liệu hợp lệ và không hợp lệ, ghi nhận kết quả thực thi thực tế nhằm hoàn thiện hệ thống.


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

  • Kết quả đạt được:
    • Về mặt kiến thức: Nhóm tác giả đã nghiên cứu và làm chủ được các thành phần, nguyên lý hoạt động, cấu trúc tổ chức mã nguồn và phương thức tích hợp của bộ công nghệ MERN stack (MongoDB, Express.js, React.js, Node.js).
    • Về mặt thực hành: Hiện thực hóa thành công sản phẩm sàn giao dịch thương mại điện tử GoodDeal, bao gồm hệ thống Website chạy trên máy tính (PC) bằng React.js và ứng dụng di động chạy trên hệ điều hành Android bằng React Native.
    • Về tính năng: Xây dựng tương đối hoàn chỉnh luồng nghiệp vụ đa phân hệ phục vụ 4 nhóm đối tượng: Khách vãng lai, Người mua hàng, Chủ gian hàng/Người bán và Quản trị viên hệ thống. Tích hợp các module mở rộng như phân quyền nhân viên cho shop, hệ thống ví điện tử nội bộ phục vụ rút tiền, cơ chế phân cấp độ thành viên (User level) và cấp độ gian hàng (Store level) gắn liền với chính sách hoa hồng và chiết khấu.
  • Giải pháp và đóng góp của đề tài:
    • Đề xuất mô hình ứng dụng đồng bộ ngôn ngữ JavaScript trên toàn bộ các tầng kiến trúc hệ thống (từ cơ sở dữ liệu, back-end API, giao diện web đến ứng dụng di động), giúp tối ưu hóa quá trình phát triển phần mềm trong phạm vi đồ án tốt nghiệp.
    • Giải quyết bài toán sàn thương mại điện tử đa người bán (multi-vendor) ở mức độ đồ án, tích hợp công cụ phân tích trực quan thông qua các biểu đồ thống kê đa chiều (giờ, ngày, tháng, năm) hỗ trợ công tác quản trị của cả Vendor lẫn Admin.

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

  • Hạn chế (Nhược điểm):
    • Theo đánh giá tự nhận của nhóm tác giả, trong quá trình thực hiện đề tài còn có những giới hạn về mặt kiến thức chuyên sâu, kinh nghiệm thực tế và kỹ thuật công nghệ đối với bộ công cụ mới MERN stack, do đó việc xuất hiện các thiếu sót trong hệ thống là điều không thể tránh khỏi.
    • Dữ liệu thử nghiệm và triển khai cơ sở dữ liệu chủ yếu mới thực hiện trên môi trường cục bộ thông qua MongoDB Compass, chưa khai thác triển khai trên nền tảng đám mây quy mô lớn (như MongoDB Atlas) trong môi trường phân tán thực tế.
  • Hướng nghiên cứu tiếp (Hướng phát triển):
    • Tiếp tục hoàn thiện, bổ sung các chức năng còn thiếu và khắc phục các sai sót, hạn chế phát sinh trong quá trình kiểm thử phần mềm.
    • Tối ưu hóa hiệu năng hệ thống, nâng cao trải nghiệm người dùng trên cả hai nền tảng Web và ứng dụng di động Android.
    • Mở rộng khả năng tương thích của ứng dụng di động sang hệ điều hành iOS bằng cách tận dụng thế mạnh đa nền tảng vốn có của framework React Native.

Giá trị tham khảo

Đồ án tốt nghiệp này mang lại giá trị tham khảo thiết thực cho các đối tượng sau:

  • Sinh viên ngành Công nghệ phần mềm và Công nghệ thông tin: Là tài liệu mẫu hữu ích trong việc tiếp cận và triển khai kiến trúc Full-stack JavaScript với bộ công nghệ MERN stack kết hợp cùng React Native để xây dựng ứng dụng Web và Mobile trong cùng một đồ án.
  • Người làm đề tài về Thương mại điện tử: Cung cấp tài liệu tham khảo chi tiết về quy trình phân tích nghiệp vụ sàn giao dịch đa người bán (multi-vendor marketplace). Các phần đặc biệt đáng tham khảo gồm:
    • Bảng khảo sát, đối sánh ưu - nhược điểm của các sàn giao dịch thực tế (Tiki, Shopee, Lazada, Etsy) tại Chương 2.
    • Hệ thống đặc tả Use case chi tiết từ UC_001 đến UC_008 cùng danh mục hàng chục biểu đồ tuần tự (Sequence Diagram) tại Chương 3, mô tả chính xác luồng dữ liệu cho từng thao tác nghiệp vụ.
    • Cách thức tổ chức cấu trúc Redux Store (5 Reducer) và React Hook useContext kết hợp AsyncStorage cho ứng dụng di động.

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

1. Hệ thống thương mại điện tử trong khóa luận có tên gọi là gì và hỗ trợ các nền tảng nào?
Hệ thống được đặt tên là GoodDeal, bao gồm một phiên bản Website hoàn chỉnh dành cho máy tính (PC) phát triển bằng React.js và một ứng dụng di động dành cho hệ điều hành Android phát triển bằng React Native.

2. Kiến trúc phía Front-end của hệ thống phân chia các tuyến đường (Routes) như thế nào?
Hệ thống định tuyến Web được chia làm 3 loại Route tùy theo mức độ xác thực và phân quyền:

  • Route: Tuyến đường công khai dành cho Khách (Guest), không yêu cầu đăng nhập.
  • PrivateRoute: Tuyến đường yêu cầu xác thực đăng nhập, dành cho Người mua (Customer) và Người bán (Vendor).
  • AdminRoute: Tuyến đường bảo mật chỉ cho phép tài khoản có quyền Quản trị viên (Admin) truy cập.

3. Redux Store phía giao diện Web quản lý các dữ liệu chung thông qua những Reducer nào?
Để xử lý trạng thái ứng dụng ngày càng phức tạp khi mở rộng quy mô, nhóm tác giả xây dựng Redux Store với 5 Reducer chuyên biệt gồm: account (tài khoản), vendor (người bán), product (sản phẩm), store (cửa hàng) và user (người dùng hệ thống).

4. Ứng dụng di động React Native quản lý trạng thái bằng công cụ gì và có điểm gì khác biệt so với phiên bản Web?
Khác với bản Web sử dụng Redux và Bootstrap 5, ứng dụng di động React Native sử dụng React Hook useContext gọn nhẹ hơn với 2 Context cốt lõi là AuthContext (dữ liệu phiên người dùng) và VendorContext (bảng điều khiển người bán). Thông tin xác thực được lưu trữ qua thư viện @react-native-async-storage, cấu trúc điều hướng chuyển đổi từ Routes/Pages sang Navigation (Bottom Navigation) và Screens.

5. Phân hệ Quản trị viên (Admin) có những chức năng cấu hình hệ thống chuyên sâu nào?
Bên cạnh việc quản lý tài khoản, gian hàng và sản phẩm, Admin có quyền cấu hình các chính sách cốt lõi của sàn gồm: quản lý danh mục (Category), thuộc tính sản phẩm (Style), phân cấp người dùng gắn với mức chiết khấu mua hàng (User level), phân cấp cửa hàng gắn với mức chiết khấu hoa hồng (Store level), danh mục đơn vị vận chuyển (Delivery unit) và bảng chính sách tỷ lệ hoa hồng (Commission).


Kết luận

Đồ án tốt nghiệp "Xây dựng hệ thống thương mại điện tử sử dụng MERN stack" của sinh viên Nguyễn Thị Bích Phương và Đặng Văn Nghĩa đã nghiên cứu và hiện thực hóa thành công mô hình sàn giao dịch thương mại điện tử mang tên GoodDeal. Bằng việc kết hợp bộ công nghệ MERN stack ở phía web và React Native ở phía di động, nhóm tác giả đã xây dựng được một giải pháp phần mềm đa nền tảng hoàn chỉnh với đầy đủ các phân hệ chức năng cho Khách, Người mua, Người bán và Quản trị viên. Báo cáo khóa luận cung cấp hệ thống phân tích, thiết kế Use case và Sequence Diagram chi tiết, là nguồn tài liệu tham khảo có giá trị chuyên môn cao cho sinh viên ngành Công nghệ phần mềm khi tiếp cận các bài toán thương mại điện tử thực tế.