play soccer, not american football: how to foster a whole ... · ui/ux designer process...

54
Play soccer, not football: How to foster a whole- team approach by thinking in activities rather than roles Matt Philip Asynchrony Solutions, Inc.

Upload: others

Post on 18-Jul-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Play soccer, not football: How to foster a whole-team approach by thinking in activities rather than roles

Matt PhilipAsynchrony Solutions, Inc.

Page 2: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Game plan

1st half Roles vs. activities, soccer vs. football

2nd half Smells and remedies

Extra time Whole-team and lean-kanban

Penalty kicks? A game of our own

Page 3: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

What is “whole-team approach”?

The entire team works as a unit to share responsibility for producing high-quality software in a timeframe that maximizes its value to the business.

#1 on Crispin and Gregory's list of “key success factors” for agile testing

XP practice that advises you to have sufficient skills within the team itself to get the job done

Team of generalizing specialists

Page 4: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Some benefits

1. Lowers risk to delivery

2. Improves velocity/cycle time

3. Produces better ideas

4. Reduces defects and other waste

5. Allows team to work within budget

6. Increases work satisfaction

Page 5: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Some agile roles and activities

Role

Programmer

Tester

Customer/Product owner

Coach/scrum master

Architect

Deployment engineer/build master

Database analyst

UI/UX designer

Process facilitator/tracker

Technical lead

Activity

Program

Model

Test

Specify requirements

Exploratory test

Plan/estimate

Design interactions and screens

Manage backlog

Deploy/release

Design architecture

Design/update database

Page 6: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Every team member has equal value

Page 7: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Why soccer? (and why not football?)

Page 8: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Football vs. soccer: differences

Football Soccer

Positions are highly specialized Positions are grouped in broader roles, with one exception (goalie)

Team is divided into units: offense, defense, kicking, punting, kick return

Team is divided only into broadinteracting lines

Units enter the field in stages Entire team is always on the field

Play is usually linear, one-way, “single-threaded”

Play is more simultaneous, “multi-threaded”

Play is stop-and-start, with delays Play is more continuous flow

Decisions are made via command-control Team self-organizes for decisions

End-of-game plays sometimes rest on a particular role (e.g., kicker)

Anyone can be a hero

Page 9: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Over-specialization limits ability to cross roles

Football (NFL) Avg. Height Avg. Weight

Wide Receiver 6’0” 200

Quarterback 6’3” 224

Cornerback 5’11” 192

Offensive Lineman 6’4” 310

Kicker 6’0” 203

Standard deviation 2.2 48.5

Soccer (World Cup) Avg. Height Avg. Weight

Defender 6’0” 169

Midfielder 5’11” 159

Forward 5’11” 166

Goalie 6’2” 182

Standard deviation 1.4 9.6

Page 10: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Soccer

What are the roles and activities of soccer?

Page 11: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Whole-team approach in scoring a goal

Page 12: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

One player’s interactions

Page 13: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Interactions of the most specialized

Page 14: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

What whole-team doesn’t mean

Page 15: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Activities -> overlapping roles

Page 16: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Activities -> overlapping roles

DefenderDefender

Midfielder

Page 17: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Activities -> overlapping roles

Programmer

Business analyst

Tester

ProgrammerBusiness analyst

Tester

Page 18: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Activities -> overlapping roles

Programmer

Business analyst

Tester

ProgrammerBusiness analyst

Tester

specify requirementsspecify requirements

Code acceptance tests

Code acceptance tests

Exploratory test

Exploratory test

Page 19: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Overlapping roles = shared skills

Page 20: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Overlapping roles = shared skills

Page 21: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

One player’s skills and activities

Page 22: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Smells (and remedies)

Page 23: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Smell: Emphasis on titles

Chart showing allowed numbers for football positions

Page 24: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Remedy: Decouple roles from activities

Page 25: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Smell: Heroes and goats

Page 26: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Remedy: Let go of the controls

Page 27: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Smell: Individualization at standups

Page 28: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Remedy: Make decisions together

Page 29: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Smell: People sit in the same places every day (a.k.a. my box, my chair)

Page 30: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Remedy: (really) pair together

Page 31: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Smell: Tools influence your actions (instead of the other way around)

Page 32: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Remedy: Use flexible tools that facilitate whole-team approach

Page 33: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Smell: Odd-man out

Page 34: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Remedy: Power of three

Page 35: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Smell: “Not my job”

Page 36: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Remedy: Make time for and share skills (a.k.a. Have courage -- and humility)

Page 37: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Remedy: (really) co-locate

Page 38: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Smell: Quiet workspace

Page 39: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Remedy: Face-to-face communication

Page 40: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Remedy: As soon as you see a silo, make a card for it

Page 41: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Extra time

Page 42: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

How kanban facilitates whole-team approach

Page 43: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

How kanban facilitates whole-team approach

Page 44: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

How kanban can inhibit whole-team approach

Page 45: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

How whole-team approach reduces some of the 7 wastes

1. Partially Done Work

2. Extra Features

3. Relearning

4. Handoffs

5. Delays

6. Task Switching

7. Defects

Page 46: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Trading your helmet for shinguards

Page 47: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Now: a game of our own!

• Simulates specialization and whole-team approach

• Object: Complete stories using skill cards and build a cohesive “product”

Page 48: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

How you play

• One player pulls one of the four story cards for the team to work on and replenishes the backlog with a card from the story draw pile.

• Decide where in the product board the card will be placed.• Solve the card by playing skill cards, ensuring:

– Each color must match a number on the card (at least one of each skill card is played).

– Each number on the card must be represented.

• If you cannot solve a started card, set it aside and continue.• When you complete a story, place the card into the product

board and draw a skill card of the color you played to replenish your hand.

• Story cards must all face the same way

Page 49: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Scoring

Add points for Subtract points for

Each completed story in your product Each story that is in progress

Each unit in the longest contiguous boundary in your product

Each time you change the position of a story in your product board

Page 50: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Setup

• Divide into teams of 4-6.

• Choose one person to be scorekeeper. If you have five or more people on your team, you can optionally have someone be an observer.

• Each team gets a deck of playing cards and a deck of story cards.

• Draw four story cards and place them face up on the table.

Page 51: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Round 1: Play as specialists

• Each player gets seven cards of one suit

• Players cannot trade or pair to solve stories

• One player decides which story to start on

• First player who works on the card must specify on the product board where it will go

Page 52: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Round 2: Play as a whole team

• Each player gets four cards of one suit• Team may discuss together which card to start on• Team may discuss together where story goes on

product board• Two or more players can combine cards (same or

different suit) whose sum equals one of the numbers on the story card

• When two players work together to solve a card, they each get a bonus skill card (in addition to the one they replenish with) of the suit of their pair’s card

Page 53: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Game retrospective

Page 54: Play soccer, not American football: How to foster a whole ... · UI/UX designer Process facilitator/tracker Technical lead Activity Program Model Test Specify requirements Exploratory

Additional questions and thanks

@mattphilipAsynchrony Solutions, Inc.