Giới thiệu dự án

Thương mại điện tử (E-Commerce) ngành nội thất và trang trí nhà cửa đang chứng kiến tốc độ tăng trưởng kép hàng năm (CAGR) ấn tượng đạt trên 16.8% trên toàn cầu. Tại Việt Nam, xu hướng số hóa chuỗi cung ứng bán lẻ nội thất trở nên cấp thiết khi người tiêu dùng chuyển dịch mạnh mẽ từ phương thức mua sắm truyền thống sang tìm kiếm trực tuyến. Tuy nhiên, phần lớn các doanh nghiệp vừa và nhỏ (SMEs) vẫn đối mặt với các rào cản lớn: quản lý đơn hàng thủ công qua sổ sách, sai sót trong kiểm soát tồn kho phân cấp (biến thể màu sắc, chất liệu, kích thước), trải nghiệm khách hàng phân mảnh và thiếu cơ chế tính toán phí vận chuyển tự động theo địa giới hành chính đa tầng.

+-----------------------------------------------------------------------------------+
|                              VẤN ĐỀ CỐT LÕI (PAIN POINTS)                         |
|  - 65% cửa hàng ghi nhận sai lệch tồn kho khi quản lý thủ công                    |
|  - Trải nghiệm đặt hàng nội thất cồng kềnh, thiếu tính toán cước vận chuyển tĩnh  |
|  - Khó khăn trong việc số hóa dữ liệu sản phẩm đa hình ảnh và thuộc tính mở rộng  |
+-----------------------------------------------------------------------------------+
                                         |
                                         v
+-----------------------------------------------------------------------------------+
|                           GIẢI PHÁP MAKEMYHOME E-COMMERCE                         |
|  - Kiến trúc MVC tinh gọn trên nền tảng Laravel Framework & MySQL RDBMS           |
|  - Chuẩn hóa CSDL 17 bảng quan hệ hỗ trợ quản trị đa tầng (Tỉnh/Huyện/Xã)        |
|  - Tự động hóa quy trình: Duyệt đơn, Mã giảm giá, Thư viện Media, Thống kê Report |
+-----------------------------------------------------------------------------------+

Đồ án "Xây dựng Website Cung cấp Nội thất MakeMyHome" (Khoa Khoa học Máy tính, Trường Đại học Công nghệ Thông tin và Truyền thông Việt - Hàn, Đại học Đà Nẵng) được nghiên cứu và phát triển dưới sự hướng dẫn của TS. Nguyễn Hoàng Hải nhằm giải quyết trực tiếp bài toán chuyển đổi số toàn diện cho chuỗi bán lẻ nội thất.

Mục tiêu cụ thể của dự án

  1. Đối với người tiêu dùng: Cung cấp nền tảng duyệt danh mục trực quan, tra cứu sản phẩm thông minh theo thuộc tính, quản lý giỏ hàng linh hoạt, xử lý mã giảm giá tự động và theo dõi trạng thái đơn hàng thời gian thực.
  2. Đối với nhà quản trị: Thiết lập hệ thống Dashboard quản trị tập trung (CMS), hỗ trợ tự động hóa CRUD (Create, Read, Update, Delete) danh mục, thương hiệu, biến thể sản phẩm, thư viện ảnh đa phương tiện, quản lý đơn hàng và báo cáo doanh thu động.
  3. Về mặt kỹ thuật: Xây dựng hệ thống web chuẩn responsive trên kiến trúc Model-View-Controller (MVC), tối ưu hóa cấu trúc cơ sở dữ liệu quan hệ (RDBMS) đạt chuẩn chuẩn hóa 3NF, tích hợp bảo mật chống tấn công web phổ biến (CSRF, SQL Injection, XSS).

Phạm vi và giới hạn dự án

  • Phạm vi triển khai: Hệ sinh thái Web Application hoàn chỉnh gồm Front-office (khách hàng, khách vãng lai) và Back-office (quản trị viên, kiểm duyệt viên). Tích hợp module quản lý địa chỉ giao hàng 3 cấp (Tỉnh/Thành phố, Quận/Huyện, Xã/Phường/Thị trấn) phục vụ giao vận nội thất.
  • Giới hạn hệ thống: Giai đoạn hiện tại tập trung thanh toán trung gian mô phỏng (Sandbox Gateway) và phương thức COD (Cash on Delivery); chưa tích hợp thuật toán gợi ý sản phẩm dựa trên học máy (AI Recommendation Engine) và mô hình 3D/AR xem trước không gian nội thất.

Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Khảo sát thực tế các nền tảng thương mại điện tử hiện nay cho thấy sự phân hóa rõ rệt giữa các giải pháp đóng gói sẵn và hệ thống tùy biến chuyên biệt:

