Files
sys-analysis-design/e-commerce/bid/20-estimation.md
2026-09-08 12:35:40 +07:00

9.8 KiB
Raw Permalink Blame History

document, version, status, date
document version status date
bid-estimation 1 draft 2026-09-06

C1 — Cơ sở & phương pháp ước lượng

Phương pháp A — WBS bottom-up (chính)

Ước lượng được lập theo nguyên tắc mỗi hạng mục ánh xạ tới 1 chức năng/nhóm chức năng (FR) trong docs/SAD.md (§2 Phân tích yêu cầu), cộng thêm các hạng mục xuyên suốt bắt buộc cho một hệ thống marketplace quy mô lớn: thiết lập dự án & CI/CD, kiến trúc nền tảng dịch vụ (event-driven, database-per-service), bảo mật xuyên suốt, hiệu năng/khả năng mở rộng, 7 tích hợp bên thứ ba (mỗi tích hợp 1 dòng riêng theo §3.4), quản lý dự án, đào tạo/bàn giao, hỗ trợ go-live.

Mỗi hạng mục trong bid/estimate.json gồm: complexity (S/M/L/XL, lý do dựa trên số màn hình/endpoint/bảng/rule/tích hợp liên quan), risk (low/medium/high — workflow áp % dự phòng theo bid-config.contingencyPct), effortMD theo từng vai trò trong bid-config.roles (PM, BA, SA, UIUX, BE, FE, QA, DEVOPS — chỉ điền vai trò thực sự tham gia), rationale và sources truy vết về SAD.

bid-config.overheadMode = itemized: effort PM/BA được phân bổ trực tiếp vào từng hạng mục theo mức độ điều phối/phân tích cần thiết, có thêm 1 dòng riêng (WBS-08) cho quản lý dự án tổng thể xuyên suốt các sprint (ceremonies, báo cáo, quản lý rủi ro/thay đổi) — không dùng overheadPct cộng thêm theo %.

Phương pháp B — Use Case Points (đối chiếu)

Đếm actor và use case từ sơ đồ use case tổng quan docs/sections/02-phan-tich-yeu-cau.md §2.3 (UC1–UC21): 6 actor người dùng tương tác qua giao diện web (Guest, Customer, Seller, PlatformAdmin, OpsStaff, CSR) được tính là complex; 7 hệ thống bên ngoài (VNPay, Momo, GHN, GHTK, Google/Facebook OAuth, Email/SMS Provider, Ngân hàng) tương tác qua API được tính là simple theo §3.4. 21 use case được phân loại theo số bước giao dịch ước lượng từ đặc tả API (§4) và luồng nghiệp vụ (§6): 4 simple, 13 average, 4 complex.

13 yếu tố kỹ thuật (TCF) và 8 yếu tố môi trường (EF) được chấm điểm 0–5 kèm lý do trong bid/estimate.json → ucp.tcf / ucp.ef. Workflow sẽ tính UUCW/UAW/TCF/EF/UCP/giờ (theo bid-config.hoursPerUCP = 20)/MM và so sánh độ lệch với tổng WBS theo ngưỡng bid-config.ucpVarianceThresholdPct = 25; nếu vượt ngưỡng, kết quả và lý giải sẽ được trình bày ở bid/estimate.computed.json và cần bổ sung giải thích tại bản cập nhật tài liệu này.

Bảng tóm tắt hạng mục

Cột "MD hạng mục" = tổng effort của riêng dòng đó (cộng ngang các vai trò tham gia hạng mục này). Không được cộng dọc cột này giữa các dòng — tổng hợp MM/chi phí toàn dự án xem bid/estimate.computed.json.

Xuyên suốt

ID Hạng mục Complexity Risk MD hạng mục Vai trò tham gia
WBS-01 Thiết lập dự án & môi trường (Dev/Staging/Production AWS) L medium 29 PM, SA, BE, DEVOPS
WBS-02 Pipeline CI/CD (build→test→scan→deploy) L medium 22 DEVOPS, QA
WBS-03 Kiến trúc nền tảng dịch vụ & event backbone XL high 52 PM, SA, BE, DEVOPS
WBS-04 Design system & khung i18n/l10n (5 ngôn ngữ) L medium 27 UIUX, FE
WBS-05 Bảo mật xuyên suốt (OWASP, IDOR, KMS, MFA, audit log) XL high 43 SA, BE, QA, DEVOPS
WBS-06 Hiệu năng & khả năng mở rộng (cache, CDN, load/chaos test) L high 28 BE, DEVOPS, QA
WBS-07 Giám sát, logging tập trung & DR/backup M medium 15 DEVOPS, BE
WBS-08 Quản lý dự án & PMO L medium 40 PM
WBS-09 Đào tạo & bàn giao M low 13 BA, PM, QA
WBS-10 Hỗ trợ go-live & bảo hành giai đoạn đầu M medium 21 PM, BE, QA, DEVOPS
WBS-11 Tích hợp VNPay M medium 9 BE, QA
WBS-12 Tích hợp Momo M medium 7 BE, QA
WBS-13 Tích hợp GHN M medium 7 BE, QA
WBS-14 Tích hợp GHTK M medium 6 BE, QA
WBS-15 Tích hợp Email/SMS Provider S low 6 BE, QA
WBS-16 Tích hợp Google/Facebook OAuth S medium 6 BE, QA
WBS-17 Tích hợp ngân hàng cho payout M high 9 BE, QA

Khách hàng

