ケーススタディ(通し例)
テンプレがどのように連鎖するかを、1つのケースで示す。
注記: ここでの Issue 番号/PR 番号/指標は例示(架空)であり、実運用に合わせて読み替える。
通し例: 入力フォーム改善(誤操作率の低減)
前提(トリアージ)
- 種別:
type:feat - 優先度:
priority:P1(問い合わせ増加のため優先対応) - これは障害対応ではないため、Severity(incident-response)ではなく priority を使う
1) Issue作成(親Issue)
## 背景
- 未入力のまま保存してしまい問い合わせが増加(直近2週間で20件、誤操作率 5%)
## 目的
- 誤操作率を 5% → 1% 以下に低減し、問い合わせを減らす
## スコープ
- 入力フォームの必須項目バリデーション
- エラー文言の具体化(どの項目が不足か)
## 非スコープ
- 画面全体のデザイン刷新
- 文言ポリシーの全画面統一
## 受け入れ条件
- [ ] Given: 必須項目が未入力
- [ ] When: 保存を押す
- [ ] Then: 保存されず、どの項目が不足か分かる
- [ ] 計測: 誤操作率が 5% → 1% 以下(2週間移動平均、例)
## 影響
- リスク: 既存の自動入力が弾かれる可能性
- 依存: 文言ポリシー(別Issue)と整合が必要
## 責任分界(例)
- 判断: PM
- 実行: 開発
- 確認: CS
2) 分割(子Issue)
- 子Issue A(bug): 不正入力時に500になる(入力チェック不足)
- 子Issue B(feat): フロントで即時エラー表示(UX改善)
- 子Issue C(task): 変更後の監視(誤操作率/エラー率)を追加
依存: A→B→C の順(まずサーバ側の安全を確保し、次にUX、最後に運用/監視)。
3) DoR/DoD(入口/出口の合意)
- DoR: 背景/目的/受け入れ条件/非スコープ/リスクが揃っている
- DoD: 受け入れ条件を満たし、ロールバックが定義され、必要なドキュメント更新が終わっている
付録テンプレ: DoR/DoD
4) 進捗報告(定型で更新)
## 現状
- 子Issue A は再現できた。原因はサーバ側の必須項目チェック不足
- 子Issue B は実装中(feature flag で切替)
## 次にやること
- サーバ側のバリデーションを追加し、テストを整備
- E2Eで主要導線を確認
## ブロッカー
- 文言ポリシー(レビュー待ち)
## 期限
- YYYY-MM-DD(例)
## 次回更新予定時刻
- YYYY-MM-DD HH:mm(例)
## 支援依頼
- 文言ポリシーの決定(レビュー30分)
5) PR(レビュー可能な説明)
付録テンプレ: PRテンプレ
## 何を
- サーバ側の必須項目バリデーションを追加(不正入力で500にならない)
- エラー内容を項目単位で返す
## なぜ
- 不正入力が混入すると500になり、利用者も運用も原因が分からない
## 影響
- 影響範囲: 保存API(入力エラー時のレスポンスが変わる)
- リスク: クライアント側で想定していないエラー形式だと表示が崩れる
## テスト
- 単体: 必須/境界値のテスト追加
- E2E: 作成→保存→エラー表示→再保存
## ロールバック
- feature flag をOFF(Runbookに手順を追記)
## 関連Issue
- #123(親Issue、例)
6) 完了(クローズとナレッジ化)
完了の定義には「ドキュメント更新」を含める(Runbook/FAQ/ADR などに転記し、運用で再利用できる形にする)。
結論: 必須項目チェックを追加し、不正入力時に500にならないようにした
変更: PR #456
影響: 入力エラー時のレスポンス形式が変わる(互換性に注意)
運用: Runbook を更新(リンク)。監視ダッシュボードを更新(リンク)
ADR: バリデーション方式の決定を記録(リンク)
計測: 誤操作率 5% → 1.2%(暫定、今後2週間で再評価)
7) ADR(意思決定記録)
付録テンプレ: ADRテンプレ
関連(次に読むと良い)
- engineering-documentation-book(Runbook/手順書/障害報告): https://itdojp.github.io/engineering-documentation-book/
- incident-response-basics-book(Severity/連絡頻度/指揮系統): https://itdojp.github.io/incident-response-basics-book/
- evidence-based-engineering-book(一次情報/検証/根拠化): https://itdojp.github.io/evidence-based-engineering-book/