+ All Categories
Home > Documents > deweck-dynamics software projects - École Polytechnique

deweck-dynamics software projects - École Polytechnique

Date post: 01-Feb-2022
Category:
Upload: others
View: 5 times
Download: 0 times
Share this document with a friend
82
+ - Copyright 2007 Olivier L. de Weck and James M. Lyneis Dynamics of Software Projects Prof. Olivier de Weck [email protected] Guest Lecture at Ecole Polytechnique October 5, 2007
Transcript

+

-

Copyright 2007Olivier L. de Weck and James M. Lyneis

Dynamics of Software Projects

Prof. Olivier de Weck

[email protected]

Guest Lecture at Ecole Polytechnique

October 5, 2007

10/05/07 2

+

-

Copyright 2007de Weck and Lyneis

Topics

Dynamic project problems

The system dynamics viewpoint

Causes of project dynamics

Application of System Dynamics to Modeling Small to Medium Size Software Projects

10/05/07 3

+

-

Copyright 2007de Weck and Lyneis

Topics

Dynamic project problems

The system dynamics viewpoint

Causes of project dynamics

Application of System Dynamics to Modeling Small to Medium Size Software Projects

10/05/07 4

+

-

Copyright 2007de Weck and Lyneis

Project Dynamics

What does “dynamic” mean in the context of a project?What are some key measures typically monitored on a project?Sketch “desired” (or planned) and typical actuals for these measures.

10/05/07 5

+

-

Copyright 2007de Weck and Lyneis

Sketch Plan and Actuals for ...

Time

ProjectStaffing

10/05/07 6

+

-

Copyright 2007de Weck and Lyneis

Sketch Plan and Actuals for ...

FractionComplete

Time

.5

1

10/05/07 7

+

-

Copyright 2007de Weck and Lyneis

Sketch Plan and Actuals for ...

Productivity(Normalised)

Time

1

2

10/05/07 8

+

-

Copyright 2007de Weck and Lyneis

Trouble-free Projects Behave as Planned: Design Labor (Equivalent People)

Simulated Data100.

75.

50.

25.

0.

TIME91 92 93 94 95 96

Disguised resultsfrom an actualsoftware project

Year 1 Year 5Year 4Year 3Year 2 Year 6

10/05/07 9

+

-

Copyright 2007de Weck and Lyneis

Design Progress (Percent Complete)Simulated100.

75.

50.

25.

0.

TIMEYear 1 Year 4Year 3Year 2 Year 5 Year 6

Disguised resultsfrom an actual

software project

10/05/07 10

+

-

Copyright 2007de Weck and Lyneis

Design Labor (Equivalent People)Simulated Data80.

60.

40.

20.

0.

TIME

Disguised results from an actual Ship-building project

Year 1 Year 4Year 3Year 2

10/05/07 11

+

-

Copyright 2007de Weck and Lyneis

Design Progress (Percent Complete)Simulated100.

75.

50.

25.

0.

TIMEYear 1 Year 4Year 3Year 2

Disguised results from an actual Ship-building project

10/05/07 12

+

-

Copyright 2007de Weck and Lyneis

So while some projects are trouble-free, more typically, projects ...

10/05/07 13

+

-

Copyright 2007de Weck and Lyneis

Typical Project “Disasters”

The Channel Tunnel -- original estimate, $3 billion; final cost, $10 billionBoston’s “Big Dig” -- original mid-1980’s estimate, $2.5 billion; latest estimate, $14.5 billion (9/2001)

10/05/07 14

+

-

Copyright 2007de Weck and Lyneis

Microsoft’s next major release of Windows operating system

January 2003: Longhorn will ship in 2004 http://redmondmag.com/news/article.asp?EditorialsID=5674

August 2004: Will Ship late 2006http://arstechnica.com/news.ars/post/20040828-4139.html

Windows Vista (AKA “Longhorn)

10/05/07 15

+

-

Copyright 2007de Weck and Lyneis

FBI’s Virtual Case File

Virtual Case File is would allow agents to share info easilyCongress and others believe VCF is “critical to enabling the FBI and intelligence agencies to ‘connect the dots’ in preventing [terrorist] attacks”InformationWeek Feb 4, 2005

May 2004: Project will be delivered by end of 2004 Feb 2005: Mueller acknowledges he doesn’t know how much it will cost ($170 million already spent) or when it will be deliveredFBI may have to scrap what they’ve done so far and start fresh

InformationWeek Feb 4, 2005 from the Associated Press

10/05/07 16

+

-

Copyright 2007de Weck and Lyneis

Software Projects are Tough

On average software projects overshoot schedule by 50%⅓ of large-scale software projects never complete (cancelled)¾ of all large systems that are completed are operating failures*

Source: Gibbs, W. 1994. “Software’s Chronic Crisis”. Scientific American. September. pp. 86-95

10/05/07 17

+

-

Copyright 2007de Weck and Lyneis

Lamri Survey

http://www.lamri.com/CMMI_Survey_results.pdf

10/05/07 18

+

-

Copyright 2007de Weck and Lyneis

So while some projects are trouble-free, more typically, projects ...

... Surprise us with late requests for additional time or resources... Have schedule and budget overruns... Seem to get stuck at “90%” complete... Result in new products with flaws discovered after release... Hinder learning because of difficulty in comparing the performance of different, “unique” projects

10/05/07 19

+

-

Copyright 2007de Weck and Lyneis

On typical development projects ...Design Labor (Equivalent People)

Simulated Actual

Year

800.

600.

400.

200.

0 0 3 6 9 12 15 18 21

ApproximateOriginal Plan

Disguised results from actual aerospace project

… Staffing experiences an extended tail

10/05/07 20

+

-

Copyright 2007de Weck and Lyneis

Program Staff, Simulated vs. Data (Equivalent Staff)

400.

300.

200.

100.

TIME

0 Year 1 Year 2 Year 3 Year 4 Year 5 Year 6

Simulated Original Plan Actual

Disguised results from actual vehicle project

… Or a second staffing peak

10/05/07 21

+

-

Copyright 2007de Weck and Lyneis

Two software development projects for the same aerospace company experienced dramatically different results

[see next 3 pages; figures show disguised results shifted so that the 2 projects started in the same year]

10/05/07 22

+

-

Copyright 2007de Weck and Lyneis

1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003

150

100

50

0

Program staff (Program A ...)

10/05/07 23

+

-

Copyright 2007de Weck and Lyneis

1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003

150

100

50

0

Program staff (Program B)

10/05/07 24

+

-

Copyright 2007de Weck and Lyneis

1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003

150

100

50

0

Program staff (Program B vs. Program A)

10/05/07 25

+

-

Copyright 2007de Weck and Lyneis

What caused the differences between Program A and Program B?

Differences in work scope?

External Conditions?

Management policies and processes?

And how can a company learn from these differences, and therefore

Bid better?

Plan better?

Manage better?

10/05/07 26

+

-

Copyright 2007de Weck and Lyneis

Progress has been made: Many firms have cut development times in half ...

Source: Smith, Preston G. and Donald G Reinersten, Developing Products in Half the Time (2nd edition), Wiley 1998.

10/05/07 27

+

-

Copyright 2007de Weck and Lyneis

PERT and CPM (Critical Path Method)Waterfall, Spiral, …Emphasis on “soft,” people factorsMicrosoft Project

.. and Learning is not happeningWhy???

Project problems persist in spite of numerous advances in the last 30 years

10/05/07 28

+

-

Copyright 2007de Weck and Lyneis

Topics

Dynamic project problems

The system dynamics viewpoint

Causes of project dynamics

Application of System Dynamics to Modeling Small to Medium Size Software Projects

10/05/07 29

+

-

Copyright 2007de Weck and Lyneis

Events “Change Occurred,Project behind schedule”

Three ways of looking at a problem --

10/05/07 30

+

-

Copyright 2007de Weck and Lyneis

Events

Patterns of

BehaviorEst. CompletionDate

Add.Resources

“Project behind schedule”

Three ways of looking at a problem --

10/05/07 31

+

-

Copyright 2007de Weck and Lyneis

System Structure

EstimatedCompletion

Date

AddResources

BehindSchedule

RemainingWork

Experience Dilution,Quality Problems

Three ways of looking at a problem --

10/05/07 32

+

-

Copyright 2007de Weck and Lyneis

Events

Patterns of Behavior

System Structure

Est. CompletionDate

