Markdown Editor

Reference Architecture Specification Template

Applicability, drivers, principles, ABBs and SBBs, pattern selection rules, Mermaid views, tech standards, conformance, variation points

Architektur & SystemdesignVollständigISO/IEC/IEEE 42010:2022 concepts; TOGAF Standard, 10th Edition building blocksreferencediagram

Anleitung: Use it when several teams build the same kind of system and need one approved blueprint to start from and be reviewed against. Fill applicability, building blocks and conformance rules first, then declare the variation points. The main pitfall is leaving variation undeclared, so instantiations drift and reviews become arguments.

Vorschau

Reference Architecture: [Domain or solution type]

Specification of a reference architecture: a reusable, approved blueprint that solution teams instantiate for a recurring kind of system. It covers purpose and applicability, drivers, principles, architecture and solution building blocks, patterns with selection rules, standard views, technology standards, conformance rules and how compliance is assessed, variation points, instantiation examples and governance. The description structure is aligned with the concepts of ISO/IEC/IEEE 42010:2022 (stakeholders, concerns, viewpoints, views) and uses the building block concepts of the TOGAF Standard, 10th Edition. Replace every [bracketed] value and every row marked Example.

Document control

FieldValue
Document ID[RA-WEB-001]
Reference architecture name[Customer-facing web service]
Version[1.0]
Status[Draft / Approved / Deprecated / Retired]
Owner[@reference-architecture-owner]
Approvers / reviewers[@architecture-board, @security-architect, @platform-lead]
Supported untilYYYY-MM-DD (or "until next major version plus 12 months")
Applies to[Business units, environments, system types]
Last updatedYYYY-MM-DD
Classification[Internal]

Approvals

RoleNameDecisionDate
Architecture board chair[@name][Approved / Approved with comments / Rejected]YYYY-MM-DD
Security architect[@name][Decision]YYYY-MM-DD
Platform engineering lead[@name][Decision]YYYY-MM-DD
Representative adopting team[@name][Decision]YYYY-MM-DD

Revision history

VersionDateAuthorChange summary
0.9YYYY-MM-DD[@name]Draft for review with two pilot teams
1.0YYYY-MM-DD[@name]Example: Approved; conformance rules RA-CR-01 to RA-CR-10 mandatory
1.1YYYY-MM-DD[@name]Example: Document store guidance added to PAT-SEL-03 and VAR-02 after INST-02

Contents

1. Purpose and applicability

1.1 Purpose

This reference architecture defines the approved way to build and run [customer-facing web services] at [Organisation]. It exists so that teams [start faster from proven building blocks, meet security and reliability baselines by default, and stay operable by the platform team], and so that reviewers can assess designs against one stated baseline.

1.2 When to use it

ConditionApplies
Example: New or substantially rebuilt service with a browser or mobile front end used by customersYes, mandatory
Example: Internal tool used only by staffRecommended; conformance rules marked "Customer only" do not apply
Example: Batch or analytics workload with no interactive usersNo; use [RA-DATA-001]
Example: Vendor SaaS configured but not builtNo; use the SaaS onboarding standard
[Condition][Yes, mandatory / Recommended / No]

1.3 Out of scope

[Mainframe workloads, edge devices, data platform pipelines, and anything covered by another reference architecture such as [RA-DATA-001].]

2. Context and drivers

2.1 Business and technical context

[Two paragraphs: how many teams build this kind of system, what went wrong without a common blueprint (for example inconsistent authentication, unobservable services, duplicated platform work), and which enterprise strategy or principles this reference architecture implements.]

2.2 Drivers

IDDriverTypeSource
DRV-01 (Example)Reduce time from idea to first production release for new servicesBusiness goalEngineering strategy (dev/engineering-strategy)
DRV-02 (Example)Every customer-facing service meets the security baseline before launchQuality (security)Security architecture standard
DRV-03 (Example)Availability target of 99.9 percent per month for tier 1 servicesQuality (availability)Service tiering policy
DRV-04 (Example)Run on the company container platform in two regionsConstraintInfrastructure strategy
DRV-05 (Example)Personal data stays in approved regionsConstraint (regulatory)Data protection policy
[DRV-nn][Driver][Goal / Quality / Constraint][Source]

3. Stakeholders, concerns and viewpoints

IDStakeholderMain concernsViewpoints used
SH-01 (Example)Solution architectsWhich building blocks to use, what may varyVP-01, VP-02
SH-02 (Example)Development teamsHow to structure code and interfacesVP-02, VP-04
SH-03 (Example)Platform and SRE teamsDeployment, operations, observabilityVP-03
SH-04 (Example)Security architectsTrust boundaries, identity, data protectionVP-01, VP-03, VP-04
SH-05 (Example)Architecture boardConformance and exceptionsAll
[SH-nn][Stakeholder][Concerns][VP IDs]
IDViewpointConcerns framedModel kinds
VP-01ContextScope, actors, external dependencies, trust boundariesContext diagram
VP-02Logical structureBuilding blocks and their responsibilitiesComponent diagram, building block table
VP-03DeploymentRuntime placement, regions, resilienceDeployment diagram
VP-04BehaviourKey interactions, failure handlingSequence diagram

