This section concentrates on some of the earliest and most well known software development thought leaders; many other experts reiterate their views. Where possible, the material is organized by date of publication. Harlan MillsThe earliest iterative-promoting reference I could find from a prominent expert came in 1970 from Harlan Mills, who worked at the IBM FSD. Mills was perhaps the most well-known software engineering thought leader of the 1970s, winner of the DPMA and Warnier Prizes for lifetime contributions to information sciences, an inventor or contributor to structured programming, top-down design and programming, chief programmer teams, the Cleanroom Method, and incremental development. In his well-known "Top-down Programming in Large Systems" he promotes iterative development. See Debugging Techniques in Large Systems, Prentice-Hall (reprinted in Mills' collected papers, Software Productivity, Dorset House, 1988). In addition to the paper's primary advice to develop starting from top-level control structures downwards, Mills gives the related lifecycle advice of building the system via "iterated expansions."
In 1976, after seeing the many successes with IID on IBM FSD projects, Mills reiterated and strengthened his IID message. In the widely read "Software Development," IEEE Transactions on Software Engineering, December 1976, he writes:
In the context of analyzing a failed three-year inventory control system project, he goes on to challenge the waterfall:
Exasperated at the failures applying the waterfall, contrasted with IID at FSD, Mills asks:
And this complaint in 1976. Further, Mills' Cleanroom Method included IID as part of the method. Tom GilbIn 1976 there was the (published) arrival of a long-standing and passionate voice promoting iterative and evolutionary methods: Tom Gilb. This was the first clear IID-promoting book reference I could find, in Gilb's Software Metrics, Studentlitteratur AB (Sweden). Some examples:
Gilb also wrote Evo articles in the 1978 79 issues of Computer Weekly. And in 1985, he published one of a growing number of articles questioning the sequential lifecycle, in "Evolutionary Delivery versus the Waterfall Model" ACM Sigsoft Software Requirements Engineering Notes, July 1985.
Gilb has been developing and consulting since 1960, is the creator of one of the earliest iterative methods, Evo, and author of popular texts such as Principles of Software Engineering Management, Addison-Wesley, 1988, in which he expands on Evo in several chapters. Frederick BrooksIn 1986 there was the release of a popular article in software engineering, one of whose main themes is the demotion of the waterfall and promotion of IID. It was "No Silver Bullet" by Frederick Brooks, published in Proceedings of the IFIP Tenth World Computing Conference (and reprinted in IEEE Computer, April 1987). In this classic paper, Brooks criticizes the waterfall as undesirable, and extols the advantages of IID:
He rejects waterfall advice and the promotion by requirements engineering advocates of detailed up-front specifications, and lays the blame for much software failure on it:
Like Mills, Brooks was another famous software engineering thought leader. He was manager of the landmark IBM OS/360 operating system project, author of arguably the most widely read software engineering text, The Mythical Man-Month (Addison-Wesley, 1985), chair of the mid-1980s DoD study into software project failure (and what to change), and recipient of the highest awards in computer science and software engineering (the ACM Turing award, the IEEE John Von Neumann Medal, and the President's National Medal of Technology). In the Silver Anniversary edition of The Mythical Man-Month Brooks tried to make it more plain by simply stating, The waterfall model is wrong! Barry BoehmAnother well-known mid-1980s landmark in IID publications from an experienced expert comes with Barry Boehm's "A Spiral Model of Software Development and Enhancement," Proceedings of an International Workshop on Software Process and Software Environments, March 1985 (although more frequently cited in ACM SIGSOFT Software Engineering Notes, August 1986). Boehm's spiral model description promotes iterative and evolutionary development with a strong risk-driven emphasis. To quote:
Boehm, having ties to the DoD community, was successful in introducing the spiral model and its refinement, MBASE, on DoD projects, with a 90% rate of "highly satisfactory products" over several hundred projects. See, for example, "Balancing Discipline and Flexibility with the Spiral Model and MBASE," Crosstalk: The Journal of Defense Software Engineering, Dec. 2001. Boehm has been involved in software development since the mid-1950s, has served as Chief Scientist for TRW (an experienced large systems contractor), Director of the USA DARPA Technology Office, and Chair of the Air Force Scientific Advisory Board. He is the creator of the well-known COCOMO estimation model, and has won the Warnier Prize, the NSIA Grace Murray Hopper Award, and the ACM Distinguished Research Award in Software Engineering. James MartinJames Martin learned of iterative development and timeboxing from Scott Shultz at Dupont, where the practice was first given the name "timebox methodology" or "Rapid Iterative Production Prototyping" (RIPP). It was widely applied at Dupont in the early 1980s under Shultz's guidance. Seeing its success, Martin started in the late 1980s to also promote development by timeboxed iterations for use both within and outside of the practice of rapid application development (RAD). See Martin, Information Engineering: Design and Construction, Prentice-Hall, 1990. Based on its success with his customers, all subsequent method advice from James Martin promoted iterative development, rather than a sequential waterfall. He writes:
And:
The creators of DSDM, another popular iterative method, were RAD developers who were influenced by Martin's promotion of timeboxing and iterative development. Martin has been involved in software development since the early 1960s, and was ranked by Computerworld among the top ten most influential people in the world of computing. He has served on the DoD Software Scientific Advisory Board, is an inductee of the Computer Hall of Fame, consulted to hundreds of organizations for decades, and is the author of over 100 texts on software development and technology. Tom DeMarcoTom DeMarco is a long-time practitioner and student of skillful software development practices, emphasizing people rather than lifecycle issues in his (and Tim Lister's) popular PeopleWare (Dorset House, 1987). In response to my question about his views on iterative development, he wrote (personal communication, email),
In their book, DeMarco writes:
DeMarco was winner of the 1986 Warnier Prize for "lifetime contribution to the field of computing" and the 1999 Stevens Award for "contribution to the methods of software development." Ed YourdonIn the early 1970s, with Larry Constantine and Tom DeMarco, Ed Yourdon founded Structured Analysis and Design, with a waterfall emphasis. But by the mid-1980s, Yourdon (and his colleagues) had shifted course and has since been a promoter of iterative development in many articles and books for example, "The Future of Software: Best of Times, Worst of Times," IEEE Software, January 1998,
Yourdon has been in the field since 1964, is the author of dozens of books, was named one of the ten most influential people in the software field in Crosstalk: The Journal of Defense Software Engineering, and in 1997 was inducted into the Computer Hall of Fame. |