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

Sự bùng nổ của mạng Internet và công nghệ thông tin đã thúc đẩy thương mại điện tử (E-Commerce) trở thành phương thức kinh doanh tất yếu, giúp xóa bỏ rào cản về không gian địa lý và thời gian hoạt động. Đối với các cá nhân và doanh nghiệp bán lẻ, việc ứng dụng nền tảng trực tuyến giúp tiết giảm chi phí mặt bằng, nhân sự và tối ưu hóa khả năng tiếp cận khách hàng. Theo Báo cáo chỉ số Thương mại điện tử Việt Nam (EBI) 2019 được trích dẫn trong đề tài, tốc độ tăng trưởng của thương mại điện tử Việt Nam năm 2018 đạt trên 30%, hướng tới mục tiêu 10 tỷ USD cho loại hình B2C (doanh nghiệp với người tiêu dùng) vào năm 2020 theo Kế hoạch tổng thể phát triển thương mại điện tử quốc gia giai đoạn 2016 – 2020.

Trong bối cảnh cạnh tranh thị trường thiết bị di động và sản phẩm công nghệ, tác giả Phạm Tuyên (Lớp D17PM03, Khoa Kỹ thuật - Công nghệ, Trường Đại học Thủ Dầu Một) đã thực hiện đồ án chuyên ngành với đề tài: "Xây dựng website bán điện thoại và đồ công nghệ bằng PHP" (hệ thống PhoneStore), dưới sự hướng dẫn của Th.S Nguyễn Hữu Vĩnh.

Đồ án đặt ra 3 nhiệm vụ và mục tiêu nghiên cứu cụ thể:

  1. Khảo sát thực trạng thị trường thương mại điện tử và nhu cầu giao dịch trực tuyến đối với ngành hàng thiết bị di động, điện thoại và phụ kiện công nghệ.
  2. Phân tích, thiết kế hệ thống phần mềm hoàn chỉnh bao gồm xác định tác nhân, xây dựng biểu đồ ca sử dụng (Use Case), biểu đồ hoạt động (Activity Diagram), và thiết kế cơ sở dữ liệu quan hệ.
  3. Hiện thực hóa hệ thống website thương mại điện tử PhoneStore với đầy đủ chức năng quản lý, bán hàng, tích hợp thanh toán trực tuyến và kênh hỗ trợ khách hàng, đảm bảo tính bảo mật và hiệu năng xử lý.

Đố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, giao dịch và quản lý của một hệ thống bán lẻ trực tuyến chuyên ngành hàng công nghệ.
  • Phạm vi ứng dụng: Mô hình website thương mại điện tử quy mô vừa và nhỏ, phục vụ nhu cầu bán lẻ của cá nhân hoặc hộ kinh doanh tại Việt Nam, hoàn thành báo cáo vào tháng 11/2020 tại Bình Dương.

Cơ sở lý thuyết và công nghệ áp dụng

