SlideShare a Scribd company logo
Non-Functional Requirements
for the Solution Architect and Business Analyst
Last Modified: 2015-11-20
Author: Warren Weinmeyer
Document Version: 1.3
Table of Contents
1 Purpose of this Document........................................................................3
2 Introduction............................................................................................3
2.1 Basics of the SA/BA Relationship..............................................................3
2.2 Definition of Non-functional Requirements.................................................4
2.3 References............................................................................................5
3 A Taxonomy For Non-functional Requirements........................................6
3.1 High-Level NFR Classification...................................................................6
3.2 Detail-Level NFR Classification.................................................................7
4 Types of Stakeholders...........................................................................13
5 The Non-Functional Requirements Framework......................................14
5.1 NFR Characteristic to Stakeholder Mapping..............................................14
...............................................................................................................14
5.2 Stakeholders to SA/BA Mapping.............................................................15
5.3 The Non-Functional Requirements RACI..................................................16
6 Suggested Improvements .....................................................................19
1 Purpose of this Document
This document leverages published best practices to define a framework of Non-functional
Requirements (NFR) along with a methodology for assigning responsibilities for each NFR to either the
BA or SA.
This guidance is especially useful for:
1. Providing a reasonably rigorous classification, definition and master-list of the possible types of
non-functional requirements that might be considered for any solution (but refer to Suggested
Improvements section at the end of this document).
2. Providing a best-practice based and reasonably objective methodology for assigning role
responsibilities when confusion or disputes arise between the SA and BA
2 Introduction
Architecture leading thought and best practices continue to evolve. Consequently, many organizations
experience some degree of uncertainty regarding the practical matter of what exactly the role of an
Architect should be and this uncertainty can be reflected as ambiguity in the organization’s governance
model and role definitions.
Business Analysis leading thought also continues to evolve, but more slowly because the discipline has
more maturity and history than Architecture.
It is important to note that the evolution of thought leadership within individual disciplines, like
Architecture and Business Analysis (but also disciplines like Project Management, Business Architecture,
Security, etc.), largely occurs within the bubble of that discipline and commonly results in overlaps in the
“jurisdiction” claimed by other disciplines. This leaves the responsibility for ensuring harmonious role
mandates to each individual organization to work out (though complex efforts to rationalize these roles,
such as Skills Framework for the Information Age, do exist).
At the project level, the Solution Architect (SA) role is a relative newcomer to the core project delivery
team compared to the Business Analyst (BA) role and BAs in many companies are accustomed to taking
responsibility for tasks and deliverables that are better assigned to a Solution Architect (SA). When there
is overall uncertainty about what an Architect does, there is fertile ground for inter-personal conflict.
2.1 Basics of the SA/BA Relationship
In a well-functioning project, the BA and SA have a close working relationship – in fact, it should be
characterized more as a symbiotic partnership. With roles so intertwined, it is common for people to
either not understand the difference between a BA and SA, and/or to not see a need for having two
different roles. However, there are differences in both skills and perspective between the two roles that
justify this separation.
Often, the relationship between BA and SA is summarized as the BA is responsible for the requirements
and the SA for the solution. However, Requirements and Solution Attributes are simply two faces of the
same coin, and the reality is that both BAs and SAs are involved and concerned with both Requirements
and Solution Attributes, but the types of requirements and attributes they are primarily concerned with
can have different focus, as is their relative competency to be “Responsible” for specifying them. It does,
however, make sense to maintain the BA as “Accountable” for Requirements overall and the SA to be
“Accountable” for Solution Specification overall.
As an industry norm, BAs have a greater understanding of the Business as well as current best practices
in business analysis and SAs have a greater understanding of technology as well as current best practices
in architecture (security, strategic alignment, design patterns, technology trends, etc.).
The BA complements their strong understanding of the Business with a good functional understanding
of technology, and the BA is often described as translating between Business and IT. The SA
complements their strong understanding of technology with a good functional understanding of the
Business, and the Architect is often described as integrating the Business and IT.
The BA has accountability to the Project Stakeholders for a solution that meets Stakeholder
requirements, and their signature deliverable is the Detailed Requirements document. The SA is
accountable for a fit-for-purpose solution for the project in the context of the needs of the larger
enterprise, and their signature deliverable is the Solution Architecture Description.
Often, the deviation between the requirements of the greater enterprise and the Project Stakeholders
revolves around the compatibility of the solution to the current technology and information landscape,
the future strategic roadmap, and leveraging the solution functionality by other business functions/units
in the enterprise. These types of concerns tend to be reflected in the non-functional, rather than the
functional, characteristics of the solution, so this is often the area where SAs and BAs can have conflict.
2.2 Definition of Non-functional Requirements
Non-functional requirements define the overall qualities or attributes of the resulting system and place
restrictions on the product being developed, the development process, and specify external constraints
that the product must meet.
Wikipedia defines non-functional requirements as follows:
In systems engineering and requirements engineering, a non-functional requirement is a requirement
that specifies criteria that can be used to judge the operation of a system, rather than specific behaviors.
This should be contrasted with functional requirements that define specific behavior or functions. The
plan for implementing functional requirements is detailed in the system design. The plan for
implementing non-functional requirements is detailed in the system architecture.
Broadly, functional requirements define what a system is supposed to do whereas non-functional
requirements define how a system is supposed to be. Functional requirements are usually in the form of
"system shall do…", while non-functional requirements are "system shall be… ".
Non-functional requirements are often called qualities of a system. Other terms for non-functional
requirements are "constraints", "quality attributes", "quality goals", "quality of service requirements"
and "non-behavioral requirements". Informally these are sometimes called the "ilities", from attributes
like stability and portability. Qualities (i.e., non-functional requirements) can be divided into two main
categories:
1. Execution qualities, such as security and usability, which are observable at run time.
2. Evolution qualities, such as testability, maintainability, extensibility and scalability, which are
embodied in the static structure of the software system.
(For example:)
A system may be required to present the user with a display of the number of records in a database. This
is a functional requirement. How up-to-date this number needs to be is a non-functional requirement. If
the number needs to be updated in real time, the system architects must ensure that the system is
capable of updating the displayed record count within an acceptably short interval of the number of
records changing.
Other sources offer very similar definitions for Non-Functional Requirements
2.3 References
The following sources are referenced in this document:
• Non-Functional Requirements, FURP, RAS, ISO 9126, Wikipedia
• Representing and Using Non-Functional Requirements: A Process-Oriented Approach, John
Mylopoulos, Lawrence Chung, Brian Nixon, Dept of Computer Science, University of Toronto
• Defining Non-Functional Requirements, Ruth Malan and Dana Bredemey, Bredemeyer
Consulting
• A Framework for the Measure of Software Quality, Joseph P. Cavano, James A. McCall, Rome Air
Development Center
• Organizational Requirements Engineering, Prof. Dr. Armin B. Cremers, Sascha Alda, B-IT
• ISO/IEC 9126 In Practice: What Do We Need to Know?, P. Botella, X. Burgués, J.P. Carvallo, X.
Franch, G. Grau, J. Marco, C. Quer, Barcelona Tech
• ISO/IEC 25010 International Standard – Final Draft, ISO/IEC
• Discover Non-Functional Requirements, http://www.semanticarchitecture.net
3 A Taxonomy For Non-functional Requirements
In order to attack the problem of attaching RACI to non-functional requirements, it is necessary to
establish a foundational list of these requirements. The following sections are largely guided by ISO/IEC
Standards 9126 and 25010/SQuaRE, to which we add in some minor supplementation from similar
quality frameworks like FURPS and RADC to create a robust list of attributes that can be applied to any
software/hardware solution (but refer to the Suggested Improvements section at the end of this
document). The Requirements for any particular solution are directly derivable from this list by selecting
which attributes are relevant and specifying the quality metric that must be achieved in order to meet
the stakeholder needs.
3.1 High-Level NFR Classification
ISO/IEC suggests solution attributes can be divided into 3 main categories, called “Qualities”; these
Qualities serve as a top-level breakdown of non-functional requirements:
• Intrinsic Qualities: characteristics of the product/solution itself
• Usage Qualities: characteristics related to outcomes of user interaction with the
product/solution
• External Qualities: market-related characteristics associated with the product/solution
Within these 3 top-level categories, we can define sub-categories called "Characteristics" that describe
fairly high-level qualities of the product/solution:
Intrinsic Qualities
Characteristic Description
Functional Suitability
The degree to which a product functions that meets stated and implied needs when used under
specified conditions
Performance Efficiency The performance relative to the amount of resources used under stated conditions
Compatibility
The degree to which a product can exchange information with other products, and/or perform
its required functions, while sharing the same hardware or software environment
Usability
The degree to which a product can be used by specified users to achieve specified goals with
effectiveness, efficiency and satisfaction in a specified context of use
Reliability
The degree to which a product performs specified functions under specified conditions for a
specified period of time
Security
The degree to which a product protects information and data so that persons or other products
have the degree of data access appropriate to their types and levels of authorization
Maintainability
The degree of effectiveness and efficiency with which a product or system can be modified by
the intended maintainers
Portability
The degree of effectiveness and efficiency with which a system, product or component can be
transferred from one hardware, software or other operational or usage environment to another
Usage Qualities
Characteristic Description
Effectiveness The accuracy and completeness with which users achieve specified goals
Efficiency
The resources expended in relation to the accuracy and completeness with which users
achieve goals
Satisfaction
The degree to which user needs are satisfied when a product or system is used in a specified
context of use
Freedom from Risk
(Safety)
The degree to which a product or system mitigates the potential risk to economic status,
human life, health, or the environment
Context Coverage
(Usability Scope)
The degree to which a product or system can be used with effectiveness, efficiency, freedom
from risk and satisfaction in both specified contexts of use and in contexts beyond those
initially explicitly identified
External Qualities
Characteristic Description
Service Cost
The financial burden undertaken by the enterprise to implement, support, and retire the
product or system
Vendor Risk Mitigation
The degree to which support, cost and longevity risks the Vendor can demonstrate there are
minimal risks associated with selecting a product from them
Product Risk Mitigation
The degree to which functionality, cost and longevity risks associated with investing in the
product can be mitigated
3.2 Detail-Level NFR Classification
The Characteristics listed above are still at too high a level to be translatable into clear requirements; we
can elaborate on each Characteristic with Sub-Characteristics (largely drawn from ISO/IEC 25010, with a
few renamed for better clarity), as follows:
Quality Characteristic
Sub-
Characteristic
Description Notes or Example Metric
Intrinsic
Functional
Suitability
Functional
Appropriateness
The degree to which the functions
facilitate the accomplishment of
specified tasks and objectives
Does not expose the user to
unnecessary steps, functions,
or information
Functional
Completeness
The degree to which the set of
functions covers all the specified
tasks and user objectives
The % of desired functionality
present in the product
Functional
Correctness
The degree to which a product
provides the correct results with the
needed degree of precision
The ratio of incorrect to total
of processed transactions;
integrity of information
processed
Functional
Targeting
The degree to which a product
supports required functionality
without introducing ancillary,
unwanted functionality
The ratio of the % of desired
functionality present in the
product to the total functions
offered by the product
Performance
Efficiency
Time Behavior
The degree to which the response and
processing times and throughput
rates of a product meet requirements
Throughput; response time;
application load time; screen
open/refresh time; calculation
time; import/export time;
report/query time
Resource
Utilization
The degree to which the amounts and
types of resources used by a product
meet requirements
Bandwidth, cpu utilization,
memory utilization, storage
Capacity
The degree to which the maximum
limits of a product or system
parameter meet requirements
Refers to initial planned
capacity, not scalability to
future levels; transactions per
unit time; maximum
database/file size; maximum
number of users/connections
Compatibility Co-existence
The degree to which a product can
perform its required functions
efficiently while sharing a common
environment and resources with other
products, without detrimental impact
on any other product
Alignment to technical
standards; Product
certification; awareness of
resource contention (avoids
direct hardware access)
Interoperability
The degree to which two or more
systems, products or components can
exchange information and use the
information that has been exchanged
Alignment to communication,
integration, and information
standards
Usability
Obvious
Applicability
(ISO: Appropriateness
Recognizability)
The degree to which users can
recognize whether a product or
system is appropriate for their needs,
without having to operate the system
first
From initial impressions,
demos, tutorials, docs, etc.
Intuitiveness
(ISO: Operability)
The degree to which a product or
system has attributes that make it
easy to operate and control
The degree to which the
product can be used without
specific training
Learnability
The degree to which a product or
system can be used by specified users
to achieve specified goals of learning
to use the product or system with
effectiveness, efficiency, freedom
from risk and satisfaction in a
specified context of use
The time to learn to use the
solution at a practical working
level to get routine tasks done.
Aesthetics
(ISO: User Interface
Aesthetics)
The degree to which a user interface
enables pleasing and satisfying
interaction for the user
Subjective user surveys with
standardized ratings
Accessibility
The degree to which a product or
system can be used by people with
the widest range of characteristics
and capabilities to achieve a
specified goal in a specified context
of use
Most typically: limited visual
acuity, colour-blindness
User Error
Protection
The degree to which a system
protects users against making errors
Rules-based validation, input
completeness rules, sanity
checks, referential integrity,
confirmation on CRUD
operations
Reliability Maturity
The degree to which a system meets
needs for reliability under normal
operation
Mean time between failures
(MTBF); The degree of stable
operations encountered after
product updates and
enhancements (ratio of
#incidents for a period of time
before a change to #incidents
after the change);
predictability (variation in
performance KPIs under
specified loads)
Fault Tolerance
The degree to which a system,
product or component operates as
intended despite the presence of
hardware or software faults
Redundancy; replication;
diversity; graceful degradation;
Availability is the probability-
based numerical rating of fault
tolerance
Recoverability The degree to which, in the event of Recovery Time Objective
an interruption or a failure, a product
or system can recover the data
directly affected and re-establish the
desired state of the system
(RTO); Recovery Point
Objective (RPO); Mean time
to repair (MTTR); mean time
to recover (data); backup
frequency (snapshots; hot;
scheduled; mirroring); disaster
recovery
Availability
The degree to which a system,
product or component is operational
and accessible when required for use
The ratio of time the product is
operating fully in a period of
time to the total period of time:
the availability of a system for
a period of time is the
probability that the system is
available for use at any
random time in that period.
Expressed as a Requirement in
terms of minutes per month of
downtime tolerated.
Robustness
The ability of a product to cope with
errors during execution or the ability
of an algorithm to continue to operate
despite abnormalities in conditions,
input, calculations, etc.
Malformed data; unknown
message types; missing data;
out-of-sequence messages;
network latency; low
bandwidth
Security Confidentiality
The degree to which a product or
system ensures that data are
accessible only to those authorized to
have access
Strong passwords; password
recycling policies ; multi-level
access control; inactivity
timeouts; includes protection
of data outside the envelope of
normal software interfaces,
such as directly accessing
serialized data or intercepting
transmitted data; disposition
rules
Integrity
The probability that errors or attacks
will not lead to access or damage to
the state of the system, including
data, code, etc
Non-repudiation
The degree to which actions or
events can be proven to have taken
place, so that the events or actions
cannot be repudiated later
Accountability
The degree to which the actions of an
entity can be traced uniquely to the
entity
Audit logs; transaction logs;
user session logs; not
modifiable by Administrator;
retention rules
Authenticity
The degree to which the identity of a
subject or resource can be proved to
be the one claimed
multi-factor authentication;
Maintainability Scalability
The degree to which the product can
efficiently and effectively
accommodate increases to its original
Capacity
Horizontal, vertical scaling;
module replication; built-in
clustering; load balancing
Modularity
The degree to which a product is
composed of discrete components
such that a change to one component
has minimal impact on other
components
The ability of the solution to
be delivered, deployed,
maintained and administered
in self-contained units
Analyzability The degree of effectiveness and Mean Failure Analysis Time
efficiency with which it is possible to
assess the impact on a product or
system of an intended change to one
or more of its parts, or to diagnose a
product for deficiencies or causes of
failures, or to identify parts to be
modified
(the mean time needed to
analyze a failure and to
discover the faults that arise
from the failure); product can
analyze its own faults and
provide reports prior to a
failure or other event;
transaction logs; debug mode
Modifiability
The degree to which a product's
functionality can be effectively and
efficiently modified without
introducing defects or degrading
existing product quality
The average amount of effort
needed to modify the product;
the functionality that can be
changed by configuration or
other means other than coding
Testability
The degree of effectiveness and
efficiency with which test criteria can
be established for a product and tests
can be performed to determine
whether those criteria have been met
Manageability
The degree to which the product
facilitates efficient and effective
management of its operations
The ratio of effort put in
controlling (administering,
maintaining) the product to the
total hours of operation of the
product
Reusability
The degree to which product or
product component can be used in
more than one system, or in building
other solutions
Ability to host other solutions
(servers, network components,
storage; databases; web servers
and other application
platforms); ability to
participate in "mash-ups" or
other plug-and-play ad hoc
solutions
Supportability
The ease with which the product can
be supported by support personnel
Match to available skill-sets;
quality of support and
administrative documentation;
existence of additional
structured training
Portability Adaptability
The degree to which a product or
system can effectively and efficiently
be adapted for different or evolving
hardware, software or other
operational or usage environments
Installability
The degree of effectiveness and
efficiency with which a product or
system can be successfully installed
and/or uninstalled in a specified
environment
Automated install script;
registry-free install; automated
default configurations
Replaceability
The degree to which a product can be
replaced by another specified
software product for the same
purpose in the same environment
Loose coupling for
integrations; abstracted
interfaces
Conformance
The degree to which the product can
conform to new or changing
regulations
Internationalization
The ability to change the system to
deal with additional international
conventions
Support for multiple such as
languages, number formats,
currencies, etc.
Usage Effectiveness Effectiveness
The accuracy and completeness with
which users achieve specified goals
Error Frequency = #errors
made / #Tasks
Efficiency Efficiency
The resources expended in relation to
the accuracy and completeness with
which users achieve goals
time to complete the task; the
financial cost of usage
Satisfaction Usefulness
The degree to which a user is
satisfied with their perceived
achievement of pragmatic goals,
including the results of use and the
consequences of use
Trust
The degree to which a user or other
stakeholder has confidence that a
product or system will behave as
intended
Comfort
The degree to which the user is
satisfied with physical comfort
Ergonomic design of the
solution
Freedom from
Risk
Economic Risk
Mitigation
The degree to which a product or
system mitigates the potential risk to
financial status, efficient operation,
commercial property, reputation or
other resources in the intended
contexts of use
Health and Safety
Risk Mitigation
The degree to which a product or
system mitigates the potential risk to
people in the intended contexts of use
Environmental
Harm Risk
Mitigation
The degree to which a product or
system mitigates the potential risk to
property or the environment in the
intended contexts of use
Context
Coverage
Context
completeness
The degree to which a product or
system can be used with
effectiveness, efficiency, freedom
from risk and satisfaction in all the
specified contexts of use i.e. fit-for-
purpose
eg. usable using a small
screen, by a new user, even if
off-line/disconnected
Flexibility
The degree to which a product or
system can be used with
effectiveness, efficiency, freedom
from risk and satisfaction in contexts
beyond those initially specified in the
requirements
eg. Designed to be usable
using a small screen, by a new
user, even if off-
line/disconnected – also works
in low-bandwidth situations
Service
Experience
Service
Availability
The degree to which the solution is
obligated to be available for use
Support
Availability
The degree to which support for the
solution is obligated to be available
Service Delivery
Costs
The degree to which usage of the
solution or support is borne explicitly
by the user
External Service Cost Acquisition Cost
The resource costs (non-staff)
involved with acquiring and
deploying all of the requisite
components of the product
HW/SW costs; licensing costs;
deployment costs (i.e.
additional infrastructure);
vendor consultant costs;
Training costs
Operational Cost
The cost of maintaining on-going
operations of the product
Vendor support costs; support
desk costs; infrastructure
operating costs; annual
licensing costs; predicted costs
(projected infrastructure
growth, patches and version
upgrades);
Retirement Cost The cost of removing the product Disposition costs; data
from the environment migration costs
Vendor Risk
Mitigation
Market Share
R+D Budget
Years in Market
Client List
Profitability
Industry
Reputation
Escrow
Agreements
Product Risk
Mitigation
Licensing Model
Years in Market
Product Maturity
User Community
Reference Clients
Development &
Release Discipline
4 Types of Stakeholders
ISO/IEC has proposed that the Stakeholders of a delivered solution can be divided into the following
groups:
• Primary Users: People who directly use the solution
• Indirect Users: People and systems downstream from the solution that obtain outputs from it
(for example, through data integration or querying a database that the solution updates)
• Support: Maintenance, sustainment, support personnel and administrators of the product or
solution
• IT: IT Management and people involved in procurement, planning and QA activities
To this, we add an additional stakeholder type to address those who could make use of the solution but
aren’t part of the current scope of Primary or Indirect users (for example, business units that could opt
to use the solution instead of going out and creating another one, thus saving the company time and
money).
• Potential Users: People and systems outside the identified Primary and Indirect stakeholders
that could realize business benefit by leveraging the solution.
5 The Non-Functional Requirements Framework
5.1 NFR Characteristic to Stakeholder Mapping
Though each of the 16 Characteristics are further broken down into more concrete sub-characteristics
(non-functional requirements), it is a useful exercise to draw out a high-level mapping of these
Characteristics to Stakeholders who are most likely to be directly and visibly impacted by them (i.e.,
more than Stakeholder types who do not have a check-mark), using the above definitions for type of
Stakeholder:
Quality Characteristic
Concern of/Relevant to
Primary
Users
Indirect
Users
Support IT Potential
Users
Intrinsic
Functional
Suitability
✔ ✔ ✔
Performance
Efficiency
✔ ✔ ✔
Compatibility ✔ ✔
Usability ✔ ✔
Reliability ✔ ✔ ✔
Security ✔ ✔ ✔
Maintainability ✔
Portability ✔ ✔
Usage Effectiveness ✔ ✔
Efficiency ✔ ✔
Satisfaction ✔ ✔
Freedom from
Risk
✔ ✔
Context Coverage ✔ ✔ ✔
External Service Cost ✔
Vendor Risk
Mitigation
✔
Product Risk
Mitigation
✔
5.2 Stakeholders to SA/BA Mapping
Based on the roles and competencies described above in the Basics of the SA/BA Relationship section,
we can propose a mapping between the above-identified ISO stakeholder types (plus the additional one
we added) and who is best positioned to be aware of and account for their needs.
Type of
Stakeholder
ISO/IEC Stakeholder Description
Primary Champion
BA Architect
Primary people who directly use the product/solution ✔
Indirect
people and systems downstream from the product that obtain
outputs from it
✔
Support
Maintenance, sustainment, support personnel and administrators of
the product or solution
✔
IT
IT Management and people involved in procurement, planning and
QA activities
✔
Potential
People and systems outside the identified Primary and Indirect
stakeholders that could realize business benefit by leveraging the
solution.
✔
When deciding who (BA or SA) should typically be responsible for any specific non-functional
requirement, a reasonably objective approach would be to identify the type of stakeholder who is most
vested in (or affected by) that NFR and assign responsibility for specifying that NFR based on that table
above.
5.3 The Non-Functional Requirements RACI
Using the above stakeholder-type assignments as an overall decision-making pattern, we can make
reasonably objective assignments for the detailed list of NFRs. The following table presents the Non-
functional Sub-Characteristics for the “Responsible” role of the RACI assignment (we have already
positioned the BA to be overall “Accountable” for all Requirements, and we are not addressing
“Consult” and “Inform” here):
Quality Characteristic
Sub-
Characteristic
Main
Stakeholder
BA Architect
A R C I A R C I
Intrinsic
Functional
Suitability
Functional
Appropriateness
Primary ✔
Functional
Completeness
Primary ✔
Functional
Correctness
Primary ✔
Functional
Targeting
Primary ✔
Performance
Efficiency
Time Behaviour Primary ✔
Resource
Utilization
IT ✔
Capacity Support ✔
Compatibility
Co-existence IT ✔
Interoperability IT ✔
Usability
Obvious
Applicability
Primary ✔
Intuitiveness Primary ✔
Learnability Primary ✔
Aesthetics Primary ✔
Accessibility Primary ✔
User Error
Protection
Primary ✔
Reliability
Maturity Support ✔
Fault Tolerance Support ✔
Recoverability Support ✔
Availability Support ✔
Robustness Support ✔
Security
Confidentiality IT ✔
Integrity IT ✔
Non-repudiation Primary ✔
Accountability Primary ✔
Authenticity IT ✔
Maintainability
Scalability Support ✔
Modularity Support ✔
Analyzability Support ✔
Modifiability Support ✔
Testability Support ✔
Manageability Support ✔
Reusability Support ✔
Supportability Support ✔
Portability
Adaptability IT ✔
Installability IT ✔
Replaceability IT ✔
Conformance IT ✔
Internationalization Primary ✔
Usage
Effectiveness
Effectiveness Primary ✔
Efficiency
Efficiency Primary ✔
Satisfaction
Usefulness Primary ✔
Trust Primary ✔
Comfort Primary ✔
Freedom from
Risk
Economic Risk
Mitigation
Primary ✔
Health and Safety
Risk Mitigation
Primary ✔
Environmental
Harm Risk
Mitigation
Primary ✔
Context
Coverage
Context
Completeness
Primary ✔
Flexibility IT ✔
Service
Experience
Service
Availability
Primary ✔
Support
Availability
Support ✔
Service Delivery
Costs
Primary ✔
External
Service Cost
Acquisition Cost ✔
Operational Cost IT ✔
Retirement Cost IT ✔
Vendor Risk
Mitigation
Market Share ✔
R+D Budget IT ✔
Years in Market IT ✔
Training and
Support
Primary ✔
Client List Primary ✔
Profitability Primary ✔
Industry
Reputation
IT ✔
Escrow
Agreements
IT ✔
Product Risk
Mitigation
Licensing Model Primary ✔
Product Maturity Support ✔
User Community Primary ✔
Reference Clients Primary ✔
Development &
Release Discipline
Support ✔
6 Suggested Improvements
As a future enhancement to this framework, it is recommended to address Data Quality in a
more rigorous manner. The ISO 25010 Data Quality Model is summarized below as a
suggest place to begin:
• Accuracy
• Completeness
• Consistency
• Credibility
• Currentness
• Accessibility
• Compliance
• Confidentiality
• Efficiency
• Precision
• Traceability
• Understandability
• Availability
• Portability
• Recoverability

