アジャイル開発プロセスにおいて「スリーアミーゴス」と呼ばれるアプローチが注目を集めている。誰が何をするものなのか。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
アジャイル開発におけるスリーアミーゴスアプローチとは、曖昧さのない実用的なユーザーストーリーを案出するための、効率と効果が最も高いアプローチの一つだ。プロダクトオーナー、開発者、テスト担当者を小さなチームに分割する。各チームのメンバーには定められた役割があり、各自の専門分野に基づいて独自の視点を持ち込む。このチームがユーザーストーリーを案出する。
アジャイルコーチのジョン・スマート氏によると、チームは、要求する立場、提案する立場、異議を唱える立場という役割を担うものだという。こうした役割に分かれて議論を進めることで、ソフトウェア開発の各段階で議論が深まり、効率的な問題解決が図れるとしている。
スリーアミーゴスアプローチでは、プロダクトオーナーや業務アナリストが、通常、解決する必要のある問題を提示し、解決策を求める。解決策を求められた開発者は、解決案を提示する。テスト担当者は、異議を唱える立場として、開発者の提案に影響を及ぼす可能性のあるシナリオや懸念事項が全てユーザーストーリーに含まれていることを確認する。
スリーアミーゴスアプローチにおいては、テスト担当者が重要な役割を担うことになる。テスト担当者は疑問を提起することに慣れており、異議を唱える立場として理想的だ。テスト担当者に十分な情報がなければ、テストケース、エッジケース、ネガティブテストケースが見落とされる可能性がある。
テスト担当者の疑問は、業務のルールや要件を明確にするだけではなく、技術設計や開発アプローチを改善する可能性もある。テスト担当者は、業務のルールや要件を見極めるために、具体的な例に基づく疑問を通じて要件を引き出す。これは「Specification by Example」(SBE)とも呼ばれている。
例えば、ある小売業者がWebサイトでの購入ではなく、実店舗での購入に対して追加のロイヤリティーポイントを提供したいとした場合、テスト担当者は、このシナリオに基づいて、次のような疑問を提起する。
テスト担当者が提起する疑問は、業務のルールや要件だけでなく、技術要件にも注目する。技術要件に関する疑問は、統合や、パフォーマンスとセキュリティなどの非機能要件に関係するのが一般的だ。前述の例なら、ロイヤルティーポイントと顧客のアカウントを結び付ける方法や、店舗のクレジットカードの明細にロイヤルティーポイントを表示する方法について、疑問を提起することになるかもしれない。スリーアミーゴスアプローチで見落としたことは、後のアジャイルプロセスの品質と速度に悪影響を及ぼす恐れがある。
スリーアミーゴスアプローチを実践することで、ユーザーストーリーのバックログが素早く調整され、エンドツーエンドのフローやハッピーパス、エッジケースなどの複雑なテストケースを整備できるようになり、開発者は議論で得られた洞察から、全ての要件を満たし、エッジケースのシナリオを適切に処理するコードを開発できるようになる。
ソフトウェアの欠陥を効果的に防ぎ、品質と速度の両方を向上する理想のシフトレフトが実現できるだろう。
Copyright © ITmedia, Inc. All Rights Reserved.