/
Lean Software Development Lean Software Development

Lean Software Development - PowerPoint Presentation

myesha-ticknor
myesha-ticknor . @myesha-ticknor
Follow
420 views
Uploaded On 2018-02-27

Lean Software Development - PPT Presentation

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 ID: 637842

software lean waste development lean software development waste poppendieck commitment march extra retrieved 2011 features http www integrity product

Share:

Link:

Embed:

Download Presentation from below link

Download Presentation The PPT/PDF document "Lean Software Development" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

Slide1

Lean Software Development

James ManningSlide2

Outline

Lean

History of Lean

Lean Manufacturing

Lean Software Development

Where to startSlide3

What is Lean?

Process of eliminating waste from within a project, process, or company.Slide4

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 productionSlide5

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

MudaSlide6

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 lineSlide7

Mura

Unevenness – lacking flow

Utilize resources, materials, and machinery as efficiently as possible

JIT

Pull system

Piggly

Wiggly (1916)

JIT inventorySlide8

Muda

Wastefulness

Broad term

Anything that Does not directly add value to the end user

U

nneeded processes or steps

Unneeded equipment

Unneeded employees

Ect

.Slide9

Lean Manufacturing

Seven Types of Waste

Defects

Over-production

Transportation

Waiting

Inventory

Motion

ProcessingSlide10

Implementing Lean TechniquesSlide11

Can this be applied to Software?

Lean Software Development

Mary Poppendieck & Tom Poppendieck

Term introduced in The Poppendiecks’ book

Titled Lean Software DevelopmentSlide12

The Poppendieck’s

MS, Mathematics

University of Maryland

BS, Mathematics

Marquette University

PhD, Physics

UW – Madison

BS, Physics

UW - Madison

Mary Poppendieck

Tom PoppendieckSlide13

Principles of Lean Software Development

Eliminate Waste

Amplify Learning

Delay Commitment

Deliver Fast

Empower the Team

Build Integrity In

See the WholeSlide14

Eliminate Waste

Partially Done Work

Extra Processes

Extra

Features

Task Switching

Waiting

Motion

Defects

Inventory

Processing

Overproduction

Transportation

Waiting

Motion

Defects

Lean Software Development

Lean ManufacturingSlide15

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 FlowSlide16

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 informationSlide17

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 usedSlide18

Extra FeaturesSlide19

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.Slide20

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 timeSlide21

Waiting

Common delays:

Email responses

Climbing leadership chains

Starting a project

Excessive requirements documentation

Problems:

Customer cannot visualize value early

Commitment – not wasteSlide22

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.Slide23

Defects

A defective product has little to no value to an end user

AmtWaste

= (

D

efectImpact

)(

TimeUndetected

)

(Large Defect)(3Hours) < (Small Defect)(3Wks)

Ways of eliminating waste:

Find defects quick

Test immediately

Integrate often

Release to production soonSlide24

Eliminate WasteSlide25

Principles of Lean Software Development

Eliminate Waste

Amplify Learning

Delay Commitment

Deliver Fast

Empower the Team

Build Integrity In

See the WholeSlide26

Amplify Learning

4

Tools to Amplify Learning

Feedback

Iterations

Synchronization

Set Based DevelopmentSlide27

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 outSlide28

Iterations

Full Iteration:

Designed

Programmed

Tested

Integrated

Delivered

Facts > Forecasts

More feedback from customerSlide29

Synchronization

Communication with other subsystems or devices

Develop interfaces firstSlide30

Set Based Development

Point-Based scheduling

Set Based SchedulingSlide31

Set-Based Development

Apply set based development to software

Develop multiple options

Communicate Constraints

Let solutions emergeSlide32

Principles of Lean Software Development

Eliminate Waste

Amplify Learning

Delay Commitment

Deliver Fast

Empower the Team

Build Integrity In

See the WholeSlide33

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 commitmentSlide34

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 SuitesSlide35

Principles of Lean Software Development

Eliminate Waste

Amplify Learning

Delay Commitment

Deliver Fast

Empower the Team

Build Integrity In

See the WholeSlide36

Deliver Fast

Just In Time

Feedback

Prototyping

Create value as soon as possibleSlide37

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 wrongSlide38

Build Integrity In

Pleases the user without user asking

Google

All parts of the system work together – smooth well functioning

Cash vs. Credit card

Perceived Integrity

Conceptual IntegritySlide39

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

deliveredSlide40

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 developedSlide41

Where to Start

Start as soon as possible

Can be applied to a project or process in progressSlide42

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

RepeatSlide43

Conclusion

Lean Software Development

Elimination of waste

Improve:

Productivity

Efficiency

Bottom lineSlide44

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.htmlSlide45

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.Slide46

Thanks for you time

Questions?