identifying acquisition patterns of failure using systems ... · systems thinking is a method for...

31
© 2008 Carnegie Mellon University Identifying Acquisition Patterns of Failure Using Systems Archetypes Finding the Root Causes of Acquisition Problems April 9, 2008 Linda Levine Bill Novak

Upload: tranhuong

Post on 24-Aug-2019

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

© 2008 Carnegie Mellon University

Identifying Acquisition Patterns of Failure Using Systems Archetypes

Finding the Root Causes of Acquisition Problems

April 9, 2008

Linda Levine Bill Novak

Page 2: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

2NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

Did You Ever Wonder, Why…

• acquisition programs often violate the fundamental principle of spiral development by doing the riskiest development last?

• we continue to invest in failing acquisition programs long past the point that makes economic sense?

• “Win/Win” partnerships degenerate for no apparent reason?

• some of a program’s most critical risks or issues never make it the attention of the program manager?

• with all of the advanced cost estimation models that we have, large, critical programs frequently underestimate costs by up to 70%?

Page 3: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

3NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

Purpose of this Presentation

To show how Acquisition Archetypes (based on Systems Thinking concepts) can help to avoid common counter-productive behaviors in software acquisition and development programs

Agenda

• Systems Thinking• Feedback Loops and Causal Loop Diagrams• Systems Archetypes• Acquisition Archetypes• Seeing the Bigger Picture and Breaking the Pattern• Next Steps

Page 4: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

4NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

Operational Need

Acquisition Planning

RFPPrep.

Solicita-tion

Source Selection

System Acceptance

Program Leadership Insight / Oversight Transition

Plan Design Integrate& TestDevelop Deliver

Developer

Acquirer

Acquisition Distilled

From “I Want” to “I Got”

Page 5: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

5NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

Why is Software-Intensive Acquisition Hard?

Complex interactions between PMO, contractors, sponsors, and users• Full chain of actions & their longer-term consequences are not clear• Hard to apply corrective actions when status is uncertain

Significant delays exist between applying changes and seeing results• Difficult to control systems with long delays between cause & effect• Example: Steering an aircraft carrier

Unpredictable and unmanageable progress and results• Limited visibility into real progress & status• Complexity of interdependencies has unintended consequences

Uncontrolled escalation of situations despite best management efforts• Misaligned goals can drive potentially conflicting behaviors

Linear partitioning is the standard approach to address large systems• When systems have feedback between components that are partitioned, it

makes it difficult to see & address these interactions

Exponential growth of interactions as size grows linearly

Page 6: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

6NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

Can Systems Trap Us into Behaviors?

Inside a complex, dynamic system, people’s actions can be at the mercy of that system’s dynamics

• Housing: Fears of rising interest rates, falling home values, and foreclosures scare new home buyers away from adjustable mortgages. As buyers hold back, slower demand makes prices drop further. More mortgages exceed homes’ values, so prices drop more—causing buyers to pull back even more.1

• Politics: When a party comes to power, large donors try to influence legislation, which corrupts lawmakers and produces biased laws. Perceiving that the party has become corrupt, the electorate abandons them, the opposition party comes to power, and the cycle continues…

1 from “Marketplace” report, American Public Media

Page 7: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

7NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

What is Systems Thinking?

Systems Thinking is a method for analyzing complex systems

Developed by Jay W. Forrester at MIT modeling electrical feedback• Also exists in economic, political, business, and organizational behaviors

Uses feedback loops to analyze common system structures that either spin out of control, or regulate themselves

Helps identify a system’s underlying structure, and what actions will produce which results (and when)

Systems Thinking teaches us that:• System behavior is greater than the sum of component behaviors• “Quick fix” solutions usually have side-effects that make things worse• True improvement comes from changing the underlying system structure

Page 8: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

8NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

Time Delays

Much instability and unpredictability of systems is due to time delays

Time delays obscure the connections in cause & effect relationships

• Side-by-side causes and effects would be “smoking gun” evidence

People are inherently poor at controlling systems with substantial time delays between cause & effect

Examples:

• Over-steering a large ship that is slow to respond, so it weaves back and forth

• A thermostat controlling a low-BTU air conditioner that’s slow to cool, so the house temperature bounces between too hot and too cold

• Inability to determine which surface, handshake, sneeze, or cough resulted in an infection

Page 9: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

9NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

What are the Acquisition Archetypes?

The Acquisition Archetypes depict the underlying structures of a set of dynamic behaviors that occur throughout acquisition organizations

• Each diagram tells a familiar, recurring story

• Each describes the structure that causes the dynamic

Acquisition Archetypes are used to:

• Identify failure patterns as they develop (recognition)

• Single out root causes (diagnosis)

• Engage in “big picture” thinking (avoid oversimplification)

• Promote shared understanding of problems (build consensus)

• Find interventions to break out of ongoing dynamics (recovery)

• Avoid future counter-productive behaviors (prevention)

Page 10: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

10NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

Anatomy of an Archetype: Causal Loop Diagrams

