アジャイル

短いイテレーションで動くソフトウェアを継続的に届け、変化に適応する開発手法の総称

開発手法チーム
アジャイル」の技術書を見る (124 冊) →

アジャイルとは

アジャイルは、短いイテレーション (1〜4 週間) で動くソフトウェアを継続的に届け、変化に適応する開発手法の総称である。2001 年のアジャイルソフトウェア開発宣言で 4 つの価値と 12 の原則が定義された。

4 つの価値

4 つの価値を以下にまとめる。

重視するものより重視するもの
プロセスやツール個人と対話
包括的なドキュメント動くソフトウェア
契約交渉顧客との協調
計画に従うこと変化への対応

ウォーターフォール vs アジャイル

ウォーターフォールとアジャイルの違いを以下にまとめる。

観点ウォーターフォールアジャイル
計画全体を事前に計画イテレーションごとに計画
リリース最後に一括イテレーションごと
変更コストが高い歓迎する
フィードバック遅い (数ヶ月後)速い (数週間後)
リスク最後に発覚早期に発覚

アジャイルのフレームワーク

スクラムはスプリント・ロール・儀式が定義された最も普及したフレームワーク。カンバンは WIP 制限とフロー重視。XP (エクストリームプログラミング) はペアプログラミングTDD を重視する。SAFe は大規模組織向けのスケーリングフレームワーク。

スクラムの基本

スクラムの基本を図で示す。

スプリント (2週間)
  ├── スプリントプランニング (何を作るか)
  ├── デイリースクラム (15分の同期)
  ├── 開発作業
  ├── スプリントレビュー (成果物のデモ)
  └── レトロスペクティブ (プロセスの改善)

アジャイルと CI/CD

アジャイルと CI/CD を図で示す。

アジャイル + CI/CD:
  コード変更  自動テスト  自動デプロイ  フィードバック
   次のイテレーションに反映
   DORA メトリクスで改善を計測

アジャイルのアンチパターン

アジャイルの儀式だけ導入しても形だけで本質がない。スプリント内で仕様変更するとスプリントの安定性が失われる。レトロスペクティブをスキップすると改善が止まる。「アジャイルだから計画不要」は誤解で、計画は必要だが粒度が異なるだけ。

アジャイルの前提条件

アジャイルが機能するには、失敗を恐れず発言できる心理的安全性、指示待ちではなく自ら判断する自律的なチーム、定期的なフィードバックを得られる顧客との協調、CI/CD・自動テスト・リファクタリングといった技術的卓越性が前提となる。

理論と実装の両面から学ぶなら関連書籍が参考になる。

この記事は役に立ちましたか?

関連用語

関連する記事