From Big Ball of Mud to Emergent Design

Tight couplings, cyclic dependencies and not well separated concerns are the main attributes, which defines a Big Ball of Mud architecture. Those kind of monolithics systems are very difficult to maintain. Maintainance contains testability, interchangeability, extensibility, deployability, scaleability and comprehensibility. Big Ball of Mud can occur on all system levels such relationships between Application-To-Application, Feature-To-Feature, Component-To-Component or Class-To-Class, but also on organization level such as Team-To-Team relationships.

Read more