契約駆動(contract driven)は防衛的プログラミングとは全然違いますよ。僕は、防衛コードや性悪説(人を見たら泥棒と思え)を嫌っている(それは近所にいる人は知っているでしょう)。仕様、契約、振る舞い(この文脈で「振る舞い」って言葉使うのもどうかと思うが)などは、むしろ非防衛的にするための道具。
「ナントカ駆動」も手垢がついたな、と思ったので、デュアルプログラミング(dual programming)って言葉を考えてみたのだけど、ペアプログラミングと間違われそうなのが難です。デュアルプログラミングって何かって? ま、そのうち。