More Related Content

What's hot

Premier First Call Pitch
Premier First Call Pitch Premier First Call Pitch
Premier First Call Pitch
Salesforce Partners
 
How to migrate to Apex Enterprise Patterns?, David Fernandez
How to migrate to Apex Enterprise Patterns?, David FernandezHow to migrate to Apex Enterprise Patterns?, David Fernandez
How to migrate to Apex Enterprise Patterns?, David Fernandez
CzechDreamin
 
Especificación de requisitos de software
Especificación de requisitos de softwareEspecificación de requisitos de software
Especificación de requisitos de software
JhoselinQ
 
JIRA
JIRAJIRA
Srs master login module
Srs master login moduleSrs master login module
Srs master login module
Javeria Gauhar Khan
 
Ch 1-Non-functional Requirements.ppt
Ch 1-Non-functional Requirements.pptCh 1-Non-functional Requirements.ppt
Ch 1-Non-functional Requirements.ppt
balewayalew
 
Non functional requirements
Non functional requirementsNon functional requirements
Non functional requirements
Pavel Růžička
 
Online Fitness Gym Documentation
Online Fitness Gym Documentation Online Fitness Gym Documentation
Online Fitness Gym Documentation
Abhishek Patel
 
Software Requirement Specification
Software Requirement SpecificationSoftware Requirement Specification
Software Requirement Specification
Niraj Kumar
 
