What Is Architecture Design? Principles, Goals, Methods, and Common System Architectures
This article explains architecture design, covering its definition, core principles, goals, the 4+1 view method, classifications of monolithic and distributed architectures, common system architecture patterns, business analysis techniques, domain‑driven design, DSL concepts, and organizational structures for development teams.
What Is Architecture Design
Architecture design is the process of providing problem‑solving solutions based on architectural principles and goals; it follows the same principles as design but operates at a larger scale and different abstraction levels.
Questions
What is the most basic personal quality required for architecture design?
What is the most basic technical ability required for architecture design?
Principles, Goals, and Methods
Principles
Dynamic‑static separation, high cohesion, low coupling.
Goals
Controllability – decomposition and granularity depend on business, people, and governance.
Reusability – abstraction at every stage (development → design → architecture → domain → organization).
System standards – high performance, reliability, stability, availability, security, usability, scalability, maintainability.
Method: 4+1 View Model
Use‑case view – how users see the system (UML use‑case diagram).
Logical view – abstract system functions (UML class, interaction, sequence diagrams).
Development view – how developers see the system (development and design documents).
Process view – runtime state, threads, processes, interactions (UML activity diagram).
Physical view – deployment, network, reliability, scalability.
Additional Questions
Methodologies for architecture design at different development stages.
Factors influencing decomposition granularity.
Technologies that realize architectural goals and their principles.
Why data‑driven design is widespread and how the three‑normal‑form reflects architectural principles.
Why internet companies rarely hire junior developers while software firms do.
Architecture Classification
By Process Perspective
Monolithic architecture – services run in a single process.
Distributed architecture – services run across multiple processes.
Monolithic Architecture Types
Simple mode – no internal splitting.
MVC mode – internal layering.
Front‑back separation – independent front‑end and back‑end logic.
Component mode – sub‑projects packaged into a whole (manual → ant → maven).
Component library mode – common code packaged as an organization library.
Web front‑back separation evolves in two stages:
Back‑end rendering: servlet → jsp → struts → springmvc → template engine → ajax.
Front‑end rendering: ajax → jquery → Angular / React / Vue / ECharts.
Problems of monolithic architecture: tight code coupling, large deployment impact, slow startup, poor scalability, and difficulty in large‑scale iterative updates.
Distributed Architecture Types
SOA – service‑oriented architecture, focuses on enterprise IT ecosystem, ESB, heterogeneous service integration, based on RPC and MQ.
DSA – distributed service architecture, focuses on business decomposition and service governance.
MSA – micro‑service architecture, refined DSA with micro‑service governance technologies.
Micro‑service governance: service registration & discovery, monitoring, isolation, circuit‑break, fallback, rate‑limit.
Micro‑service challenges: cascade failures, idempotency, timeout, transaction consistency.
Common System Architectures
Layered Architecture
Components are divided into parallel layers such as Presentation Layer, Business Layer, Persistence Layer, and Database Layer.
Clean Architecture
Outer layers may depend on inner layers, but inner layers never depend on outer ones; the core entities represent business logic independent of technical concerns.
Hexagonal Architecture
Also known as “Ports and Adapters”, it isolates the domain core behind adapters that communicate with the outside world.
CQRS
Command Query Responsibility Segregation separates write commands from read queries, leading to eventual consistency challenges.
Event‑Driven Architecture
Asynchronous and highly decoupled.
Common Business Analysis Methods
Database‑driven design.
Use‑case driven.
User story.
Test‑driven development (TDD).
Domain‑Driven Design (DDD)
DDD addresses the challenges of MSA by providing a unified language, domain models, and systematic processes (Why → What → How) that include domain model analysis and system architecture design.
Domain Model Analysis
Key concepts: Problem Domain (core, sub‑domains, bounded contexts, context mapping), aggregates, aggregate roots, services, factories, repositories, and the distinction between DAO and repository.
DSL (Domain Specific Language)
When design becomes a language, it can be expressed as DSLs such as HTML, CSS, Maven, SQL, or internal DSLs provided by frameworks like Spring, Spring MVC, Spring Boot, MyBatis.
Organization & Technical Architecture
Team Structures
Horizontal split – specialized technical teams (frontend, native, backend, data, test, product, PM).
Vertical split – cross‑functional teams containing all roles.
Management Approaches
Horizontal split led by technical leads: strong tech, weak business, high coordination cost.
Vertical split led by product/PM: strong business, weak tech, higher technical risk, uneven workload.
Open Questions
Pros and cons of vertical vs. horizontal splits and solutions.
Suitable scenarios for each split.
How to balance workload across cross‑functional teams.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
IT Architects Alliance
Discussion and exchange on system, internet, large‑scale distributed, high‑availability, and high‑performance architectures, as well as big data, machine learning, AI, and architecture adjustments with internet technologies. Includes real‑world large‑scale architecture case studies. Open to architects who have ideas and enjoy sharing.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
