頭を整理するブログ

頭を整理するために、情報や疑問をブログに書き出していきます。このブログは予約投稿しているのでタイムラグ(今日が今日ではない可能性)があります。

アジャイル開発と無計画

いま、 「納品」をなくせばうまくいく を読んでいます。

この本に掲載されているトライフという会社さん、「インターンに作ってもらったシステムが、お客様に負担を強いていた」というくだりを読んでいて怒りがわいてきて、記事を書き始めてしまった。

インターンにいくら払っていたのかしらないけど、会社の技術の不足を、インターンに補ってもらっていたのにこの言いようときたら...( ´ー`)フゥー... 怒りはここまで。

さて本題。

アジャイル開発は本書のタイトル通り「納品をなくす」ことができる...というわけではない。あくまでも納品はある。本書で詳しく定義はされていないが、「作った製品を一括納入して、検収してもらって、お金をもらうフロー」を納品と言っていると思う。アジャイル開発では一括で納品しない。何度も何度も納品する。

アジャイル開発は、全体の完成をまたずにひとまずの区切りをリリースする。そもそも全体の完成を定義をしないことが多い。「儲かるまで」「事業が起動にのるまで」など、具体的な指標を明確に定めないと、あとから考えて非効率になる場合もある。ソニックガーデンさんは、最初のお試し期間の前に、かなりの時間を事業の方向性作りに当てているとある。逆を言えば、事業の方向性が明確になっていない事業者が多いということだ。

事業の方向性が明確になっていない事業者が多いのは、アジャイル開発に頼ってくるお客さんばかりではなく、社会全体に蔓延している。 すなわち、ウォーターフォールでもアジャイルでも、「あー!本当はこうじゃなかったんだった!私がやりたいことはこうだ!」と気づくお客さんがたくさんいるのだ。

ではなんで気付かされるのだろうか。それは、プログラマが「深く考える」からだ。

WHYから始めよ!―インスパイア型リーダーはここが違う

Whyから始めよはその典型的な指摘だと思う。ものごとを始める時に「なぜするのか?」からスタートする。 そしてそのなぜを「なんで?」「どうやって?」と拡張していく。この「Whyからはじめよう!」で"What"と"How"の部分がシステムでまかなえるとき、プログラマが作ることができる設計になる。 Whyから始まっていないシステムは、どこかそっけない、使えない、意思がない...。

無計画にスタートして、途中で方向性が変わってやり直して...というのは、ソニックガーデンさんは「強み」になるし、依頼者側も「一発でランディングする可能性は低いのだから、リスクヘッジしたらアジャイル開発のほうがよい」ということになるのだと思う。

さてただいま半分読んだ。今後、弊社にどうやって適用できるか考えていきたい。