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

Lý do chọn đề tài

Đồ án được thực hiện xuất phát từ nhu cầu thực tiễn của thương mại điện tử trong bối cảnh mua sắm trực tuyến ngày càng phổ biến. Nhóm tác giả chỉ ra ba lợi thế cốt lõi của kênh bán hàng trực tuyến so với kênh truyền thống: (1) tiết kiệm thời gian — người mua chỉ cần 10 đến 25 phút để tìm và đặt được sản phẩm thay vì di chuyển đến trung tâm mua sắm; (2) linh hoạt về thời điểm — cửa hàng trực tuyến hoạt động liên tục, không phụ thuộc giờ mở cửa; (3) kho hàng phong phú — hạn chế tình trạng hết màu, hết mẫu thường gặp khi mua sắm ngoài tiệm.

Về phía công nghệ, nhóm lựa chọn PHP làm ngôn ngữ lập trình phía server vì tính nhanh, dễ sử dụng và phù hợp với phát triển website thương mại điện tử. Từ những lý do đó, nhóm chọn đề tài "Xây dựng website bán laptop" làm đồ án CDIO trong khuôn khổ chương trình đào tạo ngành Công Nghệ Phần Mềm.

Mục tiêu của đề tài

Đề tài đặt ra các mục tiêu cụ thể sau:

  1. Xây dựng môi trường mua sắm trực tuyến giúp khách hàng tìm kiếm sản phẩm một cách thuận tiện.
  2. Cung cấp cái nhìn tổng quan về các nhà cung cấp hàng hóa, hỗ trợ khách hàng so sánh lựa chọn.
  3. Rút ngắn khoảng cách giữa người mua và nhà cung cấp thông qua nền tảng trao đổi trực tuyến.
  4. Số hóa việc quản lý hàng hóa, giúp người bán kiểm soát kho hàng và đơn hàng dễ dàng hơn.
  5. Tổ chức sản phẩm có hệ thống theo danh mục, tạo điều kiện tìm kiếm nhanh cho người dùng.

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

Đối tượng nghiên cứu tập trung vào ba nội dung: phân tích thiết kế hệ thống website bán hàng online; xây dựng website quản lý bằng ngôn ngữ PHP; quy trình nghiệp vụ bán hàng trực tuyến.

Phạm vi nghiên cứu được xác định cụ thể:

Chiều phạm vi Nội dung
Thời gian 04/11/2023 – 25/12/2023
Công nghệ PHP (ngôn ngữ lập trình), MySQL (hệ quản trị cơ sở dữ liệu)
Phương pháp tiếp cận Phân tích thiết kế hướng đối tượng
Nghiệp vụ Quy trình cung cấp dịch vụ bán hàng trực tuyến

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

Khung phương pháp CDIO

Đồ án được thực hiện theo mô hình CDIO (Conceive – Design – Implement – Operate), trong đó tài liệu trình bày chi tiết hai giai đoạn đầu: Conceive (Ý tưởng) và Design (Phân tích & Thiết kế hệ thống). Đây là phương pháp luận đặc trưng của chương trình đào tạo kỹ thuật theo chuẩn CDIO được áp dụng tại nhiều trường đại học kỹ thuật Việt Nam.

Phương pháp phân tích và thiết kế hệ thống

Nhóm sử dụng phân tích thiết kế hướng đối tượng (Object-Oriented Analysis and Design) làm phương pháp chủ đạo, thể hiện qua các công cụ mô hình hóa:

  • Use Case Diagram (Biểu đồ ca sử dụng tổng quát) để xác định các tác nhân và chức năng hệ thống.
  • Sequence Diagram (Biểu đồ tuần tự) để mô tả luồng tương tác giữa các đối tượng theo từng ca sử dụng cụ thể.
  • Activity Diagram (Biểu đồ hoạt động) để thể hiện luồng xử lý nghiệp vụ.
  • Thiết kế cơ sở dữ liệu quan hệ bằng MySQL.

Công nghệ và công cụ

Hạng mục Công cụ / Công nghệ
Công cụ phân tích thiết kế Draw.io
Môi trường lập trình Visual Studio Code
Ngôn ngữ phía server PHP
Hệ quản trị cơ sở dữ liệu MySQL
Giao diện người dùng HTML/CSS
Nền tảng triển khai Trình duyệt web, hỗ trợ Android và iOS

Nguồn dữ liệu

