Professional Documents
Culture Documents
net/publication/265754004
CITATIONS READS
508 7,057
1 author:
Alistair Cockburn
Humans and Technology, inc.
77 PUBLICATIONS 11,009 CITATIONS
SEE PROFILE
All content following this page was uploaded by Alistair Cockburn on 29 February 2016.
Alistair Cockburn
http://Alistair.Cockburn.us
Organization Survival
Infinite
Career Management
Finite w/ King-of-the-hill
Jazz music
no fixed end wrestling
Tennis Rock-Climbing
Finite &
goal-directed Software
Poker Developme
nt
Competitive Cooperative
* If your sword misses the opponent, leave it * wherever you hold it, the idea is to hold it so
there for the moment, until the opponent that it will be easy to kill the opponent. This
strikes again, whereupon strike from below must be understood.
* You should observe reflectively, with overall * Whatever guard you adopt, do not think of it
awareness of the large picture as well as as being on guard; think of it as part of the act
precise attention to small details... of killing.
* The views of each school, and the logic of * In my school, no consideration is given
each path, are realized different, according to to anything unreasonable; the heart of the
the individual person, depending on the matter is to use the power of knowledge of
mentality... martial arts to gain victory any way you can.
“Criticality”
Life
L6 L20 L40 L100 L200 L500 L1000
X
Essential X
moneys E6 E20 E40 E100 E200 E500 E1000
Discretionary X
moneys
D6 D20 D40 D100 D200 D500 D1000
Comfort
C6 C20 C40 C100 C200 C500 C1000
1-6 - 20 - 40 - 100 - 200 - 500 - 1,000
Number of people coordinated
(wine bottle)
Alistair Cockburn ©Humans and Technology, Inc., 1998-2003 Slide 18
You don’t need perfect communication:
You need “good enough to proceed”
• You don’t know what you know, nor the thing you are
trying to communicate nor what you are communicating.
• Your listener sees only a part of what you are saying.
- Your body communicates subvocally directly to the
listener’s emotions
• What your listeners learn depends on their mental
state.
- You only ‘take on’ what you are ready to
• “Equivocality” is the ambiguity in communication.
- It will never be zero (no matter how hard you try)
- Action and feedback reduces it to acceptable levels.
- That is Good Enough
2 people at
whiteboard
Communication Effectiveness
2 people
on phone
Ongoing Problems
Kim
Proximity
Osmosis
Drafts
Radiators Pat
Courtesy of
RoleModel Software
Pat
Private work
Library
Watch for:
- drafts
- convection currents
- communities
Proximity
Osmosis
Drafts
Radiators
Motivated by:
Pride in work
Pride in contributing
Pride in accomplishment
Values
Quality Process Teams
Regression tests Tester
MBWA Designer
Object model
Use cases Documenter
Project plan Project manager
CRC cards
Use cases Products
Techniques Roles
Factory Products
Control
System
Notation
Tools
People, Organization, Culture
Alistair Cockburn ©Humans and Technology, Inc., 1998-2003 Slide 50
Any methodology attacks a limited subset of
the project lifecycle, roles, role activities
rest and recreation
vacations and basic business
technical education
timesheets
project development
project sponsor
project manager
expert user
business expert
lead designer
UI expert
Roles
reuse point
designer/programmer
tester
writer
trainer
secretary
contractor
night watchman
janitor Project Lifecycle
envisioning proposal sales setup requirements design & code test deploy train alter
Methodology Ecosystem
Values
Activities Milestones
Values
Jim
Tester
Quality Process Teams Designer Peter
Documenter Jenny
Project manager Annika
Products Techniques Roles People
Marketing Business
Marketplace Programmers
group analysts
Jenny
(Pete)
Bill
Mary
Team 1 Team 2
Many people
(using a very heavy
methodology)
Methodology Weight
Alistair Cockburn ©Humans and Technology, Inc., 1998-2003 Slide 59
No methodology will fit the whole company.
Select one to suit your project
“Criticality”
Life
L6 L20 L40 L100 L200 L500 L1000
X
Essential X
moneys E6 E20 E40 E100 E200 E500 E1000
Discretionary X ?
moneys
D6 D20 D40 D100 D200 D500 D1000
Comfort ?
C6 C20 C40 C100 C200 C500 C1000
1-6 - 20 - 40 - 100 - 200 - 500 - 1,000
Number of people coordinated
reuse point
designer/programmer
tester
writer
trainer
secretary
contractor
night watchman
janitor Project Lifecycle
envisioning proposal sales setup requirements design & code test deploy train alter
Roles
XP user
UI designer
designer / programmer
designer / programmer
coach
setup requirements design code test
project monitoring
application development
sponsor
Usage-centered
coordinator
design user
Roles
UI designer
designer / programmer
coach
setup requirements design code test
Alistair Cockburn ©Humans and Technology, Inc., 1998-2003 Slide 62
Most importantly, a methodology needs to
allow itself to EVOLVE
Almost none do
How?
Start of project:
Choose an iteration (increment) duration,
Interview people to learn key issues, hazards.
Hold tuning workshop to build starter set of rules.
That is your “starter” methodology.
Get feedback periodically:
Hold “reflection workshop” periodically:
monthly / quarterly / mid- & post-increment;
one hour, half hour, half day
Update the project with new rules and conventions
Post the results prominently for all to see!
(Hidden results are no results)
Alistair Cockburn ©Humans and Technology, Inc., 1998-2003 Slide 64
Reflection technique: Write in this chart.
What worked? What might you try next time?
Ongoing Problems
Alistair Cockburn
Humans and Technology
alistair.cockburn@acm.org
http://Alistair.Cockburn.us
% Complete Surprise!
Discover the 10%
completely unexpected!
expected actual
Pack the 15% critical
Pack the 80 %
not-so-critical
No visibility into
what is happening here !
Discard the 5% junk
Time Day expected actually
18 done done
Alistair Cockburn ©Humans and Technology, Inc., 1998-2003 Slide 76
Method #2. Estimate boxes to be packed.
Good visible progress. No warning of trouble!
# Boxes Packed
(actual # boxes needed)
An unknown
expected # boxes needed number !!
Surprise!
An unknown
time !!
Surprise!
Estimate Day 18 expected actually Time
# boxes done done
needed
Alistair Cockburn ©Humans and Technology, Inc., 1998-2003 Slide 77
Method #3. Packing each room to completion.
Good visibility & early warning.
0
Day 18 Day 33
Time
This is an example of a Burn-Down chart
Alistair Cockburn ©Humans and Technology, Inc., 1998-2003 Slide 78
Timeboxing uses the ‘Validation V’:
Not waterfall, but a fact of life.
? ?
Adjustment
Points
1-10
Alistair Cockburn ©Humans and Technology, Inc., 1998-2003 Slide 80
Short Vs allow focus of attention, learning,
better estimation, process & team changes.
Staff changes
Management changes
Process changes
Aha ! Aha !
6-16 weeks
Ah
?
1-10
Alistair Cockburn ©Humans and Technology, Inc., 1998-2003 Slide 81
Some Vs (iterations) end with “examination”
Some Vs (increments) end in “delivery”
Increments should be 4 months or less.
D D D
2 1 1 1 1 1 1 1 1
use case 21
screen 11
class 9
use case 22
Requirements
Completeness, Stability
UI & Object
Design
Programming
Testing
Time
Alistair Cockburn ©Humans and Technology, Inc., 1998-2003 Slide 86
Concurrent Development takes less time
more money (maybe)
Requirements
Completeness, Stability
UI & Object
Design
Programming
Testing
Time
Alistair Cockburn ©Humans and Technology, Inc., 1998-2003 Slide 87
Correct amount of Stability depends on the
Bottlenecks !
Completeness, Stability
to speed the game!
Smalltalk
Smalltalker
DBA
Smalltalker
Req’ts
Smalltalker DBA Time
Smalltalker
Req’ts
Smalltalker
Programmer
Req’ts
User Programmer Database designer
Programmer
Req’ts
Programmer
Project 2: Simplify life for the programmers / tester, make Bus. Mgrs. do extra
User Programmer
Bus. Mgr.
User Programmer Tester
Bus. Mgr.
User Programmer
Programmer
User Bus. Mgr.
Scrum
XP
FDD
DSDM
Crystal
Grizzly
....and an indefinite number of others
“Customer” on site
- “Customer” role is overloaded
Alistair Cockburn ©Humans and Technology, Inc., 1998-2003 Slide 97
DSDM: Industrialized “rapid
application development”
Developed in the UK in the mid-1990s from RAD
References:
www.dsdm.org
DSDM: A Framework for Business-Centered Development
Jennifer Stapleton, Addison-Wesley 2003.
Core practices:
Business study, prototyping, project management
An object model Major feature sets, The development Sequence diagram Client-valued
feature sets, plan functionality
(more detail than
(more shape than features
shape)
detail)
Start of project:
Choose an iteration (increment) duration,
Interview people to learn key issues, hazards.
Hold tuning workshop to build starter set of rules.
That is your “starter” methodology.
Get feedback periodically:
Hold “reflection workshop” periodically:
monthly / quarterly / mid- & post-increment;
one hour, half hour, half day
Update the project with new rules and conventions
Post the results prominently for all to see!
(Hidden results are no results)
Alistair Cockburn ©Humans and Technology, Inc., 1998-2003 Slide 109
Most “agile” methodologies are home-grown,
but share essential qualities:
(more
to
come?)