A complex system is something that involves many actors, components, or steps working together to produce a result. The more things that are involved, the more complex the system becomes. This could be a technical system, an organization, or a workflow where many people and tools have to coordinate to deliver an outcome.
In this context, quality can be seen as the rate at which errors happen in the system. That can mean the error rate of each individual component or actor, or it can mean the error rate of the system as a whole. A system with high quality has a low rate of errors; a system with lower quality has a higher rate of errors.
A key property of complex systems is that components depend on each other. An error in one actor or component does not stay isolated. It propagates to others that are dependent on it. If one part produces bad or incorrect output, the parts that rely on that output will either also fail or have to spend effort dealing with the consequences.
Because of this, when the error rate in a system increases, even by just a few percent in each part, the overall quality of the entire system can drop significantly. The effect is not just additive; it compounds across all the components involved. For example, in a system with 10 actors or components, a 1% drop in quality in each one might sound small, but together it adds up to roughly a 10% drop in the quality of the whole system.
This is why a small decline in quality in individual parts can feel like a large decline in the result the system produces. Even if each single actor or component is “almost as good as before,” the experience of the full system can be noticeably worse.
Possible ways to address this are either to reduce the complexity of the system or to reduce the quality error rate in the individual parts. Reducing complexity means having fewer actors, components, or steps involved, so there are fewer places where errors can occur and propagate. Reducing the error rate of each part means improving the quality of each actor or component, so that fewer errors enter the system in the first place. Both approaches aim to prevent small local problems from turning into large system-wide drops in quality.