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

Trong bối cảnh nền kinh tế đối mặt với nhiều khó khăn, người tiêu dùng có xu hướng thắt chặt chi tiêu và tìm kiếm các phương thức mua sắm tiết kiệm. Sự phát triển của mạng Internet và hạ tầng công nghệ thông tin đã thúc đẩy sự chuyển dịch sang thương mại điện tử, cho phép khách hàng dễ dàng tìm kiếm hàng hóa, so sánh giá cả, mua sắm trực tuyến nhằm giảm thiểu chi phí và thời gian đi lại. Trong số các mô hình kinh doanh trực tuyến, hình thức mua hàng theo nhóm (Group-on) nổi lên như một giải pháp dung hòa lợi ích của nhiều bên.

Theo tác giả đồ án, mô hình Groupon được xem là hình thức phát triển tiếp theo của thương mại điện tử, thường được gọi tắt là mô hình B2T (Business To Team) – kế tiếp các mô hình truyền thống như B2B (Business To Business), B2C (Business To Customer), và C2C (Customer To Customer). Bản chất của Groupon là sự kết hợp giữa thương mại điện tử và quảng cáo:

  • Người tiêu dùng: Tiếp cận được các sản phẩm, dịch vụ với mức chiết khấu và giảm giá sâu.
  • Nhà cung cấp: Quảng bá thương hiệu, tiếp cận lượng khách hàng mới với chi phí thấp và giải phóng hàng tồn kho trong mùa thấp điểm.
  • Đơn vị vận hành website: Đóng vai trò kênh trung gian, thu về kinh phí từ các thỏa thuận hợp tác thương mại với đối tác cung ứng.

Nhằm đáp ứng xu thế thực tiễn, nhóm tác giả đã lựa chọn đề tài "Thiết kế website bán hàng theo phương thức Group-on (bán hàng theo nhóm)".

Mục tiêu cụ thể của dự án được xác định bao gồm:

  1. Xây dựng hoàn chỉnh website bán hàng trực tuyến hoạt động theo mô hình Groupon.
  2. Thiết kế và cài đặt các phân hệ (module) chính: tìm kiếm sản phẩm, quản lý giỏ hàng, đăng ký thành viên, bảo mật hệ thống, trưng bày sản phẩm và các chức năng quản trị hệ thống.
  3. Thiết lập các liên kết luân chuyển linh hoạt giữa các bước: lựa chọn mặt hàng, đưa hàng vào giỏ và khởi tạo đơn hàng.
  4. Xây dựng giao diện người dùng trực quan, thân thiện và thuận tiện trong thao tác.

Đối tượng nghiên cứu của đồ án là quy trình kinh doanh mua hàng theo nhóm và các thành phần chức năng của một hệ thống thương mại điện tử B2T. Phạm vi nghiên cứu tập trung vào việc phân tích, thiết kế, lập trình thử nghiệm và kiểm thử phần mềm trên môi trường máy chủ cục bộ (localhost) trong khuôn khổ đồ án môn học Công nghệ phần mềm.


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

Đồ án vận dụng quy trình kỹ thuật phần mềm truyền thống với mô hình phát triển phần mềm dạng Thác nước (Waterfall Model). Nhóm tác giả lựa chọn mô hình này dựa trên các đặc thù:

  • Quy mô dự án ở mức vừa và nhỏ, dễ kiểm soát cấu trúc và phân chia trách nhiệm.
  • Yêu cầu kiểm soát tiến độ chặt chẽ nhằm đảm bảo thời hạn hoàn thành và bảo vệ đồ án.
  • Đòi hỏi sự chuẩn bị kỹ lưỡng về tài liệu đặc tả và thiết kế tại từng pha, do đặc trưng của mô hình thác nước là không quay lại điều chỉnh các giai đoạn đã hoàn tất.

