Agile Methodologies: Scrum and Kanban
Agile project management in itself is not a methodology like Scrum and Kanban but a set of values and principles. These are values recorded in its manifesto and include:
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
Every method that honors these values and its 12 principles can be considered Agile. It doesn’t matter if you follow a strict method or have developed your own system based on trial and error – it’s about the core values.
The key to successful Agile project management is full team commitment to honoring the Agile Manifesto.
With that said, there are two established Agile methodologies that have proven the most popular amongst project managers. Let’s take a look at Scrum and Kanban and the differences between each.
Scrum Project Management
Scrum project management is a popular framework that focuses heavily on iterative or incremental projects of all types. This focus allows Scrum to deliver the optimal business value in the shortest time possible.
All iterations or increments should always have a well-defined goal. These goals can be changed throughout the project, from iteration to iteration.
Within Scrum, the product owner or ‘Scrum Master’ works closely with the team to create a Backlog. From this, they can prioritize system functionality.
Once priorities are established, cross-functional teams deliver working products within a Sprint. Sprints usually last 2 to 4 weeks.
Just like a rugby Scrum, where are all team members group together to gain possession of the ball, Scrum Agile Project management depends entirely on cross-functional teamwork. Solutions to problems are derived from team collaboration.
This collaboration manifests in the form of Scrum ‘ceremonies’:
- Sprint planning
- Sprint demo (work completed in a sprint)
- Daily stand-up
- Sprint review/retrospective.
Tasks are managed on Scrum Boards (not to be confused with Kanban Boards which we will discuss later) with lists for ‘to-do’, ‘in progress’, and ‘done’.
Scrum Project Management is based on the adaptive and iterative methodology of development.
Kanban Project Management
The other most popular agile framework is Kanban. Kanban translates to “visual signal” and originated on the Toyota factory floor in the 1940s. It was developed as an ordering or planning system.
The original aim was to optimally manage work and inventory at every stage of the manufacturing production.
By controlling the flow of work, bottlenecks in production are avoided. Adapting this thought process for Agile project management allows fast development with an emphasis on optimized, continuous flow. Once a task in progress is completed, developers simply pull new work from a queue.
As its name implies (‘visual signal’ or ‘billboard’), Kanban is entirely based around the Kanban Board.
A Kanban board consists of columns to visualize and track progress. It uses cards, columns, and just-in-time continuous improvement to help development teams commit to the right amount of work and get it done.
You can also use horizontal swimlanes to categorize your work further. To ensure the right amount of time is allocated to tasks and that no one team member is overwhelmed, we need WIP limits. A WIP, or ‘Work-in-Progress’ limit restricts the number of tasks in progress to what is manageable. This is usually 3 tasks in progress at any time.
Scrum and Kanban: which is better for you?
As we outlined before, Agile is to be interpreted rather than rigidly followed and it is up to you to decide what elements of Scrum and Kanban you wish to follow. Here are the main differences.
Sprints vs Continuous Flow
- Scrum focuses on sprints that are a set period of time whereas Kanban cadence is focused on consistent and continuous workflow.
Speed vs Improvement
- Scrum methodology typically tackles complex knowledge work, such as software development. Kanban is primarily concerned with improvements to processes, while Scrum emphasizes quicker production.
Planning and Estimation
- Scrum stresses planning, starting with sprint planning and ending with sprint retrospective. Kanban is less rigid and more open to making changes frequently on the fly.
Roles of Team Members
- The Scrum Master acts as the chief problem solver, unlike Kanban where every team member shares responsibility and leadership.
Stable priorities vs. Regular changing focus
- Kanban works best for teams with stable priorities that are unlikely to change over time. Scrum allows for changing priorities from sprint to sprint.
- Velocity is the key metric to Scrum while Lead time, cycle time and Work in Progress are most important to Kanban.
Agile Project Management Resources
Outside of work, Micheál likes to find new stories through podcasts, movies, sport and travel.