You are on page 1of 31

Which Agile?

istanbulcoders.org
13 August 2015

Abdulkadir Yaman
@ThoughtWorks
Systems Thinker
Gopher
abdulkadiryaman@gmail.com
@abdulkadiryaman
github.com/yaman

Agile in the wild

daily standup
2-4 weeks iteration
prioritization
retrospectives
futurespectives
collecting feedback
measuring
progress
...

Systems 101

What is a system?
A system is a set of interacting or
interdependent components forming an
integrated whole.
-

wikipedia

A system is more than the sum of its parts.


-

Donella H. Meadows

System Elements - 1
(Stocks, flows - Structural)

Agile Equivalent - 1
Stocks
Inflow

----->
----->

Outflow

----->

Backlog ?
Business
requirements ?
Iterations ?

System Elements - 2
(Feedback Loops - Behavioral)

Stabilizing loops - Balancing Feedback

Runaway loops - Reinforcing Feedback


-

Profits fell because investment fell, and


investment fell because profits fell (Jan
Timbergen - Economist)

System Elements - 2
(Feedback Loops - Behavioral)

Population increases by time if:


Fertility Ratio > Mortality Ratio

Population decreases by time if:


Mortality Ratio > Fertility Ratio

Agile Equivalent - 2
Developer
Create bugs

Iteration
Done

Backlog

B
Burn stories

Codebase

R
increasing
complexity

Agile Equivalent - 3
increasing
complexity
R
Retrospective

Solve Problems
Quality

B
Identify
Problems

Goal

Agile Equivalent - 4
decreasing
complexity

sh
cy ort
cle er
te

st

R
TDD
Codebase

Goal

R
increasing
quality

So why do we fail to transform?

Leverage Points - Places to


intervene in a System

12 - Numbers
11 - Buffers
10 - Stock and Flow Structures
09 - Delays
08 - Balancing Feedback Loops
07 - Reinforcing Feedback Loops
06 - Information Flows
05 - Rules, Incentives, Punishments,
Constraints
04 - Self-Organization
03 - Goals
02 - Paradigms
01 - Transcending Paradigms

Lets reverse the process

The Goal

Prioritize

Constraints?

Theory of constraints
identifying the most important limiting factor (i.e.
constraint) that stands in the way of achieving a goal
and then systematically improving that constraint until it
is no longer the limiting factor
In manufacturing, the constraint is often referred to as a
bottleneck.

Next - Continuous Improvement

Continuous Improvement
(Shifting Paradigms)
Reminds me something familiar;

Stock
Flows
Feedback Loops
Delays
Buffers
Goals

hmmm, systems thinking?

Last - Learning Organizations


(Transcending Paradigms)

A learning organization is the


term given to a company that
facilitates the learning of its
members and continuously
transforms itself.

References
Thinking in Systems: A primer by Donella H.
Meadows
The Goal by Jeff Cox and Eliyahu M.
Goldratt
The Phoenix Project by Kevin Behr, George
Spafford, Gene Kim

Thank You for listening!

You might also like