迅速かつ柔軟な開発を目指したアジャイル開発手法を採用する企業が増えている。この連載では、アジャイル開発を主導する「賢者」に開発の極意を聞く。今回は前回(絶対的な解は存在しないから「協調」を重視する)に引き続いて、プロダクトマネジメントとUX(ユーザーエクスペリエンス)デザインに造詣の深いアジャイルコンサルタント、ジェフ・パットン氏に話を聞く。

 「絶対的な解」は存在せず、学び続けることが大切という前回の話を受けて、計測と学習の大切さ、計測の際の指標に対する考え方、映画「マトリックス」を例に採った現実を直視することの重要性など、示唆の富んだ話を聞くことができた。

一定の時間内に物事を成し遂げるよう努めるべき

ジェフ・パットン氏
ジェフ・パットン氏

「正しいもの(プロダクト)を作りたい」という気持ちは誰もが持っていると思います。ところが、いざものづくりを始めると「できるだけ良いものを作りたい」という気持ちと、「納期に間に合わせなければならない」というプレッシャーとの間で板ばさみになってしまいます。プロダクトのスコープをうまく管理するコツはありますか。

 そこには二つの要素が絡んでいます。「正しいものを作る」と「期限までに終わらせる」です。実際のところ、「どのようにすれば、予算内で全てを成し遂げられるか」を私たちは学ぶ必要があります。入ってくるお金よりも多くのお金を使ってはいけません。背伸びをして、能力以上のことをやろうとするのも禁物です。

 私たちは常に、一定の時間内に物事を成し遂げるよう努めるべきです。残り時間を「これから何かを完成させるために使う時間」と捉えるのではなく、「予算」と捉えるべきです。つまり、最小限の時間で本当に大事なことを成し遂げるにはどうすればいいかを考える必要があります。これは日々の通勤であれ、数カ月にわたって実施する数億円規模のプロジェクトであれ、同じです。

 物事をすみやかに終わらせるには、どうすればいいでしょうか。私は様々な方法を駆使しています。時々教えているのは、画家がキャンバスに絵を描くのと同じように、ソフトウエアプロダクトの開発を進める方法です。まず、ざっくりとした基礎を描きます。それから時間をかけて細かな修正を繰り返しながら、少しずつ描き足していきます。最初から完璧な絵を目指して、少しずつキャンバスを埋めていくというやり方は採りません。

 数回のイテレーションを繰り返しながら徐々に質を上げていくというアイデアは、決して新しいものではありません。フレデリック・ブルックスが25年以上も前に自身の代表的な論文「No Silver Bullet(銀の弾などない)」で紹介しています。とても古いアイデアです。

 実際のところ、この考え方は直感に反するし、難しいんですね。簡単ならみんなやっているでしょう(笑)。でも、このやり方で質を高めていけば、どんなものでも時間通りに終わらせることができます。常に細かい部分に注意を払い、成果に気持ちを集中させていれば可能になるのです。

 出来上がったプロダクトが、ユーザーの要求や期待に応えられるものになっているか。これが成果です。私は特定のユーザーや組織がどのようにプロダクトを使うかを理解するために、いくつかのユースケースを利用します。プロダクトにどのようなメリットが求められているのかを知る方法についても、ある程度のアイデアがあります。

 これらの知識を使って、目的に合致しないものや、役に立たないものを刈り取っていきます。このようにして、常に成果に意識を集中していれば、スコープをきちんと管理し、期限通りに終了することができます。