• The next phase doesn't commence until the prior phase is completed, with the project progressing in a strictly linear format, which we all know doesn't happen.
• The requirements need to be clearly defined and complete before we move to the next phase, which we know doesn't happen.
• The requirements don't change throughout the lifetime of the project, but with today's business dynamics, many do change.
Exec: I need this feature for the next release in six months.
Development team: It will take a year.
Exec: If you can't deliver it in six months, I'll find someone who can.
Development team: Okay, we'll do it.
Outcome A: The project is late.
Outcome B: The project is delivered on time, but the dev team spends the next year fixing bugs in it and can't deliver any new features.