センパイと考える時間と作業時間を分離すること


いきなり設計書に向かって作業をするより、情報を整理してデザインをする時間をとる方が大切。
考える時間と作業する時間を分離すること。それが作業を進捗させるコツ。



「どお、設計の作業終わった」
「まだですよ、センパイ。そんなにすぐに終わるわけないじゃないですか」
「そうか、それほど難易度高くないはずだけど…ぐぇ、イテテ。なにすんの」
「センパイが悪いんですよ。人が作業集中しているのに邪魔するから」
「いやいや、これ俺の仕事だからしょうがないじゃん。朝会で気になったんだから聞くだろう、進捗」
「だから、仕様を書いているところですって。半日くらいで進展しませんってば」
「もしかして、処理能力おそ…。おっと、2回もひじ鉄なんてもらわないぞ」
「学習機能はあるんですね。よかったです」
「お褒めにいただき嬉しく思います」
「じゃあ、持ち場に戻ってください」
「だから、進捗は」

「まだかかりますから、席に戻ってください。ジャマです」
「それで、どこで積んでいるの」
「積むですって。わたしが、ですか。そんなんじゃありません」
「じゃあどこで困っているのかな」
「…この、条件ごとの仕様の整理で…」
「そうか。わからないところはわかっているんだ」
「なんですか、センパイのくせにわたしのことをバカにしているんですか」
「そうじゃないて。わからないことをわかっているということはそれがわかったら進むじゃん」
「あっ、そういうことですか。なら良いです」
「それで、フムフム、なるほど、なるほど」
「…なんか上からですね」
「まぁ、立っているから」
「バカですね」

「とりあえず、元気は残っているのは把握した」
「…もう、センパイは…」
「あのさ、仕様を作りながら設計書書いているでしょ」
「えっ、そ、そうですけど、それがどうしたんですか。わたしの仕事の仕方に」
「考えをさ、整理しながら設計書を書くのは効率が良くないんだよ。オレの場合は。あくまでもオレの場合だけどさ」
「そ、そうなんですか」
「そうなんだよ。そうそう。そうなんだ」
「それで」
「あぁ、あのさ、いきなり設計書に書く前にさ、ノートかコピー紙にさ、ペンでさ、ざっとインプット情報を整理するんだよ。ちょっと待って。この場合なら」
「自分でやりますから。ペン貸してください。えっと、インプット情報は…区分が3ケースあって、処理はこれはこれで、それはそれで…」
「そうそう。まず、わかっている情報を整理するんだ。それでそのケースの場合は、3ケース以外のケースはどうする」
「そうですね、仕様上は3ケース以外は進めちゃダメなんです。だから」
「そこって、システム設計上の共通の考え方を当てはめられるかどうか、ね」
「言わないですください、自分で考えないと意味ないんですから」

「ごめん、ごめん」
「ダメなデータは最初に弾くんですよね。そうなると」
「弾くにしてもどこで弾くか選択肢があるじゃん」
「わかっていますってば」
「でも、さっきまではわからなかったんじゃない」
「…」
「それをさ、いきなり設計書に向かって書くんじゃなくて、設計の仕様をさ、かっこよく言うとさ、デザインを決めてから設計書に書けば良いんだよ」
「まあ、よさそうですけど。センパイのそのやり方は」
「おっ、褒めてもらえたぞ」
「もう…何言っているんですか。教えてくれることはそれだけですか。他にもあるならさっさと教えてください」
「いきなり設計書に向かう前にデザインを書こうね。設計書を書くのは作業にしようね。考えるのは先に終わらせておこうね」
「はいはい。それはさっき教えてもらいました。ありがとう、ご・ざ・い・ま・す」
「それでさ、エラー処理はちょっとアーキテクトとそうだんだなぁ。今からアーキと方針を見直そう。さ、一緒にいくよ」
「え、わたしもですか。だって進捗…」
「その仕様で見つけたんだから行って説明しないとね。じゃあ行こう」