35
© 2005-2008 EvolutionTen Corp. Lean Six Sigma and Agile Project Management 1-1 How Lean Process Can Supercharge Agile Project Management Lean - Agile Project Management Presented By Richard Perrin PMP CSM SSBB QFDGB ASPE Course Director: Lean-Agile Project Management

Lean - Agile Project Management

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-1

How Lean Process CanSupercharge

Agile Project Management

Lean - Agile Project Management

Presented ByRichard Perrin PMP CSM SSBB QFDGB

ASPE Course Director: Lean-Agile Project Management

Page 2: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-2

The fundamental disconnect >> adoption of the waterfall approach for managing software development was based on a misinterpretation of information:

Requirements Analysis Design Code Test Deploy

* Proceedings, IEEE WESCON, August 1970, pages 1-9.Copyright © 1970 Institute of Electrical and Electronics Engineers

“Waterfall” Software Approach

** “I believe in this concept, but the implementation described above is risky and invites failure... The testing phase which occurs at the end of the development cycle is the first event for which timing, storage, input/output transfers, etc., are experienced as distinguished from analyzed. These phenomena are not precisely analyzable.*

Winston Royce described the model above in a 1970 presentation to the IEEE. He thought the process would work only if iterative feedback loops were built into the process**

Page 3: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-3

Frederick Brooks (author of the “Mythical Man Month”) described Design-Development-Test ratios that would effectively produce well designed, robust and well tested code:

Design Code Test

* Proceedings, IEEE WESCON, August 1970, pages 1-9.Copyright © 1970 Institute of Electrical and Electronics Engineers

The Testing Problem

50%

Or – a ratio of 3 to 1 to 2: Design-Code-TestHow many businesses actually develop and test to the above ratios?

16 1/3% 33 2/3%

Page 4: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-4

The waterfall model assumes that new problems can be solved in one pass – ‘get it right the first time’... The issue: you will never get a complete set of requirements from the customerAttempting to solve a new problem is essentially an R & D activity! R&D is by definition a high risk effort fraught with numerous unknowns that require iteration and feedbackDefinition: “A project is a temporary endeavor undertaken to create a unique product, service, or result.”* “Unique”according to Webster means “being without a like or equal”.

* A Guide to the Project Management Body of Knowledge, 3rd Edition, 2004

The Project Problem

Page 5: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-5

Why is building software ‘hard’? (Or is it?)◦ Software developers function in a permanent state of

emergency◦ Businesses reward developers who deliver software that is

cheap, buggy, and first◦ People want fancy new gadgets now:

They don't want inconvenienceThey don't want to learn new ways of interacting with their computers They don't want delays in delivery They don't want to pay extra for quality

◦ Without real changes in user behavior, software suppliers are unlikely to change*

◦ Software engineering is an applied science – do your users think so?

* The Problem with Programming, Nov. 2006 interview w/ Bjarne Stroustrup, the inventor of the C++ programming language, by Jason Pontin, Technology Review, MIT Press

The Other Project Problem: Building Software Is Difficult

Page 6: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-6

The second disconnect >> most business users think building software is like:◦ Building a house ◦ Ordering fast food

Requirements Analysis Design Code Test Deploy

Why?◦ PMI was founded on construction industry principles

“Waterfall” Software Approach

Page 7: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-7

If you are building a house and you need an estimate for roofing, drywall, foundation, electrical, plumbing, etc. where do you go for the estimate? ◦ RS Means: CostWorks. CD-ROM that

prices 23,500 building components by geography and skill set

If you are estimating a software project:◦ What guide exists to estimate software

engineering cost?◦ What are the ‘standard jobs’ in

creating software?

Building a House vs. Building Software

Page 8: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-8

The lean Toyota TPS process borrows heavily from the empirical process defined by Dr. Walter Shewhart of Western Electric in the late 1930’s.The Plan-Do-Check-Act cycle or as it is now known, the Shewhart-Deming cycle, exemplifies the incremental improvement process for all manufacturing and service businessesSCRUM is fundamentally a P-D-C-A cycle

Defining an Empirical Process

Plan

Do

Check

Act

Without a theory of reality, there is no plan –everything starts with a theory. Your plan becomes the vehicle for testing your theory

Based on the theory we do the work as defined in the plan – execute the plan accurately and with precision. We then check the

result to see if what we thought would occur actually happened. What worked – what didn’t?

We hold the gains from the elements that worked. We make adjustments for the elements that didn’t work and roll it, plus new elements, into the next plan

Page 9: Lean - Agile Project Management

Product Backlog

DailyStand-up:15 mins

