Architecture vs Design. What is the difference?

      Comments Off on Architecture vs Design. What is the difference?

Note: This article has been initially appeared on LinkedIn.

I have been asked this question a lot lately by students who are confused about the terms. Perhaps, because the IT industry uses the terms interchangeably in many ways.

I have been teaching Network Design for about 17 years and for many years in my career I held the title of Network Designer. Before that, I spent a few years designing computers. So here is my take on the answer:

From the engineering perspective, Architecture describes the overall structure of a system and how its components fit together. Design is the act of translating ideas to tangible products or services.

In computing, there are numerous computer products, but most follow two main architectures, Von Neumann and Harvard. Most computers (PCs, MACs, Tablets, Smart Phones, etc.) follow the former architecture while others (signal processors, for example) follow the latter. There are also many microprocessors in the market, but they all follow either CISC (Complex Instruction Set Computer) architecture or RISC (Reduced Instruction Set Computer). Your laptop uses CISC processors (Intel or AMD) while your smart phone is likely using RISC processors (e.g., ARM).

In transportation, bridges follow common bridge architectures that include arch bridges, beam bridges, cantilever bridges, suspension bridges, among others.

All these architectures describe the broad structure of the product, while design specify the product details that adhere to a set of requirements and constraints decided by the user and other external factors.

A product designer needs to make a series of decisions that range from the most significant, irreversible, decisions, to the minor, easy to change, decisions. Among these irreversible decisions is the general architecture that the product follows.

In networking, there are several known architectures (although sometimes they are not called that). From topology perspective, there is the hierarchal three-tier model commonly used for campus networks, and the spine-leaf model that is commonly used for data centres. Starting from one of these models, the designer must make numerous decisions about how to translate these general architectures to the final network design, including the choice of control plane, protocols, addressing scheme, and many others.

There is a clear difference between architecture and design. Architecture leans more towards vision and strategy, while design focus on implementation details. But, judging by the many “architect” titles out there, I am not sure that the IT (especially networking) industry knows the difference.

You may want to read this also: