Whether you are Agile or Waterfall, you want testability. Whether you release periodically or continuously, you want testability. Testability means how easily a product can be tested. In other words, do bugs hide from you, lurking deep in the folds of your technology? Or do they run out and surrender when you come by, while wearing bright reflective vests? This talk is about ways of achieving testability, including the two big strategies: observability and controllability.
Developers need to know this, not just to help the testing process, but to improve debugging, maintenance, and eliminate irreproducible bugs. Testers need to know this, in order to make the case to developers and management that testability creates speed and enables agility.
Watch this video on http://oredev.org/2013/wed-fri-conference/heuristics-of-testability