Lean Software Development

Slides:



Advertisements
Similar presentations
CAPA is Lean p Toyota mantra: People + Brilliant processes = Amazing results Always: Add value Smooth flow Pull not push Make decisions slowly,
Advertisements

A Brief Introduction to Lean Concepts for the Office Bill Motley, CEM, CQMgr, PMP Program Director, Production, Quality & Manufacturing Curricula Development.
John Reynolds, Lean Six Sigma Master Black Belt APICS Associate Lean Enterprise Instructor
Test Automation Success: Choosing the Right People & Process
Developing Lean Process Strategies That Work Randy Benson, Ph.D. Executive Director, RHQN.
CS487 Software Engineering Omar Aldawud
Lean Supply Chains Chapter Fourteen McGraw-Hill/Irwin
Healthcare Performance Group Lean Process Improvement and Value Stream Mapping Clayton State University Kelley Hundt Paul Todd.
Lean Software Development Tips and Tricks Augusto “Gus” Evangelisti - PaddyPower PLC
Evaluating Methods of Change Nancy Kress Head, Bookstacks Department University of Chicago Library.
Extreme Programming Team Members Gowri Devi Yalamanchi Sandhya Ravi.
Computer Engineering 203 R Smith Agile Development 1/ Agile Methods What are Agile Methods? – Extreme Programming is the best known example – SCRUM.
MET 449 / ME 448 – Design for Manufacturing and Tooling Toyota Production System.
Lean Software Development Nathan Decker February 4, 2010.
JIT/Lean Production Chapter 13.
CONTINUOUS IMPROVEMENT PROGRAM
LEAN MANUFACTURING Jason Prior. Introduction to Lean  Overview of Lean in Toyota video.video  Main Concept: ELIMINATING WASTE  Not an acronym  Not.
The Value of Lean Thinking Presented by: Brian D Krichbaum Process Coaching Incorporated.
Linda M Cook Bio  Lean/Agile Coach at Fortune 500 Companies, focused in Financial Services Sector  Certified Scrum Master 2003  Advanced Scrum Master.
Software SYSTEMS DEVELOPMENT
Introduction To Lean Software Development And Value Stream Mapping
JIT and Lean Operations
Manufacturing Processes Copyright © Texas Education Agency, All rights reserved.
Continuous Delivery Ajey Gore Head of Technology ThoughtWorks India.
The Seven Deadly Wastes Course Objectives Learn what the Seven Deadly Wastes are and how they affect our business. Identify the Waste in our business and.
Toyota Production System (TPS) MGMT- E5060 Operations Management.
Chapter 3 – Agile Software Development 1Chapter 3 Agile software development.
Introduction & Implementation of TQM Introduction & Implementation of TQM By -Fuad Al- Ruhaili -Mohammed Al-hosawi -Talal Al-Hawsawi -Mohammed Al-Otaibi.
Just-in-Time (JIT) and Lean Systems Chapter 7. MGMT 326 Foundations of Operations Introduction Strategy Quality Assurance Facilities Planning & Control.
Process Improvement An Overview of Lean Agenda: The origin of Lean
Copyright © 2012 Premera Blue Cross An Independent Licensee of the Blue Cross Blue Shield Association Seven Wastes Brett Jackson, M.S. Workshop Leader.
Presented by: Beau Keyte, LEI Faculty APICS Greater Jacksonville Seminar December 5, 2002 Value Stream Mapping and Management.
Philosophy and Key Concepts
So What? Operations Management EMBA Summer TARGET You are, aspire to be, or need to communicate with an executive that does not have direct responsibility.
KAIZEN IN HOSPITAL MANAGEMENT Dr S Sridharan MBBS, M.Sc (Med.Admn.), MD (Col.), Dip. IT.
Lean Production The elimination of waste in the production process.
“Without the Cost of Waste …”
1 김 수 동 Dept. of Computer Science Soongsil University Tel Fax
1 Employability skills (a) Employers value people who: fit well into their team and workplace use initiative to solve routine problems work productively.
Continuous Improvement (CI) Overview A quick review of principles, methodology, and tools.
Chapter 7 The Practices: dX. 2 Outline Iterative Development Iterative Development Planning Planning Organizing the Iterations into Management Phases.
When you are Agile you get Lean How Agile reduces waste in software develpment.
Proprietary, Do Not Copy or Electronically Reproduce. 1 City University PM 511 Improving Project Management Processes March 21,1998.
Lean Software Development (Can Çetin)
Modelling the Process and Life Cycle. The Meaning of Process A process: a series of steps involving activities, constrains, and resources that produce.
Application of Lean in IT/ITES
Lean Manufacturing. Why do this? Lets look at jobs on Monster.com that refer to Lean - ployer/?WT_srch=1&s_kwcid=job%20ope.
Central Massachusetts Regional Library System Libraries and Lean Thinking An Overview / Workshop May 11, 2009.
1 Lean Office - Value Streams
Yazd University, Electrical and Computer Engineering Department Course Title: Advanced Software Engineering By: Mohammad Ali Zare Chahooki The Rational.
Just In Time Manufacturing Push Manufacturing vs. Pull Manufacturing Push System: Traditional production system as parts are processed based on the master.
“Japanese Manufacturing Techniques” & “Uprooting the Toyota Production System” PRESENTED BY: SLAVIK DEMIN & ALON SIMCHONI Based on the articles by xxxxxx.
Actualizing The EHR Implications For Residency Training.
Lean Manufacturing. Lean Enterprise - A business system for organizing and managing product development, operations, suppliers and customer relations.
Lean and Scientific Management: Sequel or Substitute?
JIT/Lean Production Chapter 13.
Lean Manufacturing Series
Turning LEAN into GREEN
Introduction to Lean Emily Varnado.
Welcome to my presentation
Dilbert Scott Adams Manage It! Your Guide to Modern, Pragmatic Project Management. Johanna Rothman.
Total Productive Maintenance and Quick Changeover
Lean Healthcare Deployment and Sustainability Overview
Lean production Müge umut
Just In Time.
Welcome to the Ericsson journey towards an Agile WoW!
PRODUCTION AND OPERATIONS MANAGEMENT
UNIT 5 EMBEDDED SYSTEM DEVELOPMENT
UNIT 5 EMBEDDED SYSTEM DEVELOPMENT
LEAN PRODUCTION BY Alfredo Moran Johnny Rojas January, 2006.
Presentation transcript:

