adapting to agile development

61
© 2009 Mountain Goat Software © Copyright Mountain Goat Software ® ADAPTing to Agile Mike Cohn [email protected] June 7, 2010 1

Post on 18-Oct-2014

544 views

Category:

Business


1 download

DESCRIPTION

Certified Scrum trainer and author Mike Cohn shows how to succeed with agile through the ADAPT process: Awareness, Desire, Ability, Promotion and Transfer.

TRANSCRIPT

Page 1: ADAPTing to Agile Development

© 2009 Mountain Goat Software© Copyright Mountain Goat Software®

ADAPTingto Agile

Mike Cohn

[email protected]

June 7, 2010

1

Page 2: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Mike CohnFounding member and director of Agile Alliance and Scrum Alliance

Founder of Mountain Goat Software

Doing Scrum since 1995

Started my career as a programmer

2

Page 3: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

AgendaWhy transitioning to agile is hardADAPTing to agile developmentIterating toward agilityThe role of leadershipOvercoming resistance

3

Page 4: ADAPTing to Agile Development

© 2009 Mountain Goat Software© Copyright Mountain Goat Software®

®

Two simplistic views of change:Top down: Powerful leader shares a vision

Bottom-up: A team starts and everyone else sees the

But, transitioning to agile is neither top-down nor bottom-up

It’s both at the same time

Change is not top-down or bottom-up;it’s both

1

4

Page 5: ADAPTing to Agile Development

© 2009 Mountain Goat Software© Copyright Mountain Goat Software®

®

It is tempting to codify things that work in a given context into best practices

Once we know what’s “best” we stop adaptingOr even thinking about what we’re doing

Once we’ve stopped inspecting and adapting we’re not agile, or won’t be for long

Best practices are tempting

2

†Anderson, P. “Seven Layers for Guiding the Evolving Enterprise”in The Biology of Business.

5

Page 6: ADAPTing to Agile Development

© 2009 Mountain Goat Software© Copyright Mountain Goat Software®

®

The transition process must be congruent with the development process

3

Self-organize

Write feature 1

Write feature 2

Part of the move to agile is a move to self-organizing teams

Moving to self-organization requires self-organization!

6

Page 7: ADAPTing to Agile Development

© 2009 Mountain Goat Software© Copyright Mountain Goat Software®

®

Traditional view of the organization is as a machine

together

Organizations are unpredictable, living systems

4

7

Page 8: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Assessment Gap Analysis Plan

CurrentState

DesiredState

Vision

8

Page 9: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

We need a different mental model

The organization as a Complex Adaptive System (CAS)

John Holland in Complexity: The Emerging Science at the Edge of Order and Chaos

Overall system behavior is the result of a huge

agents

9

Page 10: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Local agents (individuals, project teams, discipline coworkers) identify local gaps based on their goals

Vision

Current State

Desired State

Current State

Desired State

Current State

Desired State

10

Page 11: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Closing the gap with the desired state

Newtonian View of Success

Achieving a good fit with the environment

CAS Viewof Success

11

Page 12: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Traditional view

CAS view

12

Page 13: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Traditional view

CAS view

Relationships are empowering

Responsiveness to the environment is the measure of value

value

tensions

13

Page 14: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

AgendaWhy transitioning to agile is hardADAPTing to agile developmentIterating toward agilityThe role of leadershipOvercoming resistance

14

Page 15: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Awareness that there is room for improvement

A

DesireD

Ability to work in an agile mannerA

Promotemomentum and get others to follow

P

TransferT

15

Page 16: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

We also have the issue with at least one other developer as well.”

1. Is this a problem of Awareness, Desire or Ability?Why?

2. Thinking about ADAPT, what might you try?

?

16

Page 17: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

All individuals will need to move through the Awareness, Desire, and Ability stage

But will do so at different rates

Early adapters and leaders:Use the Promote stage to build Awareness and Desire in later adopters

fail

17

Page 18: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Tools for building...

Awareness

Communicate that there’s a problemUse metricsProvide exposure to new people and experiencesFocus attention on the most important reason or two for changing

