Files
sys-analysis-design/sa-output/e-commerce/01-context/TCO_e-commerce_v1.0.md
Canhchimlac 343ad8bbbc save
2026-09-15 16:02:30 +07:00

36 KiB
Raw Blame History

TCO — Cost Model — e-commerce · Phương án P2 (chính) và P1 (đối chiếu)

Version 1.1
Date 2026-09-12
Author SA (skill sa-1-context, chế độ go, hoạt động cost-risk)
Status 🟡 Draft (duyệt từng phần — xem Approved by; chấp nhận cấu trúc 4 nhóm chi phí (§3–§6), 2 kịch bản tải A/B (§2), và kết luận thứ tự tương đối "P2 rẻ hơn P1" ở cả hai kịch bản (§1, §7); đơn giá AWS (ASM-11), tỷ giá (ASM-12), số FTE vận hành (ASM-14) và 5 khoản non-labor (OQ-013…017) chưa xác nhận — đây chưa phải AG1 toàn phần, Tech Lead chưa ký, OQ-004 còn mở; xem "Tự chấm" §①)
Approved by PO (uỷ quyền, chế độ chạy thử): Điều phối dự án — duyệt từng phần bản v1.1 · 2026-09-12 (sau khi đã sửa lỗi chép số §1 P2-B: dòng "Vận hành/nhân sự (3 năm)" P2-B = 5.600 triệu, Tổng 3 năm P2-B = 13.977,5 triệu): chấp nhận cấu trúc 4 nhóm chi phí (hạ tầng AWS · license/SaaS · vận hành/nhân sự · chi phí một lần xây dựng), 2 kịch bản tải A/B, và kết luận thứ tự tương đối P2 rẻ hơn P1 ở cả hai kịch bản. Chưa xác nhận (giữ Confidence 🔴): đơn giá AWS (ASM-11), tỷ giá quy đổi USD/VND (ASM-12), số FTE đội Ops (ASM-14), và 5 khoản non-labor chưa tính được (OQ-013…017). Ký thay PO theo ngoại lệ DEC-01 (SA), ghi thêm DEC-09; không phải chữ ký PO/Tech Lead thật — OQ-004 giữ mở. Status giữ 🟡 Draft — AG1 toàn phần vẫn chưa đủ điều kiện. · Tech Lead: — (chưa ký)
Source 01-context/CTX_e-commerce_v1.0.md (v1.2 trong header) §2 DRV-04/05/06, §3 CON-01/02/03/04/05/08, §4.1, §4.2, §4.4 · 01-context/OPT_e-commerce_v1.0.md §1, §3 (P1/P2), §4, §8 ASM-07/08/09 · e-commerce/bid/estimate.computed.json (totals, cost, timeline, staffing) · e-commerce/bid/bid-config.md (rateCard, vatPct) · e-commerce/bid/40-financial-proposal.md §C2–C5 · e-commerce/docs/sections/03-kien-truc.md §3.2–§3.4 · e-commerce/docs/sections/09-van-hanh-kiem-thu.md §9.3–§9.5 · ba-output/e-commerce/01-discovery/RISK_CartCheckout_v1.0.md (tham chiếu ID, không copy)
Scope Chi phí 3 năm cho P2 (modular monolith + managed AWS, Payment tách riêng — phương án chính theo DEC-06) và P1 (modular microservices theo SAD.md/hồ sơ thầu — đối chiếu), mỗi phương án tính theo 2 kịch bản tải. Đơn vị tiền: VND. Đơn giá hạ tầng AWS quy đổi từ USD (khu vực tham chiếu ap-southeast-1, xem ASM-11)
Confidence 🔴 Giả định chưa xác minh — kế thừa nguyên nhân của CTX/OPT (BA chưa ký G1, AG1 GĐ1 SA chưa từng chạy, ngoại lệ gate DEC-01/03/04/05 tiếp tục ở DEC-07). Thêm hai lý do riêng của TCO: (a) đơn giá AWS không được truy vấn từ AWS Pricing Calculator/báo giá đại lý thời điểm hiện tại — là ước tính từ tri thức bảng giá công khai đã biết, bắt buộc xác minh lại trước khi PO dùng để duyệt ngân sách (ASM-11); (b) không có baseline tải thật (greenfield, CTX §4.1) nên toàn bộ kịch bản tải là giả định suy từ DRV-04 (ASM-10), không phải đo lường

Change Log

