Ashby’s law concepts for designing a complex product
Addressing complex products by matching them with the user’s complexity
A product that is difficult to understand because having many different parts in it is what we called a complex product.
We tend to focus on “having many different parts” of addressing this challenge, resulting in simplifying our product design.
🧑🏻✈️ What if we couldn’t simplify it because every component is essential?
Take a look at the cockpit dashboard above. According to Tesler’s Law, there will be certain complexity that we couldn’t simplify. Oversimplify it results in a complex process behind the scene and the user will find it unusable thus harming the user experience
If you make a user’s interaction with a system simpler, the complexity behind the scenes increases.
We then should focus on “difficult to understand” and ask ourselves how to make our product understandable. To answer this, we need a better understanding of who our user is as their cognitive complexity varies from each person.
Ever wonder why Dr. Watson couldn’t notice smoke ash beneath the culprit’s shoe as a hint of evidence while Sherlock Holmes could? That is Cognitive Complexity, a measure of how capable people perceive things in their world. The more complex person’s cognitive on the field is, the more expert he is in that particular field.
Sherlock Holmes built his knowledge and experience and then store it inside his “Mind Palace” for years thus making him an Expert Detective. While Dr. Watson didn’t have prior experience in tracing evidence so he isn’t an expert in that field.
⚒️ How Ashby’s Law could address this?
Ashby’s law coined by William Ross Ashby, that later updated by Max Boisot and Bill McKelvey to Ashby’s Law of Requisite stated that
“In order to be efficaciously adaptive, the internal complexity of a system must match the external complexity it confronts.”
In a simple way, for a product to be able to survive, the complexity of the product needs to be on the same level as the complexity of the user’s cognitive.
William Ross Ashby was inspired by Biological System while defining this concept. On a macro level, the population of organisms is a part of the Biological System where there are many variables inside of it such as Type of animals, plant or event rocks, and water as the environment.
We could make an analogy where a product is a living being and the user’s cognitive complexity is an environment. Let’s take a look at this example
In the image below, Giraffe with a short neck couldn’t reach leaves thus it couldn't eat it and was not able to survive. While the long neck Giraffe could reach it and able to survive. (ps: it is only an example 😄)
To be able to survive, the Giraffe either needs to find another place with lower leaves or stretch its neck so it could reach it.
From this example, we could derive two concepts, Matching product complexity with the user’s mind like Giraffe that needs to find lower leaves. The other one is to Leverage user cognitive complexity with our products like Giraffe that stretches its neck.
🗣️ Matching Product Complexity to the user’s
Research plays a crucial role in understanding who our user is and their behavior to produce accurate User Persona. User Interviews or Competitive Benchmarks, for example, could help us match our product complexity to the user’s complexity.
Through Interviews, we could understand how user solve their problem before. While competitive benchmarking helps us analyze solutions that users tried before, resulting in a familiar product.
💪🏻 Leverage the user’s cognitive complexity
Naturally, human is a living being with high curiosity and this will flourish when they’re surrounded by mystery and clues. A “Gap” between the user’s information and the mystery surrounding it causes pain, and to take it away, users need to fill the knowledge gap.
As designers, we could use it to leverage user complexity. For example, we could use a coach mark or onboarding tutorial for a first-time user. Those could act as a hint, guiding users through the information gap between things that they know (user cognitive) and things they want to know (our product).
Using both of these concepts could help us deliver suitable complexity of the product for our users.
✨ Why it is important?
If it is too complex, the product will not be used because it is hard to use, and too simple will be abandoned by the user as it is not engaging or fulfilling their needs. Let’s take a look at this ⬇️
The docs were too complex to let the user get the job done, writing a document. Imagine if ms word still appeals like this and they didn’t give the option to hide it, would you use it? or use another document app option?
That’s why, understanding users & approaching with User-Center Design play a huge role in delivering products with good usability.
🔑 Takeaways
- We tend to focus on “Having too many parts” when addressing complex products thus resulting in simplifying our product design. While there will be certain complexity that couldn't be reduced and oversimplified it will make it unusable.
- The terms complexity on user could be user mental model or cognitive complexity that is built upon their experiences while handling certain problems they faced before.
- Understanding user complexity will help us to shape our product better, either by leveraging their complexity into our product or matching our product complexity with theirs. Coach Mark is one example of leveraging user complexity.
Further Reading
Thank you for your time reading it this far, would love to hear your thought about this 🔥