Sprint Cycle:15 or 30 days

PotentiallyShippableProduct

Increment

Prioritized by Product Owner

1. What you did yesterday2. What you will do today3. What are your obstacles?

Team:Based on negotiation withProduct Owner, selects highest priority work from backlog

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-9

Page 10: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-10

Five fundamental principles:Specify value by productIdentify the value streamMake value flowCustomer ‘pulls’ value from the producerPursue perfection

How does an Agile process (e.g. SCRUM) play into Lean (and vice-versa)?

Page 11: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-11

Specify Value – defined by the ultimate customer and expressed in terms of needs, price, time and quality Identify the value stream – activities

required to bring products to customers

Flow – encourages everyone to abandon the batch-and-queue mode of thinking: keep activities flowing without delays, approvals, etc.

Pull – wait for the customer to ask for the product instead of building a large inventory and pushing the product to the customer

Page 12: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-12

Waste (muda) in process consists of the following:1. Excessive Inventory2. Extra Motion3. Repetitive Processing4. Waiting/Delay5. Excessive Transport6. Overproduction7. Repair/rejects/defects

Lean process addresses the first five elements in the listSix Sigma addresses the final two elements

Page 13: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-13

The work may be:◦ Coded◦ Unit and Component tested◦ DocumentedNo guarantee it will work until final Integration/System testingIf the project is cancelled (for other reasons), what happens to this work investment?

Requirements Analysis Design Code Test Deploy

Page 14: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-14

Does all the paperwork add value?◦ “Quality documents” (Paperwork hides defects)◦ Required sign-offs◦ Thick, heavy, binders loaded with a prescriptive

project management methodology that must be followed

Administrative meetings Top heavy compliance processes (Is the process more work than the work?)Time and money spent on risk planning for low probability events? (i.e. avoidance of real risk assessment)

Page 15: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-15

Does multi-tasking work?◦ According to the TOC (Theory of Constraints) multi-

tasking is the worst way to meet multiple business needs

◦ Percent of time spent on value-added activity drops rapidly when a developer is working on more than two tasks

Concurrently Assigned Tasks

Productivity**

1 70%

2 80%

3 60%

4 47%

5 39%

**Managing New Product and Process Development: Text and Cases, Clark and Wheelwright,1993, Free Press

Page 16: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-16

Delay infuriates the customerExample: IVR Process

Forcing the customer to go through an IVR (Interactive Voice Response) unit instead of directing the customer to a Customer Service Representative (CSR)The unit responds with “You have pushed an incorrect key” when repeatedly hitting ‘0’ to connect with the CSRAfter entering information, you are asked for it again when the CSR finally answersThroughout this process you are told that you are a valued customer (are you?)

Frustrated customers go to www.gethuman.com

Page 17: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-17

Where does the team have to go for answers to:◦ Development questions? (The

other end of the building?)◦ Business questions? (Three

hours tracking down a resource that has critical information)

◦ If the developer is interrupted while working, how long does it take to get back into ‘flow’?

How does information flow from architects to designers to developers? ◦ Do the hand-offs work well?◦ Is the documentation

complete?

13'-6"

8'-0

"

13'-6"

8'-0

"

13'-6"

19'-0

"

13'-6"

15'-6

"

13'-6"

8'-0

"

13'-6"

19'-6

"

9'-8

"

18'-6"

12'-1

0"

4'-0"

22'-6

"

22'-6"

18'-6"

12'-6

"36

'-0"

????5'-3"

2'-6"

2'-6

"

2'-6"

2'-6

"

2'-6

"

5'-0

"

3'-6

"

2'-6

"5'

-0"

2'-6

"

Page 18: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-18

Giving the customer something they did not request (They will wonder what you are doing with the rest of their budget…)Features added by the development team because they think the features are ‘cool’. (Does the customer think so?)

Gold Plating: Over-Production

Page 19: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-19

The later defects are found in the development/testing process, the more expensive they become to fixDefects that are missed in system test and delivered to the customer yield:◦ The highest cost to repair◦ Loss of face and credibility to the

customer◦ Potential loss of businessRemember Ashton-Tate?

Defects: The Ultimate Dissatisfier

Page 20: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-20

What elements of the software process are value added from the customer’s perspective?

Requirements Analysis Design Code Test Deploy

? ? ? ? ?

Winston Royce stated only _____ of the above elements are considered “value added” by the customer – what are they?*

* Proceedings, IEEE WESCON, August 1970, pages 1-9.Copyright © 1970 Institute of Electrical and Electronics Engineers

Customer Value

Page 21: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-21

