requirements-analysis について
Requirements Analysisは、ソフトウェア要件の整理と検証を支援するスキルです。要件の分類、根本原因の掘り下げ、SMART基準、エッジケース、受け入れ基準を含む文書化を扱います。
主な機能
- 01機能要件と非機能要件の分類
- 025 Whysによる分析
- 03SMART基準での要件評価
- 04エッジケースと制約の検討
- 05受け入れ基準の検証と記録
活用シーン
- 01依頼の背後にある本来のニーズの明確化
- 02要件のテスト可能性と完全性の確認
- 03受け入れ基準を含む機能文書の作成
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ dralgorhythm/ claude-agentic-framework --skill requirements-analysisインストール後、Claude Code で/requirements-analysisを入力して読み込まれたか確認します。
詳細
要件分析
要件の種類
機能要件
システムが何をするかを示します。
- 「ユーザーはメールアドレスとパスワードでログインできます」
- 「システムは注文確認メールを送信します」
非機能要件
システムがどのように動作するかを示します。
- パフォーマンス:「ページの読み込みが 2 秒未満」
- セキュリティ:「パスワードは bcrypt で保存」
- スケーラビリティ:「同時に 10,000 人のユーザーに対応」
制約
ソリューションに対する制限です。
- 「既存の認証システムを使用する必要がある」
- 「AWS で実行する必要がある」
分析手法
「なぜ?」を 5 回尋ねる
本当の要件を明らかにします。
Requirement: "Add export to Excel button"
Why? → "Users need to share reports"
Why? → "Finance reviews monthly sales"
Why? → "They compare against targets"
Why? → "To identify underperforming regions"
Real Need: Regional performance dashboard
SMART 基準
要件は次の条件を満たす必要があります。
- Specific(具体的):明確で曖昧さがない
- Measurable(測定可能):達成を検証できる
- Achievable(達成可能):技術的に実現可能
- Relevant(関連性がある):目標に沿っている
- Time-bound(期限がある):期限が設定されている
エッジケース分析
- データがない場合はどうなりますか?
- データが多すぎる場合はどうなりますか?
- ユーザーがオフラインの場合はどうなりますか?
- 権限が拒否された場合はどうなりますか?
要件の検証
- テスト可能ですか?
- 達成可能ですか?
- 必要ですか?
- 他の要件との一貫性がありますか?
- 完全ですか?
- 優先度は明確ですか?
要件の文書化
**REQ-001**: User Authentication
**Description**: Users must authenticate to access the system.
**Acceptance Criteria**:
1. Given valid credentials, user gains access
2. Given invalid credentials, user sees error
3. After 5 failed attempts, account is locked
**Priority**: Must Have
**Dependencies**: REQ-002 (User Management)
コメント
Markdown 対応