ネズミかゾウかではなくて、肥満か筋肉質かだろう

名著『Cプログラミング診断室』では、ヘタクソで長ったらしいコードが著者の手によって簡潔で短いコードに変わるさまが記載されているけど、同じことがプロジェクト単位でも起こっているわけだ。

「大規模プロジェクトではどうするか」を考えるより、「大規模にしないためにはどうするか」を考えよう - kなんとかの日記

この部分だけはまったく同意する。プログラムは肥満体であってはいけない。筋肉質でなくてはならない。

ただ、勘違いしてはいけないのは、ネズミがどんなに肥満になったところで筋肉質なゾウより大きくなることはないし、ゾウをどれだけシェイプアップしたってネズミより軽くなることはないということだ。

大規模システムがなぜ大規模なのかといえば、要求事項が多いからこそである。要求をシェイプアップするのも大事で筋肉質なシステムにすることは全くもって正しいと言えるが、じゃぁ大規模システムが3人ぐらいで3か月で作るような小規模システムになるかと言うとならない。

肥満か筋肉質か、という話と大きいか小さいかという話を混同してはならない。