embryology cvs part i

50
Understanding Nonfunctional Requirements -1

Upload: others

Post on 04-Feb-2022

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 1

Page 2: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 2

Page 3: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 3

Get Your Users “IN” the Doghouseand Keep Yourself Out:

Eliciting Nonfunctional Requirements

Page 4: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 4

Who is Roxanne Miller?

Requirements Quest® founder.• IIBA Endorsed Education Provider• Requirements management

process improvement

Certified Business AnalysisProfessional (IIBA).

Keynote speaker at BusinessAnalyst World conferences.

Whoam I?

Self proclaimed ‘Requirements Super Freak’.

Page 5: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 5

Where to get Roxanne's book

http://www.RequirementsQuest.com

The Quest for Software Requirements(book): http://www.requirementsquest.com/products/the-quest-for-software-requirements

Software Requirements Questions (CD or Download) -companion to the book that has the suggested questions in aMicrosoft Excel file:http://www.requirementsquest.com/products/softwarerequirements-questions-download

http://www.Amazon.comTemporarily out of stock.

Page 6: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 6

Session Learning Objectives

Understandthese vital, yet

overlookedrequirements

Classifycommon

nonfunctionalrequirements

Definenonfunctionalrequirements

What toExpect

Page 7: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 7

Nonfunctional Definition

Objective#1

Definenonfunctionalrequirements

#1

Page 8: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 8

Levels of Requirements

Business LevelDefines project scope.Identifies business benefitsand high-level objectives.

Focuses on business processesinformation and materials.

Names user roles and goals.User Level

Processing inputs and outputs.Defines functions, features,

and the environment.System Level

Levels

Page 9: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 9

Nonfunctional in Context

BusinessRequirements

UserRequirements

SystemRequirements

(Functional & Nonfunctional)

Sponsor point of view Scope of the project Business objectives User point of view User goals User inputs and

outputs Functional—what the

system does Nonfunctional—how

well the system does it

High-level

Detailed

Levels

Page 10: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 10

Oh No, Not Nonfunctional

FunctionalRequirements

NonfunctionalRequirements

Bucket1

Bucket2

“A nonfunctional requirement is anythingthat is not functional.” NOT!

Whatit’s NOT

Page 11: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 11

A Handful of Definitions

“Nonfunctional requirement – in software system engineering, a software requirement that describesnot what the software will do, but how the software will do it, for example, software performancerequirements, software external interface requirements, software design constraints, and softwarequality attributes. Nonfunctional requirements are difficult to test; therefore, they are usually evaluatedsubjectively.” [Thayer2000]

“Non-functional requirements – These are constraints on the services or functions offered by thesystem. They include timing constraints, constraints on the development process and standards.Non-functional requirements often apply to the system as a whole. They do not usually just apply toindividual system features or services.” [Sommerville2007]

“Non-functional requirement – A property, or quality, that the product must have, such as anappearance, or a speed or accuracy property.” [Robertson2003]

“Nonfunctional requirement – A description of a property or characteristic that a software system mustexhibit or a constraint that it must respect, other than an observable system behavior.” [Wiegers2003]

“Nonbehavioral requirements – Requirements that describe the required overall attributes of thesystem, including portability, reliability, efficiency, human engineering, testability, understandability, andmodifiability.” [Davis1993]

Example

Page 12: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 12

What if we removed…

General wordiness. Nonfunctional “examples.” “Descriptive” information that

doesn’t add value. Inclusion or reference to

“functional requirements.”

ScaledDown

Page 13: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 13

What Does It Really Mean?

…how the software will do it.

…constraints on the services or functionsoffered by the system....property, or quality, that the productmust have.…property that a software system mustexhibit or a constraint that it must respect.…required overall attributes of the system.

What’sleft?

Page 14: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 14

A Simplified Definition

NonfunctionalRequirement –

a specification ofhow well

a software systemmust function.

HowWell

Page 15: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 15

F Product features.F Describe the

actions with whichthe user work isconcerned.

F Characterized byverbs (active).

