Giới thiệu dự án

Thị trường thương mại điện tử (E-commerce) tại Việt Nam đang ghi nhận tốc độ tăng trưởng vượt bậc với mức tăng trưởng trung bình hơn 25%/năm. Cùng với sự bùng nổ của công nghệ viễn thông và thiết bị thông minh, nhu cầu mua sắm thiết bị di động trực tuyến từ người tiêu dùng đòi hỏi trải nghiệm nhanh chóng, bảo mật và đồng bộ tồn kho theo thời gian thực. Đối với các doanh nghiệp bán lẻ quy mô vừa và nhỏ như Aoki Store, việc chuyển đổi mô hình từ bán lẻ truyền thống sang hệ thống số hóa toàn diện là bài toán sống còn nhằm tối ưu hóa chi phí vận hành và mở rộng thị phần.

Đồ án tốt nghiệp "Quản lý dự án phần mềm bán thiết bị di động (Aoki Store)" do nhóm sinh viên Khoa Công nghệ Thông tin – Trường Đại học Ngoại ngữ - Tin học TP.HCM (HUFLIT) thực hiện dưới sự hướng dẫn của ThS. Nguyễn Thanh Trung, tập trung giải quyết triệt để bài toán xây dựng nền tảng thương mại điện tử kết hợp chuẩn hóa toàn bộ quy trình quản lý dự án phần mềm theo chuẩn quốc tế (PMBOK).

+-------------------------------------------------------------------------------+
|                       AOKI STORE E-COMMERCE ECOSYSTEM                         |
+-------------------------------------------------------------------------------+
|   [Khách Hàng (Web UI)]   <--->   [REST API / Laravel 10.x]   <---> [MySQL]   |
|   - Tra cứu & so sánh             - Xác thực & Phân quyền           - Đơn hàng|
|   - Giỏ hàng & Đặt hàng           - Xử lý nghiệp vụ & Giảm giá      - Sản phẩm|
|   - Xếp hạng thành viên           - Quản lý tồn kho & Doanh thu     - Tồn kho |
+-------------------------------------------------------------------------------+
|   [Quản Trị Viên (Admin)] <--->   [Module Báo Cáo & Quản Trị]                 |
+-------------------------------------------------------------------------------+

Mục tiêu dự án

  1. Chuẩn hóa quy trình quản trị dự án: Thiết lập đầy đủ 10 nhóm quy trình quản lý dự án theo chuẩn PMBOK, bao gồm: Quản lý phạm vi (Scope), Thời gian (Schedule), Chi phí (Cost), Chất lượng (Quality), Nguồn lực (Resource), Rủi ro (Risk), Truyền thông (Communication) và Mua sắm (Procurement).
  2. Xây dựng nền tảng E-commerce chuẩn MVC: Phát triển website thương mại điện tử chuyên biệt cho ngành thiết bị di động với đầy đủ module khách hàng (Catalog, Giỏ hàng, Đặt hàng, Theo dõi đơn) và phân hệ quản trị (Quản lý sản phẩm, Phân hạng thành viên, Báo cáo doanh số, Kiểm soát tồn kho).
  3. Đảm bảo tính sẵn sàng và hiệu năng cao: Hệ thống có khả năng chịu tải trên 500 người dùng đồng thời (CCU), thời gian phản hồi API trung bình dưới 500ms và thời gian hoạt động liên tục (Uptime) đạt 99.5%.
  4. Kiểm soát tiến độ và chi phí: Hoàn thiện toàn bộ 8 nhóm công việc WBS chính trong vòng 85.5 ngày làm việc với tổng ngân sách dự toán được kiểm soát chặt chẽ.
  5. Đảm bảo tính tương thích và bảo mật: Đáp ứng tiêu chuẩn an toàn dữ liệu, chống rò rỉ thông tin cá nhân và tích hợp xác thực đa lớp.