Add.Resources

EstimatedCompletion

AddResources

BehindSchedule

RemainingWork

Experience Dilution,Quality Problems

“Project behind schedule”

Three ways of looking at a problem --

10/05/07 33

+

-

Copyright 2007de Weck and Lyneis

The System Dynamics Viewpoint

Events

Patterns of Behavior

System Structure

External Factors

10/05/07 34

+

-

Copyright 2007de Weck and Lyneis

The System Dynamics Viewpoint

Events

Patterns of Behavior

System Structure

Low

Medium

High

Ability toInfluence

External Factors

10/05/07 35

+

-

Copyright 2007de Weck and Lyneis

Why??

Project performance problems are fundamentally dynamic problems,

but Managers mental models and typical tools (computer models):

Attribute all problems to external factorsView a project statically (no iteration, no feedback)Treat projects as if they were unique

10/05/07 36

+

-

Copyright 2007de Weck and Lyneis

System Dynamics Concepts

Focus on dynamic behaviorSystem structure as cause of that behaviorEmphasis on internal dynamics and how we can change structureA model is an integral part of organizational learning

10/05/07 37

+

-

Copyright 2007de Weck and Lyneis

Examples of Behavior Modes

"Plan"

Growth

ProjectStaffing

Stability

10/05/07 38

+

-

Copyright 2007de Weck and Lyneis

What Causes Dynamics?

All dynamics are driven by –Feedback processesAccumulation processes

10/05/07 39

+

-

Copyright 2007de Weck and Lyneis

The basic element of system structure is the feedback loop...

Chickens

TIME

...This one a “positive,”or reinforcing feedback loop.

+

+

EGGS CHICKENS

Adapted from Professor John Sterman, MIT

10/05/07 40

+

-

Copyright 2007de Weck and Lyneis

Loops of effects interact with one another, making traditional diagnosis quite difficult...

...Such as with this “negative,” or balancing, feedback loop, which may

slow or reverse growth

Chickens

TIME

+

+

EGGS CHICKENS ROADCROSSINGSX

FARMSIZE

-

+

10/05/07 41

+

-

Copyright 2007de Weck and Lyneis

Effects interacting makes traditional diagnosis quite difficult in a business setting as well

PRICE

UNITCOSTS

USAGE

SERVICECAPACITY

SERVICEQUALITY

10/05/07 42

+

-

Copyright 2007de Weck and Lyneis

Accumulation processes involve ...

Stocks or “levels” -- define the state of the system

Flows or “rates” -- define the rate of change in system states

Bank Account Balance

Deposits

(iThink Rate Symbol)

Deposits

(Vensim/DYNAMO Symbol)

10/05/07 43

+

-

Copyright 2007de Weck and Lyneis

Connecting stocks and flows ...

Bank Account Balance

Deposits Withdrawals

“Clouds”represent stocks outside the system boundary

StaffHiring Firing

10/05/07 44

+

-

Copyright 2007de Weck and Lyneis

Interacting positive and negative feedback loops of cause-effect relationships, with stocks, flows, delays, and non-linearities, are capable of generating all observed modes of behavior.

10/05/07 45

+

-

Copyright 2007de Weck and Lyneis

Topics

Dynamic project problems

The system dynamics viewpoint

Causes of project dynamics

Application of System Dynamics to Modeling Small to Medium Size Software Projects

10/05/07 46

+

-

Copyright 2007de Weck and Lyneis

System dynamics modeling provides a means of ...

... understanding the structure of projects, and how that structure creates behavior;... designing robust projects... learning across projects

10/05/07 47

+

-

Copyright 2007de Weck and Lyneis

But every project is unique ...

Many similarities, some uniquenessWe will discuss the characteristics of different kinds

of projects later in the term.

SD is a framework for assessing dynamic similaritiesBut, there is no “one way”, “right answer”We will discuss heuristics and rules of thumb during

the course.

10/05/07 48

+

-

Copyright 2007de Weck and Lyneis

Examples of Behavior Modes on a Project

ProjectStaffing

Time

TypicalPlan

10/05/07 49

+

-

Copyright 2007de Weck and Lyneis

Examples (continued)

FractionComplete

Time

.5

1

TypicalPlan

10/05/07 50

+

-