Srs example webapp
Srs example webappSrs example webapp
Srs example webapp
Rivaldy Setiawan
 
Components of the sqa system
Components of the sqa system Components of the sqa system
Components of the sqa system
Hamza Malik
 
NORMA ISO 25010
NORMA ISO 25010NORMA ISO 25010
NORMA ISO 25010
DAVID_POAQUIZA
 
2.software requirement specification
2.software requirement specification2.software requirement specification
2.software requirement specificationDeepak Sharma
 
Water management portal
Water management portalWater management portal
Water management portalPradeep Kiran
 
Software Requirement Specification - Software Pack Solution 14
Software Requirement Specification - Software Pack Solution 14Software Requirement Specification - Software Pack Solution 14
Software Requirement Specification - Software Pack Solution 14
Syed Farjad Zia Zaidi
 
Android App Design And Develop Proposal PowerPoint Presentation Slides
Android App Design And Develop Proposal PowerPoint Presentation SlidesAndroid App Design And Develop Proposal PowerPoint Presentation Slides
Android App Design And Develop Proposal PowerPoint Presentation Slides
SlideTeam
 
Doc 6 especificacion de requisitos (ers-ieee830 01)
Doc 6   especificacion de requisitos (ers-ieee830 01)Doc 6   especificacion de requisitos (ers-ieee830 01)
Doc 6 especificacion de requisitos (ers-ieee830 01)
Fanny Lorena Rivera Vera
 
