アジャイル開発では、テストと開発の進め方が従来型(ウォーターフォール)と大きく異なります。
この記事では、ISTQB Agile Tester Extension Chapter 2「アジャイルテストの原則・プラクティス・プロセス」の最初のテーマである
「2.1.1 Testing and Development Activities」テストと開発の活動の違いを、初心者にもわかりやすく解説します。
■ 1. 従来型とアジャイルの大きな違い
● 従来型(ウォーターフォール)
-
開発期間が長く、6〜9か月後にようやく最初の成果物がクライアントへ届く
-
ドキュメントが多く、事前作業が膨大
-
テスターと開発者が別々に動きやすい
-
フィードバックが遅く、手戻りが大きくなりがち
● アジャイル
-
2週間前後の短いイテレーション(スプリント)で「動くソフトウェア」を提供
-
クライアント(ビジネス)、開発者、テスターの三者が密に協力
-
ドキュメントより動くプロダクトを優先
-
「早い&頻繁なフィードバック」が基本思想
-
テスターも設計初期から関わり、品質メンバーとして開発チーム全体をサポート
■ 2. アジャイルにおけるテスト・開発の特徴的な活動
◆ 2.1 バグ修正を最優先(Fix Bugs First)
アジャイルでは、前のイテレーションで未解決のバグは次のイテレーション開始時に最優先で修正します。
理由:
-
早期に対応しないと品質リスクが増える
-
放置すると次イテレーションの作業に影響
-
手戻りが大きくなるため、早く処理する方が効率的
例:
-
Sprint 1 の動作確認で5件のバグ
→ Sprint 2 の最初のタスクが「その5件の修正」になる
◆ 2.2 ハードニング(安定化)イテレーション
通常のイテレーション間に短い安定化期間を挟むことがあります。
目的:
-
前イテレーションで残った細かい対応を完了
-
全体の統合確認を実施
-
次のスプリントでの作業をスムーズに開始するための準備
◆ 2.3 継続的インテグレーション(CI)
アジャイルでは、コードを継続的にビルド・統合し、問題を早期に発見します。
自動化されるもの:
-
静的解析
-
自動ビルド
-
単体テスト
-
デプロイ
ポイント:
-
一度にまとめて統合しないためトラブルを早期に発見できる
-
「動くものをすぐ確認できる」ためフィードバックが早い
◆ 2.4 ペアリング(Pairing)
アジャイル開発では“ペアで作業する”文化が根付いています。
組み合わせは以下の2種類:
-
テスター × テスター
→ テスト観点の漏れ防止、品質強化
-
開発者 × テスター
→ 実装とテスト観点を同時に確認しながら進める
→ 手戻りが大幅減
例:ペアテスト
-
1人がテスト実行
-
もう1人が確認・記録
→ 終了後にすぐフィードバックし改良できる
◆ 2.5 テスターは「品質コーチ」にもなる
アジャイルではテスターが開発チーム全体に品質の知識を共有し、
チームの「品質能力」を向上させる役割も担います。
例:
-
開発者に単体テストのコツを伝える
-
バグ原因分析の方法を説明
-
「どんな観点が抜けやすいか」を共有
従来型のように「テスター=テスト担当者」ではなく、
品質を作り込むチーム全体のガイドになるのが特徴です。
◆ 2.6 自動化テストの比率が高い
アジャイルでは短期間で繰り返しリリースするため、
70〜80%程度を自動化テストでカバーするのが一般的です。
例:
-
単体テスト(ユニットテスト)
-
API自動テスト
-
ビルド後のスモークテスト
-
UI自動テスト(必要に応じて)
自動化によって、毎回手動で実行する手間を減らし、
品質を維持しながら高速に開発を進められます。
◆ 2.7 インフォーマルなテクニックの活用
アジャイルではスピードが重要のため、
重いレビューや形式的な手順ではなく、軽量・非形式的な方法が多く使われます。
例:
-
ペアレビュー
-
デイリースクラムでの口頭レビュー
-
ホワイトボードでの即席レビュー
これにより、無駄な時間を減らし、価値に直結する作業に集中できます。
◆ 2.8 要求変更はいつでも歓迎(Welcome Changes)
アジャイルでは、イテレーション中であってもクライアントが要求変更を提案可能です。
例:
-
スプリント10日間の6日目に新要望
→ チームで優先度を調整し、反映を検討
柔軟に変化へ対応することが、アジャイルの最大の価値のひとつです。
■ まとめ
アジャイルにおけるテスト・開発活動のポイントは以下の通りです。
-
短いスプリントで動くソフトを提供し続ける
-
テスター・開発者・ビジネスが一体となって協力
-
未解決バグは最優先で修正
-
継続的インテグレーションで品質を早期に確保
-
ペアリングやインフォーマルなテクニックを積極活用
-
テスターは品質コーチとしてチームを支援
-
高い自動化テスト比率で高速リリース
-
要求変更はいつでも歓迎
ISTQB Agile Tester試験では、
「従来型とアジャイルの違い」
「テスターの役割の変化」
が頻出ポイントですので、しっかり押さえておきましょう。


コメント