Skip to content

Architecture View

A view is a part of the architecture description. It shows how the architecture deals with one or more concerns. A concern is something a stakeholder cares about. A stakeholder is anyone with an interest in the system. A view does not try to show everything. It shows what matters for the concerns it serves.

A view follows a viewpoint. A viewpoint is a set of patterns, templates and conventions for building one type of view. It also names the stakeholders whose concerns it reflects. The viewpoint is the recipe. The view is the result of following it.

Some authors offer ready-made catalogs of viewpoints for information systems. One catalog includes these viewpoints:

  • Context
  • Functional
  • Information
  • Concurrency
  • Development
  • Deployment
  • Operational

The arc42 template includes a view as well. Its building block view shows the static structure of the system. arc42 compares it to the floor plan of a house. arc42 also requires it in every architecture documentation.

See the articles “Architecture Viewpoint”, “Stakeholder Concern” and “Essential Architecture Views (Context, Component, Runtime, Distribution)” for more detail.

Imagine an online shop. The operations team asks where the system runs. A new developer asks which parts exist and how they connect. Each group gets a view that answers its own questions. The developer’s view shows the main building blocks and their relations. Both views describe the same shop.

How stakeholders, concerns, viewpoints and views relate.

Diagram source
flowchart LR
S[Stakeholder] -->|has| C[Concern]
V[Viewpoint] -->|reflects concerns of| S
V -->|guides construction of| W[View]
W -->|addresses| C
  • The documentation includes a building block view of the system’s static structure.
  • Each view states which stakeholder concerns it addresses.
  • Each view is built with the patterns, templates and conventions of a named viewpoint.