Thursday, September 11, 2008

Architecture vs. Design

According to Martin Fowler in the “Who Needs an Architect?” available at http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=01231144:

“…the expert developers working on that project have a shared understanding of the system design. This shared understanding is called ’architecture.’ This understanding includes how the system is divided into components and how the components interact through interfaces. These components are usually composed of smaller components, but the architecture only includes the components and interfaces that are understood by all the developers.”

Therefore architecture focuses on how components and interfaces are used by or interact with other components. Selecting data structures or algorithms implemented within the components is not an architectural concern. Rather than use hard-and-fast rules to distinguish between architecture and design, it makes sense to combine these two areas. In some cases, decisions are clearly more architectural in nature. In other cases, the decisions are more about design, and how they help you to realize that architecture.

No comments:

Post a Comment