I have been working with Agile methodologies for a couple of years now. I have had a fair amount of practice on real projects and read a lot on the subject. Lately Scrum has been on the top of my list. I like some of the added direction for product/project management that I felt was missing in eXtreme Programming. One thing that I haven’t yet figured out is the cadence or flow between iterations (or sprints to use Scrum terminology). You have a Sprint Planning Meeting, then Sprint, have a Sprint Review, and then a Sprint Retrospective. After that is it a simple Lather, Rinse, Repeat process – is there some dead time – what happens? I am curious about others strategies in this space.
In the past we have kept the flow going between iterations (one iteration right after another) and after the release there was down time for a couple of weeks before the iteration drumbeat was started again. Iterations tended to be high-energy, high focus times and while that made us very effective – maintaining that could lead to burn out. The alternative I suppose is to have lower energy iterations, but to me that would start to drain some of the effectiveness of Agile. With Scrum it is a little different – perhaps after every Sprint there is a week down time before the next Sprint starts.
With high energy iterations we try to minimize context switching by maximizing focus. I like Scrum’s thinking in this space with the 3 week to month long Sprint versus XP’s iteration concepts – you could do XP iterations of the same length, but I like the Scrum philosophy about how customers and dev teams interact during that time better. At least from my interpretation Scrum frames the discussion better with the customer on the costs of changing their mind. Sometimes I feel like the XP material waves on that – there is a cost to changing your mind that customers need to know. Whether that cost is due to rework, dev team context switching, etc..
Now to close let me say that by down time I don’t mean slacking off etc.. By minimizing context switching and maximizing focus sometimes organizational things and even some project things get pushed to the side. The downtime is a good time to clean up loose ends in my opinion. By loose ends that doesn’t mean you are tying up last minutes bugs or finishing testing though!
Note: I use this blog to post both Personal and Technical articles. For a technical only feed use the following URL (http://bryanandnoel.spaces.live.com/category/technology/feed.rss). For a family only feed use the following URL (http://bryanandnoel.spaces.live.com/category/family/feed.rss)