"The interesting thing is there are a number of things that work. Design by Contract works. Test Driven Development works. So do Clean Room, code inspections and the use of higher-level languages. All of these techniques have been shown to increase quality. And, if we look closely we can see why: all of them force us to reflect on our code."