168 lines
10 KiB
Markdown
168 lines
10 KiB
Markdown
---
|
|
section: "02"
|
|
title: Phân tích yêu cầu
|
|
status: approved
|
|
version: 1
|
|
reviewer_notes: ""
|
|
---
|
|
|
|
# 2. Phân tích yêu cầu (Requirements Analysis)
|
|
|
|
## 2.1 Yêu cầu chức năng (Functional Requirements)
|
|
|
|
Mã hoá theo mã **FR-xx**. Priority: **Must** (bắt buộc cho MVP) / **Should** (nên có, có thể lùi nếu thiếu thời gian) / **Could** (nice-to-have, không ảnh hưởng go-live nếu thiếu).
|
|
|
|
| ID | Tên yêu cầu | Mô tả ngắn | Actor liên quan | Priority |
|
|
|---|---|---|---|---|
|
|
| FR-01 | Đăng ký & đăng nhập tài khoản khách hàng | Customer tạo tài khoản, đăng nhập bằng email/password | Customer | Must |
|
|
| FR-02 | Đăng nhập mạng xã hội | Customer đăng nhập qua Google/Facebook OAuth (tuỳ chọn) | Customer | Could |
|
|
| FR-03 | Quản lý hồ sơ & địa chỉ giao hàng | Customer cập nhật thông tin cá nhân, quản lý nhiều địa chỉ giao hàng | Customer | Must |
|
|
| FR-04 | Danh mục & tìm kiếm sản phẩm đa người bán | Duyệt catalog, lọc theo ngành hàng/seller/giá, tìm kiếm sản phẩm | Guest, Customer | Must |
|
|
| FR-05 | Giỏ hàng đa người bán | Thêm sản phẩm từ nhiều seller khác nhau vào cùng một giỏ hàng | Guest, Customer | Must |
|
|
| FR-06 | Checkout & tách đơn theo seller | Khách đặt hàng; hệ thống tự tách một giỏ hàng đa seller thành các đơn con theo từng seller | Guest, Customer | Must |
|
|
| FR-07 | Thanh toán | Thanh toán qua VNPay, Momo hoặc COD | Guest, Customer | Must |
|
|
| FR-08 | Quản lý đơn hàng (khách hàng) | Tạo đơn, theo dõi trạng thái, huỷ đơn (trong điều kiện cho phép) | Customer | Must |
|
|
| FR-09 | Đổi trả & khiếu nại đơn hàng | Customer gửi yêu cầu đổi trả/khiếu nại cho đơn đã giao | Customer, CSR | Must |
|
|
| FR-10 | Danh sách yêu thích (Wishlist) | Customer lưu sản phẩm quan tâm để mua sau | Customer | Should |
|
|
| FR-11 | Đánh giá & nhận xét sản phẩm | Customer viết đánh giá/rating cho sản phẩm đã mua | Customer | Should |
|
|
| FR-12 | Thông báo đơn hàng | Gửi email/SMS xác nhận đơn hàng, cập nhật trạng thái giao hàng | Customer, Seller | Must |
|
|
| FR-13 | Khuyến mãi & mã giảm giá | Admin tạo và quản lý chương trình khuyến mãi/coupon; khách áp dụng khi checkout | PlatformAdmin, Customer | Should |
|
|
| FR-14 | Chương trình loyalty/điểm thưởng | Tích điểm theo giá trị đơn hàng, đổi điểm thành giảm giá, xếp hạng thành viên (Bạc/Vàng/Kim cương) | Customer | Should |
|
|
| FR-15 | Đa ngôn ngữ giao diện | Hiển thị giao diện theo 5 ngôn ngữ VI/EN/ZH/KO/JA | Guest, Customer, Seller | Should |
|
|
| FR-16 | Hiển thị đa tiền tệ | Hiển thị giá quy đổi tham khảo sang các tiền tệ khác (giao dịch vẫn bằng VND) | Guest, Customer | Could |
|
|
| FR-17 | Đăng ký & KYC người bán | Seller tự đăng ký, upload giấy phép kinh doanh/CMND; Admin duyệt thủ công | Seller, PlatformAdmin | Must |
|
|
| FR-18 | Quản lý sản phẩm & tồn kho (seller) | Seller tự đăng sản phẩm, cập nhật tồn kho, giá bán | Seller | Must |
|
|
| FR-19 | Quản lý đơn hàng (seller) | Seller xem, xử lý các đơn hàng thuộc gian hàng của mình | Seller | Must |
|
|
| FR-20 | Dashboard & báo cáo doanh thu (seller) | Seller xem báo cáo doanh thu, hoa hồng, trạng thái payout của mình | Seller | Should |
|
|
| FR-21 | Cấu hình hoa hồng (commission) theo ngành hàng | Admin cấu hình/chỉnh sửa bảng % hoa hồng theo từng category | PlatformAdmin | Must |
|
|
| FR-22 | Payout định kỳ cho seller | Tính và chi trả payout hàng tuần qua chuyển khoản ngân hàng, áp dụng kỳ giữ tiền (hold) sau giao hàng thành công | PlatformAdmin, Seller | Must |
|
|
| FR-23 | Quản trị seller | Admin duyệt/khoá tài khoản seller, giám sát hoạt động seller | PlatformAdmin | Must |
|
|
| FR-24 | Quản trị catalog toàn sàn | Admin giám sát, can thiệp (ẩn/gỡ) sản phẩm vi phạm trên toàn sàn | PlatformAdmin | Must |
|
|
| FR-25 | Xử lý tranh chấp & khiếu nại | CSR/Admin xử lý tranh chấp giữa khách hàng và seller (đổi trả, khiếu nại) | CSR, PlatformAdmin | Must |
|
|
| FR-26 | Xử lý tồn kho & vận chuyển | Ops/Warehouse xử lý đóng gói, cập nhật trạng thái giao hàng, tích hợp đơn vị vận chuyển GHN/GHTK | OpsStaff | Must |
|
|
| FR-27 | Xác thực đa yếu tố (MFA) | Bắt buộc MFA cho Admin, khuyến khích MFA cho Seller khi đăng nhập | PlatformAdmin, Seller | Should |
|
|
|
|
## 2.2 Yêu cầu phi chức năng (Non-Functional Requirements)
|
|
|
|
| ID | Nhóm | Yêu cầu |
|
|
|---|---|---|
|
|
| NFR-01 | Hiệu năng (Performance) | Thời gian phản hồi trang danh mục/tìm kiếm sản phẩm < 2 giây; hoàn tất checkout < 3 giây, kể cả trong giai đoạn tải đỉnh (flash sale). |
|
|
| NFR-02 | Khả năng mở rộng (Scalability) | Kiến trúc scale-out ngang ngay từ đầu; hỗ trợ cao điểm hàng nghìn đến hàng chục nghìn concurrent users; sử dụng cache (Redis), CDN, message queue (Kafka/RabbitMQ) để hấp thụ tải đột biến mùa sale. |
|
|
| NFR-03 | Độ sẵn sàng (Availability) | Mục tiêu uptime 99.9% cho các dịch vụ giao dịch cốt lõi (catalog, checkout, thanh toán). |
|
|
| NFR-04 | Bảo mật (Security) | Bảo vệ PII của khách hàng và seller (bao gồm giấy tờ KYC); MFA bắt buộc cho Admin, khuyến khích cho Seller; chi tiết mã hoá dữ liệu/OWASP/quản lý khóa sẽ đặc tả ở mục 8 (Thiết kế bảo mật). |
|
|
| NFR-05 | Tuân thủ pháp lý (Compliance) | Tuân thủ Nghị định 52/2013 và 85/2021 (thông báo website TMĐT sàn giao dịch với Bộ Công Thương); Nghị định 13/2023 (bảo vệ dữ liệu cá nhân); phạm vi PCI-DSS thu hẹp do không lưu trữ dữ liệu thẻ (giao cho VNPay/Momo). |
|
|
| NFR-06 | Đa ngôn ngữ/địa phương hoá (i18n/l10n) | Hỗ trợ 5 ngôn ngữ giao diện (VI mặc định, EN, ZH, KO, JA); hiển thị đa tiền tệ tham khảo trên nền giao dịch VND. |
|
|
| NFR-07 | Khả năng bảo trì (Maintainability) | Sử dụng design system chuẩn (VD. Material/Ant Design) làm nền tảng giao diện; kiến trúc module hoá để các nhóm (catalog, order, seller, payment) phát triển độc lập (chi tiết ở mục 3). |
|
|
| NFR-08 | Vận hành (Operability) | Ba môi trường Dev/Staging/Production tách biệt trên AWS; hỗ trợ vận hành giờ hành chính kèm escalation 24/7 cho sự cố nghiêm trọng ảnh hưởng giao dịch/doanh thu. |
|
|
|
|
> Ghi chú: Các con số hiệu năng/uptime ở NFR-01, NFR-03 là **giả định mặc định đã chốt** trong brief (mục 5, giả định #6), chưa được xác nhận bằng SLA hợp đồng thực tế — xem `openQuestions`.
|
|
|
|
## 2.3 Sơ đồ Use Case
|
|
|
|
```mermaid
|
|
flowchart LR
|
|
Guest((Guest))
|
|
Customer((Customer))
|
|
Seller((Seller))
|
|
Admin((Platform Admin))
|
|
Ops((Ops/Warehouse))
|
|
CSR((CSR))
|
|
|
|
UC1[Duyệt & tìm kiếm sản phẩm]
|
|
UC2[Giỏ hàng đa seller]
|
|
UC3[Checkout & thanh toán]
|
|
UC4[Quản lý đơn hàng cá nhân]
|
|
UC5[Đổi trả / khiếu nại]
|
|
UC6[Wishlist]
|
|
UC7[Đánh giá sản phẩm]
|
|
UC8[Đăng ký / đăng nhập]
|
|
UC9[Điểm thưởng & hạng thành viên]
|
|
UC10[Đăng ký & KYC seller]
|
|
UC11[Quản lý sản phẩm & tồn kho]
|
|
UC12[Quản lý đơn hàng seller]
|
|
UC13[Xem báo cáo doanh thu/payout]
|
|
UC14[Duyệt / khoá seller]
|
|
UC15[Cấu hình hoa hồng]
|
|
UC16[Quản trị catalog toàn sàn]
|
|
UC17[Cấu hình khuyến mãi]
|
|
UC18[Xử lý payout]
|
|
UC19[Xử lý tranh chấp/khiếu nại]
|
|
UC20[Xử lý tồn kho & đóng gói]
|
|
UC21[Cập nhật trạng thái giao hàng]
|
|
|
|
Guest --> UC1
|
|
Guest --> UC2
|
|
Guest --> UC3
|
|
Guest --> UC8
|
|
|
|
Customer --> UC1
|
|
Customer --> UC2
|
|
Customer --> UC3
|
|
Customer --> UC4
|
|
Customer --> UC5
|
|
Customer --> UC6
|
|
Customer --> UC7
|
|
Customer --> UC8
|
|
Customer --> UC9
|
|
|
|
Seller --> UC10
|
|
Seller --> UC11
|
|
Seller --> UC12
|
|
Seller --> UC13
|
|
|
|
Admin --> UC14
|
|
Admin --> UC15
|
|
Admin --> UC16
|
|
Admin --> UC17
|
|
Admin --> UC18
|
|
Admin --> UC19
|
|
|
|
Ops --> UC20
|
|
Ops --> UC21
|
|
|
|
CSR --> UC19
|
|
CSR --> UC5
|
|
```
|
|
|
|
## 2.4 Ma trận truy vết yêu cầu (Traceability Matrix)
|
|
|
|
| Requirement ID | Mô tả | Mục thiết kế liên quan | Test Case |
|
|
|---|---|---|---|
|
|
| FR-01 | Đăng ký & đăng nhập tài khoản khách hàng | | |
|
|
| FR-02 | Đăng nhập mạng xã hội | | |
|
|
| FR-03 | Quản lý hồ sơ & địa chỉ giao hàng | | |
|
|
| FR-04 | Danh mục & tìm kiếm sản phẩm đa người bán | | |
|
|
| FR-05 | Giỏ hàng đa người bán | | |
|
|
| FR-06 | Checkout & tách đơn theo seller | | |
|
|
| FR-07 | Thanh toán | | |
|
|
| FR-08 | Quản lý đơn hàng (khách hàng) | | |
|
|
| FR-09 | Đổi trả & khiếu nại đơn hàng | | |
|
|
| FR-10 | Danh sách yêu thích (Wishlist) | | |
|
|
| FR-11 | Đánh giá & nhận xét sản phẩm | | |
|
|
| FR-12 | Thông báo đơn hàng | | |
|
|
| FR-13 | Khuyến mãi & mã giảm giá | | |
|
|
| FR-14 | Chương trình loyalty/điểm thưởng | | |
|
|
| FR-15 | Đa ngôn ngữ giao diện | | |
|
|
| FR-16 | Hiển thị đa tiền tệ | | |
|
|
| FR-17 | Đăng ký & KYC người bán | | |
|
|
| FR-18 | Quản lý sản phẩm & tồn kho (seller) | | |
|
|
| FR-19 | Quản lý đơn hàng (seller) | | |
|
|
| FR-20 | Dashboard & báo cáo doanh thu (seller) | | |
|
|
| FR-21 | Cấu hình hoa hồng (commission) theo ngành hàng | | |
|
|
| FR-22 | Payout định kỳ cho seller | | |
|
|
| FR-23 | Quản trị seller | | |
|
|
| FR-24 | Quản trị catalog toàn sàn | | |
|
|
| FR-25 | Xử lý tranh chấp & khiếu nại | | |
|
|
| FR-26 | Xử lý tồn kho & vận chuyển | | |
|
|
| FR-27 | Xác thực đa yếu tố (MFA) | | |
|
|
| NFR-01 | Hiệu năng (latency catalog/search, checkout) | | |
|
|
| NFR-02 | Khả năng mở rộng (scale-out, cache, CDN, MQ) | | |
|
|
| NFR-03 | Độ sẵn sàng (uptime 99.9%) | | |
|
|
| NFR-04 | Bảo mật (PII, MFA, mã hoá) | | |
|
|
| NFR-05 | Tuân thủ pháp lý (NĐ52/85, NĐ13/2023, PCI-DSS) | | |
|
|
| NFR-06 | Đa ngôn ngữ/đa tiền tệ | | |
|
|
| NFR-07 | Khả năng bảo trì | | |
|
|
| NFR-08 | Vận hành (môi trường, on-call) | | |
|
|
|
|
*Cột "Mục thiết kế liên quan" và "Test Case" sẽ được các agent tiếp theo (architecture-designer, api-designer, data-modeler, test-ops-planner...) điền khi hoàn thành phần tương ứng.*
|