目次
1. アジャイル開発とは何か
定義
アジャイル開発(Agile Development)とは、
短い開発サイクルを繰り返しながら、変化に柔軟に対応するソフトウェア開発手法の総称
- 計画より 適応
- 契約より 協調
- 文書より 動くソフトウェア
- プロセスより 人
を重視する点が特徴
2. 背景:なぜアジャイルが必要になったのか
従来型開発(ウォーターフォール)の課題
- 要件を最初にすべて決める前提
- 仕様変更に弱い
- 完成するまで「使えるかどうか」が分からない
- 実際のユーザーニーズと乖離しやすい
現代のソフトウェア開発環境
- 要件が途中で変わるのが当たり前
- Web / スマホ / AI など高速な技術変化
- 小さく作って、早く試したい
→ 「変化を前提にした開発」が必要になった。
3. アジャイル開発の基本思想(アジャイル宣言)
アジャイルソフトウェア開発宣言(2001)
プロセスやツールよりも 個人と対話
包括的なドキュメントよりも 動くソフトウェア
契約交渉よりも 顧客との協調
計画に従うことよりも 変化への対応
※ 左も価値はあるが、右をより重視する
4. ウォーターフォールとの比較

| 観点 | ウォーターフォール | アジャイル |
|---|---|---|
| 開発の流れ | 一方向 | 繰り返し(反復) |
| 仕様変更 | 困難 | 前提として受け入れる |
| 成果物 | 最後にまとめて | 早期から動くもの |
| ユーザー関与 | 少ない | 継続的 |
| 向いている案件 | 要件固定 | 要件変動 |
イテレーション(反復)
- 計画(何を作るか決める)
- 実装
- テスト
- レビュー
- 改善
→ 数週間単位で繰り返す
6. スクラム(Scrum):代表的なアジャイル手法
3つの役割
- プロダクトオーナー:何を作るか決める
- スクラムマスター:進行を支援
- 開発チーム:実装担当
主要イベント
- スプリントプランニング
- デイリースクラム
- スプリントレビュー
- レトロスペクティブ(振り返り)
7. アジャイル開発のメリット
- 仕様変更に強い
- 早期に価値を提供できる
- ユーザー満足度が高い
- チームの学習が進む
8. アジャイル開発の課題・誤解
よくある誤解
- 「計画しない開発」ではない
- 「ドキュメント不要」ではない
- 「自由に作る」わけではない
実際の課題
- チームの成熟度が求められる
- 目的が曖昧だと迷走する
- 大規模開発では工夫が必要
9. 教育的観点から見たアジャイル
学習効果
- 試行錯誤を通じた理解
- フィードバック駆動型学習
- チームワークの可視化
大学のPBL・演習との相性
- 短期間で成果が出る
- 失敗を学習に転換できる
- 「完成より改善」を評価できる
10. まとめ
アジャイルは「速さ」ではなく「適応力」
不確実性の高い世界に対応する開発思想
ソフトウェア工学は技術だけでなく人と組織の学問