As mentioned in The Mythical Man Month, good system design (user friendly) requires a small (ideally singular) team of architects, separated from implementation, that decide what goes into the system and what stays out. This avoids rogue ideas making it in that muddy the overall product.
In No Silver Bullets, Fred Brooks adds that conceptual integrity is difficult to achieve because of the inherent complexity of software systems—complexities can not be ignored as one would a simplified model in mathematics or physics because the complexities are the essence.
See also:
Links to this note
-
Code Architecture Docs Decrease the Time Spent Searching for Where to Make a Change
A software architecture doc (e.g. ARCHITECTURE.md) is a way of stating the overall structure of the code. This makes it easier for new people to ramp up on the code base and trims down the time it takes to find where to make a code change.