Version Date Người sửa Thay đổi ADR/DEC
1.1 2026-09-12 SA (qua skill sa-1-context, chế độ go, hoạt động cost-risk) Sửa lỗi chép số §1 P2-B theo phát hiện của người duyệt 2026-09-12: dòng "Vận hành/nhân sự (3 năm)" P2 — Kịch bản B đổi từ 5.800 triệu → 5.600 triệu (đúng theo chi tiết cộng dồn ở §5: 5.400 nhân sự + 200 surge); Tổng 3 năm P2-B đổi từ 14.177,5 triệu (~14,18 tỷ) → 13.977,5 triệu (~13,98 tỷ), khớp số đã có sẵn ở §7. Viết lại ghi chú 🔴 "Ghi chú khớp số" ở §7 — nguyên nhân lệch là lỗi chép số ở §1, không phải làm tròn. Đã rà soát: dải tổng ở §1 "So sánh nhanh"/ARISK-07/OQ-005 (~11,2–19,1 tỷ) không đổi vì cận dưới (P2-A ~11,17 tỷ) và cận trên (P1-B ~19,06 tỷ) không liên quan tới ô bị sửa. Không sửa ARISK/OQ (không trích đúng con số 14.177,5/14,18). Không chạy lại ước lượng, không đổi Status/Confidence/Approved by. —
1.1 2026-09-12 PO (uỷ quyền, Điều phối dự án) — tác vụ sign/approve Duyệt từng phần bản v1.1 (sau khi sửa lỗi chép số §1 P2-B ở dòng trên): chấp nhận cấu trúc 4 nhóm chi phí, 2 kịch bản tải A/B, kết luận thứ tự tương đối P2 rẻ hơn P1. Không đổi nội dung chuyên môn. Đơn giá AWS (ASM-11), tỷ giá (ASM-12), số FTE vận hành (ASM-14) và 5 khoản non-labor (OQ-013…017) chưa xác nhận — Confidence giữ 🔴. Ký thay PO theo ngoại lệ DEC-01 (SA), ghi thêm DEC-09; không phải chữ ký PO/Tech Lead thật — OQ-004 giữ mở, Tech Lead chưa ký. Status giữ 🟡 Draft — AG1 toàn phần chưa đủ điều kiện (xem "Tự chấm" §①). DEC-09
1.0 2026-09-12 SA (qua skill sa-1-context, chế độ go, hoạt động cost-risk) Bản đầu — Bước 5 (phần TCO) của sa-1-context. Tính chi phí 3 năm cho P2 (chính, theo DEC-06) và P1 (đối chiếu) theo 2 kịch bản tải (A — tải dự kiến, B — đỉnh flash sale/tăng trưởng, neo DRV-04). Tách 4 nhóm: hạ tầng AWS · license/SaaS · vận hành/nhân sự · chi phí một lần (xây dựng). Mọi con số hạ tầng có công thức + nguồn hoặc gắn ASM-nn kèm cờ "cần xác minh" theo D9. 8 khoản non-labor còn amount: null trong estimate.computed.json được xử lý: NL-01/NL-02 (hạ tầng AWS, OpenSearch) tính bằng công thức riêng của SA (mục đích khác ước lượng thầu); NL-03/04/05/07/08 chưa có cơ sở tính (phí giao dịch/vận chuyển/pentest/đào tạo phụ thuộc hợp đồng nhà cung cấp) — ghi OQ-014…OQ-017. Tiếp tục ngoại lệ gate DEC-01/03/04/05, ghi thêm DEC-07. Confidence 🔴 toàn tài liệu. DEC-07

Sơ đồ thắng về quan hệ và luồng (không có sơ đồ mới trong tài liệu này — xem sơ đồ khối P1/P2 ở OPT §3). Bảng/văn bản thắng về ràng buộc và con số. Mâu thuẫn ngoài hai loại này là lỗi tài liệu (D12).


0. Ghi chú Preflight & ngoại lệ gate — tiếp nối CTX/OPT

Gate AG1 (PO + Tech Lead) chưa từng chạy cho dự án e-commerce; BA vẫn chưa ký G1 chính thức. Người dùng (vai điều phối dự án chạy thử) tái khẳng định muốn tiếp tục sang phần TCO của Bước 5 (sa-1-context) theo đúng ghi chú người duyệt của lượt chạy này.

DEC-07 (SA) — Tiếp tục chạy sa-1-context Bước 5 (phần TCO) cho e-commerce trong khi BA vẫn chưa qua G1 và AG1 vẫn chưa từng chạy — tiếp nối DEC-01/03/04/05. Quyết định: Tiếp tục, Confidence 🔴 cho toàn bộ con số (giả định tải + giả định đơn giá AWS) cho tới khi có số liệu tải thật (sau go-live) và báo giá AWS/đại lý chính thức. Người quyết: Điều phối dự án (đại diện PO, dự án chạy thử). Radar (ước lượng): ~3–4 (chi phí đảo ngược thấp — sửa lại TCO khi có số thật không tốn nhiều · bán kính ảnh hưởng: INF/ngân sách GĐ2 phụ thuộc con số này nhưng bản thân việc ghi tài liệu dưới ngoại lệ thì nhỏ · chưa chạm một QAS cụ thể · không ràng buộc dài hạn · không tranh cãi mới, tiếp nối tiền lệ) → ghi DEC-nn, không cần ADR. Hệ quả nếu không chấp nhận ngoại lệ: dừng Bước 5, GĐ1 SA không đủ 4 artifact để audit AG1, chậm tiến độ chạy thử tương ứng thời gian BA/PO hoàn tất các điều kiện gate thật.

🔴 Lưu ý quan trọng cho người ký: đơn giá AWS dưới đây không phải báo giá thật — đây là ước tính dựa trên tri thức bảng giá công khai của AWS (không truy vấn AWS Pricing Calculator hay báo giá đại lý tại thời điểm chạy skill này), khu vực tham chiếu ap-southeast-1 (Singapore, gần nhất với ràng buộc CON-03/ASM-04 cho tới khi OQ-007 xác nhận residency VN). Bắt buộc chạy lại qua AWS Pricing Calculator hoặc xin báo giá đại lý AWS tại Việt Nam trước khi dùng các con số này để duyệt ngân sách chính thức — xem ASM-11, OQ-013.


1. Tóm tắt cho người quyết định

