何となく新規性の無い帳票作成とか個別には比較的単純なネットワーク、DBプログラムとかは
仕様をきっちり作ってやってたほうがうまく行くような気がする。

WindowsやJavaで、GUIやOSのサービスを結構深く使ったりするような仕事や、
複雑なGUIになる仕事は、そんな方法論を使って最初から細部まで
きっちり設計しようとしてたのはうまくいってなかったな。

どこまで出来るのかを完全に把握するのが難しい状況で、最初から厳密に仕様を決めようとすると
極端に機能が制限された魅力ない製品になるから、
結局仕様策定と同時進行で、どんどんプログラマーが先行して実験的な
実装を繰り返して、スクラッチアンドビルドしてたのが結構うまくいってたように思う。
もちろん基本的なフレームワークはきちんと設計した上でだけど。

工数の大きさはプログラムの複雑さに比例しないし、工数にこだわる人ほど、
細かい部分に潜む、困難を軽視しすぎる傾向があると思う
The evil is in the detailsだよ