Nhóm tổng hợp tài liệu liên quan đến quy trình bán hàng, phân tích yêu cầu hệ thống, và lựa chọn giải pháp kỹ thuật phù hợp. Không có khảo sát người dùng hoặc bộ dữ liệu thực nghiệm được đề cập trong phần phạm vi nghiên cứu được cung cấp.


Nội dung chính theo từng phần

Phần I: Conceive — Xây dựng ý tưởng

Giai đoạn Conceive ghi lại ý tưởng cá nhân của từng thành viên trong nhóm theo biểu mẫu chuẩn của mô hình CDIO. Nhóm gồm bốn thành viên, đều thuộc chuyên ngành Công Nghệ Phần Mềm, mỗi người đề xuất một ý tưởng sản phẩm riêng trước khi nhóm thống nhất chọn đề tài chung:

Thành viên Ý tưởng cá nhân Ước tính người hưởng lợi Ước tính vòng đời sản phẩm
Hoàng Gia Khiêm Website bán laptop 2.000 người 5 năm
Đỗ Mạnh Trung Website khai báo y tế 2.500 người 5 năm
Nguyễn Vũ Tuấn Kiệt Website quản lý rạp chiếu phim 2.000 người 5 năm
Lê Văn Thành Phát Website bán điện thoại — —

Ý tưởng được chọn triển khai là website bán laptop do thành viên Hoàng Gia Khiêm đề xuất, với ước tính khoảng 900 người sẵn sàng chi trả cho sản phẩm, thời gian phát triển ước tính 2 năm, và đối tượng hưởng lợi bao gồm học sinh, sinh viên, người làm việc văn phòng và streamer.

