Iterative and Incremental Development: A Brief History "Project Mercury ran with very short (half-day) iterations that were time boxed. The development team conducted a technical review of all changes, and, interestingly, applied the Extreme Programming practice of test-first development, planning and writing tests before each micro-increment. They also practiced top-down development with stubs."
"We were doing incremental development as early as 1957...where the technique used was, as far as I can tell, indistinguishable from XP...All of us, as far as I can remember, thought waterfalling of a huge project was rather stupid, or at least ignorant of the realities...I think what the waterfall description did for us was make us realize that we were doing something else, something unnamed except for “software development.”"
Other notable references include Boris Beizer and Bill Hetzel in "Introduction to Test Driven Development of Embedded Systems Software": "The value of writing tests early in the design process was first mentioned in 1980 by Boris Beizer, a noted software testing expert. He described the benefit to the testing process of thinking about testing earlier, and then elaborated this point to include the idea that tests developed before the targets of the test may provide additional value in guiding the design effort. Decades later, we have come to believe this is true for a variety of reasons."