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

Đồ án phần mềm "Thiết kế website bán mỹ phẩm cho cửa hàng Q2T Beauty" được thực hiện bởi nhóm tác giả Nguyễn Quý Quốc (MSSV: 21DH112850), Phạm Minh Toàn (MSSV: 21DH111938) và Đặng Võ Minh Trường (MSSV: 20DH111104) dưới sự hướng dẫn của giảng viên Đinh Minh Hoà tại Khoa Công nghệ Thông tin, Trường Đại học Ngoại ngữ - Tin học TP.HCM (HUFLIT) vào tháng 11 năm 2023.

Bối cảnh thực tiễn của đề tài xuất phát từ nhu cầu thương mại điện tử hóa hoạt động kinh doanh của doanh nghiệp tư nhân Q2T Beauty — đơn vị chuyên kinh doanh các dòng sản phẩm mỹ phẩm cao cấp, đa dạng bao gồm son môi, kem dưỡng da, nước hoa và dụng cụ làm đẹp. Để tối ưu hóa trải nghiệm mua sắm trực tuyến cho khách hàng và nâng cao hiệu quả quản trị, doanh nghiệp cần một nền tảng website chuyên nghiệp, hỗ trợ quản lý sản phẩm, đơn hàng, khách hàng và quy trình vận hành trực tuyến.

Mục tiêu nghiên cứu và phát triển hệ thống được xác định cụ thể trong văn bản:

  1. Xây dựng và phát triển một trang web bán mỹ phẩm uy tín, chuyên nghiệp và trực quan nhằm cung cấp các sản phẩm mỹ phẩm chất lượng cao, an toàn qua mạng Internet.
  2. Thiết lập 04 nhóm chức năng nền tảng phục vụ giao dịch trực tuyến bao gồm: Đăng ký/đăng nhập, Tìm kiếm sản phẩm, Giỏ hàng, và Thanh toán.
  3. Cung cấp công cụ quản trị tập trung hỗ trợ doanh nghiệp quản lý danh mục sản phẩm, theo dõi đơn đặt hàng, kiểm soát thông tin tài khoản người dùng và thiết lập các chương trình tiếp thị.

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

  • Đối tượng người dùng: Người tiêu dùng cá nhân có nhu cầu làm đẹp, chăm sóc da; các chuyên gia trang điểm, thẩm mỹ viện và các cửa hàng bán lẻ mỹ phẩm có nhu cầu đặt hàng trực tuyến.
  • Phạm vi hệ thống: Cửa hàng trực tuyến Q2T Beauty; tập trung vào quy trình duyệt sản phẩm, đặt hàng, quản lý đơn hàng, xử lý thông tin tài khoản, cấu hình thanh toán và phân quyền quản trị theo mô hình phân tích thiết kế phần mềm.

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

Đồ án ứng dụng các nền tảng công nghệ và phương pháp luận kỹ thuật phần mềm để khảo sát, phân tích và mô hình hóa hệ thống thông tin:

  • Khung kiến trúc và nền tảng phát triển:
    • .NET Framework: Nền tảng phát triển phần mềm của Microsoft, cung cấp các công cụ, thư viện, cơ chế quản lý bộ nhớ tự động, quản lý tài nguyên và mã hóa dữ liệu, hỗ trợ các ngôn ngữ lập trình như C# và VB.NET.
    • Kiến trúc MVC (Model - View - Controller): Mô hình phân tách cấu trúc ứng dụng thành 3 thành phần chính nhằm tách biệt dữ liệu nghiệp vụ, giao diện hiển thị và logic điều hướng.
    • ASP.NET: Công nghệ xây dựng ứng dụng web tích hợp trong hệ sinh thái .NET.
    • Bộ công nghệ Front-end: Ngôn ngữ đánh dấu siêu văn bản HTML (tuân thủ tiêu chuẩn W3C), CSS định dạng giao diện hiển thị trên nhiều thiết bị và JavaScript xử lý tương tác động phía máy khách (client-side) cũng như trao đổi dữ liệu không đồng bộ với máy chủ.
  • Phương pháp nghiên cứu và mô hình hóa:
    • Phương pháp phân tích thiết kế hệ thống hướng đối tượng bằng ngôn ngữ mô hình hóa hợp nhất (UML).
    • Xây dựng ma trận phân quyền tác tử và ca sử dụng (Actors - Use Cases Matrix).
    • Thiết kế luồng xử lý bằng biểu đồ hoạt động (Activity Diagrams) và biểu đồ trình tự (Sequence Diagrams).
    • Mô hình hóa cấu trúc dữ liệu tĩnh và quan hệ thực thể bằng biểu đồ lớp (Class Diagram) và biểu đồ quan hệ thực thể (ERD).
  • Nguồn dữ liệu và tài liệu tham khảo: Tài liệu hướng dẫn môn học đồ án phần mềm của Trường Đại học Ngoại ngữ - Tin học TP.HCM năm 2023 và các hệ thống thương mại điện tử thực tế trong lĩnh vực mỹ phẩm (như Hasaki).

