LEAN SOFTWARE DEVELOPMENT James Manning Outline Lean History
- Slides: 46
LEAN SOFTWARE DEVELOPMENT James Manning
Outline Lean History of Lean Manufacturing Lean Software Development Where to start
What is Lean? Process of eliminating waste from within a project, process, or company.
History Toyota Production System – 1948 - 1975 Developed by Taiichi Ohno, Shigeo Shingo and Eiji Toyoda – produce automobiles for the general public of Japan. Very similar to Henry Ford – 30 years later Utilized Ford and W Edwards Deming JIT production
History Toyota became one of the top 10 companies in the world 2007 - became the largest car manufacturer TPS Focused on eliminating three kinds of waste � Muri � Mura � Muda
Muri Overburdened/Unreasonable/Absurdity Employees � Safety, Ergonomic - standard of work � Searching for tools – having required tools � Waiting for help – empowering the team Equipment � Overuse Ford – Muri and not production line
Mura Unevenness – lacking flow Utilize resources, materials, and machinery as efficiently as possible JIT Pull system � Piggly Wiggly (1916) � JIT inventory
Muda Wastefulness Broad term Anything that Does not directly add value to the end user � Unneeded processes or steps � Unneeded equipment � Unneeded employees � Ect.
Lean Manufacturing Seven Types of Waste � Defects � Over-production � Transportation � Waiting � Inventory � Motion � Processing
Implementing Lean Techniques
Can this be applied to Software? Lean Software Development � Mary Poppendieck & Tom Poppendieck � Term introduced in The Poppendiecks’ book Titled Lean Software Development
The Poppendieck’s Mary Poppendieck MS, Mathematics University of Maryland BS, Mathematics Marquette University Tom Poppendieck Ph. D, Physics UW – Madison BS, Physics UW - Madison
Principles of Lean Software Development Ø Eliminate Waste Amplify Learning Delay Commitment Deliver Fast Empower the Team Build Integrity In See the Whole
Eliminate Waste Lean Software Development Partially Done Work Extra Processes Extra Features Task Switching Waiting Motion Defects Lean Manufacturing Inventory Processing Overproduction Transportation Waiting Motion Defects
Partially Done Work Tendency to become obsolete Gets in the way No idea if it will even work with the system Bottle Neck Ties up resources No value to customer Disrupts Flow
Extra Processes Do all forms of required paperwork add value? If required � Keep it short � Keep it high level � Do it off line Good Test – Someone is eager to use for coding, testing, or writing manuals Strive for most efficient, effective way of transmitting information
Extra Features Feature creep Extra features “just in case” the customer will use them Each extra feature need to be: � � � Tracked Compiled Integrated Tested Maintained Every extra feature: � � � Increases complexity of code Is a possible failure point Could be obsolete before it is used
Extra Features
Extra Features Frode L. Ødegår – List for quantifying value � What percentage of functionality in your products goes mostly unused? � What percentage of functionality serves mostly to sell the product? � How much of your development budget was expended on developing these features? � Quantify performance characteristics of your product and relate these numbers to impact on the customer's performance. � Rank candidate product features and design ideas by their quantifiable impact on customer value.
Task Switching Assigning multiple people to multiple projects A significant amount of time is wasted in the transition of tasks More teams and projects = more interrupts � More task switching Fastest to finish multiple projects � Do them one at a time
Waiting Common delays: � Email responses � Climbing leadership chains � Starting a project � Excessive requirements documentation Problems: � Customer cannot visualize value early Commitment – not waste
Motion How readily available are others to answer developer questions Motion to walk to answer get a question answered Lean development offices can help eliminate this waste.
Defects A defective product has little to no value to an end user Amt. Waste = (Defect. Impact)(Time. Undetected) (Large Defect)(3 Hours) < (Small Defect)(3 Wks) Ways of eliminating waste: � Find defects quick � Test immediately � Integrate often � Release to production soon
Eliminate Waste
Principles of Lean Software Development Ø Eliminate Waste Amplify Learning Delay Commitment Deliver Fast Empower the Team Build Integrity In See the Whole
Amplify Learning 4 Tools to Amplify Learning �Feedback �Iterations �Synchronization �Set Based Development
Feedback Most effective way of dealing with troubled software projects Types of feedback: � Run tests asap � Check out ideas by writing code (spike solution) � Prototype instead of more requirements � Create web front to legacy system to try it out
Iterations Full Iteration: � Designed � Programmed � Tested � Integrated � Delivered Facts > Forecasts More feedback from customer
Synchronization Communication with other subsystems or devices Develop interfaces first
Set Based Development Point-Based scheduling Set Based Scheduling
Set-Based Development Apply set based development to software � Develop multiple options � Communicate Constraints � Let solutions emerge
Principles of Lean Software Development Ø Eliminate Waste Amplify Learning Delay Commitment Deliver Fast Empower the Team Build Integrity In See the Whole
Delay Commitment Delay = waste? Procrastinating = waste? Idea: � Wait until the last moment to make a critical decision � Make decision on fact rather than forecast � Large commitment not left to chance Not always going to be easy – Customer generally wants commitment
Delay Commitment Methods of delaying commitment � Share partially complete design information. � Organize for direct, worker-to-worker collaboration. � Develop a sense of when decisions must be made. � Develop a sense of how to absorb changes � Avoid Repetition � Separate Concerns � Encapsulate Variation � Defer Implementation of Future Capabilities � Commit to Refactoring � Use Automates Test Suites
Principles of Lean Software Development Ø Ø Eliminate Waste Amplify Learning Delay Commitment Deliver Fast Empower the Team Build Integrity In See the Whole
Deliver Fast Just In Time Feedback Prototyping Create value as soon as possible
Empower the Team Eliminates waste from: � Waiting � Climbing management chains Firefighter � Prepared � No time to ask remote commanders Anti-pattern � Empowering employees who are not trained Employee being blamed for when things go wrong
Build Integrity In Perceived Integrity Pleases the user without user asking Google Conceptual Integrity All parts of the system work together – smooth well functioning Cash vs. Credit card
Build Integrity in Boeing 777 “Working Together” Program � Fuel tank out of reach of fuel trucks caught early Methods: � Test early � Test often � Test exhaustively � Automated tests delivered
See the Whole Look at the whole process Mary Poppendieck � “Lean thinking suggests that optimizing individual parts almost always leads to sub-optimized overall system” 80% of defects – how the system is developed
Where to Start as soon as possible Can be applied to a project or process in progress
Road Map Marry Poppendieck � Begin Where you are � Find your biggest constraint � Envision your biggest threat � Evaluate your culture � Train � Solve the Biggest Problem � Remove Accommodations � Measure � Implement � Repeat
Conclusion Lean Software Development � Elimination of waste � Improve: Productivity Efficiency Bottom line
References Abilla, P. , & Poppendieck, M. (2007, June 9). Lean for Software. shmula. Retrieved March 28, 2011, from http: //www. shmula. com/lean-forsoftware/401/ Ladas, C. (2009, June 15). Introduction to Lean Software Development. Shaping Software. Retrieved March 28, 2011, from http: //shapingsoftware. com/2009/06/15/introduction-to-lean-softwaredevelopment/ Fiore, C. (2005). Accelerated product development: combining lean and Six sigma for peak performance. New York, NY: Productivity Press. Layton, R. (2010, August 12). 80 -20 Rule: 80 percent of Product Features Are Never Used. Klean. Retrieved March 28, 2011, from http: //www. klean. dk/weblog/80 -20 -rule-80 -percent-of-product-features-arenever-used Poppendieck, M. (2003, April, 25). Lean Software Development. Lean. Essays. Retrieved March 28, 2011, from http: //www. leanessays. com/2003/04/lean-software-development. html
References Poppendieck, M. (2001, May 1). Lean Programming. Lean. Essays. Retrieved March 28, 2011, from http: //www. leanessays. com/2010/11/leanprogramming. html Poppendieck, M. (2004, June 24). An Introduction to Lean Software Development. Lean. Essays. Retrieved March 28, 2011, from http: //www. leanessays. com/2004/06/introduction-to-lean-software. html Principles of Lean. lean. org - Lean Enterprise Institute| Lean Production | Lean Manufacturing | LEI | Lean Services |. Retrieved March 28, 2011, from http: //www. lean. org/Whats. Lean/Principles. cfm Shalloway, A. (2007, August 8). Lean Anti-Patterns and What to Do About Them. Agile Journal. Retrieved March 28, 2011, from http: //www. agilejournal. com/component/content/553? task=view Ødegår, F. (2007, December 30). Lean Execution: Six Questions for Software Executives. Lean Software Institute. Retrieved March 28, 2011, from www. leansoftwareinstitute. com/wp-content/uploads/2007/08/Lean. Execution-Six-Questions-for-Software-Executives. pdf Poppendieck, Mary , and Tom Poppendieck. Lean software development: an agile toolkit. Reading, Massachusetts: Addison-Wesley, 2003. Print.
Thanks for you time Questions?
- Lean manning
- History of software development life cycle
- James russell odom and james clayton lawson
- James russell odom and james clayton lawson
- Bread sentence
- Rumus chezy manning
- Chezy and manning equations
- Koefisien kekasaran manning
- Chezy and manning equations
- Language
- Gauckler manning strickler
- Manning's formula
- Mannings equation
- Fórmula de manning
- Manning formula for discharge
- Lauren manning photos
- Manning equation
- Peyton manning cleft lip
- Chezy and manning equations
- Persamaan manning
- Manning and schutze
- Manning
- Manning mens shed
- Manning industries
- Manning information retrieval
- Su yüzü profilleri
- Manning formula
- Formula de manning
- Suferinta fetala
- Manning introduction to information retrieval
- Dr johneen manning
- History of lean
- History of lean
- Ap world history chapter 28 outline
- An outline of british history
- Conclusion of piaget's theory
- Program development outline
- George james software
- Software engineering 1 course outline
- History also history physical
- Pharmacognacy
- What is the history of community development?
- History of development communication ppt
- Arithometer
- History of guidance in the philippines
- Brief history of multimedia
- Development of accounting principles