N Product properties.N Describe the

experienceof the user whiledoing the work.

N Characterized byadjectives.

Functional vs. Nonfunctional Differ

Page 16: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 16

Vital, Yet Why Overlooked?

Objective#2

Understand whynonfunctionalrequirements

are vital,yet overlooked

#2

Page 17: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 17

Importance of Nonfunctional

All functional requirements may be satisfied, but

if nonfunctionalrequirementsare overlooked,the systemwill fail.

NeedBoth

Page 18: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 18

Nonfunctional Challenges

No agreed upon formal definition. No complete list. No single universal

classification scheme. Different people and organizations

use different terminologies.

Don’tAgree

Page 19: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 19

Alternative Names

Quality Attributes. Quality Requirements. Nonbehavioral Requirements. “ilities” or “ities.” Spelled with or without a hyphen.

• Non-functional or Nonfunctional

ManyNames

Page 20: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 20

Nonfunctional Complexity

Relative

ComplexNature

Integrated

Subjective

Page 21: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 21

Nonfunctional Classification

Objective#3

Making sense ofnonfunctional

requirements witha user-focusedclassification

#3

Page 22: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 22

Access ControlAccessibilityAccountabilityAccuracyAdaptabilityAdditvityAdjustabilityAffordabilityAgilityAuditabilityAugmentabilityAutonomyAvailabilityBuffer Space*CapabilityCapacityClarityCode Space*CohesivenessCommonalityCompatibilityCompletenessComprehensibilityConceptualityConcisenessConfidentialityConfigurabilityConnectivityConsistency

ControllabilityCoordination CostCoordination TimeCorrectnessCouplingCustomer EvaluationCustomer LoyaltyCustomizabilityData Space*DecomposabilityDegradation of ServiceDependabilityDevelopment CostDevelopment TimeDistributivityDiversityEase of useEfficiencyElasticityEnhanceabilityEvolvailityExecution CostExtensibilityExternal ConsistencyFault ToleranceFeasibilityFlexibilityFormalityGenerality

Human EngineeringIndependenceInformativenessIntegrityInternal ConsistencyInteroperabilityIntuitivenessLearnabilityLeveragabilityMain Memory*MaintainabilityMaintenance CostMaintenance TimeMaturityMean PerformanceMeasurabilityMobilityModifiabilityModularityNaturalnessNomadicityObservabilityOff-Peak Period*OperabilityOperating CostPeak Period*PerformabilityPlanning CostPlanning Time

PortabilityPrecisionPredictabilityProcess Mgmt. TimeProductivityProject StabilityProject Tracking CostPromptnessQualityReconfigurabilityRecoverabilityRecoveryReliabilityRepeatabilityReplaceabilityReplicabilityResponse TimeResponsivenessRetirement CostReusabilityRisk Analysis CostRisk Analysis TimeRobustnessSafetyScalabilitySecuritySensitivitySimilaritySimplicity

Space BoundednessSpace PerformanceSpecificityStabilitySubjectivitySupportabilitySuretySurvivabilitySusceptibilitySustainabilityTanknessTestabilityThroughputTimelinessTraceabilityTrainabilityTransferabilityTransparencyUnderstandabilityUniform*UniformityUsabilityUser-FriendlinessValidityVariabilityVerifiabilityVersatilityVisibility*Performance

Overwhelmability? ScaryList?

Page 23: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 23

What are the User Needs?

Operation How well does the systemoperate for daily use bythe user?

Revision How easy is it to correcterrors and add functions?

Transition How easy is it to adapt tochanges in the technicalenvironment?

UserFocus

Page 24: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 24

A User-Focused Classification

Based on [McCall 1980] [Deutsch 1988] [Keller 1990]

UserFocus

User Concern Nonfunctional

How well is it safeguarded against unauthorized access? Access Security

How dependable is it during normal operating times? Availability

How fast, how many, and how well does it respond? Efficiency

How accurate and authentic is the data? Integrity

How immune is the system to failure? Reliability

How resilient is the system from failure? Survivability

