goals

更新时间:2022-11-25 15:15:37 阅读: 评论:0


2022年11月25日发(作者:wanacry)

Goal-OrientedRequirementsEngineering:AGuidedTour

AxelvanLamsweerde

Départementd’IngénierieInformatique

UniversitécatholiquedeLouvain

B-1348Louvain-la-Neuve(Belgium)

avl@

Abstract

Goalscapture,atdifferentlevelsofabstraction,thevarious

objectivesthesystemunderconsiderationshouldachieve.

Goal-orientedrequirementngineeringisconcernedwith

theuofgoalsforeliciting,elaborating,structuring,spec-

ifying,analyzing,negotiating,documenting,andmodifying

eahasreceivedincreasingattention

overthepastfewyears.

Thepaperreviewsvariousrearcheffortsundertaken

umentsinfavorofgoal

erthencom-

paresthemainapproachestogoalmodeling,goalspecifi-

cationandgoal-badreasoninginthemanyactivitiesof

thediscus-

sionmoreconcrete,arealcastudyisudtosuggest

whatagoal-orientedrequirementngineeringmethod

encewithsuchapproachesandtool

supportarebrieflydiscusdaswell.

uction

Goalshavelongbeenrecognizedtobeesntialcompo-

nentsinvolvedintherequirementngineering(RE)pro-

andSchomanstatedintheirminalpaper,

“requirementsdefinitionmustsaywhyasystemisneeded,

badoncurrentorforeenconditions,whichmaybe

saywhat

mustsayhowthesystemistobeconstructed”[Ros77].

Manyinformalsystemdevelopmentmethodologiesfrom

thegoodoldtimesincludedsomeformofgoal-badanaly-

sis,calledcontextanalysiis[Ros77],definitionstudy

[Hic74],participativeanalysis[Mun81],-

cally,thecurrentsystemunderconsiderationisanalyzedin

itsorganizational,operationalandtechnicaltting;prob-

lemsarepointedoutandopportunitiesareidentified;high-

levelgoalsarethenidentifiedandrefinedtoaddresssuch

problemsandmeettheopportunities;requirementsarethen

turalpracticehasled

requirementsdocumentationstandardstorequireaspecific

documentctiondevotedtotheobjectivesthesystem

shouldmeet(e,e.g.,theIEEE-Std-830/1993standards).

Surprisinglyenough,goalshavebeenlargelyignoredboth

fromtheliteratureonsoftwaremodelingandspecification

andfromtheliteratureonobject-orientedanalysis(one

notableexceptionis[Rub92]).UMLadvocatessometimes

confesstheneedforhigher-levelabstractions:“Inmywork,

Ifocusonurgoalsfirst,andthenIcomeupwithu

castosatisfythem;bytheendoftheelaborationperiod,I

expecttohaveatleastonetofsysteminteractionu

casforeachurgoalIhaveidentified”[Fow97,p.45]).

Theprominenttendencyinsoftwaremodelingrearchhas

beentoabstractprogrammingconstructsuptorequirements

levelratherthanpropagaterequirementsabstractionsdown

toprogramminglevel[Myl99].

Requirementngineeringrearchhasincreasinglyrecog-

nizedtheleadingroleplayedbygoalsintheREprocess

[Yue87,Rob89,Ber91,Dar91,Myl92,Jar93,Zav97b].

Suchrecognitionhasledtoawholestreamofrearchon

goalmodeling,goalspecification,andgoal-badreasoning

formultiplepurpos,suchasrequirementlaboration,

verificationorconflictmanagement,andundermultiple

forms,frominformaltoqualitativetoformal.

Theobjectiveofthispaperistoprovideabriefbuthope-

fullycomprehensivereviewofthemajoreffortsundertaken

n2firstprovidessome

backgroundmaterialonwhatgoalsare,whattheyareuful

for,wheretheyarecomingfrom,andwhentheyshouldbe

n3discussthe

majoreffortsinmodelinggoalsintermsoffeaturesand

-

tion4reviewsthemajortechniquesudforspecifying

n5ongoal-badreasoningreviewshowgoals

areudinbasicactivitiesoftheREprocesssuchas

requirementlicitation,elaboration,verification,valida-

tion,explanation,andnegotiation,andinparticularfordif-

ficultaspectsofthatprocesssuchasconflictmanagement,

requirementsdeidealization,-

tion6thensuggestswhatagoal-orientedREmethodmay

looklikebyenactingitonarealcastudyofasafety-criti-

turallyleadstoabrief

review,inSection7,ofindustrialprojectsinwhichtheu

ofsuchmethodswasfeltconclusive;thesupportingtools

-

tion8justopenssomefairlyrecentpiecesofgoal-bad

workbeyongrequirementngineering.

kgroundpicture

Reviewingthecurrentstateoftheartingoal-orientedRE

wouldnotmakemuchnwithoutfirstaddressingthe

what,why,whereandwhenquestionsaboutthisareaof

rearch.

Invitedmini-tutorialpaper,appearedin

RequirementsEngineering,Toronto,August2001,249-263.

ProceedingsRE’01,5thIEEEInternationalSymposiumon

2

Whataregoals?

Agoalisanobjectivethesystemunderconsiderationshould

rmulationsthusrefertointendedproperties

tobeensured;theyareoptativestatementsasoppodto

indicativeones,andboundedbythesubjectmatter[Jac95,

Zav97a].

Goalsmaybeformulatedatdifferentlevelsofabstraction,

rangingfromhigh-level,strategicconcerns(suchas“rve

morepasngers”foratraintransportationsystemor“pro-

videubiquitouscashrvice”foranATMnetworksystem)

tolow-level,technicalconcerns(suchas“accelerationcom-

manddeliveredontime”foratraintransportationsystemor

“cardkeptafter3wrongpasswordentries”foranATMsys-

tem).

Goalsalsocoverdifferenttypesofconcerns:functionalcon-

cernsassociatedwiththervicestobeprovided,andnon-

functionalconcernsassociatedwithqualityofrvice--such

assafety,curity,accuracy,performance,andsoforth.

Thesystemwhichagoalreferstomaybethecurrentoneor

thesystem-to-be;bothofthemareinvolvedintheREpro-

-

tem-to-beisinesncecomposite;itcomprisboththe

softwareanditnvironment,activecompo-

nentssuchashumans,dto

passiveones,activecomponentshavechoiceofbehavior

[Fea87,Yue87,Fic92];henceforthwewillcallthemagents.

Unlikerequirements,agoalmayingeneralrequirethecoop-

erationofahybridcombinationofmultipleagentstoachieve

it[Dar93].Inatraintransportationsystem,forexample,the

high-levelgoalofsafetransportationwilltypicallyrequire

thecooperationofonboardtraincontrollers,thetraintrack-

ingsystem,stationcomputers,thecommunicationinfra-

structure,pasngers,Msystem,the

goalofprovidingcashtoeligibleurswillrequirethecoop-

erationoftheATMsoftware,nsors/actuators,thecus-

tomer,heimportantoutcomesoftheREprocess

isthedecisiononwhatpartsofthesystemwillbeautomated

nderresponsibilityofasin-

gleagentinthesoftware-to-bebecomesarequirement

whereasagoalunderresponsibilityofasingleagentinthe

environmentofthesoftware-to-bebecomesanassumption

[Lam98b,Lam98c].Unlikerequirements,assumptionscan-

notbeenforcedbythesoftware-to-be;theywillhopefullybe

satisfiedthankstoorganizationalnormsandregulations,

physicallaws,etc.

Whyaregoalsneeded?

Therearemanyreasonswhygoalsaresoimportantinthe

REprocess.

•AchievingrequirementscompletenessisamajorREcon-

cern..Goalsprovideaprecicriterionforsufficientcom-

pletenessofarequirementsspecification;thespecification

iscompletewithrespecttoatofgoalsifallthegoals

canbeprovedtobeachievedfromthespecificationand

thepropertiesknownaboutthedomainconsidered

[Yue87].

•AvoidingirrelevantrequirementsisanothermajorREcon-

rovideaprecicriterionforrequirements

pertinence;arequirementispertinentwithrespecttoat

ofgoalsinthedomainconsideredifitsspecificationis

udintheproofofonegoalatleast[Yue87].

•Explainingrequirementstostakeholdersisanotherimpor-

rovidetherationaleforrequirements,in

awaysimilartodesigngoalsindesignprocess[Mos85,

Lee91].Arequirementappearsbecauofsomeunderly-

inggoalwhichprovidesabaforit[Ros77,Dar91,

Som97].Moreexplicitly,agoalrefinementtreeprovides

traceabilitylinksfromhigh-levelstrategicobjectivesto

icular,forbusi-

nessapplicationsystems,goalsmaybeudtorelatethe

software-to-betoorganizationalandbusinesscontexts

[Yu93].

•Goalrefinementprovidesanaturalmechanismforstruc-

turingcomplexrequirementsdocumentsforincread

readability.(Thisatleasthasbeenourexperienceinall

industrialprjectswehavebeeninvolvedin,eSection7.)

•Requirementngineersarefacedwithmanyalternatives

tobeconsideredduringtherequirementlaborationpro-

ensiveexperiencerevealedthatalternative

goalrefinementsprovidetherightlevelofabstractionat

whichdecisionmakerscanbeinvolvedforvalidating

choicesbeingmadeorsuggestingotheralternativesover-

ativegoalrefinementsallowalterna-

tivesystemproposalstobeexplored[Lam00c].

•Managingconflictsamongmultipleviewpointsisanother

majorREconcern[Nus94].Goalshavebeenrecognizedto

providetherootsfordetectingconflictsamongrequire-

mentsandforresolvingthemeventually[Rob89,

Lam98b].

•Separatingstablefrommorevolatileinformationis

anotherimportantconcernformanagingrequirements

rementreprentsoneparticularwayof

achievingsomespecificgoal;therequirementistherefore

morelikelytoevolve,towardsanotherwayofachieving

thatsamegoal,herlevelagoal

is,havemadethatsame

obrvation[Ant94].Itturnsoutthatdifferentsystemver-

sionsoftenshareacommontofhigh-levelgoals;the

currentsystemandthesystem-to-becorrespondtoalterna-

tiverefinementsofcommongoalsinthegoalrefinement

graph,andcanthereforebeintegratedintoonesinglegoal

model(eSection3).

•Lastbutnotleast,goalsdrivetheidentificationofrequire-

mentstosupportthem;theyhavebeenshowntobeamong

thebasicdrivingforces,togetherwithscenarios,forasys-

tematicrequirementlaborationprocess[Dar91,Rub92,

Dar93,Ant98,Dub98,Kai00,Lam00c].Wewillcome

backtothisinSections5and6.

Wherearegoalscomingfrom?

Goalidentificationisnotnecessarilyaneasytask[Lam95,

Ant98,Hau98,Rol98].Sometimestheyareexplicitlystated

bystakehokdersorinpreliminarymaterialavailableto

tentheyareimplicitsothat

goalelicitationhastobeundertaken.

Thepreliminaryanalysisofthecurrentsystemisanimpor-

alysisusually

resultsinalistofproblemsanddeficienciesthatcanbefor-

3

ngthoformulationsyieldsafirst

listofgoalstobeachievedbythesystem-to-be.

Inourexperience,goalscanalsobeidentifiedsystematically

byarchingforintentionalkeywordsinthepreliminary

documentsprovided,interviewtranscripts,etc.[Lam00c].

Onceapreliminarytofgoalsandrequirementsisobtained

andvalidatedwithstakeholders,manyothergoalscanbe

identifiedbyrefinementandbyabstraction,justbyasking

HOWandWHYquestionsaboutthegoals/requirements

alreadyavailable,respectively[Lam95,Lam00c].

Moresophisticatedtechniquesforgoalrefinementand

abstraction(notably,fromscenarios)willbereviewedin

oalsareidentifiedbyresolvingconflicts

amonggoalsorobstaclestogoalachievement,eSection5

too.

Acommonmisunderstandingaboutgoal-oriented

approachesisthattheyareinherentlytop-down;thisisbyno

meansthecaasitshouldhopefullybeclearnowfromthe

discussionabove.

Whenshouldgoalsbemadeexplicit?

Itisgenerallyarguedthatgoalmodelsarebuiltduringthe

earlyphasoftheREprocess[Dar93,Yu97,Dub98].The

basisfortheargumentisthedrivingroleplayedbygoalsin

thatprocess;thesoonestagoalisidentifiedandvalidated,

esnotimplyanysortofwaterfall-like

requirementlaborationprocess,irements

"implement"goalsmuchthesamewayasprogramsimple-

mentdesignspecifications,thereissomeinevitableinter-

twiningofgoalidentificationandrequirementlaboration

[Lam95,Swa82].Goalsmaythussometimesbeidentified

fairlylatelyintheREprocess--especiallywhenWHYques-

tionsabouttechnicaldetailsorscenarios,initiallytakenfor

granted,areraidlatelyintheprocess.

nggoals

Thebenefitofgoalmodelingistosupportheuristic,qualita-

tiveorformalreasoningschemesduringrequirementngi-

neering(eSection5).Goalsaregenerallymodelledby

intrinsicfeaturessuchastheirtypeandattributes,andby

theirlinkstoothergoalsandtootherelementsofarequire-

mentsmodel.

anbeofdifferenttypes.

Severalclassificationaxeshavebeenpropodinthelitera-

ture.

Functionalgoalsunderliervicesthatthesystemis

expectedtodeliverwhereasnon-functionalgoalsreferto

expectedsystemqualitiessuchascurity,safety,perfor-

mance,usability,flexibility,customizability,interoperability,

andsoforth[Kel90].Thistypologyisoverlygeneralandcan

mple,satisfactiongoalsarefunctional

goalsconcernedwithsatisfyingagentrequests;information

goalsarefunctionalgoalsconcernedwithkeepingsuch

agentsinformedaboutobjectstates[Dar93].Non-functional

mple,accu-

racygoalsarenon-functionalgoalsrequiringthestateof

softwareobjectstoaccuratelyreflectthestateofthecorre-

spondingmonitored/controlledobjectsintheenvironment

[Myl92,Dar93]--suchgoalsareoftenoverlookedintheRE

process;theirviolationmayberesponsibleformajorfailures

[Lam00a].Performancegoalsarespecializedintotimeand

spaceperformancegoals,theformerbeingspecializedinto

respontimeandthroughputgoals[Nix93].Securitygoals

arespecializedintoconfidentiality,integrityandavailability

goals[Amo94];thelattercanbespecializedinturnuntil

axonomy

fornon-functionalgoalscanbefoundin[Chu00].

Anotherdistinctionoftenmadeintheliteratureisbetween

softgoals,whosatisfactioncannotbeestablishedina

clear-cutn[Myl92],and(hard)goalswhosatisfaction

canbeestablishedthroughverificationtechniques[Dar93,

Dar96].Softgoalsareespeciallyufulforcomparingalter-

nativegoalrefinementsandchosingonethatcontributesthe

“best”tothem,ebelow.

Anotherclassificationaxisisbadontypesoftemporal

behaviourprescribedbythegoal.[Dar93].Achieve(resp.

cea)goalsgeneratesystembehaviours,inthattheyrequire

sometargetpropertytobeeventuallysatisfiedinsomefuture

state();maintain()goalsretrict

behaviours,inthattheyrequiresometargetpropertytobe

permanentlysatisfiedineveryfuturestate()

zegoalscompare

behaviourstofavorthowhichbetterensuresomesofttar-

getproperty.

Inasimilarvein,[Sut93]proposaclassificationaccording

todesiredsystemstates(e.g.,positive,negative,alternative,

feedback,orexception-repair)andtogoallevel(e.g.,policy

level,functionallevel,domainlevel).[Ant94]makesadis-

tinctionbeweenobjectivegoals,thatrefertoobjectsinthe

system,andadverbialgoals,thatrefertowaysofachieving

objectivegoals.

Goaltypesandtaxonomiesareudtodefineheuristicsfor

goalacquisition,goalrefinement,requirementsderivation,

andmi-formalconsistency/completenesschecking[Dar93,

Sut93,Ant98,Chu00,Ant01],ortoretrievegoalspecifica-

tionsinthecontextofspecificationreu[Mas97].

theirtype,goalscanalsobeintrinsi-

callycharacterizedbyattributessuchastheirnameandtheir

specification(eSection4).Priorityisanotherimportant

attributethatcanbeattachedtogoals[Dar93].Qualitative

valuesforthisattributeallowmandatoryoroptionalgoalsto

ties

areoftenudforresolvingconflictsamonggoals[Rob89,

Lam98b].Othergoalattributesthathavebeenpropod

includegoalutilityandfeasibility[Rob89].

fferenttypesoflinkshavebeenintro-

ducedintheliteraturetorelategoals(a)witheachotherand

(b)nks

ussinter-

goallinksfirst,andthenlinksbetweengoalsandotherele-

mentsofrequirementsmodelssuchasagents,scenarios,or

operations.

Linksbetweengoalsareaimedatcapturingsituationswhere

ly

borrowedfromproblemreductionmethodsinArtificial

4

Intelligence[Nil71],AND/ORgraphsmaybeudtocap-

turegoalrefinementlinks[Dar91,Dar93].AND-refinement

linksrelateagoaltoatofsubgoals(calledrefinement);

thismeansthatsatisfyingallsubgoalsintherefinementis

-refinementlinks

relateagoaltoanalternativetofrefinements;thismeans

thatsatisfyingoneoftherefinementsissufficientforsatisfy-

framework,aconflictlink

betweentwogoalsisintroducedwhenthesatisfactionof

oneofthemmaypreventtheotherfrombeingsatisfied.

Tholinktypesareudtocapturealternativegoalrefine-

mentsandpotentialconflicts,andtoprovethecorrectnessof

goalrefinements(eSection5).

Weakerversionsoftholinktypeshavebeenintroducedto

relatesoftgoals[Rob89,Myl92,Chu00]asthelattercan

dof

goalsatisfaction,goalsatisficingisintroducedtoexpress

thatsubgoalsareexpectedtoachievetheparentgoalwithin

acceptablelimits,alisthen

saidtocontributepartiallytotheparentgoal,regardlessof

othersubgoals;itmaycontributepositivelyornegatively.

lisAND-

decompodintosubgoalsandallsubgoalsaresatisficed,

thentheparentgoalissatisficeable;butifasubgoalisdenied

lcontributesnega-

tivelytoanothergoalandtheformerissatisficed,thenthe

ulesareudforqualitativereason-

ingaboutgoalsatisficing(eSection5).

Besideinter-goallinks,goalsareingeneralalsolinkedto

troduces

AND/ORoperationalizationlinkstorelategoalstotheoper-

ationswhichensurethemthroughcorrespondingrequired

pre-,post-,andtriggerconditions[Lam98c,Lam00c](the

oldernotionofoperationalization[Dar91,Dar93]was

revidandsimplifiedfrompracticalexperience).Others

haveudsimilarlinksbetweengoalsandoperations,e.g.,

[Ant94,Ant98,Kai00].In[Myl92],theinter-goalcontribu-

tionlinktypesareextendedtocapturethepositive/negative

contributionofrequirementstogoals;argumentationlinks

arealsointroducedtoconnectsupportingargumentstocon-

tributionlinks.

Therehasbeenamassiveamountofworkonlinkinggoals

andscenariostogether--e.g.,[Fic92,Dar93,Pot95,Lei97,

Sut98,Ant98,Hau98,Lam98b,Rol98,Kai00,Ant01].The

obviousreasonisthatscenariosandgoalshavecomplemen-

tarycharacteristics;theformerareconcrete,narrative,proce-

dural,andleaveintendedpropertiesimplicit;thelatterare

abstract,declarative,andmakeintendedpropertiexplicit.

Scenariosandgoalsthuscomplementeachothernicelyfor

argethelink

betweenagoalandascenarioisacoveragelink;themain

differencesbetweenthevariousmodelingproposalsliein

thefactthatascenariomaybetype-levelorinstance-level,

maybeanexampleoracounter-exampleofdesiredbehav-

ior,andmayexerciagoaloranobtsacletogoalachieve-

ment.

Goalmodelsmayalsoberelatedtoobjectmodelsasgoal

formulationsrefertospecificobjects,e.g.,entities,relation-

shipsoragents[Dar93].Thislinktypeallowspertinent

objectmodelstobesystematicallyderivedfromgoalmodels

[Lam00c].

Variousproposalshavealsobeenmadetorelategoalsto

,responsibilitylinksareintroducedtorelate

aybeassignedto

alternativeagentsthroughORresponsibilitylinks;this

allowsalternativeboundariestobeexploredbetweenthe

software-to-beanditnvironment.“Responsibility”means

thattheagentiscommittedtorestrictitsbehaviorbyper-

formingtheoperationsitisassignedtoonlyunderrestricted

conditions,namely,thoprescribedbytherequiredpre-,

post-,andtriggerconditions[Dar93].Thisnotionofrespon-

sibilityderivesfrom[Fea87,Fin87];itisstudiedindepthin

[Let01].Wishlinksarealsosometimesudinheuristicsfor

agentassignment[Dar91];e.g.,oneshouldavoidassigninga

goaltoanagentwishingothergoalsinconflictwiththat

goal..

Inthei*framework[Yu93,Yu97],varioustypesofagent

dependencylinksaredefinedtomodelsituationswherean

agentdependsonanotherforagoaltobeachieved,ataskto

beachieved,htype

ofdependencyanoperatorisdefined;operatorsmaybecom-

binedtodefineplansthatagentsmayutoachievegoals.

Thepurpoofthismodellingistosupportvariouskindsof

checkssuchastheviabilityofanagent'splanorthefulfil-

ghinitially

conceivedformodelingtheorganizationalenvironmentof

thesoftware-to-be,theTROPOSprojectiscurrentlyaiming

atpropagatingthisframeworktolaterstagesofthesoftware

lifecycle,notably,formodelingagent-orientedsoftware

architectures.

Variousauthorshavealsosuggestedreprentingthelinks

betweengoalsandorganizationalpolicies,e.g.,[Sib93,

Fea93,Sut93].

Attheprocesslevel,itmaybeufulfortraceabilitypurpo

[Got95]torecordwhichactorownswhichgoalorsome

viewofit[Lam98b].

yinggoals

Goalsmustobviouslybespecifiedprecilytosupport

requirementlaboration,verification/validation,conflict

management,negotiation,explanationandevolution.

Aninformal(butpreci)specificationshouldalwaysbe

giventomakeitpreciwhatthegoalnamedesignates

[Zav97a].

Semi-formalspecificationsgenerallydeclaregoalsinterms

oftheirtype,attribute,andlinks(eSection3).Suchdecla-

rationsmayingeneralbeprovidedalternativelyusingatex-

tualoragraphicalsyntax(e,e.g.,[Dar98]).IntheNFR

framework[Myl92],agoalisspecifiedbythemostspecific

subtypeitisaninstanceof,parametersthatdenotetheobject

attributesitrefersto,andthedegreeofsatisficing/denialby

-formalspecificationsoftenincludekey-

mple,

Achieve,MaintainandAvoidverbsinKAOSspecifyatempo-

rallogicpatternforthegoalnameappearingasparameter

[Dar93];theyimplicitlyspecifythatacorrespondingtarget

conditionshouldholdsometimeinthefuture,alwaysinthe

5

futureunlesssomeotherconditionholds,orneverinthe

entistoprovidealightweightalternativeto

fullformalizationofthegoalformulation,stillamenableto

sicthasbeenextendedwith

qualitativeverbssuchasImprove,Increa,Reduce,Make,

andsoforth[Ant98].Inasimilarspirit,goalsin[Rol98]are

reprentedbyverbswithdifferentparametersplayingdif-

ferentroleswithrespecttotheverb--e.g.,targetentities

affectedbythegoal,beneficiaryagentsofthegoalachieve-

ment,resourceentitiesneededforgoalachievement,source

ordestinationofacommunicationgoal,etc.

Formalspecificationsasrtthegoalformulationinafully

,suchasr-

tionsarewritteninareal-timelineartemporallogicheavily

inspiredfrom[Man92,Koy92]withtheusualoperatorsover

pastandfuturestates,boundbytimevariables;mantically,

theycapturemaximaltsofdesiredbehaviors[Dar93,

Let01].TheKAOSlanguageis“2-button”inthattheformal

asrtionlayerisoptional;itisudtypicallyforcritical

aspectsofthesystemonly.

Moreformalspecificationsyieldmorepowerfulreasoning

schemesatthepriceofhigherspecificationeffortandlower

usabilitybynon-experts;thevarioustechniquesbriefly

reviewedhereshouldthusbeenascomplementarymeans

ratherthanalternativeones;theirsuitabilitymayheavily

dependonthespecifictypeofsystembeingconsidered.

ingaboutgoals

Theultimatepurpoofgoalmodellingandspecificationis

tosuportsomeformofgoal-badreasoningforREsubpro-

cesssuchasrequirementlaboration,consistencyand

completenesschecking,alternativelection,evolutionman-

agement,andsoforth.

5.1Goalverification

Oneofthebenefitsofgoal-orientedREisthatonecanverify

thattherequirementntailthegoalsidentified,andcheck

thatthetofrequirementsspecifiedissufficientlycomplete

forthetofgoalsidentified[Yue87].Moreprecily,ifR

denotesthetofrequirements,Asthetofenvironmental

assumptions,Dthetofdomainproperties,andGthetof

goals,thefollowingsatisfactionrelationmustholdforeach

goalginG::

R,As,D

|==gwithR,As,D|=/=fal

Thismaybecheckedinformally,orformallyifthegoal

temporallogicspecificationsonemayrelyontheproofthe-

oryoftemporallogicandutoolssuchas,e.g.,STeP

[Man96].

Alightweightalternativeistouformalrefinementpatterns

foAchieve,MaintainandAvoidgoals[Dar96].Suchpatterns

areprovedcorrectandcompleteonceforall;refinementsin

thegoalgrapharethenverifiedbymatchingthemtoone

hematicalproof

entlyudpatternis

thedecomposition-by-milestonepatternthatrefinesaparent

Achievegoal

P⇒◊Q

intotwosubgoals:

P⇒◊R,R⇒◊Q

wherethe“◊“temporaloperatormeans“sometimeinthe

future”.Anotherfrequentlyudpatternisthedecomposi-

tion-by-capatternthatrefinesthesameparentAchieve

goalintothreesubgoals:

P∧R⇒◊Q,P⇒◊R,P⇒PWQ

wherethe“W“temporaloperatormeans“alwaysinthe

futureunless”.

Thetechniquesabovecanbeudforgoalsthatcanbesaid

tgoals,thequal-

itativereasoningprocedureprovidedbytheNFRframework

isparticularlyappropriate[Myl92].Thisproceduredeter-

minesthedegreetowhichagoalissatisficed/deniedby

lower-levelgoals/rlinkinthegoal

graphislabelledS(satisficed)ifitissatisficeableandnot

deniable;D(denied)ifitisdeniablebutnotsatisficeable;C

(conflicting)ifitisbothsatisficeableanddeniable;andU

(undetermined)

generalideaistopropagatesuchlabelsalongsatisficedlinks

bottom-up,fromlower-levelnodes(ements)to

higher-levelnodes().Additionallabelvaluescan

beassignedatintermediatestagesoftheprocedure,namely,

U

+

(inconclusivepositivesupport),U

-

inconclusivenegative

support,and?(requiringurinterventiontospecifyan

appropriatelabelvalue).Rulesforbottom-uppropagationof

