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

Bối cảnh thực tiễn và lý do chọn đề tài

Trong quá trình hiện đại hóa và hội nhập kinh tế, công nghệ thông tin đóng vai trò then chốt trong việc tối ưu hóa quy trình quản lý kinh doanh. Tại nhiều cửa hàng bán lẻ thiết bị công nghệ, việc quản lý giao dịch và điều hành hàng hóa phần lớn vẫn thực hiện thủ công thông qua sổ sách truyền thống. Phương pháp quản lý này bộc lộ nhiều trở ngại, đặc biệt gây khó khăn cho người quản lý khi cần rà soát, kiểm kê số lượng sản phẩm, đối chiếu doanh thu theo ngày hoặc theo quý. Từ thực trạng đó, việc xây dựng một phần mềm quản lý và kinh doanh trực tuyến cho cửa hàng là yêu cầu cấp thiết nhằm tin học hóa hoạt động mua bán, lưu trữ thông tin tập trung và rút ngắn khoảng cách giao tiếp giữa người mua và người bán.

Mục tiêu và nhiệm vụ nghiên cứu

Mục tiêu tổng quát của đề tài là xây dựng hoàn chỉnh website thương mại điện tử chuyên kinh doanh các mặt hàng điện thoại, máy tính xách tay (laptop) và linh kiện - phụ kiện, cung cấp thông tin chính xác về sản phẩm, hỗ trợ khách hàng mua sắm trực tuyến và hỗ trợ người quản lý kiểm soát dữ liệu bán hàng thông qua giao diện trực quan.

Đề tài xác định 5 nhiệm vụ nghiên cứu cụ thể gắn liền với tiến trình thực hiện đồ án:

  1. Nghiên cứu cơ sở lý thuyết về ngôn ngữ lập trình PHP, kiến trúc Framework CodeIgniter và hệ quản trị cơ sở dữ liệu MySQL thông qua công cụ quản trị phpMyAdmin.
  2. Khảo sát, thu thập và đặc tả chi tiết các yêu cầu chức năng, yêu cầu phi chức năng của hệ thống phục vụ cho hai nhóm đối tượng chính: khách hàng và người quản lý.
  3. Phân tích và thiết kế hệ thống thông tin, xây dựng sơ đồ ca sử dụng (Use Case), mô hình hóa các tương tác nghiệp vụ và thiết kế cấu trúc các bảng trong cơ sở dữ liệu quan hệ.
  4. Hiện thực hóa hệ thống thông qua việc lập trình giao diện người dùng, tích hợp các module xử lý nghiệp vụ bán hàng, quản lý đơn hàng, kho bãi và tin tức.
  5. Kiểm thử hệ thống trên môi trường máy chủ thử nghiệm cục bộ, tổng hợp kết quả đạt được, chỉ ra các hạn chế và đề xuất giải pháp hoàn thiện.

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

  • Đối tượng nghiên cứu: Quy trình quản lý bán hàng, luân chuyển đơn hàng, cập nhật dữ liệu hàng hóa và quy trình tương tác thương mại điện tử giữa khách hàng và cửa hàng kinh doanh thiết bị công nghệ.
  • Phạm vi không gian: Đề tài nghiên cứu ứng dụng cho mô hình cửa hàng bán lẻ thiết bị điện tử, công nghệ; được thực hiện tại Bộ môn Tin học, Khoa Điện tử – Tin học, Trường Cao đẳng Kỹ thuật Cao Thắng (TP. Hồ Chí Minh).
  • Phạm vi thời gian: Đồ án tốt nghiệp khóa học 2016 – 2019, thực hiện bởi nhóm sinh viên lớp CĐ TH 16PMB (Ngô Văn Hiệp - MSSV: 0306161413 và Nguyễn Đức Lương - MSSV: 0306161441) dưới sự hướng dẫn của giảng viên Lưu Tuệ Hảo.

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

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

