72
Affordance-Driven Process Improvement Michael Keeling @michaelkeeling Designing a Process that Works for Your Team Ariadna Font @quicola

Designing a Process that Works for Your Team

Embed Size (px)

DESCRIPTION

The best processes are those that encourage teams to naturally do the right things at the right times. Amazing processes like this don’t happen by accident; they are specifically designed to encourage desirable behavior while discouraging harmful behaviour. By carefully choosing the process’s affordances -- practices or artifacts that direct our thinking toward a specific goal -- a team can tailor a process that makes success intuitive. The session will begin by presenting the core concepts behind affordence-driven process improvement before diving into a collaborative workshop. During the workshop teams will use information from the introduction to brainstorm practices that will help them promote those values, as you would in a team retrospective.

Citation preview

Page 1: Designing a Process that Works for Your Team

Affordance-Driven Process Improvement

Michael Keeling @michaelkeeling

Designing a Process that Works for Your Team

Ariadna Font @quicola

Page 2: Designing a Process that Works for Your Team

Workshop Agenda

•  The Theory of Affordances •  Affordance-Driven Process Improvement •  Workshop Time!

2

FYI -- We’ll spend about the last hour hands-on

Page 3: Designing a Process that Works for Your Team

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

Page 4: Designing a Process that Works for Your Team

Warning

4

Page 5: Designing a Process that Works for Your Team

5

THE  THEORY  OF  AFFORDANCES  

Page 6: Designing a Process that Works for Your Team

You’ve seen these concepts before…

•  Software Architects •  Object Designers •  User Experience Experts •  Kanban Experts •  Agile Coaches •  “Systems Thinkers”

6

Page 7: Designing a Process that Works for Your Team

7

Goal:    Design  an  object  that  makes  it  feel  natural  and  easy    

to  do  the  right  thing.  

Page 8: Designing a Process that Works for Your Team

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  acAons.  

J.  J.  Gibson,  The  Ecological  Approach  to  Visual  Percep:on.  Psychology  Press,  1986.  

Donald  Norman,  The  Design  of  Everyday  Things.  Basic  Books,  1998  

Page 9: Designing a Process that Works for Your Team

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  acAons.  

J.  J.  Gibson,  The  Ecological  Approach  to  Visual  Percep:on.  Psychology  Press,  1986.  

Donald  Norman,  The  Design  of  Everyday  Things.  Basic  Books,  1998  

Page 10: Designing a Process that Works for Your Team

10

The  Dutch  Airport  Problem  

Page 11: Designing a Process that Works for Your Team

11

Page 12: Designing a Process that Works for Your Team

12

Page 13: Designing a Process that Works for Your Team

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”  hJp://www.npr.org/templates/story/story.php?storyId=121310977   13

Page 14: Designing a Process that Works for Your Team

Good Affordance..Bad Affordance Push   Pull  

Good  Affordance  14

Page 15: Designing a Process that Works for Your Team

15

Bad  Affordance  

Page 16: Designing a Process that Works for Your Team

16

Gary  Larson  The  Far  Side  

Page 17: Designing a Process that Works for Your Team

17

Page 18: Designing a Process that Works for Your Team

18

Page 19: Designing a Process that Works for Your Team

19

Page 20: Designing a Process that Works for Your Team

20

QualiAes  vs.  FuncAonality  

Page 21: Designing a Process that Works for Your Team

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 21

Page 22: Designing a Process that Works for Your Team

22

Page 23: Designing a Process that Works for Your Team

23

Gas  Engine  Motorcycle  ThroJle  

Portable…  but  noisy.  

Page 24: Designing a Process that Works for Your Team

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

24

Page 25: Designing a Process that Works for Your Team

25

AFFORDANCE-­‐DRIVEN  PROCESS  IMPROVEMENT  

Page 26: Designing a Process that Works for Your Team

26

Goal:    Design  a  process  that  makes  it  natural  and  easy    to  do  the  right  thing.  

Page 27: Designing a Process that Works for Your Team

Affordance-Driven Change •  Observe and Evaluate Behaviors

– What is your team doing? – Positive, Negative, Neutral

•  Identify Affordances – What nudged your team’s behavior?

•  Alter Affordances – Change the negative affordances, keep the

positive ones

27

Page 28: Designing a Process that Works for Your Team

Affordance-Driven Change

28

Observe  Behaviors  

Evaluate  Behaviors  

IdenAfy  Affordances  

Alter  Affordances  

Page 29: Designing a Process that Works for Your Team

Affordance-Driven Change

29

Observe  Behaviors  

Evaluate  Behaviors  

IdenAfy  Affordances  

Alter  Affordances  

What  is  your  team  doing?  

   How  do  they  act?  

Page 30: Designing a Process that Works for Your Team

Affordance-Driven Change

30

Is  this  the  behavior  you  want?  

 PosiAve  NegaAve  Neutral  

Observe  Behaviors  

Evaluate  Behaviors  

IdenAfy  Affordances  

Alter  Affordances  

Page 31: Designing a Process that Works for Your Team

Affordance-Driven Change

31

What  nudged  your  team  to  act  the  way  the  did?      

Observe  Behaviors  

Evaluate  Behaviors  

IdenAfy  Affordances  

Alter  Affordances  

Page 32: Designing a Process that Works for Your Team

Affordance-Driven Change

32

Keep  the  good  affordances,  

change  the  bad  affordances  

Observe  Behaviors  

Evaluate  Behaviors  

IdenAfy  Affordances  

Alter  Affordances  

Page 33: Designing a Process that Works for Your Team

Example: Team Square Root