Đồ án tổng hợp và áp dụng các cơ sở lý thuyết về kiến trúc phần mềm hướng đối tượng cùng hệ thống công nghệ phát triển web hiện đại:

  • Kiến trúc MVC (Model - View - Controller): Mô hình phân tách rõ ràng giữa ba tầng xử lý dữ liệu và nghiệp vụ (Model), hiển thị giao diện người dùng (View) và điều hướng luồng xử lý yêu cầu (Controller), giúp mã nguồn có tính module hóa cao, thuận tiện cho việc bảo trì và nâng cấp.
  • Ngôn ngữ PHP và Laravel Framework: PHP là ngôn ngữ kịch bản phía máy chủ (server-side) mã nguồn mở. Đồ án lựa chọn Laravel Framework nhờ sở hữu hệ thống định tuyến (Routing) linh hoạt, cơ chế đóng gói Blade Template cho tầng View, công cụ dòng lệnh Artisan CLI, cơ chế kiểm soát phiên bản cơ sở dữ liệu qua Migrations, và hệ thống ánh xạ quan hệ đối tượng Eloquent ORM hỗ trợ tối ưu các quan hệ 1–N, N–N.
  • Tầng giao diện (Front-end): Sử dụng ngôn ngữ đánh dấu siêu văn bản HTML5, ngôn ngữ định kiểu tầng CSS3, cùng ngôn ngữ lập trình JavaScript kết hợp thư viện jQuery nhằm xử lý các tương tác Ajax bất đồng bộ và tạo hiệu ứng trực quan.
  • Hệ quản trị cơ sở dữ liệu và môi trường: Hệ quản trị cơ sở dữ liệu quan hệ MySQL kết hợp với máy chủ web Apache, tích hợp trong môi trường phát triển ứng dụng XAMPP.
  • Giải pháp thanh toán trực tuyến: Tích hợp giao diện lập trình ứng dụng (API) của cổng thanh toán điện tử Ngân Lượng (NgânLượng.vn), nghiên cứu trên 3 mô hình tích hợp: Checkout tiêu chuẩn, Checkout nâng cao và Seamless Checkout.
  • Tích hợp mạng xã hội: Ứng dụng xác thực người dùng qua mạng xã hội (Google, Facebook OAuth) và tiện ích Facebook Messenger làm kênh phản hồi, chăm sóc khách hàng trực tuyến.

Thiết kế và triển khai phần mềm

1. Phân tích tác nhân hệ thống

Hệ thống xác định 4 tác nhân tương tác chính:

  • Khách vãng lai (Guest): Người dùng truy cập nhưng chưa đăng nhập; có quyền tìm kiếm sản phẩm/bài viết, xem thông tin chi tiết, xem đánh giá - bình luận, xem chính sách khuyến mãi và nhận hỗ trợ trực tuyến qua tiện ích chat.
  • Khách hàng thành viên (User): Người dùng đã đăng nhập; kế thừa toàn bộ quyền của Guest và được cấp thêm quyền quản lý thông tin tài khoản cá nhân, thêm hàng vào giỏ, tạo đơn đặt hàng, thanh toán trực tuyến, gửi bài đánh giá - bình luận (mỗi người dùng chỉ được ghi nhận/ghi đè 1 lần đánh giá trên một sản phẩm để đảm bảo tính khách quan).
  • Quản trị viên (Admin): Tác nhân điều hành toàn bộ hệ thống; thực hiện quản lý danh mục sản phẩm, quản lý kho hàng, quản trị bài viết tin tức, quản lý tài khoản người dùng, xử lý trạng thái đơn hàng, thống kê doanh thu theo ngày/tháng/năm và in báo cáo.
  • Hệ thống thanh toán trực tuyến (Online Payment): Tác nhân phụ từ bên thứ ba (Cổng Ngân Lượng), tiếp nhận dữ liệu thanh toán từ hệ thống, thực hiện xác thực giao dịch và phản hồi mã trạng thái (thành công hoặc thất bại) để hệ thống thực hiện các bước xử lý tiếp theo.

2. Thiết kế cơ sở dữ liệu

Cơ sở dữ liệu của PhoneStore được xây dựng trên MySQL với 13 bảng dữ liệu có quan hệ chặt chẽ nhằm đáp ứng toàn bộ các ca sử dụng nghiệp vụ:

