マメ知識:アジャイル(Agile)
アジャイル(Agile)とは
Agileとは、直訳すると「すばやい」とか「機敏な」という意味になります。これをIT関係に限ると、ほぼ「アジャイルソフトウェア開発手法」のことを指します。
アジャイルソフトウェア開発 (Agile software development) 手法とは
アジャイルソフトウェア開発手法は、ソフトウェア工学において、機敏かつコンパクトに開発を進める手法群の総称です。
ソフトウェア工学においては、歴史の古い一般的なソフトウェア開発手法として「ウォーターフォール・モデル」があります。「ウォーターフォール・モデル」は、事前に開発プロジェクトの詳細な計画(マスタープラン)を作り、トップダウン設計で時系列にいくつかの作業工程に分割し、線表を使って各工程を一度で終わらせるために、前工程が完了しないと次工程に進まないという原則を持って進捗管理を行います。工程の進捗管理がしやすいという利点を持つ反面、前工程に間違いがないことを前提にした管理のため、下流行程になってシステムの輪郭が見えてきたところでユーザーが初めて気づいた修正要求には対応できないか、対応する場合は工程の後戻りにより開発が大きく遅延するという問題点をかかえています。
これに対して、アジャイルソフトウェア開発手法は、マスタープランは作らず、開発手順や成果物なども細かく定義せず、短い期間の周期で開発計画の検証を繰り返します。決められた期間内に動作可能なソフトウェアを作成し、その動作を検証して次の期間での行動計画を決めます。次の期間内に前期間に作成したソフトウェアを成長させ、それをまた検証、これを繰り返していきます。必要に応じて見直しを行うため、ユーザーの修正要求には柔軟に対応できます。
「アジャイルソフトウェア開発手法」は、非営利組織のAgile Allianceが推進しています。
https://ja.wikipedia.org/wiki/アジャイルソフトウェア開発
https://www.otsuka-shokai.co.jp/words/agile-software-development.html