Phương pháp nghiên cứu và phát triển phần mềm được áp dụng bao gồm:

  • Phương pháp phân tích và thiết kế hệ thống hướng đối tượng: Sử dụng ngôn ngữ mô hình hóa UML (Unified Modeling Language) để xây dựng hệ thống biểu đồ Use Case, biểu đồ hoạt động (Activity Diagram), biểu đồ tuần tự (Sequence Diagram) và sơ đồ cơ sở dữ liệu quan hệ (Entity-Relationship).
  • Phương pháp thu thập yêu cầu và phân tích đối chuẩn: Tham khảo các website bán hàng theo nhóm thực tế trên thị trường (như Cungmua, Groupon) để tổng hợp các luồng nghiệp vụ mua chung, quản lý khuyến mãi và giỏ hàng.
  • Nguồn tài liệu nghiên cứu: Giáo trình Công nghệ phần mềm, Giáo trình lập trình PHP, các tài liệu hướng dẫn thiết kế cơ sở dữ liệu và tài liệu kỹ thuật trực tuyến.

Thiết kế và triển khai

Hệ thống được thiết kế và triển khai dựa trên các yêu cầu công nghệ, nền tảng phần mềm và phần cứng xác định:

Môi trường công nghệ và công cụ phát triển

  • Công cụ lập trình và thiết kế: PHP Designer 8.0, Microsoft Visio 2007, IBM Rational Rose Enterprise Edition, Adobe Photoshop CS3.
  • Hệ quản trị cơ sở dữ liệu: MySQL.
  • Ngôn ngữ và công nghệ web: PHP, HTML, CSS, JavaScript, SQL và ASP.net (trong giai đoạn nghiên cứu nền tảng).
  • Yêu cầu cấu hình hệ thống: Máy tính vận hành hệ điều hành Microsoft Windows, dung lượng RAM tối thiểu 128 MB.

Tổ chức nhân sự và phân công công việc

Dự án được thực hiện bởi nhóm sinh viên gồm 04 thành viên thuộc các lớp 09T3 và 09T4:

STT Họ và tên Lớp Vai trò Trách nhiệm chính
1 Võ Phước Hoài Nhã 09T4 Nhóm trưởng Lập kế hoạch, đặc tả quản trị, thiết kế CSDL, lập dữ liệu test, báo cáo test
2 Nguyễn Thị Mỹ Dung 09T3 Thành viên Đặc tả quản trị, thiết kế CSDL, lập bộ dữ liệu test, lập báo cáo test
3 Trần Thị Thu Thuận 09T3 Thành viên Đặc tả khách hàng/phi chức năng, thiết kế giao diện, lập kế hoạch test, triển khai
4 Đào Thị Tường Vi 09T3 Thành viên Đặc tả khách hàng/phi chức năng, thiết kế kiến trúc, lập kế hoạch test, triển khai

Tiến độ triển khai các giai đoạn

Kế hoạch triển khai được phân bổ chi tiết theo từng mốc thời gian thực hiện:

