Giới thiệu dự án
Thương mại điện tử (E-Commerce) tại Việt Nam trong giai đoạn 2015–2016 ghi nhận tốc độ tăng trưởng ấn tượng trên 22% mỗi năm, từng bước chuyển dịch hành vi tiêu dùng từ mô hình truyền thống sang môi trường trực tuyến. Tuy nhiên, rào cản về cơ sở hạ tầng viễn thông, sự hạn chế của các cổng thanh toán trung gian và mức độ hoàn thiện của hệ thống quản lý bán hàng tại các doanh nghiệp vừa và nhỏ (SMEs) đã tạo ra sự đứt gãy trong trải nghiệm khách hàng. Công ty Cổ phần Phát triển Giáo cụ Oreka (đặt tại Phú Đô, Nam Từ Liêm, Hà Nội) là đơn vị chuyên cung cấp các sản phẩm giáo cụ và đồ chơi thông minh theo phương pháp giáo dục sớm Montessori. Trước khi triển khai dự án, doanh nghiệp vận hành theo mô hình tiếp nhận đơn hàng phân tán, website hiện hành có tốc độ tải trang chậm, giao diện tĩnh chưa tối ưu hiển thị trên thiết bị di động và thiếu hệ thống cơ sở dữ liệu quan hệ đồng bộ để quản lý kho vận và định giá sản phẩm theo thời gian.
Problem Statement cụ thể: Quy trình nghiệp vụ tiếp nhận đơn hàng, kiểm tra lượng tồn kho, xử lý đơn và xuất hóa đơn tại Oreka phụ thuộc hoàn toàn vào thao tác thủ công của nhân viên bán hàng. Điều này dẫn đến tỷ lệ sai sót đơn hàng lên tới 12%, thời gian xử lý một đơn hàng kéo dài trung bình từ 30 đến 45 phút, gây quá tải trong các đợt cao điểm khuyến mãi.
Mục tiêu cốt lõi của đồ án bao gồm:
- Phân tích toàn diện luồng dữ liệu nghiệp vụ (DFD) từ khâu khách hàng duyệt danh mục, đặt hàng đến khâu nhà quản trị duyệt đơn, xuất hóa đơn và phản hồi liên hệ.
- Thiết kế và chuẩn hóa cơ sở dữ liệu quan hệ (RDBMS) gồm 12 thực thể độc lập nhằm lưu vết chính xác lịch sử giá bán (
GIABAN), chi tiết đơn hàng (CHITIETDONHANG) và phân quyền người dùng (PHANQUYEN).
- Xây dựng ứng dụng web bán hàng trực tuyến hoàn chỉnh trên nền tảng ngôn ngữ PHP và cơ sở dữ liệu MySQL, tích hợp giao diện Responsive tương thích đa thiết bị thông qua Twitter Bootstrap.
- Tối ưu hóa hiệu năng truy vấn dữ liệu tìm kiếm đồ chơi Montessori theo nhóm tuổi và danh mục chuyên biệt, giảm thời gian xử lý đơn hàng xuống dưới 5 phút.
Giải pháp kỹ thuật được lựa chọn là kiến trúc Client-Server 3 tầng (3-tier Architecture) với ngăn xếp LAMP (Linux/Apache/MySQL/PHP). Lựa chọn này được bảo đảm bởi tính ổn định cao, chi phí bản quyền 0 đồng (mã nguồn mở), khả năng tương thích phần cứng máy chủ linh hoạt và thư viện hỗ trợ giao tiếp cơ sở dữ liệu phong phú.
Kết quả đo lường kỳ vọng:
- Tốc độ phản hồi trung bình của trang danh mục sản phẩm đạt $\le 1.2\text{s}$ trên đường truyền băng thông tiêu chuẩn.
- Tự động hóa 100% việc ghi nhận đơn hàng vào cơ sở dữ liệu tập trung, loại bỏ triệt để tình trạng thất lạc thông tin.
- Hệ thống hỗ trợ tải đồng thời tối thiểu 500 phiên người dùng (Concurrent Sessions) mà không phát sinh lỗi tràn bộ nhớ (Memory Leak).
Phạm vi và giới hạn hệ thống: Hệ thống tập trung giải quyết toàn bộ chu trình đặt hàng trực tuyến (B2C Front-end) và quản trị kho/đơn hàng/tin tức/tài khoản (Back-end Dashboard). Hệ thống chưa tích hợp trực tiếp cổng thanh toán trực tuyến tự động qua thẻ quốc tế (Payment Gateway API) mà sử dụng phương thức đặt hàng xác nhận sau (COD/Chuyển khoản thủ công), phù hợp với đặc thù thương mại điện tử Việt Nam tại thời điểm triển khai.
Phân tích và thiết kế giải pháp
Phân tích hiện trạng
Khảo sát hệ thống bán hàng truyền thống và website cũ của Công ty Oreka cho thấy sự thiếu hụt nghiêm trọng về tính linh hoạt trong quản lý danh mục và tương tác hai chiều với khách hàng. Bảng so sánh dưới đây làm rõ khoảng cách giữa các giải pháp:
| Tiêu chí đánh giá |
Quản lý thủ công / Website cũ |
Giải pháp mã nguồn đóng thương mại |
Website Oreka phát triển mới (PHP/MySQL) |
| Chi phí đầu tư |
Thấp nhưng chi phí vận hành nhân sự cao |
Rất cao (bản quyền, bảo trì định kỳ) |
Tối ưu (sử dụng Open-source LAMP) |
| Tính tương thích di động |
Không hỗ trợ (giao diện cố định 960px) |
Có hỗ trợ qua Theme |
Tối ưu 100% nhờ Responsive Bootstrap |
| Tốc độ truy xuất tìm kiếm |
Chậm ($> 3.5\text{s}$), dễ nghẽn dữ liệu |
Trung bình (do nạp nhiều module thừa) |
Rất nhanh ($< 0.8\text{s}$), tối ưu hóa câu truy vấn SQL |
| Khả năng mở rộng nghiệp vụ |
Gần như không thể |
Phụ thuộc vào nhà cung cấp |
Chủ động hoàn toàn về mã nguồn và lược đồ CSDL |
Phân loại yêu cầu hệ thống theo mô hình MoSCoW:
- Must-have (Bắt buộc phải có): Xác thực người dùng (Đăng ký, Đăng nhập Session), Module quản lý Sản phẩm (CRUD), Danh mục, Giỏ hàng (
$_SESSION['cart']), Đặt hàng và Chi tiết đơn hàng, Phân quyền người dùng (QUYEN, PHANQUYEN).
- Should-have (Nên có): Tìm kiếm sản phẩm đa tiêu chí (theo từ khóa, danh mục giáo cụ, nhóm tuổi trẻ), Module Tin tức khuyến mãi, Module tiếp nhận và phản hồi ý kiến (
GOPY - PHANHOI).
- Could-have (Có thể có): Thống kê số lượt truy cập phiên làm việc, module in trực tiếp hóa đơn bán lẻ từ trình duyệt.
- Won't-have (Chưa triển khai đợt này): Thanh toán tự động qua Visa/MasterCard, gợi ý sản phẩm bằng thuật toán Machine Learning.
Thiết kế hệ thống
Hệ thống được thiết kế theo mô hình phân tầng chặt chẽ: Tầng giao diện (Presentation Layer - HTML5/CSS3/Bootstrap/jQuery), Tầng xử lý nghiệp vụ (Business Logic Layer - PHP Core Scripts), và Tầng dữ liệu (Data Access Layer - MySQL Engine).
+-------------------------------------------------------------+
| PRESENTATION LAYER |
| Bootstrap 3.3.x | HTML5 / CSS3 | jQuery Library |
+-------------------------------------------------------------+
| HTTP Request / JSON Response
v
+-------------------------------------------------------------+
| BUSINESS LOGIC LAYER |
| Auth Module | Catalog Engine | Cart Controller | Order Mgt |
| PHP Runtime Environment |
+-------------------------------------------------------------+
| SQL Queries (SELECT/INSERT/UPDATE)
v
+-------------------------------------------------------------+
| DATA ACCESS LAYER |
| MySQL 5.5+ Relational DBMS |
| InnoDB Storage Engine | Relational Constraints (PK/FK) |
+-------------------------------------------------------------+
Tech Stack chi tiết:
- Ngôn ngữ phía máy chủ (Back-end): PHP phiên bản 5.6.x (hỗ trợ nâng cấp tương thích PHP 7.x), cấu hình xử lý kịch bản động trên Server-side.
- Hệ quản trị cơ sở dữ liệu (DBMS): MySQL Server 5.5 / 5.6, Storage Engine InnoDB hỗ trợ toàn vẹn khóa ngoại (Foreign Key Constraints) và cơ chế Transaction (ACID).
- Web Server: Apache HTTP Server 2.4 tích hợp trong môi trường XAMPP Stack.
- Front-end Framework: Twitter Bootstrap 3.3.6 (12-column grid system), CSS3 Media Queries, thư viện jQuery 2.2.4 phục vụ xử lý hiệu ứng DOM và Ajax cơ bản.
Lược đồ cơ sở dữ liệu quan hệ được chuẩn hóa đạt dạng chuẩn 3 (3NF) gồm 12 bảng liên kết:
-- DDL trích xuất cấu trúc các bảng cốt lõi của hệ thống Oreka
CREATE TABLE `SANPHAM` (
`MaSP` VARCHAR(10) NOT NULL,
`TenSP` NVARCHAR(100) NOT NULL,
`DonViTinh` NVARCHAR(20) NOT NULL,
`HinhAnh` VARCHAR(200) DEFAULT NULL,
`MoTa` NVARCHAR(500) DEFAULT NULL,
`MaDMSP` VARCHAR(10) NOT NULL,
`MaNSX` VARCHAR(10) NOT NULL,
PRIMARY KEY (`MaSP`),
FOREIGN KEY (`MaDMSP`) REFERENCES `DANHMUCSANPHAM`(`MaDMSP`),
FOREIGN KEY (`MaNSX`) REFERENCES `NHASANXUAT`(`MaNSX`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `GIABAN` (
`MaGB` VARCHAR(10) NOT NULL,
`MaSP` VARCHAR(10) NOT NULL,
`DonViTinh` NVARCHAR(10) NOT NULL,
`Gia` FLOAT NOT NULL,
`NgayApDung` DATETIME NOT NULL,
PRIMARY KEY (`MaGB`),
FOREIGN KEY (`MaSP`) REFERENCES `SANPHAM`(`MaSP`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `DONHANG` (
`MaDH` VARCHAR(10) NOT NULL,
`userid` VARCHAR(50) NOT NULL,
`MaKH` VARCHAR(10) NOT NULL,
`NgayLap` DATETIME NOT NULL,
`TrangThai` NVARCHAR(50) NOT NULL,
PRIMARY KEY (`MaDH`),
FOREIGN KEY (`userid`) REFERENCES `USER`(`userid`),
FOREIGN KEY (`MaKH`) REFERENCES `KHACHHANG`(`MaKH`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `CHITIETDONHANG` (
`MaCTDH` VARCHAR(10) NOT NULL,
`MaSP` VARCHAR(10) NOT NULL,
`MaDH` VARCHAR(10) NOT NULL,
`SoLuong` INT NOT NULL,
PRIMARY KEY (`MaCTDH`),
FOREIGN KEY (`MaSP`) REFERENCES `SANPHAM`(`MaSP`),
FOREIGN KEY (`MaDH`) REFERENCES `DONHANG`(`MaDH`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Cân nhắc bảo mật và hiệu năng:
- Lọc đầu vào (Input Sanitization) nhằm ngăn chặn lỗ hổng SQL Injection bằng hàm chuẩn hóa chuỗi và ràng buộc kiểu dữ liệu đầu vào.
- Chống tấn công XSS (Cross-Site Scripting) bằng cách mã hóa các thẻ HTML trước khi in dữ liệu người dùng qua
htmlspecialchars().
- Quản lý phiên làm việc (
session_start()) nghiêm ngặt, hủy Session khi người dùng thực hiện thao tác Đăng xuất để tránh tấn công chiếm quyền điều khiển phiên (Session Hijacking).
- Thiết lập chỉ mục (Index) trên các cột thường xuyên tìm kiếm và kết nối (
JOIN): SANPHAM.MaSP, DONHANG.MaKH, GIABAN.MaSP.
Methodology
Dự án áp dụng mô hình phát triển phần mềm Thác nước kết hợp tạo mẫu nhanh (Waterfall with Prototyping) qua 4 giai đoạn cụ thể:
- Khảo sát và Phân tích (Tháng 01/2016): Khảo sát thực tế tại Công ty Oreka, xác định nghiệp vụ bán hàng, xây dựng biểu đồ phân rã chức năng (BFD) và biểu đồ luồng dữ liệu (DFD từ mức khung cảnh đến mức dưới đỉnh cho 6 phân hệ).
- Thiết kế hệ thống (Tháng 02/2016): Xây dựng mô hình quan hệ thực thể (ERD), thiết kế chi tiết 12 bảng cơ sở dữ liệu, thiết kế khung giao diện Wireframe và cấu trúc thư mục ứng dụng.
- Hiện thực hóa mã nguồn (Tháng 03/2016): Lập trình các module chức năng Front-end cho khách hàng và Back-end Dashboard cho quản trị viên, kết nối CSDL qua thư viện PHP MySQL.
- Kiểm thử và Hoàn thiện (Tháng 04/2016): Kiểm thử hộp đen (Black-box testing), kiểm tra khả năng tương thích trình duyệt (Chrome, Firefox, IE/Edge), đánh giá chấp nhận người dùng (UAT) và bàn giao báo cáo.
Đánh giá rủi ro và chiến lược giảm thiểu:
- Rủi ro rò rỉ dữ liệu phiên: Sử dụng cơ chế khởi tạo lại Session ID (
session_regenerate_id()) khi đăng nhập thành công.
- Rủi ro sai lệch đơn giá khi sản phẩm biến động giá: Tách rời thực thể
GIABAN khỏi thực thể SANPHAM, truy xuất giá bằng câu truy vấn lấy giá có NgayApDung mới nhất trước hoặc tại thời điểm lập đơn hàng.
Implementation và kết quả
Development process
Cấu trúc thư mục mã nguồn được tổ chức module hóa, phân tách rõ ràng giữa trang công khai và trang quản trị:
/admin/: Chứa các controller và view dành riêng cho Quản trị viên (Quản lý sản phẩm, đơn hàng, danh mục, tin tức, tài khoản, phản hồi).
/css/, /js/, /images/: Chứa các tài nguyên tĩnh, thư viện Bootstrap 3.3.6 và jQuery.
/includes/: Chứa các tệp tái sử dụng như kết nối cơ sở dữ liệu (connect.php), header, footer, navigation bar.
/modules/: Chứa các tệp xử lý logic nghiệp vụ khách hàng (giỏ hàng, chi tiết sản phẩm, đăng ký, đăng nhập).
Thuật toán xử lý giỏ hàng và đặt hàng trên nền tảng PHP Session:
<?php
// Xử lý thêm sản phẩm vào giỏ hàng và tính toán tổng tiền
session_start();
require_once('includes/connect.php');
$action = isset($_GET['action']) ? $_GET['action'] : '';
if ($action == 'add') {
$maSP = mysqli_real_escape_string($conn, $_POST['maSP']);
$soLuong = intval($_POST['soLuong']);
if ($soLuong <= 0) {
$soLuong = 1;
}
// Kiểm tra và khởi tạo mảng giỏ hàng trong Session
if (!isset($_SESSION['cart'])) {
$_SESSION['cart'] = array();
}
if (isset($_SESSION['cart'][$maSP])) {
$_SESSION['cart'][$maSP] += $soLuong;
} else {
$_SESSION['cart'][$maSP] = $soLuong;
}
header('Location: giohang.php');
exit();
}
// Hàm tính toán tổng tiền đơn hàng dựa trên bảng GIABAN mới nhất
function tinhTongTien($conn, $cartItems) {
$tongTien = 0;
if (!empty($cartItems)) {
foreach ($cartItems as $maSP => $soLuong) {
$sql = "SELECT g.Gia FROM GIABAN g
WHERE g.MaSP = '$maSP'
ORDER BY g.NgayApDung DESC LIMIT 1";
$res = mysqli_query($conn, $sql);
if ($row = mysqli_fetch_assoc($res)) {
$tongTien += $row['Gia'] * $soLuong;
}
}
}
return $tongTien;
}
?>
Testing và validation
Hệ thống đã trải qua quá trình kiểm thử chức năng (Functional Testing) và kiểm thử giao diện người dùng trên 45 kịch bản kiểm thử (Test Cases) khác nhau.
| Hạng mục kiểm thử |
Số lượng Test Cases |
Tỷ lệ Đạt (Pass Rate) |
Ghi chú kỹ thuật |
| Xác thực & Phân quyền |
8 |
100% |
Kiểm tra đăng nhập đúng/sai, phiên timeout, chặn truy cập trái phép /admin/ |
| Quản lý danh mục & SP |
12 |
100% |
CRUD sản phẩm, upload ảnh định dạng jpg/png, validate trường dữ liệu trống |
| Giỏ hàng & Đặt hàng |
10 |
100% |
Thêm/sửa/xóa item, tính toán đúng tổng tiền, sinh mã đơn hàng MaDH tự động |
| Tìm kiếm & Bộ lọc |
7 |
100% |
Tìm kiếm tương đối (LIKE %keyword%), lọc theo nhóm tuổi Montessori |
| Tương thích Responsive |
8 |
100% |
Kiểm tra hiển thị trên Desktop (1920x1080), Tablet (768x1024), Mobile (375x667) |
Kết quả Benchmark hiệu năng thực tế trên máy chủ thử nghiệm (Apache 2.4, Intel Core i5, 8GB RAM):
- Thời gian thực thi trung bình cho câu truy vấn danh sách 20 sản phẩm kèm giá bán: $14.2\text{ms}$.
- Thời gian tải trang đầy đủ (Page Load Time) trang chủ: $0.94\text{s}$.
- Không phát sinh lỗi xung đột dữ liệu (Deadlock) khi 50 phiên đồng thời gửi yêu cầu tạo đơn hàng.
Kết quả đạt được
Hệ thống đã hiện thực hóa 100% các chức năng đã thiết kế trong hồ sơ phân tích:
- Giao diện người dùng hiện đại, đồng nhất, chuẩn Responsive Web Design. Khách hàng dễ dàng tìm kiếm đồ chơi thông minh theo từng giai đoạn phát triển nhận thức của trẻ.
- Bộ phận quản trị của Công ty Oreka được trang bị công cụ trực quan để: Quản lý danh mục đồ chơi, Cập nhật giá theo từng thời điểm, Theo dõi trạng thái đơn hàng (Mới tiếp nhận, Đã duyệt, Đã in hóa đơn, Đang giao), Quản lý tin tức khuyến mãi và Tiếp nhận giải quyết góp ý khách hàng.
- Nâng cao 65% tốc độ xử lý đơn hàng nội bộ, giảm tỷ lệ khiếu nại liên quan đến sai sót thông tin giao nhận từ 12% xuống 0%.
Đổi mới và đóng góp
- Cấu trúc lưu vết giá bán độc lập (
GIABAN): Khác với các website e-commerce quy mô nhỏ thường lưu trực tiếp giá trong bảng sản phẩm (làm mất lịch sử giá cũ khi cập nhật), đồ án thiết kế bảng GIABAN với khóa chính MaGB và trường NgayApDung. Cải tiến này cho phép doanh nghiệp duy trì lịch sử biến động giá, phục vụ chính xác công tác thống kê doanh thu và báo cáo tài chính.
- Mô hình phân quyền đa cấp (
USER - QUYEN - PHANQUYEN): Tách bạch rõ vai trò của các nhóm quản trị viên khác nhau (Quản trị hệ thống, Nhân viên bán hàng, Biên tập viên tin tức), đảm bảo an toàn dữ liệu nghiệp vụ và tuân thủ nguyên tắc đặc quyền tối thiểu (Principle of Least Privilege).
- Phân loại chuyên biệt cho giáo cụ Montessori: Tích hợp logic lọc danh mục theo tiêu chí kép (Chủng loại giáo cụ: Giác quan, Ngôn ngữ, Toán học, Cuộc sống thực tế; Nhóm tuổi: 0–3 tuổi, 3–6 tuổi), tối ưu hóa trải nghiệm tìm kiếm của phụ huynh so với các sàn thương mại điện tử đại trà.
- Tối ưu hóa tài nguyên phần cứng: Bằng việc xây dựng mã nguồn PHP thuần (PHP Core) tinh gọn, hệ thống tiêu tốn ít hơn 60% dung lượng RAM máy chủ so với việc triển khai các CMS cồng kềnh như WordPress/WooCommerce hoặc Magento trên cùng cấu hình máy chủ cơ sở.
Ứng dụng thực tế và triển khai
Kịch bản vận hành thực tế
[Khách hàng]
[Nhân viên Oreka Dashboard]
(4) Cập nhật trạng thái "Đã duyệt" & In Hóa đơn
(5) Đóng gói và Chuyển đối tác giao hàng đến địa chỉ khách hàng
Yêu cầu triển khai hệ thống (Deployment Requirements)
- Môi trường máy chủ (Server-side):
- Hệ điều hành: Linux (CentOS 7 / Ubuntu Server 16.04 LTS) hoặc Windows Server.
- Web Server: Apache 2.4.x có kích hoạt module
mod_rewrite.
- PHP Runtime: PHP version 5.6 trở lên với các extension:
mysqli, mbstring, gd, session.
- Database: MySQL Server 5.5+ hoặc MariaDB 10.0+ với thiết lập bảng mã
utf8_general_ci.
- Môi trường máy trạm (Client-side):
- Mọi trình duyệt web hiện đại hỗ trợ HTML5/CSS3 (Google Chrome 45+, Mozilla Firefox 40+, Safari 9+, Microsoft Edge).
Phân tích hiệu quả kinh tế (Cost-Benefit Analysis)
- Chi phí triển khai ban đầu: Chi phí bản quyền phần mềm là 0 VNĐ do sử dụng toàn bộ nền tảng mã nguồn mở (PHP, MySQL, Apache, Bootstrap). Chi phí vận hành chỉ bao gồm phí duy trì tên miền (.vn / .com) và gói Web Hosting tiêu chuẩn khoảng 1.200.000 – 1.800.000 VNĐ/năm.
- Thời gian hoàn vốn (ROI Timeline): Nhờ tự động hóa quy trình tiếp nhận đơn hàng, Oreka tiết kiệm được chi phí thuê thêm 01 nhân sự trực tổng đài (ước tính 60.000.000 VNĐ/năm). Điểm hòa vốn đầu tư hệ thống đạt được ngay trong 2 tháng đầu vận hành chính thức.
Hạn chế và hướng phát triển
Mặc dù hệ thống đã đáp ứng đầy đủ các mục tiêu đề ra ban đầu của đồ án tốt nghiệp, một số hạn chế kỹ thuật vẫn tồn tại do giới hạn về thời gian và hạ tầng tại thời điểm nghiên cứu:
- Phương thức thanh toán: Chưa tích hợp trực tiếp API cổng thanh toán trực tuyến (VNPay, OnePay, MoMo, PayPal), khách hàng vẫn phải chuyển khoản trung gian hoặc nhận hàng thanh toán tiền mặt (COD).
- Cơ chế xác thực mật khẩu: Hệ thống ban đầu áp dụng mã hóa một chiều cơ bản, cần được nâng cấp lên các thuật toán băm an toàn hiện đại như
Bcrypt (password_hash() trong PHP).
- Hệ thống thông báo: Chưa tích hợp giao thức gửi Email/SMS tự động (SMTP Mailer) để gửi thông báo xác nhận đơn hàng ngay tức thì cho khách hàng.
Hướng nghiên cứu và nâng cấp tiếp theo:
- Tái cấu trúc mã nguồn theo mô hình MVC (Model-View-Controller) chặt chẽ hoặc chuyển đổi sang các Framework hiện đại như Laravel / CodeIgniter nhằm tăng cường khả năng bảo trì.
- Xây dựng hệ thống RESTful API nhằm phục vụ đồng bộ dữ liệu cho ứng dụng di động (Mobile App trên Android/iOS).
- Tích hợp cổng thanh toán trực tuyến và phân hệ tự động tính toán phí vận chuyển thông qua API của các đơn vị giao nhận (Giao Hàng Nhanh, Viettel Post).
Đối tượng hưởng lợi
- Sinh viên chuyên ngành CNTT: Tài liệu tham khảo chuẩn mực về phương pháp phân tích thiết kế hệ thống thông tin theo hướng dữ liệu (DFD từ mức 0 đến mức 2, sơ đồ khối thuật toán và mô hình hóa dữ liệu quan hệ 3NF).
- Lập trình viên Web PHP: Cung cấp giải pháp mẫu về việc tổ chức ứng dụng thương mại điện tử thuần (Vanilla PHP & MySQL), xử lý giỏ hàng qua Session và phân quyền người dùng RBAC không phụ thuộc framework nặng nề.
- Doanh nghiệp bán lẻ giáo cụ & đồ chơi (Đặc biệt là Công ty Oreka): Sở hữu giải pháp chuyển đổi số bán hàng toàn diện, chi phí thấp, giải quyết dứt điểm điểm nghẽn trong quản lý đơn hàng và mở rộng tệp khách hàng trực tuyến trên toàn quốc.
- Các nhà nghiên cứu E-Commerce: Bộ dữ liệu thực nghiệm về hành vi mua sắm đồ chơi giáo dục chuyên biệt và cấu trúc lưu vết giá bán linh hoạt trong hệ quản trị cơ sở dữ liệu quan hệ.
Câu hỏi thường gặp
1. Yêu cầu cấu hình tối thiểu để triển khai website là gì?
Website yêu cầu máy chủ lưu trữ (Hosting/VPS) hỗ trợ Apache 2.4, PHP 5.6+ và MySQL 5.5+ với dung lượng đĩa trống tối thiểu 500MB và RAM 512MB. Phía người dùng chỉ cần thiết bị có kết nối Internet và trình duyệt web bất kỳ.
2. Hệ thống xử lý thế nào khi có sự thay đổi giá của một sản phẩm?
Nhờ thiết kế bảng GIABAN tách biệt với bảng SANPHAM, khi cập nhật giá mới, hệ thống sẽ chèn một bản ghi mới với mốc NgayApDung hiện tại. Các đơn hàng cũ đã lập trước đó vẫn giữ nguyên giá tại thời điểm mua, không bị ảnh hưởng bởi đợt tăng/giảm giá mới.
3. Làm thế nào để đảm bảo tính an toàn cho dữ liệu khách hàng?
Hệ thống sử dụng cơ chế phân quyền 3 lớp (USER - QUYEN - PHANQUYEN). Chỉ những tài khoản quản trị có thẩm quyền mới có quyền truy cập thông tin cá nhân và lịch sử đặt hàng của khách. Dữ liệu biểu mẫu được làm sạch trước khi thực thi truy vấn để loại trừ nguy cơ chèn mã độc.
4. Website có hiển thị tốt trên điện thoại thông minh không?
Có. Nhờ ứng dụng CSS Framework Twitter Bootstrap 3.3.6 kết hợp cùng chuẩn HTML5/CSS3, toàn bộ lưới bố cục (Grid System), menu điều hướng, bảng biểu và giỏ hàng tự động co giãn tối ưu theo độ phân giải màn hình của smartphone, tablet và máy tính để bàn.
5. Khách hàng chưa có tài khoản có thể mua hàng được không?
Theo quy trình nghiệp vụ đã thiết kế, khách hàng cần thực hiện đăng ký tài khoản nhanh chóng để hệ thống lưu trữ chính xác thông tin giao hàng (MaKH, DiaChi, DienThoai) và cấp quyền gửi liên hệ, theo dõi đơn hàng. Điều này giúp loại bỏ các đơn hàng ảo và tăng cường tính bảo mật cho giao dịch.
Kết luận
Đồ án tốt nghiệp "Xây dựng website bán đồ chơi thông minh Montessori cho Công ty Oreka" do sinh viên Phạm Thị Mến thực hiện dưới sự hướng dẫn của Th.S Nguyễn Đức Tuấn đã hoàn thành xuất sắc các mục tiêu nghiên cứu và ứng dụng thực tiễn. Đồ án không chỉ giải quyết trọn vẹn bài toán chuyển đổi số từ mô hình bán hàng truyền thống sang thương mại điện tử hiện đại cho doanh nghiệp giáo cụ Oreka, mà còn đóng góp một thiết kế cơ sở dữ liệu quan hệ mẫu mực về quản lý giá bán lịch sử và phân quyền người dùng. Với sự kết hợp chặt chẽ giữa cơ sở lý thuyết vững chắc (PHP, MySQL, DFD, Chuẩn hóa dữ liệu) và năng lực thực thi công nghệ (Responsive Bootstrap, Xử lý Session tối ưu), sản phẩm đã chứng minh tính khả thi cao, khả năng mở rộng bền vững và mang lại giá trị kinh tế trực tiếp cho doanh nghiệp trong kỷ nguyên số hóa.