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

Trong xu thế phát triển của công nghệ thông tin và chuyển đổi số, việc ứng dụng tin học hóa vào hoạt động kinh doanh đã trở thành yếu tố mang tính quyết định đối với các tổ chức và doanh nghiệp. Thương mại điện tử (TMĐT) mở ra phương thức phân phối hàng hóa trực tuyến song song với các cửa hàng truyền thống, giúp doanh nghiệp tiếp cận khách hàng trên quy mô lớn, rút ngắn khoảng cách giao dịch và tối ưu hóa chi phí vận hành. Đối với người tiêu dùng, nhu cầu mua sắm trực tuyến ngày càng gia tăng do sự tiện lợi, tiết kiệm thời gian đi lại và khả năng dễ dàng so sánh giá cả, chất lượng hàng hóa.

Đề tài "Xây dựng website bán hàng online" được thực hiện nhằm xây dựng một hệ thống website thương mại điện tử chuyên về ngành hàng bách hóa (thực phẩm, đồ uống, sản phẩm chăm sóc cá nhân, đồ gia dụng, thời trang, điện tử) phục vụ nhu cầu mua bán thực tế.

Mục tiêu và nhiệm vụ nghiên cứu của đề tài bao gồm:

  1. Nghiên cứu tổng quan cơ sở lý thuyết về thương mại điện tử, các mô hình kinh doanh trực tuyến và khảo sát các công nghệ phát triển web nền tảng (HTML, CSS, PHP, MySQL, Bootstrap).
  2. Khảo sát, phân tích yêu cầu người dùng, yêu cầu phần mềm và yêu cầu kỹ thuật đối với hệ thống bán hàng bách hóa trực tuyến.
  3. Phân tích và thiết kế hệ thống thông tin: xây dựng các sơ đồ Use Case tổng quát, đặc tả Use Case chi tiết, lập biểu đồ tuần tự và thiết kế cơ sở dữ liệu quan hệ.
  4. Hiện thực hóa và xây dựng giao diện hoàn chỉnh cho cả hai phân hệ: phía khách hàng (tìm kiếm, giỏ hàng, thanh toán, gửi phản hồi) và phía quản trị viên (quản lý sản phẩm, danh mục, tài khoản, phản hồi, đơn hàng).
  • Đối tượng nghiên cứu: Hệ thống thông tin quản lý và quy trình vận hành website bán hàng bách hóa trực tuyến.
  • Phạm vi nghiên cứu:
    • Về mặt nghiệp vụ: Tập trung vào quy trình duyệt sản phẩm, mua hàng không cần đăng ký tài khoản bắt buộc, quản lý giỏ hàng, tạo đơn hàng và các tác vụ quản trị danh mục/sản phẩm/người dùng phía Admin.
    • Về không gian và thời gian: Đề tài được nghiên cứu và triển khai trong khuôn khổ chương trình đào tạo ngành Công nghệ thông tin tại Trường Đại học Tài nguyên và Môi trường Hà Nội vào năm 2023.

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

Khung lý thuyết và công nghệ nền tảng

Tác giả hệ thống hóa các khái niệm và nền tảng lý thuyết cốt lõi phục vụ đề tài:

  • Thương mại điện tử (E-Commerce): Hoạt động mua bán hàng hóa, dịch vụ qua Internet và mạng máy tính, tích hợp các công nghệ như trao đổi dữ liệu điện tử (EDI), chuyển tiền điện tử (EFT), quản lý chuỗi cung ứng và giao dịch trực tuyến. Tác giả điểm lại các mốc lịch sử từ sự xuất hiện của EDI/EFT thập niên 1970, thẻ ATM và ngân hàng điện thoại thập niên 1980, sự phát minh ra World Wide Web năm 1990 của Tim Berners-Lee, việc dỡ bỏ lệnh cấm thương mại trên Internet năm 1995, cho đến sự ra đời của giao thức SSL và đường truyền DSL.
  • Các mô hình kinh doanh TMĐT: Phân loại theo đối tượng tương tác gồm B2C (Doanh nghiệp - Khách hàng), B2B (Doanh nghiệp - Doanh nghiệp), C2B (Khách hàng - Doanh nghiệp), C2C (Khách hàng - Khách hàng), B2G (Doanh nghiệp - Chính phủ), C2G (Khách hàng - Chính phủ), G2B (Chính phủ - Doanh nghiệp), G2C (Chính phủ - Công dân), cùng các hình thức Thương mại di động (M-Commerce), TMĐT doanh nghiệp và TMĐT trên mạng xã hội.
  • Bán hàng online: Các kênh phân phối trực tuyến phổ biến (website riêng, mạng xã hội Facebook/fanpage, blog chuyên đề, sàn TMĐT tổng hợp như Shopee, Lazada, Lotte, Adayroi) và các nguyên tắc vận hành hiệu quả (tối ưu hóa SEO, chiến lược nội dung, chính sách giá, khuyến mãi và chăm sóc khách hàng).