Lean Software Development James Manning

Outline Lean History of Lean 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 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 Equipment 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 MS, Mathematics University of Maryland Mary Poppendieck Tom Poppendieck MS, Mathematics University of Maryland BS, Mathematics Marquette University PhD, 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 Partially Done Work Extra Processes Extra Features Lean Software Development Lean Manufacturing Partially Done Work Extra Processes Extra Features Task Switching Waiting Motion Defects 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 Standish group – 80/20

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: Problems: Commitment – not waste 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 AmtWaste = (DefectImpact)(TimeUndetected) (Large Defect)(3Hours) < (Small Defect)(3Wks) 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 Feedback Iterations Synchronization 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: Facts > Forecasts 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: Firefighter Anti-pattern 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 Pleases the user without user asking Google Perceived Integrity Conceptual Integrity Pleases the user without user asking Google All parts of the system work together – smooth well functioning Cash vs. Credit card

Build Integrity in Boeing 777 “Working Together” Program Methods: 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 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-for-software/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-software- development/ 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-are- never-used Poppendieck, M. (2003, April, 25). Lean Software Development. LeanEssays. Retrieved March 28, 2011, from http://www.leanessays.com/2003/04/lean- software-development.html

References Poppendieck, M. (2001, May 1). Lean Programming. LeanEssays. Retrieved March 28, 2011, from http://www.leanessays.com/2010/11/lean-programming.html Poppendieck, M. (2004, June 24). An Introduction to Lean Software Development. LeanEssays. 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/WhatsLean/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?