アジャイル開発は受け入れられるのか
最近になって再び「アジャイル開発」という言葉を社内で聞くようになりました。
数年前に聞いた時は、一時的に流行っている開発手法だと考えてました。
ですが、Googleトレンドを見ても分かる通り、堅実に知名度上げているように思えます。
今回は、アジャイル開発についてまとめます。
アジャイル開発とは
ソフトウェア開発のプロジェクトの進め方の定義の一つです。
そもそもアジャイルとはどんな意味
Agileの本来の意味は次のようになります。
・活発
・頭の回転が早い
特に「スピードの早い」という意味で使われています。
アジャイル開発は「ソフトウェアを小さく区切り、軽量な開発を短期間、かつ継続的に提供する」という特徴があります。
従来手法「ウォーターフォール」との違いは
ウォーターフォール開発とは、滝の流れのように、開発案件を上流から下流に流すイメージで行うことにちなんでいます。
上流で仕様をしっかり固め下流の開発に流す。
↓
【設計】
↓
【実装】
↓
【検証】
↓
【リリース】
メリットとしては、役割が明確化されるため、それぞれの担当が業務がしやすい点です。
その反面、デメリットとして、仕様・要件が曖昧だと下流で混乱、開発の遅延、不具合の多発などが発生してしまいます。
状況によっては大幅な手戻りが発生します。
一方、アジャイル開発は、お客様の要望やプロジェクトの状況によって柔軟に変化することを特徴としています。
コンパクトなPDCAを高速で回しているため、手戻りも少なく軌道修正もすぐに可能です。
アジャイル開発の代表的な手法「スクラム」とは
アジャイル開発の手法はいくつかあります。「エクストリーム・プログラミング」「スクラム」などなど。
中でも、もっともポピュラーな手法は「スクラム」です。
「アジャイル開発」=「スクラム」と言っても過言ではありません。
参考:アジャイルとスクラムのトレンドがほぼイコール。
アジャイル開発のスクラムとは、ラグビーのスクラムと同じで「肩を組みあってチーム一丸となっている状態」を表します。
開発計画をメンバー間でよく話し合い、プロジェクトの進み具合に問題がないか確認しあいながら進めることで、リリースの遅延などを回避することができます。
アジャイル開発で失敗しないためのポイント
アジャイル開発では以下のポイントを気を付けることで成功させることができます。
①チームの目的、方向性の認識合わせをしっかりする
チームの目的、方向性は会社における企業理念やビジョンに近いです。
迷いが生じたときに、目的に立ち返り判断することができますので、明確に定義しておくことが大切です。
②企画、設計を詰める
企画、設計を詰めてなくても、柔軟に進めるのがアジャイル開発なのですが、慣れるまでは企画などはしっかり詰めてから開始した方が失敗しないポイントです。
③ポイントとなる仕様はドキュメントを残す
しっかりとした仕様書は必要ないが、認識齟齬が起きやすい仕様についてはドキュメントを残すほうがよいでしょう。
今回はアジャイル開発について、まとめました。
誰かの役に立てたら幸いです。
以上、ワーカホリックダイアリーでした。