Reading a story across multiple causal links without losing your mind

| 2 min read

I often find it difficult to read multiple causal links in a row in causal loop diagrams, a tool used in System Thinking to describe the relation between elements (or stocks).

Unfortunately for me, best stories often include more than one causal link between two stocks, or we wouldn’t need a tool like causal loop diagrams to understand systems. I want to share the trick I use to tell stories that make sense, involving multiple jumps without losing my mind and inverting some relationships.

Let’s start with a quick recap on reading one causal link in diagrams.

A line between two stocks represents an impact.
One line from one stock to another means that both stocks move in the same direction.

%0AABBA->B

Here, more of A leads to more of B, or less of A leads to less of B.

But sometimes stocks move in opposite directions. Multiple notation exists, some with a dot (), others with a minus (-). For the rest of the article, I’ll keep with the dot notation as I find it easier to read.

So, a line with a means the stocks move in opposite directions.

%0AABBA->B

Here, more of A leads to less of B, or less of A leads to more of B.

When reading a causal loop diagram with multiple links, the trick is to stop trying to be clever and read each link on its own, one after the other, and, instead, read them all in one go by switching from "more" to "less" every time you encounter a as you are telling the story.

%0AABBA->BCCB->CC->A

You can read the diagram above as "more of A leads to more of B, more of B leads to *switch* less of C, and less of C leads to less of A" or "less of A leads to less of B, less of B leads to *switch* more of C, and more of C leads to more of A."

Do you speak French and want to stop hating your tests ?

I've created a course to help developers to improve their automated tests.

I share ideas and technics to improve slow, flaky, failing for unexpected reason and hard to understand tests until they become tests we take joy to work with !

But you'll need to understand French...

That trick even works when the loop goes across multiple inversions.

%0AABBA->BCCB->CC->A

Here, "more of A leads to more of B, more B leads to *switch* less of C, and less of C leads to *switch* more of A" or "less of A leads to less of B, less of B leads to *switch* more of C, and more of C leads to *switch* less of A."

I hope you’ll find this helpful the next time you try to tell a story involving feedback loops!

By the way, if your team is facing some technical or organizational problems, adopting a systemic view might help find a possible next action. I would be more than happy to assist you into working on the issues you are facing, so let’s have a chat!.