The Toyota Production System (TPS) exemplifies lean processing and manufacturingA number of the concepts and practices of Agile directly map to the TPSThe key 14 points in the TPS (with selected sub-topics):

1. Base your management decisions on a long-term philosophy, even at the expense of short-term financial goals

Generate value for the customer, the society and the economy2. Create continuous process flow to bring problems to the surface

Re-design work processes to achieve high value-added, continuous flow. Strive to cut back to zero the mount of time that any work project is sitting idle or waiting for someone to work on it.

3. Use "pull" systems to avoid overproduction.Provide your downline customers in the production process with what they want, when they want it, and in the amount they want.Be responsive to the day by day shifts in customer demand rather than relying on computer schedules and systems to track wasteful inventory.

Lean Exemplified: Toyota Production System

Page 22: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-22

4. Level out the workload.◦ Eliminating waste is just one third of the equation for making lean successful.◦ Work to level out the workload of all manufacturing and service processes as an alternative

to the stop/start approach of working on projects in batches that is typical of most companies.

5. Build a culture of stopping to fix problems, to get quality right the first time.◦ Quality for the customer drives your value proposition. ◦ Build into your processes the capability of detecting problems and stopping itself.◦ Build into your culture the philosophy of stopping or slowing down to get quality right the

first time to enhance productivity in the long run.6. Standardized tasks are the foundation for continuous

improvement and employee empowerment.◦ Use stable, repeatable methods everywhere to maintain predictability, regular timing, and

regular output of your processes.◦ Capture the cumulative learning about a process up to a point in time by standardizing

today's best practices. Allow creativity and individual expression to improve upon the standard; then incorporate into the new standards so that when a person moves on you can hand off the learning to the next person.

7. Use visual control so no problems are hidden.◦ Use simple visual indicators to help people determine immediately whether they are in a

standard condition or deviating from it.◦ Design simple visual systems at the place where work is done, to support flow and pull.◦ Reduce your reports to one piece of paper whenever possible, even for your most

important financial decisions.

TPS: Points 4-7

Page 23: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-23

8. Use only reliable, thoroughly tested technology that serves yourpeople and processes.◦ Use technology to support people, not replace people. Often it is best to work out a

process manually before adding technology to support the process.◦ Reject or modify technologies that conflict with your culture or that might disrupt stability,

reliability, and predictability.◦ Nevertheless, encourage your people to consider new technologies when looking into new

approaches to work.9. Grow leaders who thoroughly understand the work, live the

philosophy, and teach it to others.◦ Do not view the leader's job is simply accomplishing tasks and having good people skills.

Leaders must be role models of the company's philosophy and way of doing business.◦ A good leader must understand the daily work in great detail so he or she can be the best

teacher of your company's philosophy.10. Develop exceptional people and teams to follow your company's

philosophy.◦ Train exceptional individuals and teams to work within the corporate philosophy to achieve

exceptional results. Work very hard to reinforce the culture continually◦ Use cross functional teams to improve quality and productivity and enhance flow by solving

difficult technical problems.11. Respect your extended network of partners and suppliers by

challenging them and helping them improve.◦ Challenge your outside business partners to grow and develop. It shows you value them.

Set challenging targets and assist your partners in achieving them.

TPS: Points 8-11

Page 24: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-24

12. Go and see for yourself to thoroughly understand the situation.◦ Solve problems and improve processes by going to the source and personally observing

and verifying data rather than theorizing on how the basis of what other people or the computer screen tell you.

13. Make decisions slowly by consensus, thoroughly considering all options; implement decisions rapidly.◦ Do not take a single direction and go down that one path until you have thoroughly

considered alternatives

14. Become a learning organization through relentless reflection andcontinuous improvement.◦ Once you have established a stable process, use continuous improvement tools to

determine the root cause of inefficiencies and apply effective countermeasures.◦ Design processes that require almost no inventory. This will make waste of time and

resources visible for all to see.

TPS: Points 12-14

Page 25: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-25

Developed by Toyota engineer Shigeo ShingoOne step beyond SPC (Statistical Process Control) – why was it developed?◦ Shingo realized that SPC measured the process after

the fact - e.g. it’s great to have safety sprinklers in the ceiling to help put out a fire. However - isn’t it better to prevent the fire in the first place?

◦ ZQC is 100% source inspection: any issue/out-of-control condition is addressed and fixed immediately.

What is ZQC: Zero Quality Control?

Page 26: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-26

Three inspection methods:◦ Inspections that discover defects: judgment

inspectionsCategorizes finished products as defective or acceptable after processing is completedIt does not lower the initial defect rateHighest cost due to rework or scrap