Phương pháp nghiên cứu

Đề tài kết hợp các phương pháp cụ thể:

  • Phương pháp nghiên cứu thư mục / tài liệu: Thu thập, tổng hợp các tài liệu kỹ thuật về kiến trúc web, tiêu chuẩn W3C, tài liệu hướng dẫn lập trình PHP, MySQL và tài liệu về thương mại điện tử.
  • Phương pháp phân tích và thiết kế hệ thống: Sử dụng phương pháp hướng đối tượng và mô hình hóa UML để xây dựng sơ đồ ca sử dụng (Use Case), biểu đồ tuần tự (Sequence Diagram) và sơ đồ quan hệ thực thể (ERD).
  • Phương pháp thực nghiệm phần mềm: Tiến hành cài đặt môi trường máy chủ cục bộ, viết mã nguồn (coding), cấu hình cơ sở dữ liệu và thử nghiệm trực tiếp các chức năng trên trình duyệt web.

Thiết kế và triển khai

Hệ thống website bán hàng online được thiết kế theo mô hình tương tác web động, xử lý dữ liệu phía máy chủ và trả về mã HTML cho trình duyệt phía máy khách.

Công nghệ và công cụ sử dụng

Thành phần Công nghệ / Công cụ Vai trò trong hệ thống
Giao diện (Frontend) HTML, CSS, JavaScript Xây dựng cấu trúc trang, định dạng phong cách giao diện và xử lý tương tác cơ bản
Thư viện / Framework Bootstrap, jQuery Cung cấp hệ thống lưới, thành phần giao diện mẫu đáp ứng đa màn hình (Responsive)
Xử lý máy chủ (Backend) PHP (Server-Side) Ngôn ngữ kịch bản xử lý logic nghiệp vụ, tiếp nhận yêu cầu và tạo trang HTML động
Cơ sở dữ liệu MySQL Hệ quản trị cơ sở dữ liệu quan hệ, lưu trữ thông tin sản phẩm, danh mục, đơn hàng
Môi trường máy chủ XAMPP Gói tích hợp Apache, MySQL/MariaDB và PHP chạy trên máy chủ cục bộ
Môi trường phát triển Visual Studio Code Trình biên soạn mã nguồn hỗ trợ lập trình, gỡ lỗi và quản lý tệp

Phân tích Actors và Use Case

Hệ thống phân định 2 nhóm tác nhân (Actors) chính với các ca sử dụng tương ứng:

  1. Khách hàng (Người dùng):

    • Xem danh sách sản phẩm theo danh mục, nhãn hiệu hoặc nhóm hàng.
    • Tìm kiếm sản phẩm theo từ khóa nâng cao.
    • Xem chi tiết thông tin, hình ảnh, giá bán, mô tả sản phẩm.
    • Quản lý giỏ hàng (thêm sản phẩm, cập nhật số lượng, xóa sản phẩm).
    • Đặt hàng và thực hiện quy trình thanh toán (không bắt buộc đăng ký tài khoản).
    • Gửi thông tin liên hệ và phản hồi đóng góp ý kiến về sản phẩm/dịch vụ.
  2. Quản trị viên (Admin):

    • Đăng nhập, xác thực quyền quản trị.
    • Quản lý tài khoản: Thêm mới, chỉnh sửa thông tin, xóa tài khoản người dùng/quản trị.
    • Quản lý danh mục sản phẩm: Thêm mới danh mục, sửa tên, xóa danh mục không còn sử dụng.
    • Quản lý sản phẩm: Thêm mới sản phẩm, cập nhật thông tin (giá bán, số lượng tồn kho, hình ảnh, mô tả), xóa sản phẩm, phân loại theo danh mục.
    • Quản lý đơn hàng: Theo dõi danh sách đơn đặt hàng, cập nhật trạng thái xử lý đơn hàng ("đã xử lý", "đã hủy").
    • Quản lý phản hồi: Xem nội dung phản hồi của khách hàng, đánh giá/phân loại và cập nhật trạng thái đã phản hồi.

