仕事がいつまで経っても終わらない「90対90の法則」とは?対策はある?

副業でも本業でも厄介なプロジェクトと言うものが存在します。もちろんなぜ厄介か?様々な原因があるのですが、筆者がよく直面しがちなのが90対90の法則です。

これはソフトウェア工学に関するプロジェクトの進捗に関して皮肉った言葉で、「コードの最初の90%が開発時間の90%を占め、残りの10%がさらに90%を占める」というもの。
この格言には「90%+90%で合計で180%やんけ!」というツッコミつきです。
つまり、100%を越えて時間どおりにプロジェクトが終わらない状況を皮肉った言葉でもあるのですね。

でも、なぜこうなるのでしょうか?どういう状態でしょうか?
この状況は、ソフトウェア開発のプロジェクト以外にも存在するのではないでしょうか?
筆者が解説します。

90対90の法則の具体例

これは筆者がつい最近経験した仕事の進捗のお話です。

筆者の提案で、あるプロジェクトを立ち上げることになりました。ちょっとしたコーディングも必要とされる、マーケティングキャンペーンのプロジェクトです。

筆者はマーケティングの担当者として、マネージャーにキャンペーンの完成イメージを最初に持っていくことにしました。見た目はある程度犠牲にした、どのようなキャンペーンなのかが分かる、ある程度完成させたモックアップを作成したのです。

このモックアップ自体はかなり完成度が高く、本番にそのまま流用できるようなコードも含まれていました。筆者はこれをそのまま流用すればいいと思い、OKが出た際の作業時間の見積もりをかなり甘くとったのです。

そしてマネージャーからオーケーをもらって、いざ着手してみることになりました。
このモックアップ通りに作ればいいだけなので簡単簡単…と思っていたのですが、現実は違ったのです。

実は、マネージャーに見せるものは社内で共通理解を図るためのものなのである程度雑でも許されました。しかしマーケティングのキャンペーンは、外部に出すのが前提です(外部に出さないとマーケにならないので、当たり前ですね)。
つまり、外部に出すと言う事は、ある程度デザインにもこだわらなくてはなりません。
そのコーディングに極めて時間を要してしまったのです。

一瞬にして終わると思っていたモックアップのコーディングは、実は全く一瞬では終わりませんでした。ボタンの文言やデザインの大枠といった、90%は完了していましたが、残りの10%である「デザインの綺麗さ」にこだわってしまったのです。

結果的に作業見積もりを大幅に超えてコーディングを終了させました。
デッドラインには間に合ったので問題ありませんでしたが、これがデッドラインギリギリに作業していたらどうなったのか、は考えたくもありません。

90対90の法則を防ぐにはどうする?対策は?

このような状況を防ぐにはどうすれば良いのでしょうか?
実はきちんと対策はあります。

1.細かく区切って振り返る

細かく区切って振り返るのが実は1番の対策だと筆者は感じています。
どういうことかというと、定期的に休憩のような形で作業を止めて、客観的にどのくらいの時間がかかっているのかを見直してみるのです。

そうすると意外と時間がかかっていることがすぐに検知できますね。
実は時間がかかってしまう事そのものは、もはやどうしようもありません。過去は変えられないのですから。それよりも未来のことを考えて対策を立てるべきなのです。
そして時間がかかっていることを早く検知できればできるほど、より素早く対策も考えられるようになります。そのために一定時間ごとに休憩を取って、今やっている作業がどれだけ時間がかかっているのかをきちんと客観視しましょう。

当たり前に思えますが、作業に熱中している時ほどこれが出来ていないものなのです。

2.リソースの配分を見直す

これは前述の休憩を通した客観視ができている前提の話になります。

やたら時間を食っている時に、1つのプロジェクトの手を離れて、冷静に自分がやっていることを観察してみると、実は自分が苦手なことをひたすらやっているパターンが多いことに気がつくはずです。

どうも面白くない単純作業だったり、あまり詳しくない専門知識が必要とされるような複雑すぎる作業や、知らないことに対して時間を使っているような状況になっていませんか?

もしそうなのであれば、周囲にいる人を頼りましょう。つまりリソースの配分を見直すのです。

得意な人に得意なことをやってもらった方が良いに決まっています。
その方が結果としてプロジェクトの進捗するはずです。時間がかかっていて泥沼にはまっていると考えるのであれば、リソースの配分を見直してみましょう。

3.デッドラインを伸ばさない

もう一つの有効な対策の1つが絶対にデッドラインを伸ばさないと言うことです。
つまり中途半端でもいいからアウトプットを出してしまうということです。

ありがちなソフトウェア開発のアンチパターンに、どんどん納期が伸びていって、開発しなければいけない新しい機能もどんどん追加される、と言うものがあります。

しかし実際にはその新しい機能は、全く必要のないものかもしれません。
そしてその新しい機能が本当に必要かどうかは、リリースしないとわかりません。

例えば前日の筆者の例ではやたらデザインにこだわってしまいましたが、別にデザインにこだわらなくてもマーケティングのキャンペーンとしては機能したかもしれません。
よってデザインが中途半端なままでも出してしまえばよかったのです。

これはとても勇気のいることです。
特に自分が丹精を込めて作ったものが中途半端なものは世の中に出てしまうのは許せない、と思ってしまうこともあります。しかしそれでも結局誰にも使われないような機能を開発し続けるよりはずっとマシなはずです。

とにかく使ってもらうこと、見てもらうことがどんな仕事でも重要なはずです。
勇気を持ってデッドラインを伸ばさないようにしましょう。

90対90の法則の対策まとめ

いかがだったでしょうか。
元はソフトウェア工学の言葉ですが、普通の仕事にも潜んでいるのではないでしょうか。

実際に筆者の仕事はプログラマーでもITエンジニアでもない、業務委託のマーケターです。
それでもこのような法則を身をもって体験する時があります。

この仕事いつまでたっても終わらないな、と感じた時は少し休憩をしてみましょう。
そして客観視をしてみると、意外なところから打開策が見つかりますよ。