Phạm vi và ràng buộc hệ thống

  • Phạm vi nghiệp vụ: Nghiệp vụ bán lẻ thiết bị di động trực tuyến kết hợp quản lý kho và chăm sóc khách hàng đa kênh.
  • Ràng buộc công nghệ: Nền tảng phát triển dựa trên Laravel Framework 10.x, PHP 8.1+, hệ quản trị cơ sở dữ liệu MySQL Server 8.0, Web Server Apache/XAMPP v3.0, môi trường client chuẩn Microsoft Edge v118+ và Google Chrome.
  • Ràng buộc kiểm thử: Tập trung kiểm thử hộp đen (Black-box testing) và kiểm định chấp nhận người dùng (UAT) trên hệ điều hành Windows 10/11.

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

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

Hiện nay, các doanh nghiệp bán lẻ thiết bị di động vừa và nhỏ thường đứng trước ba sự lựa chọn giải pháp: nền tảng CMS mã nguồn mở có sẵn (như WooCommerce, OpenCart), nền tảng SaaS cho thuê (như Shopify, Haravan) hoặc tự phát triển hệ thống tùy biến theo kiến trúc MVC.

Tiêu chí kỹ thuật WooCommerce / WordPress Shopify (SaaS) Hệ thống tùy biến Aoki Store (Laravel 10)
Khả năng mở rộng nghiệp vụ Trung bình (phụ thuộc plugin thứ 3) Kém (hạn chế can thiệp core logic) Rất cao (toàn quyền cấu trúc dữ liệu)
Chi phí bản quyền & định kỳ Thấp ban đầu, cao khi mua plugin Cao (phí duy trì hàng tháng + % hoa hồng) Tối ưu (chỉ chịu phí hạ tầng server)
Hiệu năng & Tối ưu CSDL Chậm khi vượt 10,000 SKUs Ổn định nhưng không tùy biến index Nhanh, tùy biến indexing & caching
Tính năng xếp hạng khách hàng Cần mua thêm plugin bên ngoài Cần nâng cấp gói Enterprise Tích hợp sẵn thuật toán phân hạng tự động
Kiểm soát an toàn dữ liệu Dễ bị quét lỗ hổng plugin Dữ liệu lưu tại máy chủ nhà cung cấp Bảo mật nội bộ, mã hóa chuẩn SHA-256

Phân loại yêu cầu người dùng theo mô hình MoSCoW

  • Must-have (Bắt buộc): Đăng ký/đăng nhập phân quyền, tìm kiếm sản phẩm đa tiêu chí, giỏ hàng, đặt hàng trực tuyến, tra cứu lịch sử đơn hàng, CRUD danh mục/thương hiệu/sản phẩm, cập nhật trạng thái đơn hàng.
  • Should-have (Nên có): Tự động phân cấp bậc thành viên (User Tiering) dựa trên tổng chi tiêu, hủy đơn hàng trong trạng thái chờ xử lý, báo cáo tài chính/doanh thu định kỳ.
  • Could-have (Có thể có): Tích hợp cổng thanh toán trực tuyến qua API sandbox, quét mã vạch thiết bị xuất kho.
  • Won't-have (Chưa triển khai trong giai đoạn 1): Đề xuất gợi ý sản phẩm bằng trí tuệ nhân tạo (AI recommendation), ứng dụng di động native iOS/Android.

Thiết kế hệ thống

+-------------------------------------------------------------------------------+
|                            KIẾN TRÚC HỆ THỐNG                                 |
+-------------------------------------------------------------------------------+
| [Presentation Layer]   : Blade Template Engine, Bootstrap 5.3, JavaScript ES6 |
| [Application Layer]    : Laravel 10.x Routing, Middlewares, Controllers       |
| [Business Logic Layer] : OrderService, ProductRepository, CustomerTierManager |
| [Data Persistence]     : Eloquent ORM, MySQL 8.0, Cache Engine               |
+-------------------------------------------------------------------------------+

Thiết kế Cơ sở dữ liệu (Database Schema)

Hệ thống sử dụng cơ sở dữ liệu quan hệ (RDBMS) chuẩn hóa ở dạng 3NF nhằm triệt tiêu dư thừa dữ liệu. Dưới đây là lược đồ cấu trúc các bảng cốt lõi:

-- Bảng quản lý người dùng và phân hạng
CREATE TABLE `users` (
    `id` BIGINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    `name` VARCHAR(255) NOT NULL,
    `email` VARCHAR(255) UNIQUE NOT NULL,
    `password` VARCHAR(255) NOT NULL,
    `phone` VARCHAR(20) NULL,
    `tier_id` INT UNSIGNED DEFAULT 1,
    `total_spent` DECIMAL(12, 2) DEFAULT 0.00,
    `created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

-- Bảng thương hiệu và loại sản phẩm
CREATE TABLE `brands` (
    `id` INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    `name` VARCHAR(100) NOT NULL,
    `status` TINYINT DEFAULT 1
);

CREATE TABLE `categories` (
    `id` INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    `name` VARCHAR(100) NOT NULL,
    `slug` VARCHAR(100) UNIQUE NOT NULL
);

-- Bảng sản phẩm thiết bị di động
CREATE TABLE `products` (
    `id` BIGINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    `brand_id` INT UNSIGNED NOT NULL,
    `category_id` INT UNSIGNED NOT NULL,
    `name` VARCHAR(255) NOT NULL,
    `sku` VARCHAR(50) UNIQUE NOT NULL,
    `price` DECIMAL(12, 2) NOT NULL,
    `stock_quantity` INT UNSIGNED NOT NULL DEFAULT 0,
    `specifications` JSON NULL,
    `status` TINYINT DEFAULT 1,
    FOREIGN KEY (`brand_id`) REFERENCES `brands`(`id`) ON DELETE CASCADE,
    FOREIGN KEY (`category_id`) REFERENCES `categories`(`id`) ON DELETE CASCADE
);

-- Bảng đơn hàng
CREATE TABLE `orders` (
    `id` BIGINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    `user_id` BIGINT UNSIGNED NOT NULL,
    `order_code` VARCHAR(32) UNIQUE NOT NULL,
    `total_amount` DECIMAL(12, 2) NOT NULL,
    `discount_amount` DECIMAL(12, 2) DEFAULT 0.00,
    `order_status` ENUM('pending', 'processing', 'shipped', 'completed', 'cancelled') DEFAULT 'pending',
    `created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    FOREIGN KEY (`user_id`) REFERENCES `users`(`id`)
);

Phương pháp luận quản lý dự án (Methodology)

Dự án áp dụng mô hình quản trị kết hợp giữa khung chuẩn PMBOK và mô hình phát triển phần mềm lặp (Iterative Software Development).

[Bản Tuyên Ngôn Dự Án] -> [Phân Rã Công Việc WBS] -> [Sơ Đồ Trình Tự PDM] -> [Đường Găng CPM & Gantt] -> [QA/QC & Bàn Giao]

Ma trận phân công trách nhiệm (RACI / ALSR Matrix)

Để phân định vai trò giữa 3 thành viên chủ chốt (Nguyễn Phước Duy, Nguyễn Phan Quốc Bảo, Huỳnh Ngọc Bảo), dự án thiết lập ma trận ALSR:

  • A (Approval): Người phê chuẩn kết quả bàn giao cuối cùng.
  • L (Leader): Người chịu trách nhiệm chính dẫn dắt gói công việc.
  • S (Secondary): Thành viên hỗ trợ thay thế khi trưởng nhóm vắng mặt.
  • R (Reviewer / Contributor): Kiểm tra và đánh giá chéo chất lượng đầu ra.
WBS Code Hạng mục công việc bàn giao Nguyễn Phước Duy Nguyễn Phan Quốc Bảo Huỳnh Ngọc Bảo
2.0 Lập kế hoạch dự án & Bản tuyên ngôn A C R
3.0 Thu thập yêu cầu & Thiết kế CSDL (MC_1) R S L
4.0 Phân tích kiến trúc đám mây (MC_2) S L C
5.0 Lập trình chức năng xác thực (F1) L S C
6.0 Xây dựng giao diện Client & Giỏ hàng (F2) C L S
7.0 Xây dựng giao diện Quản trị Admin (F3) S L C
8.0 Kiểm thử tích hợp & Chấp nhận (QA/QC) L R S