P2 — Kịch bản A P2 — Kịch bản B P1 — Kịch bản A P1 — Kịch bản B
Chi phí một lần (xây dựng, đã VAT) 3.552,2 triệu 3.552,2 triệu 3.762,6 triệu 3.762,6 triệu
OpEx hạ tầng AWS (3 năm) 1.818,8 triệu 4.425,8 triệu 3.776,1 triệu 7.339,2 triệu
License/SaaS (3 năm) 349,5 triệu 349,5 triệu 409,5 triệu 409,5 triệu
Vận hành/nhân sự (3 năm) 5.400 triệu 5.600 triệu 6.750 triệu 7.350 triệu
Đào tạo (một lần, Năm 1) 50 triệu 50 triệu 200 triệu 200 triệu
Tổng 3 năm (VND) ≈ 11.170,5 triệu (~11,17 tỷ) ≈ 13.977,5 triệu (~13,98 tỷ) ≈ 14.898,2 triệu (~14,90 tỷ) ≈ 19.061,3 triệu (~19,06 tỷ)
So với CON-01 (ngân sách duyệt) ❌ Không đối chiếu được — CON-01 mới có số lao động build (~3,76 tỷ, từ hồ sơ thầu), không có ngân sách vận hành 3 năm đã duyệt để so sánh (OQ-005 còn mở)

🔴 Phát hiện quan trọng nhất của TCO này, cần trình PO ngay: con số duy nhất PO/tài chính từng thấy (~3,76 tỷ VND, hồ sơ thầu) chỉ là chi phí xây dựng một lần. Chi phí vận hành 3 năm (hạ tầng + license + con người) — phần mà mọi dự án thật sự phải trả sau go-live — lớn hơn chi phí xây dựng ban đầu 2,1–4,0 lần tuỳ phương án/kịch bản. Đây chính xác là điều GUIDE.md cảnh báo: "TCO ra con số quá lớn, khách sẽ sốc — đó là giá trị của TCO, không phải vấn đề của nó." OQ-005 (ngân sách) cần được hỏi lại với con số full 3 năm này, không phải con số build.

P2 rẻ hơn P1 ở cả hai kịch bản (~2,7 tỷ ở kịch bản A, ~4,9 tỷ ở kịch bản B) — khớp hướng khuyến nghị định tính của OPT (P2 ít managed component hơn, không cần cụm Kafka/MSK + OpenSearch đa node chạy 24/7 bất kể tải).


2. Giả định tải — nền của mọi con số dưới đây

Dự án greenfield (CTX §4.1) — không có baseline tải thật. Toàn bộ số dưới đây là ASM-10, suy từ DRV-04 ("hàng trăm nghìn SKU, hàng trăm nghìn–hàng triệu user, đỉnh hàng nghìn–chục nghìn concurrent user mùa flash sale"), chọn cận dưới/giữa dải cho kịch bản A và cận dưới của dải "chục nghìn" cho kịch bản B — không phải số đo được.

Chỉ số Kịch bản A (tải dự kiến) Kịch bản B (đỉnh flash sale) Nguồn
Người dùng hoạt động 200.000 600.000 ASM-10, suy từ DRV-04
SKU 300.000 500.000 (tăng trưởng) ASM-10
Giao dịch/ngày (trung bình) 5.000 đơn 15.000 đơn (≈ 625 đơn/giờ đỉnh × hệ số dồn) ASM-10
Giao dịch/giờ (đỉnh) ~400 đơn/giờ ~15.000 đơn/giờ (≈ 4,2 đơn/giây) ASM-10, tương ứng "chục nghìn concurrent" của DRV-04
Concurrent user (đỉnh) 2.000 10.000 ASM-10, cận dưới dải DRV-04
Dung lượng dữ liệu năm 1 / 3 ~50GB / ~110GB ~80GB / ~200GB ASM-10
Tốc độ tăng dữ liệu ~5GB/tháng ~10GB/tháng ASM-10
Băng thông ra ngoài (egress qua CDN) ~400GB/tháng ~1.200GB/tháng (1,2TB) ASM-10

🔴 ASM-10 — Chủ: PM/Tech Lead. Cách xác minh: đo lại sau 4–6 tuần soft-launch (khớp DRV-02 §GOAL-01 của CTX), thay số giả định bằng số đo thật. Nếu sai lệch > 50%: toàn bộ bảng chi phí hạ tầng bên dưới phải tính lại — đây là điểm nhạy cảm nhất của TCO, xem §8.


3. Chi phí hạ tầng AWS — theo phương án

Tất cả đơn giá dưới đây: ASM-11 — ước tính bảng giá công khai AWS, khu vực ap-southeast-1, không tra cứu API Pricing thời gian thực, cờ 🔴 cần xác minh. Tỷ giá quy đổi dùng ASM-12: 1 USD ≈ 25.000 VND (cần xác minh tỷ giá thật tại ngày duyệt ngân sách).

3.1 Đơn giá tham khảo dùng chung (ASM-11, tất cả 🔴 cần xác minh)