leofapplica-

tionofthisframeworktoperformancegoalscanbefoundin

[Nix93].

5.2Goalvalidation

Goalscanbevalidatedbyidentifyingorgeneratingscenar-

iosthatarecoveredbythem[Hau98].Onemayeventhinkof

enactingsuchscenariostoproduceanimations[Hey98].The

scenarioidentificationprocessisgenerallybadonheuris-

tics[Sut98,Ant98].

In[And89],plan-badtechniquesareudtotentatively

generatescenariosshowingthatagoalcanbeachievedwith-

,prohibitedcondi-

tionsandoperationsarespecifiedformallybysimplestate

matedplannerfirstproducesatrialsce-

nariotoachievethegoalcondition;itthenchecksforfaults

inthepropodscenariobylookingforscenariosachieving

theprohibitedconditions;finallyitassiststhespecifierin

modifyingthetofoperationsincafaultsarefound.

[Fic92]exploresthisdeficiency-drivenparadigmfurther.

Thesystemisspecifiedbyatofgoals,formalizedinsome

restrictedtemporallogic,atofscenarios,expresdina

Petrinet-likelanguage,andatofagentsproducing

restrictedscenariostoachievethegoalstheyareassignedto.

Thegeneralapproachconsistsof(a)tryingtodetectincon-

sistenciesbetweenscenariosandgoals,and(b)applying

operatorsthatmodifythespecificationtoremovetheincon-

(a)iscarriedoutbyaplannerthatarches

rators

offeredtotheanalystinStep(b)encodeheuristicsforspeci-

ficationdebugging--e.g.,introduceanagentwhorespon-

sibilityistopreventthestatetransitionsthatarethelaststep

6

reoperatorsforintroducingnew

typesofagentswithappropriateresponsibilities,splitting

existingtypes,introducingcommunicationandsynchroniza-

tionprotocolsbetweenagents,weakeningidealizedgoals,

eatedapplicationofdeficiencydetectionand

debuggingoperatorsallowstheanalysttoexplorethedesign

spaceandhopefullyconvergetowardsasatisfactoryspecifi-

cation.

5.3Goal-badrequirementlaboration

Thetechniquejustsketchedaboveisafirststeptowards

makingverification/validationcontributetotherequirements

nreasonforgoal-orientedRE

afterallistoletgoalshelpelaboratingtherequirementssup-

-badelaborationtypicallyconsistsof

ahybridoftop-downandbottom-upprocess,plusaddi-

tionalprocessdrivenbythehandlingofpossibleabnormal

agentbehaviors,themanagementofconflictinggoals,the

recognitionofanalogicalsituationsfromwhichspecifica-

tionscanbetranspod,,however,thatfor

explanatorypurpotheresultingrequirementsdocumentis

ingeneralbetterprentedinatop-downway.

Goal/requirementelicitationbyrefinement

Anobvious(buteffective)informaltechniqueforfindingout

subgoalsandrequirementsistokeepaskingHOWquestions

aboutthegoalsalreadyidentified[Lam95,Lam00c].

Formalgoalrefinementpatternsmayalsoproveeffective

whengoalspecificationsareformalized;typically,theyhelp

findingoutsubgoalsthatwereoverlookedbutareneededto

erasimpletraincontrolsys-

tem,forexample,andthefunctionalgoaloftrainprogress

throughconcutiveblocks:

GoalAchieve[TrainProgress]

FormalDef(∀t:rTrain,b:Block)[On(tr,b)⇒◊On(tr,b+1)]

Aparticularcathatcomesdirectlytomindiswhenblock

b+1’ssignalistto‘go’.Twosubgoalscomingnaturallyto

mindarethefollowing:

GoalAchieve[ProgressWhenGoSignal]

FormalDef∀tr:Train,b:Block

On(tr,b)∧Go[b+1]⇒◊On(tr,b+1)

GoalAchieve[SignalSetToGo]

FormalDef∀tr:Train,b:Block

On(tr,b)⇒◊Go[b+1]

Thistentativerefinementmatchesthedecomposition-by-

capatterninSection5.1andthereforeallowsthefollow-

ingmissingsubgoaltobepointedout:

GoalMaintain[TrainWaiting]

FormalDef∀tr:Train,b:Block

On(tr,b)⇒On(tr,b)WOn(tr,b+1)

Anothereffectivewayofdrivingtherefinementprocessis

badonthedeterminationthatanagentcandidatetogoal

assignmentcannotrealizethegoal,e.g.,becauitcannot

monitorthevariablesappearinginthegoalantecedentor

controlthevariablesappearinginthegoalconquent.

[Let01]givesatofconditionsforgoalunrealizability;this

tisprovedcompleteandprovidesthebasisforarich,sys-

tematictofagent-drivenrefinementstacticsforgenerating

realizablesubgoalsandauxiliaryagents.

Goal/requirementelicitationbyabstraction

Anobvious(buteffective)informaltechniqueforfindingout

moreabstract,parentgoalsistokeepaskingWHYquestions

aboutoperationaldescriptionsalreadyavailable[Lam95,

Lam00c].

Moresophisticatedtechniqueshavebeendevidtoelicit

nabidirectionalcoupling

betweentype-levelscenariosandgoalverbtemplatesasdis-

cusdinSection4,[Rol98]proposheuristicrulesfor

findingoutalternativegoalscoveringascenario(corre-

spondingtoalternativevaluesfortheverbparameters),

missingcompaniongoals,orsubgoalsofthegoalundercon-

eformalside,[Lam98c]describesan

inductivelearningtechniquethattakesscenariosaxam-

plesandcounterexamplesofintendedbehaviorandgener-

atesgoalspecificationsintemporallogicthatcoverallthe

positivescenariosandexcludeallthenegativeones.

Notealsothatrefinementpatternswhenappliedinthe

reverwaycorrespondtoabstractionpatternsthatmaypro-

ducemorecoar-grainedgoals.

Goaloperationalization

Afeweffortshavebeenmadetosupporttheprocessof

derivingpre-,post-,andtriggerconditionsonsoftwareoper-

ationssoastoensuretheterminalgoalsintherefinement

ncipleistoapplyderivationruleswho

premimatchthegoalunderconsideration[Dar93,Let01].

Consider,forexample,thefollowinggoal:

GoalMaintain[DoorsClodWhileMoving]

FormalDef∀tr:Train,loc,loc’:Location

At(tr,loc)∧oAt(tr,loc’)∧loc<>loc’

⇒='clod'∧o(='clod')

wherethe“o“temporaloperatormeans“inthenextstate”.

Applyingthefollowingderivationrule

G:P∧(P1∧oP2⇒Q1∧oQ2),DomPre:P1,DomPost:P2

---------------------------------------------------------------------

ReqPreforG:Q1,ReqPostforG:Q2

wederivethefollowingoperationalization:

OperationMove

Inputtr:Train;loc,loc’:Location;OutputAt

DomPreAt(tr,loc)∧loc<>loc’

DomPostAt(tr,loc’)

RequiredPreforDoorsClodWhileMoving:='clod'

RequiredPostforDoorsClodWhileMoving:='clod'

Analogicalreu

Goal-badspecificationscanalsobeacquiredbyretrieving

structurallyandmanticallyanalogspecificationsina

repositoryofreusablespecificationcomponents,andthen

transposingthespecificationsfoundaccordingtothestruc-

turalandmanticmatchingrevealedbytheretrievalpro-

cess[Mas97].

Obstacle-drivenelaboration

First-sketchspecificationsofgoals,requirementsand

assumptionsareoftentooideal;theyarelikelytobeviolated

fromtimetotimeintherunningsystemduetounexpected

kofanticipationofexceptional

behaviorsmayresultinunrealistic,unachievableand/or

incompleterequirements.

7

Suchexceptionalbehaviorsarecapturedbyasrtionscalled

acleOissaidto

obstructagoalGinadomainDomiff

{O,Dom}|=¬Gobstruction

Dom|=/=¬Odomainconsistency

ObstaclesthusneedtobeidentifiedandresolvedatREtime

inordertoproducerobustrequirementsandhencemorereli-

ionofobstaclewasjustmentionedin

[Yue87].Itwalaboratedfurtherin[Pot95]wherescenarios

areshowntobeagoodvehicleforidentifyinggoalobstruc-

uristicsforidentifyingobstaclescanbefound

in[Pot95]and[Ant98].Moreformaltechniquesare

describedin[Lam98a]andthen[Lam00a]for:

•theabductivegenerationofobstaclesfromgoalspecifica-

tionsanddomainproperties,

•thesystematicgenerationofvarioustypesofobstaclereso-

lution,e.g.,goalsubstitution,agentsubstitution,goal

weakening,goalrestoration,obstaclemitigation,orobsta-

cleprevention.

Obstaclescanalsoberesolvedatruntimeinsomecas,e

[Fea98].

5.4Conflictmanagement

Requirementngineersliveinaworldwhereconflictsare

therule,nottheexception[Eas94].Conflictsgenerallyari

frommultipleviewpointsandconcerns[Nus94].Theymust

bedetectedandeventuallyresolvedeventhoughtheymay

betemporarilyufulforelicitingfurtherinformation

[Hun98].Variousformsofconflictarestudiedin[Lam88b],

