Four agile ceremonies, demystified
Meetings, or "ceremonies" are an important part of agile development. But they are one of many important elements, and shouldn’t be conducted in a vacuum. (It's tempting to add some ceremonies to a waterfall project and call it "agile", but this will get you nowhere.)
Let's take a look at each of the agile ceremonies, and understand how they empower the team and drive agile development.
Note: A number of these ceremonies come from the practice of scrum which is an iterative, time-boxed approach to implementing agile. The concepts behind these ceremonies can be applied to other forms of agile like kanban or lean. "Sprint" is a scrum-specific term. Other forms of agile use the more generic term "iteration" to indicate a time-boxed period of development.
Sprint Planning
Attendees: development team, scrum master, product owner
When: At the beginning of a sprint.
Duration: Usually an hour per week of iteration–e.g. a two-week sprint kicks off with a two-hour planning meeting.
Agile Framework: Scrum. (Kanban teams also plan, of course, but they are not on a fixed iteration schedule with formal sprint planning)
Purpose: Sprint planning sets up the entire team for success throughout the sprint. Coming into the meeting, the product owner will have a prioritized product backlog. They discuss each item with the development team, and the group collectively estimates the effort involved. The development team will then make a sprint forecast outlining how much work the team can complete from the product backlog. That body of work then becomes the sprint backlog.
Pro Tip:
Use the sprint planning meeting to flesh out intimate details of the work that needs to get done. Encourage team members to sketch out tasks for all stories, bugs, and tasks that come into the sprint. Foster discussions and gather consensus on the plan of action. Effective planning significantly increases the team's chances of success meeting the commitments of the sprint.
Daily Stand-up
Attendees: development team, scrum master, product owner
When: Once per day, typically in the morning.
Duration: No more than 15 minutes. Don't book a conference room and conduct the stand up sitting down. Standing up helps keep the meeting short!
Agile Framework: Scrum and Kanban.
Purpose: Stand-up is designed to quickly inform everyone of what's going on across the team. It's not a detailed status meeting. The tone should be light and fun, but informative. Have each team member answer the following questions:
What did I complete yesterday?
What will I work on today?
Am I blocked by anything?
There's an implicit accountability in reporting what work you completed yesterday in front of your peers. No one wants to be the team member who is constantly doing the same thing and not making progress.
Pro TIp:
Some teams use timers to keep everyone on track. Others toss a ball across the team to make sure everyone's paying attention. Many distributed teams use videoconferencing or group chat to close the distance gap. Your team is unique. Your stand up should be, too!
Iteration review
Attendees:
Required: development team, scrum master, product owner Optional: project stakeholders
When: At the end of a sprint or milestone.
Duration: 30-60 minutes.
Agile Framework: Scrum and kanban. Like planning, review for kanban teams should be aligned with team milestones rather than on a fixed cadence.
Purpose: Iteration review is a time to showcase the work of the team. They can be in a casual format like "demo Fridays", or in a more formal meeting structure. This is the time for the team to celebrate their accomplishments, demonstrate work finished within the iteration, and get immediate feedback from project stakeholders. Remember, work should be fully demonstrable and meet the team's quality bar to be considered complete and ready to showcase in the review.
Pro Tip:
At Atlassian, we take a casual approach to sprint reviews and give them a celebratory feel. We gather around a team member's desk and watch them demo their new feature. It's not uncommon to hear clapping throughout the office!
Retrospective
Attendees: development team, scrum master, product owner
When: At the end of an iteration.
Duration: 60 minutes.
Agile Framework: Scrum and Kanban. Scrum teams do sprint retrospective based on a fixed cadence. Kanban teams can benefit from occasional retrospectives, too.
Purpose: Agile is about getting rapid feedback to make the product and development culture better. Retrospectives help the team understand what worked well–and what didn't.
Retrospectives aren't just a time for complaints without action. Use retrospectives to find out what's working so the team can continue to focus on those areas. Also, find out what's not working and use the time to find creative solutions and develop an action plan. Continuous improvement is what sustains and drives development within an agile team, and retrospectives are a key part of that.
Pro Tip:
Even if things are going well across the team, don't stop doing retrospectives. Retrospectives provide ongoing guidance for the team to keep things going well.
A team's agility is built on solid engineering practices, a tactical and strategic approach to change, and great team collaboration. Agile ceremonies simply facilitate communication across the team.
Dan Radigan
Agile has had a huge impact on me both professionally and personally as I've learned the best experiences are agile, both in code and in life. You'll often find me at the intersection of technology, photography, and motorcycling.