Skip to main content

Architectural Traceability

Architectural traceability is the ability to demonstrate, verifiably, that every relevant security requirement has an associated design decision, an implemented control and auditable evidence.

Without traceability, an architecture may be correct but not demonstrably secure - which is insufficient in audit, compliance or post-incident analysis contexts.


Traceability model​

The model links five elements in a chain:

Ameaça (Cap. 03) → Requisito de arquitectura → Decisão (ADR) → Controlo implementado → Evidência
ElementDescriptionTypical artefact
ThreatThreat identified in threat modelling (Ch. 03) - STRIDE, PASTA or equivalentTM record, annotated DFD
Architecture requirementCanonical requirement from this chapter's catalogue that mitigates the threat01-catalogo-requisitos.md
Decision (ADR)Architecture Decision Record documenting how the requirement is satisfied in the context of the projectadr/ADR-xxxx.md, decisions section in solution-architecture.md
Implemented controlThe technical or procedural measure in force that gives effect to the decisionNetwork configuration, admission policy, review process
EvidenceVerifiable artefact that proves the control - versioned, reproducible and auditableVersioned diagram, CI/CD log, review minutes, completed checklist

Traceability matrix template​

The matrix can be kept as a Markdown table in the repository, as backlog items with labels, or as a section in solution-architecture.md. The format is secondary; the substance - a verifiable link between requirement, decision and evidence - is the determining criterion.

ARC Req.NameAssociated threat (Ch. 03)Decision / ADRImplemented controlEvidenceStatus
ARC-001Trust zones identifiedSpoofing, Information DisclosureADR-003C4 diagram with delimited trust boundariesdocs/arch/trust-zones-v3.drawio (rev. 2024-11)Compliant
ARC-005Integrated threat modellingElevation of Privilege, TamperingADR-007STRIDE applied in a quarterly design sessiondocs/tm/checkout-flow-2024-11.mdCompliant
ARC-006Isolation between sensitive domainsLateral movement, Info DisclosureADR-009Kubernetes network policies + ACLs on the API GatewayCI log: validate-isolation (pipeline #247)Compliant
ARC-011Segmentation between environmentsCross-env tamperingADR-012Isolated namespaces + separate credentials per environmentIAM audit 2024-10, network policy reviewCompliant

For L1: the Ameaça associada and Decisão / ADR columns are recommended but not mandatory. For L2 and L3: all fields are mandatory.


Update criteria​

The traceability matrix must be updated when:

  • an ARC requirement is instantiated or reviewed in the project;
  • an ADR is created, updated or invalidated;
  • an architectural review event occurs (see the triggers in Operational Glossary);
  • the application's risk level is reclassified;
  • an exception is approved, renewed or expires.

Outdated traceability is equivalent to the absence of traceability for audit purposes.


Operational instantiation​

For instantiation in a project, each ARC requirement is identified with the operational tag SEC-Lx-ARC-CODIGO (e.g. SEC-L2-ARC-005), as described in Taxonomy and Traceability.

The operational tag is the link between the architectural traceability matrix and the project's backlog or compliance management system.


For the requirements catalogue, see ARC Requirements Catalogue. For the validation criteria per requirement, see Architectural Validation Plan. For the decision and evidence model, see Architectural Decision and Evidence. For the management of exceptions to traceability, see Exception Management.