Thiết kế dữ liệu và các thực thể chính

Cơ sở dữ liệu được tổ chức thành các bảng quan hệ liên kết chặt chẽ:

  • Khách hàng / Người dùng (user): Lưu trữ thông tin định danh, tên đăng nhập, mật khẩu, phân quyền quản trị/người dùng.
  • Danh mục sản phẩm (category): Lưu trữ mã danh mục (khóa chính), tên danh mục hàng hóa.
  • Sản phẩm: Lưu trữ mã sản phẩm, tên sản phẩm, giá bán, số lượng, mô tả, hình ảnh minh họa, mã danh mục (khóa ngoại).
  • Giỏ hàng: Lưu trữ tạm thời các sản phẩm được chọn, số lượng và tổng tiền.
  • Đơn hàng: Lưu trữ mã đơn hàng, họ tên khách hàng, số điện thoại, email, địa chỉ giao hàng, phương thức thanh toán, tổng giá trị đơn hàng, ngày tạo và trạng thái đơn hàng.
  • Phản hồi: Lưu trữ tên người gửi, số điện thoại, email, tiêu đề, nội dung và trạng thái phản hồi.

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

Chương I: Tìm hiểu về cơ sở lý thuyết

Chương này tập trung trình bày nền tảng lý luận về thương mại điện tử và công nghệ lập trình web:

  • Tổng quan về lịch sử hình thành, định nghĩa và 8 mô hình thương mại điện tử tiêu biểu (B2C, B2B, C2B, C2C, B2G, C2G, G2B, G2C).
  • Phân tích ưu điểm của TMĐT (tăng trưởng nhanh chóng, mở rộng phạm vi tiếp cận toàn cầu, giảm thiểu chi phí vận hành mặt bằng, mua sắm thuận tiện 24/7) và các thách thức (hạn chế tương tác trực tiếp, khó khăn kỹ thuật, rủi ro bảo mật dữ liệu, logistics quy mô lớn).
  • Phân tích các kênh bán hàng trực tuyến phổ biến và các yếu tố nâng cao hiệu quả bán hàng (đội ngũ nhân viên, khuyến mãi, nội dung khác biệt, tối ưu SEO, cam kết chất lượng).
  • Khảo sát chi tiết cấu trúc, ưu nhược điểm và nguyên lý hoạt động của các công nghệ: HTML (ngôn ngữ đánh dấu cấu trúc tài liệu), CSS (định dạng bố cục, vùng chọn, mô hình hộp padding/border/margin), PHP (ngôn ngữ máy chủ xử lý kịch bản động kết nối CSDL), hệ quản trị MySQL, bộ công cụ XAMPP và trình soạn thảo Visual Studio Code.

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

Chương này đi sâu vào việc mô tả bài toán và xây dựng thiết kế kỹ thuật cho website bán hàng bách hóa:

  • Mô tả bài toán và mục tiêu: Đáp ứng nhu cầu mua sắm tiêu dùng trực tuyến ngày càng cao, tạo giải pháp quản lý hàng hóa chính xác, tiết kiệm chi phí nhân lực cho cửa hàng.
  • Xác định các yêu cầu: Phân tích yêu cầu người dùng (tìm kiếm, giỏ hàng, thanh toán nhanh chóng, giao diện tương thích) và yêu cầu kỹ thuật hệ thống (khả năng chịu tải, mở rộng linh hoạt, độ tin cậy, hiệu suất truy vấn và an toàn thông tin).
  • Mô hình hóa hệ thống:
    • Xây dựng sơ đồ Use Case tổng quát xác định rõ ranh giới chức năng của Admin và Khách hàng.
    • Đặc tả chi tiết từng Use Case: Đăng nhập hệ thống, Quản lý tài khoản, Quản lý danh mục sản phẩm, Quản lý sản phẩm, Quản lý đơn hàng và Quản lý phản hồi.
    • Thiết lập các biểu đồ tuần tự cho các quy trình: đăng nhập, quản lý người dùng, quản lý danh mục và xử lý phản hồi.
    • Thiết kế cấu trúc cơ sở dữ liệu quan hệ, xác định các trường dữ liệu và khóa chính/khóa ngoại giữa các bảng thực thể.

