Before implementation
Requirements shape architecture, data flows, trust boundaries, identities, dependencies, logging, and failure behavior.
Lesson A11.2
“Make it secure†is not a requirement. A strong security requirement tells the team what behavior is expected, where it applies, who owns it, what evidence should support it, what result counts as acceptable, and what future changes should cause it to be reviewed again.
This lesson turns broad security goals into traceable design requirements that can guide architecture, implementation, code review, safe validation, release decisions, and maintenance.
Lesson Progress
High School Advanced • A11: Secure Software Architecture • Lesson 2 of 10
Readiness Check
0/4 ready
Professional Hook
Imagine a fictional engineering team receives this statement: “The student portal must be secure.â€
The product owner may think it means only approved users can see records. The architect may think it means strong identity. A developer may think it means input validation. A monitoring analyst may think it means complete logging. A release owner may think it means no high-severity findings.
All of those concerns can matter, but the original sentence does not tell the team which behavior is required or how success will be demonstrated.
Good security requirements reduce ambiguity before ambiguity turns into inconsistent design.
Learning Objectives
Explain why vague statements such as “make it secure†are not strong enough to guide architecture, implementation, review, testing, or release.
Write security requirements with clear scope, expected behavior, ownership, evidence, acceptance criteria, and change triggers.
Distinguish business goals, security goals, security requirements, implementation choices, assumptions, and validation evidence.
Evaluate fictional requirements for identity, authorization, data handling, logging, resilience, configuration, dependencies, and deployment readiness.
Build a secure requirements register that becomes a traceable input to later A11 architecture, review, validation, and release work.
Why It Matters
Architecture reviews need to know what behavior they are reviewing for. Code reviewers need to know which security assumptions matter. Testers need expected results. Release owners need blocking criteria. Operations teams need to know what behavior should remain observable after release.
A clear requirement becomes the common reference point across all of those activities.
Requirements shape architecture, data flows, trust boundaries, identities, dependencies, logging, and failure behavior.
Requirements guide code review, configuration review, dependency choices, and validation plans.
Requirements support monitoring expectations, change triggers, exception review, and maintenance decisions.
Core Framework
One of the most important architecture skills is keeping different kinds of statements separate. A business goal is not a security requirement. A requirement is not an implementation choice. An implementation choice is not validation evidence.
Business goal
A business goal explains purpose, but it does not define security behavior.
Security goal
A security goal is useful direction, but it can still be too broad for implementation and validation.
Security requirement
This is specific enough to influence design, review, and test planning.
Design / implementation decision
This is one way to satisfy the requirement, not the requirement itself.
Validation evidence
Evidence supports a claim but does not replace the requirement.
Requirement Quality
Weak
The system should have good access control.
Stronger
Only approved staff roles may perform account-recovery actions, and every successful or denied recovery attempt must create an audit event.
The stronger version identifies actors, action, expected enforcement, and evidence behavior.
Weak
All data must always be encrypted.
Stronger
Student-support records must use approved protected transport between the browser, application, API, and storage services, and approved storage protection must be enabled for persistent records.
The stronger version identifies where the requirement applies.
Weak
Security will check this later.
Stronger
The application team owns implementation, the security reviewer owns requirement review, and the release owner confirms evidence before release.
Explicit ownership reduces abandoned requirements.
Weak
The login should be secure.
Stronger
The application must require the approved identity provider for staff access and must reject staff sessions that do not contain the required approved role claim.
The stronger statement can be tied to expected outcomes in an authorized test environment.
Weak
Logging is enabled.
Stronger
Privileged account changes must generate audit events containing actor, action, target reference, result, timestamp, and correlation identifier without recording secret values.
The requirement says what defenders should be able to verify.
Weak
This requirement is permanent and never needs review.
Stronger
Re-review this requirement when a new privileged role, new data category, new identity provider, or new external integration is introduced.
Changes can invalidate earlier assumptions.
Vocabulary
A statement describing what the organization, user, or product needs to accomplish.
A broad protection objective such as confidentiality, integrity, availability, least privilege, privacy, or auditability.
A specific, reviewable statement describing required security behavior, scope, ownership, evidence, and success conditions.
A condition that must be satisfied before a requirement can be considered complete or acceptable.
A belief used by the design that has not necessarily been proven and may need evidence or future review.
A limit that influences the design, such as required technology, policy, performance, budget, compatibility, or regulation.
A safeguard, process, design feature, or operational measure used to reduce risk or enforce a requirement.
The connection from requirement to architecture, implementation, review, validation, release, and later maintenance evidence.
A future event that requires the requirement or its supporting evidence to be reviewed again.
The role accountable for keeping the requirement accurate, meaningful, and appropriately reviewed.
The role or team responsible for producing or maintaining the evidence that supports the requirement.
Risk remaining after the requirement, controls, evidence, and exceptions are considered.
Requirement Domains
Not every application needs the same requirement set. The domains below are a review framework: they help teams ask whether important security behavior has been defined.
Fake Dashboard
Fictional training data — requirement governance only
Security requirements
24
18 Confirmed, 4 Conditional, 2 Unknown
Requirements with owners
23 / 24
Dependency review ownership missing for one critical component
Traceability coverage
88%
Three requirements lack current validation evidence
Open change triggers
4
New integration, role change, dependency baseline update, logging schema change
Fake SOC Alert
Source: Fictional Requirements Review • Time: 10:32
Requirements Register
A professional requirements register is more than a list of sentences. Each requirement should connect behavior, ownership, evidence, acceptance, status, and future review conditions.
Approved staff access must use the workforce identity provider, and disabled workforce accounts must not receive new application sessions.
Owner
Identity Owner + Application Owner
Evidence
Identity configuration summary, application design note, authorized test result, release checklist.
Acceptance
Approved active staff can establish expected sessions; disabled fictional staff identities cannot.
Change trigger
New identity provider, new staff role, recovery-flow change, or session architecture change.
Counselors may view only records for students assigned to them by the approved assignment source.
Owner
Product Owner + Application Owner
Evidence
Authorization design, peer-review evidence, assignment mapping, authorized positive and negative test results.
Acceptance
Assigned counselor succeeds; unassigned counselor receives expected denial; no record data is returned for the denied request.
Change trigger
New counselor role, assignment-source change, new record type, or new privileged workflow.
The scheduling integration may receive appointment date, time, and fictional student reference code but must not receive counseling-note content.
Owner
Data Owner + Integration Owner
Evidence
Approved field list, data-flow diagram, integration contract, validation result.
Acceptance
Only the approved minimum fields appear in the supplied integration evidence.
Change trigger
New scheduling feature, new field request, new vendor, or changed business purpose.
Privileged account changes must create audit events with actor, target reference, action, result, timestamp, and correlation identifier without recording secret values.
Owner
Application Owner + Security Monitoring Owner
Evidence
Logging design, supplied sample events, validation results, source-health status.
Acceptance
Required fields are present for approved test events and forbidden secret values are absent.
Change trigger
New privileged action, log schema change, telemetry platform change, or privacy requirement change.
The core student-record workflow must remain available when the external notification provider is unavailable.
Owner
Service Owner + Reliability Owner
Evidence
Architecture design, safe failure-mode test, queue behavior summary, recovery evidence.
Acceptance
Core record workflow remains functional; notification failure is recorded and handled according to the approved retry design.
Change trigger
Notification provider change, queue change, major workflow redesign, or recovery architecture change.
Every business-critical software dependency must have a recorded owner, approved source, version, support status, and review trigger.
Owner
Engineering Lead + Dependency Owner
Evidence
Dependency inventory, approval record, support note, update policy.
Acceptance
No business-critical dependency remains without ownership or source metadata.
Change trigger
New dependency, major version change, support-status change, supplier change, or build-system change.
Production release requires all blocking security requirements to be Confirmed or governed by an approved, time-bounded exception.
Owner
Release Owner + Risk Owner
Evidence
Requirements matrix, exception register, approval record, rollback plan, monitoring readiness.
Acceptance
No blocking requirement is Unknown without formal disposition.
Change trigger
Release-process change, new blocking requirement category, exception-policy change, or major deployment-model change.
Fake Log Panel
[08:55] REQ-ID-01 owner=Identity+Application status=CONFIRMED [09:12] REQ-AUTHZ-03 assigned-counselor rule linked to design decision ADR-17 [09:40] REQ-DATA-02 approved field list pending Data Owner signature [10:05] REQ-LOG-04 sample audit events confirm required fields; no secret values observed [10:32] REQ-DEP-01 dependency owner missing -> status UNKNOWN [11:10] REQ-RES-02 failure-mode evidence partial -> status CONDITIONAL [11:44] REQ-REL-01 release rule approved by Release Owner + Risk Owner
Training note: this is fake data for defensive analysis practice only.
Requirement Review
Who or what does the requirement apply to?
What specific security behavior is expected?
Where in the architecture should the behavior be enforced?
Who owns the requirement?
Who owns the implementation evidence?
What evidence can support the requirement?
What result counts as acceptable?
What result would block release or require an exception?
What assumptions or dependencies affect the requirement?
What future changes should reopen the requirement?
What sensitive information must not appear in validation or logging evidence?
How will the requirement remain traceable through review, release, operation, and maintenance?
Analyze the Evidence
Requirement Anti-Patterns
Weak example: The application must be very secure.
Why it fails: Words like secure, strong, safe, robust, and hardened do not identify required behavior.
Repair: Describe the actors, action, data, boundary, expected enforcement, evidence, and success condition.
Weak example: The application must use Tool X for authorization.
Why it fails: A product may become dependent on one implementation before the actual security need is understood.
Repair: State the security behavior first; record the approved implementation separately.
Weak example: Everything must be logged forever.
Why it fails: The statement ignores privacy, cost, retention, relevance, source health, and sensitive values.
Repair: Define which events matter, which fields are needed, which values are forbidden, retention, access, and owner.
Weak example: Admins are protected by strong controls.
Why it fails: The team cannot tell how to prove or review the statement.
Repair: Add expected evidence and acceptance criteria.
Weak example: Someone must review critical dependencies.
Why it fails: The requirement can remain open indefinitely.
Repair: Assign a dependency owner, evidence owner, and escalation path.
Weak example: Requirement approved once and never reviewed again.
Why it fails: New roles, data, dependencies, integrations, or deployment patterns can invalidate old assumptions.
Repair: Define the changes that reopen the requirement.
Weak example: The service must never fail or experience any security problem.
Why it fails: The requirement cannot be realistically validated and may hide the need for resilience and recovery.
Repair: Define availability, recovery, safe failure behavior, monitoring, and acceptable residual risk.
Design Traceability
Use REQ-AUTHZ-03 as a traceability example. The requirement does not end when it is approved. It should remain connected to later evidence.
| Lifecycle stage | Traceability evidence | Question answered |
|---|---|---|
| Plan | Counselors need access to assigned student-support records. | Why does the feature exist? |
| Requirement | REQ-AUTHZ-03 defines assignment-based access. | What behavior is required? |
| Design | Central authorization service checks the approved assignment source. | Where should enforcement happen? |
| Implementation review | Peer review confirms the protected path uses the approved authorization interface. | Does implementation follow the design? |
| Validation | Assigned counselor succeeds; unassigned counselor receives denial; denied request returns no record data. | Does the requirement behave as expected? |
| Release | Requirement status is Confirmed and linked to current evidence. | Is the evidence sufficient for release? |
| Maintenance | New counselor role is introduced. | Which change trigger requires renewed review? |
Safe Fictional Lab
Use the fictional Northbridge portal. Your job is to rewrite vague statements into requirements that are specific, scoped, owned, evidence-linked, testable, and change-aware.
Weak requirement 1
“Use strong authentication.â€
Weak requirement 2
“Protect student data.â€
Weak requirement 3
“Log suspicious actions.â€
Weak requirement 4
“Keep the portal available.â€
Lab boundary
Do not inspect or test any real application. Use only fictional requirements, invented architecture context, and supplied evidence.
Scenario Decision Lab
A fictional product owner writes: “Make access secure for counselors.†Engineering wants to begin implementation immediately, but no one has defined which records counselors may access or what evidence should prove the rule.
Scenario Decision Lab
The scheduling integration was approved to receive three minimum fields. A later feature request asks the vendor to receive a fourth sensitive field that was not included in the original purpose or requirement.
Analyze the Evidence
Advanced Challenge
Write one fictional requirement for a high-impact account-recovery workflow. Your requirement should be strong enough that an architect, developer, reviewer, tester, release owner, and operations team can all use it.
Business purpose
Actors and roles
Protected action
Authorization expectation
Required evidence
Audit expectation
Forbidden sensitive logging
Acceptance criteria
Requirement owner
Evidence owner
Blocking condition
Change triggers
A strong answer does not need to be long. It needs to be unambiguous, traceable, evidence-based, and reviewable.
Defender Habits
Skill Check
Check Your Understanding
Choose your answers first. Explanations appear only after submission.
Portfolio Prompt
Create the second artifact for your A11 Secure Software Design Assessment: a fictional secure requirements register with at least eight requirements spanning identity, authorization, data handling, logging, resilience, configuration, dependencies, and release. For each requirement include ID, scope, owner, evidence, acceptance criteria, status, assumptions or dependencies, and change trigger.
Confidence / Readiness Reflection
A11.3 will use these requirements as inputs to software threat modeling. Before moving on, make sure you can explain the difference between a goal, a requirement, a design choice, and evidence.
I can rewrite a vague security goal into specific expected behavior.
I can identify requirement scope, owner, evidence, acceptance criteria, and change triggers.
I can keep implementation technology separate from the underlying security requirement.
I can mark a requirement Unknown when required evidence or ownership is missing.
I can explain how requirements guide threat modeling, code review, safe validation, release, and maintenance.
Portfolio Build Guide
Give each requirement an identifier such as REQ-AUTHZ-03 so architecture, review, testing, release, and maintenance evidence can refer to it consistently.
Avoid combining five unrelated expectations into one giant sentence. Separate identity, authorization, logging, data, and resilience when their evidence differs.
Use states such as Confirmed, Conditional, Unknown, Blocked, or Not Applicable and explain what evidence supports the status.
Name the accountable role for the requirement and the role responsible for producing evidence.
State what result would demonstrate the requirement in an authorized test or review context.
If the requirement depends on an identity provider, assignment source, vendor, data classification, or architecture boundary, make that dependency visible.
Record the future changes that should reopen the requirement.
Show how a requirement maps to design, implementation review, validation evidence, release status, and maintenance trigger.
Key Takeaways
Lesson Safety Boundary
This lesson does not authorize testing, scanning, probing, exploitation, credential attacks, bypass attempts, fuzzing, or access to real applications, APIs, accounts, repositories, devices, or networks. Use fictional or explicitly authorized evidence only.
Lesson Complete
You now have a requirements framework that can guide the rest of A11. Next, A11.3 uses those requirements, architecture context, data flows, trust boundaries, dependencies, and assumptions to build a safe Software Threat Model.