Tên bảng Mục đích lưu trữ và quản lý
users Thông tin tài khoản người dùng, email kích hoạt, vai trò và phân quyền (Guest/User/Admin).
products Thông tin danh mục và thông số chung của sản phẩm điện thoại, đồ công nghệ.
producers Danh sách các hãng sản xuất/thương hiệu công nghệ.
product_details Chi tiết cấu hình, thuộc tính kỹ thuật cụ thể của từng mã sản phẩm.
porduct_images Danh sách đường dẫn hình ảnh mô tả sản phẩm.
product_votes Điểm số và lượt bình chọn đánh giá chất lượng sản phẩm từ người dùng.
comments Nội dung bình luận, phản hồi của người dùng trên sản phẩm và bài viết.
notices Thông báo hệ thống gửi tới khách hàng (trạng thái đơn hàng, khuyến mãi).
orders Thông tin tổng quát về đơn hàng, người nhận, địa chỉ và trạng thái giao hàng.
order_details Chi tiết các mặt hàng, số lượng và đơn giá trong từng đơn hàng.
payment_methods Danh mục các hình thức thanh toán được hỗ trợ (COD, Online qua Ngân Lượng).
posts Danh sách bài viết tin tức, bài giới thiệu và hướng dẫn công nghệ.
advertises Thông tin hiển thị banner, áp phích quảng cáo trên giao diện website.

3. Cơ chế bảo mật và vận hành

Hệ thống triển khai các lớp bảo mật mặc định được hỗ trợ bởi Laravel Framework:

  • Cơ chế bảo vệ chống tấn công chèn mã SQL (SQL Injection) thông qua việc sử dụng Prepared Statements của PDO trong Eloquent ORM.
  • Cơ chế tạo mã token bảo mật tự động (CSRF Token) trong tất cả các form dữ liệu nhằm ngăn chặn tấn công giả mạo yêu cầu qua trang chéo (Cross-Site Request Forgery).
  • Tự động mã hóa và xử lý escape chuỗi ký tự hiển thị ra giao diện Blade Template để phòng chống tấn công XSS (Cross-Site Scripting).
  • Quản lý phiên làm việc (Session) an toàn, tích hợp luồng kích hoạt tài khoản và đặt lại mật khẩu qua mã xác thực (Token) gửi qua thư điện tử.

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

Chương 1. Khảo sát hiện trạng

Chương 1 đi sâu vào phân tích sự phát triển của thương mại điện tử tại Việt Nam dựa trên báo cáo EBI 2019 và dự báo xu hướng tiêu dùng trực tuyến. Tác giả chỉ ra các điểm nghẽn của mô hình kinh doanh truyền thống và lợi thế cạnh tranh của nền tảng trực tuyến đối với các cá nhân, hộ kinh doanh. Từ việc xác định yêu cầu thực tiễn về giao diện thân thiện, khả năng xử lý nhanh và tính an toàn giao dịch, chương này tổng kết cơ sở lý thuyết về ngôn ngữ PHP, kiến trúc MVC, so sánh các PHP Framework phổ biến (Laravel, Symfony, CodeIgniter), các công nghệ Front-end (HTML, CSS, JavaScript, jQuery), môi trường máy chủ Apache/MySQL thông qua XAMPP, và các phương thức thanh toán trực tuyến qua cổng Ngân Lượng.

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

Chương 2 tập trung vào việc mô hình hóa yêu cầu phần mềm. Tác giả xác định các tiêu chuẩn về giao diện, hiệu năng và nghiệp vụ; phân tích 4 tác nhân của hệ thống và xây dựng biểu đồ Use Case tổng quát cùng các biểu đồ Use Case chi tiết. Chương này cung cấp bảng đặc tả và biểu đồ hoạt động (Activity Diagram) chi tiết cho các ca sử dụng then chốt:

  • Đăng ký (qua form xác thực email hoặc liên kết tài khoản Google/Facebook).
  • Đăng nhập, quên mật khẩu (gửi token đặt lại qua email).
  • Thay đổi thông tin cá nhân và tải ảnh đại diện.
  • Tìm kiếm nâng cao (theo từ khóa, hãng sản xuất, hệ điều hành).
  • Sắp xếp và lọc sản phẩm (theo mức giá tăng/giảm, sản phẩm mới nhất, tiêu chí kỹ thuật).
  • Đánh giá và bình luận sản phẩm (cơ chế ghi đè cập nhật).
  • Quản lý giỏ hàng (cập nhật số lượng, xóa sản phẩm, hiển thị mini cart).
  • Mua hàng và tích hợp thanh toán trực tuyến.
  • Các module quản trị dành cho Admin: quản lý người dùng, quản lý sản phẩm, quản lý bài viết tin tức, quản lý đơn hàng, thống kê doanh thu theo mốc thời gian và in hóa đơn. Cuối chương, tác giả trình bày chi tiết cấu trúc 13 bảng dữ liệu và lược đồ quan hệ thực thể (ERD) trong cơ sở dữ liệu.

Chương 3. Xây dựng chương trình

Chương 3 trình bày việc hiện thực hóa phần mềm trong môi trường thực tế. Tác giả minh họa bằng hệ thống ảnh chụp giao diện hoàn chỉnh của PhoneStore: từ trang chủ, trang danh mục sản phẩm, trang chi tiết, trang tin tức, giao diện giỏ hàng, trang thanh toán online Ngân Lượng, cho đến toàn bộ khu vực quản trị (Admin Dashboard) phục vụ nhập liệu sản phẩm, duyệt đơn hàng, thống kê doanh thu và in báo cáo. Đồng thời, chương này thực hiện đo lường hiệu năng thực tế của website PhoneStore và đặt trong tương quan so sánh với các trang thương mại điện tử lớn tại Việt Nam như FPT Shop và Thế Giới Di Động. Cuối chương là phần tổng kết các kết quả đạt được, chỉ ra những hạn chế tồn tại và đề xuất định hướng phát triển trong tương lai.


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

1. Kết quả chính đạt được

  • Hiện thực hóa đầy đủ hệ thống: Xây dựng thành công website PhoneStore với toàn bộ quy trình thương mại điện tử hoàn chỉnh từ khâu tiếp cận sản phẩm, đặt hàng, thanh toán đến quản lý sau bán hàng.
  • Tích hợp thanh toán và liên lạc thực tế: Kết nối thành công cổng thanh toán điện tử Ngân Lượng, cho phép xử lý giao dịch trực tuyến đa kênh (thẻ ngân hàng, thẻ quốc tế, Internet Banking) và tích hợp Facebook Messenger trực tiếp trên giao diện để hỗ trợ khách hàng nhanh chóng.
  • Tối ưu hóa quản trị: Cung cấp công cụ quản trị tập trung cho phép chủ cửa hàng kiểm soát tồn kho, theo dõi đơn hàng, thống kê doanh số theo ngày/tháng/năm và xuất hóa đơn/báo cáo bán hàng.
  • Bảo mật và hiệu năng: Ứng dụng các cơ chế bảo mật tiêu chuẩn của Laravel (chống SQL Injection, CSRF, XSS) và kiểm thử hiệu năng vận hành thực tế so với các hệ thống lớn.

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

Đồ án đóng góp một giải pháp ứng dụng công nghệ phần mềm thiết thực, chi tiết từ khâu phân tích thiết kế đến triển khai thực tế bằng mã nguồn mở, phù hợp cho mô hình kinh doanh bán lẻ quy mô nhỏ và vừa với chi phí đầu tư ban đầu thấp.


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

1. Hạn chế

  • Hệ thống hiện tại mới chỉ đáp ứng tốt các chức năng của một website thương mại điện tử quy mô nhỏ, phù hợp cho cá nhân hoặc hộ gia đình bán lẻ.
  • Chưa hỗ trợ xử lý quản lý chuỗi nhiều chi nhánh cửa hàng độc lập.
  • Chưa có ứng dụng riêng trên nền tảng di động (Mobile App) mà chỉ mới dừng lại ở giao diện web đáp ứng (Responsive Web).
  • Chưa tích hợp hệ thống quản lý logistics chuyên sâu và các dịch vụ giao vận tự động của bên thứ ba.