Mốc thời gian Thời lượng Nội dung công việc Thành viên phụ trách Kết quả bàn giao
20/01 – 30/01 10 ngày Chọn đề tài, lựa chọn ngôn ngữ, tìm hiểu tổng quan Tất cả thành viên Định hướng đề tài
17/02 – 30/02 14 ngày Chuẩn bị tài liệu lập kế hoạch, lên đề cương Tất cả thành viên Đề cương dự án
27/03/2013 03 ngày Nghiên cứu chi tiết mô hình mua theo nhóm Group-on Tất cả thành viên Kiến thức tổng quan
02/03/2013 05 ngày Phân tích đề tài, thu thập và xác định yêu cầu Tất cả thành viên Bản yêu cầu dự án
07/03/2013 15 ngày Đặc tả yêu cầu chức năng và phi chức năng Thuận, Vi, Dung, Nhã Tài liệu đặc tả yêu cầu
22/03/2013 01 ngày Kiểm tra, thẩm định giai đoạn đặc tả Tất cả thành viên Hồ sơ đặc tả hoàn chỉnh
23/03/2013 13 ngày Thiết kế giao diện, kiến trúc và cơ sở dữ liệu Thuận, Vi, Dung, Nhã Tài liệu thiết kế hệ thống
05/04/2013 01 ngày Kiểm tra, thẩm định giai đoạn thiết kế Tất cả thành viên Hồ sơ thiết kế hoàn chỉnh
06/04/2013 15 ngày Nghiên cứu sâu HTML, CSS, ASP.net, JavaScript Tất cả thành viên Nắm vững kỹ thuật
21/04/2013 20 ngày Lập trình và mã hóa hệ thống phần mềm Tất cả thành viên Mã nguồn & tài liệu
10/05/2013 03 ngày Xây dựng kế hoạch kiểm thử Thuận, Vi Kế hoạch kiểm thử
13/05/2013 03 ngày Thiết lập bộ dữ liệu kiểm thử Dung, Nhã Bộ dữ liệu thử nghiệm
16/05/2013 03 ngày Tiến hành chạy kiểm thử phần mềm trên localhost Tất cả thành viên Ghi nhận lỗi và xử lý
19/05/2013 02 ngày Lập báo cáo kết quả kiểm thử Dung, Nhã Báo cáo kiểm thử
21/05/2013 02 ngày Tổng hợp hồ sơ và triển khai đóng gói dự án Thuận, Vi Sản phẩm hoàn chỉnh

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

CHƯƠNG 1 : KẾ HOẠCH DỰ ÁN

Chương này tập trung trình bày tổng quan về đề tài, lý do lựa chọn hướng đi thương mại điện tử theo mô hình B2T và phân tích lợi ích kinh tế của mô hình Groupon. Tác giả xác định mô hình thác nước là phương pháp luận xuyên suốt quá trình xây dựng phần mềm; làm rõ các mục tiêu cốt lõi cần đạt được và các ràng buộc về kỹ thuật (phần mềm hỗ trợ, công nghệ lập trình, phần cứng tối thiểu). Bên cạnh đó, chương 1 cung cấp biên bản thành lập nhóm 4 người, phân công nhiệm vụ chi tiết và xác định lịch trình các mốc thời gian thực hiện từ khâu nghiên cứu ban đầu đến khâu đóng gói sản phẩm.

CHƯƠNG 2 : TÀI LIỆU ĐẶC TẢ YÊU CẦU

Chương 2 phân tích chi tiết các yêu cầu nghiệp vụ của hệ thống, phân loại tác nhân và thiết lập tài liệu đặc tả:

  • Phân loại tác nhân tương tác:
    • Khách vãng lai: Người dùng chưa đăng nhập, có quyền xem danh mục, xem chi tiết sản phẩm, tìm kiếm, xem bình luận, xem tin tức, đăng ký tài khoản thành viên, đăng ký nhận email giảm giá và xem thông tin hỗ trợ đặt hàng/thanh toán.
    • Khách hàng (Thành viên): Kế thừa các quyền xem thông tin, có thêm các quyền đăng nhập, lấy lại mật khẩu, sửa thông tin cá nhân, đưa hàng vào giỏ, tạo đơn hàng, quản lý đơn hàng (theo dõi tiến độ, tìm kiếm, hủy đơn hàng) và bình luận sản phẩm.
    • Nhà quản trị (Admin): Thực hiện đăng nhập/đăng xuất, quản trị toàn diện hệ thống gồm: quản lý sản phẩm (thêm, xóa, sửa thông tin, giá, khuyến mãi, tìm kiếm), quản lý đơn đặt hàng (tìm kiếm, xem chi tiết, duyệt đơn, xóa đơn), quản lý danh mục (thêm, sửa, xóa), quản lý nhà cung cấp (thêm, sửa, xóa), quản lý tin tức (đăng tin, cập nhật, xóa tin) và quản lý khách hàng (cập nhật, xóa, tìm kiếm).
  • Yêu cầu phi chức năng: Giao diện trực quan, dễ thao tác, bố trí danh mục hợp lý, tốc độ xử lý nhanh và độ chính xác cao trong truy xuất dữ liệu.
  • Hệ thống Use Case và kịch bản chi tiết: Xây dựng sơ đồ Use Case tổng quát, sơ đồ Use Case cho từng nhóm tác nhân và thiết lập bảng đặc tả kịch bản (Super Use Case, Author, Date, Brief Description, Pre-conditions, Post-conditions, Actor Input và System Response) cho các thao tác nghiệp vụ chính.

