人と人が協同で作業を行うとき、あるいは、ある人に作業を依頼したり、ある人から作業を引き継いだりするとき、常に交される言葉が「分かる」という言葉です。
“分かってくれましたか?”
“はい、分かりました”
と言う言葉で分かり合えたことになっているのですが、果たしで本当に分かったのでしょうか。確かに「受け手」は分かったつもりなのでしょうが、それが「依頼側」の「分かって欲しいこと」と一致しているのでしょうか。
もし、そこに何らの食い違いも存在していないとすれば、ソフトウェアの開発現場で起きている不具合の現象は、一体どのように説明すればいいのでしょうか。
そこで起きていることは、「分かってもらえた」筈なのに、仕上がってきたものには求めた機能が欠けていたり、時には期待してものとは掛けは離れてしまうこともしばしばです。
実は、「分かる」という言葉の裏には何人も越えることの出来ない限界が隠れています。それは、
という問題です。この言葉は、繰り返してそして深く吟味して頂きたいと思います。
つまり、BさんがAさんの依頼内容を「分かった」と思っても、それはBさんが分かったと思った範囲に限って分かったのであって、その範囲がAさんの伝えようとした範囲と一致しているか、あるいはそれを完全に含んでいる状態であるという保証はないのです。
Bさんが、真面目に分かろうとすればするほど、Bさんには自分の分かった範囲の境界が見えません。皮肉なことに、自分の分かった範囲の境界線が見えているのは、分かろうとする行為に手を抜いた人です。勿論、手抜きした分だけ分かった範囲は狭くなっているのですが、それでも、思い直してその範囲を広げることは出来ます。
簡単な例としては、“プログラミングの前に設計書を書いてください”と依頼したとき、受け手にとっては、この依頼の中に解釈不能な言葉は一つも含まれていないことから、おそらく「分かりました」と即答するでしょう。
でもこのとき、依頼者のイメージしている「設計書」と「受け手」のイメージした「設計書」は、表紙の「◯◯設計書」は一致しているでしょうが、その内容や構成までも一致しているとは限りません。それどころか、殆どの場合ずれているのです。
外注業者に開発を依託すると、非常に高い確率でこのようなことを体験するはずです。
勿論、外注業者にだけ起きる問題ではありません。社内の部門間でも起きますし、同じ部署内の人どうしでも起きるのです。隣の人同士の場合、精々ずれの程度が軽くなるぐらいです。
人と人が関わるとき、悉くこの問題に遭遇します。変な話しですが、夫婦であろうと、親子であろうと、この問題は避けることが出来ないのです。
多くの人は、ここで述べるような厳密な意味での「分かる」の問題に気付いていません。したがって、食い違いが生じたときは、相手の所為にするか、“よくあること”として流してしまうことでしょう。でもそれでは何時まで経ってもこの状態は解決しません。
相手が分かってくれた内容が、自分の期待するものであるかどうかを確認するためには、「分かった」内容を「折返し」てもらうしかありません。つまり、
と、表現してもらうことです。
ここで、「表現」というのは“言葉による説明”は含まれていません。あくまでも「文字」ないしは「図」を交えての説明です。
文章に書けない状態であれば「分かっていない」と思って概ね間違いありません。頭の中で“何となく”分かっていても、その状態では文章は書けません。そのまま設計作業に入った段階で、分かっていなかったことに気付くかも知れませんが、場合によっては勘違いしたまま評価の段階まで気付かないかも知れません。
話しがちょっと逸れますが、ここで“言葉による説明”を除外したのは、説明を聞いている時は、聞き手の頭は話し手の発する言葉の言語解釈に、その殆どが占有され、その状態では説明の中に潜む問題(話し手も気付いていない問題)に気付くことが難しくなるからです。したがって、その場で“おかしい”と気付くとすれば、それは余程いい加減な部分だということです。その場で説明されると、多くの人は「説得」されるのです。何となく“それでいいように”思えるものです。
このために、インスペクションやウォークスルーでは、資料は事前に配布するように勧めるのです。因に、ウォークスルーでは、その場での説明すら原則として禁止します。そうしないと、ウォークスルーを実施したという事実だけが残って、その効果が殆ど得られないからです。
このような理由によって、「分かった」ところを図と文章で表現することが求められるのです。もちろん、これで全てが解決する訳ではありません。お気付きのことと思いますが、「折返し」た途端に今度は「逆方向」に“分かる”の問題が発生します。
厄介なことに、理屈の上ではこの問題は「鏡に写る鏡」のように収束しません。しかしながら、現実問題として、この「折返し」を必要に応じて1〜3回程度繰り返すことで、双方の「分かった」範囲を、お互いに認識することができ、その結果として「ずれ」が作業に支障を来さないことを確認することはできます。
実際には、許された時間の中で、どれだけ効率よくこの「折返し」が出来るかで、プロジェクトの結果が左右されます。
何れにしろ、「分かる」の問題が、あらゆる場面に存在することを「分かった」上で、その影響を最小限に食い止める方法を講じることが必要になります。
ということで・・・「分かって」もらえたでしょうか。