Hệ thống được xây dựng trên nền tảng ứng dụng web sử dụng các công nghệ mã nguồn mở:

  • Ngôn ngữ PHP: Là ngôn ngữ lập trình kịch bản phía máy chủ (Server-Side) do Rasmus Lerdorf khởi xướng năm 1994 (nguyên gốc viết tắt từ "Personal Home Page", sau phát triển thành "PHP: Hypertext Preprocessor"). PHP sở hữu đặc tính độc lập với hệ điều hành (cross-platform), có khả năng chạy trên Windows, Unix và các biến thể khác mà không cần chỉnh sửa nhiều mã nguồn. PHP xử lý các kịch bản logic khi có sự kiện kích hoạt (gửi biểu mẫu, chuyển hướng URL) và trả kết quả về trình duyệt dưới dạng mã HTML.
  • Framework CodeIgniter: Đồ án ứng dụng CodeIgniter 3 (nền tảng ứng dụng web mã nguồn mở bằng PHP do Rick Ellis sáng lập ngày 28/02/2006, sau đó được phát triển bởi ExpressionEngine Development Team thuộc EllisLab, Inc.). CodeIgniter có dung lượng tải về nhỏ gọn (footprint khoảng 2MB), yêu cầu máy chủ PHP 5.7, tương thích tốt với MySQL và các môi trường hosting. Framework hoạt động dựa trên mô hình MVC (Model-View-Controller), cấu hình theo quy ước (convention over configuration), hỗ trợ Form Validation, HMVC, lập trình hướng đối tượng (OOP), mã hóa mật khẩu bằng thuật toán SHA1, thư viện Caching, và tích hợp các cơ chế an toàn ngăn chặn tấn công XSS (Cross-Site Scripting) cùng SQL Injection.
  • Hệ quản trị cơ sở dữ liệu và công cụ phpMyAdmin: Ứng dụng web viết bằng PHP cung cấp giao diện đồ họa (GUI) để quản lý cơ sở dữ liệu MySQL. Công cụ hỗ trợ khởi tạo, hiệu chỉnh bảng, trường dữ liệu, quản lý tài khoản người dùng, thực thi các câu truy vấn SQL tùy chỉnh, sao lưu dữ liệu thủ công và trích xuất dữ liệu qua các định dạng SQL, XML, CSV.

Phương pháp nghiên cứu và phát triển hệ thống

  • Phương pháp mô hình hóa nghiệp vụ: Sử dụng sơ đồ Use Case để phân tích các tương tác giữa tác nhân (Actors: Khách hàng, Người quản trị, Nhân viên) với hệ thống phần mềm, phân rã chi tiết thành 38 trường hợp sử dụng (từ UC001 đến UC0038).
  • Phương pháp thiết kế cơ sở dữ liệu quan hệ (RDBMS): Xác định các thực thể dữ liệu độc lập, chuẩn hóa quan hệ giữa các bảng (sản phẩm, loại sản phẩm, đơn hàng, khách hàng, nhà cung cấp, quyền hạn) nhằm đảm bảo tính toàn vẹn dữ liệu.
  • Phương pháp kiến trúc phần mềm: Áp dụng mô hình MVC nhằm tách biệt ba thành phần:
    • Model: Thao tác trực tiếp với cơ sở dữ liệu MySQL, thực hiện truy vấn và kiểm tra dữ liệu.
    • View: Tiếp nhận dữ liệu từ Controller và kết xuất giao diện HTML/CSS hiển thị cho người dùng.
    • Controller: Tiếp nhận các yêu cầu người dùng, xử lý logic điều hướng và tương tác trung gian giữa Model và View.

Nguồn dữ liệu và môi trường phát triển

  • Môi trường giả lập máy chủ: Cài đặt các gói phần mềm WampServer, XAMPP tích hợp máy chủ web Apache, PHP và cơ sở dữ liệu MySQL trên máy tính phát triển cục bộ.
  • Công cụ soạn thảo mã nguồn: Sử dụng Sublime Text 3 và Visual Studio Code (Visual Code) để lập trình mã nguồn website.

Thiết kế và triển khai

Phân tích và đặc tả ca sử dụng (Use Case)

