オフショア開発, システム開発,

285 views

アジャイル開発について

システムやソフトウェア開発における手法は様々種類があり、従来の代表的な方法はウォーターフォールです。とはいえ、2000年代以降、新たな手法としてアジャイル開発が登場しました。では、今度は アジャイル開発について ご紹介します。

アジャイル開発とは?

アジャイル開発について

アジャイル(Agile)とは、直訳すると「素早い」「機敏な」「頭の回転が速い」という意味です。アジャイル開発は、システムやソフトウェア開発におけるプロジェクト開発手法のひとつで、大きな単位でシステムを分割せずに、小単位で実装とテストを繰り返して開発を進めていきます。従来の開発手法に比較して開発期間が短縮されるため、アジャイル(素早い)と呼ばれています。

アジャイル開発の流れ

<リリース計画>

アジャイル開発では、ソフトウェアの計画程度で厳密な仕様を決定せずに、だいたいの仕様と要求だけを決めます。これは「開発途中に仕様や設計の変更があることは当たり前」という前提があるからです。おおまかな計画のみでは、その後の実装フェーズで問題が起こりそうですが、仕様が決まっていないと途中で変更があっても臨機応変に対応できるため、顧客の需要に最大限応えることが可能です。

<イテレーション>

だいたいの仕様と要求を決めたら、イテレーション(iteration)と呼ばれるサイクルを繰り返して開発を進めます。イテレーションとは「反復」という意味で、小さな単位に分けられた開発を「計画」→「設計」→「実装」→「テスト」と行いながら、機能のリリースを反復します。

イテレーションは1週間~2週間ごとが一般的で、イテレーションごとに毎回機能をリリースします。「イテレーション1」「イテレーション2」「イテレーション3」…と繰り返しながら、細々しく開発を進めていきます。

アジャイル開発に向いているプロジェクト

アジャイル開発は、開発の途中で仕様の変更や追加が予想されるプロジェクトに向いている手法です。例えば、モバイル分野などの日進月歩で技術や仕組みが進化している産業では、開発の途中で仕様の変更や追加が容易に予想できます。アジャイル開発では、リリース計画段階で厳密な仕様を決定しないため、途中変更の多いプロジェクトと相性が良いです。

一方、数十年手作業で実行していた工程をシステム化する、20年稼働していたシステムをリプレースするといった場合は、すでに作るべき機能が明確に決まっています。そのため、このようなシステムの場合にはアジャイル開発よりも、ウォーターフォール開発が向いているといえます。

まとめ

アジャイル開発の特徴は、これまでの開発手法と比較して、開発期間が大幅に短縮されることです。プロジェクトに合わせて、最適な開発手法を検討してみましょう。

前の記事
次の記事

#関連キーワード