Complexity is Subjective

I recently read the book “Systems Thinking for Curious Managers” [1] and found this good quote:

“Complexity is not a property of problems but of those looking at problems.”

After I finished reading the book, I decided to explore this idea further and found the research paper “A Subjective Measurement of Complexity” [2]. It contains a lot of good ideas. The most important of them is that complexity is subjective and that there is a distinction between the notion of a complex system, a complicated system and a simple system.

Note that Ackoff talks about problems and Fioretti talk about systems. My gut feeling is that there is not much difference between a problem and a system: A problem is a question about a system that we want an answer to, possibly because we want to get more value out of the system or that we want to understand the system better (which gives us value personally). It is also likely that the question and the system will be better defined as we learn about the system along the way.

The paper begins with:

“Complexity is often thought as a property of the system under observation, much in the same way as its mass or its volume.”

And then he states a similar idea as Ackoff:

“An alternative approach […] is that of viewing complexity as a property of the relationship between a system and its observer: the person who is observing a system says that ‘this system is complex’ when she is not satisfied with the mental model she has of it.”

In the end of the introduction, Fioretti makes the distinction between complex, complicated and simple systems:

“If the observer knows that he did not identify all the relevant elementary particles, or if he knows that he did not identify all the causal relationships that link the events these particles generate to the actions he undertakes upon the system, or both, then he says that the system is complex.

If the observer did identify all the relevant elementary particles, as well as the causal relationships that link the events that these particles generate to the actions he undertakes upon the system, but he is not able to express all these relationships by means of a universal law, then he says that the system is complicated.

If the observer identified all the relevant elementary particles as well as the causal relationships that link the events these particles generate to the actions he undertakes upon the system, and if he is able to express these relationships by means of a universal law, then he says that the system is simple.”

I interpret the statements as:

  • Complex: We get surprised of the behavior of the system
  • Complicated: We understand the system and can predict the behavior of the system, but cannot express it in one or more laws
  • Simple: We can express the system in one or more laws

When building software, I think that the “complexity is subjective” idea could be useful. For example:

  • “Staff turnover” – getting new members in a team would most likely increase the mean complexity of the software.
  • “Code rot” – when code is forgotten by the team, changing the code could lead to unpleasant surprises
  • “Size matters” – our brains have a limited working memory, it is difficult to predict how a large system will react to change

There are probably more examples in software. And in other systems too.

[1] Systems Thinking for Curious Managers, by Russell Ackoff. It contains a good introduction to Systems Thinking.
[2] A Subjective Measurement of Complexity (pdf), by Guido Fioretti

(Note: I plan to write more about surprise in the future and how surprise relates to quality. I also plan to write about system boundaries in the future.)

Advertisements

About gustafnk

Developer at Jayway, REST/Hypermedia, AWD, Software apprentice, Dvorak user, Christian atheist, Zizek fan. I'm on twitter: @gustaf_nk
This entry was posted in Uncategorized. Bookmark the permalink.

One Response to Complexity is Subjective

  1. Sebastian says:

    The is probably a factor time in there as well right? All systems are more or less complex when you first start to studie them , and the complicated system will turn complex much sooner than a simpler one.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s