Hệ thống được thiết kế phân chia thành hai nhóm tác nhân chính: Khách hàng (giao diện ngoài) và Người quản lý (giao diện trang quản trị). Toàn bộ hệ thống bao gồm 38 ca sử dụng (Use Case) được chuẩn hóa:

Nhóm ca sử dụng Mã Use Case Tên chức năng ca sử dụng Mô tả tóm tắt nghiệp vụ
Khách hàng UC001 – UC003 Đăng ký, Đăng nhập, Quên mật khẩu Quản lý định danh thành viên; kiểm tra độ dài tên đăng nhập/mật khẩu (>6 ký tự); xác thực qua Email.
UC004 – UC005 Tìm kiếm, Xem chi tiết sản phẩm Tra cứu sản phẩm theo từ khóa; hiển thị thông số, giá, ảnh mô tả, bình luận/chat Facebook.
UC006 – UC008 Giỏ hàng, Thanh toán, Nhận đơn hàng Quản lý danh sách đặt mua; tính toán tổng tiền, chiết khấu mã giảm giá; gửi email thông báo đơn.
Quản trị hệ thống UC009 – UC0012 Đăng nhập quản trị, Quản lý tài khoản Xác thực quyền hạn nội bộ; thêm mới, cập nhật tài khoản nhân viên; đổi mật khẩu.
Quản lý sản phẩm & nội dung UC0013 – UC0016 Quản lý sản phẩm Thêm mới, cập nhật, xóa sản phẩm; cập nhật tình trạng tồn kho khi đơn hàng hoàn tất.
UC0017 – UC0020 Quản lý bài viết / tin tức Thêm mới, cập nhật nội dung, xóa bài viết vào thùng rác, cập nhật trạng thái hiển thị.
UC0021 – UC0023 Quản lý danh mục sản phẩm Thiết lập cấu trúc danh mục sản phẩm đa cấp (chủ đề cha - con), sửa, xóa danh mục.
UC0024 – UC0026 Quản lý nhà cung cấp Lưu trữ thông tin nhà sản xuất, cập nhật mã code, từ khóa (keyword), trạng thái hợp tác.
UC0027 – UC0030 Quản lý mã giảm giá Thiết lập mã, số tiền giảm, giới hạn số lần dùng, ngày hết hạn; tự động trừ lượt khi dùng.
UC0031 – UC0033 Quản lý Slider banner Quản lý hình ảnh trình chiếu quảng cáo trên trang chủ, cập nhật trạng thái hoạt động.
Quản lý đơn hàng & khách hàng UC0034 – UC0035 Xử lý tình trạng đơn hàng, Hủy đơn Cập nhật các trạng thái: Đang chờ duyệt, Đang giao hàng, Đã giao, Hủy đơn; lưu trữ đơn hàng.
UC0037 – UC0038 Quản lý khách hàng, Quản lý liên hệ Kiểm soát dữ liệu tài khoản khách hàng; tiếp nhận, giải quyết và xóa phản hồi khách hàng.

Cơ chế phân quyền hệ thống

Hệ thống quản trị chia quyền hạn chặt chẽ thành 2 cấp độ:

Tiêu chí chức năng Tài khoản Người quản trị (Admin) Tài khoản Nhân viên
Phạm vi quyền hạn Toàn quyền kiểm soát hệ thống Bị giới hạn các chức năng nhạy cảm
Quản lý hàng hóa và danh mục Toàn quyền Thêm, Sửa, Nhập hàng sản phẩm, Loại sản phẩm, Nhà cung cấp Không có quyền thêm/sửa/nhập hàng mới; chỉ được cập nhật trạng thái
Quản lý mã giảm giá Toàn quyền Thêm, Sửa, Xóa mã giảm giá Không có quyền Thêm, Sửa mã giảm giá
Xử lý đơn hàng và liên hệ Duyệt đơn, hủy đơn, lưu đơn, in hóa đơn Được phép duyệt, hủy, lưu đơn và duyệt phản hồi liên hệ của khách hàng
Quản lý nhân sự và tài khoản Thêm nhân viên, cấp quyền, đổi mật khẩu nhân viên, xóa tài khoản Không có quyền quản lý thành viên hoặc phân quyền
Cơ chế Thùng rác (Xóa dữ liệu) Có quyền Khôi phục và Xóa vĩnh viễn dữ liệu khỏi CSDL Chỉ có quyền đưa vào thùng rác hoặc khôi phục; CẤM xóa vĩnh viễn