Thiết kế và triển khai

Hệ thống được thiết kế dựa trên 2 tác tử chính (Actors): Khách hàng (người dùng cuối) và Admin (quản trị viên hệ thống). Kiến trúc ca sử dụng gồm 45 use case phân định rõ ràng giữa hai nhóm người dùng.

Nhóm chức năng Mã Use Case Tác tử thực hiện Mục đích nghiệp vụ
Xác thực & Người dùng UC01, UC02, UC05, UC11 Khách hàng, Admin Đăng ký, đăng nhập, đổi mật khẩu và quản lý thông tin tài khoản (quy định cố định email không được sửa đổi).
Duyệt & Tìm kiếm UC03, UC10 Khách hàng, Admin Tìm kiếm sản phẩm theo tên/từ khóa, lọc điều kiện và xem danh sách danh mục.
Mua sắm & Giỏ hàng UC07, UC12, UC21, UC29 Khách hàng Thêm sản phẩm, xem giỏ hàng, xóa mặt hàng, tăng/giảm số lượng có kiểm tra tồn kho.
Đặt hàng & Thanh toán UC04, UC08, UC30, UC34 Khách hàng Chọn phương thức thanh toán (COD, chuyển khoản ngân hàng, thẻ tín dụng), nhập thông tin giao nhận và gửi đơn hàng.
Quản trị hệ thống UC14, UC15, UC16, UC17, UC25, UC26, UC27, UC28 Admin Quản lý danh sách đơn hàng, duyệt/hủy đơn, thêm/sửa/xóa/vô hiệu hóa tài khoản người dùng.
Quản trị danh mục & Đối tác UC18, UC19, UC31, UC32, UC33, UC35, UC36, UC37, UC38, UC42, UC43, UC44, UC45 Admin CRUD sản phẩm, thương hiệu mỹ phẩm và các đơn vị vận chuyển đối tác.
Khuyến mãi & Đánh giá UC09, UC13, UC20, UC23, UC24, UC39, UC40, UC41 Khách hàng, Admin Xem/gửi đánh giá sản phẩm; quản lý mã khuyến mãi, gán/lọc/xóa sản phẩm trong chương trình khuyến mãi.

Mô hình thiết kế chi tiết được thể hiện qua các sơ đồ:

  • Biểu đồ trình tự (Sequence Diagram): Mô tả quy trình Tìm kiếm sản phẩm và quy trình Đặt hàng từ giao diện người dùng qua các tầng xử lý dữ liệu.
  • Biểu đồ hoạt động (Activity Diagram): Chi tiết hóa 06 quy trình chính gồm Đăng nhập, Hiển thị thông tin cá nhân, Quản lý khách hàng, Đơn hàng và thanh toán, Thêm sản phẩm, và Xóa sản phẩm.
  • Biểu đồ cấu trúc: Class Diagram mô tả quan hệ thuộc tính - phương thức giữa các đối tượng và sơ đồ ERD đặc tả các bảng dữ liệu trong hệ thống.

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

