In the heat of introducing agile practices like daily stand-up meetings, retrospectives, unit testing, or defining “Done”, you can get easily overwhelmed by all the new and shiny ideas. It’s a real danger that implementing these new practices creates huge overheads, slows you down, and frustrates the team. They forget why you actually introduced agile in the first place. To be able to judge, which processes and procedures are worth introducing it’s important to remember the three essentials of agile.
The first and foremost advantage of introducing agile processes like Scrum or Kanban is creating transparency. By publishing a backlog of prioritized jobs and displaying work in progress on a Story Wall or Kanban board everyone is able to see what’s up.
The Backlog reflects changes in priorities and makes it obvious to everybody how the current plan changes when introducing a new high priority item into the backlog.
The Kanban board shows who’s working on what. By looking at clusters of stories in one stage, you can visually identify bottlenecks in your process.
By forcing yourself to write down all TODOs into a discretely ordered list, you start to focus on the most important thing at hand. Only after successfully finishing the most important User Story do you start on the next.
The Kanban board creates focus by peer pressure. If you put a card into the “in progress” stage everyone expects you to deliver that user story. Conversely, if you have multiple cards “in progress”, you’d better be able to explain to the team why you’re distracted and not asking your team mates to help you to deliver one story at a time.
Feeling of progress
Cutting a big backlog down into iterations and pulling cards across your Kanban board helps you to feel the progress you’re making. And, by obeying your definition of “Done”, you know a finished User Story won’t have to be touched again later.
Finishing iteration after iteration, and pulling card after card from “Todo” into “Done” on the Kanban board will raise morale on the team as they gain traction and realize they’re moving.
The ultimate goal of agile: Ownership
By making progress (and bottlenecks) visible, helping people focus, and pulling together as a team, everyone starts to be proud of what they’re doing. Suddenly, they want to be responsible for the whole story (not just an implementation detail). They start to take pride in delivering perfectly working features. Congratulations, you’ve reached the ultimate goal of agile: Your team takes ownership!