Copyright 2007de Weck and Lyneis

Examples (continued)

Productivity(Normalised)

Time

1

2Typical

Plan

10/05/07 51

+

-

Copyright 2007de Weck and Lyneis

The Drivers of Project Dynamics --

The “rework cycle”Feedback effects on productivity and work quality (often “vicious circles”)Knock-on effects between work phasesKnock-on effects between projects

10/05/07 52

+

-

Copyright 2007de Weck and Lyneis

What are typical stocks & flows on a project?

Stocks Flows

10/05/07 53

+

-

Copyright 2007de Weck and Lyneis

The Traditional View of a Program – Task Accomplishment

WORKBEING DONE

PEOPLE PRODUCTIVITY

WORKTO BEDONE

WORKDONE

WORK TO DO STAFF % DONE

TIMETIMETIME

Task Accomplishment

10/05/07 54

+

-

Copyright 2007de Weck and Lyneis

The traditional view, expanded to multiple tasks with logical links ...

... becomes a Critical Path Network

Task A

Task B

Task C

Task D

Task E

Task F Task Z

10/05/07 55

+

-

Copyright 2007de Weck and Lyneis

But traditional approaches fail to consider iteration and rework

WORKBEING DONE

PEOPLE PRODUCTIVITY QUALITY

WORKTO BEDONE

WORKREALLYDONE

REWORK

WORK TO DO STAFF % DONE

RWK

TIME TIME TIME

10/05/07 56

+

-

Copyright 2007de Weck and Lyneis

Or Undiscovered Rework

WORKBEING DONE

PEOPLE PRODUCTIVITY QUALITY

KNOWNREWORK

UNDISCOVEREDREWORK

REWORK DISCOVERY

WORKTO BEDONE

WORKREALLYDONE

WORK TO DO STAFF % DONE

RWK

UR REALLY

TIME TIME TIME

10/05/07 57

+

-

Copyright 2007de Weck and Lyneis

On typical development projects ...Simulated Actual

Year

800.

600.

400.

200.

0 0 3 6 9 12 15 18 21

ApproximateOriginal Plan

Disguised results from actual aerospace project

… Staffing experiences an extended tail

10/05/07 58

+

-

Copyright 2007de Weck and Lyneis

Caused by the need to accomplish rework

0 3 6 9 12 15 18 21

800.

600.

400.

200.

0

Work Assignments of Staff to...

Original Work

Rework

Total

10/05/07 59

+

-

Copyright 2007de Weck and Lyneis

Program Staff, Simulated vs. Data (Equivalent Staff)

400.

300.

200.

100.

TIME

0 Year 1 Year 2 Year 3 Year 4 Year 5 Year 6

Simulated Original Plan Actual

Disguised results from actual vehicle project

… A second staffing peak

On typical development projects ...

10/05/07 60

+

-

Copyright 2007de Weck and Lyneis

Work Assignments of Staff to...

Again caused by the need to execute rework

400.

300.

200.

100.

TIME

0 Year 1 Year 2 Year 3 Year 4 Year 5 Year 6

Original Work Rework

Disguised results from actual vehicle project

Rework

Original Work

10/05/07 61

+

-

Copyright 2007de Weck and Lyneis

The Rework CycleKey to Project Dynamics

WORK

BEING DONE

People Productivity Quality

Rework Discovery

WORKTO BEDONE

KNOWNREWORK

UNDISCOVEREDREWORK

WORKREALLYDONE

10/05/07 62

+

-

Copyright 2007de Weck and Lyneis

Why? The Drivers of Project Dynamics --

The “rework cycle”Feedback effects on productivity and work quality (often “vicious circles”)Knock-on effects between work phasesKnock-on effects between projects

10/05/07 63

+

-

Copyright 2007de Weck and Lyneis

What drives productivity & quality?

UndiscoveredRework

KnownRework

WorkReally Done

WorkTo Be Done

Progress

Rework Discovery

People Productivity Quality

CustomerChanges

Dynamics are initiated by (1) an infeasible initial plan, or (2) changes adding scope and obsoletingcompleted work ...

Scope Growth

10/05/07 64

+

-

Copyright 2007de Weck and Lyneis

What drives productivity & quality?

UndiscoveredRework

KnownRework

WorkReally Done