Trong phần đánh giá năng lực, thành viên chủ chốt xác nhận đã có nền tảng về phân tích thiết kế hệ thống, phân tích hướng đối tượng, các ngôn ngữ lập trình (Java, C#, ASP.NET, PHP) và HTML/CSS; đang trong quá trình học hệ quản trị cơ sở dữ liệu tại thời điểm thực hiện đồ án.

Về mô tả chức năng hệ thống đề xuất, nhóm xác định ba nhóm tác nhân chính và phân quyền rõ ràng:

Khách vãng lai (Guest): tìm kiếm sản phẩm, xem chi tiết sản phẩm, quản lý giỏ hàng, đăng ký tài khoản.

Thành viên đã đăng ký (User): đăng ký / đăng nhập / đăng xuất, quản lý thông tin cá nhân, quản lý lịch sử đơn hàng, đánh giá sản phẩm.

Nhà quản trị (Admin): đăng nhập / đăng xuất, quản lý sản phẩm, quản lý đơn hàng, quản lý đánh giá, quản lý tài khoản, quản lý khuyến mãi, quản lý thuế, thống kê.

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

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

Hệ thống được mô tả là website thương mại điện tử phân loại sản phẩm theo danh mục, hỗ trợ chức năng tìm kiếm, giỏ hàng và lưu trữ thông tin người dùng. Yêu cầu phi chức năng bao gồm: truy cập nhanh, hỗ trợ nhiều khách hàng đồng thời, giao diện đơn giản và thẩm mỹ, tương thích trình duyệt web phổ thông và thiết bị di động chạy Android hoặc iOS.

Tác nhân của hệ thống

Tài liệu định nghĩa chính thức ba tác nhân:

STT Tên tác nhân Mô tả
1 Guest Người dùng chưa đăng ký; có thể đăng ký, đăng nhập, tra cứu thông tin dịch vụ
2 User Thành viên đã đăng ký; có quyền xem, tìm kiếm, liên hệ, đánh giá và bình luận
3 Admin Người quản trị; có quyền cập nhật, chỉnh sửa, xóa dịch vụ và tài khoản

Mô hình hóa use case và luồng xử lý

Tài liệu trình bày Use Case Diagram tổng quát bao quát toàn bộ chức năng của ba tác nhân. Tiếp theo, từng nhóm chức năng được phân tích chi tiết qua cả Sequence Diagram lẫn Activity Diagram:

  • Quản lý thông tin cá nhân: ba kịch bản — xem thông tin, sửa thông tin, đổi mật khẩu.
  • Quản lý giỏ hàng: bốn kịch bản — xem giỏ hàng, thêm vào giỏ hàng, sửa giỏ hàng, xóa khỏi giỏ hàng.
  • Xem sản phẩm: hai kịch bản — xem chi tiết sản phẩm, thêm vào giỏ hàng từ trang sản phẩm.
  • Quản lý lịch sử đơn hàng: hai kịch bản — xem lại đơn hàng, mua lại hàng.

Thiết kế giao diện người dùng

Tài liệu liệt kê các màn hình giao diện được thiết kế:

  • Giao diện trang chủ
  • Giao diện đăng nhập
  • Giao diện đăng ký
  • Giao diện sản phẩm (danh sách)
  • Giao diện chi tiết sản phẩm
  • Giao diện giỏ hàng
  • Giao diện đặt hàng

Thiết kế và triển khai

Kiến trúc hệ thống

Hệ thống được xây dựng theo mô hình client-server, trong đó PHP đảm nhận xử lý logic phía server, MySQL lưu trữ dữ liệu quan hệ, và HTML/CSS tạo dựng giao diện phía client. Thiết kế hướng đối tượng được áp dụng trong cả khâu phân tích lẫn lập trình.

Phân hệ chức năng theo tác nhân

Hệ thống được phân quyền rõ ràng theo ba cấp độ người dùng. Phân hệ Admin mở rộng hơn so với phân hệ User ở các module quản lý nghiệp vụ: quản lý sản phẩm, đơn hàng, đánh giá, tài khoản, khuyến mãi, thuế và chức năng thống kê — đây là điểm phân biệt rõ nét giữa hai phân hệ.

Cơ sở dữ liệu

Tài liệu đề cập thiết kế cơ sở dữ liệu quan hệ bằng MySQL. Phạm vi nội dung được cung cấp không trình bày chi tiết sơ đồ thực thể — quan hệ (ERD) hay cấu trúc bảng cụ thể.

Môi trường phát triển

Công cụ mô hình hóa Draw.io được sử dụng để vẽ toàn bộ biểu đồ UML; Visual Studio Code là IDE lập trình chính.


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

Kết quả chính

Trong phần nội dung được cung cấp, đồ án hoàn thiện hai trong bốn giai đoạn CDIO:

  • Giai đoạn Conceive: hoàn chỉnh tài liệu ý tưởng cá nhân của cả bốn thành viên; đánh giá năng lực kỹ thuật, tiềm năng thị trường và khả năng thu hút đầu tư cho từng ý tưởng; lựa chọn và thống nhất ý tưởng triển khai.
  • Giai đoạn Design: xây dựng đặc tả yêu cầu chức năng; thiết lập ba tác nhân và phân quyền hệ thống; xây dựng Use Case Diagram tổng quát và chi tiết cho bốn nhóm chức năng chính; thiết kế bảy màn hình giao diện người dùng; thiết kế cơ sở dữ liệu.

Đóng góp thực tiễn

Đồ án cụ thể hóa việc áp dụng mô hình CDIO vào một bài toán thương mại điện tử thực tế trong phạm vi học phần, từ giai đoạn hình thành ý tưởng đến thiết kế hệ thống hoàn chỉnh. Việc tích hợp chức năng lưu trữ thông tin khách hàng được nhóm xác định là nền tảng cho các chiến lược email marketing và digital marketing về sau — phản ánh sự quan tâm đến giá trị dài hạn của dữ liệu người dùng trong vận hành thương mại điện tử.


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

Phần nội dung được cung cấp không trình bày mục hạn chế hay hướng nghiên cứu tiếp theo một cách tường minh. Dựa trên phạm vi đã xác định, có thể nhận thấy một số giới hạn tự nhiên của đề tài:

  • Thời gian thực hiện ngắn (khoảng 7 tuần, từ 04/11/2023 đến 25/12/2023) có thể ảnh hưởng đến mức độ hoàn thiện của các tính năng nâng cao như thanh toán trực tuyến, giao diện quản trị thống kê chi tiết hay tối ưu hiệu suất tải trang.
  • Phạm vi sản phẩm giới hạn ở laptop, chưa mở rộng sang các dòng thiết bị điện tử khác.
  • Đồ án chưa đề cập đến kiểm thử hệ thống (unit test, integration test) hoặc triển khai trên môi trường hosting thực tế.

Hướng phát triển tiếp theo có thể bao gồm tích hợp cổng thanh toán điện tử, xây dựng ứng dụng di động native, hoặc mở rộng danh mục sản phẩm sang toàn bộ thiết bị điện tử.


Giá trị tham khảo

Đồ án phù hợp làm tài liệu tham khảo cho các đối tượng sau:

  • Sinh viên năm 2–3 ngành Công Nghệ Phần Mềm đang học các môn phân tích thiết kế hệ thống hoặc lập trình web, đặc biệt những nhóm thực hiện đồ án CDIO lần đầu. Phần Conceive với mẫu đánh giá ý tưởng cá nhân là tài liệu hình mẫu cụ thể cho giai đoạn này.
  • Sinh viên học PHP và MySQL có thể tham khảo cách nhóm xác định kiến trúc hệ thống, phân tầng tác nhân và thiết kế use case cho bài toán thương mại điện tử.
  • Nhóm thực hiện đồ án website bán hàng thuộc bất kỳ lĩnh vực hàng hóa nào có thể tái sử dụng bộ khung phân tích: ba tác nhân (Guest/User/Admin), cấu trúc phân quyền, và danh sách use case cho các chức năng giỏ hàng, đặt hàng, quản lý lịch sử đơn hàng.

Phần đáng tham khảo nhất là mục 2.3 — Mô tả chi tiết ca sử dụng, nơi cả Sequence Diagram và Activity Diagram đều được xây dựng song song cho từng kịch bản nghiệp vụ, tạo nên một bộ tài liệu thiết kế có tính nhất quán cao.


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

1. Đồ án triển khai theo mô hình nào và giai đoạn nào đã được hoàn thiện trong tài liệu? Đồ án triển khai theo mô hình CDIO bốn giai đoạn. Trong tài liệu được cung cấp, hai giai đoạn đầu đã có nội dung: Conceive (xây dựng ý tưởng cá nhân của bốn thành viên) và Design (phân tích và thiết kế hệ thống hoàn chỉnh).

2. Nhóm phân định quyền hạn giữa ba loại người dùng như thế nào? Guest chỉ có quyền đọc và đăng ký; User có thêm quyền cá nhân hóa (quản lý thông tin, lịch sử đơn hàng, đánh giá sản phẩm); Admin có toàn quyền quản trị bao gồm quản lý sản phẩm, đơn hàng, đánh giá, tài khoản, khuyến mãi, thuế và thống kê.

3. Công cụ và ngôn ngữ kỹ thuật nào được xác định trong giai đoạn Design? PHP làm ngôn ngữ phía server, MySQL làm hệ quản trị cơ sở dữ liệu, Visual Studio Code làm IDE lập trình, Draw.io làm công cụ vẽ biểu đồ UML, HTML/CSS cho giao diện người dùng.

4. Chức năng giỏ hàng được mô hình hóa đến mức độ chi tiết nào? Chức năng giỏ hàng được phân tích qua bốn kịch bản riêng biệt (xem, thêm, sửa, xóa), mỗi kịch bản có cả Sequence Diagram và Activity Diagram độc lập — đây là nhóm chức năng được mô hình hóa chi tiết nhất trong tài liệu.

5. Tại sao ý tưởng website bán laptop được chọn thay vì các ý tưởng khác của nhóm? Tài liệu không trình bày quá trình lựa chọn chính thức giữa các ý tưởng. Ý tưởng website bán laptop do thành viên Hoàng Gia Khiêm đề xuất ngày 04/11/2023 được ghi nhận là tên đề tài chính thức của đồ án, trong khi ba ý tưởng còn lại (khai báo y tế, rạp chiếu phim, bán điện thoại) được lưu trong phần Conceive như tài liệu ý tưởng cá nhân của từng thành viên.


Kết luận

Đồ án "Xây dựng website bán laptop" là sản phẩm CDIO cấp đại học của nhóm bốn sinh viên ngành Công Nghệ Phần Mềm, thực hiện trong khoảng thời gian từ tháng 11 đến tháng 12 năm 2023. Tài liệu trình bày đầy đủ giai đoạn Conceive — với bộ ý tưởng cá nhân được đánh giá theo khung tiêu chuẩn CDIO — và giai đoạn Design — với hệ thống phân tích thiết kế hướng đối tượng sử dụng Use Case Diagram, Sequence Diagram và Activity Diagram cho các nhóm chức năng chính. Công nghệ PHP, MySQL và Draw.io tạo nên nền tảng kỹ thuật của đề tài, phù hợp với năng lực và giai đoạn đào tạo của nhóm thực hiện. Đây là tài liệu thiết kế hệ thống có cấu trúc rõ ràng, có giá trị tham chiếu cho các đồ án website thương mại điện tử ở cùng cấp độ.