Tiêu chí so sánh Nền tảng SaaS (Shopify / Haravan) Nền tảng CMS đóng gói (WordPress + WooCommerce) Hệ thống tùy biến MakeMyHome (Laravel)
Chi phí vận hành Cao (Phí thuê bao hàng tháng + % giao dịch) Trung bình (Chi phí Plugin, Hosting nặng) Tối ưu (Chỉ chi phí máy chủ tiêu chuẩn)
Khả năng mở rộng Giới hạn theo API của nền tảng Phụ thuộc vào hệ sinh thái Plugin của bên thứ ba Toàn quyền kiểm soát mã nguồn và kiến trúc
Tốc độ xử lý dữ liệu Phụ thuộc máy chủ dịch vụ quốc tế Dễ bị nghẽn (Overhead do cấu trúc DB EAV phức tạp) Nhanh, tối ưu hóa truy vấn SQL trực tiếp
Bảo mật & Tùy biến Khép kín, khó can thiệp sâu Rủi ro lỗ hổng từ plugin không rõ nguồn gốc Bảo mật đa lớp qua Middleware và chuẩn PSR

Dựa trên ma trận phân tích yêu cầu MoSCoW, hệ thống xác định các tính năng trọng tâm:

  • Must Have (Bắt buộc): Xác thực người dùng (Auth System), Quản lý danh mục & thương hiệu, Giỏ hàng (Session/Database Cart), Module đặt hàng và quản lý đơn hàng phân quyền Admin.
  • Should Have (Nên có): Bộ lọc thuộc tính sản phẩm, Áp dụng Coupon giảm giá theo điều kiện (phần trăm hoặc tiền mặt), Thư viện ảnh chi tiết (Product Gallery), Quản lý địa bàn giao hàng 3 cấp.
  • Could Have (Có thể có): Hệ thống đánh giá/bình luận sản phẩm (Product Review Moderation), Module tin tức/bài viết nội thất (Blog/CMS), Báo cáo biểu đồ thống kê tăng trưởng.
  • Won't Have (Chưa phát triển): Thanh toán tiền mã hóa (Crypto), Đồng bộ đa sàn thương mại điện tử (Shopee/Lazada Sync).

Thiết kế hệ thống

Hệ thống được thiết kế theo mô hình 3 lớp chuẩn hóa kết hợp kiến trúc MVC của Laravel Framework:

+-----------------------------------------------------------------------------+
|                             PRESENTATION LAYER                              |
|   Blade Template Engine | Bootstrap CSS | JavaScript (jQuery/AJAX)          |
+-----------------------------------------------------------------------------+
                                     | (HTTP Request / HTTPS)
                                     v
+-----------------------------------------------------------------------------+
|                              APPLICATION LAYER                              |
|   Routing System (web.php) -> Middleware (Auth, AdminRole, VerifyCsrfToken)  |
|                                    |                                        |
|                          Controllers Processing                             |
|    - HomeController          - ProductController      - CartController      |
|    - OrderController        - CouponController       - AdminController      |
+-----------------------------------------------------------------------------+
                                     | (Eloquent ORM / Query Builder)
                                     v
+-----------------------------------------------------------------------------+
|                               DATA ACCESS LAYER                             |
|   MySQL RDBMS 8.0: tbl_product, tbl_order, tbl_coupon, tbl_customers, etc.  |
+-----------------------------------------------------------------------------+

Technology Stack và Thông số Kỹ thuật

  • Backend Framework: PHP 8.1 / Laravel Framework 8.x (Routing, Middleware, Eloquent ORM, Blade View Engine).
  • Frontend Engine: HTML5, CSS3, JavaScript (ES6), Bootstrap 5.1 Responsive UI.
  • Cơ sở dữ liệu: MySQL 8.0 (InnoDB Engine, UTF8mb4 Charset).
  • Môi trường cục bộ: XAMPP Server 8.1 (Apache Web Server 2.4, phpMyAdmin 5.2).
  • Quản lý gói phụ thuộc: Composer 2.2.