Chương III: Xây dựng website bán hàng online

Chương này trình bày kết quả hiện thực hóa giao diện và chức năng của website:

  • Giao diện phía khách hàng:
    • Giao diện Trang chủ: Thiết kế phân vùng Header (thanh điều hướng, logo, tìm kiếm), Body (danh mục sản phẩm, danh sách mặt hàng bách hóa nổi bật, giá cả, khuyến mãi) và Footer (thông tin liên hệ, bản quyền).
    • Giao diện Giỏ hàng: Hiển thị các sản phẩm đã chọn, số lượng, đơn giá, thành tiền, cho phép cập nhật số lượng hoặc xóa món hàng.
    • Giao diện Thanh toán và Trang cảm ơn: Cho phép người mua nhập thông tin nhận hàng, lựa chọn phương thức thanh toán và hiển thị thông báo xác nhận đặt hàng thành công.
  • Giao diện quản trị (Admin):
    • Giao diện Quản lý danh mục sản phẩm: Bảng hiển thị danh sách danh mục kèm chức năng thêm mới, chỉnh sửa và xóa.
    • Giao diện Quản lý sản phẩm & Thêm sản phẩm: Biểu mẫu nhập thông tin chi tiết (tên, danh mục, giá, số lượng, mô tả, tải lên hình ảnh).
    • Giao diện Quản lý phản hồi: Tiếp nhận thông tin đóng góp từ khách hàng để quản trị viên theo dõi và xử lý.
    • Giao diện Quản lý tài khoản: Quản lý danh sách người dùng và phân quyền quản trị.

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

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

  • Xây dựng hoàn chỉnh một website bán hàng bách hóa trực tuyến hoạt động trên nền tảng PHP và MySQL, vận hành ổn định trên máy chủ cục bộ XAMPP.
  • Triển khai thành công quy trình mua hàng trực tiếp tinh gọn, cho phép khách hàng chọn món, quản lý giỏ hàng và đặt hàng mà không bắt buộc phải qua bước đăng ký tài khoản phức tạp.
  • Xây dựng hệ thống quản trị nội dung (Admin Dashboard) trực quan, hỗ trợ đầy đủ các thao tác thêm, sửa, xóa danh mục, quản lý sản phẩm, kiểm soát số lượng, cập nhật trạng thái đơn hàng và theo dõi phản hồi của người dùng.

Đóng góp của đề tài

  • Đóng góp một giải pháp ứng dụng thực tiễn về xây dựng website thương mại điện tử quy mô vừa và nhỏ bằng công nghệ mã nguồn mở phổ thông, tiết kiệm chi phí triển khai.
  • Cung cấp tài liệu mô tả chi tiết từ cơ sở lý thuyết, phân tích yêu cầu nghiệp vụ, biểu đồ thiết kế hệ thống thông tin (Use Case, Sequence Diagram) đến cấu trúc cơ sở dữ liệu quan hệ chuẩn cho bài toán bán lẻ bách hóa.

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

Hạn chế

  • Do giới hạn về thời gian và điều kiện thực hiện trong phạm vi bài tập lớn/khóa luận, hệ thống chưa tích hợp các cổng thanh toán trực tuyến tự động thông qua API của các ngân hàng hoặc ví điện tử (như VNPay, MoMo, ZaloPay).
  • Hệ thống bảo mật và cơ chế chịu tải đồng thời chưa được kiểm thử trong môi trường thực tế với lưu lượng truy cập lớn.
  • Chưa có phân hệ quản lý vận chuyển chuyên sâu kết nối trực tiếp với các đơn vị vận chuyển (logistics API).

Hướng phát triển

  • Tích hợp các cổng thanh toán trực tuyến tự động và hệ thống theo dõi đơn hàng thời gian thực.
  • Xây dựng thêm thuật toán gợi ý sản phẩm dựa trên lịch sử xem và thói quen mua sắm của khách hàng.
  • Nâng cấp bảo mật hệ thống, tối ưu hóa truy vấn cơ sở dữ liệu và triển khai website lên môi trường máy chủ trực tuyến (Cloud Hosting/VPS).

