2021.08.24  【責任編集】ラーニング・ツリー日本におけるアジャイル開発の動向について

「日本のアジャイル開発導入は遅れている」

ソフトウェア開発に関わる人間なら誰もが耳にした言葉でしょう。実際、海外市場におけるアジャイル開発の動向と比較すると、日本の導入率は低いのが現状です。だだ、低いから導入を検討するではなく、メリット、デメリット、導入が進まない理由を整理し検討してみる必要があると思います。

今回は日本におけるアジャイル開発動向を海外市場と比較し、アジャイル開発導入の考え方についてお話します。

日本におけるアジャイル開発の動向について

アジャイル開発の重要性を理解しつつも、海外市場ほどに導入が進まないのは何故でしょうか?初めに、海外と日本におけるアジャイル開発の動向を比較してみたいと思います。

Digital.aiが定期的に実施しているState of Agile Reportは2021年7月に発表されたレポートで15回目を迎えます。ちなみに2021年はちょうど、アジャイルソフトウェア開発宣言が発表されて20年が経過した節目の年です。2020年には世界中で新型コロナウイルス感染症が拡大し、激動の年となりました。その中で海外市場におけるアジャイル開発の動向は、次のように変化したとレポート内で触れられています。

This year’s findings indicate significant growth in Agile adoption within software development teams, increasing from 37% in 2020 to 86% in 2021.

(今年の調査結果はソフトウェア開発チームにおいてアジャイル開発採用が増加し、2020年の37%から2021年には86%に増加しています)

驚くべきことに、海外市場ではアジャイル開発の採用が80%を超えているというのです。一方、日本市場ではどうか?ガートナー ジャパンが2019年2月に発表したデータを確認してみましょう。それによると、従業員数2,000人以上の企業で導入率は40%弱となっています。日本ではこの2年間に導入が大きく増えているかはデータから確認はできませんが、劇的に導入が進んだという実感はありません。

引用:ガートナー、アプリケーション開発 (AD) に関する調査結果を発表 ガートナージャパン

40%以上あった差は縮まっている可能性はあります。しかし日本のアジャイル開発に関し、聞こえてくる状況から判断するとまだまだ十分な導入率とは言えないでしょう。その理由には、(1)アジャイル開発を正確に理解していない為に推進できない。(2)開発を外部委託しており、アジャイル開発に合った委託契約が上手く行かない。(3)これまでウォーターフォール型で開発を実施してしてきており、組織の変更が必要になる事への対応の難しさなどの問題があると思われます。

しかし、アジャイル開発で得られる様々なメリットを利用しないままでいると、不確実性、社会的変化の大きい現代においては、マーケットでの存在価値を保ち続ける事は難しくなってくるかも知れません。

アジャイル開発、ウォーターフォール開発のそれぞれのメリットデメリットを理解する必要がある

前項にて海外と日本におけるアジャイル開発の動向を比較し、日本のアジャイル開発が遅れていると指摘しました。しかし誤解しないでいただきたいのは、「何事もアジャイル開発が正解ではない」ということです。

全ての企業や開発チームにとってアジャイル開発が最適解になるとは限りません。従来通りの開発手法であるウォーターフォール開発が有利に働く場合もあるのです。このため、日本企業に求められているのは「アジャイル開発、ウォーターフォール開発のそれぞれのメリットデメリットを理解し、正しく取捨選択すること」でしょう。そこで、アジャイル開発とウォーターフォール開発のメリットデメリットを改めて理解しましょう。

アジャイル開発のメリットデメリット

アジャイル開発は「俊敏な開発スタイルで途中での要件変更にも強い」というのが最大のメリットです。優先度の高い要件から開発を進め、「イテレーション」と呼ばれる開発単位毎に区切りをつけることで素早く価値のあるソフトウェアを作り上げていきます。

一方で、デメリットもあります。一つには、プロダクトの全体が見えにくくなる場合があるというものです。ウォーターフォール開発より上流工程に弱くなる可能性があり、要件変更がどのようなバックグラウンドを持ったものかを理解しにくくなります。こういった問題を解決するには、プロダクトオーナーと呼ばれる役割を持つ人員の能力が大きくかかわってきます。

ウォーターフォール開発のメリットデメリット

ウォーターフォール開発では、要件定義から設計、開発、テストまで一連の大きな流れに沿って開発を進めていきます。従って「開発者ごとのスキルを最大限に活かせる」のが最大のメリットです。チーム規模は大きくなりますが、工程ごとのスペシャリストを確保できればソフトウェア品質を担保しながらプロジェクトを運ぶことができます。また、日本では古くから親しまれている開発手法なのでチームを編成しやすいのもメリットと言えるでしょう。

デメリットとしては、「途中での要件変更が発生した場合の対応のリスクが大きい」ことです。プロジェクト全体を一連の流れで進めていき、工程ごとに明確な成果基準を設定し、基準を満たしてから次の工程へと進んでいきます。そのためテスト途中で設計仕様に変更が生じたとすると、工程の後戻りによる遅延リスクが非常に大きいのです。これは旧来から指摘されていたウォーターフォール開発最大のデメリットであり、故にアジャイル開発が考案され、流行したという背景があります。

まとめ:「アジャイル開発のメリットは何なのか?」をよく考えることがポイント

いかがでしょうか?アジャイル開発とウォーターフォール開発のメリットデメリットを改めて整理してみて、自社や開発チームに最適な開発手法を積極的に考えてみてはいかがでしょうか?

アジャイル開発には、他にも外部委託の契約の問題、組織の問題など、メリット・デメリット以外にもいろいろな検討項目はあります。しかし、ウォーターフォール開発のデメリットを補うものとして、その重要性、有用性は明確です。ウォーターフォール開発VSアジャイル開発ではなく、必要性に応じた選択、または両方のハイブリッドでの使用を真剣に工夫してみる必要があると思います。

「日本ではアジャイル開発導入が遅れている=だから自社は導入しよう」ではなく、自社にとって「アジャイル開発のメリットは何なのか?」をよく考えることが必要です。それでも悩んでしまう場合は、アジャイル開発のプロに相談するのも一つの手段です。


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

【公開講座・オンラインライブ研修】プロジェクトマネジメント:アジャイルとウォーターフォール│ラーニング・ツリー・インターナショナル (learningtree.co.jp)

【公開講座・オンラインライブ研修】はじめてのスクラム│ラーニング・ツリー・インターナショナル (learningtree.co.jp)

一覧へ戻る