# Lean | | **Lean software development** is a translation of lean manufacturing principles and practices to the software development domain. Adapted from the Toyota Production System, it is emerging with the support of a pro-lean subculture within the agile community. Lean offers a solid conceptual framework, values and principles, as well as good practices, derived from experience, that support agile organizations. | | --- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | | wikipedia:: [Lean software development](https://en.wikipedia.org/wiki/Lean_software_development) | - 7 Principles of Lean Software Development - Eliminate waste - Deliver as fast as possible - Amplify learning - Decide as late as possible - Empower the team - See the whole - Build integrity in - 7 Wastes of Lean Software - Defects - Extra features (over production) - Relearning - Delays - Handoffs - Task/Context switching - Partially done work - [[kaizen]] - Gemba - the actual place - Go to the actual site of the failure - not documentation about it, etc. - Do, measure, learn - Plan, do, check, act - continuous improvement - The Five Whys - Don't accept human error as a root cause - People don't fail, processes do. - Underlying causes, not symptoms - Track the forks in your five whys - Don't accept answers like not enough time - 3 Kinds of Waste/The 3 M's - Muri: unreasonable, overuse of equipment or employees - Muda: waste, consumption of resources that don't provide value to the customer - Mura: unevenness, overburdern, burnout - Queue theory - Flow - focus on overall flow, holistic, - Pull - customer should pull value from your company, as opposed to you pushing it out regardless of demand - 5 Principles of Lean Project Management - Specify value to your customer. Always front of mind - Map value stream - visualize entire project from start to finish to make sure you are creating value your customer wants efficiently - Create flow - optimize smooth - Establish pull - be responsive to customer and demand - Continuous improvement - Pros and Cons - Pros - Reduce lead times, cost - Efficiency - Customer sat - Cons - low inventory - efficiency and quality is critical - short lead times - The Lean Startup ## Sources - [[The Lean Startup]]