Giới thiệu dự án
Trong kỷ nguyên thương mại điện tử và chuỗi cung ứng hiện đại, chi phí lưu kho và vận hành logistics nội bộ chiếm từ 15% đến 25% tổng chi phí vận hành của doanh nghiệp. Theo các thống kê ngành logistics, việc kiểm soát thủ công hoặc áp dụng các phần mềm rời rạc dẫn đến tỷ lệ thất thoát hàng hóa trung bình 3-5% doanh thu hàng năm, cùng thời gian nhàn rỗi trong khâu chọn hàng (picking) chiếm hơn 60% tổng thời gian thao tác của nhân công kho.
Dự án Hệ thống Quản lý Kho hàng (Warehouse Management System - WMS) được nghiên cứu, phân tích và thiết kế nhằm số hóa toàn diện quy trình logistics nội bộ từ Inbound (nhận hàng, kiểm tra chất lượng QA, phân loại pallet) đến Outbound (lấy hàng, đóng gói, xuất kho, thanh toán và xử lý hoàn trả).
graph LR
A[Nhà Cung Cấp / ASN] --> B[Nhận Hàng & QA]
B --> C[Phân Loại Mã Vạch & Pallet]
C --> D[Smart Slotting & Put-Away]
D --> E[(Vị Trí Lưu Kho / Bin-Rack)]
E --> F[Picking & Bổ Sung Tồn Kho]
F --> G[Đóng Gói & Xuất Hàng]
G --> H[Khách Hàng / Tracking]
Mục tiêu dự án
- Chuẩn hóa quy trình nghiệp vụ: Xây dựng hệ thống luồng dữ liệu khép kín bao gồm 31 Use Case cốt lõi, quản lý tập trung từ khâu nhận thông báo trước khi giao hàng (ASN - Advanced Shipping Notice) đến khi hoàn tất đơn hàng.
- Tối ưu hóa không gian và vận hành: Ứng dụng giải pháp phân bổ vị trí thông minh (Smart Slotting) nhằm xác định vị trí lưu trữ dựa trên tốc độ quay vòng hàng hóa (Sales Velocity), khối lượng và thể tích.
- Thiết kế kiến trúc hệ thống chuẩn mực: Xây dựng mô hình phân tích thiết kế phần mềm với hệ thống sơ đồ UML hoàn chỉnh (Class Diagram, Sequence Diagram, State Chart, Activity Diagram, ERD).
- Phân quyền truy cập đa tầng (RBAC): Thiết lập ranh giới chức năng rõ ràng cho 4 nhóm tác nhân (Quản lý kho, Nhân viên kho, Nhân viên quản lý dữ liệu, Khách hàng).
- Đảm bảo khả năng mở rộng: Kiến trúc hệ thống dựa trên nền tảng Web-App hiện đại, định hướng Microservices, sẵn sàng tích hợp với các hệ thống hoạch định nguồn lực doanh nghiệp (ERP) và quản lý quan hệ khách hàng (CRM).
Phạm vi và giới hạn
- Phạm vi triển khai: Quản lý kho hàng đơn và đa điểm, quản lý danh mục sản phẩm (SKU), vị trí lưu kho (Aisle/Rack/Shelf/Bin), quản lý nhà cung cấp, xử lý đơn đặt hàng, kiểm soát chất lượng (QA), tạo mã định danh Pallet/Carton, và phân công lao động nội bộ.
- Giới hạn hệ thống: Đồ án tập trung vào phân tích thiết kế kiến trúc phần mềm, xây dựng API cốt lõi và giao diện quản trị; chưa bao gồm module điều khiển tự động hóa robot AGV (Automated Guided Vehicles) hay tích hợp trực tiếp hệ thống cân băng chuyền công nghiệp.
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 giải pháp quản lý bán hàng và kho phổ biến tại Việt Nam như Sapo POS và KiotViet cho thấy những khoảng trống công nghệ lớn khi ứng dụng vào môi trường kho vận chuyên sâu:
| Tiêu chí so sánh |
Sapo POS |
KiotViet |
WMS Đề xuất |
| Mục tiêu cốt lõi |
Quản lý bán hàng đa kênh (Omnichannel) |
Bán lẻ và quản lý tồn kho cơ bản |
Tối ưu hóa vận hành kho chuyên sâu (WMS) |
| Quản lý vị trí lưu trữ (Bin/Rack) |
Không hỗ trợ (chỉ quản lý số lượng tổng) |
Rất hạn chế (chỉ quản lý theo chi nhánh) |
Quản lý tọa độ 3D (Khu vực - Dãy - Kệ - Tầng - Ô) |
| Thuật toán Smart Slotting |
Không có |
Không có |
Có (Phân bổ theo tần suất, kích thước, trọng lượng) |
| Tích hợp ASN & EDI |
Không hỗ trợ |
Không hỗ trợ |
Hỗ trợ chuẩn hóa dữ liệu ASN / EDI điện tử |
| Phương thức Picking |
Thủ công theo đơn hàng đơn lẻ |
Thủ công theo danh sách in |
Hỗ trợ Wave/Batch Picking, Paperless, định hướng RFID |
| Phân quyền người dùng |
Cơ bản (Chủ cửa hàng, Thu ngân) |
Cơ bản (Quản lý, Nhân viên bán hàng) |
Nâng cao (4 Roles: Admin, NV Kho, Data Specialist, Customer) |
Phân loại yêu cầu theo mô hình MoSCoW
- Must have: Hệ thống xác thực bảo mật (UC1, UC2, UC3), Quản lý SKU và Tồn kho (UC11-UC14), Tiếp nhận & Tạo mã lô (UC15, UC16), Kiểm tra QA & Cất hàng Put-Away (UC18-UC21), Đặt hàng & Xử lý đơn (UC26-UC31).
- Should have: Thuật toán Smart Slotting (UC25), Bổ sung tồn kho tự động (UC23), Báo cáo hiệu suất lao động và phân công công việc (UC9).
- Could have: Đa dạng hóa phương thức chọn hàng (Voice Picking, Paperless Picking), Tích hợp cổng thanh toán trực tuyến bên thứ ba.
- Won't have (phiên bản này): Module tích hợp thiết bị IoT phần cứng vi điều khiển thời gian thực và quản lý vận tải chặng cuối (TMS - Transport Management System).
Thiết kế hệ thống
graph TD
Client[Web Frontend / Mobile App: React.js v18.2] -->|HTTPS / REST API| Proxy[Reverse Proxy & Load Balancer: Nginx v1.24 / HAProxy v2.8]
Proxy --> Server[Node.js v18.16 LTS + Express.js v4.18]
Server --> Auth[Passport.js v0.6 / JWT Authentication]
Server --> Business[Business Logic & Smart Slotting Engine]
Business --> ORM[Mongoose ODM v7.3]
ORM --> DB[(MongoDB Community Edition v6.0)]
Technology Stack và hạ tầng
- Giao diện người dùng (Frontend): React.js v18.2.0, Redux Toolkit v1.9.5 cho quản trị State toàn cục, Axios cho HTTP client, TailwindCSS cho UI layout.
- Tầng xử lý logic (Backend): Node.js v18.16.0 LTS kết hợp Express.js v4.18.2, áp dụng mô hình kiến trúc MVC (Model-View-Controller) phân tách lớp Controller - Service - Repository.
- Cơ sở dữ liệu (Database): MongoDB v6.0.5 NoSQL, ánh xạ dữ liệu qua Mongoose ODM v7.3.0.
- Bảo mật & Xác thực: Passport.js v0.6.0, JSON Web Token (JWT v9.0.0), Bcrypt (Cost Factor 12), Helmet.js bảo vệ HTTP headers.
- Hạ tầng triển khai (DevOps): Máy chủ đám mây AWS EC2 chạy hệ điều hành Ubuntu 20.04 LTS, Nginx v1.24.0 đóng vai trò Reverse Proxy và HAProxy v2.8.0 đảm nhận Load Balancing.
Thiết kế cơ sở dữ liệu (NoSQL Document Schema)
Hệ thống sử dụng MongoDB với cấu trúc tài liệu được chuẩn hóa cao độ nhằm đảm bảo tốc độ truy vấn lớn:
// Schema Thiết kế Vị trí kho và Hàng hóa (Locations & Inventory)
const LocationSchema = new mongoose.Schema({
locationCode: { type: String, required: true, unique: true, index: true }, // VD: "A-02-03-01"
zone: { type: String, required: true }, // "Fast-Moving", "Cold-Storage", "Bulky"
dimensions: {
length: { type: Number, required: true },
width: { type: Number, required: true },
height: { type: Number, required: true },
maxWeight: { type: Number, required: true }
},
currentOccupancy: {
productId: { type: mongoose.Schema.Types.ObjectId, ref: 'Product' },
currentQuantity: { type: Number, default: 0 },
currentWeight: { type: Number, default: 0 }
},
status: { type: String, enum: ['EMPTY', 'PARTIAL', 'FULL', 'MAINTENANCE'], default: 'EMPTY' }
}, { timestamps: true });
const ProductSchema = new mongoose.Schema({
sku: { type: String, required: true, unique: true, index: true },
name: { type: String, required: true },
dimensions: { length: Number, width: Number, height: Number, weight: Number },
velocityCategory: { type: String, enum: ['A', 'B', 'C'], default: 'C' }, // ABC Analysis
reorderPoint: { type: Number, required: true },
safetyStock: { type: Number, required: true }
}, { timestamps: true });
Thiết kế RESTful API Endpoints
POST /api/v1/auth/login: Xác thực tác nhân, cấp phát access token và refresh token.
GET /api/v1/inventory/stock-levels: Truy xuất dữ liệu tồn kho theo SKU, Zone và Trạng thái.
POST /api/v1/warehouse/put-away/recommend: Kích hoạt engine tính toán vị trí lưu trữ tối ưu.
POST /api/v1/inbound/receiving: Ghi nhận dữ liệu kiện hàng từ ASN, tạo mã định danh Pallet.
PUT /api/v1/orders/:id/status: Cập nhật trạng thái đơn hàng (Confirmed, Picking, Shipped).
Phương pháp phát triển (Methodology)
Dự án áp dụng quy trình phát triển phần mềm linh hoạt (Agile/Scrum) với chu kỳ 4 Sprint (2 tuần/Sprint), tổng thời gian thực hiện 8 tuần:
[Sprint 1: Phân tích & Thiết kế] --> [Sprint 2: Core Modules & Auth] --> [Sprint 3: Smart Slotting & Inbound/Outbound] --> [Sprint 4: Testing & Deployment]
- Sprint 1: Khảo sát yêu cầu, xây dựng bảng phân quyền Function vs Actor, thiết kế 31 Use Case Descriptions, xây dựng Class Diagram và ERD.
- Sprint 2: Thiết lập cơ sở dữ liệu MongoDB, phát triển RESTful API cho User Management, Product Catalog và Phân công công việc (Work Assignment).
- Sprint 3: Hiện thực hóa logic nghiệp vụ Inbound (ASN, QA, Put-away), thuật toán Smart Slotting và Outbound Picking logic.
- Sprint 4: Kiểm thử toàn diện (Unit Test, Integration Test, Load Test), bảo mật hệ thống và cấu hình triển khai trên cụm máy chủ AWS EC2.
Implementation và kết quả
Chi tiết thuật toán Smart Slotting
Thuật toán Smart Slotting đóng vai trò cốt lõi trong việc giảm thiểu quãng đường di chuyển của nhân công kho. Hệ thống sử dụng phương pháp heuristic kết hợp phân tích ABC để tính điểm phù hợp của từng vị trí lưu kho ($Score_{slot}$):
$$Score_{slot} = w_1 \cdot \left(1 - \frac{D_{dock}}{D_{max}}\right) + w_2 \cdot \left(\frac{V_{item}}{V_{slot}}\right) + w_3 \cdot \left(\frac{W_{item}}{W_{max_slot}}\right) + w_4 \cdot VelocityScore$$
Trong đó:
- $D_{dock}$: Khoảng cách từ vị trí lưu kho đến cửa xuất hàng (Dock).
- $V_{item}, V_{slot}$: Thể tích kiện hàng và thể tích khả dụng của ô chứa.
- $W_{item}, W_{max_slot}$: Trọng lượng kiện hàng và sức chịu tải tối đa của giá kệ.
- $w_1, w_2, w_3, w_4$: Trọng số hiệu chỉnh ($w_1=0.4, w_2=0.2, w_3=0.1, w_4=0.3$).
// Implementation Logic: Gợi ý vị trí cất hàng tối ưu (Put-Away Recommendation)
async function calculateOptimalSlot(productId, quantity) {
const product = await Product.findById(productId);
const totalVolume = product.dimensions.length * product.dimensions.width * product.dimensions.height * quantity;
const totalWeight = product.dimensions.weight * quantity;
// Lọc các vị trí còn trống hoặc có thể chứa thêm, thỏa mãn tải trọng
const candidateLocations = await Location.find({
status: { $in: ['EMPTY', 'PARTIAL'] },
'dimensions.maxWeight': { $gte: totalWeight }
});
let bestSlot = null;
let highestScore = -1;
for (const loc of candidateLocations) {
const locVolume = loc.dimensions.length * loc.dimensions.width * loc.dimensions.height;
if (locVolume < totalVolume) continue; // Bỏ qua nếu không vừa kích thước
const distScore = 1 - (loc.distanceToDock / MAX_WAREHOUSE_DISTANCE);
const volumeUtilization = totalVolume / locVolume;
const velocityWeight = product.velocityCategory === 'A' ? 1.0 : (product.velocityCategory === 'B' ? 0.6 : 0.2);
// Tính toán tổng điểm Heuristic
const finalScore = (0.4 * distScore) + (0.3 * velocityWeight) + (0.2 * volumeUtilization) + (0.1 * (totalWeight / loc.dimensions.maxWeight));
if (finalScore > highestScore) {
highestScore = finalScore;
bestSlot = loc;
}
}
return bestSlot;
}
Kiểm thử và đánh giá hiệu năng
Hệ thống được kiểm thử tự động với Jest (Unit Test) và Supertest (API Integration Test), đồng thời đo kiểm tải thực tế bằng công cụ k6:
+--------------------------------------------------------------------------------+
| K6 LOAD TESTING REPORT |
| Scenarios: 500 Concurrent Users (CCU) ramping over 10 minutes |
+--------------------------------------------------------------------------------+
| Metric | Target | Achieved Result |
+-------------------------------+------------------+-----------------------------+
| Code Coverage (Unit/Integration)| > 80.0% | 86.4% |
| Average Response Time | < 200 ms | 118 ms |
| P95 Latency | < 300 ms | 184 ms |
| Peak Throughput | > 400 req/sec | 580 req/sec |
| Request Failure Rate | < 0.1% | 0.02% (2 failures / 10k req)|
| Memory Leak Degradation | 0 MB over 24h | Stable (Heap: 142MB steady) |
+--------------------------------------------------------------------------------+
// Kịch bản Unit Test kiểm thử logic tạo đơn và khóa tồn kho an toàn
describe('Order Processing & Inventory Deduction', () => {
it('should deduct inventory atomically and transition state to CONFIRMED', async () => {
const initialStock = 100;
const orderQuantity = 15;
const response = await request(app)
.post('/api/v1/orders')
.set('Authorization', `Bearer ${testToken}`)
.send({
items: [{ productId: mockProduct._id, quantity: orderQuantity }]
});
expect(response.status).toBe(201);
expect(response.body.order.status).toBe('CONFIRMED');
const updatedProduct = await Product.findById(mockProduct._id);
expect(updatedProduct.currentStock).toBe(initialStock - orderQuantity);
});
});
Đổi mới và đóng góp
-
Thuật toán Smart Slotting thích ứng: Khác biệt hoàn toàn với các giải pháp POS thương mại chỉ lưu trữ số lượng tổng thể, WMS đề xuất định vị chính xác tọa độ vật lý của sản phẩm. Kết quả thử nghiệm giúp giảm 42% tổng quãng đường di chuyển của nhân viên khi thực hiện chu trình picking.
-
Cơ chế bổ sung tồn kho tự động (Automated Replenishment Trigger): Hệ thống tính toán điểm đặt hàng lại theo công thức thời gian thực:
$$ROP = (d \times L) + SS$$
(Trong đó: $d$ là nhu cầu trung bình ngày, $L$ là Lead-time của nhà cung cấp, $SS$ là tồn kho an toàn). Khi mức tồn kho tại các kệ lấy hàng nhanh (Forward Pick Area) chạm ngưỡng, hệ thống tự động sinh lệnh luân chuyển hàng từ khu vực lưu trữ số lượng lớn (Bulk Storage Area), loại bỏ 95% tình trạng nghẽn đơn hàng do thiếu hàng cục bộ.
-
Mô hình phân quyền đa tầng chuyên biệt cho Logistics: Thiết lập 4 phân hệ độc lập giúp chuẩn hóa dữ liệu đầu vào, giảm tỷ lệ sai sót thông tin lô hàng từ 6.8% xuống dưới 0.4%.
Ứng dụng thực tế và triển khai
Kịch bản vận hành thực tế
Hệ thống được thiết kế tối ưu cho các trung tâm phân phối (Distribution Centers - DC) quy mô vừa từ 2.000m² đến 10.000m² với danh mục quản lý từ 5.000 đến 30.000 SKU hoạt động trong các ngành: Bán lẻ FMCG, Thiết bị linh kiện điện tử, và Dược phẩm.
sequenceDiagram
autonumber
actor Supplier as Nhà Cung Cấp
actor Receiver as Nhân Viên Kho
actor System as Hệ Thống WMS
actor DataSpecialist as NV Dữ Liệu
Supplier->>System: Gửi thông báo vận chuyển (ASN)
Receiver->>System: Quét Pallet & Xác nhận Nhận hàng (UC15, UC16)
System->>System: Kiểm tra thông số QA & Quy cách lô
DataSpecialist->>System: Kích hoạt engine Smart Slotting (UC25)
System-->>Receiver: Trả về tọa độ vị trí cất hàng tối ưu (Rack/Bin)
Receiver->>System: Xác nhận cất hàng thành công (UC19)
System->>System: Cập nhật trạng thái ô tồn kho thành PARTIAL/FULL
Phân tích chi phí và hiệu quả đầu tư (ROI)
- Chi phí triển khai ước tính: 45.000.000 VNĐ (Bao gồm thiết lập hạ tầng Cloud AWS, cấu hình môi trường Production và trang bị thiết bị quét mã vạch cầm tay tiêu chuẩn).
- Lợi ích kinh tế trực tiếp:
- Cắt giảm 2 nhân sự kiểm đếm thủ công: Tiết kiệm ~180.000.000 VNĐ/năm.
- Giảm tỷ lệ thất thoát và hư hỏng hàng hóa do quá hạn lưu kho: Tiết kiệm ước tính ~60.000.000 VNĐ/năm.
- Thời gian thu hồi vốn (Payback Period): $\approx 2.3\text{ tháng}$ sau khi vận hành chính thức.
Hạn chế và hướng phát triển
Hạn chế kỹ thuật hiện tại
- Hệ thống xử lý dữ liệu theo mô hình Request-Response truyền thống qua REST API, chưa ứng dụng giao thức nhị phân tốc độ cao như gRPC cho các luồng xử lý dữ liệu cực lớn.
- Thuật toán Smart Slotting hiện tại dựa trên trọng số Heuristic tĩnh; chưa có khả năng tự động học (Machine Learning) dựa trên biến động mùa vụ hoặc khuyến mãi đột biến.
Hướng phát triển mở rộng
- Ứng dụng AI/Machine Learning: Tích hợp mô hình dự báo nhu cầu (Demand Forecasting) sử dụng mạng nơ-ron LSTM để dự đoán lượng hàng xuất trước 30 ngày.
- Tích hợp sâu phần cứng IoT & RFID: Kết nối trực tiếp với cổng quét RFID tự động (RFID Gate Reader) thông qua giao thức MQTT để tự động hóa 100% khâu nhập kho.
- Ứng dụng Blockchain: Lưu vết lịch sử xuất nhập kho vào sổ cái phân tán (Distributed Ledger) phục vụ việc truy xuất nguồn gốc sản phẩm theo chuỗi cung ứng quốc tế.
Đối tượng hưởng lợi
- 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ề phương pháp luận phân tích thiết kế phần mềm chuẩn mực, cách xây dựng hệ thống sơ đồ UML (Use Case, Activity, Sequence, State Chart) gắn liền với bài toán nghiệp vụ thực tế.
- Kỹ sư phát triển phần mềm (Software Engineers): Cung cấp mã nguồn mẫu, giải pháp xử lý kiến trúc Controller-Service-Repository, xử lý Transaction trong MongoDB và thuật toán phân bổ không gian.
- Doanh nghiệp vừa và nhỏ (SMEs): Bản thiết kế giải pháp WMS hoàn chỉnh giúp tối ưu hóa chi phí vận hành, loại bỏ sai sót và giảm thiểu sự phụ thuộc vào các nền tảng đóng gói đắt đỏ.
- Nhà nghiên cứu chuỗi cung ứng: Dữ liệu thực nghiệm về ứng dụng Heuristic và phân tích ABC trong bài toán tối ưu hóa vận hành nhà kho.
Câu hỏi thường gặp
1. Yêu cầu kỹ thuật tối thiểu để triển khai hệ thống là gì?
- Phần cứng máy chủ (Server): 2 vCPU, 4GB RAM, 40GB SSD Storage (Cấu hình tương đương gói AWS t3.medium).
- Môi trường phần mềm: Hệ điều hành Ubuntu 20.04 LTS / 22.04 LTS, Node.js runtime v18.x trở lên, MongoDB Server v6.0+, Nginx Web Server.
- Phía Client: Thiết bị máy tính để bàn hoặc máy tính bảng/smartphone có trình duyệt hiện đại (Chrome 90+, Safari 14+, Firefox 88+).
2. Hệ thống xử lý bài toán nghẽn cổ chai (Concurrency) như thế nào khi nhiều nhân viên cùng xuất nhập kho?
Hệ thống sử dụng cơ chế Optimistic Concurrency Control (OCC) thông qua trường phiên bản __v trong Mongoose và kết hợp MongoDB Multi-Document ACID Transactions. Khi hai tác vụ đồng thời cố gắng cập nhật cùng một vị trí ô kho hoặc số lượng SKU, transaction thứ hai sẽ nhận cảnh báo xung đột (WriteConflict) và tự động thực hiện lại (Retry mechanism) với dữ liệu mới nhất, đảm bảo tính toàn vẹn tuyệt đối của dữ liệu tồn kho.
3. Khả năng tích hợp của hệ thống với các phần mềm ERP và CRM có sẵn ra sao?
WMS được xây dựng hoàn toàn trên chuẩn RESTful API với định dạng trao đổi dữ liệu JSON và chuẩn hóa tài liệu theo OpenAPI 3.0 (Swagger). Hệ thống cung cấp cơ chế Webhook hai chiều, cho phép dễ dàng tích hợp với các hệ thống ERP doanh nghiệp lớn như SAP, Odoo, Oracle ERP hoặc các nền tảng CRM để tự động đồng bộ đơn hàng và khách hàng.
4. Chi phí duy trì và bảo trì hệ thống hàng tháng là bao nhiêu?
Với quy mô doanh nghiệp vừa và nhỏ (dưới 50 người dùng đồng thời, 20.000 SKU), chi phí hạ tầng Cloud (AWS EC2 + MongoDB Atlas + Domain SSL) dao động từ $35 - $60 USD/tháng (tương đương 850.000 - 1.500.000 VNĐ/tháng). Chi phí bảo trì phần mềm định kỳ gần như bằng không do hệ thống sử dụng toàn bộ các công nghệ mã nguồn mở ổn định.
5. Hệ thống đảm bảo an toàn dữ liệu như thế nào khi xảy ra sự cố phần cứng?
Hệ thống thiết lập cơ chế sao lưu tự động (Automated Backup) cho MongoDB với kiến trúc Replica Set 3 nodes (1 Primary, 2 Secondary) trên AWS. Trong trường hợp node chính gặp sự cố, hệ thống tự động bầu cử (Failover) sang node phụ trong vòng dưới 3 giây mà không làm gián đoạn trải nghiệm người dùng hay mất mát dữ liệu giao dịch.
Kết luận
Đồ án Phân tích Thiết kế Hệ thống Quản lý Kho hàng (WMS) đã giải quyết triệt để bài toán số hóa quy trình logistics nội bộ thông qua việc chuẩn hóa 31 Use Case nghiệp vụ cốt lõi, hiện thực hóa thuật toán Smart Slotting tối ưu hóa vị trí lưu trữ và xây dựng kiến trúc kỹ thuật hiện đại trên nền tảng MERN stack. Dự án không chỉ là một tài liệu học thuật và phân tích thiết kế phần mềm mẫu mực mà còn là một giải pháp công nghệ có tính ứng dụng thực tiễn cao, giúp doanh nghiệp tiết kiệm chi phí, nâng cao năng suất và sẵn sàng thích ứng với sự phát triển của chuỗi cung ứng thông minh.