Scrum vs. kanban: Which agile framework is better?

Learn the differences between scrum and kanban and which may be best for your team.
245 readers like this
245 readers like this
Team checklist and to dos

Because scrum and kanban both fall under the agile framework umbrella, many people confuse them or think they're the same thing. There are differences, however. For one, scrum is more specific to software development teams, while kanban is used by many kinds of teams and focuses on providing a visual representation of an agile team's workflow. Some argue that kanban is about getting things done, and scrum is about talking about getting things done.

A history lesson

Before we get too deep into scrum and kanban, let's talk a little history. Before scrum, kanban, and agile, there was the waterfall model. It was popular in the '80s and '90s, especially in civil and mechanical engineering where changes were rare and design often stayed the same. It was adopted for software development, but it didn't translate well into that arena, with results rarely as anyone expected or desired.

In 2001, the Agile Manifesto emerged as an alternative to overcome the problems with waterfall. The Manifesto outlined agile principles and beliefs including shorter lead times, open communication, lighter processes, continuous training, and adaptation to change. These principles took on a life of their own when it came to software development practices and teams. In cases of irregularities, bugs, or dissatisfied customers, agile enabled development teams to make changes quickly, and software was released faster with much higher quality.

What is agile?

An agile framework (or just agile) is an umbrella term for several iterative and incremental software development approaches such as kanban and scrum. Kanban and scrum are also considered to be agile frameworks on their own. As Mendix explains:

"While each agile methodology type has its own unique qualities, they all incorporate elements of iterative development and continuous feedback when creating an application. Any agile development project involves continuous planning, continuous testing, continuous integration, and other forms of continuous development of both the project and the application resulting from the agile framework."

What is kanban?

Kanban is the Japanese word for "visual signal." It is also an agile framework or work management system and is considered to be a powerful project management tool.

A kanban board (such as Wekan, an open source kanban application) is a visual method for managing the creation of products through a series of fixed steps. It emphasizes continuous flow and is designed as a list of stages displayed in columns on a board. There is a waiting or backlog stage at the start of the kanban board, and there may be some progress stages, such as testing, development, completed, or abandoned.

Wekan kanban board

Each task or part of a project is represented on a card, and the cards are moved across this board as they progress across the stages. A card's current stage must be completed before it can be moved to the next stage.

Other features of kanban include color-coding (to identify different stages or types of tasks visually) and Work in Progress (WIP) limits (to restrict the maximum number of work items allowed in the different stages of the workflow).

Wekan is similar to Trello (a proprietary kanban application). It's one of a variety of digital kanban tools. Teams can also use the traditional kanban approach: a wall, a board, or a large piece of paper with different colored sticky notes for various tasks. Whatever method you use, the idea is to apply agile effectively, efficiently, and continuously.

Overall, kanban and Wekan offer a simple, graphical way of monitoring progress, sharing responsibility, and mitigating bottlenecks. It is a team effort to ensure that the final product is created with high quality and to the customers' satisfaction.

What is scrum?

Scrum typically involves daily standups and sprints with sprint planning, sprint reviews, and retrospectives. There are daily scrums and two- to four-week sprints (putting code into production) with the goal to create a shippable product after every sprint.

team_meeting_at_board.png

Daily stand-up meetings allow team members to share progress. (Photo credit: Andrea Truong)

Scrum teams are usually comprised of a scrum master, a product owner, and the development team. All must operate in synchronicity to produce high-quality software products in a fast, efficient, cost-effective way that pleases the customer.

Which is better: scrum or kanban?

With all that as background, the important question we are left with is: Which agile framework is superior, kanban, or scrum? Well, it depends. It is certainly not a straightforward or easy choice, and neither method is inherently superior, but one might be more valuable than the other given the state of the organization, the makeup of the team, the product or service to be produced. In some cases, even the use of kanban and scrum together, scrumban, if you will, is an effective choice.

Software development teams typically use scrum because it has been found to be highly useful in the software lifecycle process.

Kanban can be used by all kinds of teams—IT, marketing, HR, transformation, manufacturing, healthcare, finance, etc. Its core values are continuous workflow, continuous feedback, continuous change, and stir vigorously until you achieve the desired quality and consistency or create a shippable product. The team works from the backlog until all tasks are completed. Usually, members will pick tasks based on their specialized knowledge or area of expertise, but the team must be careful not to reduce its effectiveness with too much specialization.

Conclusion

There is a place for both scrum and kanban agile frameworks, and their utility is determined by the makeup of the team, the product or service to be delivered, the requirements or scope of the project, and the organizational culture. There will be trial and error, especially for new teams.

Scrum and kanban are both iterative work systems that rely on process flows and aim to reduce waste. No matter which framework your team chooses, you will be a winner. Both frameworks are valuable now and likely will be for some time to come.

Tags
Taz Brown, is a Sr. Technical Scrum Master & Agile Expert at Cisco Systems as well as a Product Manager  working with DevOps and Software Development teams.  She is an avid writer and speaker with a diverse background in Scrum, Agile, digital product management, Linux systems engineering, management and deployment of DevOps solutions.  

4 Comments

Nice summary, thanks.
One thing I'd lover to hear about is what kinds of software development project (types of products) are better geared toward scrum or kanban. I think I see a lot of literature which implies that scrum is well suited for projects like web applications where we have the luxury of incrementally improving the product and controlling how it is tested/approved. But scrum doesn't seem well suited to other kinds of software delivery ... interested to hear people's opinion on that.

I tend to prefer kanban, but I generally see management not liking that as it is less rigid in its incremental delivery cycle ... as in, managers seem to like scrum sprints because at the end of 2 weeks you know what you have or don't have ... and that sort of time-boxing is not appropriate for every kind of software product and release cycle.

Lots of incorrect information presented here on many levels. Those of us who have been involved in the evolution of agility know it's something orgs and people are and not something they do. There is no agile umbrella and kanban is a workflow management process, not a product development framework (which Scrum is.) Neither is a methodology (which is how we got into a mess in the first place.)

The Manifesto never stipulated that agile was a specific way of working or developing. Agile by definition is a collection of values and principles that now move beyond software development to permeate entire organizations. That's Modern Agile.

Tom, I believe in my article I did state that Scrum and Kanban are frameworks. T I distinguished the difference between Scrum and Kanban and certainly mentioned that scrum was used with dev teams or in the SDLC process. You can feel free to write an article presenting your position but this mine. What I took from the Manifesto is my perspective and I don't believe it's wholely incorrect as you suggest. So I disagree "that there is lots of incorrect information presented on many levels."

In reply to by Tom Mellor (not verified)

Creative Commons LicenseThis work is licensed under a Creative Commons Attribution-Share Alike 4.0 International License.