CHƯƠNG 3 : THIẾT KẾ

Nội dung chương 3 chuyển hóa các yêu cầu chức năng thành các mô hình kỹ thuật:

  • Biểu đồ hoạt động (Activity Diagram): Mô tả chi tiết dòng công việc (workflow) và các bước xử lý nội bộ của từng tác vụ độc lập: đăng ký, đặt mua sản phẩm, tìm kiếm sản phẩm, lấy lại mật khẩu, theo dõi/hủy/tìm đơn hàng, xem danh mục, xem chi tiết, bình luận, xem thông tin hỗ trợ, đăng ký nhận email, quản lý sản phẩm, quản lý nhà cung cấp và quản lý tin tức.
  • Biểu đồ tuần tự (Sequence Diagram): Mô tả sự tương tác và trình tự truyền thông điệp theo thời gian giữa các đối tượng trong hệ thống cho các chức năng: sửa thông tin cá nhân, tìm kiếm sản phẩm, xem chi tiết, xem danh mục, quản lý đơn hàng, quản lý tin tức, quản lý danh mục và quản lý nhà cung cấp.
  • Thiết kế cơ sở dữ liệu quan hệ: Xây dựng mô hình thực thể kết hợp (E-R), phân tích các mối kết hợp giữa các thực thể, thiết lập cấu trúc chi tiết các bảng dữ liệu, mô tả kết nối khóa chính - khóa ngoại giữa các bảng và định nghĩa các ràng buộc toàn vẹn dữ liệu.

CHƯƠNG 4 : MÃ HÓA

Chương 4 ghi nhận kết quả chuyển đổi từ bản thiết kế sang mã nguồn thực tế và hiển thị giao diện minh họa các phân hệ đã lập trình:

  • Giao diện xem chi tiết sản phẩm.
  • Giao diện hiển thị và quản lý thông tin giỏ hàng.
  • Giao diện danh mục sản phẩm theo các phân loại hàng hóa.

CHƯƠNG 5 : TÀI LIỆU KIỂM THỬ

Chương này chuẩn hóa quy trình kiểm thử chất lượng phần mềm trước khi nghiệm thu:

  • Lập kế hoạch kiểm thử: Xác định phạm vi các chức năng cần kiểm thử, thiết lập tiêu chí đầu vào (Entry Criteria), tiêu chí đầu ra (Exit Criteria), quy định công cụ kiểm thử và phân định người sở hữu từng ca kiểm thử.
  • Thiết kế và thực thi ca kiểm thử: Xây dựng danh sách các ca kiểm thử (Test Cases) chi tiết cho từng chức năng, tiến hành chạy thử nghiệm hệ thống trên môi trường máy chủ cục bộ (localhost), ghi nhận kết quả đạt/không đạt và rút ra kết luận đánh giá chất lượng phần mềm.

CHƯƠNG 6 : TRIỂN KHAI

Chương 6 tổng kết quy trình đưa phần mềm vào sử dụng: biên soạn tài liệu hướng dẫn người dùng cuối, quy trình đóng gói phần mềm và hướng dẫn cài đặt hệ thống trên môi trường máy chủ.


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

