Post on 28-Jan-2015
description
transcript
Affordance-Driven
Process Improvement
Michael Keeling
@michaelkeeling
Designing a Process that Works for Your Team
Ariadna Font
@quicola
Workshop Agenda
• The Theory of Affordances
• Affordance-Driven Process Improvement
• Workshop Time!
2
FYI -- We’ll spend about
the last hour hands-on
Goals for this Workshop
1. Unlock your mind so you can identify
affordances in your team’s process
2. Practice affordance-driven improvement
in a retrospective simulation
3. Map typical team behaviors to common
agile practices
3
Warning
4
5
THE THEORY OF AFFORDANCES
You’ve seen these concepts before…
• Software Architects
• Object Designers
• User Experience Experts
• Kanban Experts
• Agile Coaches
• “Systems Thinkers”
6
7
Goal: Design an object that makes it feel natural and easy
to do the right thing.
What is an affordance?
8
An affordance is any perceivable element, such as an object or idea,
that directs a person’s thinking toward a specific set of actions.
J. J. Gibson, The Ecological Approach to Visual Perception. Psychology Press, 1986.
Donald Norman, The Design of Everyday Things. Basic Books, 1998
What is an affordance?
9
An affordance is any perceivable element, such as an object or idea,
that directs a person’s thinking toward a specific set of actions.
J. J. Gibson, The Ecological Approach to Visual Perception. Psychology Press, 1986.
Donald Norman, The Design of Everyday Things. Basic Books, 1998
10
The Dutch Airport Problem
11
12
The Urinal Fly
“It improves the aim. If a
man sees a fly, he aims at
it. Fly-in-urinal research
found that etchings reduce
spillage by 80%. It gives a
guy something to think
about.
That’s a perfect example of
process control.”
Robert Krulwhich, “There’s a Fly in my Urinal” http://www.npr.org/templates/story/story.php?storyId=121310977 13
Good Affordance..Bad Affordance Push Pull
Good Affordance 14
15
Bad Affordance
16
Gary Larson The Far Side
17
Qualities vs. Functionality
Example: Blend a Drink
• Functions
– Prepare the blender
– Blend
– Clean the blender
• Qualities
– Countertop-ability
– Clean-ability
– Transportability
Galvao and Sato, “Affordances in Product Architecture: Linking Technical
Functions and Users’ Tasks” Proceedings of IDETC/CIE 2005 18
19
20
Gas Engine Motorcycle Throttle
Portable… but noisy.
Application to Software Process
• Example Process Functions
– Write software, test software, release software
• Example Process Qualities
– Plan-ability
– Predictability
– Changeability
– Quality
– Performance
– Reliability
– Estimate-ability
– Harmony
21
22
AFFORDANCE-DRIVEN PROCESS IMPROVEMENT
23
Goal: Design a process that makes it natural and easy
to do the right thing.
Affordance-Driven Change
25
Observe Behaviors
Evaluate Behaviors
Identify Affordances
Alter Affordances
Affordance-Driven Change
26
Observe Behaviors
Evaluate Behaviors
Identify Affordances
Alter Affordances
What is your team doing?
How do
they act?
Affordance-Driven Change
27
Is this the behavior you want?
Positive Negative Neutral
Observe Behaviors
Evaluate Behaviors
Identify Affordances
Alter Affordances
Affordance-Driven Change
28
What nudged your team to act the way the did?
Observe Behaviors
Evaluate Behaviors
Identify Affordances
Alter Affordances
Affordance-Driven Change
29
Keep the good affordances,
change the bad affordances
Observe Behaviors
Evaluate Behaviors
Identify Affordances
Alter Affordances
Example: Team Square Root
30
Observations: Arguments about tasking Team over-committing Resist giving up tasks
Michael Keeling, “Process Affordances: Ignore at your own Peril” http://neverletdown.net/2009/03/process-affordances-ignore-at-your-own-peril/
Values: Baseline for Evaluating Behavior
31
As a team we valued Predictability Adaptability Respect Open Communication
Evaluate Behaviors
32
Observations: Arguments about tasking Team over-committing Resist giving up tasks
+ – – –
Identify Affordances
33
Reflecting on our practices… “Milestone Owners” Nudge: Attitude of lone responsibility No backlog Nudge: Anxiety over future tasks
Alter Affordances
34
Created a backlog Abolished “Owners” New burndown chart – show progress against commitments
Team Values: Evaluating Behaviors
“Qualities your team values”
• Examples:
– courage
– predictability
– sustainability
– improvability
– measurability
35
– scalability
– responsibility
– feedback
– face-to-face
communication
Examples of Good Affordances
• Iterative planning, light documentation
– Nudge: changeability
• Pair programming
– Nudge: knowledge sharing, performance,
quality
36
Examples of Bad Affordances
• Large planning buffers
– Nudge: procrastination
• Developer Branches
– Nudge: solitary development
37
38
LET’S PRACTICE!
What is an affordance?
39
An affordance is any perceivable element, such as an object or idea,
that directs a person’s thinking toward a specific set of actions.
J. J. Gibson, The Ecological Approach to Visual Perception. Psychology Press, 1986.
Donald Norman, The Design of Everyday Things. Basic Books, 1998
Goals for this Workshop
1. Unlock your mind so you can identify
affordances in your team’s process
2. Practice affordance-driven improvement
in a retrospective simulation
3. Map typical team behaviors to common
agile practices
40
Ground Rules
• When your team is ready to move on, have somebody wear the party hat
• Manage your time, watch the clock!
• Raise your hand if you have a question
• Have fun!
41
Workshop Agenda
1. Establish context, agree on team values
2. Evaluate behaviors
3. Identify affordances nudging your team
4. Propose changes to your team’s
practices
5. Finish posters and share findings
6. Wrap-up
42
43
Qualities your “team” values
Summary of practices nudge your team’s
behavior
Action items – how to change behavior?
Establishing Context – 2 min
• Task: Introduce yourselves to one another – Briefly share some interesting facts about
yourself and your role(s) at work
• Context: – You are now a team, working together to build a
new awesome piece of software.
– You’ve gathered together for a team retrospective….
44
Agree on Team Qualities – 5 min
• Task: Agree on the 3 – 5 core qualities
you value most as a team.
– Annotate worksheet and add to poster
• Goal: You are going to focus on these
through the workshop and use them to
evaluate behaviors and determine what
improvements to pursue first.
46
47
48
Qualities your “team” values
Start
Start populating your poster!
Agree on Team Qualities – 5 min
• Task: Agree on the 3 – 5 core qualities
you value most as a team.
– Annotate worksheet and add to poster
• Goal: You are going to focus on these
through the workshop and use them to
evaluate behaviors and determine what
improvements to pursue first.
49
Affordance-Driven Change
50
Observe Behaviors
Evaluate Behaviors
Identify Affordances
Alter Affordances
Evaluate Behaviors – 10 min
• Task: Decide whether your team’s
behaviors (Blue Cards) are positive,
neutral, or negative relative to your
values.
• Goal: Learn to observe and analyze team
behaviors in your work environment.
51
52
Evaluate Behaviors – 10 min
• Task: Decide whether your team’s
behaviors (Blue Cards) are positive,
neutral, or negative relative to your
values.
• Goal: Learn to observe and analyze team
behaviors in your work environment.
53
Affordance-Driven Change
54
Observe Behaviors
Evaluate Behaviors
Identify Affordances
Alter Affordances
55
Identify Affordances – 15 min
• Task: Map practices to negative behaviors.
What affordances nudged your team?
– Try the “5 Whys” technique
– If there is no practice in your deck that you think leads to this bad behavior, use one of the wildcards
• Goal: Have a handful of patterns like this on your poster
<Practice> nudges <Behavior> because ____
56
57
Qualities your “team” values
Start Don’t forget your poster!
57
Summary of practices nudge your team’s
behavior
Identify Affordances – 15 min
• Task: Map practices to negative behaviors.
What affordances nudged your team?
– Try the “5 Whys” technique
– If there is no practice in your deck that you think leads to this bad behavior, use one of the wildcards
• Goal: Have a handful of patterns like this on your poster
<Practice> nudges <Behavior> because ____
58
Affordance-Driven Change
59
Observe Behaviors
Evaluate Behaviors
Identify Affordances
Alter Affordances
Propose Key Changes – 10 min
• Task: Create 2 or 3 action items for your team
and document why you think they will get rid of
the negative behavior
• Goal: Add or remove affordances to your team’s
process. Turn the undesired behaviors into
desired ones.
Practice P(Bad Behavior) Practice P’ (Ø / Good Behavior)
60
Example…
Free dinner nudges developers to stay
late…
Change the Free Dinner affordance
Free breakfast – nudge developers to come
to work early, not waiting for a signal to
mark the end of the day
61
Propose Key Changes – 10 min
• Task: Create 2 or 3 action items for your team
and document why you think they will get rid of
the negative behavior
• Goal: Add or remove affordances to your team’s
process. Turn the undesired behaviors into
desired ones.
Practice P(Bad Behavior) Practice P’ (Ø / Good Behavior)
62
63
Qualities your “team” values
Summary of practices nudge your team’s
behavior
Action items – how to change behavior?
Share your findings! – 15 min
• Task: Share your poster!
• Goal: Tell a story so that others can learn
from your thinking process
• Reflection
– Any surprises in your practice/behavior map?
– What can you take back to your team?
64
65
WRAP-UP
Goals for this Workshop
1. Unlock your mind so you can identify
affordances in your team’s process
2. Practice affordance-driven improvement
in a retrospective simulation
3. Map typical team behaviors to common
agile practices
66
Practices vs. Affordances?
We simplified things a little for the
simulation…
The world is not this simple.
Affordances can be subtle, tricky to identify.
67
Tools for Retrospectives
• Identify valued team qualities
• “Like to Like” game
– Create your own behaviors and practices card
decks
• Affordance Awareness
– It’s not your fault!
68
69
“A bad system will beat a good person every time.”
- W. Edwards Deming
70
Go forth and design GREAT systems!
Thank you!
Michael Keeling
@michaelkeeling
http://neverletdown.net
71
Ariadna Font
@quicola
http://ariadna.font.cat/
References
• Robert Krulwhich, “There’s a Fly in my Urinal” http://www.npr.org/templates/story/story.php?storyId=121310977
• Donald Norman, The Design of Everyday Things. Basic Books, 1988
• J. J. Gibson, The Ecological Approach to Visual Perception. Psychology Press, 1986.
• Galvao and Sato, “Affordances in Product Architecture: Linking Technical Functions and Users’ Tasks” Proceedings of IDETC/CIE 2005
• Michael Keeling, “Identifying Process Affordances: Nudging Toward Change” http://neverletdown.net/2010/03/identifying-process-affordances-nudging-toward-change/
• Michael Keeling, “Process Affordances: Ignore at your own Peril” http://neverletdown.net/2009/03/process-affordances-ignore-at-your-own-peril/
72