A Nice article on lean Software Development:
Lean Manufacturing and Software: "Value and Waste
A good starting point is to consider what value is, and what waste is.
What are things with value?
* Raw materials
* An end product that someone is willing to buy
* Tools used by the team
* The skills acquired by the team
What about intermediate products? They have some value in the sense that they give us the option to create the final product more cheaply than if we started from the beginning. They have no value if nobody is willing to buy the end result. And intermediate products clearly have a cost.
And what is waste?
If it doesn't add value, it's waste.
Waste – anything other than the minimum amount of equipment, materials, parts, space, and worker's time, which are absolutely essential to add value to the product.
--Fuji Cho, chief engineer at Toyota
Taiichi Ohno is known as the father of lean manufacturing, and he identified seven types of waste. We'll consider them and find an example of each applied to software:
Features that nobody ever uses.
QA waiting for a feature to be written so they can test it.
Time waiting for files to copy.
Software written that doesn't contribute to the final product.
A feature for which development has started, but nobody is currently working on it.
Doing a refactoring manually when the development environment can do it automatically.
Waste from Product Defects
Ohno talked about a diagram of a boat that represents the pipeline translating raw materials to a finished product, traveling across the sea of inventory. Every waste in the system is like a hidden rock at the bottom of this sea, which may be a hazard to travel over, and which raises the level of the water and makes the boat travel further.
To make these rocks visibl"