Best Practices for Successful Deployment
Best Practices for Successful DeploymentBest Practices for Successful Deployment
Best Practices for Successful Deployment
Salesforce Developers
 
Non functional requirements - checklist
Non functional requirements - checklistNon functional requirements - checklist
Non functional requirements - checklist
Vu Hung Nguyen
 
Lightning web components - Episode 4 : Security and Testing
Lightning web components  - Episode 4 : Security and TestingLightning web components  - Episode 4 : Security and Testing
Lightning web components - Episode 4 : Security and Testing
Salesforce Developers
 

What's hot (20)

Premier First Call Pitch
Premier First Call Pitch Premier First Call Pitch
Premier First Call Pitch
 
How to migrate to Apex Enterprise Patterns?, David Fernandez
How to migrate to Apex Enterprise Patterns?, David FernandezHow to migrate to Apex Enterprise Patterns?, David Fernandez
How to migrate to Apex Enterprise Patterns?, David Fernandez
 
Especificación de requisitos de software
Especificación de requisitos de softwareEspecificación de requisitos de software
Especificación de requisitos de software
 
JIRA
JIRAJIRA
JIRA
 
Srs master login module
Srs master login moduleSrs master login module
Srs master login module
 
Ch 1-Non-functional Requirements.ppt
Ch 1-Non-functional Requirements.pptCh 1-Non-functional Requirements.ppt
Ch 1-Non-functional Requirements.ppt
 
Non functional requirements
Non functional requirementsNon functional requirements
Non functional requirements
 
Online Fitness Gym Documentation
Online Fitness Gym Documentation Online Fitness Gym Documentation
Online Fitness Gym Documentation
 
Software Requirement Specification
Software Requirement SpecificationSoftware Requirement Specification
Software Requirement Specification
 
Srs example webapp
Srs example webappSrs example webapp
Srs example webapp
 
Components of the sqa system
Components of the sqa system Components of the sqa system
Components of the sqa system
 
NORMA ISO 25010
NORMA ISO 25010NORMA ISO 25010
NORMA ISO 25010
 
2.software requirement specification
2.software requirement specification2.software requirement specification
2.software requirement specification
 
Water management portal
Water management portalWater management portal
Water management portal
 
Software Requirement Specification - Software Pack Solution 14
Software Requirement Specification - Software Pack Solution 14Software Requirement Specification - Software Pack Solution 14
Software Requirement Specification - Software Pack Solution 14
 
Android App Design And Develop Proposal PowerPoint Presentation Slides
Android App Design And Develop Proposal PowerPoint Presentation SlidesAndroid App Design And Develop Proposal PowerPoint Presentation Slides
Android App Design And Develop Proposal PowerPoint Presentation Slides
 
Doc 6 especificacion de requisitos (ers-ieee830 01)
Doc 6   especificacion de requisitos (ers-ieee830 01)Doc 6   especificacion de requisitos (ers-ieee830 01)
Doc 6 especificacion de requisitos (ers-ieee830 01)
 
Best Practices for Successful Deployment
Best Practices for Successful DeploymentBest Practices for Successful Deployment
Best Practices for Successful Deployment
 
Non functional requirements - checklist
Non functional requirements - checklistNon functional requirements - checklist
Non functional requirements - checklist
 
Lightning web components - Episode 4 : Security and Testing
Lightning web components  - Episode 4 : Security and TestingLightning web components  - Episode 4 : Security and Testing
Lightning web components - Episode 4 : Security and Testing
 

Viewers also liked

Design for non functional requirements
Design for non functional requirementsDesign for non functional requirements
Design for non functional requirements
Habeeb Mahaboob
 
Non functional requirements. do we really care…?
Non functional requirements. do we really care…?Non functional requirements. do we really care…?
Non functional requirements. do we really care…?
OSSCube
 
Handling Non Functional Requirements on an Agile Project
Handling Non Functional Requirements on an Agile ProjectHandling Non Functional Requirements on an Agile Project
Handling Non Functional Requirements on an Agile Project
Ken Howard
 
Non-Functional Requirements
Non-Functional RequirementsNon-Functional Requirements
Non-Functional Requirements
David Simons
 
The Groovy Way
The Groovy WayThe Groovy Way
The Groovy Way
Gabriel Dogaru
 
Adressing nonfunctional requirements with agile practices
Adressing nonfunctional requirements with agile practicesAdressing nonfunctional requirements with agile practices
Adressing nonfunctional requirements with agile practices
Mario Cardinal
 
An introduction to architecture and architects
An introduction to architecture and architectsAn introduction to architecture and architects
An introduction to architecture and architects
wweinmeyer79
 
Modelo furps
Modelo furpsModelo furps
Modelo furps
Leo Ruelas Rojas
 
Non-Functional Requirements Are Important (with Explanatory Notes)
Non-Functional Requirements Are Important (with Explanatory Notes)Non-Functional Requirements Are Important (with Explanatory Notes)
Non-Functional Requirements Are Important (with Explanatory Notes)
Stephen Booth MIET MBCS OLA
 
Requirements Engineering
Requirements EngineeringRequirements Engineering
Requirements Engineering
Ehsan Elahi
 
LetsGrow Non-functional requirements
LetsGrow Non-functional requirementsLetsGrow Non-functional requirements
LetsGrow Non-functional requirementsPatrick Kalkman
 