Quy trình nghiệp vụ cốt lõi

  1. Quy trình mua hàng và thanh toán: Hệ thống cho phép mua hàng theo hai phương thức: có tài khoản (tự động điền dữ liệu cá nhân) hoặc không có tài khoản (điền trực tiếp thông tin vào biểu mẫu giao hàng gồm họ tên, email, điện thoại, tỉnh thành, quận huyện, địa chỉ cụ thể). Khi áp dụng mã giảm giá, hệ thống khấu trừ trực tiếp vào tổng tiền thanh toán và tự động giảm số lần sử dụng còn lại của mã đó sau khi đơn hàng được ghi nhận thành công. Khách hàng mới khi đăng ký tài khoản thành công sẽ tự động nhận một mã giảm giá qua email.
  2. Quy trình luân chuyển trạng thái đơn hàng: Đơn hàng mới khởi tạo ở trạng thái Đang chờ duyệt. Nhân viên rà soát tính hợp lệ và chuyển sang Đang giao hàng. Khi đơn hàng vận chuyển hoàn tất và khách thanh toán thành công, trạng thái chuyển thành Đã giao, đồng thời hệ thống tự động trừ lùi số lượng sản phẩm tồn kho tương ứng. Trường hợp hủy đơn được phân loại chính xác thành Khách hàng hủy (chỉ được thực hiện khi đơn chưa duyệt) hoặc Nhân viên hủy (nếu đơn không hợp lệ).
  3. Cơ chế xóa an toàn (Thùng rác): Toàn bộ các thực thể như sản phẩm, danh mục, bài viết, nhà cung cấp, mã giảm giá, khách hàng, nhân viên, slider khi bị xóa sẽ được đưa vào bảng/thùng rác tạm thời. Dữ liệu này chỉ bị loại bỏ hoàn toàn khỏi cơ sở dữ liệu nếu Người quản trị thực thi lệnh xóa vĩnh viễn.

Thiết kế cấu trúc cơ sở dữ liệu

Cơ sở dữ liệu được tổ chức thành các bảng quan hệ độc lập để lưu trữ dữ liệu thực thi của hệ thống, bao gồm các bảng được định danh cụ thể trong đồ án:

  • db_category: Quản lý danh mục loại sản phẩm (ID, tên loại, chủ đề cha, ngày tạo, trạng thái).
  • db_producer: Quản lý danh mục nhà cung cấp thiết bị (ID, tên nhà cung cấp, mã code, keyword, trạng thái).
  • db_orderdetail: Lưu trữ dữ liệu chi tiết của từng đơn hàng (mã sản phẩm, số lượng, đơn giá, thành tiền).
  • db_province: Quản lý danh mục hành chính các tỉnh, thành phố phục vụ tính phí giao hàng.
  • db_usergroup: Định nghĩa các nhóm quyền hạn của nhân viên và người quản trị.
  • Cùng các bảng dữ liệu bổ trợ khác được liệt kê trong danh mục hệ thống: bảng sản phẩm, bảng đơn hàng, bảng khách hàng, bảng nhân viên, bảng mã giảm giá, bảng slider, bảng liên hệ, bảng tin tức, bảng quận huyện và bảng cấu hình (phí giao hàng mặc định).

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

PHẦN MỞ ĐẦU

Trình bày tổng quan mục đích của website là cung cấp các thông tin chuẩn xác về các mặt hàng thời trang, thiết bị công nghệ hiện có trên thị trường và cung cấp phương thức đặt mua qua mạng Internet. Tác giả nêu rõ mục tiêu cập nhật thông tin thường xuyên để rút ngắn khoảng cách giữa người bán và người mua, đồng thời khái quát bố cục đồ án được chia làm 5 chương chính.