Giá trị tham khảo

Báo cáo khóa luận có giá trị tham khảo hữu ích cho:

  • Sinh viên ngành Công nghệ thông tin, Hệ thống thông tin, Kỹ thuật phần mềm: Làm tài liệu tham khảo về phương pháp phân tích thiết kế hệ thống thông tin cho các đề tài đồ án tốt nghiệp hoặc bài tập lớn môn học.
  • Người học lập trình web căn bản: Tham khảo mô hình kiến trúc web hướng thủ tục/kết hợp MVC cơ bản sử dụng ngôn ngữ PHP thuần, hệ quản trị MySQL và framework giao diện Bootstrap.
  • Các phần đáng tham khảo:
    • Quy trình đặc tả Use Case chi tiết cho hệ thống bán lẻ trực tuyến (Chương II).
    • Cách thức tổ chức cấu trúc cơ sở dữ liệu quan hệ cho các thực thể sản phẩm, danh mục, giỏ hàng, đơn hàng (Chương II).
    • Thiết kế luồng giao diện người dùng và trang quản trị Admin (Chương III).

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

1. Hệ thống website trong đề tài sử dụng những ngôn ngữ và công nghệ chính nào?

Hệ thống được phát triển bằng ngôn ngữ lập trình kịch bản máy chủ PHP kết hợp hệ quản trị cơ sở dữ liệu quan hệ MySQL. Phía giao diện sử dụng HTML, CSS, JavaScript cùng framework Bootstrap để tối ưu hiển thị. Hệ thống chạy trên môi trường máy chủ cục bộ XAMPP (Apache) và được lập trình bằng công cụ Visual Studio Code.

2. Khách hàng có bắt buộc phải đăng ký tài khoản để mua hàng không?

Không. Theo thiết kế phân tích yêu cầu của đề tài, website hỗ trợ tính năng mua hàng trực tiếp mà không bắt buộc khách hàng phải đăng ký tài khoản thành viên. Khách hàng chỉ cần chọn sản phẩm vào giỏ hàng và nhập thông tin giao hàng tại trang thanh toán. Chức năng đăng nhập/đăng ký được thiết lập dành riêng cho Quản trị viên (Admin) để quản lý hệ thống.

3. Phân hệ Quản trị viên (Admin) có những chức năng nghiệp vụ cụ thể nào?

Phân hệ Admin bao gồm các chức năng: Quản lý danh mục sản phẩm (thêm, sửa, xóa), Quản lý sản phẩm (thêm mới, cập nhật giá, số lượng, mô tả, hình ảnh, phân loại), Quản lý tài khoản (tạo mới, chỉnh sửa thông tin, xóa tài khoản), Quản lý đơn hàng (xem danh sách, chuyển trạng thái xử lý/hủy) và Quản lý phản hồi (xem phản hồi từ khách hàng, phân loại, đánh giá và cập nhật trạng thái phản hồi).

4. Đề tài đã xác định những thực thể cơ sở dữ liệu cốt lõi nào?

Các thực thể chính bao gồm: Khách hàng/Người dùng (user), Danh mục sản phẩm (category), Sản phẩm, Giỏ hàng, Đơn hàng (kèm chi tiết đơn hàng), Quản trị viên và Phản hồi. Các thực thể này được liên kết với nhau qua các khóa chính và mã danh mục/mã định danh sản phẩm.


Kết luận

Đồ án "Xây dựng website bán hàng online" tại Trường Đại học Tài nguyên và Môi trường Hà Nội đã giải quyết trọn vẹn bài toán xây dựng hệ thống thương mại điện tử bách hóa quy mô vừa và nhỏ. Tác giả đã hệ thống hóa đầy đủ cơ sở lý luận về thương mại điện tử, phân tích chi tiết các yêu cầu chức năng, mô hình hóa Use Case và thiết kế cơ sở dữ liệu quan hệ chặt chẽ. Kết quả thực nghiệm đã tạo ra một website hoàn chỉnh với giao diện thân thiện cho người mua hàng và hệ thống công cụ quản trị tiện lợi cho người bán, tạo tiền đề vững chắc cho việc tiếp tục mở rộng các tính năng thanh toán tự động trong tương lai.