Scrum|Kanban|Extreme Programming わかりやすく解説
アジャイル開発にはさまざまなアプローチがありますが、ISTQB Agile Tester Extension では特に以下の3つを重点的に学びます。
-
Extreme Programming(XP)
-
Scrum(スクラム)
-
Kanban(カンバン)
多くの企業では、Scrum を中心に XP や Kanban のプラクティスを組み合わせて利用しています。本記事では、それぞれの特徴を「初学者でも理解しやすいように」具体例つきで解説します。
1. Extreme Programming(XP:エクストリーム・プログラミング)
XP は、**“開発者と顧客の密接な連携”と“品質を作り込むための開発プラクティス”**が特徴です。
テストよりも開発工程に多くの時間を使うため、早い段階で欠陥を最小化することを重視します。
XP の5つの価値(Values)
XP ではソフトウェア開発を成功させるために、以下の価値を大切にします。
|
価値 |
説明 |
|---|---|
|
Communication(コミュニケーション) |
チーム内での情報共有と対話を重視 |
|
Simplicity(シンプリシティ) |
まずは「最も簡単な解決策」から始める |
|
Feedback(フィードバック) |
こまめに確認し、誤りを早期に修正 |
|
Courage(勇気) |
新しい挑戦や改善を恐れない姿勢 |
|
Respect(尊重) |
チームの成果や意見を尊重し協力する |
具体例
大きな機能を一度に作らず、まずはシンプルな動く版(MVP)を作り、
顧客のフィードバックをもらいながら少しずつ改善する、というアプローチです。
XP の主なプラクティス(13 の代表例)
-
ペアプログラミング
開発者2人で1つのPCを使い、コードの品質を高める。
-
継続的インテグレーション(CI)
小さな変更を頻繁にビルドし、欠陥を早期発見。
-
テストファースト(TDD)
機能を作る前にテストを書き、品質を担保。
-
10分ビルド
ビルド時間は短くし、素早いフィードバックを得る。
-
ストーリー(ユーザーストーリー)
顧客の価値に基づいてタスクを作成。
XP は現在では単体で使われることは減ってきており、
Scrum や Kanban と組み合わせて使われることが多いです。
2. Scrum(スクラム)
もっとも一般的で、世界中の企業で広く使われているアジャイル開発手法です。
Scrum の基本概念
● スプリント(Sprint)
-
Scrum の1つの開発サイクル
-
期間:2〜4週間が一般的(ISTQB では2〜4週間)
この短い期間で、計画 → 開発 → テスト → 振り返りまでを実施します。
● プロダクトインクリメント
各スプリントで追加される機能や成果物のこと。
「動くソフトウェア」を毎回少しずつ完成に近づけます。
● バックログ(Backlog)
|
種類 |
内容 |
|---|---|
|
プロダクトバックログ |
プロジェクト全体のタスク一覧(優先度つき) |
|
スプリントバックログ |
今回のスプリントで実施するタスク |
例:
-
「ログイン機能」 → プロダクトバックログ
-
今回のスプリントでは「パスワード入力UI」「入力チェック」などに分解
● Definition of Done(DoD:完了の定義)
タスクが「完了」と言える基準のこと。
例:
-
コードレビュー完了
-
単体テスト通過
-
受け入れ条件(AC)を満たす
-
No critical defects
ISTQB では「退出条件(Exit Criteria)」と同じ意味で扱われます。
● タイムボックス(Timeboxing)
各イベントには必ず時間の上限が設定されます。
例:
-
デイリースクラム:15分
-
スプリント期間:2週間
時間管理を厳格に行い、無駄な作業を最小化します。
● 透明性(Transparency)
チーム全員が作業状況を見える化すること。
例:
-
かんばんボード
-
バーンダウンチャート
-
デイリースクラムで共有
Scrum の3つの主要ロール
|
ロール |
役割 |
|---|---|
|
Scrum Master |
プロセスの改善、障害除去、ファシリテーション |
|
Product Owner(PO) |
要件定義、優先順位付け、顧客を代表 |
|
Development Team |
開発者・テスターなどプロダクトを作るチーム |
3. Kanban(カンバン)
可視化とフロー最適化を重視したアプローチ。
Scrum と組み合わせる企業も多いです。
Kanban の特徴
● Kanban ボード
一般的には4列構成:
-
To Do
-
In Progress(作業中)
-
Verify(レビュー・テスト)
-
Done(完了)
チーム全員が状況をリアルタイムで把握できます。
● WIP(Work In Progress)制限
同時に進めるタスク数の上限を決めるルール。
例:
-
「In Progress は最大3枚まで」
-
→ メンバーが抱え込みすぎるのを防ぎ、効率が上がる
● リードタイム(Lead Time)
タスクの開始から完了までにかかる平均時間を管理。
例:
-
「要件作成 → 開発 → テスト → 完了」までの流れを最適化する
-
リードタイムを短くすることでスループットが向上
まとめ:Scrum・Kanban・XP の違い(簡易比較表)
|
アプローチ |
主な目的 |
特徴 |
|---|---|---|
|
Scrum |
少ない期間で価値ある成果物を作る |
スプリント、役割、イベントが明確 |
|
Kanban |
フローの最適化と改善 |
ボード、WIP制限、リードタイム管理 |
|
XP |
品質を組み込む開発手法 |
TDD, CI, ペアプロなど具体的プラクティスが豊富 |
🔧 実務での使われ方の例
● Scrum + Kanban
スプリントで開発しつつ、日々のタスク管理は Kanban ボードで可視化。
● Scrum + XP
Scrum のプロセスに、XP の開発プラクティス(TDD/CI/ペアプロ)を追加して品質向上。


コメント