@k2works/claude-code-booster 1.13.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/bin/claude-code-booster +5 -7
  2. package/lib/assets/.claude/README.md +73 -19
  3. package/lib/assets/.claude/agents/xp-architect.md +250 -0
  4. package/lib/assets/.claude/agents/xp-executive.md +207 -0
  5. package/lib/assets/.claude/agents/xp-interaction-designer.md +239 -0
  6. package/lib/assets/.claude/agents/xp-product-manager.md +245 -0
  7. package/lib/assets/.claude/agents/xp-programmer.md +268 -0
  8. package/lib/assets/.claude/agents/xp-project-manager.md +229 -0
  9. package/lib/assets/.claude/agents/xp-technical-writer.md +224 -0
  10. package/lib/assets/.claude/agents/xp-tester.md +265 -0
  11. package/lib/assets/.claude/agents/xp-user-representative.md +204 -0
  12. package/lib/assets/.claude/skills/ai-agent-guidelines/SKILL.md +49 -57
  13. package/lib/assets/.claude/skills/analyzing-architecture/SKILL.md +54 -58
  14. package/lib/assets/.claude/skills/analyzing-business/SKILL.md +52 -74
  15. package/lib/assets/.claude/skills/analyzing-data-model/SKILL.md +50 -53
  16. package/lib/assets/.claude/skills/analyzing-domain-model/SKILL.md +56 -56
  17. package/lib/assets/.claude/skills/analyzing-inception-deck/SKILL.md +56 -109
  18. package/lib/assets/.claude/skills/analyzing-non-functional/SKILL.md +61 -57
  19. package/lib/assets/.claude/skills/analyzing-operation/SKILL.md +61 -57
  20. package/lib/assets/.claude/skills/analyzing-requirements/SKILL.md +57 -55
  21. package/lib/assets/.claude/skills/analyzing-tech-stack/SKILL.md +66 -67
  22. package/lib/assets/.claude/skills/analyzing-test-strategy/SKILL.md +58 -56
  23. package/lib/assets/.claude/skills/analyzing-ui-design/SKILL.md +51 -57
  24. package/lib/assets/.claude/skills/analyzing-usecases/SKILL.md +45 -60
  25. package/lib/assets/.claude/skills/creating-adr/SKILL.md +38 -40
  26. package/lib/assets/.claude/skills/developing-backend/SKILL.md +49 -55
  27. package/lib/assets/.claude/skills/developing-frontend/SKILL.md +47 -50
  28. package/lib/assets/.claude/skills/developing-release/SKILL.md +60 -95
  29. package/lib/assets/.claude/skills/generating-slides/SKILL.md +58 -100
  30. package/lib/assets/.claude/skills/git-commit/SKILL.md +27 -52
  31. package/lib/assets/.claude/skills/killing-processes/SKILL.md +16 -70
  32. package/lib/assets/.claude/skills/operating-backup/SKILL.md +59 -0
  33. package/lib/assets/.claude/skills/operating-cicd/SKILL.md +54 -0
  34. package/lib/assets/.claude/skills/operating-deploy/SKILL.md +67 -0
  35. package/lib/assets/.claude/skills/{managing-docs → operating-docs}/SKILL.md +1 -1
  36. package/lib/assets/.claude/skills/operating-provision/SKILL.md +77 -0
  37. package/lib/assets/.claude/skills/operating-setup/SKILL.md +63 -0
  38. package/lib/assets/.claude/skills/orchestrating-analysis/SKILL.md +65 -95
  39. package/lib/assets/.claude/skills/orchestrating-development/SKILL.md +60 -155
  40. package/lib/assets/.claude/skills/orchestrating-operation/SKILL.md +158 -0
  41. package/lib/assets/.claude/skills/orchestrating-project/SKILL.md +60 -119
  42. package/lib/assets/.claude/skills/planning-releases/SKILL.md +63 -168
  43. package/lib/assets/.claude/skills/syncing-github-project/SKILL.md +62 -266
  44. package/lib/assets/.claude/skills/tracking-progress/SKILL.md +49 -122
  45. package/lib/assets/CLAUDE.md +7 -2
  46. package/lib/assets/README.md +3 -34
  47. package/lib/assets/docs/development/index.md +14 -8
  48. package/lib/assets/docs/reference//351/201/213/347/224/250/343/202/271/343/202/257/343/203/252/343/203/227/343/203/210/344/275/234/346/210/220/343/202/254/343/202/244/343/203/211.md +421 -0
  49. package/lib/assets/docs/reference//351/226/213/347/231/272/343/202/254/343/202/244/343/203/211.md +69 -5
  50. package/lib/assets/docs/template/AWS/343/202/271/343/203/206/343/203/274/343/202/270/343/203/263/343/202/260/347/222/260/345/242/203/343/202/273/343/203/203/343/203/210/343/202/242/343/203/203/343/203/227/346/211/213/351/240/206/346/233/270.md +1366 -0
  51. package/lib/assets/docs/template/AWS/343/203/227/343/203/255/343/203/200/343/202/257/343/202/267/343/203/247/343/203/263/347/222/260/345/242/203/343/202/273/343/203/203/343/203/210/343/202/242/343/203/203/343/203/227/346/211/213/351/240/206/346/233/270.md +634 -0
  52. package/lib/assets/docs/template//343/202/242/343/203/227/343/203/252/343/202/261/343/203/274/343/202/267/343/203/247/343/203/263/351/226/213/347/231/272/347/222/260/345/242/203/343/202/273/343/203/203/343/203/210/343/202/242/343/203/203/343/203/227/346/211/213/351/240/206/346/233/270.md +547 -0
  53. package/lib/assets/docs/template//343/202/244/343/203/206/343/203/254/343/203/274/343/202/267/343/203/247/343/203/263/350/250/210/347/224/273.md +123 -1
  54. package/lib/assets/docs/template//350/250/255/350/250/210.md +12 -2
  55. package/lib/assets/docs/template//351/226/213/347/231/272/347/222/260/345/242/203/343/202/273/343/203/203/343/203/210/343/202/242/343/203/203/343/203/227/346/211/213/351/240/206/346/233/270.md +688 -0
  56. package/package.json +1 -1
  57. package/lib/assets/.claude/SKILLS_TEMPLATE.md +0 -100
  58. package/lib/assets/.claude/agents/roles/.gitkeep +0 -0
  59. package/lib/assets/.claude/skills/managing-operations/DEPLOY.md +0 -77
  60. package/lib/assets/.claude/skills/managing-operations/SETUP_CSHARP.md +0 -80
  61. package/lib/assets/.claude/skills/managing-operations/SETUP_FRONTEND.md +0 -84
  62. package/lib/assets/.claude/skills/managing-operations/SETUP_JAVA.md +0 -75
  63. package/lib/assets/.claude/skills/managing-operations/SKILL.md +0 -156
