「本当に必要なもの」

前に「顧客が本当に必要だったもの*1」という画像がネットに出回った。話題になったので、見たことのある人も多いだろう。
IT業界において、顧客が必要としているものとそれを作るそれぞれの担当の認識のずれを面白く表現したものである。僕も初めて見た時によくできているなあと感心した。
この絵が秀逸なのは、認識の「ずれ方」が担当それぞれの職務上の性質に基づいていることもさることながら、落ちである「顧客が本当に必要だったもの」が、顧客が仕様として説明したものと異なっているという点だ。つまり、「顧客自身も自分たちが何を必要としているのか」が正確には分かっていなかったという点が、業界内でのあるあるとして面白いのだ。

今日、上記を考えさせられることがあった。

今日は休みで子供と過ごしていた。
子供がいつものようにマックで「ピクトさんをさがせ」をやっていたので、たまにはこういうのをやらせてみるのもいいかと思い、プログラミンをやらせてみることにした。プログラミンとは「プログラムを通じて子どもたちに創ることの楽しさと方法論を提供することを目的とした(ブラウザ上で動く)Webアプリ」である*2。オブジェクトとそれを制御する色々な命令が用意されていて、ユーザーは命令をドラッグ&ドロップでオブジェクトに与え、シーケンスを作る。手軽にプログラミングとはどういうことをするものなのかを教えるのにはいい教材だ(そこまでするつもりはなかったが)。子供がどういう反応を示すのか興味があった。

特に説明はしなかった*3が、あれこれやりながら「こういうものか」となんとなく分かったらしく、楽しそうにやっていた。
制御するオブジェクトを自分で作ることもできるが予め用意された絵も豊富なので、子供は猫の絵を左右に動かしたり、画面いっぱいに拡大したりして遊んでいた。
それを見ていたらふと、冒頭で書いた「顧客が本当に必要だったもの」のことを思い出した。
で、あることを試してみることにした。
「面白いね。じゃあ今度は猫を楽しそうに動かしてみてよ」と言ってみた。子供はいいよ、と笑ってとりかかり始めた。僕も別の部屋に移動した。
しばらくして子供のもとに戻ると、子供は「できたよ」と笑って作品を見せてくれた。

猫が左に動いて、ステージの端あたりで時計回りに少し回転*4した。
そのまま左右反転して右に動いてステージの端で反時計回りに少し回転*5した。
うーむ。
なんとなく、言わんとしていることは分かる。
童謡「ゆきやこんこ」で喜んで庭を駆け回る犬はこんな感じなのかもしれない。子供としては、飛び回って(楽しくて)空を見上げているということを表現したかったのだろう。
ただ、今日はちょっと意地悪をしてみることにした。

僕「いいね!よくできてるけど、ちょっとまだ楽しそうな感じが足りない気がするんだよなあ」
子供「そうかな?」
僕「うん」
子供「そうかなあ」
僕「うーん」
子供「わかんないよ。うちに猫いないし」
僕「だよねえ…」
子供「でもパパのおばあちゃんちは猫いるでしょ」
僕「いるね」
子供「楽しい時はどうするの?」

この質問を待っていた。

僕「そうだなあ、あの猫はパパが家を出てから飼ったから、あんまりよく分からないんだけど…」
子供「もうおばあちゃんだから寝てばかりだしね」
僕「そうだねえ。でも楽しかったらジャンプとかするんじゃない?」
子供「ああー、そうかもね」
僕「ジャンプはできるの?」
子供「たぶんこの“ジャンピン”でできると思うけど。…できた!」
僕「おおー、いいね」
子供「反対もやってみる」
僕「すごい!」
子供「これなら楽しそうだね」

こうしてできたのがこれだ。

僕らの仕事に限らず、だいたい顧客の要望というのは上記で言うところの「猫を楽しそうに動かしてみてよ」であることも多いだろう。顧客の中に「楽しそう」に対するおおまかなイメージはあるが*6、それが例えば「左右に動いてジャンプする」まで具体的であることは少ない。
これは当然と言えば当然のことである。具体的にできるのであればそうオーダーするだろう。その方がお互いに取って楽だからだ。
プログラミンは、実際にコードを書くツールではない。ただ、(1)目的に対してそれを表現するためにはどういう動きをさせればいいか (2)一連の動きは分解するとそれぞれどういう動きになるのか、を考える訓練ができる。だから僕は子供に「僕がイメージする“楽しさ”は何なのかを知る必要がある」という点に気がついてほしかった。そのためあえて意地悪をしてみた。

上記はモデルとしては極めて単純である。要望に対し、それを実現する「手段(プログラミン)」もそろっている。が、現実には、要望が明確なら自分でできるかというともちろんそんなことはない。だから仕様書などの「伝える言葉」が重要なのであり、仕様書と担当間での揺れを防ぐために「標準化」が叫ばれたりするのだろう。

ひとしきり遊んだあと、お昼ご飯を作ることにした。
「なにがいい?」と聞いたら「おいしいものがいい」と言われた(この時点で気がつくべきだった)。
その言葉に苦笑が出たが、「オッケー」と言ってご飯を作った。

子供は一口食べて、「おいしいね。…でもちょっとおいしさが足りないんじゃない?」と言った。

やられた、と思った。完全に一本取られた。

*1:http://dic.nicovideo.jp/a/顧客が本当に必要だったもの

*2:ニコニコ大百科より引用

*3:僕も詳しく知っているわけではない

*4:.rotation = 15

*5:.rotation = -15

*6:ないこともある