4. Architecture principles

Principles are taken from the Architecture Principles Catalogue (architecture/architecture-principles) unless marked "RA-specific".

IDPrincipleOriginImplication in this reference architecture
PR-01 (Example)Secure by defaultEnterpriseBuilding blocks ship with authentication, encryption and logging on; teams cannot switch them off without an exception
PR-02 (Example)Stateless services, state in managed storesRA-specificService instances hold no session state; any instance can serve any request
PR-03 (Example)Contract-first interfacesEnterpriseEvery API is described before implementation and versioned
PR-04 (Example)Observable by designEnterpriseEvery service emits traces, metrics and structured logs in the standard format
PR-05 (Example)Prefer managed platform servicesEnterpriseUse the platform's database, queue and cache offerings before self-hosting
PR-06 (Example)Asynchronous by default across team boundariesRA-specificCross-domain side effects use events, not synchronous chains
[PR-nn][Principle][Enterprise / RA-specific][Implication]

5. Building blocks

5.1 Architecture building blocks

IDArchitecture building blockResponsibilityMandatoryKey interfaces
ABB-01 (Example)Edge entryTerminate TLS, route requests, apply rate limits and web application firewall rulesYesHTTPS from clients
ABB-02 (Example)Identity and accessAuthenticate users and services, issue and validate tokensYesOpenID Connect, OAuth 2.0
ABB-03 (Example)Web front endDeliver the user interfaceYes (for UI services)HTTPS to ABB-04
ABB-04 (Example)Service APIBusiness logic exposed through a versioned APIYesHTTP API, events
ABB-05 (Example)Operational data storeDurable transactional storage for the service's own dataYesDatabase protocol
ABB-06 (Example)CacheLow-latency reads for hot dataOptionalCache protocol
ABB-07 (Example)MessagingAsynchronous commands and events between servicesOptional (mandatory for PR-06 cases)Queue or topic
ABB-08 (Example)ObservabilityCollect and query traces, metrics and logsYesTelemetry export
ABB-09 (Example)Secrets managementStore and rotate credentials and keysYesSecrets API
ABB-10 (Example)Delivery pipelineBuild, test, scan and deployYesSource repository, registry
[ABB-nn][Name][Responsibility][Yes / Optional][Interfaces]

5.2 Solution building blocks

IDRealisesSolution building blockStatusNotes
SBB-01 (Example)ABB-01[Platform API gateway with managed WAF]StandardProvisioned through the golden path
SBB-02 (Example)ABB-02[Company identity provider]StandardOnly approved issuer
SBB-03 (Example)ABB-05[Managed PostgreSQL]StandardDefault choice
SBB-04 (Example)ABB-05[Managed document database]OptionUse only per selection rule PAT-SEL-03
SBB-05 (Example)ABB-06[Managed in-memory cache]Option
SBB-06 (Example)ABB-07[Managed message broker]Standard
SBB-07 (Example)ABB-08[OpenTelemetry SDK plus platform collector]StandardStandard telemetry format
SBB-08 (Example)ABB-10[Platform pipeline templates]StandardSee Platform Golden Path (architecture/platform-golden-path)
[SBB-nn][ABB ID][Product or service][Standard / Option / Deprecated][Notes]

6. Patterns and selection rules

6.1 Endorsed patterns

IDPatternProblem it solvesConsequences
PAT-01 (Example)Backend for front endDifferent clients need different API shapesOne more component per client type; simpler clients
PAT-02 (Example)Transactional outboxPublish events reliably with a database changeRequires an outbox relay; avoids dual writes
PAT-03 (Example)Cache-asideRead-heavy data with tolerance for short stalenessCache invalidation rules needed
PAT-04 (Example)Circuit breaker with fallbackSlow or failing dependenciesDegraded responses must be designed
PAT-05 (Example)Strangler figReplacing a legacy system incrementallyRouting layer and dual running period
[PAT-nn][Pattern][Problem][Consequences]

6.2 Selection rules

