So, Now You're An Agilist, What's Next?

86
an Agilist... So, Now You’re an Agilist... What’s Next? Jurgen Appelo [email protected] version 3
  • date post

    18-Oct-2014
  • Category

    Business

  • view

    17.028
  • download

    0

description

Doing projects better doesn't stop at agile. In this presentation I attempt to distill new advances in software development from the field of complexity science. Complexity science is the study of complex systems, like ecosystems, biological systems, economic systems, etc. "Complexity science" is the scientific approach to "systems thinking". It can be used to understand and explain why complex systems behave the way they do. Ken Schwaber, Jim Highsmith and other experts have explained in their books that a lot of agile concepts have been copied from the study of complex systems. However, agile software development has not covered all there is to learn. I will show why practices must be agile (self-organized) *and* formal (controlled), why any software development method is doomed to fail, why managing scope is a too simplistic interpretation of the principle of “embracing change”, why most process improvement initiatives are linear and wrong, and why some sets of practices will be show chaotic behavior when combined.

Transcript of So, Now You're An Agilist, What's Next?

Page 1: So, Now You're An Agilist, What's Next?

So, Now You’re an Agilist...

So, Now You’re an Agilist...

What’s Next?

Jurgen Appelo

[email protected]

version 3

Page 2: So, Now You're An Agilist, What's Next?

Jurgen Appelo writer, speaker,

entrepreneur...

www.jurgenappelo.com

Page 3: So, Now You're An Agilist, What's Next?

Get my new book for FREE! m30.me/ss

Page 4: So, Now You're An Agilist, What's Next?

A. psychological profiles B. leaders vs. rulers C. organization types D. organizational structures E. risk management F. organizational optimization G. adaptive methods H. non-linear improvement J. tuning process dependencies K. classification of methods

Agile... what’s next?

My ideas, taken from complexity science

Page 5: So, Now You're An Agilist, What's Next?

photo by blumpy

disclaimer: this is a...

(I sometimes change my opinion)

Page 6: So, Now You're An Agilist, What's Next?

photo by Randy Son of Robert

complexity what is it?

Page 7: So, Now You're An Agilist, What's Next?

complex systems are

self-organized

photo by judepics

Page 8: So, Now You're An Agilist, What's Next?

photo by ClintJCL

complex systems show

emergent behavior

Page 9: So, Now You're An Agilist, What's Next?

photo by DavidHR

complex systems behave

in a non-linear way

Page 10: So, Now You're An Agilist, What's Next?

photo by Noël Zia Lee

(many) complex systems are

adaptive

Page 11: So, Now You're An Agilist, What's Next?

“For example, an ant colony, the brain, the immune system, a Scrum team, and New York City, are self-organizing systems.”

- Ken Schwaber

Agile Software Development with Scrum

“At the heart of complex adaptive systems theory’s relevance to software development

is the concept of emergence, and the factors leading to emergent results.”

- Jim Highsmith

Adaptive Software Development

Page 12: So, Now You're An Agilist, What's Next?

some books I read…

Page 13: So, Now You're An Agilist, What's Next?

The 12 Laws of Software Development

Reduce Risk Measure Performance Evaluate Feedback Acquire Knowledge Manage Uncertainty Evolve Practices

Motivate People Empower Teams Align Results Optimize Communication Enforce Discipline Restrain Growth

which led me to “discover”…

Page 14: So, Now You're An Agilist, What's Next?

? :

? : ? :

? :

? :

? :

? :

? :

? :

? :

a complex system

? :

Agents Connections Rules

Page 15: So, Now You're An Agilist, What's Next?

? :

? : ? :

? :

? :

? :

? :

? :

? :

? :

#1: the agents must be active

Page 17: So, Now You're An Agilist, What's Next?

The 1st Law of Software Development

Motivate People

Page 18: So, Now You're An Agilist, What's Next?

diversity

brings robustness and flexibility photo by woodleywonderworks

Page 19: So, Now You're An Agilist, What's Next?

what motivates one demotivates another

Page 20: So, Now You're An Agilist, What's Next?
Page 21: So, Now You're An Agilist, What's Next?

Don’t agree?

There exists a selection of practices for which the sum of people’s motivational balances is optimal. therefore... “In a software project the optimal method is a function of the psychological profiles of its team members.”

Agreed?

A

Page 22: So, Now You're An Agilist, What's Next?

? :

? : ? :

? :

? :

? :

? :

? :

? :

? :

#2: the system controls itself

Page 24: So, Now You're An Agilist, What's Next?

The 2nd Law of Software Development

Empower Teams photo by Elvire.R.

Page 25: So, Now You're An Agilist, What's Next?

? :

? : ? :

? :

? :

? :

? :

? :

? :

? :

#3: the system is unaligned

?

? ?

?

Page 26: So, Now You're An Agilist, What's Next?

unaligned self-organization photo by aviplot

Page 27: So, Now You're An Agilist, What's Next?

aligned self-organization photo by john w

Page 28: So, Now You're An Agilist, What's Next?

The 3rd Law of Software Development

Align Results photo by The Wandering Angel

Page 29: So, Now You're An Agilist, What's Next?

self-organization

this was the result of…

photo by hive

Page 30: So, Now You're An Agilist, What's Next?

photo by Mike Licht

and this too…

Page 31: So, Now You're An Agilist, What's Next?

ordered complex chaotic

empowerment alignment

ordered organizations need empowerment chaotic organizations need alignment

The Edge of Chaos

Page 32: So, Now You're An Agilist, What's Next?

Don’t agree? Agreed?

“How to implement agile depends on whether you come from an ordered or a chaotic situation.”

C

Page 33: So, Now You're An Agilist, What's Next?

? :

? : ? :

? :

? :

? :

? :

? :

? :

? :

#4: the agents communicate

Page 34: So, Now You're An Agilist, What's Next?

photo by woodleywonderworks

Page 35: So, Now You're An Agilist, What's Next?

Optimize Communication

The 4th Law of Software Development

photo by foxypar4

Page 36: So, Now You're An Agilist, What's Next?

? :

? : ? :

? :

? :

? :

? :

? :

? :

? :

#5: the agents stick to rules

1. -----

2. ---

3. -----

1. -----

2. ---

3. -----

1. -----

2. ---

3. -----

1. -----

2. ---

3. ----- 1. -----

2. ---

3. -----

1. -----

2. ---

3. -----

1. -----

2. ---

3. -----

1. -----

2. ---

3. -----

1. -----

2. ---

3. -----

1. -----

2. ---

3. -----

Page 38: So, Now You're An Agilist, What's Next?

The 5th Law of Software Development

Enforce Discipline photo by kaibara87

Page 39: So, Now You're An Agilist, What's Next?

? :

? : ? :

? :

? :

? :

? :

? :

? :

? :

#6: the system tends to grow

? :

? :

? :

? :

? :

? :

? :

? :

? :

Page 41: So, Now You're An Agilist, What's Next?

The 6th Law of Software Development

Restrain Growth photo by mountainamoeba

Page 42: So, Now You're An Agilist, What's Next?

photo by daisybush

Parkinson’s Law

organizations tend to get bigger

Page 43: So, Now You're An Agilist, What's Next?

Cope’s Rule

species tend to get bigger image by Bogdanov

Page 44: So, Now You're An Agilist, What's Next?

Prevent systems from growing... 1. Limit input and output (keep it simple) 2. Make resources scarce (small budgets) 3. Reduce complexity (remove waste) 4. Clean up regularly (refactoring)

Page 45: So, Now You're An Agilist, What's Next?

? :

? : ? :

? :

? :

? :

? :

? :

? :

? :

#7: the system is exposed to risk

Page 47: So, Now You're An Agilist, What's Next?

The 7th Law of Software Development

Reduce Risk photo by rednuht

Page 48: So, Now You're An Agilist, What's Next?

Self-Organized Criticality

a critical state of high risk photo by lrargerich

Page 49: So, Now You're An Agilist, What's Next?

Don’t agree? Agreed?

Someone needs to try and reduce the system’s exposure to risk... “Risk management (mitigating potential impediments) can best be done by stepping outside the system.”

E

Page 50: So, Now You're An Agilist, What's Next?

? :

? : ? :

? :

? :

? :

? :

? :

? :

? :

#8: the system must know how it’s doing

+/+

-/-

Page 51: So, Now You're An Agilist, What's Next?

The 8th Law of Software Development

Measure Performance photo by xmatt

Page 52: So, Now You're An Agilist, What's Next?

The Tragedy of the Commons:

using shared resources

photo by ojbyrne

Page 53: So, Now You're An Agilist, What's Next?

optimize the whole

Page 54: So, Now You're An Agilist, What's Next?

optimize the whole

= manage shared resources

Page 55: So, Now You're An Agilist, What's Next?

Don’t agree? Agreed?

“Optimize the whole means to optimize to the largest possible span of control, which can mean: don’t optimize the individual software projects.”

F

Page 56: So, Now You're An Agilist, What's Next?

? :

? : ? :

? :

? :

? :

? :

? :

? :

? :

#9: the system responds to the input

+/-

-/+

Page 57: So, Now You're An Agilist, What's Next?

The 9th Law of Software Development

Evaluate Feedback photo by JasonRogers

Page 58: So, Now You're An Agilist, What's Next?

? :

? : ? :

? :

? :

? :

? :

? :

? :

? :

#10: the system needs ways to learn

!

Page 59: So, Now You're An Agilist, What's Next?
Page 60: So, Now You're An Agilist, What's Next?

The 10th Law of Software Development

Aquire Knowledge photo by procsilas

