- Software architecture is less about appearance and more about structure, whereas design is more about appearance and less about structure.
- You need to use four dimensions to understand and describe software architecture: architectural characteristics, architectural decisions, logical components, and architectural style.
- Architectural characteristics form the foundational aspects of software architecture. You must know which architectural characteristics are most important to your specific system, so you can analyze trade-offs and make the right architectural decisions.
- Architectural decisions serve as guideposts to help development teams understand the constraints and conditions of the architecture.
- The logical components of a software architecture solution make up the building blocks of the system. They represent things the system does and are implemented through class files or source code.
- Like with houses, with software there are many different architectural styles you can use. Each style supports a specific set of architectural characteristics, so it’s important to make sure you select the right one (or combination of them) for your system.
- It’s important to know if a decision is about architecture or design, because that helps determine who should be responsible for the decision and how important it is.
Credits : Head First Software Architecture By Raju Gandhi, Mark Richards, Neal Ford
Arquitecto de software Senior en Banco Ripley | CTO T2Solutions
11 个月Luis Alfredo González Villagra
API Developer, API Management and Security SME, Solutions Architect
11 个月Love it! I am big fan of head first series.