S5 - Working With System Requirements
S5 - Working With System Requirements
System
Requirements
Memi Lavi
www.memilavi.com
Two Types of Requirements
• Business Flows
• Business Services
• User Interfaces
The Other Kind…
Requirements are
Important
Functional Requirements!
Fast
Performance
task?
Examples:
- How much time will it take for the API to save the user data in the database?
- How much time will it take to read a single file from the file system?
Throughput
Examples:
- How many users can be saved in the database in a minute?
Without Crashing
Load vs Throughput
Throughput
Load
Load vs Throughput
• Helps With:
• Designing Queries
• Storage Planning
Data Volume
• Two Aspects:
• Data Growth
Data Volume
• Example:
Simultaneously
Concurrent Users vs Load
Rule of Thumb:
Concurrent = Load X 10
SLA (Service Level Agreement)
Source: https://azure.microsoft.com/en-us/support/legal/sla/cosmos-db/v1_1/
SLA (Service Level Agreement)
Never
start working before setting them!
Who Defines
Non-Functional Client? System
Requirements? Analyst?
Defining Non-Functional Requirements
Always!
Defining Non-Functional Requirements
10 ms!
Defining Non-Functional Requirements
• Architect’s Roles:
• Discuss numbers
Non-Functional Requirements
Conclusion
• Define what the system will have to deal with