requirements engineering - quality models

23
Requirements Engineering: Quality Models CECS 542 Dr. Birgit Penzenstadler 1 Photo credit: Ma7hew Kane, Unsplash

Upload: birgit-penzenstadler

Post on 23-Jan-2018

69 views

Category:

Software


0 download

TRANSCRIPT

Page 1: Requirements Engineering - Quality Models

Requirements Engineering:

Quality Models

CECS 542

Dr.BirgitPenzenstadler 1

Photocredit:Ma7hewKane,Unsplash

Page 2: Requirements Engineering - Quality Models

Mo=va=on

Dr.BirgitPenzenstadler 2

[GonçaloBorrêga:Thetruthaboutnon-func=onalrequirements.Blogentry,2013.h7p://www.outsystems.com/blog/2013/03/the-truth-about-non-func=onal-requirements-nfrs.html]

Page 3: Requirements Engineering - Quality Models

Func=onalRequirementsandTheirPoorCousins:TheTruthAboutNFRs

Dr.BirgitPenzenstadler 3

•  WheneveranybodysaysFunc=onalRequirement,Ithinkofprincesses.IthinkofArielleandCinderella.Ithinkofhoweachiscentraltoherstoryandembodiesaspecificiden=ty,andthenIthinkoftheprincesswhostandsoutasatruemetaphorforfunc=onalrequirements–theonewhoreflectstheroleperfectly.IthinkofSnowWhite.

•  SnowWhiteisafunc=onalrequirementifIeversawone.Sheisatoncecentraltoherstory,itsmainprotagonist,itsraisond’etre,yetsurroundedbyahostofsuppor=ngcharacters–dwarfs–whoserolesarenecessaryforthestorytobecomplete.Nodwarfs,norealstory.It’sthatsimple.Ifasingledwarfismissing,theen=restoryiscompromised.SnowWhiteiscompromised.

[GonçaloBorrêga:Thetruthaboutnon-func=onalrequirements.Blogentry,2013.h7p://www.outsystems.com/blog/2013/03/the-truth-about-non-func=onal-requirements-nfrs.html]

Page 4: Requirements Engineering - Quality Models

Dr.BirgitPenzenstadler 4

•  Andit’snearlythesamewithapplica=ons.Ifanapplica=onisthestoryandSnowWhiteisthefunc=onalrequirement,thenwecanthinkofdwarfsasnon-func=onalrequirements(NFRs).IfasingleNFRismissingfromanapplica=onthenthatapplica=oniscompromised.Deployingasquirrelyapplica=onisthesameasaddingmaintenanceissuesandtechnicaldebtdirectlytoyourapplica=onpor`olio.Eventually,thatapplica=onwillhavetobeaddressed,thoseNFRswillhavetobeadded,andtheITdepartmentwhodeployedtheappwillhavetocontendwiththecostofchangingsobware.

•  Howdoesthishappen?ChangingandmaintainingsobwareishardandthereforeexpensivetodoandITdepartmentsareobenrushedorunderfunded.However,iftheyareina‘Justdoit’modethenthoseopera=onal,non-func=onalrequirementsthatmakeanapplica=oncompleteareeasytoleaveoutorare‘forgo7en.’TheconsequencesofleavingtheseNFRsoutofanapplica=onleaddirectlytotheaforemen=onedmaintenanceproblemsandincreasedtechnicaldebt.

•  Here’sthelistofmostcommonNFRsthatweseeourcustomersworryingabout:

Func=onalRequirementsandTheirPoorCousins:TheTruthAboutNFRs

[GonçaloBorrêga:Thetruthaboutnon-func=onalrequirements.Blogentry,2013.h7p://www.outsystems.com/blog/2013/03/the-truth-about-non-func=onal-requirements-nfrs.html]

Page 5: Requirements Engineering - Quality Models

Dr.BirgitPenzenstadler 5

CommonNFRs

[GonçaloBorrêga:Thetruthaboutnon-func=onalrequirements.Blogentry,2013.h7p://www.outsystems.com/blog/2013/03/the-truth-about-non-func=onal-requirements-nfrs.html]

Page 6: Requirements Engineering - Quality Models

Dr.BirgitPenzenstadler 6

CommonNFRs

[GonçaloBorrêga]

Page 7: Requirements Engineering - Quality Models

Dr.BirgitPenzenstadler 7

CommonNFRs

[GonçaloBorrêga]

Page 8: Requirements Engineering - Quality Models

Dr.BirgitPenzenstadler 8

CommonNFRs

[GonçaloBorrêga]

Page 9: Requirements Engineering - Quality Models

Dr.BirgitPenzenstadler 9

CommonNFRs

[GonçaloBorrêga]

Page 10: Requirements Engineering - Quality Models

Dr.BirgitPenzenstadler 10

Func=onalRequirementsandTheirPoorCousins:TheTruthAboutNFRs

•  LikeSnowWhite’sdwarfstheseNFRsarenecessarytocomple=ngthestoryoftheapplica=on.Whileyoumightconsider2or3importantNFRsforaproject(likeperformanceandsecurity),you’llprobablynotcovertheothersextensivelyenough,oryoumightmissoutonthemalltogether.

•  Andifyoudoallocate=metodealwiththemall,whentheprojectscheduleslips,theNFRsmaybethefirstthingyou’lldrop…becausenoonereallyseesthem,andyourteamwillbelookingatthefunc=onalrequirementsinstead.

•  So,whetheryouplanforNFRsornot,chancesarehighyouwon’tcoverthem100%ofthe=meinyourdevelopmentproject.You’llcompromiseandnotthinkofthewholestory–thewholeapplica=on.

•  Butyoushouldtry.Youshouldtrytoavoidaddingtechnicaldebtandmaintenancenightmarestoyourfuturepor`oliowheneverpossible.Thecostofchangeisreal,andthemomentyoudeployyourapp,you’llhavetoaddressitsproblems.

•  FromyourexperiencewhataretheNFRsyouconstantlyseedevelopersandprojectteamsdroppingmostoben?

Page 11: Requirements Engineering - Quality Models

QualitymodelsanddealingwithNFRs

•  UsageofQualitymodelsinRE•  Exemplaryqualitymodels•  DealingwithNFRsinAMDiRE

Dr.BirgitPenzenstadler 11

KRayker,stock.xchng

Page 12: Requirements Engineering - Quality Models

UsageofqualitymodelsinRE

12

Whatarequalitymodels?à Conceptualmodelsforthedescrip=onofquality.

UsageofqualitymodelsinRE•  Defini=onandassessmentofsobwarequality–beginninginRE

•  Qualityassurance,forexampleofartefactsinRE•  Also:Classifica=onofrequirementsaccordingtocharacteris=cs

Page 13: Requirements Engineering - Quality Models

UsageofqualitymodelsinRE

13

Classifica=ononthebasisofqualitymodels•  Classifica=onofnon-func=onrequirementsaccordingto

characteris=cs.–  Whichdifferentclassesofrequirementsexist?–  Whichaspectsareimportanttoconsider?–  Whichmodelingconceptsandinterdependenciesareimportanttoconsider?

Delimita=on:Artefactmodels•  Ideallybuildonqualitymodels

(comparetosystemmodels)à Conceptmodel(ContentModel)à Structureoftheconceptmodel

(StructureModel)

Artefact-based RE Approach for Business Information Systems (Basic Components)

StructureModel

Artefact Model

ContentModel

Role Model

Process Model

Tool SupportCustomisation Approach

Met

a M

odel

RE

Ref

eren

ce M

odel

Structure Content

Proj

ect-s

peci

fic

Exem

plar

s

inst

ance

of

inst

ance

of

!

PRODUKT.PROJEKTBEZEICHNUNG - PRODUKT.NAME

Zuletzt geändert: 27.10.2010 13:28 3/20

Content

1! Introduction .......................................................................................................................... 6!

1.1! Overview ....................................................................................................................... 6!

1.2! Purpose .......................................................................................................................... 6!

1.3! References ..................................................................................................................... 7!

1.4! Scope ............................................................................................................................. 8!

2! System Vision ...................................................................................................................... 8!

2.1! Summary of Business Specification.............................................................................. 8!

2.2! Scope of Information System under Consideration ...................................................... 8!

2.2.1! System Overview ................................................................................................... 8!

2.2.2! External Systems .................................................................................................. 10!

2.2.3! Use Case Overview .............................................................................................. 10!

2.2.4! Information System Service Overview ................................................................ 10!

3! Information System Requirements..................................................................................... 11!

3.1! Actors .......................................................................................................................... 11!

3.2! Generic Scenarios........................................................................................................ 11!

3.3! Domain-specific Application Capabilities .................................................................. 12!

3.3.1! <<Business Domain>> <Name>.......................................................................... 12!

3.4! Information System Objects........................................................................................ 14!

3.5! System Quality Requirements..................................................................................... 16!

3.6! Architectural Constraints............................................................................................. 16!

3.6.1! Logical Restrictions.............................................................................................. 17!

3.6.2! Technical Restrictions .......................................................................................... 17!

4! Integrational Requirements ................................................................................................ 18!

4.1! Deployment Requirements.......................................................................................... 18!

4.2! Migration Requirements.............................................................................................. 18!

5! Organisational Requirements ............................................................................................. 19!

5.1! Project Requirements .................................................................................................. 19!

5.2! Obligations .................................................................................................................. 19!

5.3! Glossary....................................................................................................................... 19!

6! Abbreviations ..................................................................................................................... 20!

7! References .......................................................................................................................... 20!

Travel Ordering System

Requirements Specification

Version: 0.1

Project Name <Name>

Project Lead <Name>

Responsible <Name>

Created on <Date>

Last changed

X In process

Submitted

State

Completed

Document File

V-Modell XT Version VMRELEASE 1.3with BISA Extension

illustrative

Met

a M

odel

RE

Ref

eren

ce M

odel

Structure Content

Proj

ect-s

peci

fic

Exem

plar

s

inst

ance

of

inst

ance

of

!

PRODUKT.PROJEKTBEZEICHNUNG - PRODUKT.NAME

Zuletzt geändert: 27.10.2010 13:28 3/20

Content

1! Introduction .......................................................................................................................... 6!

1.1! Overview ....................................................................................................................... 6!

1.2! Purpose .......................................................................................................................... 6!

1.3! References ..................................................................................................................... 7!

1.4! Scope ............................................................................................................................. 8!

2! System Vision ...................................................................................................................... 8!

2.1! Summary of Business Specification.............................................................................. 8!

2.2! Scope of Information System under Consideration ...................................................... 8!

2.2.1! System Overview ................................................................................................... 8!

2.2.2! External Systems .................................................................................................. 10!

2.2.3! Use Case Overview .............................................................................................. 10!

2.2.4! Information System Service Overview ................................................................ 10!

3! Information System Requirements..................................................................................... 11!

3.1! Actors .......................................................................................................................... 11!

3.2! Generic Scenarios........................................................................................................ 11!

3.3! Domain-specific Application Capabilities .................................................................. 12!

3.3.1! <<Business Domain>> <Name>.......................................................................... 12!

3.4! Information System Objects........................................................................................ 14!

3.5! System Quality Requirements..................................................................................... 16!

3.6! Architectural Constraints............................................................................................. 16!

3.6.1! Logical Restrictions.............................................................................................. 17!

3.6.2! Technical Restrictions .......................................................................................... 17!

4! Integrational Requirements ................................................................................................ 18!

4.1! Deployment Requirements.......................................................................................... 18!

4.2! Migration Requirements.............................................................................................. 18!

5! Organisational Requirements ............................................................................................. 19!

5.1! Project Requirements .................................................................................................. 19!

5.2! Obligations .................................................................................................................. 19!

5.3! Glossary....................................................................................................................... 19!

6! Abbreviations ..................................................................................................................... 20!

7! References .......................................................................................................................... 20!

Travel Ordering System

Requirements Specification

Version: 0.1

Project Name <Name>

Project Lead <Name>

Responsible <Name>

Created on <Date>

Last changed

X In process

Submitted

State

Completed

Document File

V-Modell XT Version VMRELEASE 1.3with BISA Extension

illustrative

Met

a M

odel

RE

Ref

eren

ce M

odel

Structure Content

Proj

ect-s

peci

fic

Exem

plar

s

inst

ance

of

inst

ance

of

!

PRODUKT.PROJEKTBEZEICHNUNG - PRODUKT.NAME

Zuletzt geändert: 27.10.2010 13:28 3/20

Content

1! Introduction .......................................................................................................................... 6!

1.1! Overview ....................................................................................................................... 6!

1.2! Purpose .......................................................................................................................... 6!

1.3! References ..................................................................................................................... 7!

1.4! Scope ............................................................................................................................. 8!

2! System Vision ...................................................................................................................... 8!

2.1! Summary of Business Specification.............................................................................. 8!

2.2! Scope of Information System under Consideration ...................................................... 8!

2.2.1! System Overview ................................................................................................... 8!

2.2.2! External Systems .................................................................................................. 10!

2.2.3! Use Case Overview .............................................................................................. 10!

2.2.4! Information System Service Overview ................................................................ 10!

3! Information System Requirements..................................................................................... 11!

3.1! Actors .......................................................................................................................... 11!

3.2! Generic Scenarios........................................................................................................ 11!

3.3! Domain-specific Application Capabilities .................................................................. 12!

3.3.1! <<Business Domain>> <Name>.......................................................................... 12!

3.4! Information System Objects........................................................................................ 14!

3.5! System Quality Requirements..................................................................................... 16!

3.6! Architectural Constraints............................................................................................. 16!

3.6.1! Logical Restrictions.............................................................................................. 17!

3.6.2! Technical Restrictions .......................................................................................... 17!

4! Integrational Requirements ................................................................................................ 18!

4.1! Deployment Requirements.......................................................................................... 18!

4.2! Migration Requirements.............................................................................................. 18!

5! Organisational Requirements ............................................................................................. 19!

5.1! Project Requirements .................................................................................................. 19!

5.2! Obligations .................................................................................................................. 19!

5.3! Glossary....................................................................................................................... 19!

6! Abbreviations ..................................................................................................................... 20!

7! References .......................................................................................................................... 20!

Travel Ordering System

Requirements Specification

Version: 0.1

Project Name <Name>

Project Lead <Name>

Responsible <Name>

Created on <Date>

Last changed

X In process

Submitted

State

Completed

Document File

V-Modell XT Version VMRELEASE 1.3with BISA Extension

illustrative

Organisational LevelProcess Integration

Project LevelStatic Tailoring

Dynamic Tailoring

...

Project Scope defined

System Specificationaccepted

...

Business Analyst...

Requirements Engineer

Context Specification

Requirements Specification

System Specification

Page 14: Requirements Engineering - Quality Models

QualitymodelsanddealingwithNFRs

•  UsageofQualitymodelsinRE•  Exemplaryqualitymodels•  DealingwithNFRsinAMDiRE

Dr.BirgitPenzenstadler 14

KRayker,stock.xchng

Page 15: Requirements Engineering - Quality Models

Excursion:QualitymodelsQualitymodels•  Determinewhichqualityaspectsandconceptsexistandhowtheseare

related•  Supportthestructuredelicita=onandmodelingofqualityrequirementsà  E.g.viaataxonomyofqualitya7ributesExamples:•  Classifica=onacc.toBoehm(1978)•  IEEE29148SobwareRequirements

Documenta=onStandard(2011)•  ISO/IEC9126(1993,revised2001)•  TUMS&SEQualityModelChallenges:

–  Manydifferentqualityaspectsandrela=onsbetweenthem

–  Systema=csintheirapplica=oninRE(aswellasapplica=oninassessment)

15

[ISOStd.](Excerpt)

Page 16: Requirements Engineering - Quality Models

Example:Taxonomyofqualitya7ributes(QuaMoCo)

Ins-tutfürInforma-kChairIV:So8ware&SystemsEngineering 16

Page 17: Requirements Engineering - Quality Models

Assessmentofqualitymodels•  Exemplaryqualitymodelsdeterminethetaxonomyofqualitycriteriaanda7ributes

Cri=calaspects•  Themodelsobenstayontheabstractlevelof„-ili=es“à Nostatementaboutmeasurabilityandassessmentofqualitycriteria

•  NodirectapplicabilitytoRE–  Nocluesforexplicitdeduc=onofrequiredsystemcharacteris=csExample:Thedemandformul=-languagedocumenta=onsupportsmaintainability,butalsousability.

–  Othernon-func=onalaspectsareobennotcovered

17But:qualitymodelsarethebasisfortheclassifica=onofNFRs.

Page 18: Requirements Engineering - Quality Models

NFRTaxonomyacc.toAxelvanLamsweerde

18

Page 19: Requirements Engineering - Quality Models

ATMExamplesforNFRTaxonomybyLamsweerde

19

-Securityofpersonalizeddata-AvailabilityoftheAMT-...

ThesecurityconcepthastoadheretoIEC61508Standard.(àadequatearchitecture)

TheATMusesdataencryp=on.

Thefullfunc=onalityshallbeavailablebyMay2014.

Page 20: Requirements Engineering - Quality Models

ISO25010

•  Internalquality:mainlyvisibleinthecode,e.g.reusabilityofthecodewithinmaintainability

•  Externalquality:mainlycharacteris=csthatcanbeseenfromoutsidethesystembutnotnecessarilybytheuser

•  Qualityinuse:perceivedbytheuserofthesystemduringrun=me

Dr.BirgitPenzenstadler 20

Page 21: Requirements Engineering - Quality Models

ISO25010

Page 22: Requirements Engineering - Quality Models

ISO25010

Page 23: Requirements Engineering - Quality Models

Summary

23

Whatarequalitymodels?à  Conceptualmodelsforthedescrip=onofquality.

UsageofqualitymodelsinRE§  Defini=onandassessmentofsobwarequality–beginninginRE§  Qualityassurance,forexampleofartefactsinRE§  Also:Classifica=onofrequirementsaccordingtocharacteris=cs

Examples§  QuaMoCo§  Lamsweerdetaxonomy§  ISO25010