18

Page 19: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

On the following slides, identify

create ability, promote the transition, and transfer its

implications.

19

Page 20: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Desire Ability

20

Page 21: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

TransferPromote

21

Page 22: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Stop! My thoughts on desire,

ability, transfer and promote are on the following pages.You don’t want to see them before you think about your

own.

22

Page 23: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Tools for building...

Desire

Communicate that there’s a better wayCreate a sense of urgencyBuild momentumGet the team to take agile for a test driveAlign incentives (or, at least, remove disincentives)Focus on addressing any fearsHelp people let goDon’t discredit the pastEngage everyone in the transition

23

Page 24: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Ability

Provide coaching and trainingHold individuals accountableShare informationSet reasonable targetsJust do it

Promote

Publicize success storiesHost an agile safariAttract attention

24

Page 25: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

TransferTransfer the effects of agile beyond the current group

A team transfers to its departmentA department transfers to its division

If you don’t transfer, the transition will eventually and inevitably fail

organizational gravitystatus quo

Example:If you don’t align promotions, raises, annual reviews, those will work against you

25

Page 26: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

AgendaWhy transitioning to agile is hardADAPTing to agile developmentIterating toward agilityThe role of leadershipOvercoming resistance

26

Page 27: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Enterprise Transition Community(ETC)

Improvementbacklog

Improvement Communities

Improvementbacklog

Improvementbacklog

Improvementbacklog

Impediments

Energy, suppport, resources,guidance, & direction (occasionally)

Iterating toward agility

27

Page 28: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Enterprise Transition Community (ETC)

Creates a culture in which passion and desire to improve thrive

Does not direct the transition effort

Removes organizational impediments to agility

Encourages Improvement Communities to form

28

Page 29: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

ETC members

Sponsor

supported

OthersFrom any level but driven by desire to improve

Disbands when the “transition” part of adopting agile is over

29

Page 30: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

ETC responsibilities

Engage everyoneSet appropriate aspirations

impediments

30

Page 31: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Item Who NoteJim (CTO) to talk this up at monthly development meeting. Let’s see if there’s any interest.

Establish an internal program How do we identify good

develop them?

SC in this.

JS

Get more teams to do AR

31

Page 32: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Form around the passion of a small number of people

Expand from there

Do the real work of improving how the organization implements agileFocus on goals with practical relevanceExamples:

ScrumMaster, Testing, Product Owner, Continuous Integration

32

Page 33: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Working with an IC

An IC works with a project team

Work is not done in an ivory tower

Most ICs work in 2–4-week iterations

Disband or refocus when goal has been achieved

33

Page 34: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

ETC Improvement Backlog

…Establish an internal program for developing

Not everything on an IC’s improvement backlog needs to tie back to the ETC’s backlog

An IC Improvement BacklogFigure out how to identify good

in this program).Establish an internal mentoring program.

34

Page 35: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Improvement backlogs1.Write some items that you would like an on

your organization’s initial improvement backlogs.2.What improvement communities would you like

to see form that could help with some of these improvements?

3.What obstacles are in the way of making these improvements?

4.What obstacles are in the way of forming an ETC or improvement community to get started?

35

Page 36: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

AgendaWhy transitioning to agile is hardADAPTing to agile developmentIterating toward agilityThe role of leadershipOvercoming resistance

36

Page 37: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Transition team and other formal leaders must lead the transition

but cannot do so in the usual ways

Self-organizing groups still require leadership

Lead through example, questions, and focus“Nudge” the organization; Poke and prod;

See how the organization responds

Leading an agile transition

37

Page 38: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Container

Glenda Eoyang: Conditions for Self-Organizing in Human Systems

Differences

system

Transforming Exchanges

Information, money, energy (vision)

38

Page 39: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Using the CDE model

by altering the:Containers

D

E

tools

39

Page 40: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Containers

Enlarge or shrink teams

Enlarge or shrink the responsibility boundary of teams

Change team membership

Create new teams or groups

