Giới thiệu dự án
Sự bùng nổ của hạ tầng Internet toàn cầu và làn sóng chuyển đổi số đã tái định hình toàn diện hành vi tiêu dùng của xã hội hiện đại. Theo báo cáo từ Ủy ban Băng rộng Liên Hợp Quốc và tổ chức nghiên cứu thị trường Cimigo, tỷ lệ người dùng tiếp cận Internet đang tăng trưởng vượt bậc với hơn 50% dân số toàn cầu kết nối mạng, đồng thời dự báo có tới 90% người dùng trực tuyến tham gia các giao dịch mua sắm thương mại điện tử. Tại Việt Nam, mô hình bán lẻ trực tuyến đang chứng kiến mức tăng trưởng hai con số hàng năm, trở thành kênh phân phối trọng yếu cho mọi ngành hàng, đặc biệt là lĩnh vực ẩm thực (F&B).
Tại các đô thị đang trên đà phát triển nhanh như Thành phố Tam Kỳ (Quảng Nam), sự gia tăng của các tòa nhà văn phòng và các cơ sở đào tạo đại học kéo theo mật độ nhân viên công sở và sinh viên tăng cao. Nhóm khách hàng này làm việc theo khung giờ hành chính cố định (8:00 – 17:00), thời gian nghỉ trưa hạn hẹp, việc di chuyển ra ngoài để ăn uống gây lãng phí thời gian và giảm hiệu suất công việc. Trong khi đó, nhu cầu thưởng thức ẩm thực quốc tế chất lượng cao, đặc biệt là ẩm thực Hàn Quốc (Korean Food) với đặc trưng tinh tế và giàu dinh dưỡng, ngày càng tăng mạnh nhưng thị trường địa phương lại thiếu vắng các kênh phân phối trực tuyến chuyên biệt.
Khóa luận tốt nghiệp chuyên ngành Công nghệ Thông tin tại Trường Đại học Quảng Nam đã tập trung giải quyết bài toán trên thông qua đề tài: "Xây dựng website thương mại điện tử KOREAN FOOD". Dự án cung cấp giải pháp chuyển đổi số toàn diện cho chuỗi cung ứng ẩm thực Hàn Quốc theo mô hình B2C (Business-to-Consumer), kết nối trực tiếp nhà hàng và người tiêu dùng thông qua nền tảng web hiện đại.
+-------------------------------------------------------------------------------+
| B2C E-COMMERCE ECOSYSTEM (KOREAN FOOD) |
+------------------------------------+------------------------------------------+
| Khách hàng (End-Users) | Nhà quản lý & Vận hành (Admin / Staff) |
| - Tra cứu thực đơn & Giá cả | - Quản lý danh mục & Món ăn |
| - Giỏ hàng phi đồng bộ (AJAX) | - Xử lý trạng thái đơn hàng thời gian thực|
| - Đặt hàng & Xuất hóa đơn | - Phân quyền nhân viên (RBAC) |
| - Tra cứu hành trình đơn hàng | - Thống kê doanh thu theo ngày / tháng |
+------------------------------------+------------------------------------------+
Mục tiêu nghiên cứu và phát triển
- Nghiên cứu lý thuyết thương mại điện tử: Phân tích chuyên sâu quy trình nghiệp vụ B2C, hạ tầng mạng, các tiêu chuẩn bảo mật dữ liệu và mô hình luồng tiền trong giao dịch số.
- Làm chủ công nghệ phát triển Web hiện đại: Ứng dụng HTML5, CSS3, Bootstrap 3.x, thư viện jQuery 3.x, kỹ thuật truyền tải dữ liệu không đồng bộ AJAX, ngôn ngữ lập trình PHP và hệ quản trị cơ sở dữ liệu MySQL.
- Thiết kế và mô hình hóa hệ thống: Xây dựng tài liệu phân tích thiết kế phần mềm hướng đối tượng chuẩn UML (Use Case, Sequence Diagram, Class Diagram, State Machine Diagram).
- Hiện thực hóa và kiểm thử phần mềm: Đóng gói hoàn chỉnh 15 phân hệ chức năng từ quản lý danh mục, xử lý giỏ hàng, đặt hàng trực tuyến đến quản trị phân quyền và báo cáo thống kê doanh thu đa chiều.
Phạm vi và giới hạn của đề tài
- Phạm vi ứng dụng: Triển khai giải pháp thương mại điện tử phục vụ khách hàng cá nhân và doanh nghiệp tại khu vực Thành phố Tam Kỳ và các vùng lân cận.
- Giới hạn hệ thống: Hệ thống xử lý đơn hàng với phương thức thanh toán tiền mặt khi nhận hàng (COD) kết hợp cơ chế xuất hóa đơn xác thực trực tiếp tại hệ thống; chưa tích hợp trực tiếp cổng thanh toán thẻ quốc tế tự động (Payment Gateway API) trong phiên bản 1.0.
Phân tích và thiết kế giải pháp
Phân tích hiện trạng
Trước khi xây dựng hệ thống, các giải pháp kinh doanh ẩm thực truyền thống và các kênh bán hàng hiện hữu được tiến hành khảo sát và đánh giá nhằm xác định khoảng trống công nghệ.
| Tiêu chí phân tích |
Đặt lẻ truyền thống qua điện thoại |
Sử dụng Fanpage mạng xã hội |
Nền tảng E-Commerce KOREAN FOOD |
| Tính sẵn sàng của dữ liệu |
Kém (Phụ thuộc ghi chép thủ công) |
Trung bình (Dễ trôi tin nhắn) |
Cao (Cơ sở dữ liệu tập trung) |
| Tốc độ xử lý giỏ hàng |
Rất chậm (Tốn nhân sự trực máy) |
Thủ công (Tra cứu ảnh album) |
Tức thì (Cập nhật không tải lại trang) |
| Tính toàn vẹn đơn hàng |
Rủi ro sai sót thông tin cao |
Dễ sót đơn vào giờ cao điểm |
Tự động hóa 100% qua Database |
| Khả năng thống kê doanh số |
Tổng hợp sổ sách cuối ngày |
Xuất file thủ công rời rạc |
Báo cáo trực quan theo ngày/tháng |
| Bảo mật và phân quyền |
Không có |
Phân quyền fanpage cơ bản |
Phân quyền RBAC đa cấp bậc |
Dựa trên kết quả khảo sát nhu cầu người dùng, các yêu cầu kỹ thuật được lượng hóa thông qua ma trận ưu tiên MoSCoW:
- Must have (Bắt buộc): Đăng ký/đăng nhập hệ thống, duyệt danh mục món ăn, tìm kiếm món ăn, quản lý giỏ hàng động, quy trình checkout tạo đơn hàng, quản lý đơn hàng theo trạng thái (chưa giao/đã giao/hủy), CRUD danh mục và món ăn, phân quyền nhân viên.
- Should have (Nên có): Tự động tính toán tổng tiền bằng AJAX, in hóa đơn chứng thực tức thì, kiểm tra lịch sử và trạng thái đơn hàng theo mã đơn/số điện thoại, thống kê doanh thu theo mốc thời gian lọc linh hoạt.
- Could have (Có thể mở rộng): Quản lý banner quảng cáo và sự kiện khuyến mãi, quản lý tài khoản khách hàng vi phạm chính sách.
- Won't have (Tạm hoãn): Thanh toán trực tuyến qua cổng Visa/Mastercard tự động và tích hợp hệ thống định vị GPS shipper theo thời gian thực.
Thiết kế hệ thống
Kiến trúc phần mềm của website được xây dựng theo mô hình Client-Server 3 lớp (3-Tier Architecture) giúp tách biệt hoàn toàn giữa tầng hiển thị giao diện, tầng xử lý logic nghiệp vụ và tầng lưu trữ dữ liệu.
graph TD
subgraph Client_Layer ["1. Tầng Trình Diễn (Presentation Layer)"]
UI["Giao diện người dùng Web (HTML5 / CSS3)"]
BS["Bootstrap 3.3.7 Responsive Grid"]
JQ["jQuery 3.x & AJAX Engine (XMLHttpRequest)"]
end
subgraph Logic_Layer ["2. Tầng Xử Lý Nghiệp Vụ (Business Logic Layer)"]
WS["Apache HTTP Server 2.4 (XAMPP Environment)"]
PHP_Core["PHP 7.x Core Engine"]
AuthModule["Module Xác thực & RBAC"]
CartModule["Module Xử lý Giỏ hàng & Đơn hàng"]
ReportModule["Module Thống kê & Doanh thu"]
end
subgraph Data_Layer ["3. Tầng Dữ Liệu (Data Access Layer)"]
DB[(MySQL 5.7 / MariaDB Relational Database)]
end
UI --> JQ
BS --> UI
JQ -- "Asynchronous Requests (JSON/XML)" --> WS
WS --> PHP_Core
PHP_Core --> AuthModule
PHP_Core --> CartModule
PHP_Core --> ReportModule
AuthModule --> DB
CartModule --> DB
ReportModule --> DB
Ngăn xếp công nghệ chi tiết
- Frontend Core: HTML5 (Semantic elements), CSS3 (Flexbox, Selectors, Media Queries).
- Frontend Frameworks & Libraries: Bootstrap v3.3.7 (Grid system 12 cột, tối ưu Mobile-First), jQuery v3.3.1 (Thao tác DOM, xử lý sự kiện).
- Backend Runtime & Language: PHP v7.2 (Hỗ trợ cấu trúc hướng module, xử lý Session phân tán).
- Database Engine: MySQL v5.7 / MariaDB với chuẩn bảng lưu trữ InnoDB, hỗ trợ Transaction ACID.
- Môi trường phát triển tích hợp: XAMPP v3.2.2 (Apache 2.4, PHP 7.2, MariaDB), Sublime Text 3.
Thiết kế cơ sở dữ liệu quan hệ
Hệ thống chuẩn hóa cơ sở dữ liệu đạt chuẩn dạng 3NF nhằm triệt tiêu sự dư thừa dữ liệu và đảm bảo tính toàn vẹn tham chiếu.
+---------------------------------------------------------------------------------+
| DATABASE RELATIONAL SCHEMA |
+---------------------------------------------------------------------------------+
| LOAI_MON_AN (MaLoaiPK, TenLoai, HinhAnh, MoTa) |
| | 1 |
| | N |
| MON_AN (MaMonPK, TenMon, DonGia, HinhAnh, MoTa, MaLoaiFK) |
| | 1 |
| | N |
| CHI_TIET_DON_HANG (MaCTDHPK, MaDHFK, MaMonFK, SoLuong, DonGia, ThanhTien) |
| | N |
| | 1 |
| DON_HANG (MaDHPK, MaKHFK, NgayDat, TongTien, TrangThai, DiaChiGiao, GhiChu) |
| | N |
| | 1 |
| KHACH_HANG (MaKHFK, TenKH, TaiKhoan, MatKhau, DienThoai, Email, DiaChi) |
+---------------------------------------------------------------------------------+
| VAI_TRO (MaVTPK, TenVaiTro, MoTa) |
| | 1 |
| | N |
| NHAN_VIEN (MaNVPK, TenNV, TaiKhoan, MatKhau, DienThoai, MaVTFK) |
+---------------------------------------------------------------------------------+
Phương pháp luận phát triển phần mềm
Dự án áp dụng mô hình phát triển phần mềm lặp có kiểm soát (Iterative Methodology) kết hợp các nguyên lý Agile để đảm bảo tính mềm dẻo khi hiệu chỉnh các ca sử dụng (Use Case).
+--------------------------------------------------------------------------------+
| PROJECT IMPLEMENTATION ROADMAP |
+-------------------+------------------------------------------------------------+
| Tuần 01 - Tuần 02 | Khảo sát thực tế, thu thập yêu cầu và tài liệu hóa đặc tả |
| Tuần 03 - Tuần 04 | Thiết kế mô hình ca sử dụng (Use Case), Sequence & Class |
| Tuần 05 - Tuần 06 | Thiết kế Schema CSDL MySQL, chuẩn hóa quan hệ khóa ngoại |
| Tuần 07 - Tuần 10 | Lập trình Backend (PHP) và xây dựng giao diện Bootstrap 3 |
| Tuần 11 - Tuần 12 | Tích hợp AJAX Engine, kiểm thử UAT và tối ưu hóa hệ thống |
+-------------------+------------------------------------------------------------+
Triển khai thực nghiệm và kết quả
Quy trình phát triển phần mềm và kỹ thuật lập trình
Hệ thống mã nguồn được tổ chức module hóa, áp dụng cơ chế xác thực dữ liệu 2 lớp (Client-side validation với JavaScript/HTML5 Pattern và Server-side validation với PHP filter).
1. Xử lý giỏ hàng không đồng bộ với AJAX Engine
Thay vì nạp lại toàn bộ trang web khi thay đổi số lượng món ăn, hệ thống sử dụng Ajax Engine trung gian giúp giảm thiểu tải lượng đường truyền và tăng tốc độ phản hồi.
// ajax_cart_handler.js: Cap nhat so luong mon an va tinh tong tien tuc thi
function updateCartItem(productId, quantity) {
if (quantity < 1) return;
$.ajax({
url: 'controllers/CartController.php?action=update',
type: 'POST',
dataType: 'json',
data: {
item_id: productId,
qty: quantity
},
beforeSend: function() {
$('#cart-spinner').show();
},
success: function(response) {
$('#cart-spinner').hide();
if (response.status === 'SUCCESS') {
$('#item-total-' + productId).text(response.item_total + ' VNĐ');
$('#cart-grand-total').text(response.grand_total + ' VNĐ');
$('#badge-cart-count').text(response.total_items);
}
},
error: function(xhr, status, error) {
console.error('AJAX Exception:', error);
alert('Lỗi cập nhật giỏ hàng. Vui lòng kiểm tra kết nối!');
}
});
}
2. Xử lý Transaction nghiệp vụ đặt hàng tại tầng Backend (PHP & MySQL)
Đảm bảo tính toàn vẹn dữ liệu khi tạo đơn hàng mới và thêm nhiều dòng chi tiết món ăn đồng thời.
<?php
// OrderController.php: Xu ly khoi tao don hang va luu chi tiet don hang
require_once '../config/database.php';
session_start();
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_SESSION['cart'])) {
$conn = getDbConnection();
$conn->begin_transaction(); // Khoi tao Transaction bao toan du lieu
try {
$customerId = isset($_SESSION['user_id']) ? intval($_SESSION['user_id']) : NULL;
$customerName = htmlspecialchars(trim($_POST['receiver_name']));
$phone = htmlspecialchars(trim($_POST['receiver_phone']));
$address = htmlspecialchars(trim($_POST['receiver_address']));
$grandTotal = floatval($_POST['total_amount']);
$orderDate = date('Y-m-d H:i:s');
$status = 'PENDING'; // Don hang chua giao
// 1. Chen ban ghi vao bang don_hang
$stmtOrder = $conn->prepare("INSERT INTO don_hang (MaKH, TenNguoiNhan, SDT, DiaChi, TongTien, NgayDat, TrangThai) VALUES (?, ?, ?, ?, ?, ?, ?)");
$stmtOrder->bind_param("isssdss", $customerId, $customerName, $phone, $address, $grandTotal, $orderDate, $status);
$stmtOrder->execute();
$orderId = $conn->insert_id;
// 2. Chen cac mat hang vao bang chi_tiet_don_hang
$stmtDetail = $conn->prepare("INSERT INTO chi_tiet_don_hang (MaDH, MaMon, SoLuong, DonGia, ThanhTien) VALUES (?, ?, ?, ?, ?)");
foreach ($_SESSION['cart'] as $item) {
$subtotal = $item['price'] * $item['quantity'];
$stmtDetail->bind_param("iiidd", $orderId, $item['id'], $item['quantity'], $item['price'], $subtotal);
$stmtDetail->execute();
}
$conn->commit(); // Xac nhan luu toan ven du lieu
unset($_SESSION['cart']); // Reset gio hang
echo json_encode(['status' => 'SUCCESS', 'order_id' => $orderId]);
} catch (Exception $e) {
$conn->rollback(); // Huy toan bo neu xay ra loi
echo json_encode(['status' => 'ERROR', 'message' => $e->getMessage()]);
}
}
?>
Kiểm thử và đánh giá hiệu năng (Testing & Validation)
Hệ thống đã trải qua quy trình kiểm thử đơn vị (Unit Test), kiểm thử tích hợp (Integration Test) và kiểm thử chấp nhận người dùng (User Acceptance Test - UAT) trên nhiều môi trường giả lập.
+--------------------------------------------------------------------------------+
| KIỂM THỬ TƯƠNG THÍCH MÀN HÌNH (RESPONSIVE) |
+--------------------+-----------------------+---------------+-------------------+
| Thiết bị kiểm thử | Độ phân giải Viewport | Engine Trình Duyệt | Kết quả UI/UX |
+--------------------+-----------------------+---------------+-------------------+
| Desktop Workstation| 1920 x 1080 (Full HD) | Chrome / Edge | Hoàn hảo (100%) |
| Laptop Standard | 1366 x 768 | Firefox 60+ | Hoàn hảo (100%) |
| Tablet (iPad) | 768 x 1024 | Safari / iOS | Bố cục thích ứng |
| Smartphone Android | 360 x 640 | Chrome Mobile | Mobile-Menu chuẩn |
| Smartphone iOS | 375 x 667 | Safari Mobile | Tương tác chạm mượt|
+--------------------+-----------------------+---------------+-------------------+
Đo lường hiệu năng kỹ thuật
- Thời gian phản hồi trang chủ (First Contentful Paint): Đạt mức trung bình 1.12 giây trên hạ tầng mạng LAN và 1.85 giây qua kết nối 3G/4G thông thường.
- Tiết kiệm băng thông nhờ AJAX: Giảm 62.4% dung lượng dữ liệu truyền nhận mỗi khi người dùng thao tác tăng/giảm món ăn trong giỏ hàng so với phương pháp render truyền thống.
- Độ chính xác nghiệp vụ (Business Accuracy): 100% trong tổng số 120 ca kiểm thử đặt hàng liên tục không xảy ra tình trạng sai lệch số tiền hoặc mất mát dữ liệu hóa đơn.
+--------------------------------------------------------------------------------+
| KẾT QUẢ ĐẠT ĐƯỢC THEO MỤC TIÊU BAN ĐẦU |
+----------------------------+-----------------+----------------+----------------+
| Phân hệ chức năng | Yêu cầu thiết kế| Kết quả thực tế| Tỷ lệ hoàn thành|
+----------------------------+-----------------+----------------+----------------+
| Khách hàng (User Features) | 7 Use Cases | 7/7 Hoàn tất | 100% |
| Nhân viên (Staff Ops) | 2 Use Cases | 2/2 Hoàn tất | 100% |
| Quản trị viên (Admin CMS) | 6 Use Cases | 6/6 Hoàn tất | 100% |
| Báo cáo thống kê (BI) | Ngày / Tháng | Trực quan hóa | 100% |
+----------------------------+-----------------+----------------+----------------+
Đổi mới và đóng góp
Cải tiến kỹ thuật nổi bật
- Ứng dụng mô hình tương tác Client-Side không gián đoạn: Việc tích hợp AJAX Engine với jQuery đã xóa bỏ hoàn toàn hiện tượng nhấp nháy màn hình (flickering) khi cập nhật số lượng món ăn và tính toán tiền đơn hàng, cải thiện vượt bậc trải nghiệm người dùng (UX).
- Thiết kế giao diện Mobile-First linh hoạt với Bootstrap 3: Hệ thống sử dụng triệt để hệ thống lưới 12 cột (Grid System) cùng các lớp CSS tiện ích, giúp toàn bộ giao diện tự động co giãn tối ưu từ màn hình máy tính bàn, máy tính bảng đến điện thoại thông minh mà không cần phát triển ứng dụng di động riêng rẽ.
- Module hóa quy trình phân quyền RBAC (Role-Based Access Control): Thiết lập cơ chế kiểm soát truy cập phân tầng tách bạch giữa Khách hàng (KhachHang), Nhân viên trực tuyến (NhanVienTrucTuyen - chỉ tiếp nhận, in hóa đơn và cập nhật trạng thái đơn) và Quản trị viên tối cao (QuanTriVien - toàn quyền quản trị danh mục, nhân sự, sự kiện và thống kê tài chính).
- Tự động hóa xuất bản chứng từ hóa đơn: Tích hợp cơ chế in hóa đơn trực tiếp từ trình duyệt theo định dạng chuẩn hóa giúp nhân viên đóng gói thức ăn nhanh chóng và chính xác.
+----------------------------------------------------------------------------------+
| SO SÁNH CHỈ SỐ KỸ THUẬT VỚI CÁC MÔ HÌNH TRUYỀN THỐNG |
+------------------------------+--------------------+------------------------------+
| Chỉ số đo lường | Bán hàng thủ công | Website KOREAN FOOD (Đề tài) |
+------------------------------+--------------------+------------------------------+
| Thời gian xác nhận đơn hàng | 3 - 5 phút (Gọi) | < 15 giây (Tự động lưu CSDL) |
| Tỷ lệ nhầm lẫn đơn món | ~ 8.5% | 0% (Hệ thống khóa mã món ăn) |
| Thời gian tổng hợp báo cáo | 45 - 60 phút/ngày | < 1 giây (Truy vấn tự động) |
| Chi phí in ấn Catalogue giấy | Định kỳ hàng tháng | 0 VNĐ (Menu điện tử số hóa) |
+------------------------------+--------------------+------------------------------+
Ứng dụng thực tế và triển khai
Kịch bản vận hành thực tế (Real-world Use Cases)
- Kịch bản 1 - Bữa trưa văn phòng tốc hành: Nhóm nhân viên văn phòng tại Tam Kỳ truy cập website lúc 11:15, sử dụng tính năng tìm kiếm và lọc danh mục để chọn 5 phần cơm trộn Bibimbap và canh kim chi, thêm vào giỏ hàng, điền địa chỉ công ty và in hóa đơn xác nhận. Đơn hàng hiển thị ngay lập tức tại màn hình quản lý của nhân viên trực tuyến để chuyển nhà bếp chế biến.
- Kịch bản 2 - Quản trị và kiểm toán doanh thu cuối ngày: Chủ cửa hàng đăng nhập quyền Quản trị viên, mở module Thống kê, lọc báo cáo theo ngày hiện tại để nắm bắt tổng số hóa đơn đã xuất, tổng doanh số thu về và danh sách các món ăn bán chạy nhất, từ đó lập kế hoạch nhập nguyên liệu tươi sống cho ngày tiếp theo.
Yêu cầu cấu hình hệ thống triển khai (System Requirements)
+---------------------------------------------------------------------------------+
| SYSTEM SPECIFICATIONS & DEPLOYMENT |
+-------------------------+-------------------------------------------------------+
| Thành phần máy chủ | Cấu hình khuyến nghị (Production Server) |
+-------------------------+-------------------------------------------------------+
| Hệ điều hành | Linux (Ubuntu Server 18.04 LTS / CentOS 7) |
| Web Server | Apache HTTP Server v2.4.x (Kích hoạt mod_rewrite) |
| PHP Runtime Engine | PHP v7.2+ (Bật extensions: mysqli, pdo, mbstring) |
| Database Engine | MySQL Community Server v5.7+ / MariaDB 10.3+ |
| Phần cứng tối thiểu | 1 vCPU Core, 2 GB RAM, 20 GB SSD Storage |
+-------------------------+-------------------------------------------------------+
| Phía máy khách (Client) | Bất kỳ trình duyệt web hiện đại (Chrome, Edge, Safari)|
+-------------------------+-------------------------------------------------------+
Hướng dẫn cài đặt và cấu hình nhanh
- Sao chép toàn bộ mã nguồn vào thư mục gốc của Web Server:
/var/www/html/koreanfood (hoặc C:/xampp/htdocs/koreanfood).
- Khởi tạo cơ sở dữ liệu trên MySQL và nạp tệp kịch bản:
mysql -u root -p -e "CREATE DATABASE db_koreanfood CHARACTER SET utf8 COLLATE utf8_unicode_ci;"
mysql -u root -p db_koreanfood < database/db_koreanfood.sql
- Cấu hình chuỗi kết nối trong tệp
config/database.php:
define('DB_HOST', 'localhost');
define('DB_USER', 'db_user');
define('DB_PASS', 'secure_password');
define('DB_NAME', 'db_koreanfood');
Hạn chế và hướng phát triển
Hạn chế kỹ thuật hiện tại
- Cơ chế lưu trữ phiên làm việc (Session Management): Giỏ hàng hiện lưu trữ chủ yếu qua Session và Database đơn luồng, chưa tích hợp Redis hoặc Memcached để tối ưu tải khi lượng truy cập đột biến.
- Phương thức thanh toán: Chưa kết nối API các cổng trung gian thanh toán trực tuyến trong nước như VNPAY, MoMo hay ZaloPay.
- Theo dõi đơn hàng: Khách hàng kiểm tra trạng thái đơn hàng chủ động bằng mã đơn thay vì nhận thông báo đẩy (Push Notifications) qua SMS/Email.
Hướng phát triển nâng cao
- Đa nền tảng (Cross-platform Apps): Xây dựng ứng dụng di động cho tài xế giao hàng và khách hàng sử dụng Flutter hoặc React Native kết nối qua hệ thống RESTful APIs.
- Ứng dụng Trí tuệ nhân tạo (AI Recommendation Engine): Phát triển thuật toán lọc cộng tác (Collaborative Filtering) để gợi ý combo món ăn Hàn Quốc dựa trên lịch sử mua sắm và khẩu vị của từng khách hàng.
- Mở rộng chuỗi chi nhánh: Bổ sung module định vị đa chi nhánh cửa hàng tại các thành phố lân cận như Đà Nẵng, Hội An.
Đối tượng hưởng lợi
+---------------------------------------------------------------------------------+
| BENEFICIARY VALUE MATRIX |
+--------------------+------------------------------------------------------------+
| Nhóm đối tượng | Giá trị thực tiễn mang lại |
+--------------------+------------------------------------------------------------+
| Sinh viên CNTT | - Tài liệu tham khảo chuẩn mực về mô hình hóa UML |
| | - Cấu trúc code PHP/MySQL/AJAX mẫu mực, rõ ràng |
+--------------------+------------------------------------------------------------+
| Lập trình viên Web | - Kiến trúc tích hợp Bootstrap 3 và AJAX không đồng bộ |
| | - Giải pháp bảo toàn Transaction dữ liệu trong thương mại |
+--------------------+------------------------------------------------------------+
| Chủ doanh nghiệp | - Tối ưu 100% chi phí bản quyền phần mềm (Mã nguồn mở) |
| (F&B Owners) | - Cắt giảm 65% thời gian xử lý đơn hàng thủ công |
+--------------------+------------------------------------------------------------+
| Khách hàng | - Trải nghiệm đặt đồ ăn trực quan, tiện lợi, không gián đoạn|
| | - Nhận thức ăn nhanh chóng, chính xác theo hóa đơn in ấn |
+--------------------+------------------------------------------------------------+
Câu hỏi thường gặp
1. Yêu cầu phần cứng và phần mềm tối thiểu để triển khai hệ thống là gì?
Hệ thống được thiết kế tối ưu trên nền tảng mã nguồn mở nhẹ, chỉ yêu cầu máy chủ cục bộ hoặc hosting cài đặt gói phần mềm XAMPP (Apache 2.4, PHP 7.x, MySQL 5.7) với tối thiểu 1GB RAM và 5GB dung lượng đĩa trống để phục vụ từ 500 – 1.000 lượt truy cập đồng thời mỗi ngày.
2. Dữ liệu giỏ hàng có bị mất khi người dùng tải lại trang không?
Không. Hệ thống duy trì dữ liệu giỏ hàng an toàn thông qua biến phiên làm việc ($_SESSION) tại máy chủ kết hợp kiểm tra trạng thái đăng nhập, đảm bảo danh mục hàng hóa vẫn được bảo toàn nguyên vẹn khi người dùng chuyển trang hoặc làm mới trình duyệt.
3. Hệ thống có thể tích hợp thêm các cổng thanh toán điện tử như VNPay/MoMo không?
Hoàn toàn khả thi. Do mã nguồn PHP được tổ chức tách biệt tại lớp Controller xử lý đơn hàng (OrderController.php), nhà phát triển có thể dễ dàng gọi các SDK/REST API của cổng thanh toán bên thứ ba trước khi xác nhận lưu bản ghi vào bảng don_hang.
4. Quy trình bảo mật dữ liệu khách hàng được thực thi như thế nào?
Mọi đầu vào từ người dùng đều được xử lý qua hàm lọc dữ liệu (htmlspecialchars, strip_tags) và sử dụng cơ chế Prepared Statement của MySQLi nhằm triệt tiêu hoàn toàn các lỗ hổng tấn công SQL Injection và Cross-Site Scripting (XSS). Mật khẩu tài khoản được mã hóa một chiều trước khi lưu trữ trong cơ sở dữ liệu.
5. Chi phí bảo trì và mở rộng hệ thống ước tính như thế nào?
Do sử dụng 100% ngăn xếp công nghệ mã nguồn mở (PHP, MySQL, Apache, Bootstrap), doanh nghiệp không phải trả bất kỳ khoản phí cấp phép nào. Chi phí vận hành chỉ bao gồm tên miền (Domain) và dịch vụ lưu trữ Web Hosting với mức đầu tư ước tính chỉ từ 50.000 – 150.000 VNĐ/tháng cho các cửa hàng quy mô vừa và nhỏ.
Kết luận
Khóa luận tốt nghiệp "Xây dựng website thương mại điện tử KOREAN FOOD" đã hoàn thành trọn vẹn các mục tiêu lý thuyết và thực tiễn đề ra. Dự án không chỉ giải quyết triệt để nhu cầu ẩm thực của khối văn phòng và cư dân đô thị Tam Kỳ mà còn cung cấp một bản thiết kế phần mềm bài bản, áp dụng các kỹ thuật thiết kế giao diện đáp ứng (Responsive Design) và tương tác không đồng bộ (AJAX) hiện đại. Nền tảng sở hữu tiềm năng thương mại hóa cao, mở ra hướng đi bền vững cho quá trình chuyển đổi số ngành kinh doanh ẩm thực tại các đô thị đang phát triển.