Agile-4-FSM - Improving estimates by a 4-pieces puzzle
Agile-4-FSM - Improving estimates by a 4-pieces puzzleAgile-4-FSM - Improving estimates by a 4-pieces puzzle
Agile-4-FSM - Improving estimates by a 4-pieces puzzleLuigi Buglione
 
Test planning
Test planningTest planning
Test planning
Aliaa Monier Ismaail
 
Ch4-Software Engineering 9
Ch4-Software Engineering 9Ch4-Software Engineering 9
Ch4-Software Engineering 9Ian Sommerville
 
Integrating architecture and itil
Integrating architecture and itilIntegrating architecture and itil
Integrating architecture and itil
wweinmeyer79
 
business requirements functional and non functional
business requirements functional and  non functionalbusiness requirements functional and  non functional
business requirements functional and non functional
CHANDRA KAMAL
 
Ch12-Software Engineering 9
Ch12-Software Engineering 9Ch12-Software Engineering 9
Ch12-Software Engineering 9Ian Sommerville
 
An intro to building an architecture repository meta model and modeling frame...
An intro to building an architecture repository meta model and modeling frame...An intro to building an architecture repository meta model and modeling frame...
An intro to building an architecture repository meta model and modeling frame...
wweinmeyer79
 
Red7 Introduction to Product Management
Red7 Introduction to Product ManagementRed7 Introduction to Product Management
Red7 Introduction to Product Management
Robert Grupe, CSSLP CISSP PE PMP
 

Viewers also liked (20)

Design for non functional requirements
Design for non functional requirementsDesign for non functional requirements
Design for non functional requirements
 
Non functional requirements. do we really care…?
Non functional requirements. do we really care…?Non functional requirements. do we really care…?
Non functional requirements. do we really care…?
 
Handling Non Functional Requirements on an Agile Project
Handling Non Functional Requirements on an Agile ProjectHandling Non Functional Requirements on an Agile Project
Handling Non Functional Requirements on an Agile Project
 
Non-Functional Requirements
Non-Functional RequirementsNon-Functional Requirements
Non-Functional Requirements
 
The Groovy Way
The Groovy WayThe Groovy Way
The Groovy Way
 
Adressing nonfunctional requirements with agile practices
Adressing nonfunctional requirements with agile practicesAdressing nonfunctional requirements with agile practices
Adressing nonfunctional requirements with agile practices
 
An introduction to architecture and architects
An introduction to architecture and architectsAn introduction to architecture and architects
An introduction to architecture and architects
 
Modelo furps
Modelo furpsModelo furps
Modelo furps
 
Non-Functional Requirements Are Important (with Explanatory Notes)
Non-Functional Requirements Are Important (with Explanatory Notes)Non-Functional Requirements Are Important (with Explanatory Notes)
Non-Functional Requirements Are Important (with Explanatory Notes)
 
Requirements Engineering
Requirements EngineeringRequirements Engineering
Requirements Engineering
 
Customizing iso 9126 quality model for evaluation of b2 b applications
Customizing iso 9126 quality model for evaluation of b2 b applicationsCustomizing iso 9126 quality model for evaluation of b2 b applications
Customizing iso 9126 quality model for evaluation of b2 b applications
 
LetsGrow Non-functional requirements
LetsGrow Non-functional requirementsLetsGrow Non-functional requirements
LetsGrow Non-functional requirements
 
Agile-4-FSM - Improving estimates by a 4-pieces puzzle
Agile-4-FSM - Improving estimates by a 4-pieces puzzleAgile-4-FSM - Improving estimates by a 4-pieces puzzle
Agile-4-FSM - Improving estimates by a 4-pieces puzzle
 
Test planning
Test planningTest planning
Test planning
 
Ch4-Software Engineering 9
Ch4-Software Engineering 9Ch4-Software Engineering 9
Ch4-Software Engineering 9
 
Integrating architecture and itil
Integrating architecture and itilIntegrating architecture and itil
Integrating architecture and itil
 
business requirements functional and non functional
business requirements functional and  non functionalbusiness requirements functional and  non functional
business requirements functional and non functional
 
Ch12-Software Engineering 9
Ch12-Software Engineering 9Ch12-Software Engineering 9
Ch12-Software Engineering 9
 
An intro to building an architecture repository meta model and modeling frame...
An intro to building an architecture repository meta model and modeling frame...An intro to building an architecture repository meta model and modeling frame...
An intro to building an architecture repository meta model and modeling frame...
 
Red7 Introduction to Product Management
Red7 Introduction to Product ManagementRed7 Introduction to Product Management
Red7 Introduction to Product Management
 

Similar to Non functional requirements framework

40411923 business-analyst
40411923 business-analyst40411923 business-analyst
40411923 business-analyst
Har Da
 
Software Development Process - REQUIREMENTS ANALYSIS / ANALYSIS OF TECHNICAL...
Software Development Process -  REQUIREMENTS ANALYSIS / ANALYSIS OF TECHNICAL...Software Development Process -  REQUIREMENTS ANALYSIS / ANALYSIS OF TECHNICAL...
Software Development Process - REQUIREMENTS ANALYSIS / ANALYSIS OF TECHNICAL...
Mark John Lado, MIT
 
Software Systems Requirements Engineering
Software Systems Requirements EngineeringSoftware Systems Requirements Engineering
Software Systems Requirements Engineering
Kristen Wilson
 
Business Analyst Job Description
Business Analyst Job DescriptionBusiness Analyst Job Description
Business Analyst Job Description
davisjw
 
SA_UNIT_1.pptx
SA_UNIT_1.pptxSA_UNIT_1.pptx
SA_UNIT_1.pptx
ShwetaGajbhiye12
 
Requirements management and the business analyst
Requirements management and the business analystRequirements management and the business analyst
Requirements management and the business analystRobert Darko
 
Unit2 2
Unit2 2Unit2 2
Unit2 2
sush-sushma
 
IS6155 Project Student numbers 90079094 114223513 102859661
IS6155 Project Student numbers 90079094 114223513 102859661IS6155 Project Student numbers 90079094 114223513 102859661
IS6155 Project Student numbers 90079094 114223513 102859661Brendan Mc Sweeney
 
Linked in article_on_project_delivery
Linked in article_on_project_deliveryLinked in article_on_project_delivery
Linked in article_on_project_delivery
Claude Sajous
 
Srs template ieee
Srs template ieeeSrs template ieee
Srs template ieee
शैली शर्मा
 
Srs tem
Srs temSrs tem
The Requirements - An Initial Overview
The Requirements - An Initial OverviewThe Requirements - An Initial Overview
The Requirements - An Initial Overview
Kumail Raza
 
Enterprise architecture
Enterprise architecture Enterprise architecture
Enterprise architecture
Hamzazafeer
 
Software Requirement Specification Master Template
Software Requirement Specification Master TemplateSoftware Requirement Specification Master Template
Software Requirement Specification Master Template
Wayne Chen
 
srs_template-ieee.doc
srs_template-ieee.docsrs_template-ieee.doc
srs_template-ieee.doc
HuyNguyen802261
 
srs_template.doc
srs_template.docsrs_template.doc
srs_template.doc
samuelmegerssa1
 

Similar to Non functional requirements framework (20)

40411923 business-analyst
40411923 business-analyst40411923 business-analyst
40411923 business-analyst
 
Business analyst
Business analystBusiness analyst
Business analyst
 
Software Development Process - REQUIREMENTS ANALYSIS / ANALYSIS OF TECHNICAL...
Software Development Process -  REQUIREMENTS ANALYSIS / ANALYSIS OF TECHNICAL...Software Development Process -  REQUIREMENTS ANALYSIS / ANALYSIS OF TECHNICAL...
Software Development Process - REQUIREMENTS ANALYSIS / ANALYSIS OF TECHNICAL...
 
Software Systems Requirements Engineering
Software Systems Requirements EngineeringSoftware Systems Requirements Engineering
Software Systems Requirements Engineering
 
Business Analyst Job Description
Business Analyst Job DescriptionBusiness Analyst Job Description
Business Analyst Job Description
 
SA_UNIT_1.pptx
SA_UNIT_1.pptxSA_UNIT_1.pptx
SA_UNIT_1.pptx
 
Requirements management and the business analyst
Requirements management and the business analystRequirements management and the business analyst
Requirements management and the business analyst
 
Unit2 2
Unit2 2Unit2 2
Unit2 2
 
IS6155 Project Student numbers 90079094 114223513 102859661
IS6155 Project Student numbers 90079094 114223513 102859661IS6155 Project Student numbers 90079094 114223513 102859661
IS6155 Project Student numbers 90079094 114223513 102859661
 
Linked in article_on_project_delivery
Linked in article_on_project_deliveryLinked in article_on_project_delivery
Linked in article_on_project_delivery
 