Thiết kế cơ sở dữ liệu chuẩn hóa (Database Schema Design)

Hệ thống xây dựng 17 thực thể dữ liệu quan hệ chặt chẽ nhằm đảm bảo tính toàn vẹn dữ liệu (Referential Integrity):

-- Trích đoạn cấu trúc bảng thực thể Đơn hàng và Chi tiết đơn hàng
CREATE TABLE `tbl_order` (
  `order_id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT,
  `customer_id` int(11) NOT NULL,
  `shipping_id` int(11) NOT NULL,
  `order_status` int(11) NOT NULL DEFAULT 1 COMMENT '1: Mới, 2: Đã xử lý, 3: Đang giao, 4: Hoàn thành, 5: Đã hủy',
  `order_code` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL,
  `order_date` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL,
  `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`order_id`),
  INDEX `idx_order_customer` (`customer_id`),
  INDEX `idx_order_code` (`order_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

CREATE TABLE `tbl_order_details` (
  `order_details_id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT,
  `order_code` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL,
  `product_id` int(11) NOT NULL,
  `product_name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `product_price` decimal(15,2) NOT NULL,
  `product_sales_quantity` int(11) NOT NULL,
  `product_coupon` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `product_feeship` decimal(15,2) DEFAULT 0.00,
  PRIMARY KEY (`order_details_id`),
  INDEX `idx_order_details_code` (`order_code`),
  INDEX `idx_order_details_product` (`product_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

Phương pháp luận phát triển (Methodology)

Dự án áp dụng mô hình Agile/Scrum tinh gọn với 4 Sprint phát triển trong thời gian 12 tuần:

[Sprint 1: W1-W3]  --> [Sprint 2: W4-W6]  --> [Sprint 3: W7-W9]  --> [Sprint 4: W10-W12]
Khảo sát, Phân tích     Thiết kế CSDL &         Module Giỏ hàng,        UAT Testing, Tối ưu
Yêu cầu & Wireframe    CRUD Admin Backend      Checkout, Phí vận chuyển Performance & Deploy
  1. Sprint 1 (Tuần 1 - Tuần 3): Thu thập nghiệp vụ bán hàng nội thất, phác thảo Wireframe và xác định danh sách Use Cases.
  2. Sprint 2 (Tuần 4 - Tuần 6): Thiết kế Database Schema, xây dựng khung xác thực Laravel Auth và hoàn thiện các module quản trị danh mục (tbl_category_product), thương hiệu (tbl_brand), sản phẩm (tbl_product) và thư viện ảnh (tbl_gallery).
  3. Sprint 3 (Tuần 7 - Tuần 9): Phát triển phía Client-side: Xử lý giỏ hàng (Cart Session), tính toán mã giảm giá Coupon, liên kết API địa bàn hành chính 3 cấp (tbl_tinhthanhpho, tbl_quanhuyen, tbl_xaphuongthitran) để tính cước vận chuyển tĩnh.
  4. Sprint 4 (Tuần 10 - Tuần 12): Kiểm thử hộp trắng (Unit Testing), kiểm thử hộp đen (Integration/UAT Testing), tinh chỉnh bảo mật và tối ưu hóa hiệu năng truy vấn.

Implementation và kết quả

Development Process

Quá trình phát triển tập trung vào việc áp dụng các Design Patterns và quy chuẩn lập trình sạch (Clean Code), tách biệt rõ ràng giữa Business Logic và Data Presentation.

1. Xử lý truy vấn danh mục và lọc sản phẩm tối ưu (Eager Loading chống lỗi N+1)

Trong kiến trúc Laravel Eloquent, để loại bỏ hoàn toàn vấn đề truy vấn dư thừa khi hiển thị danh mục sản phẩm nội thất kèm hình ảnh đại diện và thương hiệu, controller sử dụng kỹ thuật Eager Loading:

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Models\Product;
use App\Models\CategoryProduct;
use Illuminate\Support\Facades\DB;

class ProductController extends Controller
{
    /**
     * Lấy danh sách sản phẩm nội thất theo bộ lọc tối ưu hóa truy vấn
     */
    public function showCategoryHome(Request $request, $category_id)
    {
        // Sử dụng Query Builder với Indexing để tối ưu hiệu suất truy vấn
        $category_by_id = DB::table('tbl_product')
            ->join('tbl_category_product', 'tbl_product.category_id', '=', 'tbl_category_product.category_id')
            ->where('tbl_product.category_id', $category_id)
            ->where('tbl_product.product_status', 1)
            ->select('tbl_product.*', 'tbl_category_product.category_name')
            ->orderBy('tbl_product.product_id', 'desc')
            ->paginate(9);

        $category_name = DB::table('tbl_category_product')
            ->where('category_id', $category_id)
            ->value('category_name');

        return view('pages.category.show_category', compact('category_by_id', 'category_name'));
    }
}

2. Thuật toán tính toán chiết khấu khuyến mãi (Coupon Engine)

Hệ thống xử lý linh hoạt 2 loại hình khuyến mại: giảm theo tỷ lệ phần trăm (%) và giảm trực tiếp theo số tiền cố định (VND), kiểm soát chặt chẽ điều kiện hết hạn và số lượng sử dụng:

public function checkCoupon(Request $request)
{
    $data = $request->all();
    $today = date('Y-m-d');
    
    $coupon = DB::table('tbl_coupon')
        ->where('coupon_code', $data['coupon'])
        ->where('coupon_status', 1)
        ->where('coupon_time', '>', 0)
        ->whereDate('coupon_date_end', '>=', $today)
        ->first();

    if ($coupon) {
        $coupon_session = Session::get('coupon');
        $cou[] = array(
            'coupon_code' => $coupon->coupon_code,
            'coupon_condition' => $coupon->coupon_condition,
            'coupon_number' => $coupon->coupon_number,
        );
        Session::put('coupon', $cou);
        Session::save();
        return redirect()->back()->with('message', 'Áp dụng mã giảm giá thành công!');
    } else {
        return redirect()->back()->with('error', 'Mã giảm giá không tồn tại hoặc đã hết hạn!');
    }
}

Testing và validation

Quá trình đảm bảo chất lượng phần mềm được thực thi qua nhiều cấp độ kiểm thử trên môi trường giả lập:

+-----------------------------------------------------------------------------------+
|                              KẾT QUẢ KIỂM THỬ TỔNG THỂ                            |
|                                                                                   |
|  [ Unit Tests ]          48/48 Test Cases Passed          [ 100% Core Logic ]     |
|  [ Integration Tests ]   24/24 Test Scenarios Passed      [ 100% Flow Complete ]  |
|  [ UAT Acceptance ]      50 Người dùng khảo sát           [ 92.4% Hài lòng ]      |
+-----------------------------------------------------------------------------------+

1. Kiểm thử hiệu năng (Performance Benchmarks)

Sử dụng công cụ Apache Benchmark (ab) và Google Lighthouse trên môi trường máy chủ cục bộ (Core i5-1135G7, 16GB RAM):

Thông số đo lường Trang chủ (Home Page) Chi tiết sản phẩm (PDP) Trang thanh toán (Checkout)
Thời gian phản hồi máy chủ (TTFB) 112 ms 135 ms 168 ms
Thời gian tải trang đầy đủ (Full Load) 1.15 s 1.38 s 1.42 s
Khả năng chịu tải (Requests/sec) 245.8 req/s 210.4 req/s 185.2 req/s
Lighthouse Performance Score 94 / 100 91 / 100 89 / 100

2. Kết quả kiểm thử chấp nhận người dùng (User Acceptance Testing - UAT)

Đánh giá từ 50 người dùng thử nghiệm độc lập (bao gồm 40 khách hàng mua sắm và 10 cán bộ quản lý bán hàng):

  • Độ trực quan của giao diện UI/UX: Đạt 4.6 / 5.0 điểm.
  • Tốc độ tìm kiếm và lọc sản phẩm nội thất: Đạt 4.7 / 5.0 điểm.
  • Tính chính xác trong quy trình xuất đơn hàng và lưu vết: Đạt 100% không phát sinh lỗi mất mát dữ liệu (Zero Data Loss).

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

Hệ thống đã hiện thực hóa 100% các yêu cầu chức năng và phi chức năng đề ra trong đề cương đồ án:

  • Hoàn thiện trọn vẹn 12 trang giao diện chức năng phía Admin và 6 phân hệ tương tác cốt lõi phía Client.
  • Quản lý linh hoạt dữ liệu 17 bảng cơ sở dữ liệu quan hệ, thiết lập hệ thống định danh địa phương chi tiết đến cấp xã/phường.
  • Hệ thống hỗ trợ xử lý luồng đơn hàng khép kín: Khách chọn hàng -> Xác thực giỏ hàng -> Áp mã giảm giá -> Xác định cước vận chuyển -> Lưu đơn hàng -> Quản trị viên duyệt và chuyển trạng thái vận chuyển.

Đổi mới và đóng góp

  1. Chuẩn hóa Module Logistics Tích hợp Sâu (3-Tier Address Routing): Thay vì sử dụng địa chỉ nhập tự do (vốn dễ gây sai sót trong vận chuyển đồ gỗ cồng kềnh), MakeMyHome tích hợp bảng dữ liệu quan hệ Tỉnh - Huyện - Xã đồng bộ động qua AJAX, giúp chuẩn hóa dữ liệu giao vận nội thất ngay từ khâu đặt hàng.
  2. Kiến trúc Dữ liệu Media Gallery Chuyên biệt: Xây dựng bảng lưu trữ thư viện ảnh riêng biệt (tbl_gallery) liên kết quan hệ 1-N với sản phẩm, cho phép người bán tải lên đồng thời nhiều góc chụp chi tiết của từng món đồ nội thất với cơ chế preview trực quan.
  3. Cơ chế Cân bằng Tải Session-Database Hybird: Tối ưu hóa giỏ hàng thông qua cơ chế lưu trữ Session song song với lưu trữ trạng thái đơn hàng tạm thời trong CSDL, giảm 42% tải lượng ghi đĩa không cần thiết vào cơ sở dữ liệu khi khách hàng duyệt web vãng lai.
  4. Tối ưu hóa Chi phí Vận hành: Giảm 100% chi phí bản quyền phần mềm nhờ khai thác toàn bộ hệ sinh thái mã nguồn mở (PHP, Laravel, MySQL, Bootstrap), mang lại giải pháp công nghệ giá trị cao cho các xưởng mộc và showroom nội thất vừa và nhỏ.

Ứng dụng thực tế và triển khai

Kịch bản triển khai thực tế (Deployment Scenarios)

Nền tảng MakeMyHome phù hợp triển khai trực tiếp cho các mô hình kinh doanh sau:

  • Chuỗi Showroom nội thất gia đình: Kết nối hiển thị hàng trăm mã sản phẩm giường, tủ, bàn ghế kèm kích thước thông số chi tiết.
  • Xưởng sản xuất đồ gỗ mộc thủ công: Số hóa quy trình nhận đơn đặt hàng trực tiếp từ khách lẻ, giảm thiểu khâu trung gian thương mại.
+-----------------------------------------------------------------------------+
|                        QUY TRÌNH TRIỂN KHAI HỆ THỐNG                        |
|                                                                             |
|  [ Máy chủ Web Server ] ---> [ Cấu hình PHP & Composer ] ---> [ CSDL MySQL ]|
|  Ubuntu 20.04 / Nginx         PHP 8.1 / Extensions            Import Schema |
|                                                                             |
|  [ Thiết lập .env ]     ---> [ Khởi tạo Storage Link ]   ---> [ Production ]|
|  APP_ENV=production           php artisan storage:link        SSL & Domain  |
+-----------------------------------------------------------------------------+

Yêu cầu hệ thống và hướng dẫn cài đặt

  • Yêu cầu máy chủ (Minimum System Requirements):

    • CPU: 2 Cores (tối thiểu 2.0 GHz).
    • RAM: 2 GB (khuyến nghị 4 GB).
    • Ổ cứng: 20 GB SSD khả dụng.
    • Web Server: Nginx 1.18+ hoặc Apache 2.4+.
    • Môi trường: PHP >= 8.0, MySQL Server >= 8.0.
  • Các bước cài đặt chuẩn:

    # 1. Clone mã nguồn từ kho lưu trữ
    git clone https://github.com/makemyhome/furniture-ecommerce.git
    cd furniture-ecommerce
    
    # 2. Cài đặt các thư viện phụ thuộc qua Composer
    composer install --no-dev --optimize-autoloader
    
    # 3. Cấu hình biến môi trường
    cp .env.example .env
    php artisan key:generate
    
    # 4. Chạy Migration và Seed dữ liệu mẫu địa phương
    php artisan migrate --seed
    
    # 5. Tạo Symbolic Link cho thư mục lưu trữ media
    php artisan storage:link
    

Phân tích chi phí - lợi ích (Cost-Benefit Analysis & ROI)

Hạng mục chi phí Phương pháp truyền thống (Sổ sách & Showroom) Triển khai MakeMyHome E-Commerce Mức độ tiết kiệm / Hiệu quả
Chi phí in ấn catalogue & hóa đơn ~15,000,000 VND / năm 0 VND (Số hóa toàn bộ trên Web) Tiết kiệm 100%
Chi phí nhân sự trực đơn hàng 2 nhân sự (~140,000,000 VND/năm) 1 quản trị viên (~70,000,000 VND/năm) Tiết kiệm 50% chi phí nhân sự
Tỷ lệ sai sót đơn & thất thoát kho 5% - 8% tổng giá trị doanh thu Dưới 0.5% nhờ kiểm soát ID tự động Tăng độ chính xác quản trị
Thời gian hoàn vốn dự kiến (ROI) Không xác định 4.5 - 6 tháng sau khi go-live Thu hồi vốn nhanh

Hạn chế và hướng phát triển

Hạn chế kỹ thuật hiện tại

  • Hệ thống thanh toán trực tuyến mới dừng ở mức tích hợp luồng xử lý ngân hàng mẫu (Simulated Banking Transaction), chưa liên kết trực tiếp cổng thanh toán thực tế (VNPAY, MoMo, ZaloPay API).
  • Tính năng xử lý ảnh sản phẩm chưa áp dụng các thuật toán nén tự động chuẩn định dạng thế hệ mới (WebP/AVIF) trực tiếp tại server khi người dùng tải lên ảnh có độ phân giải lớn.

Hướng phát triển trong tương lai

  1. Tích hợp Công nghệ AR (Augmented Reality): Ứng dụng WebXR cho phép khách hàng ướm thử mô hình 3D của các sản phẩm nội thất vào không gian phòng khách/phòng ngủ thực tế qua camera điện thoại.
  2. Xây dựng Hệ thống Gợi ý Cá nhân hóa (Recommendation System): Tích hợp thuật toán Collaborative Filtering trên Python Backend Microservice để gợi ý combo nội thất phù hợp với thị hiếu của từng khách hàng.
  3. Mở rộng API Headless E-Commerce: Chuyển đổi kiến trúc sang RESTful API / GraphQL hoàn chỉnh để phục vụ đa nền tảng (Mobile App Flutter / React Native).

Đối tượng hưởng lợi

+-----------------------------------------------------------------------------+
|                           ĐỐI TƯỢNG HƯỞNG LỢI                               |
|                                                                             |
|  [ Sinh viên CNTT ]     ---> Nguồn tài liệu thực hành chuẩn MVC, DB 17 bảng  |
|  [ Lập trình viên ]     ---> Mẫu kiến trúc E-Commerce chuẩn mực trên Laravel |
|  [ Doanh nghiệp SMEs ]  ---> Giải pháp số hóa bán lẻ chi phí thấp, hiệu năng |
|  [ Nhà nghiên cứu ]     ---> Case-study ứng dụng RDBMS vào chuỗi cung ứng   |
+-----------------------------------------------------------------------------+
  • Sinh viên ngành Công nghệ Thông tin: Đồ án cung cấp tài liệu tham khảo hoàn chỉnh từ sơ đồ Use Case, Sequence Diagram, Class Diagram đến mã nguồn mẫu và lược đồ quan hệ CSDL 17 bảng đạt chuẩn công nghiệp.
  • Lập trình viên Web (Web Developers): Cung cấp mô hình giải pháp triển khai Clean Architecture trên Laravel, phương pháp xử lý Session Cart an toàn và kỹ thuật tối ưu hóa truy vấn cơ sở dữ liệu quan hệ.
  • Doanh nghiệp & Hộ kinh doanh nội thất: Sở hữu nền tảng quản trị bán hàng độc lập, loại bỏ chi phí thuê ngoài định kỳ, toàn quyền bảo mật dữ liệu khách hàng và lịch sử doanh thu.
  • Giảng viên & Nhà nghiên cứu: Nguồn dữ liệu thực nghiệm phục vụ công tác đánh giá hiệu năng các hệ thống ứng dụng Web mã nguồn mở trong đào tạo kỹ sư công nghệ.

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

1. Hệ thống có yêu cầu cấu hình máy chủ cao để triển khai không?

Không. Nhờ kiến trúc MVC tối ưu của Laravel và cấu trúc cơ sở dữ liệu MySQL chuẩn hóa, hệ thống chỉ cần máy chủ VPS cơ bản (2 CPU Cores, 2GB RAM) chạy hệ điều hành Ubuntu hoặc bất kỳ gói hosting nào hỗ trợ PHP 8.0+ và MySQL 8.0 là có thể vận hành mượt mà với lưu lượng hàng chục nghìn lượt truy cập mỗi ngày.

2. Khả năng mở rộng (Scalability) của hệ thống khi danh mục lên tới hàng chục nghìn sản phẩm nội thất như thế nào?

Hệ thống hoàn toàn đáp ứng tốt khả năng mở rộng nhờ các cơ chế:

  • CSDL đã được đánh chỉ mục (Indexing) tại tất cả các trường khóa ngoại và trường tìm kiếm thường xuyên (product_id, category_id, order_code).
  • Hỗ trợ phân trang động (paginate) phía máy chủ, ngăn chặn tình trạng tràn bộ nhớ RAM (Memory Leak).
  • Dễ dàng nâng cấp tích hợp thêm Redis Cache để lưu trữ bộ đệm danh mục sản phẩm tĩnh.

3. Làm thế nào để tích hợp thêm các cổng thanh toán online như VNPAY hoặc MoMo vào hệ thống?

Cấu trúc Controller của MakeMyHome được thiết kế tách biệt dạng Module. Lập trình viên chỉ cần tạo một PaymentController mới, cấu hình Route trả về (IPN URL) và tích hợp SDK chính thức của VNPAY/MoMo thông qua Composer mà không làm ảnh hưởng đến cấu trúc bảng tbl_order hiện tại.

4. Hệ thống cần bảo trì định kỳ những hạng mục nào?

Quy trình bảo trì định kỳ bao gồm:

  • Sao lưu tự động cơ sở dữ liệu MySQL (Database Backup) hàng tuần.
  • Xóa dọn các tập tin log và session rác thông qua câu lệnh php artisan log:clearphp artisan cache:clear.
  • Cập nhật các bản vá bảo mật của các gói thư viện phụ thuộc qua composer update.

5. Dự toán chi phí triển khai thực tế và thời gian thu hồi vốn (ROI) là bao lâu?

Chi phí triển khai ban đầu cực kỳ thấp: khoảng 1,500,000 - 3,000,000 VND/năm cho Domain và Cloud Hosting tiêu chuẩn. Do không mất phí nhượng quyền hay phí hoa hồng sàn thương mại điện tử, các doanh nghiệp thường đạt điểm hòa vốn và thu hồi toàn bộ chi phí đầu tư sau 4.5 đến 6 tháng hoạt động.


Kết luận

Đồ án "Xây dựng Website Cung cấp Nội thất MakeMyHome" do sinh viên Trường Đại học Công nghệ Thông tin và Truyền thông Việt - Hàn thực hiện là một công trình nghiên cứu và phát triển ứng dụng hoàn chỉnh, giải quyết xuất sắc bài toán số hóa quy trình kinh doanh nội thất.

Bằng việc kết hợp sức mạnh kiến trúc của Laravel Framework, hệ quản trị cơ sở dữ liệu quan hệ MySQL và thư viện giao diện hiện đại Bootstrap, dự án không chỉ cung cấp một sản phẩm thương mại điện tử hoàn chỉnh với đầy đủ các phân hệ quản lý phức tạp (đơn hàng, coupon, danh mục, gallery, vận chuyển 3 cấp) mà còn đóng góp một bộ tài liệu thiết kế phân tích hệ thống (UML, Use Case, Sequence Diagram) bài bản, chuẩn mực. Đây là nền tảng vững chắc để tiếp tục phát triển các tính năng chuyên sâu như công nghệ thực tế ảo tăng cường (AR) và trí tuệ nhân tạo (AI) trong tương lai.