Skip to main content
Để đảm bảo hệ thống Quản lý Đơn hàng (Order) hoạt động ổn định, chính xác và mượt mà, hệ thống cần đáp ứng các yêu cầu phi chức năng (Non-Functional Requirements - NFRs) dưới đây:

1. Tính Toàn vẹn Dữ liệu (Data Integrity) & Tránh Race Condition

Đây là yêu cầu quan trọng nhất trong thương mại điện tử, đặc biệt liên quan đến Tồn kho (Inventory).
  • Vấn đề: Nhiều khách hàng cùng bấm “Đặt hàng” một sản phẩm có số lượng tồn kho thấp vào cùng một thời điểm.
  • Yêu cầu: Hệ thống phải áp dụng cơ chế khoá (Locking Mechanism - như Optimistic Locking hoặc Pessimistic Locking ở Database level) khi thực hiện Final Stock Check và Reserve Stock. Đảm bảo tuyệt đối không xảy ra tình trạng bán vượt quá số lượng tồn (Overselling).

2. Hiệu năng & Khả năng mở rộng (Performance & Scalability)

  • Xử lý lượng lớn đơn hàng: Hệ thống API phải có khả năng xử lý hàng ngàn request tạo đơn hàng (Checkout) cùng lúc trong các dịp Flash Sale hoặc khuyến mãi lớn mà không bị sập.
  • Độ trễ (Latency): Thời gian phản hồi cho thao tác “Thêm vào giỏ hàng” và tải “Danh sách sản phẩm” phải <500ms< 500ms để đảm bảo trải nghiệm người dùng không bị gián đoạn.

3. Tính Khả dụng (Availability)

  • Hệ thống Mua sắm và Đặt hàng phải duy trì uptime đạt 99.9%.
  • Nếu module quản lý Đơn vị vận chuyển (Bên thứ 3) gặp sự cố (Down), nó không được phép làm sập hệ thống Đặt hàng. Có cơ chế Fallback (như lưu hàng đợi - Queue) để đồng bộ lại trạng thái vận chuyển sau khi kết nối phục hồi.

4. Giao diện (UX/UI) & Trải nghiệm

  • Responsive & Mobile First: Màn hình mua sắm, xem giỏ hàng và thanh toán dành cho Pet Owner phải hiển thị hoàn hảo trên các thiết bị di động. Nút “Mua hàng” phải là Sticky Button (ghim ở đáy màn hình) để thuận tiện thao tác.
  • Real-time Updates: Trạng thái của Đơn hàng khi Merchant cập nhật (Từ Chờ xác nhận -> Đang giao) phải được phản hồi gần như ngay lập tức (Real-time) tới App của Pet Owner thông qua WebSocket hoặc Push Notifications.