33

ObservaAons:    Arguments  about  tasking    Team  over-­‐commiang    Resist  giving  up  tasks  

Michael  Keeling,  “Process  Affordances:  Ignore  at  your  own  Peril”  hJp://neverletdown.net/2009/03/process-­‐affordances-­‐ignore-­‐at-­‐your-­‐own-­‐peril/  

Page 34: Designing a Process that Works for Your Team

Values: Baseline for Evaluating Behavior

34

As  a  team  we  valued    Predictability    Adaptability    Respect    Open  CommunicaAon  

Page 35: Designing a Process that Works for Your Team

Evaluate Behaviors

35

ObservaAons:    Arguments  about  tasking    Team  over-­‐commiang    Resist  giving  up  tasks  

+  –  –  –  

Page 36: Designing a Process that Works for Your Team

Identify Affordances

36

ReflecAng  on  our  pracAces…    “Milestone  Owners”          Nudge:  Aatude  of  lone  responsibility    No  backlog          Nudge:    Anxiety  over  future  tasks  

Page 37: Designing a Process that Works for Your Team

Alter Affordances

37

Created  a  backlog    Abolished  “Owners”    New  burndown  chart  –  show  

 progress  against  commitments  

Page 38: Designing a Process that Works for Your Team

Team Values: Evaluating Behaviors

“Qualities your team values” •  Examples:

– courage – predictability – sustainability –  improvability – measurability

38

– scalability –  responsibility –  feedback –  face-to-face

communication

Page 39: Designing a Process that Works for Your Team

Examples of Good Affordances

•  Iterative planning, light documentation – Nudge: changeability

•  Pair programming – Nudge: knowledge sharing, performance,

quality

39

Page 40: Designing a Process that Works for Your Team

Examples of Bad Affordances

•  Large planning buffers – Nudge: procrastination

•  Developer Branches – Nudge: solitary development

40

Page 41: Designing a Process that Works for Your Team

41

LET’S  PRACTICE!  

Page 42: Designing a Process that Works for Your Team

What is an affordance?

42

 An  affordance  is  any  perceivable  element,  such  as  an  object  or  idea,  that  directs  a  person’s  thinking  toward  a  specific  set  of  acAons.  

J.  J.  Gibson,  The  Ecological  Approach  to  Visual  Percep:on.  Psychology  Press,  1986.  

Donald  Norman,  The  Design  of  Everyday  Things.  Basic  Books,  1998  

Page 43: Designing a Process that Works for Your Team

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

43

Page 44: Designing a Process that Works for Your Team

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!

44

Page 45: Designing a Process that Works for Your Team

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

45

Page 46: Designing a Process that Works for Your Team

46

QualiAes  your  “team”  values  

Summary  of  pracAces  nudge  your  team’s  

behavior  

AcAon  items  –  how  to  change  behavior?  

Page 47: Designing a Process that Works for Your Team

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….

47

Page 48: Designing a Process that Works for Your Team

Get your package

48

Send  one  team  member  to  the  front  to  retrieve  workshop  materials.  

Page 49: Designing a Process that Works for Your Team

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

Page 50: Designing a Process that Works for Your Team

50

Page 51: Designing a Process that Works for Your Team

51

QualiAes  your  “team”  values  

Start    

Start  populaAng  your  poster!  

Page 52: Designing a Process that Works for Your Team

Affordance-Driven Change

52

Observe  Behaviors  

Evaluate  Behaviors  

IdenAfy  Affordances  

Alter  Affordances  

Page 53: Designing a Process that Works for Your Team

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

Page 54: Designing a Process that Works for Your Team

54

Page 55: Designing a Process that Works for Your Team

Affordance-Driven Change

55

Observe  Behaviors  

Evaluate  Behaviors  

IdenAfy  Affordances  

Alter  Affordances  

Page 56: Designing a Process that Works for Your Team

56

Page 57: Designing a Process that Works for Your Team

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 ____ 57

Page 58: Designing a Process that Works for Your Team

58

QualiAes  your  “team”  values  

Start    Don’t  forget  your  poster!  

58

Summary  of  pracAces  nudge  your  team’s  

behavior  

Page 59: Designing a Process that Works for Your Team

Affordance-Driven Change

59

Observe  Behaviors  

Evaluate  Behaviors  

IdenAfy  Affordances  

Alter  Affordances  

Page 60: Designing a Process that Works for Your Team

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

Page 61: Designing a Process that Works for Your Team

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

Page 62: Designing a Process that Works for Your Team

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

Page 63: Designing a Process that Works for Your Team

63

QualiAes  your  “team”  values  

Summary  of  pracAces  nudge  your  team’s  

behavior  

AcAon  items  –  how  to  change  behavior?  

Page 64: Designing a Process that Works for Your Team

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 you practice/behavior map? – What can you take back to your team?

64

Page 65: Designing a Process that Works for Your Team

65

WRAP-­‐UP  

Page 66: Designing a Process that Works for Your Team

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

Page 67: Designing a Process that Works for Your Team

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

Page 68: Designing a Process that Works for Your Team

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

Page 69: Designing a Process that Works for Your Team

69

“A  bad  system  will  beat  a  good  person  every  Ame.”  

-­‐  W.  Edwards  Deming  

Page 70: Designing a Process that Works for Your Team

70

Go  forth  and  design  GREAT  systems!    

Page 71: Designing a Process that Works for Your Team

Thank you!

Michael Keeling @michaelkeeling http://neverletdown.net

71

Ariadna Font @quicola http://ariadna.font.cat/

Page 72: Designing a Process that Works for Your Team

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