@@ -1,137 +1,84 @@
1
1
  ---
2
2
  name: analyzing-inception-deck
3
- description: インセプションデッキの作成を支援。プロジェクトの「なぜ」「何を」「どうやって」を 10 の問いで整理し、チーム全体の認識を揃える。プロジェクト立ち上げやインセプションデッキの作成・更新時に使用。
3
+ description: インセプションデッキの作成を支援。プロジェクトの「なぜ」「何を」「どうやって」を 10 の問いで整理し、チーム全体の認識を揃える。「インセプションデッキを作りたい」「プロジェクトの方向性を整理したい」「10 の問いに答えたい」「チームの認識を揃えたい」「プロジェクトを立ち上げる」といった場面で発動する。プロジェクトの方向性を最初に揃えておくことで、後工程での手戻りを大幅に減らせる。
4
4
  ---
5
5
 
6
- # インセプションデッキ作成支援
6
+ # インセプションデッキ作成
7
7
 
8
- プロジェクトの方向性・スコープ・リスク・トレードオフをチーム全体で共有するためのインセプションデッキを作成します。ビジネスアーキテクチャ分析書(`analyzing-business`)の成果物をもとに、10 の問いに回答する形式で整理します。
8
+ プロジェクトの方向性・スコープ・リスク・トレードオフをチーム全体で共有するためのインセプションデッキを作成する。ビジネスアーキテクチャ分析書(`analyzing-business` の成果物)をもとに、10 の問いに回答する形式で整理する。
9
9
 
10
- ## Instructions
10
+ インセプションデッキは「チーム全員が同じ方向を向く」ための道具であり、完璧な計画書ではない。不明点は仮定を明記し、後続のステークホルダーレビューで検証する方が、分析を止めるより効果的。
11
11
 
12
- ### 1. 参照ドキュメント
12
+ ## 参照ドキュメントとテンプレート
13
13
 
14
- - @docs/reference/開発ガイド.md - 開発ライフサイクルにおけるインセプションデッキの位置づけ
14
+ | 種類 | パス | 備考 |
15
+ |------|------|------|
16
+ | ガイド | @docs/reference/開発ガイド.md | 開発ライフサイクルにおける位置づけ |
17
+ | テンプレート | @docs/template/インセプションデッキ.md | 編集禁止。コピーして使用する |
18
+ | 入力 | @docs/analysis/business_architecture.md | ビジネスアーキテクチャ分析書 |
19
+ | 成果物 | `docs/analysis/inception-deck.md` | テンプレートを基に作成 |
15
20
 
16
- ### 2. テンプレート
21
+ ## 10 の問いと情報源
17
22
 
18
- - @docs/template/インセプションデッキ.md - インセプションデッキテンプレート(**編集禁止**)
23
+ ビジネスアーキテクチャ分析書から情報を抽出し、各問いに回答する。ビジネスアーキテクチャ分析書が未作成の場合は、プロジェクトの基本情報をヒアリングして直接回答する。
19
24
 
20
- ### 3. 入力
25
+ | # | 問い | 主な情報源 |
26
+ |---|------|-----------|
27
+ | 1 | なぜやるのか? | ケイパビリティヒートマップの低成熟度領域、バリューストリームのボトルネック |
28
+ | 2 | どんなビジョンなのか? | ビジネスプリンシプル、ガイディングプリンシプル、価値提案 |
29
+ | 3 | どんな価値をもたらすのか? | ビジネスモデルキャンバスの価値提案・主要活動 |
30
+ | 4 | スコープの範囲はどこか? | バリューストリーム、ケイパビリティマップ、ビジネスシナリオ |
31
+ | 5 | 主なステークホルダーは? | 組織マップ、ビジネスシナリオのアクター一覧 |
32
+ | 6 | 基本的な解決策は? | ガイディングプリンシプル(アプリケーション・データ・テクノロジー) |
33
+ | 7 | 主なリスクは何か? | ビジネス環境、組織体制、技術的制約 |
34
+ | 8 | どのくらい作業があり費用はいくらか? | 組織マップの人員構成、フィーチャの優先度 |
35
+ | 9 | トレードオフにどう向き合うか? | ビジネスプリンシプル(時間・予算・品質・スコープの優先度) |
36
+ | 10 | 初回リリースはいつか? | フェーズ分割に基づくマイルストーン |
21
37
 
22
- - @docs/analysis/business_architecture.md - ビジネスアーキテクチャ分析書(`analyzing-business` の成果物)
23
- - プロジェクトの基本情報(組織体制、技術方針、開発チーム構成)
38
+ ## 作成の進め方
24
39
 
25
- ### 4. 成果物
40
+ ### 新規作成
26
41
 
27
- - @docs/analysis/inception-deck.md - インセプションデッキ
42
+ 1. `docs/analysis/business_architecture.md` が存在するか確認する。存在しない場合は `analyzing-business` スキルを先に実行するか、基本情報をヒアリングする
43
+ 2. テンプレート(@docs/template/インセプションデッキ.md)を読み込む
44
+ 3. 10 の問いに順番に回答する。各問いの回答にはビジネスアーキテクチャ分析書からの根拠を示す
45
+ 4. 概念アーキテクチャ図を PlantUML で作成する(問い 6)
46
+ 5. マイルストーンの Gantt チャートを PlantUML で作成する(問い 10)
47
+ 6. `docs/analysis/inception-deck.md` として出力する
28
48
 
29
- ### 5. 作業内容
49
+ ### 途中から再開・更新
30
50
 
31
- テンプレートの 10 の問いに対し、ビジネスアーキテクチャ分析書の情報を抽出・整理して回答する。
51
+ 既存の `docs/analysis/inception-deck.md` がある場合は、まずその内容を確認する。更新が必要な問いのみを修正する。
32
52
 
33
- #### なぜやるのか?
53
+ **Example:**
34
54
 