40

Page 41: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Don’t require consensus

Ask hard questions

41

Page 42: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Encourage communication between teams and groups

Who isn’t talking who should?

Add or remove people from exchangesChange reporting relationships

Encourage learning

42

Page 43: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

trouble spots. Think about how you might help them by Cotrainers, amplifying or dampening

.

Note whether you are tweaking their Container,

than one.)

43

Page 44: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

database engineer and you. The developers and testers are not working well together. Developers work in isolation until two days are left in the

the testers.

1

2The team is failing to deliver potentially shippable

44

Page 45: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

will soon.

3

4

team has its own testers who are starting to go in

45

Page 46: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Jeff, a senior developer, is very domineering. During iteration planning the team defers to him on every

when he suggest very low estimates on some tasks.

5

6You are responsible for two teams. Team members on

46

Page 47: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

The self-organizing path

Self-organization is not something that happens one time

A team is never done doing it

and-respond manner to its environment

As you see the team self-organize you can

We can view this as the evolution of a team

47

Page 48: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

~Philip Anderson

divisions of labor and routines not only emerge but also self-adjust in response to environmental

mastered the art of planning and monitoring

†Anderson, P. “Seven Layers for Guiding the Evolving Enterprise” in The Biology of Business.

48

Page 49: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Evolution is the result of three elements:

Variation, selection and retention

Consider a giraffe:

Variation: A random mutation that leads to a longer neck

Selection: The long neck helps it reach food others can’t; so it it more likely to survive and breed

Retention: The mutation is passed to its descendants

49

Page 50: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

1.

2. Manage meaning

3. Evolve vicarious selection systems

50

Page 51: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

help us survive will be the ones retained

should survive

What message is your organization sending about the

What messages are sent if the organization:

Provides training

51

Page 52: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Manage meaning

bees responding to a “danger” message

ants responding to a “food found over here” message

e.g., putting the the team in touch with customers

Or keep messages out

are repeated

“Our GM counts the cars in the lot every day at 5 PM”

52

Page 53: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Can take a long time

rather than eating it

takes too long

53

Page 54: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

AgendaWhy transitioning to agile is hardADAPTing to agile developmentIterating toward agilityThe role of leadershipOvercoming resistance

54

Page 55: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Why They ResistLike status quo Dislike agile

Passi

veAc

tive

How T

hey

Resis

tDiehards

Skeptics

Saboteurs

Followers

55

Page 56: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Pick one type of resistor. (Or two if you have time.) Identify some underlying reasons for the behavior and some things you could try to overcome it.

Why They Resist

Like status quo Dislike agile

Passi

veAc

tive

How T

hey

Resis

t Diehard

Skeptic

Saboteur

Follower

56

Page 57: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Why They Resist

Like status quo Dislike agile

Passive

Activ

eHo

w T

hey

Resis

t Diehard

Skeptic

Saboteur

Follower

SkepticsLet time run its courseProvide trainingSolicit peer anecdotesAppoint a champion skepticPush the issueBuild awareness

57

Page 58: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Why They Resist

Like status quo Dislike agile

Passive

Activ

eHo

w T

hey

Resis

t Diehard

Skeptic

Saboteur

Follower

SaboteursSuccessReiterate and reinforce the commitmentMove themFire themEncourage a thriving set of communities

58

Page 59: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Why They Resist

Like status quo Dislike agile

Passive

Activ

eHo

w T

hey

Resis

t Diehard

Skeptic

Saboteur

Follower

Diehards

Align incentivesCreate dissatisfaction with the status quoAcknowledge and confront fear

59

Page 60: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Why They Resist

Like status quo Dislike agile

Passive

Activ

eHo

w T

hey

Resis

t Diehard

Skeptic

Saboteur

Follower

FollowersChange team compositionPraise the right behaviorModel the right behavior Involve themIdentify the true barrier (awareness, desire, ability)

60

Page 61: ADAPTing to Agile Development

© Copyright Mountain Goat Software®

®

Mike Cohn

(720) 890−6110

61