アジャイル開発について

アジャイル開発について調べたので書いて整理します。


 アジャイル(agile)の意味を調べてみると「機敏な」、「素早い」という意味になる。 そして、アジャイル開発を日本語にすると機敏な開発、素早い開発となり、そのまま解釈すると、開発期間が短縮される開発手法になる。 実際、アジャイル開発は納期が短縮されることが期待される開発手法であり、またリスクを最小化できるというメリットがある。
では、具体的にアジャイルソフトウェア開発宣言が示している4つの価値をなぞりながらアジャイル開発を整理していく。

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

価値とする。すなわち、左記のことがらに価値があることを
認めながらも、私たちは右記のことがらにより価値をおく。


 動くソフトウェアとは、価値のあるソフトウェアを早く継続的に提供するということである。 価値のあるソフトウェアとは分析、設計、開発、テストされた(この一連の工程を短期間で繰り返す開発サイクルのことをイテレーションという)リリース可能なソフトウェアのことである。そして、動くソフトウェアこそが進捗の最も重要な尺度になる。
定期的に素早く成果を届けることで、顧客からフィードバックをもらうことができる。 フィードバックは顧客の意思を確認することにつながり、開発の方向性を調整するきっかけにもなる。

 これらの顧客との協調においては、当初の計画の変化が起きうることもある。 アジャイル開発では変化を恐れず、よりよい成果を生み出す機会と捉える。 機敏に、そして柔軟に計画を変更することが顧客のニーズに答えることにつながる。

 また、開発する上でチームが円滑に成長し続けていることも重要である。 例えば、イテレーションごとにミーティングを開催してもっとチーム内の状況を確認したり、チームの効率をもっと上げるためにはどうすれば良いかを検討することでベロシティ(一回のイテレーションの量)を高めることにつながる。

イテレーションとは?スプリントとの違いや開発プロセスを解説!|ITトレンド

アジャイル開発 ~顧客を巻き込みチーム一丸となってプロジェクトを推進する~ (前編): コラム | NECソリューションイノベータ

アジャイル開発とは?主流の開発手法「スクラム」も…|Udemy メディア

www.amazon.co.jp