BPM BA
BPM BA BPM BA
BPM BA
 
Srs template ieee
Srs template ieeeSrs template ieee
Srs template ieee
 
Srs tem
Srs temSrs tem
Srs tem
 
Zachman framework
Zachman frameworkZachman framework
Zachman framework
 
The Requirements - An Initial Overview
The Requirements - An Initial OverviewThe Requirements - An Initial Overview
The Requirements - An Initial Overview
 
Enterprise architecture
Enterprise architecture Enterprise architecture
Enterprise architecture
 
Software Requirement Specification Master Template
Software Requirement Specification Master TemplateSoftware Requirement Specification Master Template
Software Requirement Specification Master Template
 
Functional spec
Functional specFunctional spec
Functional spec
 
srs_template-ieee.doc
srs_template-ieee.docsrs_template-ieee.doc
srs_template-ieee.doc
 
srs_template.doc
srs_template.docsrs_template.doc
srs_template.doc
 

Recently uploaded

Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
Paul Groth
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 

Recently uploaded (20)

Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 

Non functional requirements framework

  • 1. Non-Functional Requirements for the Solution Architect and Business Analyst Last Modified: 2015-11-20 Author: Warren Weinmeyer Document Version: 1.3
  • 2. Table of Contents 1 Purpose of this Document........................................................................3 2 Introduction............................................................................................3 2.1 Basics of the SA/BA Relationship..............................................................3 2.2 Definition of Non-functional Requirements.................................................4 2.3 References............................................................................................5 3 A Taxonomy For Non-functional Requirements........................................6 3.1 High-Level NFR Classification...................................................................6 3.2 Detail-Level NFR Classification.................................................................7 4 Types of Stakeholders...........................................................................13 5 The Non-Functional Requirements Framework......................................14 5.1 NFR Characteristic to Stakeholder Mapping..............................................14 ...............................................................................................................14 5.2 Stakeholders to SA/BA Mapping.............................................................15 5.3 The Non-Functional Requirements RACI..................................................16 6 Suggested Improvements .....................................................................19
  • 3. 1 Purpose of this Document This document leverages published best practices to define a framework of Non-functional Requirements (NFR) along with a methodology for assigning responsibilities for each NFR to either the BA or SA. This guidance is especially useful for: 1. Providing a reasonably rigorous classification, definition and master-list of the possible types of non-functional requirements that might be considered for any solution (but refer to Suggested Improvements section at the end of this document). 2. Providing a best-practice based and reasonably objective methodology for assigning role responsibilities when confusion or disputes arise between the SA and BA 2 Introduction Architecture leading thought and best practices continue to evolve. Consequently, many organizations experience some degree of uncertainty regarding the practical matter of what exactly the role of an Architect should be and this uncertainty can be reflected as ambiguity in the organization’s governance model and role definitions. Business Analysis leading thought also continues to evolve, but more slowly because the discipline has more maturity and history than Architecture. It is important to note that the evolution of thought leadership within individual disciplines, like Architecture and Business Analysis (but also disciplines like Project Management, Business Architecture, Security, etc.), largely occurs within the bubble of that discipline and commonly results in overlaps in the “jurisdiction” claimed by other disciplines. This leaves the responsibility for ensuring harmonious role mandates to each individual organization to work out (though complex efforts to rationalize these roles, such as Skills Framework for the Information Age, do exist). At the project level, the Solution Architect (SA) role is a relative newcomer to the core project delivery team compared to the Business Analyst (BA) role and BAs in many companies are accustomed to taking responsibility for tasks and deliverables that are better assigned to a Solution Architect (SA). When there is overall uncertainty about what an Architect does, there is fertile ground for inter-personal conflict. 2.1 Basics of the SA/BA Relationship In a well-functioning project, the BA and SA have a close working relationship – in fact, it should be characterized more as a symbiotic partnership. With roles so intertwined, it is common for people to
  • 4. either not understand the difference between a BA and SA, and/or to not see a need for having two different roles. However, there are differences in both skills and perspective between the two roles that justify this separation. Often, the relationship between BA and SA is summarized as the BA is responsible for the requirements and the SA for the solution. However, Requirements and Solution Attributes are simply two faces of the same coin, and the reality is that both BAs and SAs are involved and concerned with both Requirements and Solution Attributes, but the types of requirements and attributes they are primarily concerned with can have different focus, as is their relative competency to be “Responsible” for specifying them. It does, however, make sense to maintain the BA as “Accountable” for Requirements overall and the SA to be “Accountable” for Solution Specification overall. As an industry norm, BAs have a greater understanding of the Business as well as current best practices in business analysis and SAs have a greater understanding of technology as well as current best practices in architecture (security, strategic alignment, design patterns, technology trends, etc.). The BA complements their strong understanding of the Business with a good functional understanding of technology, and the BA is often described as translating between Business and IT. The SA complements their strong understanding of technology with a good functional understanding of the Business, and the Architect is often described as integrating the Business and IT. The BA has accountability to the Project Stakeholders for a solution that meets Stakeholder requirements, and their signature deliverable is the Detailed Requirements document. The SA is accountable for a fit-for-purpose solution for the project in the context of the needs of the larger enterprise, and their signature deliverable is the Solution Architecture Description. Often, the deviation between the requirements of the greater enterprise and the Project Stakeholders revolves around the compatibility of the solution to the current technology and information landscape, the future strategic roadmap, and leveraging the solution functionality by other business functions/units in the enterprise. These types of concerns tend to be reflected in the non-functional, rather than the functional, characteristics of the solution, so this is often the area where SAs and BAs can have conflict. 2.2 Definition of Non-functional Requirements Non-functional requirements define the overall qualities or attributes of the resulting system and place restrictions on the product being developed, the development process, and specify external constraints that the product must meet. Wikipedia defines non-functional requirements as follows: In systems engineering and requirements engineering, a non-functional requirement is a requirement that specifies criteria that can be used to judge the operation of a system, rather than specific behaviors. This should be contrasted with functional requirements that define specific behavior or functions. The
  • 5. plan for implementing functional requirements is detailed in the system design. The plan for implementing non-functional requirements is detailed in the system architecture. Broadly, functional requirements define what a system is supposed to do whereas non-functional requirements define how a system is supposed to be. Functional requirements are usually in the form of "system shall do…", while non-functional requirements are "system shall be… ". Non-functional requirements are often called qualities of a system. Other terms for non-functional requirements are "constraints", "quality attributes", "quality goals", "quality of service requirements" and "non-behavioral requirements". Informally these are sometimes called the "ilities", from attributes like stability and portability. Qualities (i.e., non-functional requirements) can be divided into two main categories: 1. Execution qualities, such as security and usability, which are observable at run time. 2. Evolution qualities, such as testability, maintainability, extensibility and scalability, which are embodied in the static structure of the software system. (For example:) A system may be required to present the user with a display of the number of records in a database. This is a functional requirement. How up-to-date this number needs to be is a non-functional requirement. If the number needs to be updated in real time, the system architects must ensure that the system is capable of updating the displayed record count within an acceptably short interval of the number of records changing. Other sources offer very similar definitions for Non-Functional Requirements 2.3 References The following sources are referenced in this document: • Non-Functional Requirements, FURP, RAS, ISO 9126, Wikipedia • Representing and Using Non-Functional Requirements: A Process-Oriented Approach, John Mylopoulos, Lawrence Chung, Brian Nixon, Dept of Computer Science, University of Toronto • Defining Non-Functional Requirements, Ruth Malan and Dana Bredemey, Bredemeyer Consulting • A Framework for the Measure of Software Quality, Joseph P. Cavano, James A. McCall, Rome Air Development Center • Organizational Requirements Engineering, Prof. Dr. Armin B. Cremers, Sascha Alda, B-IT • ISO/IEC 9126 In Practice: What Do We Need to Know?, P. Botella, X. Burgués, J.P. Carvallo, X. Franch, G. Grau, J. Marco, C. Quer, Barcelona Tech • ISO/IEC 25010 International Standard – Final Draft, ISO/IEC • Discover Non-Functional Requirements, http://www.semanticarchitecture.net
  • 6. 3 A Taxonomy For Non-functional Requirements In order to attack the problem of attaching RACI to non-functional requirements, it is necessary to establish a foundational list of these requirements. The following sections are largely guided by ISO/IEC Standards 9126 and 25010/SQuaRE, to which we add in some minor supplementation from similar quality frameworks like FURPS and RADC to create a robust list of attributes that can be applied to any software/hardware solution (but refer to the Suggested Improvements section at the end of this document). The Requirements for any particular solution are directly derivable from this list by selecting which attributes are relevant and specifying the quality metric that must be achieved in order to meet the stakeholder needs. 3.1 High-Level NFR Classification ISO/IEC suggests solution attributes can be divided into 3 main categories, called “Qualities”; these Qualities serve as a top-level breakdown of non-functional requirements: • Intrinsic Qualities: characteristics of the product/solution itself • Usage Qualities: characteristics related to outcomes of user interaction with the product/solution • External Qualities: market-related characteristics associated with the product/solution Within these 3 top-level categories, we can define sub-categories called "Characteristics" that describe fairly high-level qualities of the product/solution: Intrinsic Qualities Characteristic Description Functional Suitability The degree to which a product functions that meets stated and implied needs when used under specified conditions Performance Efficiency The performance relative to the amount of resources used under stated conditions Compatibility The degree to which a product can exchange information with other products, and/or perform its required functions, while sharing the same hardware or software environment Usability The degree to which a product can be used by specified users to achieve specified goals with effectiveness, efficiency and satisfaction in a specified context of use Reliability The degree to which a product performs specified functions under specified conditions for a specified period of time Security The degree to which a product protects information and data so that persons or other products have the degree of data access appropriate to their types and levels of authorization Maintainability The degree of effectiveness and efficiency with which a product or system can be modified by the intended maintainers Portability The degree of effectiveness and efficiency with which a system, product or component can be transferred from one hardware, software or other operational or usage environment to another Usage Qualities Characteristic Description Effectiveness The accuracy and completeness with which users achieve specified goals Efficiency The resources expended in relation to the accuracy and completeness with which users achieve goals
  • 7. Satisfaction The degree to which user needs are satisfied when a product or system is used in a specified context of use Freedom from Risk (Safety) The degree to which a product or system mitigates the potential risk to economic status, human life, health, or the environment Context Coverage (Usability Scope) The degree to which a product or system can be used with effectiveness, efficiency, freedom from risk and satisfaction in both specified contexts of use and in contexts beyond those initially explicitly identified External Qualities Characteristic Description Service Cost The financial burden undertaken by the enterprise to implement, support, and retire the product or system Vendor Risk Mitigation The degree to which support, cost and longevity risks the Vendor can demonstrate there are minimal risks associated with selecting a product from them Product Risk Mitigation The degree to which functionality, cost and longevity risks associated with investing in the product can be mitigated 3.2 Detail-Level NFR Classification The Characteristics listed above are still at too high a level to be translatable into clear requirements; we can elaborate on each Characteristic with Sub-Characteristics (largely drawn from ISO/IEC 25010, with a few renamed for better clarity), as follows: Quality Characteristic Sub- Characteristic Description Notes or Example Metric Intrinsic Functional Suitability Functional Appropriateness The degree to which the functions facilitate the accomplishment of specified tasks and objectives Does not expose the user to unnecessary steps, functions, or information Functional Completeness The degree to which the set of functions covers all the specified tasks and user objectives The % of desired functionality present in the product Functional Correctness The degree to which a product provides the correct results with the needed degree of precision The ratio of incorrect to total of processed transactions; integrity of information processed Functional Targeting The degree to which a product supports required functionality without introducing ancillary, unwanted functionality The ratio of the % of desired functionality present in the product to the total functions offered by the product Performance Efficiency Time Behavior The degree to which the response and processing times and throughput rates of a product meet requirements Throughput; response time; application load time; screen open/refresh time; calculation time; import/export time; report/query time Resource Utilization The degree to which the amounts and types of resources used by a product meet requirements Bandwidth, cpu utilization, memory utilization, storage Capacity The degree to which the maximum limits of a product or system parameter meet requirements Refers to initial planned capacity, not scalability to future levels; transactions per unit time; maximum database/file size; maximum number of users/connections
  • 8. Compatibility Co-existence The degree to which a product can perform its required functions efficiently while sharing a common environment and resources with other products, without detrimental impact on any other product Alignment to technical standards; Product certification; awareness of resource contention (avoids direct hardware access) Interoperability The degree to which two or more systems, products or components can exchange information and use the information that has been exchanged Alignment to communication, integration, and information standards Usability Obvious Applicability (ISO: Appropriateness Recognizability) The degree to which users can recognize whether a product or system is appropriate for their needs, without having to operate the system first From initial impressions, demos, tutorials, docs, etc. Intuitiveness (ISO: Operability) The degree to which a product or system has attributes that make it easy to operate and control The degree to which the product can be used without specific training Learnability The degree to which a product or system can be used by specified users to achieve specified goals of learning to use the product or system with effectiveness, efficiency, freedom from risk and satisfaction in a specified context of use The time to learn to use the solution at a practical working level to get routine tasks done. Aesthetics (ISO: User Interface Aesthetics) The degree to which a user interface enables pleasing and satisfying interaction for the user Subjective user surveys with standardized ratings Accessibility The degree to which a product or system can be used by people with the widest range of characteristics and capabilities to achieve a specified goal in a specified context of use Most typically: limited visual acuity, colour-blindness User Error Protection The degree to which a system protects users against making errors Rules-based validation, input completeness rules, sanity checks, referential integrity, confirmation on CRUD operations Reliability Maturity The degree to which a system meets needs for reliability under normal operation Mean time between failures (MTBF); The degree of stable operations encountered after product updates and enhancements (ratio of #incidents for a period of time before a change to #incidents after the change); predictability (variation in performance KPIs under specified loads) Fault Tolerance The degree to which a system, product or component operates as intended despite the presence of hardware or software faults Redundancy; replication; diversity; graceful degradation; Availability is the probability- based numerical rating of fault tolerance Recoverability The degree to which, in the event of Recovery Time Objective
  • 9. an interruption or a failure, a product or system can recover the data directly affected and re-establish the desired state of the system (RTO); Recovery Point Objective (RPO); Mean time to repair (MTTR); mean time to recover (data); backup frequency (snapshots; hot; scheduled; mirroring); disaster recovery Availability The degree to which a system, product or component is operational and accessible when required for use The ratio of time the product is operating fully in a period of time to the total period of time: the availability of a system for a period of time is the probability that the system is available for use at any random time in that period. Expressed as a Requirement in terms of minutes per month of downtime tolerated. Robustness The ability of a product to cope with errors during execution or the ability of an algorithm to continue to operate despite abnormalities in conditions, input, calculations, etc. Malformed data; unknown message types; missing data; out-of-sequence messages; network latency; low bandwidth Security Confidentiality The degree to which a product or system ensures that data are accessible only to those authorized to have access Strong passwords; password recycling policies ; multi-level access control; inactivity timeouts; includes protection of data outside the envelope of normal software interfaces, such as directly accessing serialized data or intercepting transmitted data; disposition rules Integrity The probability that errors or attacks will not lead to access or damage to the state of the system, including data, code, etc Non-repudiation The degree to which actions or events can be proven to have taken place, so that the events or actions cannot be repudiated later Accountability The degree to which the actions of an entity can be traced uniquely to the entity Audit logs; transaction logs; user session logs; not modifiable by Administrator; retention rules Authenticity The degree to which the identity of a subject or resource can be proved to be the one claimed multi-factor authentication; Maintainability Scalability The degree to which the product can efficiently and effectively accommodate increases to its original Capacity Horizontal, vertical scaling; module replication; built-in clustering; load balancing Modularity The degree to which a product is composed of discrete components such that a change to one component has minimal impact on other components The ability of the solution to be delivered, deployed, maintained and administered in self-contained units Analyzability The degree of effectiveness and Mean Failure Analysis Time
  • 10. efficiency with which it is possible to assess the impact on a product or system of an intended change to one or more of its parts, or to diagnose a product for deficiencies or causes of failures, or to identify parts to be modified (the mean time needed to analyze a failure and to discover the faults that arise from the failure); product can analyze its own faults and provide reports prior to a failure or other event; transaction logs; debug mode Modifiability The degree to which a product's functionality can be effectively and efficiently modified without introducing defects or degrading existing product quality The average amount of effort needed to modify the product; the functionality that can be changed by configuration or other means other than coding Testability The degree of effectiveness and efficiency with which test criteria can be established for a product and tests can be performed to determine whether those criteria have been met Manageability The degree to which the product facilitates efficient and effective management of its operations The ratio of effort put in controlling (administering, maintaining) the product to the total hours of operation of the product Reusability The degree to which product or product component can be used in more than one system, or in building other solutions Ability to host other solutions (servers, network components, storage; databases; web servers and other application platforms); ability to participate in "mash-ups" or other plug-and-play ad hoc solutions Supportability The ease with which the product can be supported by support personnel Match to available skill-sets; quality of support and administrative documentation; existence of additional structured training Portability Adaptability The degree to which a product or system can effectively and efficiently be adapted for different or evolving hardware, software or other operational or usage environments Installability The degree of effectiveness and efficiency with which a product or system can be successfully installed and/or uninstalled in a specified environment Automated install script; registry-free install; automated default configurations Replaceability The degree to which a product can be replaced by another specified software product for the same purpose in the same environment Loose coupling for integrations; abstracted interfaces Conformance The degree to which the product can conform to new or changing regulations Internationalization The ability to change the system to deal with additional international conventions Support for multiple such as languages, number formats, currencies, etc. Usage Effectiveness Effectiveness The accuracy and completeness with which users achieve specified goals Error Frequency = #errors made / #Tasks
  • 11. Efficiency Efficiency The resources expended in relation to the accuracy and completeness with which users achieve goals time to complete the task; the financial cost of usage Satisfaction Usefulness The degree to which a user is satisfied with their perceived achievement of pragmatic goals, including the results of use and the consequences of use Trust The degree to which a user or other stakeholder has confidence that a product or system will behave as intended Comfort The degree to which the user is satisfied with physical comfort Ergonomic design of the solution Freedom from Risk Economic Risk Mitigation The degree to which a product or system mitigates the potential risk to financial status, efficient operation, commercial property, reputation or other resources in the intended contexts of use Health and Safety Risk Mitigation The degree to which a product or system mitigates the potential risk to people in the intended contexts of use Environmental Harm Risk Mitigation The degree to which a product or system mitigates the potential risk to property or the environment in the intended contexts of use Context Coverage Context completeness The degree to which a product or system can be used with effectiveness, efficiency, freedom from risk and satisfaction in all the specified contexts of use i.e. fit-for- purpose eg. usable using a small screen, by a new user, even if off-line/disconnected Flexibility The degree to which a product or system can be used with effectiveness, efficiency, freedom from risk and satisfaction in contexts beyond those initially specified in the requirements eg. Designed to be usable using a small screen, by a new user, even if off- line/disconnected – also works in low-bandwidth situations Service Experience Service Availability The degree to which the solution is obligated to be available for use Support Availability The degree to which support for the solution is obligated to be available Service Delivery Costs The degree to which usage of the solution or support is borne explicitly by the user External Service Cost Acquisition Cost The resource costs (non-staff) involved with acquiring and deploying all of the requisite components of the product HW/SW costs; licensing costs; deployment costs (i.e. additional infrastructure); vendor consultant costs; Training costs Operational Cost The cost of maintaining on-going operations of the product Vendor support costs; support desk costs; infrastructure operating costs; annual licensing costs; predicted costs (projected infrastructure growth, patches and version upgrades); Retirement Cost The cost of removing the product Disposition costs; data
  • 12. from the environment migration costs Vendor Risk Mitigation Market Share R+D Budget Years in Market Client List Profitability Industry Reputation Escrow Agreements Product Risk Mitigation Licensing Model Years in Market Product Maturity User Community Reference Clients Development & Release Discipline
  • 13. 4 Types of Stakeholders ISO/IEC has proposed that the Stakeholders of a delivered solution can be divided into the following groups: • Primary Users: People who directly use the solution • Indirect Users: People and systems downstream from the solution that obtain outputs from it (for example, through data integration or querying a database that the solution updates) • Support: Maintenance, sustainment, support personnel and administrators of the product or solution • IT: IT Management and people involved in procurement, planning and QA activities To this, we add an additional stakeholder type to address those who could make use of the solution but aren’t part of the current scope of Primary or Indirect users (for example, business units that could opt to use the solution instead of going out and creating another one, thus saving the company time and money). • Potential Users: People and systems outside the identified Primary and Indirect stakeholders that could realize business benefit by leveraging the solution.
  • 14. 5 The Non-Functional Requirements Framework 5.1 NFR Characteristic to Stakeholder Mapping Though each of the 16 Characteristics are further broken down into more concrete sub-characteristics (non-functional requirements), it is a useful exercise to draw out a high-level mapping of these Characteristics to Stakeholders who are most likely to be directly and visibly impacted by them (i.e., more than Stakeholder types who do not have a check-mark), using the above definitions for type of Stakeholder: Quality Characteristic Concern of/Relevant to Primary Users Indirect Users Support IT Potential Users Intrinsic Functional Suitability ✔ ✔ ✔ Performance Efficiency ✔ ✔ ✔ Compatibility ✔ ✔ Usability ✔ ✔ Reliability ✔ ✔ ✔ Security ✔ ✔ ✔ Maintainability ✔ Portability ✔ ✔ Usage Effectiveness ✔ ✔ Efficiency ✔ ✔ Satisfaction ✔ ✔ Freedom from Risk ✔ ✔ Context Coverage ✔ ✔ ✔ External Service Cost ✔ Vendor Risk Mitigation ✔ Product Risk Mitigation ✔
  • 15. 5.2 Stakeholders to SA/BA Mapping Based on the roles and competencies described above in the Basics of the SA/BA Relationship section, we can propose a mapping between the above-identified ISO stakeholder types (plus the additional one we added) and who is best positioned to be aware of and account for their needs. Type of Stakeholder ISO/IEC Stakeholder Description Primary Champion BA Architect Primary people who directly use the product/solution ✔ Indirect people and systems downstream from the product that obtain outputs from it ✔ Support Maintenance, sustainment, support personnel and administrators of the product or solution ✔ IT IT Management and people involved in procurement, planning and QA activities ✔ Potential People and systems outside the identified Primary and Indirect stakeholders that could realize business benefit by leveraging the solution. ✔ When deciding who (BA or SA) should typically be responsible for any specific non-functional requirement, a reasonably objective approach would be to identify the type of stakeholder who is most vested in (or affected by) that NFR and assign responsibility for specifying that NFR based on that table above.
  • 16. 5.3 The Non-Functional Requirements RACI Using the above stakeholder-type assignments as an overall decision-making pattern, we can make reasonably objective assignments for the detailed list of NFRs. The following table presents the Non- functional Sub-Characteristics for the “Responsible” role of the RACI assignment (we have already positioned the BA to be overall “Accountable” for all Requirements, and we are not addressing “Consult” and “Inform” here): Quality Characteristic Sub- Characteristic Main Stakeholder BA Architect A R C I A R C I Intrinsic Functional Suitability Functional Appropriateness Primary ✔ Functional Completeness Primary ✔ Functional Correctness Primary ✔ Functional Targeting Primary ✔ Performance Efficiency Time Behaviour Primary ✔ Resource Utilization IT ✔ Capacity Support ✔ Compatibility Co-existence IT ✔ Interoperability IT ✔ Usability Obvious Applicability Primary ✔ Intuitiveness Primary ✔ Learnability Primary ✔ Aesthetics Primary ✔ Accessibility Primary ✔ User Error Protection Primary ✔ Reliability Maturity Support ✔ Fault Tolerance Support ✔ Recoverability Support ✔ Availability Support ✔ Robustness Support ✔ Security Confidentiality IT ✔ Integrity IT ✔ Non-repudiation Primary ✔ Accountability Primary ✔
  • 17. Authenticity IT ✔ Maintainability Scalability Support ✔ Modularity Support ✔ Analyzability Support ✔ Modifiability Support ✔ Testability Support ✔ Manageability Support ✔ Reusability Support ✔ Supportability Support ✔ Portability Adaptability IT ✔ Installability IT ✔ Replaceability IT ✔ Conformance IT ✔ Internationalization Primary ✔ Usage Effectiveness Effectiveness Primary ✔ Efficiency Efficiency Primary ✔ Satisfaction Usefulness Primary ✔ Trust Primary ✔ Comfort Primary ✔ Freedom from Risk Economic Risk Mitigation Primary ✔ Health and Safety Risk Mitigation Primary ✔ Environmental Harm Risk Mitigation Primary ✔ Context Coverage Context Completeness Primary ✔ Flexibility IT ✔ Service Experience Service Availability Primary ✔ Support Availability Support ✔ Service Delivery Costs Primary ✔ External Service Cost Acquisition Cost ✔ Operational Cost IT ✔ Retirement Cost IT ✔ Vendor Risk Mitigation Market Share ✔ R+D Budget IT ✔
  • 18. Years in Market IT ✔ Training and Support Primary ✔ Client List Primary ✔ Profitability Primary ✔ Industry Reputation IT ✔ Escrow Agreements IT ✔ Product Risk Mitigation Licensing Model Primary ✔ Product Maturity Support ✔ User Community Primary ✔ Reference Clients Primary ✔ Development & Release Discipline Support ✔
  • 19. 6 Suggested Improvements As a future enhancement to this framework, it is recommended to address Data Quality in a more rigorous manner. The ISO 25010 Data Quality Model is summarized below as a suggest place to begin: • Accuracy • Completeness • Consistency • Credibility • Currentness • Accessibility • Compliance • Confidentiality • Efficiency • Precision • Traceability • Understandability • Availability • Portability • Recoverability