はじめに
こちらのnoteでは、以前製造業においてアジャイル型開発の適用が難しいという旨の記事を投稿しました。
前回の記事をまとめると
ということになります。要するに「アジャイルであること」をもってヨシとする考え方は意味がないということを書きました。しかし、世の中には「アジャイル(型)で開発する」という記事が今日も作られています。そこで、今回は
「アジャイル」という言葉を使っている人は、結局何が言いたいのか
について考えていきます。
モックアップ以上、正式開発未満?
以下は、私がアジャイルについて聞いたことがある会話の一例です。(※以下の内容は事実に基づいたフィクションです。)
要するに、モックアップ以上で、正式開発未満であることを求めているようですが、
機能の話というよりは、時間とかめんどくささ
を議論しているような気もします。
アジャイル「型」で開発しよう(?)
次に、アジャイルという文字が使われているニュース記事のサンプルをいくつか示します。ただし、ここでは記事の内容がどうというよりは「アジャイル」という言葉の使われ方のみに注目している点にご注意ください。
特に最初の記事にある絵を見た時に、「この絵のどこがアジャイル?」と感じました。「ベースは反復型のソフトウエア開発である」と書いてある割に、図の中には「反復の様子」が描かれておりません。また、後の記事では、PDCAの話と絡めて話が進み、
米国ではPDCAは使ってない。皆もアジャイル型で仕事すべき
という、ソフトウェア開発者からすると、混乱がさらに深まるような記事がとても多く違和感が残りました。
アジャイルの本質は「イテレーション」だが
要するに、ここでアジャイルと評しているものは、どれもこれも
「早く作ること」程度の意味しかない
のです。元々の意味は一切関係ないのです。
そもそも、アジャイルの本質は「イテレーション」にあります。
繰り返しになりますが、アジャイル開発とは
というものです。前回のアウトプットを見て、毎回の振り返りと次の要求を策定するという行為こそが肝であって、
開発の目標を当初から動的に変えること自体はアジャイルとは関係ない
のです。むしろ、上手くいっているのならそれは事前の仮説が当たっているということなのですから、それはむしろ目標を変えてはいけません。
しかし、PJのメンバーや上司は、たとえば「アジャイル」という用語一つをとっても、その
理解のレベル感は様々なので、結局「早く作る」という意味しか残らない
ということなのだと考えられます。
おわりに ~ アジャイルでなく「ピボット」と言え
ここまででわかったことは
ということです。
では、これをピッタリ表現する言葉はないのでしょうか? あります。
アジャイルではなく「ピボット」と言えばよい
のです。
つまり、「開発の目標を当初から動的に変えること」はアジャイルではなく、ピボットと書いた方がスッキリするのです。
ちなみに、偏見込みで言うとソフトウェアエンジニア上がりの人がアジャイルという言葉を使いたがる人は少ない気がしています(※会話を合わせるために仕方なく使っている人は多いと思いますが…世の中にアジャイルサムライという書籍を読んだ人が、そんなに多いとは思えません)。
いずれにしても、さしあたっては
アジャイルという言葉の代わりに「ピボット」と表現できないか?
と考えるだけで、ソフトウェアエンジニアのもやもやはだいぶ解消されるでしょう。コミュニケーションの助けになれば幸いです。
(つづく)