d2-function-listlisted
Install: claude install-skill Acceler-Digital/karura
# D2: 機能一覧
## 前提: karura-conventions 規約の遵守(必須)
**本成果物を生成・更新する前に、必ず `karura-conventions` スキルを参照し、その全規約に従うこと。** 規約に反する出力をしてはならない。
## inputする成果物
| 成果物のパス | 内容 |
|---|---|
| `docs/D1.business-requirements/use-case-list.md` | 上流のユースケース一覧(**機能抽出の主たる起点**。各 UC を実現するシステム機能を抽出し、`UC-*` を「関連 UC」列に引く) |
| `docs/D1.business-requirements/domain-requirements/*.md` | 上流のドメイン要求仕様書群(ドメイン共通要求仕様書を含む)。個別書の §業務ルール(`DOM-<コード>-BR-*`)が機能能力、§業務運用イレギュラー対応(`DOM-<コード>-IRR-*`)が例外系の根拠。ドメイン共通要求仕様書の §機能要求(`DOM-COMMON-FR-*`)が横断共通機能の根拠 |
| `docs/D1.business-requirements/product-requirement-document.md` | 上流の PRD(スコープ境界・[フェーズ2] 境界の判定根拠) |
| `docs/D1.business-requirements/user-story-list.md` | 上流のユーザーストーリー一覧(`US-*`。機能の網羅・利用アクター確認の補助) |
| `docs/D1.business-requirements/actor-list.md` | アクター一覧(`ACT-*` の参照元) |
## outputする成果物
| 成果物のパス | 内容 |
|---|---|
| `docs/D2.system-requirements/function-list.md` | 機能一覧本体(単一のフラット表)。骨組みは `.claude/skills/d2-function-list/template.md` に従う |
## 機能の粒度(UC 実現単位)
**本書の最重要原則**。1 機能は「ある UC の主要価値を実現するためにシステムが提供する、識別可能な機能能力(capability)」。
- **抽出の起点は UC**: 各 UC について「実現にシステムは何を提供する必要があるか」を問う。**1 UC → 通常 1〜3 機能**。
- **密結合は束ねる**: 入力とその場の検証 等、一体提供される能力は分割しない。CRUD の機械分割(登録/参照/更新/削除を別機能)はしない。
- **横断共通機能は 1 つに集約**: 複数 UC から再利用される能力(認証・中断/再開・通知配信・帳票出力・同意取得/撤回/更新・縮退運用・例外UX、外部連携の KYC・反社・電子署名・真実性措置)は `機能分類 = 横断` で 1 機能に集約し、関連 UC 列に呼び出し元 UC を併記する(アクター別・業務局面別に割らない)。
- **下限**: 単一フィールド検証 等、オペレーション未満には刻まない。
- **上限**: 工程まるごと(`設計書作成機能` 等)を 1 機能にしない。機能名が複数能力を接続詞でつないでいたら分解サイン。
- **例外系**: 同一機能のインライン例外(IRR)