Hạng mục Đơn giá ước tính (USD) Nguồn/ghi chú
ECS Fargate (Linux/x86) $0,0466/vCPU-giờ · $0,0051/GB-giờ Bảng giá công khai AWS Fargate, ap-southeast-1
RDS PostgreSQL Multi-AZ, db.r6g.xlarge (4vCPU/32GB) ≈ $0,973/giờ Ước tính ~2× đơn giá Single-AZ tương ứng
RDS PostgreSQL Multi-AZ, db.t4g.medium (2vCPU/4GB) ≈ $0,146/giờ Ước tính, dùng cho DB nhỏ (Payment riêng, hoặc từng logic DB của P1)
RDS PostgreSQL Multi-AZ, db.r6g.2xlarge (8vCPU/64GB) ≈ $1,946/giờ Ước tính, dùng khi scale DB chính P2 kịch bản B
ElastiCache Redis cache.r6g.large ≈ $0,252/giờ/node Ước tính
ElastiCache Redis cache.r6g.xlarge ≈ $0,504/giờ/node Ước tính, dùng kịch bản B
Amazon MSK broker kafka.m5.large ≈ $0,21/giờ/broker + $0,10/GB-tháng lưu trữ Ước tính — chỉ P1 dùng, cụm tối thiểu 3 broker chạy 24/7 bất kể tải
OpenSearch r6g.large.search ≈ $0,167/giờ/node + $0,135/GB-tháng EBS Ước tính — P1 dùng ngay từ đầu (3 node tối thiểu); P2 hoãn dùng Postgres FTS ở kịch bản A
SQS/EventBridge $0,40/triệu request (SQS chuẩn) · $1,00/triệu event (EventBridge) Ước tính — rẻ, rủi ro nằm ở throughput/độ trễ (ASM-07), không phải chi phí
S3 Standard $0,025/GB-tháng Ước tính
CloudFront (egress) ≈ $0,085/GB Ước tính, tier đầu
WAF $5/tháng + ~$1/rule + $0,60/triệu request Ước tính
ALB $0,0225/giờ + LCU Ước tính
NAT Gateway (2 AZ) $0,045/giờ/gateway + $0,045/GB xử lý Ước tính

3.2 P2 — Modular monolith + managed AWS (phương án chính)

Hạng mục Cấu hình (A) Tiền/tháng (A) Cấu hình (B) Tiền/tháng (B)
Compute (ECS Fargate) — monolith + Payment ~4 tasks×1vCPU/2GB (monolith) + 2 tasks×0,5vCPU/1GB (Payment) ≈ $207 ~10 tasks×1vCPU/2GB + 4 tasks×0,5vCPU/1GB ≈ $498
CSDL (RDS) — 1 cụm chính + Payment riêng r6g.xlarge Multi-AZ + t4g.medium Multi-AZ (Payment) ≈ $817 r6g.2xlarge Multi-AZ + 1 read replica + Payment r6g.large Multi-AZ ≈ $2.470
Cache r6g.large × 1 node ≈ $184 r6g.xlarge × 1 node + 1 replica ≈ $736
Message broker (SQS/EventBridge) ~750K msg/tháng ≈ $2 ~2,25M msg/tháng ≈ $6
Lưu trữ đối tượng (S3) ~500GB ≈ $12,5 ~1,5TB ≈ $38
Load balancer/gateway (ALB) ≈ $31 ≈ $61
Băng thông ra (CloudFront) ~400GB ≈ $34 ~1,2TB ≈ $102
WAF ≈ $25 ≈ $35
NAT Gateway ≈ $85 ≈ $125
Backup & DR Automated backup + cross-region snapshot (Payment) ≈ $30 ≈ $60
Observability (log/metric/trace, ~25% hạ tầng — xem cảnh báo cost-model.md §3) ≈ $357 ≈ $1.033
Môi trường non-prod (dev/stg, ~35% Production) ≈ $624 ≈ $700
Cộng hạ tầng/tháng (Production + non-prod) ≈ $2.409 ≈ $5.862
Quy đổi VND/tháng (ASM-12) ≈ 60,2 triệu ≈ 146,6 triệu

P2 3 năm (Năm 1 = 5 tháng vận hành sau go-live tháng 7; Năm 2 = 12 tháng; Năm 3 = 12 tháng × 1,1 tăng trưởng, ASM-15):

Kịch bản A Kịch bản B
Năm 1 (5 tháng) 301,1 triệu 732,8 triệu
Năm 2 (12 tháng) 722,7 triệu 1.758,6 triệu
Năm 3 (12 tháng × 1,1) 795,0 triệu 1.934,5 triệu
Tổng hạ tầng 3 năm 1.818,8 triệu 4.425,8 triệu

3.3 P1 — Modular microservices theo SAD.md/hồ sơ thầu (đối chiếu)

Hạng mục Cấu hình (A) Tiền/tháng (A) Cấu hình (B) Tiền/tháng (B)
Compute (ECS Fargate) — ~10 service × 2 task (HA) 20 task × 0,5vCPU/1GB ≈ $415 scale ~40 task ≈ $829
CSDL (RDS) — ~10 logic DB Multi-AZ 10 × t4g.medium Multi-AZ ≈ $1.066 3 DB nâng r6g.large + 7 DB t4g.medium ≈ $1.762
Message broker (Kafka/MSK) — chạy 24/7 bất kể tải 3 broker m5.large + 900GB lưu trữ ≈ $550 6 broker + 1,8TB lưu trữ ≈ $1.100
Search (OpenSearch, dùng ngay từ đầu) 3 node r6g.large.search + 300GB ≈ $406 5 node + 500GB ≈ $677
Cache r6g.large × 1 node ≈ $184 r6g.xlarge + 1 replica ≈ $736
Lưu trữ đối tượng (S3) ~500GB ≈ $12,5 ~1,5TB ≈ $38
Load balancer/gateway ≈ $31 ≈ $61
Băng thông ra (CloudFront) ~400GB ≈ $34 ~1,2TB ≈ $102
WAF ≈ $25 ≈ $35
NAT Gateway ≈ $85 ≈ $125
Backup & DR (10 DB + 2 cụm) ≈ $50 ≈ $90
Observability (~25%) ≈ $715 ≈ $1.389
Môi trường non-prod (~40% — Kafka/OpenSearch tối thiểu vẫn cần ở Staging) ≈ $1.429 ≈ $2.777
Cộng hạ tầng/tháng ≈ $5.002 ≈ $9.721
Quy đổi VND/tháng ≈ 125,0 triệu ≈ 243,0 triệu

