Week 17 · lesson
Reconstruct the System From Evidence
A final architecture diagram should not be a drawing made from memory.
It should be a compressed representation of evidence collected throughout the course.
Start with required functions
For the fictional Northstar system, define the functions that must survive:
- public viewers can read approved status information;
- operators can update match notes;
- privileged role changes require approval;
- logs support investigation and troubleshooting;
- backups support recovery;
- the system can recover from a bounded configuration or identity failure.
Every component in the final architecture should connect to at least one required function, control, dependency, or evidence source.
Build an inventory with provenance
Do not write only:
web server
database
firewall
Build a table:
| Component | Function | Identity | Network/service relationship | Evidence source | Owner |
|---|---|---|---|---|---|
| status-web | serves status + updates | status-service | local proxy + DB | socket/log/config | app owner |
| database | stores match notes | db-service | app-only path | audit/config | data owner |
| log-forwarder | ships events | forwarder-service | collector path | health/log | ops owner |
| backup-agent | produces recovery copy | backup-service | backup store | job logs | recovery owner |
Now the architecture can be challenged.
Add identity and authority to the diagram
A network line is not enough.
Identity and permission are different questions
- CLAIMI am this user or serviceprove
- AUTHENTICATEverify the identity claimevaluate
- AUTHORIZEdecide what this identity may doaccess
- RESOURCEfile, service, data, or actionrecord
- AUDITpreserve evidence of the decision
Show which identity makes the claim, what proves the claim, what action that identity is allowed to perform, which resource receives the action, and where the decision is recorded.
For example, an operator may authenticate into a status session, the status service may act with a service identity, and the match database may accept only the authorized update path. A coach-admin role-management action should cross a different privileged boundary.
Authority flows through the system just like data does.
Add evidence paths
A control that cannot be observed is difficult to verify.
For important actions, mark evidence such as:
- authentication event;
- authorization decision;
- request ID;
- database audit event;
- config-change record;
- service-health heartbeat;
- backup result;
- detection alert.
Now your architecture contains system behavior and how you know about it.
Trust boundaries should name the assumption change
Instead of a generic dashed line, label boundaries:
public/untrusted client → application input boundary
operator identity → authorization boundary
application → database service-identity boundary
host → centralized log pipeline
production-like dataset → backup/recovery store
admin role → privileged change boundary
This makes the diagram useful during review.
Dependency chains reveal single points of failure
Suppose:
status service
↓
database
↓
storage
and both status serving and role administration depend on the same database.
If that database fails, multiple functions fail together.
Architecture review should identify those shared dependencies.
The same applies to defensive controls:
auth logs + role-change alert + investigation timeline
↓
same log collector
If the collector fails, several “layers” may disappear together.
Activity: build the evidence-backed architecture
Use your prior artifacts from Weeks 1–16.
Include at minimum:
- 8 components/assets;
- 5 required functions;
- 5 data/action flows;
- 4 trust boundaries;
- 4 identities/roles;
- 5 evidence sources;
- 3 defensive controls;
- 2 recovery dependencies.
For every item, note which week/artifact supports it.
Separate unknown from missing
If you cannot prove a relationship, mark it:
UNKNOWN: database backup encryption state
EVIDENCE NEEDED: backup configuration + restore/test record
Do not fill the gap with a confident assumption.
Architecture review is allowed to reveal that the architecture is incompletely documented.
Build the first section of your Defensive Architecture Review
Include:
- system purpose;
- required functions;
- architecture diagram;
- asset/component inventory;
- identity/authority relationships;
- trust boundaries;
- evidence sources;
- shared dependencies; and
- known unknowns.
Lesson 2 tests whether the controls in that architecture actually cover the failure paths you care about.
process flow
Evidence to Defensive Architecture Decision
Mission
Define required functions and properties that the architecture must preserve.
Reconstruct
Build components, identities, flows, trust boundaries, dependencies, and evidence sources from prior artifacts.
Map Controls
Connect preventive, detective, and recovery controls to explicit threat/failure paths.
Test Dependencies
Identify common control dependencies, blind spots, and control failure modes.
Find Gaps
Write evidence-backed conditions where coverage is absent, partial, stale, or unknown.
Prioritize
Rank architecture work using risk, mission, dependencies, deadlines, and uncertainty.
Define Verification
Specify negative, positive, recovery, and control-health tests for recommendations.
Defend Decision
Communicate top actions and limitations without claiming complete security.
Read this concept flow as plain text
- Mission. Define required functions and properties that the architecture must preserve.
- Reconstruct. Build components, identities, flows, trust boundaries, dependencies, and evidence sources from prior artifacts.
- Map Controls. Connect preventive, detective, and recovery controls to explicit threat/failure paths.
- Test Dependencies. Identify common control dependencies, blind spots, and control failure modes.
- Find Gaps. Write evidence-backed conditions where coverage is absent, partial, stale, or unknown.
- Prioritize. Rank architecture work using risk, mission, dependencies, deadlines, and uncertainty.
- Define Verification. Specify negative, positive, recovery, and control-health tests for recommendations.
- Defend Decision. Communicate top actions and limitations without claiming complete security.