CHƯƠNG 1: GIỚI THIỆU

  • Ngôn ngữ PHP: Khái quát lịch sử hình thành từ năm 1994 bởi Rasmus Lerdorf. Phân tích nguyên lý hoạt động của công nghệ Server-Side, tính chất không phụ thuộc môi trường (cross-platform) cho phép chạy trên hệ điều hành Windows và Unix. Nêu bật ưu điểm mã nguồn mở miễn phí, tốc độ cao, khả năng kết nối linh hoạt với hầu hết các cơ sở dữ liệu hiện có và thống kê mức độ phổ biến trên 12 triệu website tại thời điểm khảo sát.
  • Framework CodeIgniter: Phân tích nền tảng do Rick Ellis phát hành năm 2006. Trình bày chi tiết 11 đặc điểm nổi trội của CodeIgniter 3 bao gồm: dung lượng nhẹ (footprint 2MB), tài liệu hướng dẫn tích hợp, tương thích PHP 5.7 và MySQL, thiết kế chuẩn kiến trúc MVC, hệ thống thư viện phong phú, nguyên tắc cấu hình tối giản, tốc độ xử lý nhanh (đáp ứng hàng triệu truy cập/ngày), bản quyền miễn phí (Apache/BSD), thân thiện cấu trúc URL chuẩn SEO, bảo mật ngăn ngừa tấn công XSS, SQL Injection và các tính năng mở rộng của CodeIgniter 3.X (hỗ trợ HMVC, Form Validation, mã hóa SHA1, tối ưu Caching, bảo mật Router).
  • Công cụ phpMyAdmin: Giới thiệu công cụ quản trị cơ sở dữ liệu đồ họa (GUI) nền web dành cho MySQL, tổng kết các tính năng quản lý người dùng, tạo lập bảng, thực thi truy vấn SQL và sao lưu phục hồi dữ liệu qua các tệp tin SQL, XML, CSV.

CHƯƠNG 2: ĐẶC TẢ ĐỀ TÀI

  • Xác định tên đề tài chính thức: "Xây dựng Website cửa hàng bán Điện thoại, Laptop, Linh kiện".
  • Thiết lập danh mục chức năng chi tiết cho hệ thống khách hàng (đăng ký, đăng nhập, tìm kiếm, giỏ hàng, nhận mã giảm giá qua email, tương tác bình luận và chat trực tiếp qua Facebook) và hệ thống quản lý nội bộ (quản lý danh mục đa cấp, quản lý kho sản phẩm, theo dõi đơn hàng, quản trị mã giảm giá, cấu hình phí vận chuyển, báo cáo doanh thu theo tháng).
  • Quy định các yêu cầu kỹ thuật về thiết bị, phần mềm máy chủ (XAMPP, WampServer) và các phần mềm soạn thảo mã nguồn (Sublime Text 3, Visual Code).
  • Mô tả chi tiết các luồng nghiệp vụ xử lý dữ liệu của từng chức năng: cơ chế kiểm tra điều kiện biểu mẫu (Form Validation), quy tắc phân quyền giữa Người quản trị và Nhân viên, quy trình tiếp nhận và xử lý khiếu nại liên hệ.

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

  • Xây dựng sơ đồ Use Case tổng quát cho hệ thống khách hàng và hệ thống quản trị.
  • Mô tả chi tiết 38 trường hợp sử dụng (từ UC001 đến UC0038), xác định luồng sự kiện, dữ liệu đầu vào, điều kiện tiên quyết và kết quả xử lý của từng chức năng.
  • Thiết kế hệ thống cơ sở dữ liệu quan hệ, quy định chi tiết cấu trúc các trường thông tin trong từng bảng dữ liệu (db_category, db_producer, db_orderdetail, db_province, db_usergroup...).

GIAO DIỆN TRANG WEB