IDIfThenRationale
PAT-SEL-01 (Example)The service changes data owned by another domainUse events through ABB-07 with PAT-02; no direct database accessPR-06
PAT-SEL-02 (Example)Read to write ratio above an agreed level and staleness of seconds is acceptableAdd ABB-06 with PAT-03Performance at lower cost
PAT-SEL-03 (Example)Data is document-shaped, schema varies per record, and no cross-record transactions are neededSBB-04 may replace SBB-03Fit for data model
PAT-SEL-04 (Example)Two or more client types with different needsUse PAT-01Avoids a lowest-common-denominator API
PAT-SEL-05 (Example)A synchronous dependency is outside the team's controlApply PAT-04 and define the fallback behaviourDRV-03
[PAT-SEL-nn][Condition][Choice][Principle or driver]

7. Standard views

7.1 Context view (VP-01)

The context view shows the service family as one box with its users, the shared platform services it depends on and the trust boundaries.

7.2 Logical structure view (VP-02)

The logical view shows the building blocks inside one instantiation and how they connect.

7.3 Deployment view (VP-03)

The deployment view shows the default runtime placement across two regions.

7.4 Behaviour view (VP-04)

The behaviour view shows a state-changing request that publishes an event reliably.

8. Technology standards and options

AreaStandardAllowed optionsNot allowedRadar ring
Runtime (Example)[Company container platform][Serverless functions for event handlers]Self-managed virtual machinesAdopt
Languages (Example)[Java LTS, TypeScript on Node.js LTS][Go, with board approval]Unsupported language versionsAdopt / Trial
API style (Example)[HTTP APIs described in OpenAPI][gRPC for internal high-throughput calls]Undocumented endpointsAdopt
Data store (Example)[Managed PostgreSQL][Managed document database per PAT-SEL-03]Shared databases between servicesAdopt
Telemetry (Example)[OpenTelemetry]Vendor-specific agents without OpenTelemetry exportAdopt
[Area][Standard][Options][Not allowed][Ring]

Technology statuses follow the Technology Radar (architecture/tech-radar). New options enter through Technology Selection (architecture/technology-selection) and a minor version of this document.

9. Conformance rules and compliance assessment

9.1 Conformance rules

IDRuleLevelApplies toHow it is checked
RA-CR-01 (Example)All external traffic enters through ABB-01MandatoryAllPlatform policy blocks public endpoints elsewhere
RA-CR-02 (Example)Users and services authenticate through ABB-02 onlyMandatoryAllDesign review, token issuer check in pipeline
RA-CR-03 (Example)No service reads or writes another service's data storeMandatoryAllNetwork policy, design review
RA-CR-04 (Example)Every API has a published, versioned contractMandatoryAllPipeline fails without a contract file
RA-CR-05 (Example)Traces, metrics and logs exported through SBB-07MandatoryAllTelemetry presence check after deployment
RA-CR-06 (Example)Secrets only in ABB-09; none in code or imagesMandatoryAllSecret scanning in pipeline
RA-CR-07 (Example)Deployed in two regions with tested failoverMandatoryTier 1, Customer onlyFailover test record each half-year
RA-CR-08 (Example)Cross-domain side effects use events (PAT-SEL-01)MandatoryAllDesign review
RA-CR-09 (Example)Load test at expected peak before first releaseRecommendedAllTest report
RA-CR-10 (Example)Only SBBs with status Standard or OptionMandatoryAllDependency and image policy
[RA-CR-nn][Rule][Mandatory / Recommended][Scope][Check]

Executable checks can be written as Fitness Functions (architecture/fitness-functions).

9.2 Compliance assessment process

  1. Self-assessment: the solution team completes the checklist in 9.3 during design and links evidence.
  2. Design review: an architect from the reference architecture owner team reviews the self-assessment at the design gate, using the Architecture Review Request (architecture/architecture-review-request).
  3. Automated verification: pipeline and platform checks enforce the rules marked as automated before each production release.
  4. Periodic audit: [annually], a sample of instantiations is reassessed; results feed the next version of this document.

9.3 Compliance outcomes and checklist

OutcomeMeaning
CompliantAll mandatory rules met
Compliant with exceptionsOne or more mandatory rules waived through an approved exception with an expiry date
Non-compliantA mandatory rule is not met and no exception exists; the release gate blocks
RuleStatusEvidenceException ID
RA-CR-01[Met / Not met / Not applicable][Link][EXC-nn or blank]
RA-CR-02[Status][Link][EXC-nn or blank]
[RA-CR-nn][Status][Link][EXC-nn or blank]

9.4 Exceptions

IDInstantiationRule waivedReasonCompensating controlExpiryApproved by
EXC-01 (Example)[Loyalty service]RA-CR-07Tier 2 service; second region not justifiedBackup restore tested quarterlyYYYY-MM-DD[@board-chair]
[EXC-nn][Service][RA-CR ID][Reason][Control]YYYY-MM-DD[@approver]

Grant exceptions as dispensations under the Architecture Board Charter (architecture/architecture-governance-charter) and record the dispensation ID next to the EXC ID, so that one register holds every approved deviation.