P1 3 năm (cùng cách tính Năm 1/2/3 như P2):

Kịch bản A Kịch bản B
Năm 1 (5 tháng) 625,2 triệu 1.215,1 triệu
Năm 2 (12 tháng) 1.500,5 triệu 2.916,2 triệu
Năm 3 (12 tháng × 1,1) 1.650,5 triệu 3.207,9 triệu
Tổng hạ tầng 3 năm 3.776,1 triệu 7.339,2 triệu

🔴 Chênh lệch hạ tầng P1 so với P2 đến chủ yếu từ hai cụm chạy 24/7 bất kể tải (Kafka/MSK + OpenSearch đa node) mà P1 phải có ngay từ ngày một, trong khi P2 hoãn OpenSearch và dùng SQS/EventBridge managed (không cụm phải patch/scale) — đúng như nhận định định tính ở OPT §4.


4. License & dịch vụ mua ngoài

Không phương án nào cần license phần mềm lõi thương mại (P3 — mua nền tảng — đã bị loại ở OPT §5). Các dòng dưới đây là công cụ/dịch vụ hỗ trợ vận hành.

Hạng mục Mô hình tính giá Đơn giá ước tính P2/năm P1/năm Nguồn
PagerDuty/OpsGenie (on-call) Theo user ~$21/user/tháng × 5 user ≈ 31,5 triệu ≈ 31,5 triệu ASM-11, đề xuất minh hoạ ở docs/sections/09 §9.4.1
Domain/SSL (ACM miễn phí + Route53) Cố định ~$15/năm domain + $6/tháng hosted zone ≈ 5 triệu ≈ 5 triệu ASM-11
SAST/SCA/APM tooling (SonarQube/Snyk/X-Ray) Theo seat/gói Gói nhỏ ước tính ≈ 80 triệu ≈ 80 triệu ASM-11, docs/sections/09 §9.3.1
Quản trị cụm Kafka/MSK bổ sung (Confluent Control Center hoặc tương đương) — — N/A (không cần) ≈ 20 triệu Chỉ P1 cần — MSK cần công cụ giám sát cụm riêng
Cộng/năm ≈ 116,5 triệu ≈ 136,5 triệu
Cộng 3 năm ≈ 349,5 triệu ≈ 409,5 triệu

🔴 Mô hình tính giá quan trọng hơn đơn giá — PagerDuty tính theo user, tăng cùng quy mô đội vận hành; nếu OQ-008 (đội vận hành) trả lời số người lớn hơn 5, chi phí này tăng tuyến tính.

8 khoản non-labor trong hồ sơ thầu (NL-01…NL-08, estimate.computed.json) — đối chiếu:

NL Hạng mục Xử lý trong TCO này
NL-01 Hạ tầng cloud AWS năm đầu Tính bằng công thức riêng ở §3 (không dùng số thầu, vì thầu chưa có số)
NL-02 OpenSearch cluster Tính trong §3 (P1: có ngay; P2: hoãn tới khi có bằng chứng cần)
NL-03 Phí giao dịch VNPay/Momo Chưa tính được — cần GMV (tổng giá trị giao dịch) giả định + biểu phí thật của VNPay/Momo, cả hai đều chưa có → OQ-014
NL-04 Phí Email/SMS Chưa tính được — nhà cung cấp cụ thể chưa chốt (SAD.md §3.4) nên chưa có biểu phí → OQ-016
NL-05 Phí API GHN/GHTK Chưa tính được — phí theo hợp đồng đơn vị vận chuyển, chưa có hợp đồng → OQ-015
NL-06 Domain/SSL/WAF Tính trong §3 (WAF) và §4 (domain/SSL)
NL-07 Pentest/ASV Chưa tính được — cần báo giá nhà cung cấp pentest tại VN, SA không có cơ sở để tự ước lượng đáng tin cậy → OQ-017
NL-08 Đào tạo & tài liệu bàn giao Trùng lặp một phần với §5 "Đào tạo" bên dưới (WBS-09 lao động đã tính trong chi phí xây dựng §6) — không cộng hai lần

5. Vận hành

Kế thừa giả định "team MVP chuẩn" DEC-02 (🔴) — số người/kỹ năng thật chưa xác nhận (OQ-008 còn mở). ASM-14: giả định 2 FTE Ops/SRE (P2) hoặc 2,5 FTE (P1, do nhiều service + Kafka/OpenSearch cần vận hành hơn) ở mức lương DEVOPS theo rate card hồ sơ thầu (75.000.000 VND/người-tháng).

