# SCS-000　服務程式設計規格總覽與模板

| 項目 | 內容 |
|---|---|
| 文件編號 | SCS-000 |
| 版本 | 1.0 |
| 狀態 | 已核定 |
| 撰寫者 | SA / Tech Lead |
| 關聯文件 | `GOV-005`（To-Be Scope）、`GOV-003`（Coding Gate） |

---

## 1. 目的

`SCS`（Service Coding Spec）為**服務／程式層級**之設計規格，補足既有文件之斷層：

```
需求（BRD）→ 架構（SAD/SDD）→ 【SCS：程式怎麼寫】→ 程式碼 → 測試（TRR）
```

**無 SCS 不寫程式**（`GOV-003` 之 Coding Gate）。

---

## 2. 命名與存放

- 命名：`SCS-<NNN>_<服務名>服務程式設計規格.md`
- 存放：`docs/07-scs/`
- 序號：依服務開發順序編列，不跳號

| 編號 | 服務 | 狀態 |
|---|---|---|
| SCS-001 | `authorization-service`（授權） | 已核定（回溯補建） |
| SCS-002 | `limit-service`（額度） | 已核定（回溯補建） |
| SCS-003 | `card-service`（卡片） | 已核定（回溯補建） |
| SCS-004 | `party-service`（當事人） | 已核定（規格先行·示範） → **已實作並實測通過**（2026-09-19） |
| SCS-005 | `product-service`（產品） | 已核定（規格先行） |
| SCS-006 | `pricing-service`（費率利息） | 已核定（規格先行） |
| SCS-007 | `posting-service`（入帳分戶） | 已核定（規格先行） → **已實作並實測通過**（2026-09-19） |
| SCS-008 | `payment-service`（繳款） | 已核定（規格先行） → **已實作並實測通過**（2026-09-19） |
| SCS-009 | `installment-service`（分期） | 已核定（規格先行） |
| SCS-010 | `rewards-service`（紅利點數） | 已核定（規格先行） |
| SCS-011 | `statement-service`（帳單） | 已核定（規格先行） → **已實作並實測通過**（2026-09-19） |
| SCS-012 | `dispute-service`（爭議帳款） | 已核定（規格先行；FR 待補） |
| SCS-013 | `clearing-service`（清算結算） | 已核定（規格先行） |
| SCS-014 | `merchant-service`（特約商店收單） | 已核定（規格先行） |
| SCS-015 | `migration-service`（遷移波次） | 已核定（規格先行；DDL 待補） |
| SCS-016 | `notification-service`（通知） | 已核定（規格先行；DDL 待補） |
| SCS-017 | `report-service`（報表） | 已核定（規格先行；DDL 待補） |
| SCS-018 | WebUI 前端（跨域） | 已核定（規格先行·跨域） |
| SCS-019 | 批次框架與作業（跨域） | 已核定（規格先行·跨域） |
| SCS-020 | 監控與觀測機制（跨域） | 已核定（規格先行·跨域） |
| SCS-021 | 系統效能與非功能（跨域） | 已核定（規格先行·跨域） |
| SCS-022 | `auth`/`security`（認證與授權） | 已核定（規格先行） |
| SCS-023 | `product`（卡片商品組合） | 已核定（規格先行） |
| SCS-024 | `onboarding`（進件處理） | 已核定（規格先行） |
| SCS-025 | `underwriting`（徵審介面契約） | 已核定（規格先行） |
| SCS-026 | `campaign`（行銷活動 Campaign 模型，跨域聚合） | 規格先行（草案 v2.0，★ 依 `BRD-005` 設計，待核定） |

---

## 3. 必備章節（模板）

撰寫時**逐節填寫**；不適用者寫「不適用」並說明原因，不得整節留白。

```markdown
# SCS-00X　<服務名>服務程式設計規格

## 1. 對應需求
| FR 編號 | 需求名稱 | 來源（建議書章節） |

## 2. 服務職責與邊界
- 承作：
- 不做（屬他服務）：

## 3. 領域模型
- 聚合／值物件：
- 狀態機（含轉換表，標注錯誤碼）

## 4. 程式結構
| 套件／類別 | 職責 | 對應需求 |

## 5. 資料模型
| 表 | 關鍵欄位 | 約束（實測） |

## 6. API 設計
| 端點 | 請求 | 回應 | 錯誤碼 |

## 7. 關鍵邏輯
- 檢核順序、交易邊界、演算法

## 8. 外部依賴與降級
| 依賴 | 失敗處理（Stand-in） |

## 9. 測試案例（對應 TRP-001）

## 10. 已知限制（誠實揭露）
```

---

## 4. 撰寫原則

1. **可追溯**：每節盡量標注 FR/NFR 編號
2. **與實物一致**：程式結構、欄位約束須為**實測值**，不得憑印象
3. **誠實揭露**：未實作範圍寫入 §10，不得掩飾

---

## 5. 修訂記錄

| 版本 | 說明 |
|---|---|
| 1.0 | 初版：依 `GOV-005` 建立 SCS 文件類型 |
