EppsNet Archive: Waterfall

Waterfall: The USSR of Software

 

Think of waterfall as being similar in concept to the old USSR central planning of the economy. Think of Scrum as similar to a market economy. — Ken Schwaber Read more →

How Long Should it Take to Define a Project?

 

Project X hit a milestone called Vision/Scope seven months ago, 99 days late. It’s 312 days late on the current milestone, which is called Definition. To date, the project has consumed 36,000 labor hours — 18 person-years — and $2.5 million. At this morning’s enterprise-level status meeting, it was decided that Project X will be put on indefinite hold, as it is no longer a strategic priority. This reminded me a lot of an article I read a few days ago: What the waterfall does well is to keep useless projects from resulting in useless code that needs to be maintained. I’m not sure if that’s the real purpose, but it’s certainly a great side benefit. It may sound inefficient to pay a lot of engineers to get started on projects, do a bunch of analysis and design, and finally abandon the whole thing when something else becomes a higher… Read more →

Criticisms of the Standard Waterfall Model

 

There have been a number of criticisms of the standard waterfall model, including Problems are not discovered until system testing. Requirements must be fixed before the system is designed — requirements evolution makes the development method unstable. Design and code work often turn up requirements inconsistencies, missing system components, and unexpected development needs. System performance cannot be tested until the system is almost coded; undercapacity may be difficult to correct. The standard waterfall model is associated with the failure or cancellation of a number of large systems. It can also be very expensive. — “The Standard Waterfall Model for Systems Development” Read more →

The Legacy of Waterfall

 

We are so unprofessional it is incredible. The legacy of waterfall is so dominant it is scary. — Ken Schwaber Read more →

Shibboleths

 

And the Gileadites took the passages of Jordan before the Ephraimites: and it was so, that when those Ephraimites which were escaped said, Let me go over; that the men of Gilead said unto him, Art thou an Ephraimite? If he said, Nay; Then said they unto him, Say now Shibboleth: and he said Sibboleth: for he could not frame to pronounce it right. Then they took him, and slew him at the passages of Jordan: and there fell at that time of the Ephraimites forty and two thousand. — Judges 12:5-6 Thus the original meaning of the word “shibboleth”: a password that people from one side can pronounce but their enemies can’t. The word has since taken on a more general meaning as not necessarily a password, but a custom or practice that separates the good guys from the bad guys, the insiders from the outsiders. Read more →

Respect the Classics, Man: No Silver Bullet

 

This essay by Turing Award-winner Fred Brooks is almost 20 years old now. Sadly, the ideas on incremental development are still considered outside the mainstream in IT, which continues to favor the widely-discredited waterfall approach. Read more →

The Waterfall Approach Persists as an Urban Myth

 

Much of present-day software acquisition procedure rests upon the assumption that one can specify a satisfactory system in advance, get bids for its construction, have it built, and install it. I think this assumption is fundamentally wrong, and that many software acquisition problems spring from that fallacy. — Fred Brooks, “No Silver Bullet: Essence and Accidents of Software Engineering” We were doing incremental development as early as 1957, in Los Angeles, under the direction of Bernie Dimsdale [at IBM’s Service Bureau Corporation]. He was a colleague of John von Neumann, so perhaps he learned it there, or assumed it as totally natural . . . 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… Read more →