なぜアジャイルなのか① 理由はひとつ!だが・・・?

アジャイルソフトウェア開発宣言から既に20年以上が経過し世はすっかりアジャイルの時代。。。と思いきや未だにウォーターフォールが適していないプロジェクトなのにウォーターフォールまっしぐらのチームが多くあることでしょう。

いまさらかもしれないですが、そんなしなくてもいい苦労をしているチームに向けて「なぜアジャイルなのか?」ということと「アジャイルとは何か?」ということについていくつかの記事にわけてまとめてみます。

なぜアジャイルなのか?理由は一つ

初回のテーマはなぜアジャイルなのか?

その理由は一つ。VUCAの時代だから。

VUCAとは?

既によく知られた用語かとは思いますが、あらためてVUCAとは

  • Volatility(変動性)
  • Uncertainty(不確実性)
  • Complexity(複雑性)
  • Ambiguity(曖昧性)

の4つの頭文字を取ったものです。

色々説明もされていますが、自分が一番納得できた本は「チームレジリエンス 困難と不確実性に強いチームのつくり方(池田めぐみ・安斎勇樹著)」です。

チームレジリエンス 困難と不確実性に強いチームのつくり方

それぞれの用語の意味は以下の通り。

  • Volatility(変動性)・・・不安定で予測不可能な状況
  • Uncertainty(不確実性)・・・あるできごとにより変化や困ったことが生じるかわからない状況
  • Complexity(複雑性)・・・多くの要素が相互に関連している状況
  • Ambiguity(曖昧性)・・・前例がないことを扱ってうまくいくかわからない状況

まとめると、

VolatilityとUncertaintyは「この先何が起こるかわからない」状況ということ

ComplexityとAmbiguityは「何が起きているかわからない」状況ということ

つまり、未来と現在の解像度にモザイクがかかったような、とらえどころのない状態 がVUCAの時代、「不確実性の時代」であると説明されています。

ちなみに「不確実性の時代」というのは、この状況を予言していたアメリカの経済学の巨人、ジョンガルブレイスによる1977年の名著「不確実性の時代」からVUCAの現代を指して呼んでいるらしいです。

理由は一つ、だがコンテキストはそれぞれ

そんなVUCAの時代においては、何が起きるかわからない。すなわち、変化への対応をしていけるアジャイルが有効であるわけです。

アジャイルソフトウェア開発宣言にも

計画に従うことよりも変化への対応を

とありますね。

しかし、この説明ではすっきりしない方も多いのではないでしょうか?

VUCAの時代、「不確実性の時代」と言われても自分のプロジェクトに当てはめることが難しいんです。

例を上げれば、人材不足、パンデミックや地震、競合の台頭、生成AI、頻繁の仕様変更、売上が立たない、チームが回らないなどなど多く上げられますが、現場現場でコンテキストがそれぞれ異なっているのでわかりずらい面があるのだと思います。なんせ現在も未来も「わからない」時代になにが「不確実」なのかもわからないということです。

さらに、、、

ウォーターフォールはもっとも最適化されたやり方

ソフトウェアってそもそもが要件を整理して、設計して、実装してテストしてリリースするものですよね。

そういう意味でウォーターフォールはすごく最適化されたやり方なんです。

それぞれの工程を見積もれればいつリリースすればいいかも計算できる。

考え方もシンプルで、誰もが理解できるやり方。

うまく行っているように見えるんです。これ以上最適化されたやり方がないので、他のやり方を考える必要がなかったのです。

なので、なぜアジャイルなのかを考えるには、なぜ(複雑性が高い状況で)ウォーターフォールではないのか?も同時に考えていきます。

コンテキストごとに考えていこう

次回以降、いくつかのコンテキストをピックアップしながら、なぜアジャイルなのか?なぜ(複雑性が高い状況で)ウォーターフォールではないのか?を考えていければと思います。

また、これからボトムアップでアジャイルにしていくためには組織やチームを大きく変えていく必要があります。 なので「どのように組織を変えていくのか?」というテーマについても考えていきます。

※ ウォーターフォールというプロセスと比較するうえで「アジャイル」というのはやや広義すぎる感じもします。とはいえフレームワークであるScrumの話はほとんどする予定がないため「アジャイル」という言葉を使用していきます。ウォーターフォールを適用する組織、チームとアジャイルな組織、チームぐらいの感覚で読んでいただくといいかもしれません。

まず次回は、VUCA「不確実性の時代」をソフトウェアをつくることに当てはめるとどうか?を検討していきます。

そして順次、以下のような構成で検討していこうと思っています。

第二回: なぜアジャイルなのか② 要求・要件と技術の複雑さから選択する

第三回: なぜアジャイルなのか③ 個人とチーム

第四回: なぜアジャイルなのか④ 学習とManagement3.0

第五回: なぜアジャイルなのか⑤ 成果物・成果・売上

第六回: なぜアジャイルなのか⑥ クロスファンクショナルチーム

第七回: なぜアジャイルなのか⑦ デザイン・仮説・検証

第八回: なぜアジャイルなのか⑧ チェンジマネジメント