inparticular,aweakformcalleddivergencewhichoccurs

frequentlyinpractice.

ThegoalsG

1

,...,G

n

aresaidtobedivergentiffthereexistsa

non-trivialboundaryconditionBsuchthat:

{B,∀iG

i

,Dom}|=falinconsistency

{B,∀

j≠i

Gj,Dom}|=/=falminimality

(“Non-trivial”meansthatBisdifferentfromthebottomfal

andthecomplement¬∀iG

i

).Notethatthetraditionalca

ofconflict,inthenoflogicalinconsistency,amountsto

aparticularcaofdivergence.

DivergencesneedtobeidentifiedandresolvedatREtimein

andheuristictechniquesaredescribedin[Lam98b]for:

•theabductivegenerationofboundaryconditionsfromgoal

specificationsanddomainproperties,

•thesystematicgenerationofvarioustypesofdivergence

resolution.

Aqualitativeprocedureissuggestedin[Rob89]forhandling

aistodetectthematrequirementslevel

r

oftheprocedurefirstidentifiestherequirementlements

thatcorrespondtoeachotherinthevariousviewpointsat

hand;conflictdetectionisthencarriedoutbymappingsyn-

tacticdifferencesbetweenthecorrespondingrequirements

elementstodifferencesinvaluesofvariablesinvolvedinthe

ctresolutionis

attemptednextbyappealingtocompromis(e.g.,through

compensationsorrestrictionspecialization),orgoalsubstitu-

y,theconflictresolutionatgoallevelisdown

propagatedtotherequirementslevel.

5.5Goal-badnegotiation

Conflictresolutionoftenrequiresnegotiation.[Boe95]pro-

posaniterative3-stepprocessmodelforgoal-badnego-

iterationofaspiralmodel

forrequirementlaboration,

(1)allstakeholdersinvolvedareidentifiedtogetherwith

theirwishedgoals(calledwinconditions);

(2)conflictsbetweenthegoalsarecapturedtogetherwith

theirassociatedrisksanduncertainties;

(3)goalsarereconciledthroughnegotiationtoreachamutu-

allyagreedtofgoals,constraints,andalternativesfor

thenextiteration.

5.6Alternativelection

Whichgoalrefinementshouldbelectedwhenalternative

onesareidentified?Whichagentassignmentshouldbe

lectedwhenalternativeonesareidentified?Thisisbyand

relocaltacticsofcour,such

asfavoringalternativeswithlesscriticalobstaclesorcon-

flicts,butasystematicapproachhasnotemergedsofarin

theREliterature.

Onepromisingdirectionwouldbetouqualitativereason-

ingschhemesàlaNFR[Myl92]tolectanalternative

refinementthatcontributesthebesttothesatisficingofsoft

goalsrelatedtocost,reliability,rite-

riaanalysistechniquescouldbehelpfulhere.

-orientedREmethodinaction

Itisnowtimetodemonstratehowsomeofthetechniques

reviewedabovecanfittogetherinagoal-orientedRE

backtoacastudywehavealreadypre-

ntedin[Lam00c]becauitillustratesmanyoftheissues

raidhere;theinitialdocumentisunbiadasitcomesfrom

anindependentsourceinvolvedinthedevelopment,;itis

publicallyavailable[BAR99]--unlikemostdocumentsfrom

theindustrialprojectswehavebeeninvolvedin;thesystem

isareal,complex,real-time,safety-criticalone(thisallows

onetosuggestthatgoal-orientedREisnotonlyufulfor

businessapplications).Theinitialdocumentfocusonthe

controlofspeedandaccelerationoftrainsunderresponsibil-

ityoftheAdvancedAutomaticTrainControlbeingdevel-

opedfortheSanFranciscoBayAreaRapidTransit(BART)

system.

WefollowtheKAOSmethod[Dar93,Lam95,Lam00c]in

ordertoincrementallyelaboratefourcomplementarysub-

models:(1)thegoalmodel,(2)theobjectmodel;(3)the

agentresponsibilitymodel,leadingtoalternativesystem

boundaries;(4)lrefinement

graphilaboratedbyelicitinggoalsfromavailablesources

andaskingwhyandhowquestions(goalelaborationstep);

objects,relationshipsandattributesarederivedfromthegoal

specifications(objectmodelingstep);agentsareidentified,

alternativeresponsibilityassignmentsareexplored,and

agentinterfacesarederived(responsibilityassignmentstep);

8

operationsandtheirdomainpre-andpostconditionsare

identifiedfromthegoalspecifications,andstrengthenedpre-

/postconditionsandtriggerconditionsarederivedsoasto

ensurethecorrespondinggoals(operationalizationstep).

Thestepsarenotstrictlyquentialasprogressinonestep

maypromptparallelprogressinthenextoneorbacktracking

toapreviousone.

Theprentationwillbesketchyforlackofspace;theinter-

estedreadermayreferto[Let01]foramuchgreaterlevelof

details.

Goalidentificationfromtheinitialdocument

Afirsttofgoalsisidentifiedfromafirstreadingofthe

availablesource[BART99]byarchingforintentionalkey-

wordssuchas“objective”,“purpo”,“intent”,“concern”,

“inorderto”,rofsoftgoalsaretherebyidenti-

fied,e.g.,“ServeMorePasngers”,“NewTracksAdded”,“Mini-

mize[DevelopmentCosts]”,“Minimize[DistanceBetweenTrains]”,

“SafeTransportation”,oalsarequalitativelyrelated

toeachotherthroughsupportlinks:Contributes(+),Con-

tributesStrongly(++),Conflicts(-),ConflictsStrongly(--).

possible,keywordsfromthemi-formallayeroftheKAOS

ntain

andAvoidkeywordsspecify“always”goalshavingthetem-

poralpattern❑(P→Q)and❑(P→¬Q),

Achievekeywordspecifies“eventually”goalshavingthe

patternP⇒◊“→“connectivedenoteslogicalimpli-

cation;❑(P→Q)isdenotedbyP⇒Qforshort.

denotesoft-goals,parallelogramsdenoteformalizablegoals,

arrowsdenotegoal-subgoallinks,andadoublelinelinking

arrowsdenotesanOR-refinementintoalternativesubgoals.

Formalizinggoalsandidentifyingobjects

Theobjectmodelingstepcanstartassoonasgoalscanbe

nciplehereistoiden-

tifyobjects,relationshipsandattributesfromgoalspecifica-

er,forexample,thefollowinggoalatthe

bottomofFigure1:

GoalMaintain[TrackSegmentSpeedLimit]

InformalDefAtrainshouldstaybelowthemaximumspeed

thetrackgmentcanhandle.

FormalDef∀tr:Train,s:TrackSegment:

On(tr,s)⇒≤imit

Fromthepredicate,objects,andattributesappearinginthis

goalformalizationwederivethefollowingportionofthe

objectmodel:

Similarly,theothergoalatthebottomofFigure5isspeci-

fiedasfollows:

GoalMaintain[WCS-DistBetweenTrains]

InformalDefAtrainshouldnevergetsoclotoatrainin

frontsothatifthetraininfrontstopssuddenly(e.g.,

derailment)thenexttrainwouldhitit.

FormalDef∀tr1,tr2:Train:

Following(tr1,tr2)⇒>-Dist

(TheInformalDefstatementsinthogoaldefinitionsare

takenliterallyfromtheinitialdocument;WCS-Distdenotes

thephysicalworst-castoppingdistancebadonthephys-

icalspeedofthetrain.)Thisnewgoalspecificationallows

theaboveportionoftheobjectmodeltobeenrichedwithLoc

andWCS-DistattributesfortheTrainobjecttogetherwitha

malizationofthe

goalAvoid[TrainEnterinClodGate]inFigure1willfurther

enrichtheobjectmodelbyelementsthatarestrictlyneces-

husprovideapreci

drivingcriterionforidentifyingelementsoftheobjectmodel.

ElicitingnewgoalsthroughWHYquestions

Itisoftenthecathathigher-levelgoalsunderpinninggoals

easilyidentifiedfrominitialsourcesarekeptimplicitinsuch

y,however,beufulforfindingoutother

importantsubgoalsofthehigher-levelgoalthatweremiss-

ingforthehigher-levelgoaltobeachieved.

Asmentionedbefore,higher-levelgoalsareidentifiedby

askingWHYquestionsaboutthegoalsavailable.

Forexample,askingaWHYquestionaboutthegoalMain-

tain[WCS-DistBetweenTrains]yieldstheparentgoalAvoid[Train-

Collision];askingaWHYquestionaboutthegoal

Avoid[TrainEnteringClodGate]yieldsanewportionofthegoal

graph,showninFigure2.

Inthisgoalsubgraph,thecompanionsubgoalMaintain[Gate-

ClodWhenSwitchInWrongPosition]walicitedformallyby

matchingaformalrefinementpatterntotheformalizationof

theparentgoalAvoid[TrainOnSwitchInWrongPosition],foundby

aWHYquestion,andtotheformalizationoftheinitialgoal

Avoid[TrainEnteringClodGate][Dar96,Let01].Thedotjoin-

ingthetwolowerrefinementlinkstogetherinFigure2

ServeMorePasngers

Max[Train-

Speed]

NewTracksAdded

Minimize[Costs]

Min[Distance

BetweenTrains]

SafeTransport

