Chicken or egg?
Which comes first: functional or non-functional
requirements
About
10+ years in IT
8+ years on a management position
6+ years of Agile experience
Non-functional requirement is a
requirement that specifies criteria that
can be used to judge the operation of a
system, rather than specific behaviors
FR vs NFR
Functional Requirements Non-Functional Requirements
Product Features Product Properties
Describe the actions of user Describe the experience of user. How easy to use? How
quick it executes?
Functions that can be captured in use cases Global constraints that result development and
operational cost
Can be traced as individual module of program Is a basement of program module
Lets go Deep into Details
What is the source of requirements?
Company’s Strategic Goals
are the Source of
Requirements
Business
User
System
Sponsor Point of View
Scope of the Project
Business Objectives
User’s Point of View (UI)
User Goals
Functional Requirements
What the system does
Non-Functional
Requirements
Who well System does it
Epic/Feature
User Story
Acceptance
Criteria
Type of NFRs
Important to User Important to Team Important to business
Performance Maintainability Time to market
Security Portability Cost
Usability Reusability Flexibility
Compatibility Testability Speed
Accessibility Naming Convention
Flexibility Tech Stack
Disaster Recovery Monitoring
NFR Identification
Interviews
Brainstorm
Prototyping
Workshops
Questionnaire
End-User Requirements
SLA, SLO
Example
SSL, 2048 bit encryption, Key stored at Key Vault, 1000 ops/sec
Caching of processed files on HDD
Retrieve Document Pages
Page-by-Page Navigation
Enabler & Feature
NFR Evaluation
Identify
Quality
Factors
Define
Measurable
Criteria
Define
Acceptance
Criteria
NFR
List of
Enablers
Context>Attribute>Metric
System Context
Attribute
Metric
Should Value
Must Value
Add new Item (Context)
Fast enough (Shall Be)
# of ms to finish
Should <500ms
Must <1000ms
Impact
Pros & Cons Analysis
Some Examples of NFR
99,9% uptime
No downtime deployment
Usage of Specific Provider
Response time
Browsers & Platforms
App should be deployed at 3 different AWS Zones
Build your system
Non functional Requirements
Functional Requirements
User Facing Functionality & UI
Business Goal
That leads to…
Thank you!
Lets be in touch!
IN: ua.linkedin.com/in/labunskiy
Mail: labunskiy@outlook.com
FB: facebook.com/Labunskiy
Medium: medium.com/@labunskiy

Functional vs Non-functional Requirements - Which comes first?