Trình bày thiết kế và hiện thực hóa giao diện thực tế của đồ án:

  • Phân hệ khách hàng: Hiện thực hóa các thành phần Header, Footer, Trang chủ, Trang danh mục sản phẩm, Trang chi tiết sản phẩm, Giao diện giỏ hàng, Trang thông tin giao hàng và Theo dõi tiến độ đơn hàng.
  • Phân hệ quản trị: Thiết kế trang đăng nhập quản lý, Trang điều khiển trung tâm (Dashboard), Trang danh sách và biểu mẫu thêm/sửa/nhập hàng sản phẩm, Giao diện quản lý danh mục, Quản lý đơn hàng, Thống kê doanh thu theo tháng và Giao diện quản lý thùng rác lưu trữ dữ liệu.

TỔNG KẾT

Đánh giá tổng quan quá trình triển khai đồ án, đúc kết các kiến thức lý thuyết và kỹ năng lập trình thực tế đã thu nhận được sau quá trình nghiên cứu, chỉ rõ những vướng mắc, khó khăn gặp phải trong quá trình xây dựng hệ thống và các hạn chế cần khắc phục.


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

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

  • Hiện thực hóa hệ thống phần mềm: Xây dựng thành công website bán hàng trực tuyến hoàn chỉnh với đầy đủ các phân hệ nghiệp vụ cho cửa hàng kinh doanh điện thoại, máy tính xách tay và linh kiện.
  • Quy chuẩn hóa cấu trúc phân tích: Thiết kế và tư liệu hóa thành công 38 Use Case nghiệp vụ từ phía khách hàng (8 Use Case) đến quản trị viên (30 Use Case), đi kèm sơ đồ tương tác ca sử dụng và các bảng dữ liệu chuyên biệt.
  • Hoàn thiện các tính năng nghiệp vụ đặc thù:
    • Tích hợp kiểm tra dữ liệu đầu vào (tên đăng nhập và mật khẩu từ 6 ký tự trở lên, định dạng email chuẩn xác).
    • Tự động hóa cập nhật số lượng hàng tồn kho theo thời gian thực khi đơn hàng chuyển sang trạng thái "Đã giao".
    • Tự động điều chỉnh số lần sử dụng của mã giảm giá khi khách hàng hoàn tất giao dịch.
    • Xây dựng hệ thống thùng rác dữ liệu đa tầng cho hầu hết các đối tượng quản lý, bảo vệ an toàn thông tin chống xóa nhầm.
    • Báo cáo thống kê doanh số bán hàng, hiển thị số lượng sản phẩm, số đơn hàng đã hoàn tất và tổng số tiền thu về theo từng tháng.

Giải pháp và kiến nghị của tác giả

  • Ứng dụng công nghệ phần mềm vào quy trình bán hàng nhằm loại bỏ phương thức quản lý ghi chép sổ sách thủ công gây sai lệch và chậm trễ.
  • Thiết lập hệ thống phân quyền 2 cấp độ (Toàn quyền quản trị và Quyền nhân viên) nhằm hạn chế rủi ro thất thoát dữ liệu, đồng thời ngăn chặn các thao tác sai lệch trong kho hàng và danh mục giá.
  • Tự động gửi thông tin đơn hàng và mã ưu đãi chào mừng qua hộp thư điện tử (email) của khách hàng để nâng cao độ tin cậy và tính tiện lợi trong dịch vụ bán hàng.

Đóng góp về mặt kỹ thuật của đồ án

Tác giả đã hiện thực hóa thành công mô hình MVC trên nền tảng CodeIgniter 3 kết hợp với hệ quản trị cơ sở dữ liệu MySQL, chứng minh tính khả thi của việc ứng dụng các framework mã nguồn mở có dung lượng nhẹ (chỉ 2MB) để phát triển các hệ thống thương mại điện tử có hiệu suất xử lý cao, bảo mật tốt mà không đòi hỏi chi phí đầu tư phần cứng phức tạp.


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

Hạn chế của đồ án