Depict qualitative “influencing” relationships (increasing or decreasing) and time delays between key variables that describe the system

Show relationship direction by labeling them Same (+) or Opposite (-) to indicate how one variable behaves based on the previous variable

Consist primarily of two types of feedback loops:

Increases Increases DecreasesIncreases

• Reinforcing – Changes to variables reinforce, X increases, Y increases

• Balancing – Changes to variables alternate, X increases, Y decreases

R B

Page 11: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

11NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

“Firefighting” concept from “Past the Tipping Point”

FixS

O

B

Problem Symptom

R

“Fixes That Fail” – Systems Archetype

S

Unintended Consequences

S

based on “Fixes That Fail”

A quick Fix for a Problem Symptomhas immediate positive results, but also has long-term Unintended Consequences that, after a delay, worsen the original Problem Symptomas the Fix is used more often.

Page 12: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

12NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

“Firefighting” concept from “Past the Tipping Point”

Schedule Pressure

ReworkS

O

B

AvailableResources O

QualityO

Errors

O

O

R

As schedule pressure

increases…

…quality suffers… …and errors

increase…

…requiring more

rework…

…which reduces errors.

However, rework consumes resources…

…which increases schedule

pressure…

…and the cycle repeats

and worsens.

“Sacrificing Quality” – Acquisition Archetype

based on “Fixes That Fail”

As schedule pressure increases, processes are shortcut, quality suffers, and errors increase—requiring more re-work. However, re-work consumes resources, which increases schedule pressure, and the cycle repeats and worsens.

Page 13: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

13NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

“Firefighting” concept from “Past the Tipping Point”

Resources Dedicated to

Current Release

OO

B

Resources Dedicated to Next Release O

Early Development Activities on Next Release

Design Problems in

Current Release

OS

R

“Firefighting” – Acquisition Archetype

Problem Gap

Tolerancefor

Design Problems

S

S

from “Past the Tipping Point”

based on “Fixes That Fail”

If design problems in the current release are higher than the tolerance for them, more resources must be dedicated to fix them. This reduces problems, but now fewer resources can work on the next release. This undermines early development activities which, after a delay, increases the number of design problems in the next release.

Page 14: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

14NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

“Shifting the Burden” – Systems Archetype

Problem Symptom

Side-Effect

S

B1

O

Symptomatic Solution

S

R

O

Based on “Shifting the Burden”

O

B2

S

Fundamental Solution

Delay

Impatience makes the organization choose the Symptomatic Solution in the first place.

A Symptomatic Solution temporarily solves a Problem Symptom, which later recurs. Its repeated use over the longer term has Side-Effects that make it less and less feasible to use the more effective Fundamental Solution—trapping the organization into using only the Symptomatic Solution.

Page 15: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

15NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

Tasks planned for an early spiral to reduce risk are postponed to a later spiral, making near-term performance look better. This increases risk in subsequent spirals by delaying required “risky” development for which there is now less available schedule to address potential issues, and less flexibility in the system to accommodate changes needed.

“Bow Wave Effect” – Acquisition Archetype

Schedule Pressure

System Risk

S

Other Design

Decisions Made

B1

O

Development of Simpler

FunctionalityS

R1

O

System Modifiability

O

Ability to Integrate

New Capability

SS

R2

based on “Shifting the Burden”

O

B2

SDevelopment of Complex

Functionality

S

Page 16: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

16NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

Acquisition Archetypes

• Sacrificing Quality

• Firefighting

• The “Bow Wave” Effect

• Underbidding the Contract

• Shooting the Messenger

• Robbing Peter to Pay Paul

• Longer Begets Bigger

. . .

• The 90% Syndrome

• Requirements Scope Creep

• Feeding the Sacred Cow

• Brooks’ Law

• PMO vs. Contractor Hostility

• Staff Burnout and Turnover

• The Improvement Paradox

. . .

There are many recurring patterns of behavior in software development and acquisition that have been modeled using Systems Archetypes and CLDs:

Page 17: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

17NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

Related Disciplines and Concepts

Social Psychology

Tragedy of the Commons

Economics

Game Theory

Political Science

Bounded Rationality

Social Science

Principle Agent

Problem

Bystander Effect

Social Dilemma

Agency Cost

Moral Hazard

Bandwagon Effect

Prisoner’s Dilemma

Conformity

Acquisition

Reflexivity

Volunteer’s Dilemma

Information Asymmetry

Informational Cascade

Externality

Counter-Reinforcer

Social Trap

Social Fence

Spiral of Silence

Free Rider Problem

Perverse Incentive

Network Effect

Social Proof

The Acquisition Archetypes draw on ideas and concepts from a variety of different disciplines:

Social Science

Game Theory

Social Psychology

Political Science

Economics

Page 18: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

18NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

The Bigger Picture/Breaking the Pattern

By representing the underlying structure of a dynamic, Acquisition Archetypes show where best to apply leverage to slow or stop it—for example:

• Change negative dynamics into positive ones by running them backwards• Slow the acceleration of unwanted reinforcing loops—“When you’re in a hole,

stop digging”

