agile-process.org Home

A Project Heartbeat

extremeprogramming.org
 If your Agile project doesn't have a heartbeat declare it dead. A steady heartbeat has a fixed length iteration as short as you can make it. A strong heartbeat produces working software ready for deployment to production with completely finished iteration/sprint commitments. A responsive heartbeat creates a new plan each iteration based on feedback from the previous iteration and changing customer needs, not what was left unfinished.
 Steady your heartbeat by making your iteration length a constant then shorten the length to less than you think is possible. Push against resistance to short iterations forcing your team to learn and adapt to Agile processes. Don't just accept that a one week iteration seems impossible. Trust your people to figure it out and fix existing broken procedures. Shorter iterations actually increase the chances of being done on time not reduce it.
 Within an iteration make each day a heartbeat all its own. Start each day with a stand up/scrum meeting. Integrate code at least once a day if not every couple hours. With everyone integrating often you can frequently pull the latest code from your repository so that you always work in the context of the latest versions of everything. Work as if everyday has a deadline too.
 The one essential ingredient that changes repetitive development into iterative development
is feedback. A shorter iteration gives you more frequent feedback and more opportunities to learn and steer your project. Scrum recommends 30 day sprints while Extreme Programming (XP) recommends one week iterations.
 You want your team to have a sense of iteration length to work at a steady pace, estimate better, and be fully prepared for iteration end. You want your customer/product owner to see new functionality often so they feel optimistic about progress and can learn about their problem and potential solution quickly. You want managers/scrum masters to feel a sense of urgency in removing obstacles to success so the team continues steadily throughout the iteration and not rush at the end.
 You want to set expectations that in a short while customers will receive a new version of the system with the features they identified as most important. You want to reflect on how the process went and make improvements. You will make new plans for the next heartbeat. You will finish as much working software as you can and make a simple measurement of progress.
 A measurable, predictable, sustainable pace helps you plan and meet your commitments. Developers are known to steal from the future by working many extra hours to stay on schedule today. But we all know trying to catch up always puts us farther behind because we can't continue that pace. Eventually our pace slows down to
One dozen Agile words: Iterative planning, honest plans, project heartbeat, working software, team empowerment, and daily communication.
almost nothing. With a steady easy to predict pace we can make plans that are more likely to come true.
 Always deliver working software at the end of each and every iteration. Conduct a demonstration of new features every iteration. End every iteration with a retrospective on what could be done better next time. Start every iteration with a planning meeting. Iterations must start from scratch and not what was left over from last iteration. Every iteration should feel like a fresh start, a blank canvas full of new opportunities for an empowered team.A Project Heartbeat

One dozen Agile words: Iterative planning, honest plans, project heartbeat, working software, team empowerment, and daily communication.
About the Author


Copyright 2009 Don Wells all rights reserved.

Most Important FirstIterative PlanningA Project HeartbeatHonest PlansTeam EmpowermentDaily CommunicationWorking Software