Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

 WaterfallScrum
Fundamental AssumptionsSystems are fully specifiable, predictable, and can be build through meticulous and extensive planning.High-quality, adaptive software can be developed by small teams using principles of continuous design improvement and testing based on rapid feedback and change.
ControlProcess centricPeople centric
Management StyleCommand-and-controlLeadership-and-collaboration
Knowledge ManagementExplicitTacit
Role AssignmentIndividual - favors specializationSelf-organizing teams - encourages role interchangeability
CommunicationFormalInformal
Customer's RoleImportantCritical
Project CycleGuided by tasks or activitiesGuided by product features
Development ModelLife cycle modelEvolutionary delivery model
Desired Organizational StructureMechanistic (bureaucratic with high formalization)Organic (flexible and participative, encouraging cooperative social action)

When to Use Waterfall and When to Use Scrum

We recommend using Waterfall if:  

  • You don’t expect changes in scope and you’re working with fixed-price contracts
  • The project is very simple or you’ve done it many times before
  • Requirements are very well known and fixed
  • Customers know exactly what they want in advance
  • You’re working with orderly and predictable projects

And you should use Scrum if:

  • The final product isn’t clearly defined
  • The clients/stakeholders need the ability to modify the scope
  • You anticipate any kind of changes during the project
  • Rapid deployment is the goal

When deciding between Agile versus Waterfall, it can all boil down to this: if you anticipate or expect any changes throughout the project, go with Agile. If you know the project is fixed, unchanging, and predictable, Waterfall may be a better choice.