エンジニアこそトップダウンで考える力が必要です


プロジェクトのチームメンバとイベント的なタスクをやることになって、大枠のイメージ合わせを対外的な関係者とすり合わせをしたあと、さぁ、これから具体的な段取りを組みましょう、ってステップになったので、あとの具体的なことを任せていたら、どうにもメインで担当しているエンジニアがスタックしているようにしか見えなくて、ちょっと聞いてみた。

「ねぇねぇ、イベントタスクの準備、いつになったら段取りを説明してもらえる?」
「明後日には。」
「ちょっとまって。そんな悠長な時間軸だと前日何か抜け漏れがあったら対応する時間が取れないんじゃない?」
「じゃあ、前倒しします。」
「そうだね、じゃあ、100点目指さなくていいからその分前倒ししよう。60点か70点くらいでいいから。」

「ねぇねぇ、『進捗どうですか。』。」
「ちょっと遅れています。」
「何時になったら説明できる?」
「あと明日のお昼くらい……。」
「(あと1日かかるのか……。やっぱり前倒し無理だったんだな。あのままやってもらっていたら、それ自体間に合わなかったんだ。危ない危ない。)じゃあそのころに声掛けて。」


結果は、仔細は良く出来ていたんだけれど、イベント的タスクが初めてのことをやるのでやっぱり抜け漏れがあって。確かに、60点、70点でいいから、と前倒しをお願いしたんだけれど、そのときに前倒しでお願いして出来栄えの点数を落としたのは、スピードを重視したからです。


ボトムアップで積み上げるにはツラ過ぎる
なぜ、スピードを重視したか、は、完全に出来上がってからダメだしをするのはされる方がつらいのはもちろん、ダメ出しをする方もつらいんです。スケジュールのリカバリーが。


実はですねぇ、全体の進め方は着手する前、途中の会話の中でとお願いしていたんですね。トップダウンで考えて、って。子細な手順から積み上げないで、って。なぜなら、初めてのタスクの場合、経験値がないから手探りでやることが多いですよね。だから、積み上げで下から固めてしまうと、経験値がないことに由来して積み上げてみたら目指すゴールの方向を間違えた、ってなりかねないんです。これ、マイルストーンの日になってわかったらつらいですよ。はい。


仔細から積み上げるのはボトムアップってよく言いますが、それを使うのは、ケースバイケースで使う場面か、考えた方が良いです。なので、ゴールが決まっていないものは、必ず、トップダウンでモノゴトを考える癖をつけた方がいいのです。


登場人物を限定してしまう
イベント的タスクは、検証だったのでインプットとなる情報が必要でした。さて、インプットとなる情報なり、検証する環境なり、必要な除法がそろっているかメンバは確認したのでしょうか。


確かに結果的には同じような近い結果になったのですが、正解かと問われればやっぱり違うんです。検証する環境の構成からいえば、インプットとなる情報はメンバが想定した範囲では足らないんですね。ある部分のボリュームを丸々除外していたんです。


検証としては、その環境にある登場人物はすべて登場するとしないと、検証結果に曖昧さが出てしまう。検証した結果に想定した以外の情報がメンバの視点からいえば、混入してきたことになりかねないんです。


なので、インプットとする情報は、その環境下での範囲を広げてから、実際の検証で入ってくるだろう情報はどれかを絞り込まないとダメなんです。


大きな母集合からザクザクと絞っていった方が、楽ですよ。


なんでも一緒に考えて解決しようとする
あと、メンバがイベント的タスクの登場人物を限定して考えていたとき、別のテーマについても一緒に考えていたんですね。それは、検証データとして採取する情報としてとれるだろうデータ群と環境下において情報として挙がってくる可能性のあるデータ群とのです。


環境下として取れる情報元のデータ群は、「(論理的に)採れるね。」であって、それはそれで押さえておなかいといけないことです。そして、実際取れるデータ群は、「(物理的に取れる条件下なら)採れるだろうね。」なんです。


先に、母数としてこれこれ「のデータ群の集まりが採れるよ。」と「でも実際は物理的に存在しているものだけが)採れるよ。」とはそれぞれ別に整理してから、実データとして採れるものはこれこれと分けて考えた方が楽だし、間違えがないと思うんです。


得てして、混ぜて考えて、自分で整理しきれないでスタックしているエンジニアが多いこと多いこと。



ゴールのイメージを決めないではじめてしまう
もう一つ。トップダウンで考えましょう。特に、初めてのことのときは。きちんとゴールを仮でも決めないとつらいですよ。向きを決める、それを合意してほしい人が居るなら、その人と合意する。それから、順番に仔細に展開する。これが、基本です。


そうしないとということは、イメージも持っていないゴールに向かってあっているかどうかも分からない部品を寄せ集めていくようなものです。自分でイメージを持っていないから、どんなものが出来上がるか自分自身わからないんですよ。そんなやり方で悶々としませんか。


そんなことで悩むなんて、バカらしいですよね。だから、やめましょう、って言うんです。大体、WBSだって目的のゴールを作る為に作業を分解するんですから、トップダウンで順に展開する方が自然ですよね。ところが、技術がある分、“作る”ばっかりに神経が集中しちゃうんです。その楽しい“作る”は、ちょっと先に取っておきましょう。