scrum-master について
scrum-masterは、Scrum Masterやチーム向けのデータ分析スキルです。Pythonスクリプトでスプリント予測、健全性評価、レトロスペクティブ分析を行い、履歴データを指標や支援の手がかりにします。
主な機能
- 01速度の移動傾向とMonte Carlo予測
- 026つの観点によるスプリント健全性評価
- 03レトロスペクティブのテーマとアクション追跡
- 04チーム成熟度の段階分析
- 05テキストとJSON形式の出力
活用シーン
- 01過去の速度に基づくスプリントコミットメントの見積もり
- 02チームの健全性評価と介入優先度の決定
- 03レトロスペクティブのテーマとアクション完了状況の追跡
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ alirezarezvani/ claude-skills --skill scrum-masterインストール後、Claude Code で/scrum-masterを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
assets/expected_output.jsonexpected_velocity_output.jsonsample_sprint_data.jsonsprint_report_template.mdteam_health_check_template.mdreferences/retro-formats.mdteam-dynamics-framework.mdvelocity-forecasting-guide.mdscripts/retrospective_analyzer.pysprint_health_scorer.pyvelocity_analyzer.py詳細
スクラムマスターエキスパート
スプリント分析、確率的予測、チーム開発コーチングを組み合わせた、データ主導のスクラムマスタースキルです。独自の価値は3つの Python 分析スクリプトとそのワークフローにあります。フレームワークの詳細については、references/ と assets/ を参照してください。
目次
分析ツールと使い方
1. ベロシティアナライザー(scripts/velocity_analyzer.py)
スプリント履歴に対して、移動平均、線形回帰による傾向検出、モンテカルロシミュレーションを実行します。
# Text report
python velocity_analyzer.py sprint_data.json --format text
# JSON output for downstream processing
python velocity_analyzer.py sprint_data.json --format json > analysis.json
出力:ベロシティの傾向(改善/安定/低下)、変動係数、信頼区間が50/70/85/95%の6スプリント分のモンテカルロ予測、根本原因の提案を含む異常フラグ。
検証:入力に含まれるスプリントが3つ未満の場合は処理を中止し、ユーザーに次のように求めます。「ベロシティ分析には最低3スプリントが必要です。スプリントデータを追加してください。」 統計的に有意なモンテカルロ結果を得るには、6スプリント以上を推奨します。
2. スプリント健全性スコアラー(scripts/sprint_health_scorer.py)
重み付けされた6つのディメンションにわたってチームの健全性を採点し、全体評価を0~100で算出します。
| ディメンション | 重み | 目標 |
|---|---|---|
| コミットメントの信頼性 | 25% | スプリント目標の達成率が85%超 |
| スコープの安定性 | 20% | スプリント中の変更が15%未満 |
| ブロッカーの解消 | 15% | 平均3日未満 |
| セレモニーへの参加 | 15% | 参加率90%超 |
| ストーリー完了の分布 | 15% | 完了したストーリーの割合が高い |
| ベロシティの予測可能性 | 10% | CVが20%未満 |
python sprint_health_scorer.py sprint_data.json --format text
出力:全体の健全性スコアと評価、ディメンションごとのスコアと推奨事項、スプリントごとの傾向、介入の優先順位マトリクス。
検証:セレモニーとストーリー完了のデータを含むスプリントが2つ以上必要です。データが不足している場合は、採点できないディメンションを示し、不足分の提供をユーザーに求めます。
3. レトロスペクティブアナライザー(scripts/retrospective_analyzer.py)
アクションアイテムの完了状況、繰り返し現れるテーマ、感情の傾向、チームの成熟度の進展を追跡します。
python retrospective_analyzer.py sprint_data.json --format text
出力:優先度/担当者別のアクションアイテム完了率、繰り返し現れるテーマの持続スコア、チームの成熟度レベル(形成期/混乱期/統一期/機能期)、改善速度の傾向。
検証:アクションアイテムの追跡情報を含むレトロスペクティブが3件以上必要です。それより少ない場合は制限事項を説明し、テーマの部分的な分析のみを提案します。
入力要件
すべてのスクリプトは、assets/sample_sprint_data.json のスキーマに準拠する JSON を受け取ります。
{
"team_info": { "name": "string", "size": "number", "scrum_master": "string" },
"sprints": [
{
"sprint_number": "number",
"planned_points": "number",
"completed_points": "number",
"stories": [...],
"blockers": [...],
"ceremonies": {...}
}
],
"retrospectives": [
{
"sprint_number": "number",
"went_well": ["string"],
"to_improve": ["string"],
"action_items": [...]
}
]
}
Jira などのツールからスプリントデータをエクスポートし、スクリプトを実行する前にエクスポートしたフィールドをこのスキーマに対応付けます。6スプリント分の完全な例については assets/sample_sprint_data.json を、対応する期待値(ベロシティ平均20.2ポイント、CV 12.7%、健全性スコア78.3/100、アクションアイテム完了率46.7%)については assets/expected_output.json を参照してください。
スプリント実行ワークフロー
スプリント計画
- ベロシティ分析を実行します:
python velocity_analyzer.py sprint_data.json --format text - スプリントバックログの推奨コミットメント上限として、信頼区間70%を使用します。
- 健全性スコアラーの「コミットメントの信頼性」と「スコープの安定性」のスコアを確認し、プロダクトオーナーとの交渉方針を調整します。
- モンテカルロ出力で変動が大きい場合(CV >20%)は、単一の予測値ではなく範囲の推定値を関係者に提示します。
- レトロスペクティブで比較できるよう、キャパシティの前提(休暇、依存関係)を記録します。
デイリースタンドアップ
- 参加状況と支援を求めるパターンを追跡します — スプリント終了時に、セレモニーのデータを
sprint_health_scorer.pyに入力します。 - 各ブロッカーの発生日を記録します。解決までの時間は「ブロッカー解決」ディメンションに反映されます。
- ブロッカーが2日経っても未解決の場合は、事前にエスカレーションし、スプリントデータに記録します。
スプリントレビュー
- デモと併せてベロシティの推移と健全性スコアを提示し、ステークホルダーにデリバリーの状況を伝えます。
- レビューで挙がったスコープ変更の要望を収集し、次回のスコアリングサイクルに向けて、スプリントデータにスコープ変更イベントとして記録します。
スプリントレトロスペクティブ
- セッションの前に3つのスクリプトをすべて実行します:
python sprint_health_scorer.py sprint_data.json --format text > health.txt python retrospective_analyzer.py sprint_data.json --format text > retro.txt - 健全性スコアと、最も注目すべきディメンションを冒頭で提示し、話し合いの焦点を定めます。
- レトロスペクティブアナライザーのアクションアイテム完了率を使って、チームが現実的に対応できる新しいアクションアイテムの数を判断します(完了率が60%未満の場合は、目標を3件以下とします)。
- セッションを終える前に、各アクションアイテムの担当者と測定可能な成功基準を設定します。
- 次のサイクルで追跡できるよう、新しいアクションアイテムを
sprint_data.jsonに記録します。
チーム開発ワークフロー
アセスメント
python sprint_health_scorer.py team_data.json > health_assessment.txt
python retrospective_analyzer.py team_data.json > retro_insights.txt
- レトロスペクティブアナライザーの成熟度出力を、適切な開発段階に対応付けます。
- 匿名の心理的安全性パルスサーベイ(Edmondsonの7段階尺度)と、個別の1対1での観察結果で補完します。
- 成熟度の出力が
formingまたはstormingの場合は、プロセスの最適化よりも先に、安全性の確保と対立のファシリテーションに関する介入を優先します。
介入
段階に応じたファシリテーションを実施します(詳細は references/team-dynamics-framework.md を参照):
| 段階 | 焦点 |
|---|---|
| Forming | 構造、プロセスの教育、信頼の構築 |
| Storming | 対立のファシリテーション、心理的安全性の維持 |
| Norming | 自律性の向上、プロセスのオーナーシップの移譲 |
| Performing | 新たな課題の導入、イノベーションの支援 |
進捗測定
- スプリントごと:健全性スコアラーを再実行します。目標は、四半期ごとに総合スコアを5ポイント以上改善することです。
- 毎月:心理的安全性パルスサーベイを実施します。目標は4.0/5.0超です。
- 四半期ごと:レトロスペクティブアナライザーで成熟度を完全に再評価します。
- スコアが2スプリント連続で停滞または低下した場合は、介入戦略をエスカレーションします(
references/team-dynamics-framework.mdを参照)。
主要な指標と目標
| 指標 | 目標 |
|---|---|
| 総合健全性スコア | 80/100超 |
| 心理的安全性指数 | 4.0/5.0超 |
| ベロシティの変動係数(予測可能性) | 20%未満 |
| コミットメント達成率 | 85%超 |
| スコープの安定性 | スプリント中の変更が15%未満 |
| ブロッカー解決時間 | 3日未満 |
| セレモニーへの参加率 | 90%超 |
| レトロスペクティブのアクション完了率 | 70%超 |
制限事項
- サンプルサイズ:スプリントが6回未満の場合、モンテカルロ法の信頼度が低下します。点推定値ではなく、必ず信頼区間を示してください。
- データの完全性:セレモニーまたはストーリー完了に関するフィールドが欠けていると、該当するスコアリングディメンションに影響します。不足箇所を明示してください。
- コンテキストへの依存性:スクリプトによる推奨事項は、JSONデータでは捉えられない組織やチームの状況を踏まえて解釈する必要があります。
- 定量的な偏り:指標は定性的な観察に取って代わるものではありません。スコアとチームとの直接的なやり取りを組み合わせてください。
- チームの規模:この手法は5~9人のチーム向けに最適化されています。それより大きなチームでは調整が必要になる場合があります。
- 外部要因:チーム間の依存関係や組織上の制約は、単一チームの指標では完全にモデル化されません。
関連スキル
- アジャイルプロダクトオーナー(
product-team/agile-product-owner/)— ユーザーストーリーとバックログはスプリント計画に役立ちます - シニアPM(
project-management/senior-pm/)— ポートフォリオの健全性に関する状況は、スプリントの優先順位付けに役立ちます
フレームワークの詳細については、references/velocity-forecasting-guide.md および references/team-dynamics-framework.md を参照してください。テンプレートアセットについては、assets/sprint_report_template.md および assets/team_health_check_template.md を参照してください。