2. Hướng phát triển tiếp theo

  • Mở rộng kiến trúc hệ thống để quản lý đồng bộ chuỗi nhiều chi nhánh cửa hàng.
  • Xây dựng ứng dụng di động (Mobile App) trên các nền tảng Android/iOS kết nối đồng bộ dữ liệu với hệ thống web hiện tại.
  • Tích hợp sâu hơn các dịch vụ logistics và đơn vị vận chuyển tự động nhằm tối ưu hóa quy trình giao vận đơn hàng.

Giá trị tham khảo

Đồ án là tài liệu tham khảo có giá trị chuyên môn cao cho:

  • Sinh viên ngành Công nghệ thông tin, Kỹ thuật phần mềm: Nắm bắt quy trình chuẩn từ khảo sát, viết đặc tả Use Case, thiết kế biểu đồ hoạt động, mô hình hóa cơ sở dữ liệu quan hệ đến triển khai thực tế một dự án web bằng Laravel Framework.
  • Lập trình viên và nhà phát triển web: Tham khảo giải pháp tích hợp cổng thanh toán trực tuyến tại Việt Nam (Ngân Lượng) và phương thức tổ chức hệ thống xác thực, phân quyền người dùng an toàn.

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

1. Hệ thống PhoneStore được phát triển bằng những công nghệ chính nào?
Website sử dụng ngôn ngữ PHP trên nền tảng Laravel Framework cho tầng xử lý logic phía máy chủ; HTML5, CSS3, JavaScript và thư viện jQuery cho giao diện người dùng; hệ quản trị cơ sở dữ liệu MySQL và máy chủ web Apache (thông qua bộ công cụ XAMPP).

2. Đồ án tích hợp giải pháp thanh toán trực tuyến nào và hỗ trợ những hình thức nào?
Đồ án tích hợp API của cổng thanh toán điện tử Ngân Lượng (NgânLượng.vn), hỗ trợ thanh toán qua thẻ quốc tế (Visa, Master, JCB, Amex), thẻ ATM nội địa, Internet Banking, QR-Code Mobile Banking, ví điện tử, chuyển khoản ngân hàng và tiền mặt.

3. Cơ chế đánh giá và bình luận sản phẩm của hệ thống được kiểm soát như thế nào?
Chức năng này chỉ dành riêng cho người dùng đã đăng nhập (User). Để đảm bảo tính khách quan và chính xác, mỗi tài khoản chỉ được ghi nhận một đánh giá trên một sản phẩm; nếu người dùng tiếp tục gửi đánh giá, hệ thống sẽ thực hiện cập nhật ghi đè lên bản ghi trước đó.

4. Khách hàng có thể đăng ký và đăng nhập vào PhoneStore qua những phương thức nào?
Khách hàng có thể đăng ký tài khoản thông thường qua biểu mẫu và xác thực kích hoạt qua đường dẫn gửi về email, hoặc lựa chọn phương thức đăng ký/đăng nhập nhanh thông qua liên kết tài khoản mạng xã hội Google và Facebook (OAuth).

5. Cơ sở dữ liệu của PhoneStore gồm bao nhiêu bảng và quản lý những thực thể nào?
Cơ sở dữ liệu gồm 13 bảng: users, products, producers, product_details, porduct_images, product_votes, comments, notices, orders, order_details, payment_methods, posts và advertises.


Kết luận

Đồ án "Xây dựng website bán điện thoại và đồ công nghệ bằng PHP" của sinh viên Phạm Tuyên đã giải quyết trọn vẹn bài toán xây dựng một hệ thống thương mại điện tử hoàn chỉnh theo mô hình MVC sử dụng Laravel Framework và MySQL. Tài liệu thể hiện phương pháp tiếp cận khoa học, chặt chẽ từ khảo sát thực tiễn, mô hình hóa hệ thống bằng UML đến thiết kế cơ sở dữ liệu và triển khai tích hợp thanh toán Ngân Lượng thực tế. Báo cáo là tài liệu học thuật có giá trị ứng dụng cao cho sinh viên ngành phần mềm trong việc phát triển các ứng dụng thương mại điện tử.