Skip to content.

TalkBMC

Sections
You are here: Home » Blogs » Walter Bodwell » Agile Engineering » Staying Releasable

Staying Releasable Staying Releasable

Document Actions
Staying releasable is a key focus for Agile development. You attack the work incrementally (typically in two week iterations). You learn from that work and you make adjustments with what you attack in the following iteration. By approaching things incrementally and staying releasable, your dates become much more predictable. You also introduce the opportunity to cut intermediate drops for customers or internal users to get more feedback. But what does it mean to stay releasable? And how do you achieve it?

The first step is to break the release into iterations.  Opinions vary on what the correct length is, but typically two weeks is about right.  If you want to do something which will take more than two weeks, you'll need to break it up into increments.  The best increments are those which introduce customer value and are testable.  In other words, don't break it into design, implement, test.  Or for that matter back end and front end.  Instead break it into smaller features which can be designed, implemented and tested within an iteration.

Once you're attacking things in iterations, try to pull the full lifecycle into that iteration.  Testing within the iteration is critical.  It requires a lot more interaction between development and QA.  The two need to go hand in hand.  Next is documentation.  Make sure that any changes to the documentation are also done in the iteration.

Once you have those in the iteration, focus on fixing any resulting defects within the iteration as well.  Make sure any changes to the install or upgrade are done within the iteration.  Start focusing on downstream affects like changes to the bill of materials or changes to training materials.

Getting to the point that all of this is done consistently within the iteration can take a while.  It requires a lot of evolution in the organization.  One way to cope in the interim is to add "hardening" iterations.  The objective here is to add some time to clean up anything that you couldn't do within the iteration.  You might start with one or more mid-release hardening iterations.  And leave one through four hardening iterations at the end.  Your goal is then to reduce the need for these with every release.


_____
tags:
Tuesday, October 30, 2007  |  Permalink |  Comments (0)
Walter Bodwell

Subscribe to Walter's blog Subscribe to Walter's blog

Walter Bodwell's Bio

Agile Engineering
« May 2008 »
Su Mo Tu We Th Fr Sa
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
 

Powered by Plone

This site conforms to the following standards: