Upload
bernd-wenzel
View
47
Download
2
Embed Size (px)
DESCRIPTION
Warum Pläne nicht aufgehen und wir dennoch planen müssen
Citation preview
Ja mach nur einen Plan …
Bernd G. Wenzel
Software Process and Software Quality
Part 03: Planning
Prof. (FH) Dipl.-Inform. Bernd G. Wenzel
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 3
Softwareprozess und Softwarequalität
Introduction
Motivation
Planning
Requirements Management
Design
Development
Test
Verification and Validation
Quality Management
(Software) Lifecycle Management
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 4
Planning
Observations about Plans
Good Planning
Planning Framework
Conclusions
Observations about Plans
The Basic Problem
Human Factors make Plans Worse
Political Factors make Plans Worse Again
Then Plans are Used in the Wrong Way
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 5
The Basic Problem
All plans are necessarily flawed
We plan for the future which we cannot know fully
Facets
What I don‘t know
knowingly or not
What I think I know
but don‘t
Quotes
Winston Churchill:
Predictions are difficult, especially if they pertain to the future
General Tommy Franks:
Even the best war plan does not survive the first encounter with the enemy
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 6
Observations about Plans
Observations about Plans
The Basic Problem
Human Factors make Plans Worse
Political Factors make Plans Worse Again
Then Plans are Used in the Wrong Way
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 7
Human Factors make Plans Worse (1)
We prefer bad plans in spite of best intentions
Short term vs long term decsions
We make bad short term decisions even when we fully understand the long term
consequences
e. g. smoking, drinking, dieting, debt
Resonant advice vs useful advice
We accept expert advice, if it is close to what we expect, it it sounds familiar
Familiarity has nothing to do with likelihood
Military: „fighting the last war“
Is this the expert advice we need?
Simple advice vs complicated advice
We prefer simple advice
Nobody is interested in a complicated plan as it will be complicated in all the
wrong ways
But If the truth were simple, we would have found it long ago
Reality is usually complicated, but complicated plans are not always right
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 8
Observations about Plans
Human Factors make Plans Worse (2)
We prefer bad plans in spite of best intentions (cont.)
Focused attention vs holistic attention
We focus on the at maximum handful of near things, the things we think we understand
But there may be thousends of things influencing the final result
Our focus may actually draw attention and effort away from where it should be
But nobody can handle thousends of factors properly
We need to focus on the most relevant ones
What are they?
We need to learn from the past
Transparent planning vs non-transparent planning
Different processes delivering suprisingly similar results
The distinguishing factor is trust
Optimism
We think we can handle more than we can
and don‘t realize this
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 9
Observations about Plans
Human Factors make Plans Worse (3)
We prefer bad plans in spite of best intentions (cont.)
Whishful thinking
Wanting/intending is easier than doing/following through
Peer pressure
Being Cassandra isn‘t fun
Analyzing worst cases is considered to be uncooperative by bosses as well as
colleagues
Brain scans do not allow to distinguish between
accepting an obvious lie due to peer pressure
perceiving the thruth
Social truth!
Rational bias
We over-estimate negative impacts
to provide a safety cushion for error
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 10
Observations about Plans
Observations about Plans
The Basic Problem
Human Factors make Plans Worse
Political Factors make Plans Worse Again
Then Plans are Used in the Wrong Way
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 11
Political Factors make Plans Worse Again (1)
Planning is subject to power games
HiPPO effect
Voluntary tendency to follow the Highest Paid Person‘s Opinion
What the most powerful person wants to hear!
Not necessarily the truth!
Apple:
Steve Job‘s „Reality Distortion Zone“
Fig leaf for HiPPOs
„I never told them to lie to me“
Authorization power
Reviewing plans before authorizing their resp. execution is good in principle
Gatekeepers role
is to ensure plans meet minimal quality standards
is not to change substantial contents of plans
Such as resource requirements, target dates, …
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 12
Observations about Plans
Political Factors make Plans Worse Again (2)
Planning is subject to power games (cont.)
Power abuse
Gatekeepers have the power to say NO
Gatekeepers are subject to the same human and political factors as anybody else
Consequence:
Even the best gatekeepers will abuse power occasionally
No gatekeeper will admit abusing power
We need „cowboys“
Grace Hopper:
It is easier to ask forgiveness than to ask for permission
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 13
Observations about Plans
Observations about Plans
The Basic Problem
Human Factors make Plans Worse
Political Factors make Plans Worse Again
Then Plans are Used in the Wrong Way
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 14
Then Plans are Used in the Wrong Way (1)
Plans to create the illusion of rationality
but we can rationalize everything
provided it is profitable for ourselves
First we use our distorted reality to make plans
then we use these plans to distort our reality
We use plans to disguise our lack of understanding by going
from what should be done
which it at least partially unknown
to the fully and well known plan
which we know is at least partially wrong
By repeating the plan over and over again – like a mantra –
we will convince of our plan
first our superiors
and ultimately ourselves
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 15
Observations about Plans
Then Plans are used in the Wrong Way (2)
Psychologically half empty ≠ half full
Loss matters more for us than gain
Experiment
Let‘s assume you know two therapies for an absolutely deadly epedemy
Selecting therapy 1 will save the lives of 35% of the patients treated
Selecting therapy 2 means 65% of the patients treated will die
Question
Which therapy would you choose?
We prefer to err through inaction
With deviation from the plan comes responsibility
Changing the plan is perceived as loss
unless the value gained is at least twice as much as the cost of the change
Such opportunities have most probably been identified during the original planning
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 16
Observations about Plans
Then Plans are used in the Wrong Way (3)
Plans become promises
we must not change
An estimate becomes a commitment
BTW
This so-called anchoring effect of numbers works even in totally unrelated cases
and gets worse with multi-tasking
We prefer plans we have developed / contributed to ourselves
The more our superiors repeat the plan, the more we believe in it
We don‘t want to give up the consistency and certainty provided by a plan
even if we know it is wrong
Planning schizophrenia
Plans need to be stable and to change at the same time
Think of the political spectrum
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 17
Observations about Plans
Then Plans are used in the Wrong Way (4)
Plans are used as weapons
Offensive use
Superiors may be more interested in following the plan to the letter than in achieving
results
Micromanagement!
Superiors just love to move authority up and responsibility down a hierarchy
That‘s why non-superiors are not supportive for planning
The blame of not having followed the plan then goes down to those doing the
actual work
Defensive use
Pretending to have a plan
„We followed the plan“
but reality didn‘t
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 18
Observations about Plans
Observations about Plans
The Basic Problem
Human Factors make Plans Worse
Political Factors make Plans Worse Again
Then Plans are Used in the Wrong Way
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 19
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 20
Planning
Observations about Plans
Good Planning
Planning Framework
Conclusions
Good Planning
Why we should Plan though?
What is Good Planning?
Let‘s be Less Wrong!
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 21
Why we should Plan though? (1)
Planning helps to establish common goals
Common goals help to co-ordinate actions
Planning helps to identify and define concrete and useful tasks
Concrete and useful tasks help to counter the bad habit of procrastination
Planning helps to reflect and understand whatever situation needs to be considered
avoiding our cave man heritage of acting before reflection
Planning helps to establish / see the big picture
avoiding to get lost in just another low level task
which is of course very well understood
Planning gives time before taking decisions
Time we can use to consider objectives and priorities
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 22
Good Planning
Why we should Plan though? (2)
Planning gives time before acting
Action without a plan is doomed to failure
What will surely fail we shouldn‘t do
Planning gives time to explore and appreciate alternatives
The more alternatives we explore, the better prepared we will be for the unexpected
Carl von Clausewitz:
Plans are of little importance, but planning is essential
Planning gives us (the impression / illusion of) control
(The impression / illusion of) Control improves our mental and physical health
Planning enables us to „fly to the Moon“
which is more fun, more interesting, and less boring than doing day to day work
but also more risky
Note: we didn‘t speak of perfection or success here at all!
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 23
Good Planning
Good Planning
Why we should Plan though?
What is Good Planning?
Let‘s be Less Wrong!
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 24
What is Good Planning? (1)
Plan as best as you can, but no more
No formal planning needed
if total effort < 50 person hours
If workforce < 5
Start with collecting all immediately available information
Look at easily available short term history
Only when you‘re thinking you can do better than copying the competition or the past: BDUF
(Big Design Up Front)
≈ 20% of expected total effort
expected ≠ hoped
expected ≠ guessed
expected ≠ demanded
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 25
Good Planning
What is Good Planning? (2)
Limitations to planning effort
Too much planning will waste planning effort when the plan needs to be changed
Too little planning effort will cause risks and create problems during plan execution
The more unknowns we have, the looser the planning
Trade-off between losses caused by
plan changes
realized risks
Let‘s be less wrong, somewhere in between
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 26
Good Planning
Good Planning
Why we should Plan though?
What is Good Planning?
Let‘s be Less Wrong!
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 27
Let‘s be Less Wrong!
Observations
We all want to be right, nobody wants to be less wrong
There is only one future, we all want to predict this future precisely
Benjamin Franklin:
„If you fail to plan, your plan will fail“
Common believe:
The result cannot be better than the plan
Although this is human, this is bullshit
As we have seen, we need to have a plan
any plan is not enough
a perfect plan is not possible
avoiding all the planning pitfalls is not possible
we still cannot predict the future
So let‘s have realistic expectations about our plans and
Let‘s try to be less wrong
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 28
Good Planning
Good Planning
Why we should Plan though?
What is Good Planning?
Let‘s be Less Wrong!
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 29
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 30
Planning
Observations about Plans
Good Planning
Planning Framework
Conclusions
context
Planning Framework (1)
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 31
StakeholdersOpportunities
have interest in
Requirements
provide
Intended Result
are impacted by
fulfills
Work Resources
Way of Working
contribute to
do
scope & constrain
set up to address
support
Planning Framework (2)
Result
Whatever we want to plan
Stakeholders
OR
Have an advantage of the result
Have a problem with the result
Sponsor the planning
Do the planning
Sponsor the plan execution
Execute the plan
Opportunities
Detailed advantages and disadvantages of our result
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 32
Planning Framework (3)
Requirements
Detailed and verifiable description of what we know about our result
Functionally
Technically
Organizationally
Contextually
…
Work
Everything we need to do to achieve the result
consistent with the structure of the result
at a reasonable level of detail
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 33
Planning Framework (4)
Resources
Human resources
Financial resources
Tools and equipment
Space
Time
…
Way of Working
Processes
Techniques
Methods
Methodologies
…
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 34
Planning Framework (5)
Context
Everything able to cause a plan change or a plan execution risk
e. g. by impacting
intended result
stakeholders
opportunities
requirements
work
resources
way of working
…
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 35
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 36
Planning
Observations about Plans
Good Planning
Planning Framework
Conclusions
Conclusions
We cannot create perfect, correct, and 100% precise plans
for logical reasons
for psychological reasons
for political reasons
Plans are used very often in the wrong way in addition
Consequently we should not try to create perfect, correct, and 100% precise plans
We should do expectation management with regard to our plans, instead
We need to settle for plans which are less wrong
We need to go for a reasonable degree of detail, taking into account the risks
Our planning framework helps us in doing so
Guiding us through our information collection task
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 37
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 38
Planning
Observations about Plans
Good Planning
Planning Framework
Conclusions
Rev.:2014-10-01 FH-Vorarlberg / ITM / Softwareprozess und Softwarequalität: Planning Slide 39
Softwareprozess und Softwarequalität
Introduction
Motivation
Planning
Requirements Management
Design
Development
Test
Verification and Validation
Quality Management
(Software) Lifecycle Management