Something like blog

< 等しいのスコープ |

2019/04/02

不正確さは他人の仕事を増やす

前回のエントリでは、人に何かを頼むときは、事前に互いの認識を揃えましょう、という話をしました。

今回はそれを疎かにした場合に起こる認識のズレがどれほどのコストを生むのか、というお話です。

ところでみなさんはよく、作業が早いだけでその人を優秀な人と判断していないでしょうか?

エンジニアの仕事に例えると、タスクを振ったらすぐにプルリクエストをあげてくるような人です。

それを受け取った依頼者は「もう終わったの。さすがだねぇ」みたいに言うわけです。

この時点ですべての仕事が完了になるなら「さすが」です。

しかし内容を確認してみると、コメントが全く無かったり、コメントがあっても雑でよく理解できなかったりで、相手にいろいろ「ここのこれってどういうことなの?」みたいに更に確認が必要になったりします。

さらに、バグがあったり、仕様とは違った実装だと発覚すると最終的にリジェクト(却下もしくはやり直し)になったりもします。

こうなってくると、プルリクエストの時点でほぼほぼ完了だと思っていたのが、進捗率0%の振り出しに戻ってしまいます。

確認に手間取ったり、再提出となると作業者のコストも依頼者の確認コストもどんどん積み重なっていきます。

ここで、それぞれのパターンにおけるコストを図示化してみていきましょう。

図1

まずは、普通のスピードで作業を行い、提出物が一発で通った場合です。

この時の作業者のコストを100、確認者のコストを10ぐらいと見積もると、トータル110のコストでタスクが完了します。(図1A)

次に、仕事の早い人がいて、半分の50で作業を終わらせたとしましょう。

しかし、成果物の内容のすり合わせなどが必要になり、互いに更にコストが発生した場合が図1のBです。

トータルではコストが低くなっていますが、作業者が倍の成果を出しているかと言われると、そんなことはなく、トータルで1.3倍ぐらいの成果です。

しかも、確認者のコストを余分に使っているので、第三者の労力をスポイルにした成果ともみれるわけです。

そして、やり直しとなると普通の速さで作業したときよりもコストが増えます。(図1C)

しかも、その分のコストは自分ではなく他人になるのです。

ここからさらに確認作業が長引いたり、やり直しとのダブルコンボになったり、それらが複数回発生してくると、無限にコストが増殖していきます。(図1D)

作業者が正確に仕事を行い、確認者に対して分かりやすい状態まで準備をしてからバトンを渡してあげれば、少なくとも確認者のコストを最小限に抑えられます。

自分ひとりの仕事がいくら早くても、それが雑なアウトプットであれば、チェックする側だったり管理する側だったり、利用する側の人が無駄なオーバーヘッドを強いられるのです。

そして最終的にチーム全体としてのコストは膨らんでしまい、全員の仕事時間をすべて足すと想像以上にコストが膨らんでいた、ということは往々にして発生します。

タスクにまつわる人と時間が増えるほど、他者に可能な限り無駄な時間をかけさせないことに価値が生まれるのです。

長期的には自分の仕事を速く終わらせるより、他人の仕事を早く終わらせるようにするほうが価値が高いのです。

自分ひとりだけだと一人分の時間の節約にしかなりませんが、他の人の時間も節約できるなら、最大でチーム内にいる人数分の時間を節約できます。

ですので、作業の速さよりも正確性を求めたほうがチームとしては早く作業が終わるようになるのです。

2016年のリオ五輪で日本が400メートルリレーで銀メダルをとれたのは、まさにこの理屈による成果です。

個別の実力では他国の個別選手のほうが圧倒的に上でしたが、連携時の無駄なコストを可能な限り削減し、チーム全体としてのタイムを一番短縮できたのです。

バトンをうまく渡すことによって、次に走る人のアウトプットを最大限引き出せた上での結果なのです。

ウサイン・ボルトが第一走者だったら日本が金メダルを取れていた可能性すらあるほど、個人の実力以上に他人のオーバーヘッドをなくすほうがチーム戦においては価値があるのです。

そこで次に、作業の質が後の作業にどのような影響を与えるかを分かりやすく図にしてみました。

図2

作業には時間がかかったが、その後の影響度が少ない場合が図2のEとなります。

最初に作ったシステムから機能の追加や改善タスクが増えていっても、改修コストを低く抑えられます。

限られたコストの中で沢山の改善タスクを回せます。

次に作業が速くても、その後の影響が大きい場合を表現したのが図2のFです。

雑な作業の結果が後に関わる仕事すべてに影響を及ぼし、限られたコスト内でみると、先ほどよりも改修できる作業の数が減ってしまいます。

そして現実では関わる人が増えるほど、改修が繰り返されるごとに、エントロピーの法則により作業に対するコストは上昇していきます。(図2G)

これが一般的に言う技術的負債です。

エントロピーの法則に可能な限り抗うためには、雑に早く作業するよりも、少し時間がかかっても丁寧に作業を行うほうが良いのです。

以上のとおり、一人の仕事が早かったとしても、その仕事の結果が後に与える影響まで考慮した場合、生産性が低くなるケースはまれによくあると分かりました。

目に見えないコストは他にもたくさんあるので、人が協力してうまく仕事をこなしていくのは大変ですね。

Post a comment

Name: