Requirements Engineering - Quality Models

Post on 23-Jan-2018

70 views 0 download

Transcript of Requirements Engineering - Quality Models

Requirements Engineering:

Quality Models

CECS 542

Dr.BirgitPenzenstadler 1

Photocredit:Ma7hewKane,Unsplash

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]

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]

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]

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]

Dr.BirgitPenzenstadler 6

CommonNFRs

[GonçaloBorrêga]

Dr.BirgitPenzenstadler 7

CommonNFRs

[GonçaloBorrêga]

Dr.BirgitPenzenstadler 8

CommonNFRs

[GonçaloBorrêga]

Dr.BirgitPenzenstadler 9

CommonNFRs

[GonçaloBorrêga]

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?

QualitymodelsanddealingwithNFRs

•  UsageofQualitymodelsinRE•  Exemplaryqualitymodels•  DealingwithNFRsinAMDiRE

Dr.BirgitPenzenstadler 11

KRayker,stock.xchng

UsageofqualitymodelsinRE

12

Whatarequalitymodels?à Conceptualmodelsforthedescrip=onofquality.

UsageofqualitymodelsinRE•  Defini=onandassessmentofsobwarequality–beginninginRE

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

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

QualitymodelsanddealingwithNFRs

•  UsageofQualitymodelsinRE•  Exemplaryqualitymodels•  DealingwithNFRsinAMDiRE

Dr.BirgitPenzenstadler 14

KRayker,stock.xchng

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)

Example:Taxonomyofqualitya7ributes(QuaMoCo)

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

Assessmentofqualitymodels•  Exemplaryqualitymodelsdeterminethetaxonomyofqualitycriteriaanda7ributes

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

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

–  Othernon-func=onalaspectsareobennotcovered

17But:qualitymodelsarethebasisfortheclassifica=onofNFRs.

NFRTaxonomyacc.toAxelvanLamsweerde

18

ATMExamplesforNFRTaxonomybyLamsweerde

19

-Securityofpersonalizeddata-AvailabilityoftheAMT-...

ThesecurityconcepthastoadheretoIEC61508Standard.(àadequatearchitecture)

TheATMusesdataencryp=on.

Thefullfunc=onalityshallbeavailablebyMay2014.

ISO25010

•  Internalquality:mainlyvisibleinthecode,e.g.reusabilityofthecodewithinmaintainability

•  Externalquality:mainlycharacteris=csthatcanbeseenfromoutsidethesystembutnotnecessarilybytheuser

•  Qualityinuse:perceivedbytheuserofthesystemduringrun=me

Dr.BirgitPenzenstadler 20

ISO25010

ISO25010

Summary

23

Whatarequalitymodels?à  Conceptualmodelsforthedescrip=onofquality.

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

Examples§  QuaMoCo§  Lamsweerdetaxonomy§  ISO25010