398 lines
36 KiB
Markdown
398 lines
36 KiB
Markdown
# 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`.
|