Implementation và kết quả

Quy trình phát triển và cấu trúc mã nguồn

Dự án chia nhỏ tiến trình triển khai thành 8 nhánh công việc WBS chi tiết với 141 tác vụ độc lập được quản lý chặt chẽ theo sơ đồ phụ thuộc (Precedence Diagram Method - PDM).

[MC_1: CSDL Cục Bộ] ----> [MC_2: Porting Cloud DB] ----> [F1: Auth System]
                                                                |
                                                                v
[F3: Phân Hệ Quản Trị Admin] <----+ [F2: Giao Diện Người Dùng Client]

Xử lý nghiệp vụ đặt hàng và tính toán ưu đãi thành viên (Laravel Controller Pattern)

Đoạn mã sau mô tả chi tiết logic đặt hàng, kiểm tra tính toàn vẹn của tồn kho theo cơ chế Database Transaction và cập nhật phân hạng thành viên tự động:

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use App\Models\Order;
use App\Models\OrderItem;
use App\Models\Product;
use App\Models\User;

class CheckoutController extends Controller
{
    public function processOrder(Request $request)
    {
        $validated = $request->validate([
            'user_id' => 'required|exists:users,id',
            'cart_items' => 'required|array|min:1',
            'cart_items.*.product_id' => 'required|exists:products,id',
            'cart_items.*.quantity' => 'required|integer|min:1',
        ]);

        return DB::transaction(function () use ($validated) {
            $user = User::lockForUpdate()->findOrFail($validated['user_id']);
            $totalAmount = 0;
            $orderItems = [];

            foreach ($validated['cart_items'] as $item) {
                $product = Product::lockForUpdate()->findOrFail($item['product_id']);
                
                // Kiểm tra ràng buộc tồn kho thực tế
                if ($product->stock_quantity < $item['quantity']) {
                    throw new \Exception("Sản phẩm {$product->name} không đủ số lượng tồn kho.");
                }

                $subtotal = $product->price * $item['quantity'];
                $totalAmount += $subtotal;

                // Khấu trừ tồn kho
                $product->decrement('stock_quantity', $item['quantity']);

                $orderItems[] = [
                    'product_id' => $product->id,
                    'quantity' => $item['quantity'],
                    'unit_price' => $product->price,
                    'subtotal' => $subtotal
                ];
            }

            // Tính mức giảm giá theo hạng thành viên (Tier 1: 0%, Tier 2: 3%, Tier 3: 5%)
            $discountRate = ($user->tier_id == 3) ? 0.05 : (($user->tier_id == 2) ? 0.03 : 0.00);
            $discountAmount = $totalAmount * $discountRate;
            $finalAmount = $totalAmount - $discountAmount;

            $order = Order::create([
                'user_id' => $user->id,
                'order_code' => 'AOKI-' . strtoupper(uniqid()),
                'total_amount' => $finalAmount,
                'discount_amount' => $discountAmount,
                'order_status' => 'pending'
            ]);

            foreach ($orderItems as $orderItem) {
                $order->items()->create($orderItem);
            }

            // Tích lũy chi tiêu và cập nhật thứ hạng tự động
            $user->increment('total_spent', $finalAmount);
            if ($user->total_spent >= 50000000 && $user->tier_id < 3) {
                $user->update(['tier_id' => 3]); // Nâng cấp VIP Diamond
            } elseif ($user->total_spent >= 20000000 && $user->tier_id < 2) {
                $user->update(['tier_id' => 2]); // Nâng cấp Gold
            }

            return response()->json([
                'success' => true,
                'message' => 'Đơn hàng đã được tạo thành công',
                'order_code' => $order->order_code,
                'final_amount' => $finalAmount
            ], 201);
        });
    }
}

Kiểm thử và đánh giá kết quả (Testing & Validation)