Avoid[TrainEntering

ClodGate]

Maintain

[WCS-DistBetweenTrains]

Maintain

[TrackSegmentSpeedLimit]

...

Min[DvlptCosts]

Min

[OperationCosts]

...

Figure1-PreliminarygoalgraphfortheBARTsystem

--

...

++

TrackSegment

SpeedLimit:SpeedUnit

...

Train

Speed:SpeedUnit

...

On

9

meansthattherefinementis(provably)complete.

ElicitingnewgoalsthroughHOWquestions

Goalsneedtoberefineduntilsubgoalsarereachedthatcan

beassignedtoindividualagentsinthesoftware-to-beandin

algoalsbecomerequirementsinthe

formercaandassumptionsinthelatter.

MoreconcretegoalsareidentifiedbyaskingHOWques-

mple,aHOWquestionaboutthegoalMain-

tain[WCS-DistBetweenTrains]inFigure1yieldsanextensionof

thegoalgraphshowninFigure3.

TheformalizationofthethreesubgoalsinFigure3maybe

udtoprovethattogethertheyentailtheparentgoalMain-

tain[WCS-DistBetweenTrains]formalizedbefore[Let01].The

subgoalsneedberefinedinturnuntilassignablesubgoals

eterefinementtreeisgiveninAnnex1.

Identifyingpotentialresponsibilityassignments

Annex1alsoprovidesapossiblegoalassignmentamong

signmentemstheonesuggested

intheinitialdocument[BAR99].Forexample,theaccuracy

goalMaintain[AccurateSpeed/PositionEstimates]isassignableto

theTrackingSystemagent;thegoalMaintain[SafeTrainRespon-

ToCommand]isassignabletotheOnBoardTrainControlleragent;

thegoalMaintain[SafeCmdMsg]isassignabletotheSpeed/

AccelerationControlSystemagent.

Itisworthnoticingthatgoalrefinementsandagentassign-

mentsarebothcapturedbyAND/a-

tiverefinementsandassignmentscanbe(andprobablyhave

been)mple,theparentgoalMaintain[WCS-

DistBetweenTrains]inFigure3mayalternativelyberefinedby

thefollowingthreeMaintainsubgoals:

PreceedingTrainSpeed/PositionKnownToFollowingTrain

SafeAccelerationBadOnPreceedingTrainSpeed/Position

NoSuddenStopOfPreceedingTrain

ThecondsubgoalabovecouldbeassignedtotheOnBoard-

ternativewouldgiveritoa

fullydistributedsystem.

Assuggestedbefore,qualitativereasoningtechniquesinthe

styleof[Myl99]mightbeappliedtothesoftgoalsidentified

inFigure1tohelpmakingchoicesamongalternatives.

Derivingagentinterfaces

LetusnowassumethatthegoalMaintain[SafeCmdMsg]atthe

bottomofthetreeinAnnex1hasbeenactuallyassignedto

theSpeed/erfacesof

thisagentintermsofmonitoredandcontrolledvariablescan

bederivedfromtheformalspecificationofthisgoal(wejust

takeitsgeneralformhereforsakeofsimplicity):

GoalMaintain[SafeCmdMsg]

FormalDef∀cm:CommandMessage,ti1,ti2:TrainInfo

∧D=D∧FollowingInfo(ti1,ti2)

⇒≤F(ti1,ti2)∧>G(ti1)

TofulfilitsresponsibilityforthisgoaltheSpeed/Acceleration-

ControlSystemagentmustbeabletoevaluatethegoalante-

nt’s

ereasitscon-

nd

terwillinturnbecomemon-

itoredvariablesoftheOnBoardTrainControlleragent,bysimilar

hniqueforderivingtheagent’smonitored

andcontrolledvariablesisfairlysystematic,e[Let01]for

details.

Identifyingoperations

Theoperationalizationstepstartsbyidentifyingtheopera-

tionsrelevanttogoalsanddefiningtheirdomainpre-and

efertospecificstatetransitions;for

eachsuchtransitionanoperationcausingitisidentified;its

domainpre-andpostconditioncapturethestatetransition.

ForthegoalMaintain[SafeCmdMsg]formalizedaboveweget,

forexample,

OperationSendCommandMessage

InputTrain{argtr}

OutputComandMessage{rescm}

DomPre¬

∧D=

Thisdefinitionminimallycaptureswhatanyndingofa

commandtoatrainisaboutinthedomainconsidered;it

doesnotensureanyofthegoalsitshouldcontributeto.

Operationalizinggoals

Thenextoperationalizationsub-stepistostrengthensuch

domainconditionssothatthevariousgoalslinkedtothe

lsassignedtosoftwareagents,

thisstepproducesrequirementsontheoperationsforthecor-

ionedbefore,

derivationrulesforanoperationalizationcalculusareavail-

able[Dar93,Let01].Inourexample,theyyieldthefollow-

ingrequirementsthatstrengthenthedomainpre-and

postconditions:

Avoid

[TrainEnteringClodGate]

Maintain[TrainOnCorrectLine]

Avoid[TrainOnSwitchInWrongPostion]

Maintain[GateClodWhen

SwitchInWrongPosition]

Figure2-EnrichingthegoalgraphbyWHYelicitation

Maintain

[WCS-DistBetweenTrains]

Maintain[Safe

Speed/Acceleration

Commanded]

Maintain

[SafeTrainRespon

ToCommand]

Maintain

[NoSuddenStop

OfPrecedingTrain]

Figure3-Goalrefinement

10

OperationSendCommandMessage

InputTrain{argtr},TrainInfo;OutputComandMsg{rescm}

DomPre...;DomPost...

ReqPostforSafeCmdMsg:

Tracking(ti1,tr)∧Following(ti1,ti2)

→≤F(ti1,ti2)∧>G(ti1)

ReqTrigforCmdMsgSentInTime:

I

≤0.5c

¬∃cm2:CommandMessage:

∧D=

(Thetriggerconditioncapturesanobligationtotriggerthe

operationassoonastheconditiongetstrueandprovidedthe

xampleabovethecondi-

tionsaysthatnocommandhasbeenntineverypaststate

uptoonehalf-cond[BAR99].)

Usingamixofmi-formalandformaltechniquesforgoal-

orientedrequirementlaboration,wehavereachedthelevel

atwhichmostformalspecificationtechniqueswouldstart.

Anticipatingobstacles

Asmentionedbefore,goalsalsoprovideabasisforearly

generationofhigh-levelexceptionswhich,ifhandledprop-

erlyatrequirementngineeringtime,maygeneratenew

requirementsformorerobustsystems.

Thefollowingobstaclesweregeneratedtoobstructthesub-

goalAchieve[CommandMsgIssuedInTime]:

CommandMsgNotIssued,

CommandMsgIssuedLate,

CommandMsgSentToWrongTrain

ForthecompanionsubgoalAchieve[CommandMsgDeliveredIn-

Time]wesimilarlygeneratedobstaclessuchas:

CommandMsgDeliveredLate,

CommandMsgCorrupted

ThelastcompanionsubgoalMaintain[SafeCmdMsg]maybe

obstructedbythecondition

UnsafeAcceleration,

taclegenerationprocessforasinglegoal

resultsinagoal-anchoredfault-tree,thatis,arefinementtree

edwithstandard

fault-treeanalysis[Lev95],obstacleanalysisisgoal-ori-

ented,formal,andproducesobstacletreesthatareprovably

completewithrespecttowhatisknownaboutthedomain

[Lam00a].

Alternativeobstacleresolutionsmaythenbegeneratedto

mple,the

obstacleCommandMsgSentLateabovecouldberesolvedbyan

alternativedesigninwhichaccelerationsarecalculatedby

theon-boardtraincontrollerinstead;thiswouldcorrespond

tacleUnsafeAccelera-

tionabovecouldberesolvedbyassigningtheresponsibility

forthesubgoalSafeAccelerationCommandedofthegoalMain-

tain[SafeCmdMsg]totheVitalStationComputeragentinstead

[BART99];thiswouldcorrespondtoanagentsubstitution

aclemitigationstrategycouldbeappliedto

resolvetheobstacleOutOfDateTrainInfoobstructingtheaccu-

racygoalMaintain[AccurateSpeed/PositionEstimates],byintro-

ducinganewsubgoalofthegoalAvoid[TrainCollisions],

namely,thegoalAvoid[CollisionWhenOutOfDateTrainInfo].This

newgoalhastoberefinedinturn,e.g.,bysubgoalsrequiring

fullbrakingwhenthemessageoriginationtimetaghas

expired.

Handlingconflicts

TheinitialBARTdocumentsuggestsaninterestingexample

ofdivergence[BART99,p.13].Roughlyspeaking,thetrain

commandedspeedmaynotbetoohigh,becauotherwiit

forcesthedistancebetweentrainstobetoohigh,inorderto

achievetheDistanceIncreadWithCommandedSpeedsubgoalof

theSafeTransportationgoal;ontheotherhand,thecom-

mandedspeedmaynotbetoolow,inordertoachievethe

LimitedAccelerAbove7mphOfPhysicalSpeedsubgoalofthe

eemstobeaflavorofdivergence

here.

Wethereforelookattheformalizationofthesuspectgoals:

GoalMaintain[CmdedSpeedCloToPhysicalSpeed]