ID Hạng mục Complexity Risk MD hạng mục Vai trò tham gia
WBS-18 Định danh & tài khoản khách hàng L medium 36 BA, SA, BE, FE, UIUX, QA
WBS-19 Danh mục & tìm kiếm sản phẩm đa seller XL high 56 BA, SA, BE, FE, UIUX, QA
WBS-20 Giỏ hàng đa seller M medium 22 BA, BE, FE, UIUX, QA
WBS-21 Checkout & tách đơn theo seller XL high 53 PM, BA, SA, BE, FE, UIUX, QA
WBS-22 Thanh toán — business logic Payment Service L high 27 PM, BA, SA, BE, FE, QA
WBS-23 Quản lý đơn hàng khách hàng M low 17 BA, BE, FE, QA
WBS-24 Đổi trả & khiếu nại (khách hàng) M medium 18 BA, BE, FE, UIUX, QA
WBS-25 Danh sách yêu thích (Wishlist) S low 5 BE, FE, QA
WBS-26 Đánh giá & nhận xét sản phẩm S low 8 BE, FE, QA
WBS-27 Thông báo đơn hàng M medium 13 BA, BE, FE, QA
WBS-28 Khuyến mãi & mã giảm giá M low 18 BA, BE, FE, UIUX, QA
WBS-29 Chương trình loyalty & hạng thành viên M medium 17 BA, BE, FE, QA
WBS-30 Đa ngôn ngữ nội dung M medium 14 BA, BE, FE, QA
WBS-31 Hiển thị đa tiền tệ tham khảo S low 5 BE, FE, QA

Merchant

ID Hạng mục Complexity Risk MD hạng mục Vai trò tham gia
WBS-32 Đăng ký & KYC người bán L high 35 PM, BA, SA, BE, FE, UIUX, QA
WBS-33 Quản lý sản phẩm & tồn kho (Seller) M medium 23 BA, BE, FE, UIUX, QA
WBS-34 Quản lý đơn hàng (Seller) M medium 17 BA, BE, FE, QA
WBS-35 Dashboard doanh thu & payout (Seller) M low 18 BA, BE, FE, UIUX, QA

Admin

ID Hạng mục Complexity Risk MD hạng mục Vai trò tham gia
WBS-36 Cấu hình hoa hồng theo ngành hàng S medium 10 BA, BE, FE, QA
WBS-37 Payout định kỳ & Commission engine XL high 35 PM, BA, SA, BE, FE, QA
WBS-38 Quản trị người bán (duyệt/khoá) M medium 14 BA, BE, FE, QA
WBS-39 Quản trị catalog toàn sàn M low 14 BA, BE, FE, QA
WBS-40 Xử lý tranh chấp & khiếu nại (CSR + Admin) L high 28 PM, BA, SA, BE, FE, QA
WBS-41 Vận hành kho & vận chuyển (business logic) L medium 24 BA, SA, BE, FE, QA
WBS-42 Xác thực đa yếu tố (MFA) Admin/Seller M medium 11 BE, FE, QA
WBS-43 Admin Dashboard tổng quan vận hành M low 14 BA, BE, FE, UIUX, QA

Giả định năng suất

  • QA effort ước lượng khoảng 25–40% effort BE/FE theo từng hạng mục.
  • PM/BA effort phân bổ theo từng hạng mục (overheadMode = itemized), có 1 dòng PM riêng (WBS-08) cho quản lý dự án tổng thể.
  • Đội ngũ giả định có kinh nghiệm trung bình-cao với kiến trúc microservices/event-driven trên AWS; chưa tính rủi ro luân chuyển nhân sự.
  • Không có yêu cầu di trú dữ liệu (dự án greenfield theo SAD §1.5).
  • Không tính chi phí dịch thuật nội dung 5 ngôn ngữ, chỉ tính effort kỹ thuật khung i18n.

Loại trừ

  • Phí license/giao dịch bên thứ ba (cổng thanh toán, SMS/Email, ngân hàng) — xem nonLabor trong bid/estimate.json.
  • Ứng dụng mobile app native (giai đoạn 2 theo SAD §1.1/§7.0).
  • Affiliate marketing, subscription/bán hàng định kỳ, hoá đơn điện tử tự động cho seller, SSO doanh nghiệp (giai đoạn 2 theo SAD §2.2/B2.2).
  • Chi phí dịch thuật nội dung đa ngôn ngữ.

Câu hỏi mở

  • Ngân sách và thời hạn dự án chưa được chủ dự án xác định chính thức (SAD giả định #7).
  • SLA hiệu năng/uptime (NFR-01, NFR-03) là giả định mặc định, chưa có xác nhận hợp đồng thực tế.
  • Ngân hàng đối tác và chuẩn kết nối payout (batch file/API) chưa chốt.
  • Nhà cung cấp Email/SMS cụ thể chưa chốt.
  • Công thức tính điểm loyalty và ngưỡng chi tiêu từng hạng thành viên chưa chốt (FR-14).
  • Công thức/mức hoàn tiền dispute chưa chốt (FR-25/BR-14).
  • Màn hình Admin Dashboard tổng quan (SCR-22/WBS-43) không truy vết trực tiếp 1 FR — cần BA/Product Owner xác nhận phạm vi.
  • bid-config.md còn nhiều trường [[CẦN ĐIỀN]] (bidder, client, package, ngày, nonLabor) cần điền trước khi hoàn chỉnh Phần C.

Tổng hợp MM/chi phí: xem bid/estimate.computed.json (tính tự động từ dữ liệu ở trên bằng code, không tính thủ công trong tài liệu này).