Excerpted from DomainDrivenDesignBook
Problem: Design free-for-alls produce systems no one can make sense of as a whole, and they are very difficult to maintain. But architectures can straitjacket a project with up-front design assumptions and take too much power away from the developers/designers of particular parts of the application. Soon, developers will dumb down the application to fit the structure, or they will subvert it and have no structure at all, bringing back the problems of uncoordinated development.
Solution: Let this conceptual large-scale structure evolve with the application, possibly changing to a completely different type of structure along the way. Don?t overconstrain the detailed design and model decisions that must be made with detailed knowledge.
EvolvingOrder is mentioned on: MessagesByTopic