Project management in the software development space has become more than just a race from start to finish. While brands that release a product the quickest may get an early advantage, the race doesn’t stop there. In fact this is really just the beginning as the focus has now shifted to delivering continuous incremental improvements in order to ensure a product maintains its relevancy and keeps up with the latest consumer demand.
As a result, project managers across several industries are adopting principles and practices, namely agile, scrum and kanban. But out of the three, which do project managers prefer?
Agile, Scrum and Kanban Explained
Agile refers to a set of principles and values to enable software development teams to deliver the final product while focusing on close collaboration with the customer, developers, testers and managers. Agile enables teams to run development and testing concurrently which fosters continuous incremental improvements.
It is important to keep in mind that Agile is an overarching set of practices while both Scrum and Kanban are two common methodologies based on the Agile principles that were introduced in the Agile Manifesto in 2001.
Scrum is a methodology that comes with a specific set of practices that defines roles, processes and ceremonies. It breaks down the software development cycles into small time-limit chunks known as sprints. The roles that are unique to Scrum are the product owner, who represents the interest of the stakeholders, the scrum master who is responsible for overseeing the progress during these sprints, and the team members who have been assigned to carry out tasks in the sprint.
Eileen O’Loughlin, senior project management analyst for Capterra, said, “Scrum teams set up their workflows under a 'timebox' approach. This involves working to meet a strict deadline and then evaluating performance. With a timebox approach, Scrum teams break projects down into smaller items, called user stories, that they complete during timed sprints. Sprint progress is tracked on a Scrum board.”
Also known as flow-based Agile, “Kanban teams have more continuous workflows, where tasks are placed on a Kanban board in a “to do” column. A team member then takes ownership of the task, moving it across the board from “in progress” to “completed,” at which point they move on to the next task in the queue,” said O’Loughlin.
O’Loughlin added that Kanban does not follow a strict schedule, unlike Scrum, Kanban teams regulate their workflow by setting work-in-progress limits and regularly calculating lead and cycle times.
Related Article: Agile vs Scrum vs Kanban Weighing the Differences
What Are the Best Use Cases for Scrum and Kanban?
Alan Zucker, founding principal at Project Management Essentials, said scrum is best for when your organization is “developing or upgrading applications that require strong, regular interaction between the product owner and the team. For example, if you are designing a new website the product owner would sit with the development team and provide input and feedback as they are developing the [application]. This greatly shortens the feedback loop.”
Scrum does require a degree of restructuring of your software development team since you need to follow a set of well-defined principles. But with Kanban, no restructuring is required and it can be “easily adopted and does not require a team to reorganize or introduce new ways of working. It can even be overlaid on top of existing waterfall development practices. Kanban also focuses on delivering value quickly, but is not constrained to the 2 to 4 week sprint cycle [of scrum]. So when a piece of work is complete, it can be deployed immediately into production,” said Zucker.
Related Article: Agile vs DevOps: What's the Difference?
Is There a Natural Preference Between Scrum and Kanban?
According to Zucker, “Scrum has about 55% market share. Kanban has about 5% share as a standalone process, but it is often combined with Scrum and other methodologies.” Zucker based his finding on a report entitled “State of Scrum 2017-2018” that was published by the Scrum Alliance.
Based on these findings, one would automatically assume that Scrum is the more preferred choice. However, Zucker iterated that there should not be a “natural preference” between Scrum or Kanban. “The choice [between Scrum or Kanban] depends on the circumstances and situation. Organizations that want a more dramatic organizational transformation may look to scrum. Organizations that prefer stability may tend to [go with] Kanban. Applications or projects that require a lot of interaction between the product owner and the development team may lean toward scrum. Projects where the requirements are well understood may do better with Kanban,” Zucker said.