少し前に、ユーザ企業側のシステム担当という中間的役回りだった時の話。

TDD使ってて、ソースコードもVSSでバージョン管理していても開発スタイルはウォーターフォール。orz
web アプリなのに1年がかりのプロジェクト。

その間、要求の変更があっても受け付けない。そのため開発終了時には時代に取り残されてしまっている。


途中で要求変更を受け付けないのは、その方が開発者にとって楽だから?

顧客に対して開発サイドが圧倒的優位にいる場合、要求を却下するという選択肢がとれる。その場合、要求の変更に柔軟に対応できて顧客も開発者もハッピー、というアジャイルは使われないのか?

そうはいっても、実際にはギリギリになってごり押しの仕様変更などは発生するのである。そして毎度の徹夜作業。

意外に、このリリース直前の徹夜作業とかって、アドレナリン出るというか、やったぜ俺達、みたいな快感を得たりして。


自分としては、使う人に満足いただけるシステムを提供できるのが最大の喜びで、そのために開発プロセスは常に改善していきたい。要求の変更と実装の距離を縮めるアジャイルはその選択肢としてある。

かといって、TDDだけが独り歩きしてしまったりすると、それは本質的な部分を見逃しているわけで、それじゃあTDDも本領発揮できずかわいそうだよ、と思う。

時間はかかるが、本質的な部分から広めていきたいところです。