Dựa trên những nhìn nhận thực tế được tác giả nêu trong văn bản:

  • Do trình độ lý luận chuyên sâu và kinh nghiệm triển khai thực tế của nhóm sinh viên còn hạn chế, hệ thống khó tránh khỏi những thiếu sót trong các trường hợp xử lý ngoại lệ phức tạp.
  • Đồ án mới dừng lại ở việc triển khai, thử nghiệm trên môi trường máy chủ cục bộ (Localhost thông qua gói phần mềm XAMPP, WampServer), chưa tiến hành cài đặt, kiểm thử tải và vận hành trên môi trường mạng Internet thực tế.
  • Khâu thanh toán trực tuyến chưa tích hợp trực tiếp với các cổng thanh toán ngân hàng điện tử hoặc ví điện tử tự động, việc ghi nhận giao dịch chủ yếu dựa vào biểu mẫu đặt hàng, gửi xác nhận qua email và cập nhật thủ công bởi nhân viên cửa hàng.

Hướng nghiên cứu và phát triển tiếp

  • Tích hợp các giải pháp thanh toán điện tử trực tuyến thông qua cổng kết nối ngân hàng để quy trình mua hàng được hoàn toàn tự động hóa.
  • Tối ưu hóa cấu trúc cơ sở dữ liệu và nâng cấp hệ thống máy chủ phục vụ triển khai thực tế trên môi trường Internet.
  • Bổ sung và hoàn thiện các thuật toán phân tích, thống kê thông minh nhằm hỗ trợ người quản lý dự báo lượng hàng tồn kho và xu hướng mua sắm của khách hàng trong các giai đoạn tiếp theo.

Giá trị tham khảo

Đối tượng sử dụng tài liệu

  • Sinh viên ngành Công nghệ thông tin và Kỹ thuật phần mềm: Là tài liệu tham khảo trực tiếp cho các đồ án môn học như Phát triển ứng dụng Web, Phân tích thiết kế hệ thống thông tin, hoặc đồ án tốt nghiệp bậc Cao đẳng, Đại học.
  • Người làm đề tài về Website thương mại điện tử: Cung cấp tài liệu mẫu về quy trình phân tích và xây dựng website bán hàng từ khâu khảo sát nghiệp vụ đến thiết kế giao diện thực tế.

Các nội dung trọng tâm có giá trị tham khảo

  • Hệ thống Use Case chi tiết: Toàn bộ bảng phân tích 38 Use Case nghiệp vụ từ UC001 đến UC0038 được đặc tả rõ ràng về luồng xử lý dữ liệu và điều kiện kiểm tra, có thể tái sử dụng trực tiếp cho các đề tài xây dựng website bán lẻ.
  • Mô hình phân quyền và an toàn dữ liệu: Giải pháp phân quyền giữa Quản trị viên và Nhân viên cùng cơ chế Thùng rác (xóa mềm - xóa vĩnh viễn) là giải pháp thiết kế thực tế hữu ích cho các hệ thống phần mềm quản lý nội bộ.
  • Kỹ thuật triển khai CodeIgniter 3: Cung cấp cấu trúc thiết kế ứng dụng theo mô hình MVC, tối ưu hóa URL thân thiện với SEO và sử dụng Form Validation để bảo vệ dữ liệu.

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

1. Đồ án sử dụng framework và nền tảng công nghệ nào để phát triển hệ thống website?

Website được phát triển dựa trên ngôn ngữ lập trình PHP kết hợp với Framework CodeIgniter (phiên bản CodeIgniter 3 phát hành với dung lượng 2MB, kiến trúc MVC). Cơ sở dữ liệu sử dụng MySQL và được quản trị thông qua công cụ phpMyAdmin. Môi trường phát triển cục bộ sử dụng các bộ công cụ XAMPP và WampServer, viết mã nguồn trên phần mềm Sublime Text 3 và Visual Studio Code.

2. Hệ thống phân chia quyền hạn quản lý trong trang quản trị như thế nào giữa Người quản trị và Nhân viên?