Dự án đã tiến hành 19 hạng mục kiểm định chất lượng (QA Metrics) theo đúng kế hoạch Chương 7.1, bao gồm:

  • Kiểm thử cơ sở dữ liệu (MC_1.2 & MC_2.4): Tỷ lệ mất mát dữ liệu 0%, thời gian xử lý truy vấn trung bình (Query Execution Time) đạt 12ms trên 10,000 dòng dữ liệu thử nghiệm.
  • Kiểm thử chức năng giao diện người dùng (F2): 100% kịch bản kiểm thử (Đặt hàng, xem giỏ hàng, hủy đơn, tìm kiếm sản phẩm) đều Passed.
  • Kiểm thử chức năng quản trị (F3): Xác thực CRUD phân loại sản phẩm, thương hiệu, phân cấp bậc khách hàng đạt tỷ lệ chính xác 100%.
+-------------------------------------------------------------------------------+
|                          KẾT QUẢ KIỂM THỬ HỆ THỐNG                            |
+-------------------------------------------------------------------------------+
|  Hạng mục kiểm thử     | Tổng Test Cases | Passed | Failed | Độ phủ (Coverage)|
+-------------------------------------------------------------------------------+
|  Xác thực (Auth F1)    |       24        |   24   |    0   |      100%        |
|  Giao diện Client (F2) |       48        |   47   |    1*  |      97.9%       |
|  Quản trị Admin (F3)   |       36        |   36   |    0   |      100%        |
|  Cơ sở dữ liệu & Cache |       18        |   18   |    0   |      100%        |
+-------------------------------------------------------------------------------+
* Đã khắc phục triệt để lỗi hiển thị hình ảnh trên trình duyệt cũ trước ngày 25/07/2024.

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

Cải tiến kỹ thuật và quy trình quản trị

  1. Ứng dụng phương pháp phân tích đường găng (Critical Path Method - CPM): Thay vì quản lý tiến độ cảm tính, dự án tính toán chính xác chuỗi công việc găng (từ thiết kế CSDL MC_1 đến hoàn thiện hệ thống Admin F3), giúp giảm thiểu 22% thời gian nhàn rỗi (idle time) của nhân lực lập trình.
  2. Cơ chế phân hạng thành viên động (Dynamic Loyalty Tiering): Tích hợp logic tự động cập nhật hạng khách hàng trực tiếp trong chu kỳ xử lý giao dịch cơ sở dữ liệu (DB::transaction), loại bỏ nhu cầu chạy các batch jobs định kỳ tốn tài nguyên máy chủ.
  3. Quản lý rủi ro toàn diện với 30 kịch bản: Thiết lập Risk Register bao quát từ rủi ro chức năng, bảo mật cơ sở dữ liệu, đến rủi ro chuỗi cung ứng thiết bị và biến động nhân sự, kèm theo ngân sách dự phòng rủi ro 10% trong cấu trúc chi phí.
Chỉ số so sánh Quản lý dự án truyền thống Mô hình ứng dụng tại Aoki Store Tỷ lệ cải thiện
Độ trễ tiến độ (Schedule Variance) +15% đến +25% 0% (Đúng mốc 85.5 ngày) Tối ưu 100% tiến độ
Xung đột mã nguồn & Nhiệm vụ Thường xuyên xuất hiện Kiểm soát qua ma trận RACI Giảm 80% xung đột
Tốc độ xử lý giỏ hàng & tồn kho 1200ms - 1800ms < 350ms (Database Lock) Nhanh hơn 75%
Tỷ lệ bao phủ kiểm thử (Test Coverage) < 60% 98.4% tổng số use cases Tăng 38.4% độ tin cậy

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

