The 7 Software Development Wastes - Lean series Part 4 - Transportation
Introduction
Previous posts on the first 3 wastes can be found here: In-Process Inventory/Partially done work , Over Production/Extra Features and Extra Processing
#4 Transportation - Hand-offs
Transportation in manufacturing corresponds to hand-offs in software development. Anytime you hand a deliverable off to a different party, there is some loss in the transfer of knowledge.
There are many such examples of hand-offs in software development:
1. Developer hands off to another developer. In this scenario if the first developer never documented the code properly it's going to take significant addition effort to figure things out. Worse, the second developer may make assumptions and, as a result, introduce bugs in the system.
2. Developers hand off code to testers to test. Many organizations still don't engage QA early enough. Bear in mind that on Agile projects, QA is involved as early as the requirements phase (not that it's a phase). If the QA has no idea what the developer did or the problems he faced or the assumptions he made, then the QA is really just shooting in the dark. It's important that the developer at least includes the QA early on, documents the feature accordingly (no long dissertations), so that an effective transition is made.
3. Handing the code over to deployment teams. Many times I find separate deployment teams struggling to figure out how to get applications deployed. Configuration settings, compile instructions etc if not properly communicated can cause significant delays.
4. Handing-off to customers. If the client is not trained properly, or the software functionality is not documented properly, there will be more support calls for example.
There are many ways in which to reduce transportation wastes in software development:
1. Ensure there is open communication between all parties. Broadband communication (as defined in Agile software development practices) is imperative.
2. Ensure proper, up-to-date and effective documentation is in place where appropriate. Identify these needs up front and ensure there are tasks for this on the backlog.
3. Include all functional areas in the development process.
Be mindful of and identify all these transition points in your organization. This will help minimize costs due to hand-offs in your organization
Next week I will cover the 5th waste in the series - Motion.
Written by Jack Milunksy - COO at Brightspark, certified ScrumMaster and Co-founder of Agilebuddy (Agile project management software that lets you easily Create, Estimate, Plan and Track your software development projects). For great Agile tips follow Jack at: www.twitter.com/agilebuddy. To get more info on Agilebuddy please visit: www.agilebuddy.com





I have received many requests to assist with Agile training and deployment. I am humbled by your interest and, being a huge proponent of Agile, want to help any way I can by providing consulting where I am able to.





Hi!, I have compiled a list of the top Agile blogs, and yours was included! check it out at http://thedailyreviewer.com/top/Agile
You can claim your link badge at http://thedailyreviewer.com/pages/badges
Posted by: Ted | 08/12/2009 at 12:30 AM
Computers are now invariably used in every area of business. It is being seen as a symbol of pride and if activities are automated it will save the much needed time and energy. Your article highlighted the importance of developing Software for minimizing Users intervention. We also understood the various issues associated with software development like portability, reliability, response time etc.
Posted by: Aliens InfoTech | 08/13/2009 at 12:30 AM
Thanks for sharing your opinion about software development wastes, I think Developer hands off to another developer is really a bad one, shouldn't quit so easily, That is really a waste of time.
Posted by: Ecommerce Website Developers | 02/24/2011 at 01:37 AM