今やってる仕事のグチをちょっと垂れ流す次第。


最初その仕事を始める前に聞いていた説明では
モジュールが大きく分けて5本あって、
うち1本が俺担当、
残り4本がすでに出来てる
ということだった。


でしばらくして自分のところが出来たので
他のモジュールとつなげてみるため、
全部のソースを集めて、コンパイルを通すと
2本はコンパイルすら通らない、という酷い出来だった。。。


ここでその問題に対応するにあたり、
そのイカれたソースを書いた人は今会社にいない
そうなので自分でやることに。
じゃあどう直すのかってことになるが


・全部捨てて1から書き直す
・現状の大まかな作りはそのままにしてコンパイルが通らない箇所だけ直す


どちらを選択するか決める必要があり、
ちょっと悩んだのだが


・既に1つのモジュールにつき4千行ぐらい書いてあった
・仕様書が今時フローチャートまで詳細に記載されていた
・ざっとソースを見たら大まかにはあってそう
・何より全ての仕様書を読んで1から書くのがめんどくさい


ことからコンパイルが通るよう修正すれば全体的に動作するだろうと
楽観的に考え、現状のつくりを維持する方向で修正していった。


その後それなりに時間をかけて書いた後、
コンパイルは通っていた残り2本と繋げてみたら


全く動かない


そう、残り2本も未完成だったのだ。


流石にこのころになるとイライラも頂点だったので
残り2本のうち1本の4千行あったソースを全て捨てて
仕様書の見直しから始めることにした。
(もう1本は500行ぐらいだったので
 後で直ぐ直せるだろうと思って放置)
仕様書で足りない・間違っている部分は
最低限必要な分だけ追記してコーディングを始めたら
・仕様決め   4日
・コーディング 6日
・試験     3日
の日数で空行込みで8千行という
自己最高の生産性を出すことができた。
(これやってる間が最高に楽しかった)


そして今はクソモジュール4本のうち、
現状のつくりを大切にした3本のデバッグに悪戦苦闘中。。。




仕様書はフローチャートまで書いてても
出来上がるモジュールは担当者によっては
この体たらく。。。


逆に仕様書はペラペラだけど
しっかり動作するモジュールを書き上げる
人もいる。
※この場合、仕様書とコードを書く人は同一であるが。


この事実から俺は何を学ぶべきなのだろう。。。
とりあえず今はこの仕事の管理をしてたやつに
呪いをかけることぐらいしか思いつかないが。。。