10. Variation points

IDVariation pointAllowed variantsDefaultDecided byConstraint
VAR-01 (Example)Front end renderingServer-rendered, single-page application, static site with APIServer-renderedSolution teamMust meet accessibility standard
VAR-02 (Example)Data store typeSBB-03, SBB-04SBB-03Solution team per PAT-SEL-03One store type per service
VAR-03 (Example)CachingNone, SBB-05NoneSolution team per PAT-SEL-02Cache never system of record
VAR-04 (Example)RegionsOne region, two regionsTwo regions for tier 1Service tierRA-CR-07
VAR-05 (Example)Backend for front endPresent, absentAbsentSolution team per PAT-SEL-04
[VAR-nn][Point][Variants][Default][Who decides][Constraint]

11. Instantiation examples

IDInstantiationOwner teamVariants chosenCompliance outcomeLessons for this document
INST-01 (Example)[Online quote service][Team Quote]VAR-01 server-rendered; VAR-02 SBB-03; VAR-03 SBB-05; VAR-04 two regionsCompliantSelection rule PAT-SEL-02 needed a clearer threshold
INST-02 (Example)[Loyalty service][Team Loyalty]VAR-01 single-page application; VAR-02 SBB-04; VAR-04 one regionCompliant with exceptions (EXC-01)Document store guidance added in v1.1
[INST-nn][Service][Team][Variants][Outcome][Lessons]

11.1 Traceability matrix

DriverPrinciplesBuilding blocks and patternsConformance rules
DRV-01PR-05ABB-10, SBB-08RA-CR-04, RA-CR-10
DRV-02PR-01ABB-01, ABB-02, ABB-09RA-CR-01, RA-CR-02, RA-CR-06
DRV-03PR-02, PR-06ABB-07, PAT-04RA-CR-07, RA-CR-08, RA-CR-09
DRV-04PR-05SBB-01 to SBB-08RA-CR-10
DRV-05PR-01ABB-05RA-CR-03

12. Governance and versioning

12.1 Ownership and change process

  • Owner: [@reference-architecture-owner], accountable for content, versions and the conformance checklist.
  • Change requests: any team may propose a change through [RFC process (dev/rfc) or architecture board backlog]. Each change cites the instantiations or incidents that motivate it.
  • Approval: patch and minor versions by the owner with one board member; major versions by the architecture board.

12.2 Versioning and support

Change typeVersion incrementEffect on existing instantiations
Clarification, no rule changePatch (1.0.x)None
New option, new recommended ruleMinor (1.x)None; adopt at next major release
Changed or new mandatory rule, removed building blockMajor (x.0)Migrate within the support window

Previous major versions stay supported for [12 months] after a new major version. Each instantiation records the version it conforms to in its solution architecture document.

12.3 Review cadence

[Review at least annually, after every major platform change, and when three or more exceptions to the same rule have been approved, which signals that the rule needs revisiting.]

13. Glossary and references

13.1 Glossary

TermMeaning in this document
Reference architectureGeneric, reusable architecture for a class of solutions, with rules for conformance
Architecture building block (ABB)Technology-neutral unit of required capability
Solution building block (SBB)Approved product, service or component that realises an ABB
PatternProven solution to a recurring design problem, with known consequences
Variation pointDeclared place where an instantiation may choose among allowed variants
InstantiationA specific solution built according to this reference architecture
Conformance ruleTestable statement an instantiation must satisfy
Viewpoint, viewConventions for a kind of view, and the view built with them

13.2 References

  • ISO/IEC/IEEE 42010:2022, Software, systems and enterprise: Architecture description (second edition, November 2022): concepts of stakeholder, concern, viewpoint and view.
  • The Open Group, The TOGAF Standard, 10th Edition: concepts of architecture building blocks, solution building blocks and the Enterprise Continuum.
  • Related templates: Architecture Description (architecture/architecture-description-42010), Solution Architecture (architecture/solution-architecture), Architecture Principles Catalogue (architecture/architecture-principles), Technology Radar (architecture/tech-radar), Platform Golden Path (architecture/platform-golden-path), Fitness Functions (architecture/fitness-functions), Architecture Governance Charter (architecture/architecture-governance-charter), Architecture Definition Document (architecture/architecture-definition-document).

Standard and licence note

Structure aligned with the concepts of ISO/IEC/IEEE 42010:2022 (stakeholders, concerns, viewpoints and views) and with the building block concepts of The TOGAF Standard, 10th Edition (The Open Group). Both are copyrighted; this template reproduces no text, definitions or tables from them, and all wording, rules and examples are original. Check the current official editions for their normative content. TOGAF is a registered trademark of The Open Group. Template licence: MIT.

Ähnliche Vorlagen