Choosing Project Management Methodology: Waterfall vs. Scrum vs. Kanban

Volha Hrachova
4 min readApr 8, 2024

--

Project Management Methodology

The success of any project depends a lot on the project management processes. However, some studies show that only about half of all companies prioritize choosing the right software development process as important, despite its significant impact on delivering projects on time and within budget.

There are different software development models and methodologies, while the most popular options are Waterfall model and Agile methodologies (Scrum, Kanban).

Each method has its strengths and weaknesses and works better for different projects.

In this article, I’ll provide a quick overview of Waterfall, Scrum, and Kanban methodologies. It will help you understand which project management approach might be good for your project.

Waterfall

Waterfall is a linear approach to software development, where each stage should be completed before the next one begins.

Waterfall model contains five consecutive stages:
- Requirements
- Design
- Development
- Testing
- Deployment & Maintenance

Waterfall

Advantages

  • Simple and easy to understand
  • Clearly defined stages and milestones
  • Time and budgets can be estimated more accurately

Disadvantages

  • High amounts of risk and uncertainty
  • Little flexibility: adjusting the scope is difficult and expensive, any change requires restarting the entire process
  • Not suitable for long, complex projects or projects with changing requirements
  • Testing starts closer to the end of the project and usually — too late for any changes and modifications

When to Use Waterfall Model

  • Projects with well-documented, clear, and stable requirements
  • Short, small, or simple projects
  • The full scope of the work is known in advance

Scrum

Scrum is one of the most popular Agile methodologies that uses an incremental approach to software development.

Scrum teams work in short fixed-length periods called Sprints (usually 2–4 weeks long).

Key Scrum Components

  • Product Backlog — a list of user stories/features/tasks
  • Sprint Backlog — a list of tasks from Product Backlog selected to work on during the Sprint
  • Product Increment — completed during Sprint piece of software product
Scrum

Scrum Ceremonies

1. Sprint Planning — define what to complete in the coming sprint
2. Daily Stand-Up — 15-minute mini-meeting for the software team to sync
3. Sprint Review/Demo — meeting to show what was shipped during the sprint
4. Sprint Retrospective — review of what went right and areas for improvement with actions to make the next sprint better
5. Grooming — backlog refinement/management

Scrum roles

Product Owner
Scrum Master
Development Team

Advantages

  • High transparency due to daily stand-ups
  • Prompt and regular delivery of results
  • Early customer feedback, allowing to review delivered work and make changes

Disadvantages

  • Risk of scope creep (seeing a tree but not the forest)
  • Poorly defined tasks can lead to increased time and costs
  • Limited effectiveness in long-term planning

When to Use Scrum

  • Large and complex projects
  • Projects with changing or unclear requirements
  • The client needs flexibility to modify the scope/requirements

Kanban

Kanban methodology is another type of Agile methodology. It’s a visual system for managing work that goes through the process.

Let’s say the capacity of a Test team is testing 7 features per week, while the capacity of a Development team is implementing 10 features per week. In this case, developers' work will begin to pile up in front of the testers.

The goal of Kanban is to identify and resolve potential bottlenecks in the process. It is achieved with the help of Kanban board — a visual board, where cards representing work activities are placed in appropriate columns.

Columns can be customized based on particular project needs (e.g. Pending, Analysis, Development, Testing, Deployment).

Each column has a number at the top. These numbers are limits on the number of cards allowed in each column.

Limiting the amount of Work In Progress (WIP) at each step highlights bottlenecks and allows us to address them on time.

Kanban Board

Advantages

  • Visibility (kanban board)
  • Flexibility
  • Increased efficiency and productivity (limit WIP and therefore help each other to resolve bottlenecks)
  • Continuous delivery

Disadvantages

  • Outdated board can lead to issues
  • Teams can overcomplicate the board

When to Use Kanban

  • Flexibility is more important than predictability
  • Frequent change of priorities
  • Multiple releases per day/week or unscheduled releases

Conclusions

There is no best methodology option for every project. The choice depends on:

  • the project (its complexity, size, budget, etc.)
  • the level of clarity around the requirements (how well documented, clear, and stable they are)
  • required flexibility

--

--

Volha Hrachova

Lead Software Test Engineer and Software Quality Enthusiast