Kết quả chính

  • Xây dựng hoàn chỉnh tài liệu kỹ thuật phần mềm gồm đầy đủ các giai đoạn: Lập kế hoạch dự án, Đặc tả yêu cầu (UML Use Case), Thiết kế hệ thống (Biểu đồ hoạt động, Biểu đồ tuần tự, Thiết kế CSDL quan hệ), Mã hóa giao diện và Tài liệu kiểm thử phần mềm.
  • Xây dựng thành công ứng dụng web demo hoạt động trên nền tảng PHP và MySQL, đáp ứng các luồng xử lý cơ bản của mô hình mua hàng theo nhóm như: phân loại danh mục, tìm kiếm mặt hàng, đặt mua và quản lý giỏ hàng, hủy/duyệt đơn hàng và quản lý nhà cung cấp.
  • Hoàn thành bộ kịch bản kiểm thử (test cases) có phân định rõ ràng giữa tiêu chí đầu vào và tiêu chí đầu ra trên môi trường máy chủ cục bộ.

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

  • Hệ thống hóa luồng nghiệp vụ mua bán theo nhóm (Groupon / B2T) thành các kịch bản tương tác cụ thể giữa 3 nhóm tác nhân (Khách vãng lai, Khách hàng thành viên, Quản trị viên).
  • Cung cấp tài liệu mẫu về việc áp dụng mô hình Thác nước vào dự án phát triển ứng dụng web quy mô nhỏ của sinh viên ngành Công nghệ thông tin.

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

  • Hạn chế: Nhóm tác giả bước đầu làm quen với việc phát triển ứng dụng web nên gặp nhiều khó khăn trong quá trình làm việc nhóm và tiếp cận công nghệ; hệ thống mới được triển khai và kiểm thử trong môi trường thử nghiệm cục bộ (localhost), chưa vận hành trên máy chủ Internet thực tế.
  • Hướng phát triển: Hoàn thiện khâu đóng gói sản phẩm, nâng cấp tính bảo mật của hệ thống và bổ sung các cơ chế thanh toán trực tuyến linh hoạt hơn cho mô hình mua chung.

Giá trị tham khảo

Đồ án là tài liệu tham khảo hữu ích cho sinh viên ngành Công nghệ thông tin, Kỹ thuật phần mềm và Hệ thống thông tin khi thực hiện các đồ án môn học như Công nghệ phần mềm, Phân tích thiết kế hệ thống, hoặc Phát triển ứng dụng web:

  • Phần đặc tả Use Case và kịch bản tương tác (Chương 2): Cung cấp cấu trúc bảng mô tả chuẩn xác về luồng sự kiện (Actor Input / System Response), điều kiện tiên quyết và điều kiện sau của từng chức năng.
  • Phần kế hoạch dự án và phân công công việc (Chương 1): Cung cấp mẫu bảng phân chia tiến độ, thời lượng và trách nhiệm theo mô hình phát triển phần mềm Thác nước.
  • Phần thiết kế biểu đồ UML và kiểm thử (Chương 3 & Chương 5): Giúp người học tham khảo cách xây dựng biểu đồ hoạt động, biểu đồ tuần tự và mẫu lập kế hoạch kiểm thử theo tiêu chí đầu vào/đầu ra.

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

1. Đồ án định nghĩa mô hình Groupon (B2T) là gì và mang lại lợi ích gì cho các bên tham gia?

Theo đồ án, Groupon là mô hình mua hàng theo nhóm, được xem là mô hình thứ 4 của thương mại điện tử (gọi tắt là B2T - Business To Team, sau B2B, B2C, C2C). Thực chất, đây là mô hình kết hợp giữa thương mại điện tử và quảng cáo. Mô hình này mang lại lợi ích cho 3 bên: người tiêu dùng mua được hàng giảm giá lớn; nhà cung cấp quảng bá thương hiệu, thu hút khách hàng mới và giải phóng hàng tồn kho; còn trang web trung gian thu được kinh phí từ thỏa thuận với doanh nghiệp đối tác.

