The big ball of mud

Defined by [#brooks-mythicalmm], it describe software projects that have grown in an chaotic fashion (which is what happens when you have no design, see 202105191353 Good design vs Bad design).

What we usually end up with is a system without clear boundaries and murky interactions. Changing things in it is a dangerous and mind boggling task. It's not rare to see a change cause a chain reaction (which might surface weird bugs).

Preemptive design and solid project concepts are good tactics against this issue. 202105192137 Strategic Design around Domain Driven Design (DDD) is a popular approach to that.

[#brooks-mythicalmm]: Brooks, Frederick P. The Mythical Man-Month: Essays on Software Engineering. Anniversary ed. Reading, Mass: Addison-Wesley Pub. Co, 1995.