No history yet

Requirement Decomposition

From Ambiguity to Architecture

Business goals rarely arrive as neat, technical specifications. They're often broad statements of intent: "We need to improve customer engagement" or "Let's build a more resilient supply chain." As a cloud leader, your first job is to translate this ambiguity into a concrete blueprint. This process is called decomposition, and it's about breaking down a high-level vision into the specific, measurable requirements that will define your architecture.

The goal is to move past a simple feature list. Anyone can list what a system should do. A robust architecture is defined by how well it does it under stress, at scale, and over time. This requires separating the functional requirements from the non-functional ones.

Separating Function from Form

Think of it this way: functional requirements describe the system's behavior, while non-functional requirements (NFRs) describe its character. One is about action, the other about quality.

  • Functional: "The system allows users to stream video content."
  • Non-functional: "The system must begin video playback within 1.5 seconds for 99.9% of users, even with 50,000 concurrent viewers."

The first statement is easy. The second one is what keeps architects up at night. It has profound implications for your choice of CDN, storage, and network infrastructure.

These NFRs are often called the "" because many of them end in "-ility": scalability, availability, reliability, maintainability, and usability. These are the qualities that determine if a system is a reliable enterprise tool or a frustrating toy.

Functional requirements get the project approved. Non-functional requirements ensure it succeeds in the long run.

Uncovering the Real Requirements

Users and even business leaders don't always know how to articulate NFRs. They'll say they want the system to be "fast" or "never go down." Your job is to quantify those desires. A structured approach is essential here, and one of the most effective methods is the (QAW).

A QAW is a facilitated session that guides stakeholders to think in terms of concrete scenarios. Instead of asking, "How secure should it be?" you'd pose a scenario: "An attacker attempts a DDoS attack with 1 million requests per minute. Describe what happens from the user's perspective and the system's perspective."

This method transforms vague qualities into testable, specific requirements that can directly inform architectural choices. The process typically involves presenting business goals, brainstorming and prioritizing scenarios, and then refining the quality attribute requirements that emerge from them.

Mapping Concerns to Drivers

Not all requirements are created equal. A system might have dozens of NFRs, but only a few will fundamentally shape the design. These are your —the constraints that have the broadest impact and force the most significant trade-offs.

Identifying these drivers requires understanding your stakeholders and their concerns. The CEO cares about time-to-market and cost. The Chief Security Officer cares about compliance and data protection. The end-user cares about performance and ease of use. A Stakeholder Concern Matrix can help map these competing interests.

StakeholderPerformanceAvailabilitySecurityCost
CEOMediumHighMediumHigh
Head of SecurityLowHighHighMedium
Marketing LeadHighMediumLowMedium
End UserHighHighLowN/A

In the example above, Availability and Performance are high-priority concerns for multiple influential stakeholders. These are likely to become key architectural drivers. This doesn't mean security and cost are ignored, but it does mean that when a trade-off is necessary, the design will lean toward preserving performance and uptime.

This process helps define the system's scope and boundaries. It clarifies what's critical for success and what's a secondary concern, giving you a defensible rationale for your architectural decisions.

Cloud architecture design is a complex process requiring both technical expertise and architectural knowledge to develop solutions from frequently ambiguous requirements.

Now, let's test your understanding of these core concepts.

Quiz Questions 1/6

In the context of cloud architecture, what is the primary purpose of 'decomposition'?

Quiz Questions 2/6

Which of the following is a non-functional requirement (NFR)?

By mastering these decomposition techniques, you transform vague business requests into a clear set of architectural imperatives. This foundational work is the most critical step in building cloud systems that are not just functional, but also resilient, scalable, and aligned with true business needs.