Faysal Ahmed
Chapter 4

Requirements and Stakeholder Management

Gathering, analysing, and prioritising requirements while managing stakeholder expectations.

The Two Types of Requirements

TypeDefinitionExamples
FunctionalWhat the system must doProcess an order, generate a report, authenticate a user
Non-functional (NFRs)How the system must behave< 200 ms response time, 99.9 % uptime, PCI-DSS compliant
Table 4.1 — Functional vs non-functional requirements.
Watch out

Ignoring NFRs is the most common cause of architectural failure. A system that meets every functional requirement but crashes under load, leaks data, or cannot be deployed is not successful.

Gathering Requirements

Techniques

TechniqueBest ForTime Investment
InterviewsUncovering hidden needs from key stakeholders30-60 min each
WorkshopsAligning groups, discovering conflicts2-4 hours
Document analysisUnderstanding existing systems, SLAs, contractsVaries
Event StormingComplex domains with many business events2-6 hours
User story mappingVisualising user journeys end-to-end2-4 hours

The RINSE Technique

A simple checklist for each requirement:

  • RRelevant to the business outcome?
  • IIndependent of implementation (what, not how)?
  • NNegotiable (not a hard constraint)?
  • SSpecific enough to test?
  • EEstimated (rough size known)?

Managing Trade-offs

Requirements often conflict. Faster delivery may mean less flexibility. Higher security may mean worse UX. Use a trade-off matrix to make these explicit:

DecisionBenefitCostRisk
Managed database (RDS)Reduced ops burdenVendor lock-in, higher costMedium
Self-hosted databaseFull control, lower costOps overhead, scaling effortHigh
Serverless functionsNo infra managementCold starts, vendor couplingLow
KubernetesPortability, ecosystemOperational complexityMedium
Table 4.2 — Example trade-off matrix for deployment infrastructure decisions.

Stakeholder Management

Stakeholder Map

Identify every group that cares about the system:

GroupCares AboutKey Concern
SponsorsBudget and timelineROI, delivery date
UsersUsability and performanceDoes it make my job easier?
OperationsReliability and observabilityCan I keep it running?
SecurityCompliance and threat postureAre we exposed?
DevelopersClarity and autonomyCan I build this without friction?
Figure 4.1 — Key stakeholder groups and their primary concerns.

Communication Plan

StakeholderFrequencyFormatFocus
SponsorsMonthlySlide deckBudget, timeline, risks
Product teamWeeklyWalkthroughFeature alignment
DevelopersOngoingADRs, diagramsDesign decisions
OperationsPer releaseRunbooksDeployment, monitoring
Table 4.3 — Sample communication cadence by stakeholder group.
Pro tip

Create a RACI matrix (Responsible, Accountable, Consulted, Informed) for every major architectural decision. It prevents surprises and ensures the right people are involved at the right time.


Next: Chapter 5 — Architecture Patterns and Design