Each Acquisition Archetype has specific interventions for addressing itKnowing about these common counter-productive dynamics is the best way to prevent them

A clever person solves a problem. A wise person avoids it. -- Einstein

Page 19: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

19NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

Why Is This Approach Critical?

Increasing complexity and acceleration in technical and organizational systems

Linear behaviors become nonlinear and unpredictable when combined

We lack problem solving methods that serve a “whole systems” view

Our current tools and methods are well suited for handling detailedcomplexity—where there are many variables.

Dynamic complexity refers to “situations where cause and effect are subtle, and where the effects over time of interventions are not obvious” (Senge, 1990, p. 71)

• When the same action has dramatically different effects in the short run & the long run

• When an action has one set of consequences locally and very different consequences in a different part of the system, there is dynamic complexity.

• When obvious interventions produce nonobvious consequences

Page 20: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

20NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

The Challenges

Patterns & structural properties are hard to perceive & discern. Too much situational flux; few are looking closely, broadly or over time. Problem solving strategies (for handling detail) are a poor match for handling dynamic complexity, and provide false assurance

• requires a radical shift in point of view & new problem solving methods Work-life values can run contrary to a systems view—with a focus on short term, bottom line, and stovepipes. Actions based purely on these values often result in counter productive behavior. We think we are doing the right thing, but our perspective is too small or too short. Solutions that “sound good” but often backfire (insidious traps)

— “results” focused— (tyranny of) consensus— low hanging fruit

Balance tackling the fundamental solution and achieving results. • Can you find “quick fixes” that contribute to the fundamental solution?• Identify and address competing goals• Align incentives

Page 21: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

21NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

Next Steps and Future Directions

Pattern Library of Acquisition Archetypes

• Eleven Acquisition Archetypes have been described• Plan to identify additional acquisition dynamics & root causes

Collaborative Consulting

• Help customers identify program-specific, counter-productive behaviors

Learning Experiments

• Interactive “hands-on” exercises that demonstrate key dynamics in software acquisition programs

Acquisition Archetypes Workshop

• “Improving Acquisition Practice and Avoiding Patterns of Failure”

Page 22: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

22NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

Workshop: Improving Acquisition Practice and Avoiding Patterns of Failure2 day interactive workshop for acquisition practitioners

Goals • Introduce the systems thinking approach

• Employ (example) acquisition archetypes to (1) convey commonacquisition patterns, (2) assist practitioners to apply andtranslate these archetypes into forms that illustrate failure patterns theysee occurring in their own program and context

• Elicit classic failure traps. Illustrate counter-productive behaviorsthrough short exercises with gaming and micro world management simulators

• Identify high-leverage “interventions” that can be used by a program torecognize, stop, and recover from the diagnosed acquisition failurepatterns

Page 23: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

23NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

For Additional Information

Upcoming SEI Technical Note: Archetypal Patterns of Failure in the Acquisition and Development of Software-Intensive Systems

SEI websitehttp://www.sei.cmu.edu/programs/acquisition-support/pof-intro.html

Page 24: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

24NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

Page 25: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

© 2008 Carnegie Mellon University

Back-up Slides

Page 26: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

26NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

Systems Archetypes -1

Fixes that Fail• A quick fix for a problem has immediate positive results, but its

unforeseen long-term consequences worsen the problem.

Balancing Loop with Delay• The current state of a system is moved toward the desired state though

repeated action, but the delay raises doubts about its effectiveness.

Limits to Growth• Initially rapid growth slows because of an inherent capacity limit in the

system that worsens with growth.

Shifting the Burden ("Addiction")• An expedient solution temporarily solves a problem, but its repeated

use makes it harder to use the fundamental solution.

Accidental Adversaries• Two parties destroy their relationship through escalating retaliations for

perceived injuries.

Page 27: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

27NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

Systems Archetypes -2

Escalation• Two parties compete for superiority, with each escalating its actions to

get ahead.

Drifting Goals• A gradual decline in performance or quality goals goes unnoticed,

threatening the long-term future of the system.

Growth and Underinvestment• Investments in a growing area aren't made, so growth stalls, which then

rationalizes further underinvestment.

Success to the Successful• When two parties compete for a limited resource, the initially more

successful party receives more resources, increasing its success.

Tragedy of the Commons• A shared resource is depleted as each party abuses it for individual

gain, ultimately hurting all who share it.

Page 28: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

28NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

Reinforcing Loop

Decreases Decreases

Page 29: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

29NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

Reinforcing Loop

Increases Increases

Page 30: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

30NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

Reinforcing Loop

AttritionS

S

R

Schedule Pressure

IncreasesIncreases

Page 31: Identifying Acquisition Patterns of Failure Using Systems ... · Systems Thinking is a method for analyzing complex systems Developed by Jay W. Forrester at MIT modeling electrical

31NDIA Systems Engineering ConferenceBill Novak, October 24, 2007© 2006 Carnegie Mellon University

Balancing Loop

DecreasesIncreases

ReworkS

O

B

Errors

IncreasesDecreases