Page 61: So, Now You're An Agilist, What's Next?

? :

? : ? :

? :

? :

? :

? :

? :

? :

? :

#11: the system must cope with uncertainty

Page 62: So, Now You're An Agilist, What's Next?

Adaptation to change…

Page 63: So, Now You're An Agilist, What's Next?

The 11th Law of Software Development

Manage Uncertainty photo by rednuht

Page 64: So, Now You're An Agilist, What's Next?

The Butterfly Effect

small variations, big impact photo by Hamed Saber

Page 65: So, Now You're An Agilist, What's Next?

? :

? : ? :

? :

? :

? :

? :

? :

? :

? :

#12: the system figures out how to change

1. -----

2. ---

3. -----

1. -----

3. ---

4. -----

1. -----

2. ---

3. -----

1. -----

2. ---

3. ----- 1. -----

4. ---

5. -----

1. -----

2. ---

3. -----

1. -----

2. ---

3. -----

4. -----

5. ---

6. -----

2. -----

3. ---

5. -----

1. -----

2. ---

3. -----

Page 66: So, Now You're An Agilist, What's Next?

photo by Sukanto Debnath

genotype (genes)

phenotype (body)

Page 67: So, Now You're An Agilist, What's Next?

The 12th Law of Software Development

Evolve Practices photo by Hulagway

Page 68: So, Now You're An Agilist, What's Next?

fixed practices = not complex at all

Page 69: So, Now You're An Agilist, What's Next?

Don’t agree? Agreed?

Adaptive phenotype... changing requirements Adaptive genotype... changing environment “Not just the project, but the method itself must be adaptable too.”

G

Page 70: So, Now You're An Agilist, What's Next?

Fitness Landscapes

evaluating performance photo by Hulagway

Page 71: So, Now You're An Agilist, What's Next?

“It takes all the

running you can do,

to keep in the

same place.”

- Louis Carroll Through the Looking Glass

The Red Queen Effect

Page 72: So, Now You're An Agilist, What's Next?

PDCA QIP AIM Pr2imer CPI-7

1. Determine Problems Plan Understand Assess Analysis Managing

2. Set Goals Set Goals Analyze Target Targets

3. Define Metrics Plan

4. Identify Improvements

Act Choose Improve Analyzing

5. Implement Improvements

Pilot Improving

6. Execute Processes (implicit)

Do Execute -- -- --

7. Check Measurements

Check Analyze Metricate -- Managing

process improvement

Page 73: So, Now You're An Agilist, What's Next?

?

linear improvement

stuck on local optimum or walk through the valley

(things get worse before they get better)

Page 74: So, Now You're An Agilist, What's Next?

Crossover

photo by Kevin N. Murphy

mixing practices from two sources

Page 75: So, Now You're An Agilist, What's Next?

non-linear improvement

find higher peaks by averaging prior high performers

Page 76: So, Now You're An Agilist, What's Next?

Don’t agree? Agreed?

“Linear improvement works up to a point, but to find the optimal development process you need a non-linear approach.”

H

Page 77: So, Now You're An Agilist, What's Next?

moderately connected system

(several optimums)

sparsely connected system

(one optimum)

intensively connected system

(no real optimum)

Page 78: So, Now You're An Agilist, What's Next?

Don’t agree? Agreed?

“Methods are strong when it’s easy to replace individual practices.”

J

Page 79: So, Now You're An Agilist, What's Next?

sudden burst of solutions image by Karl J. Niklas

Punctuated Equilibrium

Page 80: So, Now You're An Agilist, What's Next?

Attractors

convergence of forms photo by Okko Pyykkö

Page 81: So, Now You're An Agilist, What's Next?

Don’t agree? Agreed?

“We now experience a burst of methods and tools, due to environmental change. This could converge into a few main forms with many small variations.”

K

Page 82: So, Now You're An Agilist, What's Next?

The 12 Laws of Software Development

Reduce Risk Measure Performance Evaluate Feedback Acquire Knowledge Manage Uncertainty Evolve Practices

Motivate People Empower Teams Align Results Optimize Communication Enforce Discipline Restrain Growth

ANY creative team project

Page 83: So, Now You're An Agilist, What's Next?

A. psychological profiles B. leaders vs. rulers C. organization types D. organizational structures E. risk management F. organizational optimization G. adaptive methods H. non-linear improvement J. tuning process dependencies K. classification of methods

Agile... what’s next?

Don’t agree? Agreed?

Page 85: So, Now You're An Agilist, What's Next?

www.management30.com

Page 86: So, Now You're An Agilist, What's Next?

http://creativecommons.org/licenses/by-nd/3.0/

This presentation was inspired by the works of many people, and I cannot possibly list them all. Though I did my very best to attribute all authors of texts and images, and to recognize any copyrights, if you think that anything in this presentation should be changed, added or removed, please contact me at [email protected].