Kịch bản sử dụng thực tế (Real-World Use Cases)

  • Khách hàng trực tuyến: Truy cập website trên thiết bị di động, so sánh thông số kỹ thuật giữa 2 dòng smartphone, đưa sản phẩm vào giỏ hàng, nhận mức chiết khấu thành viên VIP Diamond tự động và theo dõi lộ trình giao hàng trực tuyến.
  • Nhân viên kho và bán hàng: Sử dụng hệ thống quản trị để cập nhật lô hàng điện thoại mới nhập, kiểm kê số lượng tồn kho tự động sau mỗi giao dịch thành công.
  • Cấp quản lý (CEO / Quản lý cửa hàng): Xem biểu đồ doanh thu theo thời gian thực, lọc sản phẩm bán chạy nhất theo tuần/tháng để đưa ra kế hoạch nhập hàng và tiếp thị phù hợp.
[Khách Hàng Đặt Mua] -> [Khấu Trừ Tồn Kho MySQL] -> [Thông Báo Admin Dashboard] -> [Xuất Kho & Giao Hàng]

Kế hoạch triển khai và Phân tích hiệu quả kinh tế (ROI)

  • Yêu cầu hạ tầng triển khai:
    • Máy chủ: Ubuntu Server 22.04 LTS / Cloud VPS (2 vCPU, 4GB RAM, 50GB NVMe SSD).
    • Web Server: Nginx 1.24+ kết hợp PHP-FPM 8.1+.
    • Cơ sở dữ liệu: MySQL 8.0 với InnoDB Engine.
  • Phân tích chi phí - lợi ích (Cost-Benefit Analysis):
    • Chi phí đầu tư dự án: Dự toán tối ưu cho quy mô cửa hàng bán lẻ.
    • Dự kiến tăng trưởng doanh thu: Kênh trực tuyến giúp Aoki Store tăng tiếp cận 35% lượng khách hàng tiềm năng ngoài khu vực địa lý hiện tại.
    • Thời gian hoàn vốn dự kiến (Payback Period): 6 - 8 tháng sau khi đưa vào vận hành chính thức.

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

Hạn chế kỹ thuật

  1. Cổng thanh toán trực tuyến hiện tại đang được cấu hình và kiểm thử trên môi trường Sandbox, chưa đấu nối trực tiếp hợp đồng thanh toán thương mại với các tổ chức ngân hàng.
  2. Chưa tích hợp hệ sinh thái ứng dụng di động đa nền tảng (Native Mobile App) để tận dụng thông báo đẩy (Push Notification).
  3. Cơ chế tìm kiếm sản phẩm đang dựa trên toán tử LIKE và Full-text search của MySQL, chưa tích hợp công cụ tìm kiếm chuyên dụng như Elasticsearch đối với tập dữ liệu hàng trăm nghìn mặt hàng.

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

  • Nâng cấp kiến trúc Microservices: Tách riêng phân hệ quản lý kho hàng và phân hệ thanh toán thành các dịch vụ độc lập nhằm tăng khả năng chịu tải khi mở rộng chuỗi chi nhánh.
  • Tích hợp giải pháp AI Recommender: Xây dựng mô hình máy học gợi ý phụ kiện và điện thoại dựa trên hành vi lướt web và lịch sử mua sắm của người dùng.
  • Phát triển ứng dụng di động: Xây dựng ứng dụng Flutter/React Native đồng bộ trực tiếp với hệ thống RESTful API hiện có.

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

+-------------------------------------------------------------------------------+
|                            ĐỐI TƯỢNG HƯỞNG LỢI                                |
+-------------------------------------------------------------------------------+
| [Sinh Viên & Học Viên] : Tham khảo tài liệu PMBOK, WBS & Sơ đồ Gantt chuẩn mực|
| [Lập Trình Viên]       : Khung mã nguồn Laravel 10 chuẩn MVC, Clean Database  |
| [Doanh Nghiệp Bán Lẻ]  : Giải pháp số hóa E-commerce tiết kiệm chi phí        |
| [Nhà Nghiên Cứu PM]    : Minh chứng thực nghiệm kết hợp Agile & Waterfall     |
+-------------------------------------------------------------------------------+
  • Sinh viên chuyên ngành CNTT / Hệ thống thông tin: Tài liệu tham khảo toàn diện về cách thức lập kế hoạch dự án chuẩn mực từ Bản tuyên ngôn dự án (Project Charter), phân rã công việc WBS 8 cấp, đến xây dựng sơ đồ Gantt và quản lý rủi ro.
  • Lập trình viên phần mềm: Nắm vững mô hình kiến trúc MVC trong Laravel 10, cách thức xử lý tranh chấp dữ liệu tồn kho bằng Database Lock và quản trị giao dịch an toàn.
  • Doanh nghiệp vừa và nhỏ (SMEs): Có được mô hình tham chiếu thực tế để triển khai hệ sinh thái bán lẻ đa kênh với chi phí đầu tư hợp lý và hiệu quả kinh tế cao.

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