35
- - ビジネスアーキテクチャのケイパビリティヒートマップから成熟度が低い領域を特定
36
- - バリューストリームのボトルネックや非効率を課題として抽出
37
- - 現状の問題を簡潔かつ明確に記述
38
-
39
- #### どんなビジョンなのか?
40
-
41
- - ビジネスプリンシプルとガイディングプリンシプルからビジョンを導出
42
- - ビジネスモデルキャンバスの価値提案をシステムのビジョンに変換
43
-
44
- #### どんな価値をもたらすのか?
45
-
46
- - ビジネスモデルキャンバスの価値提案・主要活動から具体的なビジネス目標を一覧化
47
- - 各目標に対して期待される効果を定義
48
-
49
- #### スコープの範囲はどこか?
50
-
51
- - バリューストリームとケイパビリティマップから優先度付きのフィーチャを抽出
52
- - スコープ内(必須・高・中)、スコープ外、未決定の 3 カテゴリで整理
53
- - ビジネスシナリオのユースケースを機能要求の根拠とする
54
-
55
- #### 主なステークホルダーは?
56
-
57
- - 組織マップとビジネスシナリオのアクター一覧からステークホルダーを特定
58
- - 各ステークホルダーの役割と主な関心事を整理
59
-
60
- #### 基本的な解決策はどのようなものになるか?
61
-
62
- - ガイディングプリンシプル(アプリケーション・データ・テクノロジー)から技術方針を導出
63
- - PlantUML で概念アーキテクチャ図を作成
64
- - 外部連携(API、配送業者、FBA 等)との接点を明示
65
-
66
- #### 主なリスクは何か?
67
-
68
- - ビジネス環境、組織体制、技術的制約からリスクを特定
69
- - 各リスクの影響度と対策を一覧化
70
-
71
- #### どのくらい作業があり、費用はいくらか?
72
-
73
- - 組織マップの人員構成をもとにチーム構成を想定
74
- - フィーチャの優先度に基づきフェーズを分割
75
- - 各フェーズの概算期間を見積もり
76
-
77
- #### トレードオフにどう向き合うか?
78
-
79
- - 「時間」「予算」「品質」「スコープ」の 4 要素について方針を決定
80
- - ビジネスプリンシプルに基づき、固定する要素と柔軟にする要素を明確化
81
- - 品質特性の優先順位を定義
82
-
83
- #### 初回リリースが可能になるのはいつか?
84
-
85
- - フェーズ分割に基づくマイルストーンを PlantUML の Gantt チャートで作成
86
- - MVP(最小実行可能製品)のリリースポイントを明示
87
- - 段階的リリース戦略を定義
88
-
89
- ### 6. 注意事項
90
-
91
- - **前提条件**: @docs/analysis/business_architecture.md が作成済みであること(`analyzing-business` を先に実行)
92
- - **制限事項**: テンプレート @docs/template/インセプションデッキ.md は絶対に編集しないこと
93
- - **推奨事項**: 10 の問いすべてに回答し、不明点は仮定を明記した上で後続のステークホルダーレビューで検証する
94
-
95
- ### 7. 記述ルール
96
-
97
- タスク項目などは一行開けて記述する。
98
-
99
- OK:
100
-
101
- ```markdown
102
- **受入条件**:
103
-
104
- - [ ] 10 の問いすべてに回答されている
105
- - [ ] ビジネスアーキテクチャ分析書との整合性が確認されている
55
+ ```
56
+ ユーザー: 「スコープが変わったのでインセプションデッキを更新したい」
57
+ 回答: 既存のインセプションデッキを読み込み、問い 4(スコープ)と
58
+ 問い 8(作業量・費用)、問い 10(マイルストーン)を更新する。
106
59
  ```
107
60
 
108
- NG:
61
+ ## PlantUML の活用
109
62
 
110
- ```markdown
111
- **受入条件**:
112
- - [ ] 10 の問いすべてに回答されている
113
- - [ ] ビジネスアーキテクチャ分析書との整合性が確認されている
114
- ```
63
+ 問い 6 と問い 10 では PlantUML を使って視覚的に表現する。図があることでチーム間の認識合わせが格段にスムーズになる。
115
64
 
116
- ## Examples
65
+ - **概念アーキテクチャ図**(問い 6): コンポーネント図で主要なシステム要素と外部連携を示す
66
+ - **マイルストーン Gantt チャート**(問い 10): フェーズ分割と MVP リリースポイントを示す
117
67
 
118
- ### 新規プロジェクトでインセプションデッキを作成
68
+ ## スライド生成
119
69
 
120
- 1. @docs/analysis/business_architecture.md を読み込む
121
- 2. テンプレートの 10 の問いに沿って情報を整理
122
- 3. 概念アーキテクチャ図とマイルストーンの Gantt チャートを PlantUML で作成
123
- 4. @docs/analysis/inception-deck.md として出力
70
+ インセプションデッキの Markdown ドキュメントが完成したら、`generating-slides` スキルで PowerPoint スライドを生成できる。チームへのプレゼンテーション用に活用する。
124
71
 
125
- ### 既存インセプションデッキの更新
72
+ ## 注意事項
126
73
 
127
- 1. 既存の @docs/analysis/inception-deck.md を読み込む
128
- 2. ビジネスアーキテクチャ分析書の更新内容を反映
129
- 3. リスク・スコープ・マイルストーンを見直し
74
+ - ビジネスアーキテクチャ分析書が前提だが、未作成でもプロジェクト情報から直接作成可能。完璧な入力を待つより、仮定を置いて進める方が効果的
75
+ - テンプレートは編集禁止。コピーして成果物を作成する
76
+ - タスク項目(リスト)の前には空行を入れる(Markdown Lint 準拠)
130
77
 
131
- ### 関連スキル
78
+ ## 関連スキル
132
79
 
133
- - `analyzing-business` : 前提となるビジネスアーキテクチャ分析(本スキルの入力を生成)
134
- - `analyzing-requirements` : 後続の要件定義(インセプションデッキのスコープを詳細化)
135
- - `analyzing-usecases` : 後続のユースケース作成(スコープ内フィーチャの具体化)
136
- - `planning-releases` : 後続のリリース計画(マイルストーンを詳細化)
137
- - `generating-slides` : インセプションデッキの PowerPoint スライド生成
80
+ - `analyzing-business` 前提となるビジネスアーキテクチャ分析(本スキルの入力を生成)
81
+ - `analyzing-requirements` 後続の要件定義(スコープを詳細化)
82
+ - `generating-slides` インセプションデッキの PowerPoint スライド生成
83
+ - `planning-releases` 後続のリリース計画(マイルストーンを詳細化)
84
+ - `orchestrating-analysis` 分析フェーズ全体のワークフロー案内
@@ -1,91 +1,95 @@
1
1
  ---
2
2
  name: analyzing-non-functional
3
- description: 非機能要件を定義。性能、セキュリティ、可用性、保守性の要件策定。非機能要件やシステム品質の検討時に使用。
3
+ description: 性能、セキュリティ、可用性、保守性、拡張性の非機能要件を測定可能な形で定義。「非機能要件を定義したい」「SLA を決めたい」「セキュリティ要件を整理したい」「性能目標を設定したい」「可用性の目標を決めたい」といった場面で発動する。非機能要件を事前に定義することで、リリース後の「遅い」「落ちる」「危ない」を防ぐ。
4
4
  ---
5
5
 
6
- # 非機能要件定義支援
6
+ # 非機能要件定義
7
7
 
8
- 性能、セキュリティ、可用性などの非機能要件を定義します。
8
+ 性能、セキュリティ、可用性、保守性、拡張性の非機能要件を測定可能な形で定義する。
9
9
 
10
- ## Instructions
10
+ 非機能要件は「システムがどう振る舞うべきか」を定義する。機能要件だけでシステムを作ると、性能劣化・セキュリティ脆弱性・障害時の長時間停止といった問題が本番で初めて発覚する。数値目標を先に定めることで、アーキテクチャ選定とテスト戦略に明確な基準を与える。
11
11
 
12
- ### 1. 参照ドキュメント
12
+ ## 参照ドキュメントとテンプレート
13
13
 
14
- - @docs/reference/非機能要件定義ガイド.md - 非機能要件定義の進め方
14
+ | 種類 | パス | 備考 |
15
+ |------|------|------|
16
+ | ガイド | @docs/reference/非機能要件定義ガイド.md | 非機能要件定義の進め方詳細 |
17
+ | テンプレート | @docs/template/設計.md | 編集禁止。コピーして使用する |
18
+ | 入力 | @docs/requirements/requirements_definition.md | 要件定義 |
19
+ | 入力 | @docs/design/architecture_backend.md | バックエンドアーキテクチャ |
20
+ | 入力 | @docs/design/architecture_frontend.md | フロントエンドアーキテクチャ |
21
+ | 入力 | @docs/design/architecture_infrastructure.md | インフラストラクチャアーキテクチャ |
22
+ | 成果物 | `docs/design/non_functional.md` | 非機能要件定義 |
15
23
 
16
- ### 2. 入力
24
+ ## 性能要件
17
25
 
18
- - @docs/requirements/requirements_definition.md - 要件定義
19
- - @docs/design/architecture_backend.md - バックエンドアーキテクチャ
20
- - @docs/design/architecture_frontend.md - フロントエンドアーキテクチャ
21
- - @docs/design/architecture_infrastructure.md - インフラストラクチャアーキテクチャ
26
+ ユーザー体験に直結する指標を定義する。曖昧な「速い」ではなく、具体的な数値で定義せよ。
22
27
 
23
- ### 3. 成果物
28
+ - **レスポンスタイム**: 画面操作ごとの応答時間目標(p50/p95/p99)を設定する
29
+ - **スループット**: 単位時間あたりの処理件数を定義する
30
+ - **同時接続数**: ピーク時の同時接続ユーザー数を見積もる
24
31
 
25
- - @docs/design/non_functional.md - 非機能要件定義
32
+ ## セキュリティ要件
26
33
 
27
- ### 4. 作業内容
34
+ 守るべき資産とリスクに応じたセキュリティ対策を定義する。過剰防衛はコストの無駄、過小防衛はインシデントの元。
28
35
 
29
- #### 性能要件
36
+ - **認証・認可**: 認証方式(OAuth2、SAML 等)と認可モデル(RBAC、ABAC 等)を決定する
37
+ - **データ暗号化**: 通信経路と保存データの暗号化方式を定義する
38
+ - **監査ログ**: 誰が・いつ・何をしたかを追跡可能にする
30
39
 
31
- - レスポンスタイム
32
- - スループット
33
- - 同時接続数
40
+ ## 可用性要件
34
41
 
35
- #### セキュリティ要件
42
+ ビジネスインパクトに応じた稼働目標を設定する。99.9% と 99.99% ではコストが桁違いになることを意識せよ。
36
43
 
37
- - 認証・認可
38
- - データ暗号化
39
- - 監査ログ
44
+ - **稼働率目標**: SLA として定義する稼働率を設定する
45
+ - **障害復旧時間(RTO)**: 障害発生からサービス復旧までの目標時間を設定する
46
+ - **データ復旧時点(RPO)**: データ損失の許容範囲を設定する
40
47
 
41
- #### 可用性要件
48
+ ## 保守性要件
42
49
 
43
- - 稼働率目標
44
- - 障害復旧時間(RTO)
45
- - データ復旧時点(RPO)
50
+ 運用チームが日常的に必要とする機能を定義する。
46
51
 
47
- #### 保守性要件
52
+ - **ログ出力**: ログレベル・出力先・保持期間を定義する
53
+ - **監視項目**: メトリクス収集の対象と閾値を設定する
54
+ - **アラート設定**: 通知先と重要度レベルを定義する
48
55
 
49
- - ログ出力
50
- - 監視項目
51
- - アラート設定
56
+ ## 拡張性要件
52
57
 
53
- #### 拡張性要件
58
+ 将来のスケールに備えた設計指針を定義する。
54
59
 
55
- - スケーラビリティ
56
- - 将来の拡張性
60
+ - **スケーラビリティ**: 水平/垂直スケーリングの方針を定める
61
+ - **将来の拡張性**: 想定される拡張シナリオと対応方針を記載する
57
62
 
58
- ### 5. 注意事項
63
+ ## 作成の進め方
59
64
 
60
- - **前提条件**: 機能要件とアーキテクチャ設計が完了していること
61
- - **制限事項**: 非機能要件は測定可能な形で定義すること
62
- - **推奨事項**: SLA/SLO を明確に定義する
65
+ 1. 入力ドキュメント(要件定義、アーキテクチャ設計)を確認する
66
+ 2. @docs/reference/非機能要件定義ガイド.md を読み込む
67
+ 3. 各カテゴリの非機能要件を測定可能な数値で定義する
68
+ 4. `docs/design/non_functional.md` として出力する
63
69
 
64
- ### 6. 記述ルール
70
+ ## 途中から再開する場合
65
71
 
66
- タスク項目などは一行開けて記述する。
72
+ 既存の `docs/design/non_functional.md` がある場合は、まずその内容を確認する。不足しているカテゴリや数値の見直しが必要な部分のみを修正する。
67
73
 
68
- OK:
74
+ **Example:**
69
75
 
70
- ```markdown
71
- **受入条件**:
72
-
73
- - [ ] 性能要件が定義されている
74
- - [ ] セキュリティ要件が定義されている
75
76
  ```
76
-
77
- NG:
78
-
79
- ```markdown
80
- **受入条件**:
81
- - [ ] 性能要件が定義されている
82
- - [ ] セキュリティ要件が定義されている
77
+ ユーザー: 「性能要件は定義した。セキュリティ要件を整理したい」
78
+ 回答: 既存の non_functional.md の性能要件を確認し、
79
+ セキュリティ要件の定義に進む。認証・認可方式、
80
+ 暗号化方式、監査ログの要件を具体的な数値・方式で定義する。
83
81
  ```
84
82
 
85
- ## Examples
83
+ ## 注意事項
84
+
85
+ - 機能要件とアーキテクチャ設計が完了していることが前提。未完了でも進めて構わない
86
+ - 非機能要件は必ず測定可能な形で定義する。「高速であること」ではなく「p95 で 200ms 以内」のように書け
87
+ - SLA/SLO を明確に定義し、ビジネス側との合意を取る前提で記載する
88
+ - タスク項目(リスト)の前には空行を入れる(Markdown Lint 準拠)
86
89
 
87
- ### インフラアーキテクチャに基づく非機能要件定義
90
+ ## 関連スキル
88
91
 
89
- 1. アーキテクチャドキュメントを読み込む
90
- 2. @docs/reference/非機能要件定義ガイド.md に基づいて定義
91
- 3. 測定可能な形で各非機能要件を策定
92
+ - `orchestrating-analysis` — 分析フェーズ全体のワークフロー案内
93
+ - `analyzing-architecture` — 前段のアーキテクチャ設計
94
+ - `analyzing-operation` — 後続の運用要件定義(非機能要件が入力になる)
95
+ - `analyzing-test-strategy` — 後続のテスト戦略(性能テストの基準になる)
@@ -1,91 +1,95 @@
1
1
  ---
2
2
  name: analyzing-operation
3
- description: 運用要件を定義。運用フロー、監視設計、障害対応手順の策定。運用設計や監視体制の検討時に使用。
3
+ description: 運用フロー、監視設計、バックアップ、障害対応、変更管理の運用要件を定義。「運用要件を定義したい」「監視設計をしたい」「障害対応手順を作りたい」「バックアップ方針を決めたい」「運用フローを整理したい」といった場面で発動する。運用要件を事前に設計することで、本番稼働後の「運用できない」問題を防ぐ。
4
4
  ---
5
5
 
6
- # 運用要件定義支援
6
+ # 運用要件定義
7
7
 
8
- 運用フロー、監視、バックアップなどの運用要件を定義します。
8
+ 運用フロー、監視、バックアップ、障害対応、変更管理の運用要件を定義する。
9
9
 
10
- ## Instructions
10
+ 運用はシステムのライフサイクルの中で最も長い期間を占める。開発時に運用を考慮しないと、リリース後に「監視がない」「復旧手順がない」「変更のたびにダウンタイムが発生する」といった問題が噴出する。運用設計は「作った後どう維持するか」を先に決める活動。
11
11
 
12
- ### 1. 参照ドキュメント
12
+ ## 参照ドキュメントとテンプレート
13
13
 
14
- - @docs/reference/運用要件定義ガイド.md - 運用要件定義の進め方
14
+ | 種類 | パス | 備考 |
15
+ |------|------|------|
16
+ | ガイド | @docs/reference/運用要件定義ガイド.md | 運用要件定義の進め方詳細 |
17
+ | テンプレート | @docs/template/設計.md | 編集禁止。コピーして使用する |
18
+ | 入力 | @docs/requirements/requirements_definition.md | 要件定義 |
19
+ | 入力 | @docs/design/architecture_infrastructure.md | インフラストラクチャアーキテクチャ |
20
+ | 入力 | @docs/design/non_functional.md | 非機能要件定義 |
21
+ | 成果物 | `docs/design/operation.md` | 運用要件定義 |
15
22
 
16
- ### 2. 入力
23
+ ## 運用フロー設計
17
24
 
18
- - @docs/requirements/requirements_definition.md - 要件定義
19
- - @docs/design/architecture_infrastructure.md - インフラストラクチャアーキテクチャ
20
- - @docs/design/non_functional.md - 非機能要件定義
25
+ 定常運用を自動化前提で設計する。手動運用が多いほど人的ミスのリスクが上がる。
21
26
 
22
- ### 3. 成果物
27
+ - **日次運用**: ログローテーション、バッチ処理、ヘルスチェックなど
28
+ - **月次運用**: セキュリティパッチ適用、容量管理、レポート生成など
29
+ - **年次運用**: ライセンス更新、DR テスト、監査対応など
23
30
 
24
- - @docs/design/operation.md - 運用要件定義
31
+ ## 監視設計
25
32
 
26
- ### 4. 作業内容
33
+ SLA/SLO を満たすために必要な監視を設計する。アラート疲れを防ぐため、本当に対応が必要なアラートのみを設定せよ。
27
34
 
28
- #### 運用フロー設計
35
+ - **監視項目の定義**: CPU、メモリ、ディスク、レスポンスタイム、エラー率など
36
+ - **アラート閾値の設定**: Warning/Critical の閾値を非機能要件の数値に基づいて設定する
37
+ - **エスカレーションフロー**: アラート重要度に応じた通知先と対応フローを定義する
29
38
 
30
- - 日次運用
31
- - 月次運用
32
- - 年次運用
39
+ ## バックアップ設計
33
40
 
34
- #### 監視設計
41
+ RPO(データ復旧時点)を満たすバックアップ方式を設計する。リストア手順のテストまでがバックアップ設計。
35
42
 
36
- - 監視項目の定義
37
- - アラート閾値の設定
38
- - エスカレーションフロー
43
+ - **バックアップ方式**: フルバックアップ/差分バックアップ/増分バックアップの組み合わせを決定する
44
+ - **バックアップスケジュール**: RPO に基づいた頻度を設定する
45
+ - **リストア手順**: 復旧手順を文書化し、定期的にテストする
39
46
 
40
- #### バックアップ設計
47
+ ## 障害対応設計
41
48
 
42
- - バックアップ方式
43
- - バックアップスケジュール
44
- - リストア手順
49
+ RTO(障害復旧時間)を満たす復旧手順を設計する。障害時にゼロから考えるのは最悪のパターン。
45
50
 
46
- #### 障害対応設計
51
+ - **障害検知方法**: 自動検知の仕組みとその精度を定義する
52
+ - **復旧手順**: 障害パターンごとの復旧手順を事前に文書化する
53
+ - **連絡体制**: オンコール体制とエスカレーションパスを定義する
47
54
 
48
- - 障害検知方法
49
- - 復旧手順
50
- - 連絡体制
55
+ ## 変更管理設計
51
56
 
52
- #### 変更管理設計
57
+ 本番環境への変更を安全に行うための手順を設計する。ロールバック手順がないリリースは許可するな。
53
58
 
54
- - リリース手順
55
- - ロールバック手順
56
- - 変更承認フロー
59
+ - **リリース手順**: デプロイの自動化手順を定義する
60
+ - **ロールバック手順**: 問題発生時の切り戻し手順を事前に準備する
61
+ - **変更承認フロー**: 変更の影響範囲に応じた承認プロセスを定義する
57
62
 
58
- ### 5. 注意事項
63
+ ## 作成の進め方
59
64
 
60
- - **前提条件**: 非機能要件とインフラアーキテクチャが完了していること
61
- - **制限事項**: 運用手順は自動化を前提に設計すること
62
- - **推奨事項**: IaC(Infrastructure as Code)を活用する
65
+ 1. 入力ドキュメント(非機能要件、インフラアーキテクチャ)を確認する
66
+ 2. @docs/reference/運用要件定義ガイド.md を読み込む
67
+ 3. 運用フロー→監視→バックアップ→障害対応→変更管理の順に設計する
68
+ 4. `docs/design/operation.md` として出力する
63
69
 
64
- ### 6. 記述ルール
70
+ ## 途中から再開する場合
65
71
 
66
- タスク項目などは一行開けて記述する。
72
+ 既存の `docs/design/operation.md` がある場合は、まずその内容を確認する。不足している運用領域や更新が必要な手順のみを修正する。
67
73
 
68
- OK:
74
+ **Example:**
69
75
 
70
- ```markdown
71
- **受入条件**:
72
-
73
- - [ ] 運用フローが定義されている
74
- - [ ] 監視設計が完了している
75
76
  ```
76
-
77
- NG:
78
-
79
- ```markdown
80
- **受入条件**:
81
- - [ ] 運用フローが定義されている
82
- - [ ] 監視設計が完了している
77
+ ユーザー: 「監視設計はできた。障害対応手順を作りたい」
78
+ 回答: 既存の operation.md の監視設計を確認し、
79
+ 監視で検知されるアラートに対応する障害対応手順を設計する。
80
+ 障害パターンの分類→復旧手順→連絡体制の順で作成する。
83
81
  ```
84
82
 
85
- ## Examples
83
+ ## 注意事項
84
+
85
+ - 非機能要件とインフラアーキテクチャが完了していることが前提。未完了でも進めて構わない
86
+ - 運用手順は自動化を前提に設計する。IaC(Infrastructure as Code)を活用し、手動手順を最小化せよ
87
+ - リストア手順とロールバック手順は必ずテスト可能な形で文書化する
88
+ - タスク項目(リスト)の前には空行を入れる(Markdown Lint 準拠)
86
89
 
87
- ### SLA を満たすための運用要件定義
90
+ ## 関連スキル
88
91
 
89
- 1. 非機能要件とインフラアーキテクチャを読み込む
90
- 2. @docs/reference/運用要件定義ガイド.md に基づいて定義
91
- 3. SLA を満たすための運用フロー、監視、障害対応を策定
92
+ - `orchestrating-analysis` — 分析フェーズ全体のワークフロー案内
93
+ - `analyzing-non-functional` — 前段の非機能要件定義(SLA/SLO が入力)
94
+ - `analyzing-architecture` — インフラアーキテクチャが運用設計の基盤
95
+ - `managing-operations` — 開発フェーズでの実際の環境構築・デプロイ