アジャイルアプローチの特徴
JSTQB アジャイルテスト担当者シラバスにおける、代表的なアジャイル開発手法と、それらに共通する重要なプラクティスについて整理します。
代表的なアジャイル開発アプローチ
Section titled “代表的なアジャイル開発アプローチ”アジャイルにはいくつかの種類があり、それぞれアジャイルマニフェストを異なる方法で実現しています。
1. エクストリームプログラミング (XP)
Section titled “1. エクストリームプログラミング (XP)”明確な価値、原則、およびプラクティスを特徴とする手法です。
- 5つの価値: コミュニケーション、シンプリシティ、フィードバック、勇気、リスペクト。
- 主なプラクティス: ペアプログラミング、テストファーストプログラミング、継続的インテグレーション(CI)など13の項目があります。
2. スクラム (Scrum)
Section titled “2. スクラム (Scrum)”マネジメントフレームワークとして広く普及している手法です。
- 3つの役割: スクラムマスター、プロダクトオーナー、開発チーム。
- 3つの作成物: プロダクトバックログ、スプリントバックログ、プロダクトインクリメント。
- イベント: スプリントという固定期間(2〜4週間)のイテレーションで開発を繰り返します。
3. カンバン (Kanban)
Section titled “3. カンバン (Kanban)”仕事の流れを可視化し、最適化することに重点を置いたマネジメント手法です。
- カンバンボード: 価値の連鎖を列(ステーション)で可視化します。
- WIP(仕掛り)の制限: 並行して実行するタスク数を制限し、フローを最適化します。
- リードタイム: タスクの開始から完了までの時間を最小化することを目指します。
アジャイルに共通するプラクティス
Section titled “アジャイルに共通するプラクティス”多くの手法で共通して採用されている、テスト担当者にとっても重要な活動です。
ユーザーストーリーの作成
Section titled “ユーザーストーリーの作成”開発者、テスト担当者、ビジネス代表者の三者が協調して要件を記述します。
- 3Cコンセプト: カード(記述)、対話(説明)、確認(受け入れ基準による完了確認)の3要素で構成されます。
- INVEST技法: 独立性、交渉可能、価値、見積り可能、小さい、テスト可能の6項目でストーリーを改善します。
ふりかえり (Retrospectives)
Section titled “ふりかえり (Retrospectives)”各イテレーションの最後に行い、プロセスや人間関係、ツールの改善を議論します。 テスト担当者はユニークな視点を提供し、テスト効率や品質改善に寄与します。
継続的インテグレーション (CI)
Section titled “継続的インテグレーション (CI)”変更を少なくとも1日に1回以上マージし、自動化されたビルドとテストを実行します。 エラーの早期検知と、コード品質に関する素早いフィードバックを可能にします。
リリース計画とイテレーション計画
Section titled “リリース計画とイテレーション計画”- リリース計画: プロダクトバックログを定義し、プロジェクト/品質リスクの分析や工数見積りを行います(概要レベル)。
- イテレーション計画: 直近のイテレーションで実施するストーリーを選択し、具体的なタスクに分解します(詳細レベル)。