The 7 Software Development Wastes - Lean series Part 4 - Transportation
#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