Getting to "Done" in Agile Development

[article]

A team may decide that its work is done once it has been successfully deployed to a controlled environment by the release engineering group responsible for a production deployment. In the figure below, the team has a staged environment where tested code is deployed and configured, thereby validating the deployment and configuration process in an environment approximating what will be done in production. In this scenario, the team's code will go through a deployment process every iteration, ensuring that release engineering and other support groups had an opportunity once every couple of weeks to get familiar with the deployment process. 

 Visualizing the Value Stream
Sometimes, teams are unable to bring the additional work of deployment into a short, timeboxed iteration. The availability of release engineering may preclude such a quick turnaround. In these situations, teams may wish to use something akin to a kanban board in order to manage the work moving through a deployment process. The figure below shows how such a board could be used to manage the work across three teams.  

Simple Is Beautiful

Having walked through a couple of ways to manage the complexity of large releases and dependencies within projects, we should discuss the simplest—but sometimes most difficult—strategy: Reducing the complexity of releases by making them smaller. As described earlier, the more in-process work in the system, the higher the carrying cost. We can visualize this process and stage deployments, but it's simpler to have frequent, small releases. Techniques like bolstering a definition of done to include deployment and visually mapping the production preparations steps should not be used as crutches for supporting excessively large releases.

Looking back at that first agile project, I would have probably gone further to confront our challenges. We labored for more than nine months before trying a release, and only then did we realize how difficult it was for us to get to that elusive production environment. Unfortunately, by that time expectations were established and our sponsor was disappointed when those expectations were not met. If we attempted to release something after only three months, it would have been a mess, but we would have had time to recover, establish more realistic expectations, and deal with numerous newly discovered stakeholders.

User Comments

1 comment
Kathy Iberle's picture

Brian, great article!  I recently wrote about very similar problems with "done-done" in another AgileConnections article: http://www.agileconnection.com/article/fix-your-agile-project-taking-systems-view

Your three-part "something akin to a Kanban board" is a great example of a Visual Planning Board which shows the queues.  This technique is often used in Lean project management, as shown here: http://www.kiberle.com/2013KB/PlanningBoardStates.pdf

Kathy Iberle

Iberle Consulting Group, Inc.

kiberle@kiberle.com

August 22, 2013 - 11:39am

About the author

Brian  Bozzuto's picture Brian Bozzuto

Brian Bozzuto is a principal agile coach at BigVisible Solutions. With an extensive background in health insurance and financial service companies, his current focus is supporting teams as they adopt agile and lean practices and deal with the challenges of organizational change. Brian's passion is helping foster better relations between business and technology to achieve more response projects and better business results. He has a broad range of experience applying various process improvement frameworks including Scrum, Kanban, Lean, and Six Sigma in large organizations. Brian has been certified as a Project Management Professional and Certified Scrum Practitioner. He is one of the founding members of the PMI Agile Virtual Community of Practice and the creator of the annual Agile Games conference in Boston.

AgileConnection is one of the growing communities of the TechWell network.

Featuring fresh, insightful stories, TechWell.com is the place to go for what is happening in software development and delivery.  Join the conversation now!

Upcoming Events

Sep 22
Sep 24
Oct 12
Nov 09