Systems Thinking, Episode #2: Complex Adaptive Systems
picture by Cabrera
In my previous 2 episodes of this series on Systems Thinking, I elaborated on what Systems Thinking is and on the Wicked Problems Systems Thinking is trying to solve. In this episode, I want to explore Complex Adaptive Systems (CAS).
In Systems Thinking, we observe different types of systems. There are static systems like cars and complex systems like people for instance. Opposed to static systems, complex systems behave differently under different stimuli. A car’s emergent behaviour (transportation) is predictable. If we drive our car faster, we will be transported faster (limited to the system boundaries of the car itself). Humans are complex adaptive systems, which means that applying the same stimuli on the system will yield different emergent behaviour. If we greet a colleague every morning with a happy “good morning!”, the same person might respond differently, depending on her mood, how busy she is, or merely the anticipation of the same stimulus.
Complex Adaptive Systems
We use the term “Complex Adaptive Systems” (CAS) for complex systems. Note that Wicked Problems are Complex Adaptive Systems too: they behave differently when repeating the same stimulus.
Some examples of CAS in the context of Scrum are the Scrum team, the team members, scaling Scrum, zombie Scrum, the IT department, management, customers, markets, etc.
A Complex Adaptive System is made up of:
Agents: These are autonomous actors (ideas, people, and things. In fact, systems) that operate at the basis of the system.
- Simple rules: Autonomous agents follow simple rules based on what’s happening locally around them. Simplicity underlies complexity.
- Collective dynamics: A culmination of the actions of the individual agents. There is no central leadership.
- Complex emergent properties: Intelligence, self-organization, robustness, resiliency, and adaptive behavior.
Picture by Cabrera
Agents are at the basis of a CAS
At the basis of any emergent behaviour of a CAS, each agent follows a simple set of rules. To perform the wave in a stadium, every person gets up, raises arms in the air and sits down again. The agents act locally: everybody focuses on his neighbour. When we focus on the whole stadium, we see the wave.
Consider all employees thinking like this: “I will stay in this company as long as I get my yearly raise, there is not too much conflict and I don’t have to step out of my comfort zone”. Compare it to another company where the employees say: “I work here because I am the best and that is what I expect from my teammates too. I will challenge the status quo constantly because I want to grow.” The emergent behaviour of these companies as a whole will be very different.
picture by Econ
There is a set of simple rules executed by all or most of the agents of the system. This set of simple rules creates emergent behaviour. Causing a sustainable change in a CAS is most effective at the level of the simple rules the agents act upon. Influencing the system at the level of the collective dynamics or emergent behaviour is not effective because the dynamics are too complex.
Scrum is a CAS
Simple rules and agents lead to collective dynamics and emergent behaviour. In a single team Scrum implementation, agents are the Scrum team members following a set of simple rules (the Scrum guide), generating collective dynamics (Scrum practices like using a Scrum board, having the Scrum events,…) that leads to complex emergent properties like self-organization and problem-solving.
Looking at Scrum from the CAS perspective made me truly understand why
“Scrum is simple to understand but difficult to master” (sg).
Understanding that Scrum is a CAS helps me to stop fast thinking and move to slow thinking to better understand the counter-intuitive actions that are required to fix Scrum problems sustainably. As a Scrum Master in my servant-leader role, I am in the perfect space to trigger systemic changes because I master the simple rules of the system (the Scrum guide) and work at the agent level (team members) of the Complex Adaptive System (Scrum).
Understanding the system dynamics is never easy. The system usually behaves differently than expected. Maybe you recognize some of these dynamics:
- Increasing the pressure on the team to attain a certain Sprint velocity leads to complexity inflation of story-points (pokering 5 points complexity for what used to be 3 points).
- To increase speed, management adds more Scrum teams. However, the lead time (time from idea to delivering working software) increases.
- The team cuts corners to deliver faster under management pressure. To cope with an increasing amount of bugs the Scrum Team proposes to switch to Kanban.
- The number of items in the sprint is lowered to an insane minimum. The team morale goes up.
When we understand that Scrum is a CAS, then scaled Scrum is a CAS too. Scaling is a larger system that encapsulates local operating Scrum Teams. The problems that need to be fixed to adopt scaling are very context sensitive, there is no one size fits all: Systems Thinkers understand it is impossible to prescribe a scaling approach as a set of best practices that will work anywhere. On the other hand, Systems Thinking provides the insight that if we succeed to identify the agents and their simple rules, we will be able to find a successful scaled Scrum implementation.
No central leadership
Picture by Gorge Dickson on bonusly
There is no central leadership in a CAS. Although there is central management in companies, research shows (Hackman in his book: “Leading Teams” and among many others this article) that the effect of leaders on the performance of organizations is limited. Culture follows structure and leaders define structure, however, the impact of decisions taken by leadership is weakened by the powerful system dynamics.
Great leaders understand that their organization is a CAS. They know that when they try to steer the system on its emergent behaviour, the effects of the steering is unpredictable. Strange? Not really. Consider a flock of birds. When you influence the flock by frightening the birds, they will change direction, but the emergent behaviour to fly as a group will not change. If leaders want to change the behaviour of their organizations, they need to find the simple basic rules the agents follow and influence the rules at the agent level. Implementing value-driven metrics is a good example of effective leadership decision taken at the autonomous agent level.
Leaders apply a change to a CAS because they want to fix a problem. In other words, the goal of their intervention is to change the behaviour of the CAS. I observe many times how people apply the same fix to solve a reoccurring problem. At one of my customers, I observed a junior Scrum Master for some time. I noticed that whenever there was a problem with a team, he responded by explaining Scrum and started drawing posters. After some time, the team concluded that “Scrum was not working” and wanted to abandon Scrum: The repeated “fix” resulted in an undesired side effect.
At another customer, it was common management practice to swap around Scrum Team members to solve team (performance) problems. People knew that if the manager invited you “to have a coffee”, this probably meant you were either fired or moved to another team. The result was a low degree of team gel, a high degree of distrust and a company that had problems retaining its employees. Although managers had the illusion of fixing team problems, they were creating a much bigger one at the company level.
This is a common pattern of a CAS: After applying a fix, the problem disappears but pops up again later. The longer-term effects that are also triggered by the intervention are not perceived to be related. These effects are mostly unexpected and undesired. When an intervention is not applied at the system level (we changed simple rules inside a part of a system and not at the systemic level), the system changes only temporary. In fact, we delay the point (aka the set-point) where the system tips from one type of behaviour into another. The long term behaviour of the system remains unchanged. Focusing on the short term system response creates a fake sense of control.
Systems Thinking tells us to look at the system as a whole, and not to analyze its parts. If we improve its parts, it is unlikely the performance of the whole system will improve. However, if we understand what are the relevant parts and how they interact in the system, we can change the simple rules of interaction underpinning the complex behaviour and the emergent behaviour of the whole system will change permanently.
In the upcoming Systems Thinking episode I will talk about human learning capabilities.
(Special thanks to Marty de Jonge for his valuable remarks).