Hạng mục Cách tính P2/năm P1/năm Nguồn
Nhân sự vận hành (Ops/SRE) P2: 2 FTE × 75tr × 12 · P1: 2,5 FTE × 75tr × 12 1.800 triệu 2.250 triệu ASM-14, DEC-02, bid-config.rateCard.DEVOPS
Trực sự cố / surge mùa cao điểm (kịch bản B, chỉ Năm 2/3) Ước tính phụ phí on-call mùa flash sale +200 triệu (2 năm) +600 triệu (2 năm) ASM-14
Đào tạo kỹ năng mới (sinh từ CON-05/OQ-010) P2: AWS ECS/SQS phổ biến hơn · P1: cần đào tạo Kafka/MSK/OpenSearch/EKS — kế thừa rủi ro năng lực team (ARISK-05) 50 triệu (Năm 1, một lần) 200 triệu (Năm 1, một lần) ASM-14, tham chiếu OPT §4 tiêu chí "Rủi ro kỹ thuật"
Công cụ (đã tính ở §4) — (xem §4) (xem §4)
Cộng vận hành 3 năm (kịch bản A) 5.400 triệu + 50 triệu = 5.450 triệu 6.750 triệu + 200 triệu = 6.950 triệu
Cộng vận hành 3 năm (kịch bản B) 5.400 + 200 + 50 = 5.650 triệu 6.750 + 600 + 200 = 7.550 triệu

🔴 CON-05/OQ-008 chưa trả lời số đội vận hành thật — nếu đội thật nhỏ hơn 2 FTE (VD PO chỉ định 1 người kiêm nhiệm), dòng này giảm nhưng rủi ro không đáp ứng DRV-05 (99.9% uptime, escalation 24/7) tăng — đây là đánh đổi PO/PM phải quyết, không phải SA tự chọn số nhỏ hơn cho TCO đẹp hơn.


6. Chi phí xây dựng (một lần)

Lấy nền từ estimate.computed.json/40-financial-proposal.md §C2–C5 (lao động dự thầu). Vì hồ sơ thầu ước lượng theo kiến trúc gốc kiểu P1 (Kafka/MSK, WBS-03 XL/high risk, 52 MD + 18,2 MD dự phòng = 70,2 MD), P2 cần tách riêng: SQS/EventBridge managed nhẹ hơn đáng kể — ASM-13 ước tính effort WBS-03 tương đương P2 chỉ bằng ~30% P1 (15,6 MD cơ sở + 20% dự phòng thấp hơn vì rủi ro công nghệ managed thấp hơn = 18,7 MD), chưa qua ước lượng lại chi tiết của nhà thầu.

Hạng mục P1 (theo hồ sơ thầu, VND) P2 (điều chỉnh theo ASM-13, VND)
Lao động (43 hạng mục WBS, 53,02 MM) 3.420.500.000 3.420.500.000 − 191.200.000 (giảm WBS-03) ≈ 3.229.300.000
VAT (10%) 342.050.000 322.930.000
Tổng (đã VAT) 3.762.550.000 3.552.230.000

Chi tiết ASM-13 (công thức giảm WBS-03): P1 WBS-03 = 70,2 MD, đơn giá bình quân theo tỷ trọng vai trò tham gia (PM 3,85% · SA 28,85% · BE 48,08% · DEVOPS 19,23%) ≈ 3.714.000 VND/MD ⇒ 70,2 MD × 3.714.000 ≈ 260,7 triệu VND. P2 WBS-03 ước 18,7 MD cùng tỷ trọng ⇒ 18,7 × 3.714.000 ≈ 69,5 triệu VND. Chênh lệch ≈ 191,2 triệu VND (chưa VAT), khớp hướng "-70,2 MD so với P1" đã nêu ở OPT §6.

🔴 ASM-13 — Chủ: Tech Lead + PM. Cách xác minh: nhà thầu/đội thi công ước lượng lại WBS-03 riêng cho kiến trúc P2 (SQS/EventBridge) thay vì suy tỷ lệ %. Hệ quả nếu sai: chi phí xây dựng một lần của P2 có thể lệch ±100–150 triệu VND so với số ở trên — không đổi kết luận "P2 rẻ hơn P1" (chênh lệch hạ tầng 3 năm lớn hơn nhiều biên độ sai số này).

Effort nghiệp vụ (WBS-18…43) không đổi giữa P1/P2 (đã xác nhận ở OPT §6) — không lặp lại bảng chi tiết ở đây, chỉ tham chiếu 40-financial-proposal.md §C2.


7. Tổng hợp 3 năm

Nhóm P2 — A P2 — B P1 — A P1 — B
Hạ tầng 1.818,8 triệu 4.425,8 triệu 3.776,1 triệu 7.339,2 triệu
License 349,5 triệu 349,5 triệu 409,5 triệu 409,5 triệu
Vận hành (gồm đào tạo) 5.450 triệu 5.650 triệu 6.950 triệu 7.550 triệu
Xây dựng (một lần, Năm 1) 3.552,2 triệu 3.552,2 triệu 3.762,6 triệu 3.762,6 triệu
Tổng 3 năm 11.170,5 triệu 13.977,5 triệu 14.898,2 triệu 19.061,3 triệu