FormalDef∀tr:Train

CM

≥0

CM

≤+f(dist-to-obstacle)

and

GoalMaintain[CmdedSpeedAbove7mphOfPhysicalSpeed]

FormalDef∀tr:Train

CM

≥0⇒

CM

>+7

Thetwogoalsareformallydetectedtobedivergentusing

thetechniquesdescribedin[Lam98b].Thegeneratedbound-

aryconditionformakingthemlogicallyinconsistentis

◊(∃tr:Train)(

CM

≥0∧f(dist-to-obstacle)≤7)

Theresolutionoperatorsfrom[Lam98b]maybeudto

generatepossibleresolutions;inthiscaoneshouldkeep

thesafetygoalasitisandweakentheotherconflictinggoal

toremovethedivergence:

GoalMaintain[CmdedSpeedAbove7mphOfPhysicalSpeed]

FormalDef∀tr:Train

CM

≥0⇒

CM

>+7

∨f(dist-to-obstacle)≤7

enceandtoolsupport

Thepurrpoofthispaperisobviouslynottodeliveran

djustliketomentionherethat

LimitedAccelerWhen

CmdedSpeedAbove7mph

OfPhysicalSpeed

ServeMorePsgers

SmoothMove

Min[Dist

BetwTrains]

Max

[TrainSpeed]

SafeTransport

DistanceBetweenTrains

IncreadWithCmdedSpeed

Maintain[CmdedSpeed

CloToPhysicalSpeed]

Maintain[CmdedSpeed

Above7mphOfPhysicalSpeed]

Figure4-Conflictinspeed/accelerationcontrol

11

experiencewithgoal-orientedrequirementngineeringis

growingsignificantly,indifferentdomain,differenttypesof

projects,mple,Antonand

colleagueshavereportedtheirexperiencewithBPRapplica-

tions[Ant94]andvarioulectroniccommercesystems

[Ant98,Ant01].OurunderstandingisthattheNFRandi*

frameworkshavebeenexperiencedinrealttingsaswell.

OurKAOSmethodhasbeenudin11industrialprojectsto

ncludethegoal-orientedreengineeringofa

complex,unintelligiblerequirementsdocumentforaphone

systemonTVcable;thegoal-orientedmodelingofacom-

plexairtrafficcontrolapplication;thegoal-orientedengi-

neeringofrequirementsforavarietyofsystemssuchas:a

copyrightmanagementsystemforamajoreditorofcartoon

strips,amanagementsystemforahospitalemergencyr-

vice,adrugdeliverymanagementsystemforabigdrugdis-

tributor,anewinformationsystemforabigdailynewspaper,

aweb-badjobinformationrver,aweb-badlanguage

translationsystem,

anidea,thecopyrightmanagementsystemhas65goals,75

entitytypesandrelationships,11agents,and45operations;

eof

thegoalrefinementgraphfortheotherapplicationsranges

from50to100goalsandrequirements.

Thoprojectscouldnothavebeenundertakenwithouttool

rentGRAILenvironmentprovidesagraphi-

caleditortightlycoupledwithasyntax-directededitor,an

object-orientedspecificationdatabarversupportingque-

riesformodelanalysis,staticmanticscheckers,viewfil-

teringmechanisms,aHTMLgeneratorformodelbrowsing

inhypertextmode,andvarioustypesofreportgenerators.

Currenteffortsaredevotedtoanopen,fullJavaversion;the

planthenistointegratemoreformalsupportsuchasanima-

tors,modelcheckers,testdatagenerators,formalverifica-

tiontools,andsoforth.

ientationbeyondRE

Ithasbeensuggestedrecentlythatthefunctionaland(espe-

cially)non-functionalgoallaboratedintheREprocess

couldbeudforderivingandrefiningarchitectures

[Lam00c]andforannotatingdesignpatterns[Chu00].The

arejustpreliminaryeffortsthatshouldbeexpandedinanear

future.

sion

Goal-orientedrequirementngineeringhasmanyadvan-

tages,someofwhichwererecurrentlyfeltintheaforemen-

tionedprojects,torestateafewofthem:

•objectmodelsandrequirementscanbederivedsystemati-

callyfromgoals;

•goalsprovidetherationaleforrequirements;

•agoalgraphprovidesverticaltraceabilityfromhigh-level

strategicconcernstolow-leveltechnicaldetails;itallows

evolvingversionsofthesystemunderconsiderationtobe

integratedasalternativesintoonesingleframework;

•goalAND/ORgraphsprovidetherightabstractionlevelat

whichdecisionmakerscanbeinvolvedforimportantdeci-

sions;

•thegoalrefinementstructureprovidesacomprehensible

structurefortherequirementsdocument;

•alternativegoalrefinementsandagentassignmentsallow

alternativesystemproposalstobeexplored;

•goalformalizationallowsrefinementstobeprovedcorrect

andcomplete.

WehopetohaveconvincedthereaderthatthisareaofREis

remanyopenissuestoworkonin

thefuture,ofcour;thereadermayreferto[Lam00c]fora

discussionofthem.

sionswithRobertDarimontand

EmmanuelLetierwereapermanentsourceofinspirationandcon-

frontationofsomeoftheissuesraidinthispaper;theywerein

particularinstrumentalindevelopingKAOSspecificationsforvar-

iousnon-trivialsystems,includingtheoneoutlinedhere[Let01].I

amalsogratefultotheKAOS/GRAILcrewatCEDITIforusing

someoftheideasprentedhereinindustrialprojectsandprovid-

ingregularfeedback,amongothers,EmmanuelleDelor,Philippe

Massonet,andAndrépeoplewhoworkismen-

tionedinthispaperhadsomeinfluenceonitinsomewayor

another(whethertheyrecognizeandlikeitornot!).

References

[Amo94]o,ce-Hall,

1994.

[And89],"APropodPerspectiveShift:View-

ingSpecificationDesignasaPlanningProblem",-

shoponSoftwareSpecificationandDesign,IEEE,1989,177-184.

[Ant94],ken,,"GoalDecomposition

andScenarioAnalysisinBusinessProcessReengineering,Proc.

CAISE'94,LNCS811,Springer-Verlag,1994,94-104.

[Ant98],“TheUofGoalstoSurfaceRequire-

mentsforEvolvingSystems”,-98:20thIntrnationalCon-

ferenceonSoftwareEnginering,Kyoto,April1998.

[Ant01],,o,,

“DerivingGoalsfromaU-CaBadRequirementsSpecification”,

RequirementsEngineeringJournal,Vol.6,2001,63-73.

[BAR99]BayAreaRapidTransitDistrict,AdvanceAutomatedTrainCon-

trolSystem,NationalLabs,

/.

[Ber91]sandLuqi,-

ison-Wesley,1991.

[Boe95],,tz,andMingJuneLee,“Soft-

wareRequirementsNegotiationandRenegotiationAids:ATheory-W

BadSpiralApproach”,ware

Engineering,Seattle,1995,pp.243-253.

[Chu00],,ulos,Non-functional

Academic,Boston,

2000.

[Dar91]ne,sweerde,“Goal-Directed

ConceptAcquisitioninRequirementsElicitation”,-6-6th

oponSoftwareSpecificationandDesign,Como,1991,14-

21.

[Dar93]ne,,“Goal-Directed

RequirementsAcquisition”,ScienceofComputerProgramming,Vol.

20,1993,3-50.

[Dar96]sweerde,“FormalRefinementPat-

ternsforGoal-DrivenRequirementsElaboration”,’4-

oundationsofSoftwareEngi-

neering,SanFrancisco,October1996,179-190.

12

[Dar98]nt,,et,sweerde,

“GRAIL/KAOS:AnEnvironmentforGoal-DrivenRequirementsEngi-

neering”,’wareEngineering,

Kyoto,April1998,vol.2,58-62.(Earlierandshorterversionfoundin

’wareEngineering,Boston,May

1997,612-613.)

[Dub98],,"FromEarlytoLateFormal

Requirements:AProcess-ControlCaStudy”,’98-9th

InternationalWorkshoponSoftwareSpecificationandDesign,Isobe,

IEEECSPress,April1998,34-42.

[Dwy99],t,“PatternsinProperty

SpecificationsforFinite-StateVerification”,-99:21thIntr-

nationalConferenceonSoftwareEnginering,LosAngeles,411-420.

[Eas94]brook,“ResolvingRequirementsConflictswithCom-

puter-SupportedNegotiation”.InRequirementsEngineering:Social

andTechnicalIssues,(Eds.),AcademicPress,

1994,41-65.

[Fea87]r,“LanguageSupportfortheSpecificationandDevelop-

mentofCompositeSystems”,rammingLanguages

andSystems9(2),Apr.87,198-234.

[Fea93]r,"RequirementsReconnoiteringattheJunctureof

DomainandInstance",’ire-

mentsEngineering,Jan.1993,73-77.

[Fea98]r,,sweerde,d,“Rec-

oncilingSystemRequirementsandRuntimeBehaviour”,Proc.

IWSSD’98-9thInternationalWorkshoponSoftwareSpecificationand

Design,Isobe,IEEECSPress,April1998.

[Fic92],“KnowledgeReprentationandReasoning

intheDesignofCompositeSystems",wareEngi-

neering,June1992,470-482.

[Fin87],"BuildingFormalSpecificationsUsing