Trang quản trị thiết lập hai cấp quyền rõ rệt:

  • Người quản trị (Admin): Có toàn quyền tối cao trên toàn bộ hệ thống, bao gồm quyền thêm, sửa, xóa vĩnh viễn dữ liệu, nhập hàng vào kho, quản lý danh sách nhân viên và cấp phát quyền hạn.
  • Nhân viên: Chỉ có quyền hạn giới hạn, được phép kiểm tra và duyệt hóa đơn, hủy đơn, lưu đơn, duyệt phản hồi liên hệ, cập nhật trạng thái hiển thị của sản phẩm hoặc tin tức. Nhân viên tuyệt đối không được thêm mới, sửa đổi thông tin sản phẩm, loại sản phẩm, nhà cung cấp, mã giảm giá và không có quyền xóa vĩnh viễn dữ liệu trong thùng rác.

3. Quy trình luân chuyển trạng thái của một đơn hàng được thiết kế gồm những giai đoạn nào?

Khi khách hàng đặt hàng thành công, đơn hàng sẽ trải qua các trạng thái:

  1. Đang chờ duyệt: Trạng thái ban đầu của mọi đơn hàng mới.
  2. Đang giao hàng: Nhân viên kiểm tra đơn hợp lệ và chuyển sang trạng thái vận chuyển.
  3. Đã giao: Khách hàng đã nhận hàng và hoàn tất thanh toán. Hệ thống tự động khấu trừ số lượng sản phẩm trong kho. Trường hợp đơn bị hủy sẽ ghi nhận rõ nguồn gốc: Khách hàng hủy (khi đơn chưa duyệt) hoặc Nhân viên hủy (khi đơn sai lệch hoặc không hợp lệ).

4. Cơ chế thùng rác (Recycle Bin) trong hệ thống hoạt động ra sao và được kiểm soát như thế nào?

Để đảm bảo an toàn dữ liệu, khi người dùng thực hiện xóa các đối tượng (sản phẩm, danh mục, tin tức, nhà cung cấp, mã giảm giá, slider, khách hàng, nhân viên), đối tượng sẽ không bị xóa ngay khỏi cơ sở dữ liệu mà được chuyển vào bảng Thùng rác. Cả Quản trị viên và Nhân viên đều có thể thực hiện thao tác khôi phục dữ liệu từ thùng rác về lại danh sách chính, nhưng chức năng "Xóa vĩnh viễn" khỏi cơ sở dữ liệu chỉ dành riêng cho tài khoản Người quản trị.

5. Khách hàng chưa đăng ký tài khoản có thể mua hàng trên hệ thống được không?

Khách hàng không có tài khoản vẫn có thể tiến hành đặt mua hàng bình thường trên website. Trong quá trình thanh toán, người mua chỉ cần điền đầy đủ các thông tin cá nhân bắt buộc vào biểu mẫu giao hàng (bao gồm Họ tên, Số điện thoại, Email, Tỉnh/Thành phố, Quận/Huyện, Địa chỉ giao hàng cụ thể). Nếu biểu mẫu thiếu thông tin, hệ thống sẽ báo lỗi và yêu cầu bổ sung trước khi hoàn tất giao dịch.


Kết luận

Đồ án tốt nghiệp "Xây dựng website bán điện thoại, laptop, phụ kiện" của nhóm sinh viên Ngô Văn Hiệp và Nguyễn Đức Lương tại Trường Cao đẳng Kỹ thuật Cao Thắng đã giải quyết thỏa đáng bài toán chuyển đổi mô hình quản lý bán hàng từ thủ công sang tự động hóa trên môi trường mạng. Đề tài vận dụng hiệu quả ngôn ngữ PHP và kiến trúc MVC của CodeIgniter 3 để xây dựng một hệ thống website thương mại điện tử có đầy đủ chức năng đặt hàng, kiểm soát tồn kho, phân quyền quản trị 2 cấp độ và quản lý đơn hàng chuyên nghiệp. Mặc dù còn giới hạn trong phạm vi thử nghiệm máy chủ cục bộ và chưa tích hợp cổng thanh toán trực tuyến, công trình là tài liệu tham khảo có giá trị cao về mặt phân tích thiết kế hệ thống và tổ chức cơ sở dữ liệu cho các nghiên cứu, đồ án công nghệ thông tin tương tự.