CHƯƠNG I. GIỚI THIỆU CHUNG

Chương này tập trung trình bày nền tảng lý thuyết công nghệ phần mềm và xác lập mục tiêu cho đề tài. Về mặt công nghệ, nhóm tác giả tổng hợp khái niệm và vai trò của:

  • Nền tảng .NET Framework và các ngôn ngữ liên kết (C#, VB.NET);
  • Mô hình kiến trúc MVC trong việc chuẩn hóa cấu trúc ứng dụng web;
  • Bộ ba công nghệ giao diện web bao gồm HTML (cấu trúc tài liệu), CSS (định dạng, bố cục hiển thị đa thiết bị) và JavaScript (xử lý logic tương tác phía client và kết nối server).

Đồng thời, chương giới thiệu tổng quan về đề tài xây dựng website bán mỹ phẩm cho cửa hàng Q2T Beauty, định vị 4 tính năng cơ bản cần xây dựng: Giỏ hàng, Thanh toán, Tìm kiếm sản phẩm, Đăng ký/đăng nhập.

CHƯƠNG II. PHÂN TÍCH THIẾT KẾ HỆ THỐNG

Đây là chương trọng tâm của báo cáo, trình bày chi tiết toàn bộ quá trình phân tích và thiết kế hệ thống thông tin:

  • Đặc tả hệ thống và phạm vi nghiệp vụ: Phân tích nhu cầu nghiệp vụ của Q2T Beauty với các danh mục mỹ phẩm (son môi, kem dưỡng da, nước hoa, dụng cụ làm đẹp); xác định quy tắc quản lý dữ liệu như không cho phép người dùng thay đổi email đăng ký nhằm bảo đảm tính định danh; xác định các hình thức thanh toán (giao hàng thu tiền tại nhà - COD, chuyển khoản ngân hàng).
  • Phân tích đối tượng người dùng: Phân loại nhu cầu của người tiêu dùng cá nhân và các chuyên gia làm đẹp khi tìm kiếm sản phẩm theo tiêu chí (loại da, thương hiệu, mục đích sử dụng, mức giá).
  • Ma trận Actors và 45 Use Cases: Bảng tổng hợp ánh xạ chi tiết 45 ca sử dụng với 2 tác tử Khách hàng và Quản trị viên.
  • Đặc tả chi tiết Use Case: Cung cấp đầy đủ cấu trúc đặc tả cho từng ca sử dụng gồm Mã use case, Tên, Mô tả, Tác tử, Sự kiện kích hoạt (Trigger), Tiền điều kiện (Precondition), Hậu điều kiện (Postcondition), Luồng sự kiện chuẩn (Standard flow), Luồng sự kiện thay thế (Alternative flow), Tình huống lỗi (Error situations) và Trạng thái hệ thống khi có lỗi.
  • Hệ thống sơ đồ thiết kế UML: Trình bày 2 Sequence Diagrams (Tìm kiếm, Đặt hàng), 6 Activity Diagrams (Đăng nhập, Hiển thị thông tin cá nhân, Quản lý khách hàng, Đơn hàng và thanh toán, Thêm sản phẩm, Xóa sản phẩm), cùng Class Diagram và sơ đồ quan hệ thực thể ERD.

CHƯƠNG III. Các tính năng hoàn thành

Chương cuối tổng kết mức độ đáp ứng mục tiêu đề tài, phân định giữa các phần đã hoàn thiện và các phần còn tồn đọng:

  • Các chức năng dành cho khách hàng: 10 tính năng đã hoàn thiện bao gồm xem danh mục sản phẩm, xem chi tiết sản phẩm, thêm sản phẩm vào giỏ hàng, xem giỏ hàng, điều chỉnh số lượng (thêm/giảm/xóa) trong giỏ hàng, thanh toán sản phẩm, đổi mật khẩu tài khoản, quản lý đơn hàng, xem thông tin liên hệ và xem thông tin giới thiệu.
  • Các chức năng dành cho ADMIN: 04 nhóm nghiệp vụ quản trị CRUD hoàn thành gồm quản lý sản phẩm (thêm/sửa/xóa), quản lý loại sản phẩm (thêm/sửa/xóa), quản lý khách hàng (thêm/sửa/xóa), và quản lý đơn hàng (thêm/sửa/xóa).
  • Các tính năng chưa hoàn thành: 04 nhóm nghiệp vụ gồm các tính năng liên quan đến đánh giá sản phẩm, các tính năng liên quan đến khuyến mãi, các tính năng liên quan đến đơn vị vận chuyển, và chức năng cập nhật trạng thái đơn hàng.
  • Bảng phân công công việc: Chi tiết hóa nhiệm vụ thực hiện của 3 thành viên trong nhóm.

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

Đồ án đã xây dựng được hồ sơ phân tích thiết kế phần mềm hoàn chỉnh và hiện thực hóa một phần các chức năng cốt lõi cho website thương mại điện tử Q2T Beauty:

  1. Kết quả xây dựng chức năng hệ thống:

    • Hoàn thành đầy đủ luồng nghiệp vụ mua sắm cơ bản của khách hàng (10 chức năng) từ duyệt sản phẩm, thao tác giỏ hàng, thanh toán đến xem lịch sử đơn hàng và thông tin cá nhân.
    • Hoàn thành 4 phân hệ quản trị nền tảng cho Admin (Sản phẩm, Loại sản phẩm, Khách hàng, Đơn hàng).
    • Thiết lập tài liệu phân tích thiết kế chi tiết gồm 45 use cases có ma trận phân quyền, đặc tả luồng xử lý và các biểu đồ UML bổ trợ.
  2. Kết quả phân công và phối hợp nhóm:

Thành viên Vai trò Nội dung phụ trách theo văn bản
Nguyễn Quý Quốc (21DH112850) Trưởng nhóm Giới thiệu .NET Framework, MVC, HTML, CSS, JavaScript; Giới thiệu đề tài; Phân công công việc; Xây dựng giao diện khách hàng; Xây dựng giao diện Admin.
Phạm Minh Toàn (21DH111938) Thành viên Đặc tả hệ thống; Phạm vi hệ thống; Xây dựng Actors và Use cases; Thiết kế Class Diagram; Xây dựng giao diện liên hệ; Xây dựng giao diện giới thiệu.
Đặng Võ Minh Trường (20DH111104) Thành viên Xác định đối tượng người dùng của hệ thống; Xây dựng toàn bộ Đặc tả Use Case chi tiết (UC01 - UC45).

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

Báo cáo môn học tự ghi nhận các hạn chế và các nội dung chưa hoàn thành trong quá trình thực nghiệm:

  • Hạn chế và tính năng chưa hoàn thành:
    • Phân hệ đánh giá và nhận xét sản phẩm từ khách hàng chưa được kết nối hoàn chỉnh.
    • Phân hệ quản lý chương trình khuyến mãi và mã giảm giá chưa hoàn thiện.
    • Phân hệ tích hợp và quản lý đơn vị vận chuyển chưa được triển khai đầy đủ.
    • Chức năng tự động cập nhật và thay đổi trạng thái đơn hàng (từ đã duyệt sang đang giao, hoàn tất) chưa hoàn tất trong hệ thống thực thi.
  • Hướng phát triển mở rộng:
    • Hoàn thiện mã nguồn và kiểm thử cho 4 nhóm chức năng còn tồn đọng (Khuyến mãi, Đánh giá, Vận chuyển, Cập nhật trạng thái đơn hàng).
    • Hoàn thiện mục tính năng mở rộng theo phạm vi kinh doanh trực tuyến của cửa hàng.

Giá trị tham khảo

Báo cáo đồ án là tài liệu tham khảo phù hợp cho:

  • Sinh viên ngành Công nghệ thông tin và Kỹ thuật phần mềm: Cung cấp tài liệu mẫu về quy trình phân tích thiết kế phần mềm hướng đối tượng (OOAD) cho một đề tài thương mại điện tử quy mô vừa và nhỏ.
  • Người nghiên cứu và xây dựng website thương mại điện tử: Tham khảo trực tiếp cấu trúc ma trận Actors - Use Cases (45 use cases), bộ đặc tả use case chuẩn hóa từng bước (luồng chính, luồng phụ, xử lý lỗi) và cách thức chuyển đổi từ yêu cầu kinh doanh thực tế (cửa hàng mỹ phẩm) sang các mô hình thiết kế UML (Activity, Sequence, Class Diagram, ERD).

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

1. Đề tài được xây dựng nhằm giải quyết bài toán nghiệp vụ cho đơn vị nào và có bao nhiêu tác tử chính?
Đề tài thiết kế website cho doanh nghiệp tư nhân Q2T Beauty kinh doanh mỹ phẩm cao cấp. Hệ thống được phân quyền cho 2 tác tử chính (Actors) là Khách hàng (người mua hàng trực tuyến) và Admin (quản trị viên hệ thống).

2. Quy tắc nghiệp vụ nào được đặt ra đối với việc cập nhật thông tin cá nhân của người dùng?
Theo đặc tả hệ thống ở Chương II, người dùng có thể cập nhật thông tin cá nhân như địa chỉ giao hàng và số điện thoại liên lạc, nhưng hệ thống quy định tuyệt đối không được thay đổi địa chỉ email đã đăng ký.

3. Kiến trúc và công nghệ nào được báo cáo lựa chọn để phát triển hệ thống?
Báo cáo sử dụng nền tảng .NET Framework của Microsoft, mô hình kiến trúc MVC, công nghệ ASP.NET kết hợp ngôn ngữ C#/VB, cùng bộ công nghệ giao diện web gồm HTML, CSS và JavaScript.

4. Trong 45 ca sử dụng được thiết kế, những nhóm chức năng quản trị nào chưa được hoàn thành trong đợt báo cáo này?
Theo công bố tại Chương III, 04 nhóm tính năng chưa hoàn thành gồm: tính năng liên quan đến đánh giá sản phẩm, tính năng liên quan đến khuyến mãi, tính năng liên quan đến đơn vị vận chuyển, và chức năng cập nhật trạng thái đơn hàng.

5. Nhóm tác giả phân chia trách nhiệm xây dựng các biểu đồ thiết kế và đặc tả use case như thế nào?
Sinh viên Đặng Võ Minh Trường phụ trách toàn bộ phần viết Đặc tả Use case chi tiết; sinh viên Phạm Minh Toàn phụ trách thiết kế Actors, Use cases, Class diagram, đặc tả hệ thống và giao diện phụ; sinh viên Nguyễn Quý Quốc (Trưởng nhóm) phụ trách phần công nghệ nền tảng, thiết kế giao diện Khách hàng và giao diện Admin.


Kết luận

Đồ án phần mềm "Thiết kế website bán mỹ phẩm cho cửa hàng Q2T Beauty" của nhóm sinh viên Trường Đại học Ngoại ngữ - Tin học TP.HCM đã hoàn thành việc mô hình hóa bài toán thương mại điện tử với hệ thống 45 ca sử dụng và các biểu đồ UML đồng bộ. Nhóm tác giả đã hiện thực hóa được các chức năng mua sắm cơ bản cho khách hàng cùng các phân hệ quản trị danh mục cốt lõi cho quản trị viên trên nền tảng công nghệ web và .NET Framework. Mặc dù vẫn còn 4 phân hệ phụ trợ chưa hoàn thiện, tài liệu đồ án cung cấp một khung phân tích thiết kế hoàn chỉnh và phương pháp triển khai có hệ thống cho các bài toán phát triển phần mềm bán hàng tương tự.