StructuredCommonSen",-4-4thInternationalWork-

shoponSoftwareSpecificationandDesign(Monterey,Ca.),IEEE,

April1987,108-113.

[Fow97],n-Wesley,1997.

[Got95]stein,“ContributionStructures”,Proc.

RE’irementsEngineering,York,

IEEE,1995,100-107.

[Gro01],“FromNon-FunctionalRequirementsto

DesignthroughPatterns”,RequirementsEngineeringJournalVol.6,

2001,18-36.

[Hau98],,haupt,“RequirementsElicita-

tionandValidationwithRealWorldScenes”,are.

Engineering,SpecialIssueonScenarioManagement,December1998,

1036-1054.

[Hey98],“Scenario-BadTechniquesforSup-

portingtheElaborationandtheValidationofFormalRequirements”,

RequirementsEngineeringJournalVol.3No.3-4,1998,202-218.

[Hic74],,ll,SystemDevelopment

olland,1974.

[Hun98]eh,“ManagingInconsistentSpecifica-

tions:Reasoning,AnalysisandAction”,ACMTransactionsonSoft-

wareEngineeringandMethodology,r1998,335-

367.

[Jac95]n,SoftwareRequirements&Specifications-ALexicon

ofPractice,ss,Addison-Wesley,

1995.

[Jar93],“Vision-DrivenRequirementsEngineering”,

8.1WorkingConferenceonInformationSystemDevel-

opmentProcess,NorthHolland,1993,3-22.

[Kai00],“ADesignProcessBadonaModelCombiningSce-

narioswithGoalsandFunctions”,ems,Manand

Cybernetic,Vol.30No.5,September2000,537-551.

[Kel90],,"SpecifyingSoftware

QualityRequirementswithMetrics",inTutorial:SystemandSoftware

RequirementsEnginering,n,Eds.,IEEE

ComputerSocietyPress,1990,145-163.

[Koy92]s,Specifyingmessagepassingandtime-criticalsystems

withtemporallogic,LNCS651,Springer-Verlag,1992.

[Lam95]sweerde,nt,et,"Goal-

DirectedElaborationofRequirementsforaMeetingScheduler:Prob-

lemsandLessonsLearnt",’

RequirementsEngineering,March1995,194-203.

[Lam98a],“IntegratingObstaclesinGoal-

DrivenRequirementsEngineering”,-98:20thIntrnational

ConferenceonSoftwareEnginering,Kyoto,April1998.

[Lam98b]sweerde,,"ManagingCon-

flictsinGoal-DrivenRequirementsEngineering",-

ering,SpecialIssueonInconsistencyManagementin

SoftwareDevelopment,November1998.

[Lam98c]et,"InferringDeclarative

RequirementsSpecificationsfromOperationalScenarios",IEEETrans.

ering,SpecialIssueonScenarioManagement,

December1998,1089-1114.

[Lam00a],“HandlingObstaclesinGoal-

OrientedRequirementsEngineering”,IEEETransactionsonSoftware

Engineering,SpecialIssueonExceptionHandling,2000.

[Lam00b]sweerde,“FormalSpecification:aRoadmap”.InThe

FutureofSoftwareEngineering,stein(ed.),ACMPress,2000.

[Lam00c]sweerde,“RequirementsEngineeringintheYear00:

ARearchPerspective”.InvitedKeynotePaper,’2000:

22ndInternationalConferenceonSoftwareEngineering,ACMPress,

2000,pp.5-19.

[Lee91],"ExtendingthePottsandBrunsModelforRecording

DesignRationale",wareEngi-

neering,IEEE-ACM,1991,114-125.

[Lei97],,er,na,,

ros,“EnhancingaRequirementsBalinewithScenar-

ios”,RequirementsEngineeringJournalVol.2No.4,1997,184-198.

[Let01],ReasoningaboutAgentsinGoal-OrientedRequirements

,UniversityofLouvain,May2001.

[Lev95]n,n-

Wesley,1995.

[Man92],TheTemporalLogicofReactiveandCon-

currentSystems,Springer-Verlag,1992.

[Man96]ndtheSTepGroup,“STeP:Deductive-Algorithmic

VerificationofReactiveandReal-TimeSystems”,’96-8th

uter-AidedVerification,LNCS1102,Springer-Ver-

lag,July1996,415-418.

[Mas97]sweerde,“AnalogicalReuof

RequirementsFrameworks”,ire-

mentsEngineering,Annapolis,1997,26-37.

[Mos85],"TowardsBetterModelsoftheDesignProcess",AI

Magazine,Vol.6,1985,pp.44-57.

[Mun81]d,"ParticipativeSystemsDesign:Structureand

Method",Systems,Objectives,Solutions,Vol.1,North-Holland,1981,

5-19.

[Myl92]Mylopoulos,J.,Chung,L.,Nixon,B.,“ReprentingandUsing

NonfunctionalRequirements:AProcess-OrientedApproach”,IEEE

ering,Vol.18No.6,June1992,pp.483-497.

[Myl99]ulos,,"FromObject-Orientedto

Goal-OrientedRequirementsAnalysis",CommunicationsoftheACM,

Vol.42No.1,January1999,31-37.

[Nil71]n,ProblemSolvingMethodsinArtificialIntelligence.

McGrawHill,1971.

[Nix93],"DealingwithPerformanceRequirementsDuringthe

DevelopmentofInformationSystems",’

irementsEngineering,Jan.1993,42-49.

13

[Nus94]eh,stein,"AFrameworkfor

ExpressingtheRelationshipsBetweenMultipleViewsinRequirements

Specifications",IEEETransactionsonSoftwareEngineering,Vol.20

No.10,October1994,760-773.

[Par95],“FunctionalDocumentsforComputer

Systems”,ScienceofComputerProgramming,Vol.25,1995,41-61.

[Pot94],,"Inquiry-BadRequire-

mentsAnalysis",IEEESoftware,March1994,21-32.

[Pot95],“UsingSchematicScenariostoUnderstandUrNeeds”,

’95-ACMSymposiumonDesigninginteractiveSystems:

Process,PracticesandTechniques,UniversityofMichigan,August

1995.

[Rob89]Robinson,W.N.,“IntegratingMultipleSpecificationsUsing

DomainGoals”,oponSoftwareSpec-

ificationandDesign,IEEE,1989,219-225.

[Rol98]d,our,“GuidingGoalModel-

ingUsingScenarios”,ering,Special

IssueonScenarioManagement,December1998,1055-1071.

[Ros77]n,"StructuredAnalysisforRequire-

mentsDefinition",IEEETransactionsonSoftwareEngineering,Vol.3,

No.1,1977,6-15.

[Rub92]rg,"ObjectBehaviorAnalysis",Com-

municationsoftheACMVol.35No.9,September1992,48-62.

[Som97],RequirementsEngineering:AGood

,1997.

[Sut93],“BridgingtheRequirementsGap:Poli-

cies,GoalsandDomains”,oponSoft-

wareSpecificationandDesign,IEEE,1993.

[Sut98]ffe,“Scenario-BadRequirementsAnalysis”,Require-

mentsEngineeringJournalVol.3No.1,1998,48-65.

[Swa82],"OntheInevitableIntertwiningof

SpecificationandImplementation",CommunicationsoftheACM,Vol.

25No.7,July1982,438-440.

[Yue87],“WhatDoesItMeantoSaythataSpecificationisCom-

plete?”,-4,FourthInternationalWorkshoponSoftware

SpecificationandDesign,Monterey,1987.

[Yu93],"ModellingOrganizationsforInformationSystems

RequirementsEngineering",'ire-

mentsEngineering,IEEE,1993,34-41.

[Yu97],“TowardsModelingandReasoningSupportforEarly-Pha

RequirementsEngineering”,ire-

mentsEngineering,Annapolis,1997,226-235.

[Zav97a]n,"FourDarkCornersofRequirements

Engineering",ACMTransactionsonSoftwareEngineeringandMeth-

odology,1997,1-30.

[Zav97b],“ClassificationofRearchEffortsinRequirements

Engineering”,ACMComputingSurveys,Vol.29No.4,1997,315-321.

14

Achieve

[CmdMsgSentInTime]

Maintain

[SafeCmdMsg]

Achieve

[SentCmdMsg

DeliveredInTime]

Maintain

[WCS-DistBetweenTrains]

Avoid

[TrainCollisions]

Maintain

[SafeComandToFollowingTrain

BadOnSpeed/PositionEstimates]

Maintain

[AccurateSpeed/Position

Estimates]

Maintain[Safe

Speed/Acceleration

Commanded]

Maintain

[SafeTrainRespon

ToCommand]

Maintain

[NoSuddenStop

OfPrecedingTrain]

Maintain

[DeliveredCmdMsg

Exercid]

Speed/Acceleration

ControlSystem

Communication

Infrastructure

OnBoard

TrainController

Tracking

System

OnBoard

TrainController

Resp

Resp

Resp

RespResp

Resp

ANNEX1:GOALREFINEMENTTREEANDRESPONSIBILITYASSIGNMENTINTHEBARTSYSTEM

本文发布于:2022-11-25 15:15:37,感谢您对本站的认可!

本文链接:http://www.wtabcd.cn/fanwen/fan/90/19242.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

下一篇:knockat
标签:goals
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图