How easy is it to learn and operate the system? Usability

How easy is it to modify to work in different environments? Flexibility

How easy is it to upkeep and repair? Maintainability

How easy is it to expand or upgrade its capabilities? Scalability

How easy is it to show it performs its functions? Verifiability

How easy is it to interface with another system? Interoperability

How easy is it to transport? Portability

How easy is it to convert for use in another system? Reusability

Ope

ratio

nR

evis

ion

Tran

sitio

n

Page 25: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 25

The extent to which the system issafeguarded against deliberateand intrusive faults from internaland external sources.

User concern• How well is the system

safeguarded againstunauthorized access?

Operation: Access Security

Page 26: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 26

The degree to which users candepend on the system to be up(able to function) during “normaloperating times.”

User concern• How dependable is

the system duringnormal operating times?

Operation: Availability

Page 27: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 27

The extent to which the softwaresystem handles capacity,throughput, and response time.

User concern• How fast does it process

(capacity)? How manyat a time (throughput)?Response time?

Operation: Efficiency

Page 28: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 28

Operation: Integrity

The degree to which the datamaintained by the software systemare accurate, authentic,and without corruption.

User concern• How accurate and

authentic are the data?

Page 29: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 29

The extent to which the softwaresystem consistently performs thespecified functions without failure.

User concern• How immune is

the system to failure?

Operation: Reliability

Page 30: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 30

The extent to which the softwaresystem continues to function andrecovers in the presence of asystem failure.

User concern• How resilient is

the systemfrom failure?

Operation: Survivability

Page 31: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 31

The ease in which the user is ableto learn, operate, prepare inputsand interpret outputs throughinteraction with a system.

User concern• How easy is it to

learn and operatethe system?

Operation: Usability

Page 32: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 32

The ease in which the softwarecan be modified to adapt todifferent environments.

User concern• How easy is it to

change and addnew features?

Revision: Flexibility

Page 33: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 33

The ease in finding and fixingfaults in the software system.

User concern• How easy is it

to upkeepand repairthe system?

Revision: Maintainability

Page 34: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 34

Revision: Scalability

The degree in which the softwaresystem is able to expand itsprocessing capabilities upward andoutward to support business growth.

User concern• How easy is it to

expand or upgradethe capabilitiesof the system?

Page 35: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 35

The extent to which tests,analysis, and demonstrations areneeded to prove that the softwaresystem will function as intended.

User concern• How easy is it

to show it performsits functions?

Revision: Verifiability

Page 36: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 36

Transition: Interoperability

The extent to which the softwaresystem is able to couple orfacilitate the interface with othersystems.

User concern• How easy is it

to interface withanother system?

Page 37: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 37

The ease in which a softwaresystem from its current hardwareor software environment can betransferred to anotherenvironment.

User concern• How easy is

it to transport?

Transition: Portability

Page 38: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 38

The extent to which a portion ofthe software system can beconverted for use in another.

User concern• How easy is it

to convert for usein another system?

Transition: Reusability

Page 39: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 39

Session Learning Objectives

Classifycommon

nonfunctionalrequirements

Understandthese vital, yet

overlookedrequirements

Definenonfunctionalrequirements

Recap

Page 40: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 40

Get Roxanne’s Book UsefulTool

Probing questionsto bring nonfunctional

requirements into focus;Proven techniques

to get the rightstakeholder involvement.

Page 41: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 41

2,000+ Suggested Questions UsefulTool

Sort and filter accordingto your needs.

Change thewording to suiteyour personal style.

Create customizedinterview guides thatyou can reuse fromproject to project.

Available only at www.RequirementsQuest.com

Page 42: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 42

Questions

®

Presented by: Roxanne E. Miller, CBAPwww.RequirementsQuest.com

ThankYou

Page 43: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 43

Page 44: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 44

Page 45: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 45

Page 46: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 46

Page 47: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 47

Page 48: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 48

Page 49: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 49

Page 50: EMBRYOLOGY CVS PART I

Understanding Nonfunctional Requirements - 50