How do design and architecture work together?
Although treated as two stages in the development process, architecture and design work together. While software architecture focuses on a system’s structure and high-level components, software design concentrates on a system’s details and implementation. We can consider that design combines the inner workings of components and implementation details, algorithms, and data structures.
The architecture is created in the initial stage of the system’s development. Later, as we evolve through the development phase, the design surfaces. Along the way, architecture and design overlap and work together, and as we soon realize over time, developers need to understand both. Sometimes, teams have to make critical technical decisions. By understanding both design and architecture, they can also understand how the design decisions they make will help build the architectural vision in the end.
Grady Booch nicely expresses...