Ghi chú khớp số (sửa tại v1.1): bảng §1 trước đây (v1.0) ghi nhầm dòng "Vận hành/nhân sự (3 năm)" của P2 — Kịch bản B là 5.800 triệu và Tổng 3 năm là 14.177,5 triệu (~14,18 tỷ) — đây là lỗi chép số ở §1, không phải sai lệch do làm tròn. Số đúng theo chi tiết cộng dồn ở §5 (2 FTE × 75tr × 12 × 3 năm = 5.400 triệu + surge kịch bản B 200 triệu = 5.600 triệu; cộng đào tạo 50 triệu = 5.650 triệu vận hành, khớp dòng "Vận hành (gồm đào tạo)" ở bảng này) là: dòng "Vận hành/nhân sự (3 năm)" P2-B = 5.600 triệu, Tổng 3 năm P2-B = 13.977,5 triệu (~13,98 tỷ). Bảng §1 đã được sửa lại khớp số này (xem Change Log v1.1). Các cột P2-A, P1-A, P1-B không bị ảnh hưởng bởi lỗi này.


8. Điểm nhạy cảm

Giả định Nếu sai ±50% thì tổng 3 năm lệch Cách giảm bất định
ASM-10 (kịch bản tải) Có thể đổi hẳn kịch bản áp dụng (A↔B), chênh lệch tới ~3–5 tỷ VND Đo tải thật sau soft-launch 4–6 tuần (khớp DRV-02)
ASM-11 (đơn giá AWS) ±50% đơn giá ⇒ hạ tầng 3 năm lệch ±0,9–3,7 tỷ VND tuỳ phương án/kịch bản Chạy AWS Pricing Calculator thật hoặc xin báo giá đại lý AWS tại VN trước khi duyệt ngân sách
ASM-12 (tỷ giá USD/VND) Tỷ lệ thuận với toàn bộ dòng hạ tầng Dùng tỷ giá bán ra của ngân hàng tại ngày lập ngân sách chính thức
ASM-14 (số FTE vận hành) ±50% ⇒ lệch ±2,7–3,5 tỷ VND (dòng chi phí lớn nhất trong toàn TCO) OQ-008 cần trả lời trước khi con số này được coi là đáng tin
ASM-13 (tách effort xây dựng P2) ±100–150 triệu VND (biên độ nhỏ so với tổng) Ước lượng lại WBS-03 riêng cho P2 khi vào GĐ2

🔴 Dòng nhạy cảm nhất là ASM-14 (vận hành/nhân sự) — không phải hạ tầng AWS như trực giác thường nghĩ. Nếu PO/PM chỉ có thể xác nhận 1 điều trước khi dùng TCO này, nên là OQ-008.


9. Điểm hoà vốn so với P0 (giữ nguyên hiện trạng)

Không áp dụng theo đúng nghĩa template — dự án là greenfield (CTX §4.1, OPT P0): không có hệ thống/chi phí vận hành hiện tại để so sánh, và P0 ("không làm gì") không tạo ra doanh thu để tính "tiết kiệm được". OPT §3 đã ghi rõ: hệ quả của P0 là định tính nghiêm trọng nhất (chặn toàn bộ mô hình kinh doanh marketplace theo DRV-01) nhưng không quy ra được một con số tiền cụ thể vì không có doanh thu mục tiêu bằng số trong nguồn hiện có. Đây là giới hạn đã biết của lượt chạy này — không phải SA bỏ sót.


10. Giả định & Ngoài phạm vi

Giả định (tiếp số từ CTX §5/OPT §8, bắt đầu ASM-10):

ID Giả định Nếu sai
ASM-10 Kịch bản tải A/B (§2) phản ánh đúng độ lớn thực tế của DRV-04 Toàn bộ TCO phải tính lại theo kịch bản đúng
ASM-11 Đơn giá AWS ap-southeast-1 ước tính ở §3.1 gần đúng với giá thật tại thời điểm duyệt ngân sách Chi phí hạ tầng 3 năm lệch tỷ lệ thuận — xem §8
ASM-12 Tỷ giá 1 USD ≈ 25.000 VND giữ ổn định trong 3 năm Chi phí hạ tầng lệch theo biến động tỷ giá thật
ASM-13 Effort xây dựng WBS-03 của P2 ước bằng ~30% P1 theo tỷ lệ suy diễn, chưa qua ước lượng lại chi tiết Chi phí xây dựng một lần của P2 lệch ±100–150 triệu VND
ASM-14 Đội vận hành 2 FTE (P2)/2,5 FTE (P1) đủ đáp ứng DRV-05 (99.9% uptime, escalation 24/7) Nếu đội thật nhỏ hơn: rủi ro không đạt DRV-05; nếu lớn hơn: chi phí vận hành tăng — xem ARISK-08
ASM-15 Tăng trưởng chi phí hạ tầng Năm 3 so với Năm 2 là +10% (không có số liệu thị trường cụ thể, chỉ là hệ số làm tròn hợp lý) Nếu tăng trưởng thật nhanh hơn (VD traffic tăng gấp đôi mỗi năm theo mô hình kinh doanh thành công), Năm 3 phải tính lại theo đúng kịch bản B hoặc kịch bản mới