WorkTo Be Done

Progress

Rework Discovery

People Productivity Quality

ApparentProgress

CustomerChanges Schedule

Acceleration

Overtime

Hiring

Scope Growth

… that initiate corrective actions to get the project back

on track...

10/05/07 65

+

-

Copyright 2007de Weck and Lyneis

What drives productivity & quality?

UndiscoveredRework

KnownRework

WorkReally Done

WorkTo Be Done

Progress

Rework Discovery

People Productivity Quality

ApparentProgress

CustomerChanges Schedule

Acceleration

Out-of-SequenceWork, Worksite

Congestion, CoordinationProblems,

Morale Problems

AverageEmployee Skill

and Quality

Fatigue,Burnout

Overtime

Hiring

Scope Growth

… that create vicious circles that undercut intended effects

10/05/07 66

+

-

Copyright 2007de Weck and Lyneis

A system dynamics model usually represents several phases of work, but is more aggregate than a CPM model

SystemEngineering

Software Codeand Test

HardwareDesign

Hardware Buildand Test

Integrateand Test

SoftwareDesign

10/05/07 67

+

-

Copyright 2007de Weck and Lyneis

Summary: The Drivers of Project Dynamics --

The “rework cycle”Feedback effects on productivity and work quality (often “vicious circles”)Knock-on effects between work phasesKnock-on effects between projects

10/05/07 68

+

-

Copyright 2007de Weck and Lyneis

Topics

Dynamic project problems

The system dynamics viewpoint

Causes of project dynamics

Application of System Dynamics to Modeling Small to Medium Size Software Projects

10/05/07 69

+

-

Copyright 2007de Weck and Lyneis

SM Thesis

A Comparative Study of Iterative Prototyping vs. Waterfall Process Applied To Small and Medium Sized Software Projects

Eduardo Malaga ChocanoMIT System Design and Management ProgramJune 2004

10/05/07 70

+

-

Copyright 2007de Weck and Lyneis

Objectives

1. Identify the main strengths and weaknesses of iterative cycle based models vs. sequential-based models applied to small and medium sized software projects.

2. Measure the impact these features have in the management of projects

3. Understand under which conditions each of these approaches is recommended.

4. Study the new trends in this field and propose recommendations regarding their use.

10/05/07 71

+

-

Copyright 2007de Weck and Lyneis

Waterfall Projects

10/05/07 72

+

-

Copyright 2007de Weck and Lyneis

Spiral Projects

10/05/07 73

+

-

Copyright 2007de Weck and Lyneis

Interviews of Peruvian SW Project Leaders

10/05/07 74

+

-

Copyright 2007de Weck and Lyneis

Characteristics of Successful Projects

10/05/07 75

+

-

Copyright 2007de Weck and Lyneis

Source of Problems

10/05/07 76

+

-

Copyright 2007de Weck and Lyneis

Software Project Model (overview)

10/05/07 77

+

-

Copyright 2007de Weck and Lyneis

Software Project Model (detailed)

Model Parameters

-Number of Tasks-Development Rate-Verification Rate-Flag

-sequential-iterative

-Verification Period-Phase Size Table-Insight per Phase-Insight Development-Verification Accuracy-% dedicated to verify

10/05/07 78

+

-

Copyright 2007de Weck and Lyneis

Results (I) – Speed vs Quality

Speed vs QualityRun with nominal parameters

10/05/07 79

+

-

Copyright 2007de Weck and Lyneis

Results (2) – Task Distribution

10/05/07 80

+

-

Copyright 2007de Weck and Lyneis

Results (II) – Amount of Rework

Iterative Approach causes more relative rework

10/05/07 81

+

-

Copyright 2007de Weck and Lyneis

Conclusioniterative

iterative

10/05/07 82

+

-

Copyright 2007de Weck and Lyneis

SummarySoftware Development Methodology have a significant impact on project success

Iterative Approach:more effective use of developer’s timeshort iterations, minimize idle time waiting for tasks to be reworked

Sequential Approach:programmers wait idle while testing is underwayless rework necessary if insight can be developed fastless variance of outcome

Hybrid Approaches existFinal Note – large difference between software for business applications and safety-critical real-time embedded software

business software – very suitable to spiral approachreal time embedded software – rather sequential


Recommended