2. Nhóm tác giả đã lựa chọn mô hình phát triển phần mềm nào và vì sao?

Nhóm tác giả lựa chọn Mô hình thác nước (Waterfall model). Lý do lựa chọn là vì đây là dự án có quy mô nhỏ, dễ quản lý và cần đảm bảo thời gian hoàn thành chính xác kịp tiến độ bảo vệ đồ án. Mô hình này yêu cầu nhóm phải chuẩn bị kiến thức và hoàn thiện đặc tả kỹ lưỡng tại từng pha vì đặc thù không thể quay lại pha trước đó.

3. Hệ thống phần mềm yêu cầu môi trường công nghệ và cấu hình kỹ thuật như thế nào?

  • Phần mềm và công cụ: PHP Designer 8.0, MySQL, Adobe Photoshop CS3, Microsoft Visio 2007, IBM Rational Rose Enterprise Edition.
  • Ngôn ngữ: PHP, HTML, CSS, JavaScript, SQL.
  • Cấu hình hệ thống: Hệ điều hành Windows, bộ nhớ RAM tối thiểu 128 MB.

4. Hệ thống phân chia quyền hạn cho các nhóm tác nhân nào?

Hệ thống phân chia thành 3 nhóm tác nhân chính:

  • Khách vãng lai: Đăng ký tài khoản, tìm kiếm, xem danh mục, xem chi tiết sản phẩm, xem bình luận, xem tin tức, xem thông tin hỗ trợ và đăng ký nhận email thông báo giảm giá.
  • Khách hàng (Thành viên): Đăng nhập, lấy lại mật khẩu, sửa thông tin cá nhân, tìm kiếm, quản lý giỏ hàng, đặt mua sản phẩm, bình luận và quản lý đơn hàng (theo dõi, tìm kiếm, hủy đơn hàng).
  • Nhà quản trị (Admin): Quản lý sản phẩm (thêm, xóa, sửa, tìm kiếm), quản lý đơn đặt hàng (xem chi tiết, duyệt đơn, tìm kiếm, xóa), quản lý danh mục (thêm, sửa, xóa), quản lý nhà cung cấp (thêm, sửa, xóa), quản lý tin tức (đăng, sửa, xóa) và quản lý khách hàng (cập nhật, xóa, tìm kiếm).

5. Dự án được thực hiện trong khoảng thời gian nào và cơ cấu nhóm ra sao?

Dự án được thực hiện bởi nhóm 4 sinh viên (Võ Phước Hoài Nhã - Nhóm trưởng, Nguyễn Thị Mỹ Dung, Trần Thị Thu Thuận, Đào Thị Tường Vi) từ các lớp 09T3 và 09T4. Toàn bộ tiến độ được phân bổ từ ngày 20/01/2013 đến ngày 21/05/2013, trải qua các giai đoạn từ tìm hiểu đề tài, đặc tả yêu cầu, thiết kế hệ thống, lập trình mã hóa, kiểm thử trên localhost đến tổng hợp và triển khai.


Kết luận

Đồ án "Thiết kế website bán hàng theo phương thức Group-on (bán hàng theo nhóm)" đã hoàn thành đầy đủ quy trình xây dựng phần mềm theo mô hình Thác nước, bao gồm từ khâu lập kế hoạch, thu thập đặc tả yêu cầu, thiết kế UML, xây dựng cơ sở dữ liệu đến mã hóa và kiểm thử. Hệ thống đã hiện thực hóa các chức năng mua hàng theo nhóm trực tuyến trên nền tảng PHP và MySQL với giao diện tương tác cho khách hàng và phân hệ quản trị chi tiết. Toàn bộ tài liệu đồ án cung cấp cấu trúc mẫu chuẩn mực, có giá trị tham khảo thiết thực cho các nghiên cứu và đồ án kỹ thuật phần mềm cùng chuyên ngành.