「機敏に」という意味で、開発の文脈では要求仕様の変更(顧客ニーズの変化等を前提にする)などに対して、機敏かつ柔軟に対応するためのソフトウェア開発手法のこと。
アジャイル開発が求められる背景
従来は詳細に設計を固めた上でプログラミング開発や試験工程に移行するウォーターフォールモデルと呼ばれる手法が主流だったが、この方法では途中での仕様変更や修正が困難なため技術革新や環境変化への適応が難しくなった。アジャイルでは、2001年のアジャイルソフトウェア開発宣言でも紹介されているように、仕様や設計の変更があることを前提に開発を進めていき、徐々にすり合わせや検証を重ねていくというアプローチをとる。DXにおいては機敏性が非常に重要であるため、DX Reviewの記事内ではよく出るワードだ。
アジャイルの12の原則
アジャイルの由来とも呼ばれる「アジャイル宣言」では12の原則が提示されているので紹介する。
- 顧客満足を最優先し、価値のあるソフトウェアを早く継続的に提供します。
- 要求の変更はたとえ開発の後期であっても歓迎します。変化を味方につけることによって、お客様の競争力を引き上げます。
- 動くソフトウェアを、2-3週間から2-3ヶ月というできるだけ短い時間間隔でリリースします。
- ビジネス側の人と開発者は、プロジェクトを通して日々一緒に働かなければなりません。
- 意欲に満ちた人々を集めてプロジェクトを構成します。環境と支援を与え仕事が無事終わるまで彼らを信頼します。
- 情報を伝えるもっとも効率的で効果的な方法はフェイス・トゥ・フェイスで話をすることです。
- 動くソフトウェアこそが進捗の最も重要な尺度です。
- アジャイル・プロセスは持続可能な開発を促進します。一定のペースを継続的に維持できるようにしなければなりません。
- 技術的卓越性と優れた設計に対する不断の注意が機敏さを高めます。
- シンプルさ(ムダなく作れる量を最大限にすること)が本質です。
- 最良のアーキテクチャ・要求・設計は、自己組織的なチームから生み出されます。
- チームがもっと効率を高めることができるかを定期的に振り返り、それに基づいて自分たちのやり方を最適に調整します。