2021.09.13  【責任編集】ラーニング・ツリースクラム以外のアジャイルについて

2001年に「アジャイルソフトウエア開発宣言」が発表されたアジャイル開発は、現在、最も多く利用されている手法はスクラムです。発表される以前からもスクラムの考えは存在しており、前後してスクラム以外の手法も様々提案されています。

そこで今回は、日本においても利用がひろがりつつあるアジャイル開発において、「スクラム」がアジャイル開発でどれくらい利用されているか?スクラム以外でも使われている手法がある事も理解し、代表的な手法についてもいくつか解説していきます。

アジャイル開発におけるスクラムが利用されている割合

まずご覧いただきたいデータは一般社団法人 PMI(プロジェクト・マネジメント協会)が2019年11月に発表したアンケート調査結果です。アンケートは PMIに登録されているプロジェクト・マネジメント関係者が対象であり、所属企業の従業員数は10人未満から1,000人以上まで幅広く分布しています。

このアンケート調査によれば、アジャイル開発現場でスクラムを取り入れている企業は全体の43%となっており、過半数に迫っていますが、他の手法も利用されているのが判ります。

出典:2019年 アジャイル プロジェクト マネジメント 意識調査結果と提言 一般社団法人 PMI日本支部

開発するソフトウェアやプロジェクトに応じてアジャイル開発手法を使い分けているのがわかりますが、やはり「スクラム」は多数派であり、それ以外の手法については。少数派です。

ここで、スクラム以外のアジャイル開発手法についていくつかご紹介しておきます。

XP(エクストリーム・プログラミング)の紹介

XPは開発やマネジメントの経験則を生かし、スクラムより継続的対応に注力している開発手法になります。その中で次の5つの価値を中心に据えています。チームのメンバーはイテレーションと呼ばれる反復を繰り返し、より良いやり方、成長をしながら開発を進めるというものになりますので、下記それぞれが重要な要素になってきます。

  • コミュニケーション
  • シンプル
  • フィードバック
  • 勇気
  • 尊重

プロジェクトの失敗原因の多くは「コミュニケーション不足にあり」と断定し、開発チームだけでなくクライアントとのコミュニケーションも大切にします。

ソフトウェア設計は極力シンプルを目指し、不要そうな機能は削ぎ落とします。クライアントからのフィードバックを適宜もらい、更なるシンプル化を実現。そして柔軟性を大切にするアジャイル開発の特性上、プロジェクト途中での大胆な仕様変更を受け入れる勇気も必要です。最後に、開発チームとクライアント、それらの関係を尊重すること。

また、XPの特徴として、チームには顧客も含まれます。また、開発におけるリスクを軽減する活動(XPではこの活動をプラクティスと呼びます)も多いため、機能の決定、プロセスの改善、リリース前のテストの実施確認など多くのコミュニケーションの中で改善、成長されていきます。

ソフトウェア自体がイテレーション反復によりより良いものになっていくと同時に、実施のプロセス、チームの能力も向上させていくことができる手法でもあると言えます。

FDD(ユーザー機能駆動開発)

FDDは「ユーザーにとって価値ある機能」を常に中心に据え、優先度の高い要件から開発を進めるアジャイル開発手法です。スクラムや、エクストリーム・プログラミング(XP)は開発の体制に関する手法であるのに対し、ユーザー機能駆動開発はユーザー機能価値重視という価値観に関する手法になります。

FDDで大切なのは「クライアントの事業内容、業務内容への深い理解」です。ユーザーにとって価値があり、事業課題や業務課題を解決するソフトウェアを開発することに重きを置いているため、開発者自身がクライアントの事業内容や業務内容へ理解を示さなければいけません。

FDDは顧客にとって価値のある機能ごとに区切り、顧客が区切られた単位でその挙動を確認して開発を進める事で、価値についての判断を行っていきます。

FDDでは、5つの基本活動が存在し、最初の3つの活動を逐次行うことにより全体の形が決まるとされる。

  • 全体モデル開発
  • 機能リスト構築
  • 機能毎の計画
  • 機能毎の設計
  • 機能毎の構築

また、プロジェクトごとの状態報告と監視の為に進捗を示すマイルストーンが定義されている。

アジャイル開発はスクラムだけじゃない

以上のように、スクラム以外にも様々なアジャイル開発手法が存在します。それぞれに特徴が異なり、メリットもデメリットもあります。大切なのは世界中でスクラムが主流になってるからといってスクラムに傾倒するのではなく、いくつかのアジャイル開発手法を理解し、必要に応じて使い分けることです。

これを機に、新しいアジャイル開発手法の導入をぜひ検討してみてください。それは貴社の開発チームにとって、より生産性の高い開発スタイルの始まりかもしれません。

この記事を読んだ方へお勧めの講座

【公開講座・オンラインライブ研修】スクラムを利用したアジャイルプロジェクトマネジメント│ラーニング・ツリー・インターナショナル (learningtree.co.jp)

一覧へ戻る