Ngoài phạm vi:

  • Phí giao dịch VNPay/Momo, phí API GHN/GHTK, phí Email/SMS, phí pentest/ASV — không tính được vì thiếu biểu phí/hợp đồng nhà cung cấp thật, xem OQ-014…OQ-017.
  • Chi phí dịch thuật nội dung đa ngôn ngữ (FR-15) — đã loại trừ tường minh trong 40-financial-proposal.md §C1.1, không thuộc TCO kiến trúc này.
  • Ứng dụng di động native, affiliate marketing, subscription, hoá đơn điện tử tự động cho seller, SSO doanh nghiệp — ngoài phạm vi MVP theo 40-financial-proposal.md §C1.1 và CON-07.
  • Chi phí cơ hội của việc trì hoãn go-live (P0) — không quy ra được số, xem §9.
  • Kịch bản lai (P2 + Kafka/MSK riêng cho hot-path nếu POC-01 fail) — chưa tính; nếu POC-01 (xem ARISK_e-commerce_v1.0.md) thất bại, TCO P2 phải cộng thêm một phần chi phí MSK của P1 (§3.3, dòng "Message broker") cho riêng hot-path đặt hàng.

Tự chấm

① Bảng tự chấm Gate AG1 (workflow.md §2, cập nhật từ CTX/OPT)

# Tiêu chí ☐/✅ Ghi chú
1 CTX có DRV-nn ✅ Không đổi — xem CTX §2
2 CTX có CON-nn ✅ (với lưu ý) Không đổi — xem CTX §3
3 CTX mô tả hiện trạng as-is ✅ (với lưu ý) Không đổi — xem CTX §4
4 OPT có ≥2 phương án, chấm điểm, nêu phương án bị loại ✅ Không đổi — xem OPT §4/§5
5 TCO có chi phí 3 năm, ≥2 kịch bản tải ✅ Mới đạt ở lượt này — §1/§3/§7, 2 phương án × 2 kịch bản tải, tách 4 nhóm (hạ tầng/license/vận hành/xây dựng). Đơn giá AWS/tỷ giá/GMV nhiều chỗ 🔴 chưa xác minh (OQ-013…017) — đạt tiêu chí "có mặt và đủ cấu trúc", chưa đạt mức "số đã xác nhận thật"
6 ARISK có rủi ro cao kèm chủ + biện pháp ✅ Xem ARISK_e-commerce_v1.0.md §3 — 6 rủi ro 🔴, mỗi cái có chủ + biện pháp cụ thể (không phải "sẽ theo dõi")
7 Rủi ro cao chưa chứng minh được có kế hoạch POC ✅ Xem ARISK_e-commerce_v1.0.md §6 — POC-01/POC-02 có tiêu chí pass/fail viết trước

Kết luận tự chấm AG1: 7/7 tiêu chí có mặt về mặt cấu trúc — GĐ1 SA nay đủ 4 artifact (CTX/OPT/TCO/ARISK) để audit AG1. Nhưng chưa đủ điều kiện ký chính thức: nhiều dòng vẫn ở Confidence 🔴 vì (a) BA chưa ký G1 thật, (b) OQ-005/006/007/008/010/012 (ngân sách, deadline, residency, đội vận hành, năng lực team, thời điểm POC) còn mở, (c) OQ-013…017 (đơn giá AWS, phí đối tác) mới phát sinh ở TCO. Khuyến nghị: chạy POC-01/POC-02 và trả lời tối thiểu OQ-005/OQ-008/OQ-010 trước khi PO + Tech Lead ký AG1 thật.

② Checklist D1–D12 (design-rules.md)

# Mục ☐/✅ Ghi chú
D1 Một ADR một quyết định N/A Tài liệu này không có ADR
D2 Không NFR định tính N/A TCO không chứa QAS
D3 Nêu phương án bị loại + lý do N/A Đã nêu ở OPT §5; TCO chỉ định lượng hai phương án còn lại
D4 Sơ đồ khai báo mức + legend N/A Không có sơ đồ mới ở TCO
D5 Interface có chủ/contract N/A Chưa tới ICD
D6 Phụ thuộc ngoài process có timeout/retry N/A Chưa tới FAIL
D7 Một chủ sở hữu dữ liệu N/A Chưa tới DAT
D8 Ràng buộc có FIT hoặc nhãn khuyến nghị N/A Chưa tới AGD/FIT
D9 Con số hạ tầng quy ra tiền + nguồn; INF khớp TCO ✅ (với cờ cần xác minh) Mọi dòng hạ tầng ở §3 có công thức + đơn giá + nguồn (ASM-11, region, ngày tham chiếu ghi rõ "cần xác minh"); INF (GĐ2) sẽ phải khớp con số này hoặc giải thích chênh lệch
D10 Không quyết định thay người có thẩm quyền ✅ Ngân sách vượt/không vượt để PO quyết (§1 "phát hiện quan trọng nhất"); mọi giả định đơn giá/FX/team đều gắn OQ kèm hệ quả, không tự quyết
D11 Có mục "Ngoài phạm vi" + ASM-nn ✅ §10 đầy đủ, ASM-10…15 có cách xác minh/hệ quả
D12 Câu quy định thẩm quyền sơ đồ vs văn bản ✅ Có ngay sau Change Log

③ Danh sách OQ mở kèm người phải trả lời, chặn gì

OQ-013…017 (mới, xem §4/§8) cộng các câu còn mở từ CTX/OPT (OQ-001, 003, 004, 005, 006, 007, 008, 010, 012 — xem sổ đầy đủ 00-index/OQ_e-commerce.md). Quan trọng nhất cho TCO: OQ-005 (ngân sách — chặn việc coi con số TCO này là "đã duyệt hay chưa"), OQ-008 (đội vận hành — dòng nhạy cảm nhất, xem §8), OQ-013 (đơn giá AWS thật).

Nhắc: AG1 cần PO + Tech Lead ký (điền Approved by vào header OPT) trước khi chạy /sa-2-architecture.