◦ Inspections that reduce defects: informative inspections

Uses Statistical Quality Control (SQC) by feeding back data about defects to reduce future defectsToo slow to be fully effective

Zero Quality Control and Inspection Systems

**Zero Quality Control: Source Inspection and the Poka-Yoke System, Shigeo Shingo,1986, Productivity Press

Requirements Analysis Design Code Test Deploy

Page 27: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-27

Three inspection methods - continued:◦ Inspections that eliminate defects: source inspections

Preventing an error from becoming a defectImmediate feedback enables immediate action to be taken on the error**Software implementations: rolling wave integration test, TDD

Zero Quality Control and Inspection Systems

**Zero Quality Control: Source Inspection and the Poka-Yoke System, Shigeo Shingo,1986, Productivity Press

Plan

Do

Check

Act

Plan

Do

Check

Act

Plan

Do

Check

Act

Plan

Do

Check

Act

Iterations

Delivered Product Increments

User feedback (UF) UF UF UF

Page 28: Lean - Agile Project Management

Traditional project management defines quality as a function of the Triple Constraint concept:

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-28

Scope

Time Budget

Q

Does this address the needs of the customer?Does this triple constraint address ‘value’ in the customer’s mind?

Page 29: Lean - Agile Project Management

Quality as defined by:◦ PMI >>PMBOK 2004: “The degree to which a set of inherent

characteristics fulfills requirements”◦ ISO 8402: “The totality of characteristics of an entity that bear

on its ability to satisfy stated and implied needs”◦ Peter Drucker (Innovation and Entrepreneurship):

“Quality in a product or service is not what the supplier puts in. It is what the customer gets out and is willing to pay for. A product is not quality because it is hard to make and costs a lot of money, as manufacturers typically believe. This is incompetence. Customers pay only for what is of use to them and gives them value. Nothing else constitutes quality.”

Which definition sounds the best to you?Which definition would satisfy your customer the best?

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-29

Page 30: Lean - Agile Project Management

Lean – agile process focuses on customer satisfaction and customer defined valueWaterfall focuses on the satisfaction of the Triple-Constraint (Scope-Budget-Timeline) - does this determine ultimate customer satisfaction?◦ “It was not the fair market value of inventories, receivables, or fixed assets

that produce See’s Candies premium rates of return, rather it was a combination of intangible assets, particularly a pervasive favorable reputation with consumers based on countless pleasant experiences they had with both product and personnel. Such a reputation creates a franchise that allows the value of the product to the purchaser, rather than the production cost, to be the major determinant of selling price.“

Berkshire Hathaway annual report of 1983

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-30

Lean vs. Waterfall

Page 31: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-31

Page 32: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-32

Supporting Agile Principals to the Agile Manifesto:

• Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage

• Customer collaboration over contract negotiation• Business people and developers must work together daily throughout

the project• Build projects around motivated individuals. Give them the environment

and support they need, and trust them to get the job done • The most efficient and effective method of conveying information to and

within a development team is face-to-face conversation • At regular intervals, the team reflects on how to become more effective,

then tunes and adjusts its behavior accordingly *

* http://www.agilealliance.org

Agile Principles –Cont’d

Page 33: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-33

The TPS exemplifies the Lean process – how do lean and agile support the same principles?

Both exemplify an empirical process (Plan-Do-Check-Act)Both build quality into the product or service instead of inspecting it into the product at the end of the development cycle.Both focus on continuous improvement.Face-to-face communications are more important than e-mails or what the user sees on a computer screen.Engage highly motivated individuals to get the job done i.e. get ‘the right people on the bus’.Reflection is a key element in helping the team to continuously evaluate and improve its effectiveness.Live and breath the philosophy of improvement and be an example to your employees, your customers and your vendors

Agile-Lean Synergies

Page 34: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-34

Waterfall-Agile Comparison

Page 35: Lean - Agile Project Management

© 2005-2008 EvolutionTen Corp.Lean Six Sigma and Agile Project Management 1-35

Q & AResources◦ “Agile & Iterative Development”, Craig Larman◦ “Agile Software Development”, Alistair Cockburn◦ “Agile Software Development with Scrum”, Ken Schwaber and

Mike Beedle◦ “Agile Project Management with Scrum”, Ken Schwaber◦ “Agile Estimating and Planning”. Mike Cohn◦ “Agile Project Management”, Jim Highsmith◦ “Software Endgames”, Robert Galen◦ “Lean Software Development”, Tom and Mary Poppendeick◦ “The Toyota Way” , Jeffrey K Liker◦ “Real World Project Management” Richard Perrin

Thank You!