The Chinese finger puzzle confounds our instincts. When we try to pull free, our fingers are more trapped. Complex systems have similarly counter-intuitive behaviors. These are inherent in the system structures – causal relationships, feedback loops. Attempts to increase or decrease individual parameters may cause a temporary or local change but cannot alter the overall system behavior.
Example: Software developers are encouraged to work faster to meet a deadline. Late delivery will cost the company money due to lower sales. More code is written but less is tested because there is not enough time. The shipped product has many defects requiring hot-fixes. The later a defect is addressed, the more it costs to fix.
So the result of hurrying to avoid reduced sales results in more costs due rework. Profit is less. There is less time to add more features in the next version.
Reinforcing feedback causes something to grow. Here, credit card balance grows in the absence of any pay-down simply because interest increases. Ask about a counter example that we like better – bank interest compounding.
Balancing feedback helps a system stay near equilibrium. Here a warm person sweats to get evaporative cooling. The goal is a steady body temperature.
The feedback loop is really a “learning” loop.
Delay time of feedback loop impacts ability to stay near target. What if your speedometer lagged by 60 seconds? I know driving in Mumbai it appears it wouldn’t matter, in fact it matters much more given the great variability in the driving patterns that we have observed. Relates to cadence, how often we receive and react to feedback.
Compare to Push Impact on predictability System determines the rate vs. manager/customer determines the rate
There are three basic types of pull system: replenishment pull, sequential pull, and mixed pull system with elements of the previous two combined
In all three cases the important technical elements for systems to succeed are:
1. Flowing product in small batches (approaching one piece or single-piece flow as in batch of one) 2. Pacing the processes to the takt time (to stop overproduction) 3. Signaling replenishment via a signal Kanban 4. Leveling of product mix and quantity over time (in software development this mean mix of product development, code refactoring and fixes to maintain low technical debt) -- http://www.lean.org/Library/BatchProcessesByArtSmalley.pdf
Drum-Buffer-Rope (Goldrat) is one type. http://www.focus5.com/html/drumbufferrope.html
DBR is based on the TOC logistics approach and the TOC five steps of focusing. These are: 1. Identify the System's Constraint(s).2. Decide How to Exploit the System's Constraint(s).3. Subordinate Everything Else to the above Decisions.4. Elevate the System's Constraint(s).5. If, in the Previous Steps, a Constraint Has Been Broken, Go Back to Step One, but Do Not Allow Inertia to Cause a System's Constraint.
and the definitions of DRUM, BUFFER and ROPE are: DRUM - A schedule for the constraint. BUFFER - A protection against Murphy. This is the time provided for parts to reach the protected area. The protected areas are the Drum, the due-dates and the assemblies of constraint parts with non-constraint parts. ROPE - A schedule for releasing raw materials to the floor. The Rope is derived according to the Drum and Buffers; its mission is to ensure the proper subordination of the non-constraints.
What other differences?
Cycle Time is the time between any two points in a work flow. So when we ask what is the Cycle Time customer experiences, then it equals the time from request to the time the request is fulfilled for the customer. i.e Lead time of the system.
Queuing theory: Little's Law tells us that the average number of customers in the store, L, is the effective arrival rate, λ, times the average time that a customer spends in the store, W, or simply: L = λW.
Example: A small Store The long-term average number of customers in a stable system L is equal to the long-term average effective arrival rate, λ, multiplied by the (Palm-)average time a customer spends in the system, W.
ex: Average number of customers in a check out queue = 4, average rate of arrival is 16 per hour then 4=16*W hence W= 4/16 = 0.25 hrs, customers spend 0.25 hours on average checking out. You can use this throughput measure to tune your system to the conditions you desire.
Imagine a small store with a single counter and an area for browsing, where only one person can be at the counter at a time, and no one leaves without buying something. So the system is roughly: Entrance → Browsing → Counter → Exit
This is a stable system, so the rate at which people enter the store is the rate at which they arrive at the store, and the rate at which they exit as well. We call this the arrival rate. By contrast, an arrival rate exceeding an exit rate would represent an unstable system, where the number of waiting customers in the store will gradually increase towards infinity.
Local optimization can sub-optimize the whole. What is being optimized here? What is the consequence to the overall goal of the truck owner?
Dr. Deming had shown that problems in an organization (small or large) are attributed to 94% being system related and only 6% due to workers.
Charles Goodhart: Professor of Economics at LSE, former adviser to Bank of England The law states: Any observed statistical regularity will tend to collapse once pressure is placed upon it for control purposes.
Also related to Campbell’s law - The more an indicator is used as a measure, the more it is apt to distortion and corruption of the process it is intended to monitor
So it is better to identify the target condition under which the process is to operate, in a pattern, required to achieve the desired outcome – i.e. target
Target: Inventory level, Lead time, Cost, Labor cost, Quality level, Output per hour Target condition: Describes how the process should operate in order to achieve the Target – its actionable
Interesting question and resonant for me this week. I attended a Cynefin workshop with Dave Snowdon this week and listened to his keynote at the South African Scrum Gathering. One of his slides in the keynote positioned SAFe at the cusp of Complicated and Simple in the Ordered Domain. In his model, it is a dangerous practice to try to drive Complex problems into the Simple portion of the Ordered domain. Neither Best Practice (Simple) nor Good Practice (Complicated) are viable ways to deal with the Complex problem of scaling Agile in organisations.
Learning loops in the support value stream. Walk through then with some examples.
Systems Concepts for Agile Practitioners
Systems Concepts for
Agile San Diego
Roger Brown, CSC, CST
The significant problems we face
today cannot be solved at the
same level of thinking at which
they were created.
- Albert Einstein
Technological advance and growing
population in a finite space have
increased the complexity of human
Systems are greater than the sum of their parts.
System properties and behaviors emerge from the
combination of its constituent parts
Reductionism is not
sufficient. Our systems
are dynamic and
driven by nonlinear
effects that are not
Helpful Theoretical Models
Queuing Theory – Erlang 1910
Lean Thinking – Deming 1940
System Dynamics – Forrester 1950
Automata Theory – 1940 Ulam and von Neumann
Network Theory - 1970
Complexity Theory - 1970
Learning Organization – 1990 Senge
A model is a simplification of reality
intended to promote understanding.
A system is an entity which maintains its
existence through the mutual interaction of its
- Gene Bellinger
Orderly processes in creating human judgment
and intuition lead people to wrong decisions
when faced with complex and highly interacting
- Jay Forrester
System behaviors come from structures,
not from coefficients
95% of variation in the performance of a system
(organization) is caused by the system itself and
only 5% is caused by the people.
- W. Edwards Demming
Misconception easily turns into common sense.
- Taiichi Ohno
Push & Pull Systems
Push systems overwhelm capacity, creating
turbulence, rework, waste and delay
Pull systems have a steady flow that
Make a plan Have a queue of work and a goal
Track % completion of plan Measure throughput and work done
Buffer plan for contingencies Small, frequent tasks to manage
Plan decides what to do next People decide what to do next
Long feedback delay Continuous short feedback loops
Demand exceeds capacity Demand limited to capacity
Fixed scope and time Fixed WIP
Forecast based on estimates Forecast based on data
Cycle Time = Number of Items in Process/System Capacity
A focus on one property can have unintended
impact on the system as a whole
The moment a measure
becomes a target,
it ceases to be useful as
Click pictures to view examples.
• Many different
• Can take it apart
and reassemble it.
• If one part fails, it
• Many similar parts acting
independently within social rules.
• Aggregate behavior cannot be
predicted from individual part
• Still “works” if a part is removed.
Working as a
Organizations where people continually expand
their capacity to create the results they truly
desire, where new and expansive patterns of
thinking are nurtured, where collective
aspiration is set free and where people are
continually learning how to learn together.
- Peter Senge The Fifth Discipline, 1990
Urgent Not Urgent
• Deadline Driven
• Kaizen Events
• Relationship Building
• True Recreation
• Some phone calls
• Some email
• Someone else’s
• Busy work
• Time wasters
• “Escape” activities
When do we get time to improve?
If we don’t spend any time
sharpening the saw, we will
have to work harder and
harder to get the same
- Steven Covey, The 7 Habits of
Highly Effective People, 2004
By intentionally creating
downtime, or ‘slack’,
management will find a
much-needed opportunity to
build a ‘capacity to change’
into an otherwise strained
enterprise that will help
companies respond more
successfully to constantly
- Tom DeMarco, Slack, 2002
Single Loop: tweak the parameters
Double Loop: experiment with the process
Triple Loop: learn how to learn
Communities of Practice
Brown Bag Seminars
Team Learning Tools
• Thinking in Systems : A Primer – Meadows
• The Fifth Discipline and its Fieldbook – Senge
• Business Dynamics - Sterman
• The Principles of Product Development Flow: Reinertsen
• The Systems Bible – Gall
• 10 Steps to a Learning Organization – Kline and Saunders
• Learning in Action – Garvin
• Systems Thinking Playbook – Sweeny and Meadows
- www.beyondconnectingthedots.com/ - Bellinger
- www.cognitive-edge.com – Snowden
• Agile Coach
• Scrum Alliance
• M.S. System Dynamics, Dartmouth College 1977