1. Hệ thống đòi hỏi cấu hình máy chủ tối thiểu như thế nào để vận hành mượt mà?

Hệ thống yêu cầu máy chủ chạy hệ điều hành Linux (khuyến nghị Ubuntu Server 20.04/22.04 LTS), tối thiểu 2 vCPU, 2GB RAM và 20GB dung lượng lưu trữ SSD. Môi trường cài đặt bao gồm PHP phiên bản 8.1 trở lên, Composer 2.x, MySQL Server 8.0 và Nginx/Apache.

2. Làm thế nào để hệ thống ngăn chặn tình trạng quá tải hoặc âm kho khi nhiều người cùng mua một lúc?

Hệ thống sử dụng cơ chế khóa bi quan (lockForUpdate()) trong một Transaction cơ sở dữ liệu khép kín. Khi một giao dịch đang đọc và khấu trừ số lượng sản phẩm, các yêu cầu đồng thời khác sẽ phải xếp hàng đợi, đảm bảo số lượng tồn kho luôn chính xác 100%.

3. Quy trình bảo trì và sao lưu dữ liệu được thực hiện ra sao?

Cơ sở dữ liệu được cấu hình tự động sao lưu định kỳ hàng ngày (Daily Automated Dump) lưu trữ trên hạ tầng đám mây (Cloud Storage). Quá trình cập nhật tính năng mới được triển khai thông qua quy trình CI/CD với độ trễ ngừng hoạt động (Downtime) gần như bằng không.

4. Dự án xử lý như thế nào khi có thay đổi yêu cầu từ phía khách hàng (Scope Creep)?

Dự án áp dụng quy trình kiểm soát thay đổi nghiêm ngặt: Mọi yêu cầu phát sinh phải được lập văn bản đề xuất thay đổi, đánh giá tác động lên chi phí, nguồn lực và đường găng tiến độ (CPM), sau đó phải được sự phê duyệt chính thức từ Giám đốc dự án và Đại diện khách hàng trước khi đưa vào WBS.

5. Chi phí duy trì hệ thống sau khi bàn giao ước tính khoảng bao nhiêu?

Chi phí vận hành hàng tháng bao gồm tiền thuê máy chủ Cloud VPS và tên miền (khoảng 300.000 – 600.000 VNĐ/tháng), không phát sinh bất kỳ khoản phí bản quyền phần mềm nào do toàn bộ hệ thống được xây dựng trên nền tảng mã nguồn mở tùy biến.


Kết luận

Đồ án "Quản lý dự án phần mềm bán thiết bị di động (Aoki Store)" đã giải quyết thành công bài toán kép: Xây dựng một sản phẩm phần mềm thương mại điện tử chuyên nghiệp, chuẩn hóa trên nền tảng công nghệ Laravel 10 và MySQL, đồng thời thực thi bài bản toàn diện các quy trình quản lý dự án theo tiêu chuẩn quốc tế PMBOK.

Kết quả đầu ra của đồ án không chỉ là minh chứng rõ nét cho năng lực phân tích, thiết kế và lập trình hệ thống mà còn là tài liệu tham khảo giá trị cao về quản trị dự án công nghệ thông tin. Các cá nhân, nhóm phát triển và doanh nghiệp quan tâm có thể ứng dụng trực tiếp mô hình phân rã công việc WBS, ma trận phân bổ nguồn lực và kiến trúc mã nguồn này vào các dự án số hóa thực tiễn.