(TDD) An iterative software development process where each iteration consists of the developer writing an automated test case for an unimplemented improvement or function, then producing code to pass that test and finally refactoring the code to acceptable standards. Kent Beck, who is credited with having developed or "rediscovered" the technique, stated in 2003 that TDD encourages simple designs and inspires confidence. TDD is related to the humourous definition of programming as the process of debugging an empty file.