Using scenario networks for scenario management and software specification

19  Download (0)

Full text

(1)

Senario Management and Software Speiation

TR-2001-11

ThomasA. Alspaugh and Annie I. Anton

CollegeofEngineering

NorthCarolinaStateUniversity

Raleigh,NC27695-7534U.S.A

ftaalspau,aiantongeos.nsu.edu

Deember 4,2001

Abstrat

Senarios are widely used to speify desired system behaviors, but

analyzingandmanaginglargeolletionsofsenariosremainahallenge.

Senarionetworksfailitatesenariomanagementandserveasapowerful

basis for analyzingand validating olletionsof senarios. Inasenario

network,eahsenarioisonnetedtothosethatmayfollowit,eitheras

partofasinglesequeneoronurrentlywithothers.Asenarionetwork

providesanintegratedspeiationofanentiresystemandinorporates

behaviors that span two or more senarios. We show how the proess

of reating a senario network improves the quality of the omponent

senariosbyhelpinganalystsidentifygapsandinonsistenies thatmore

traditionalreviewsandwalkthroughsnormally donotunover.

Keywords

Senariomanagement,senarionetworks, requirementsengineering.

1 Introdution

Senarioshaveprovenusefulinrequirementsengineeringforidentifying,

elabo-rating,validating,and rening requirements[4, 8,9,10, 11,13, 16, 17℄.

Man-aginglarge sets of senariosis hallenging,asobserved in a study of senario

usageinEuropeanindustrialprojets[18℄. Inpartiular,thisstudyrevealedthat

mostdeveloperslakappropriateproessguidane.Inthispaperwedisussthe

suessfuluseofsenarionetworksforfailitatingsenariomanagementand

(2)

eahsenariotothosethat mayfollowit,eitherinasinglesequeneor

onur-rently;anyallowablebehaviorofthesystemorrespondstoa(possiblyramied)

paththroughthenetwork,beginningataninitialsenarioandontinuinguntil

aterminalsenarioisreahed. Asenarionetworkthusprovidesaspeiation

ofanentiresystemandanexellentorganizingstrutureforaolletionof

se-narios.Thesenariorelationshipsaordedbysenarionetworksallowsenarios

to be groupedtogether in equivalenelasses, yielding twowaysof organizing

senarios: aording to eah senario's plae in the overall network, and

a-ording to lasses of senariosthat are equivalent in some way. The proess

of deriving and onstruting senario networks provides proess guidane for

developerssinethesenarionetworkservesasthebasisforasystemati

walk-throughoftheexpeted,desired,andallowablesystembehaviors.Constrution

of asenario network ompels analysts to onsider alternatives that typially

areoverlooked,and to nd any disallowedalternativesthat an be veried as

inorretduringwalkthroughs.

This work has been validated within the ontext of a real-world

applia-tion,BellSouthTeleommuniations'sEnhanedMessagingSystem(EMS).The

EMSisaomprehensivevoiemessagingsystemthatsupportsawiderangeof

funtionality inluding: aess andauthentiation;ongurationmanagement;

subsriberinterationswith the EMS (e.g. notiationsand message

proess-ing);allerinterationswiththeEMS(e.g. reordingofinomingmessagesand

themarkingof ertainmessages asurgent);aswellasreording, playing, and

arhivingof subsriberoutgoingmessages. An initial versionof theEMS

se-nariosandrequirementsappearin [2℄. Thispaperisbasedupontheompleted

setofsenariosandorrespondingrequirements.

Our previous work in syntati relationships employed syntati

relation-shipsto maintainonsisteny,express interdependene,and identifydupliate,

partially-elaborated,and missing senarios[1℄. Ourmorereent work extends

thatlineofresearhviatheuseofsemantirelationshipsamongsenarios[2℄. In

thispaper,wedemonstratethatsenarionetworksprovideaneetivemeansto

formulateaonsistentand orretsetofsenarios,forsubsequent

operational-izationintorequirements.

Theremainderofthispaperisorganizedasfollows. Setion2providesabrief

overview of relevantwork. Setion 3introduessenario networks, employing

an example from the EMS. Setion 4 desribes the proess of onstruting a

senario network. In Setion 5 we disuss the benets of applying senario

networks tosupportsenariomanagementanddiretedwalkthroughs. Finally,

the lessons learnedand our plans for future work are presented in Setions 6

and7,respetively.

2 Related work

Inthissetionwebrieydisusstherelevantrelatedworkonsenario

(3)

As previouslymentioned, senario managementremains asigniant

hal-lengetodevelopers[18℄. Mostprojetdeveloperslakguidanefordeidingthe

appropriatelevelofabstrationaswellaswhentostop. Infat,mostdevelopers

viewedsenarioreationasaraft ratherthan anengineeringtask. With

se-narionetworks,senarioreationbeomesmoresystematiand lessof araft.

Currentapproahesto senariomanagementprovideframeworks withinwhih

to disuss senarios [18℄. The CREWS framework [18℄ lassies senarios

a-ordingto fourfaets: Purpose, Lifeyle,ContentsandForm. Theintegrated

senariomanagementstrategy ofAlspaugh etal. [1℄ providesaonrete

strat-egyformanaginglargeandattimesunwieldyamountsofinformationassoiated

with senarios. It allows analyststo vary thelevelof redundany and

onsis-tenyhekingrequiredfor senarioevolution,using similaritymeasures. The

similaritymeasures provide onstrutive proess guidane to developers,suh

asstoppingriteriaforsenarioonstrution.

The benets of senariowalkthroughs havebeen previouslyaddressed[12,

14℄. Inonsistenies, gaps, and errors in a olletion of senariosfor a given

systemmust beresolvedatsomelevelbeforethesystem'simplementationan

be satisfatory. Maidenet al. attak the problem of missing senarios with a

methodsupportedbytheirCREWS-SAVREtool. Inthismethod,newsenarios

areautomatially generatedforonsiderationbyananalyst, usingalibraryof

standardmodelsandalternativesequenesofuseaseevents[12℄.

A number of other researhers have attahed pre- and postonditions (or

initialandnalstates)tosenarios. RollandandBenAhouruseinitialstatesof

agentsandnalstatesofepisodestoguidethewritingofuseases[15℄. Rolland

et al. attah initial and nal states (analogous to pre- and postonditions) to

senariosin theirL'Eritoire toolinsupport ofaheuristito guidethesearh

foradditionalgoals[16℄.

Senario sequenesandonurreny

A number of researhershaveexamined theissue of sequene and

onur-renyamongsenarios,andtheintegrationofsenariosintoalargerentitythat

expressessequeneandonurreny.

Auseasemap(UCM)integratessenariostoprovideawhole-system

spe-iationwhihexpressessequeneandonurrenyamongsenarios[5,6℄. The

senarios are expressed as ausal sequenes of responsibilities, and denoted

graphiallyasagraphwithresponsibilitiesattahed. UCMsareprimarilyseen

asanotation for binding responsibilities to system omponents, and a bridge

between system speiation and system design. Visual inspetion of UCMs

is used to nd feature interations. More reently, UCMs have beenused to

expresswhole-systembehavior,andformalizedby(manual)translationintothe

speiationlanguageLOTOS[3℄. Thegoalofthisapproahistodetetfeature

interationsthatareausedbyunexpetedinterationsbetweensenarios.

Danoetal.integratesenariosaspartoftheirworkoneliitingandvalidating

requirements. Senariosareintegratedbymeansofagraphwhosearsexpress

(4)

from domain experts. Thegoal ofthe tehniqueis to eliit newrequirements

andvalidatetherequirementsalreadyfound[7℄.

In the remainder of this paper, we present senario networks as an

alter-native(and webelievemoreeetive) approah that fouses onformulatinga

onsistentandorretsetofsenarios,andintegratingthesenariosintoasingle

speiation of systembehavior. This work is basedon our previouswork in

syntatirelationshipsamongsenarios,inwhihweusedthemtomaintain

on-sisteny, expressinterdependene, andidentify dupliate,partially-elaborated,

and missing senarios [1℄. We extend that line of researh here by using

se-mantirelationships among senarios to improvethe quality of senariosand

produeintegratedspeiationsexpressingbehaviorsthatmayspanmorethan

onesenario.

3 Senario networks

Individual senariosare frequently used to desribe a single transation or a

single sequene of events aomplishing a partiular purpose (as in Senario

(S12)showninTable1). Asenariodesribespartofasystem'sbehavior,and

agroup of senarios desribesthe entire behavior of a system. Ideally, every

systembehaviorisexpressedbysomesenariointhegroup.

S12. Subsriberlistenstothenextmessage.

1. SubsriberS dialsthenextnew message ommand.

2. EMSplaysS'snextmessage.

3. Ifthatmessagewas\new",EMShangesitsstateto\old".

Table1: EMSSenarioS

12

What is notexpressed by agroup ofsenarios is theallowedtemporal

re-lationshipsamong all thesenarios. There is nospeiationof either the

al-lowable sequenesof senariosoronurreny betweensequenes of senarios.

Senarionetworksprovideawaytoexpress thisadditionalinformation.

A senario network is omprised ofa groupof senariosand the

interon-netionsbetweenthemthatindiatetheallowedsenariosequenesand

onur-reny. Anyallowablebehaviorofthesystemorrespondstoa(possiblyramied)

paththroughthenetwork,beginningataninitialsenarioandontinuinguntil

eahbranhofthepathreahesaterminalsenario.

AdetailedexampleofasequentialsenarionetworkforasimpliedEMSis

presentedinourearlierwork[2℄. Herewepresentanexamplefromtheomplete

EMSthatdemonstratesonurreny,usingthesenarioslistedin Table2.

In the ontext of the EMS, expeted ordesired behaviors are represented

(5)

0

S

1

EMSshutdown.

S2 SubsriberallsEMSandauthentiateshim/herself.

S

12

Subsriberlistenstothenextmessage.

S13 Subsriberhasnomoremessagestolistento.

S

29

SubsriberdisonnetsfromEMS.

S30 Callerallsasubsriberandleavesamessage.

S

39

CallerdisonnetsfromEMS.

Table2: EMS senariosusedin theexample

ramiedpaththroughasenarionetwork. Whereveramultipathdivergesinto

twoormorepaths,itindiates onurrenybetweenthesenariosequeneson

theparallelpaths. SomeallowedmultipathsfortheEMS arelistedin Table3

(ompressedintoalinearsequenetoaidreadability).

S0!S1 S0!S2!S13!S29!S1 S 0 !S 30 !S 39 !S 1 S0!S2!S13!S29!S30!S39!S1 S 0 !S 30 !S 39 !S 2 !S 12 !S 29 !S 1 S0!S30!S39!S2!S12!S13!S29!S1 S 0 !S 30 !S 39 !S 30 !S 39 !S 2 !S 12 !S 29 !S 1 S0!S30!S39!S30!S39!S2!S12!S12!S13!S29!S1

Table3: AllowedEMSmultipaths

The list of allowed multipaths ontinues without end, so rather than

list-ing the multipaths we reate a senarionetwork that expresses exatly those

multipathsthatareallowed.

We express senario networks in oneof three ways: in tabular form; as a

diagram;andthroughpre-andpostonditionsforeahsenario. Inthispaper,

wefousonthetabularand diagrammatiforms. Thepre-and postondition

form isdisussed in [2℄. For thetabularform, welist thenetwork'ssenarios,

identifythosethatareinitialorterminal,andgiveeahsenario'sfollowsetand

onurrenyset. Aninitialsenarioisonethatmaybeginasenariomultipath,

andaterminalsenario mayendabranhofone. Asenario'sfollow set isthe

setofsenariosthat mayfollowitinasequene,anditsonurrenyset is the

set of senarios that may begin anew onurrent sequene after it. Table 4

providesthisinformation fortheexamplesenariosdrawnfrom theompleted

setofEMSsenarios.

A seond way to express a senario network is by produing a diagram

(6)

S0

S2

S4

S3

S17

S12

S13

S14

S15

S27

S28

S24

S25

S22

S23

S21

S20

S19

S18

S1

S30

S31

S32

S33

S34

S35

S37

S39

S38

S10

S9

S5

S6

S7

S8

S11

S26

S29

S8

S0

S1

S11

Scenario

Initial Scenario

Terminal Scenario

Terminal Scenario

of Branch

Cartesian Product

of Arrows

Scenario Concurrent

Branch Begins

Scenario Sequence

Key:

S16 and S36 were absorbed into other scenarios

(7)

S0

S2

S12

S13

S1

S29

S30

S39

(8)

0

Terminalsenarios S1,S29,S39

Senario Followset Conurrenyset

S 0 S 1 S 2 ,S 30

S1 ; ;

S 2 S 12 ,S 13 ,S 29 ;

S12 S12,S13,S29 ;

S13 S12,S13,S29 ;

S

29

; ;

S30 S39 ;

S

39

; ;

Table4: Tabularform forsenarionetwork

sequene,andslashedarrowsindiatingwhereonurrentsequenesmaybegin,

asportrayedbythesenarionetworkdiagramsinFigures1and2.

Figure1showstheentiresenarionetworkdiagramfortheompletedEMS.

Forpurposeofillustration,wefousourdisussiononaportionofthesenario

network (showninFigure2).

ThesenarionetworkinFigure2supportsalltheallowedsenariomultipaths

listedin Table3, and aninnite numberof others. However,it also supports

aninnitenumberofsenariomultipathsthatshould notbeallowed,suhas

S 0 !S 30 !S 39 !S 2 !S 12 !S 12 !S 29 !S 1

(allerleftonemessagebutsubsriberlistenedtotwo)

Suhundesiredmultipathsareruledoutbyassigningapreonditiontoeah

se-nario. Asenario'spreonditionisrequiredto betrueinorderforthesenario

tobegin. Eahsenarioisalsoassignedapostonditionwhihissatisedatthe

endofthesenario. Thus atanypointin amultipath weandeterminewhih

senariosanournextbyomparingtheirpreonditionswith the

postondi-tionfullled by thesenariojust ompleted. Our previouswork desribes the

useofthese pre-andpostonditions,andhowtheyallowthe senarionetwork

toserveas anoperationalmodel [2℄.

Wenotethat senarionetworks mayappearonthesurfaesimilar tonite

statemahines,butthereareimportantdierenesbetweenthem. Notably,eah

senario'spre-andpostonditionrefertoastatethatanbearbitrarilyomplex,

sothatasenarionetworkisapableofmuhmoreomplextransitionsequenes

thananite statemahine. Also, asenarionetworkaddressesonurrenyin

(9)

Networks

Inthis setion, we disuss two systematiapproahes to onstrut a senario

networkforaolletionofsenarios:(1)annotatingeahsenariowithpre-and

postonditions, and (2)rening large-salenarrativesoveringmanysenarios

aboutthesystem'sbehaviorintosmallerunits.

The starting point of the pre- and postondition approah is to onsider

what result eah senario ahieves, and what it requires in order to ahieve

thatresult. Forthe EMS,weexpressedthese resultsandneedsasformal

pre-andpostonditions foreahsenario[2℄. These onditionsexpress asequential

network for the senarios beause eah senario's preondition is satised by

exatlythesenariosthatanpreedeit. A tableoradiagram ofthesenario

network an then be produed, although in order to distinguish onurreny

moreinformationis needed. Thisapproah makesautomatedsupportpossible

for determining the relationships between the onditions, and thus the

rela-tionshipsbetweenthesenarioswiththose onditions. However,withoutsuh

automatedsupport determining these relationshipsis umbersomefor the

an-alyst. Additionally, even with aompleted set of pre-and post-onditionsfor

eah senario,analysts muststill determine onurrenyasanadditionaltask

beausethepre-andpost-onditionsdonotexpressonurreny. TheEMSase

studyshowedthat thiswas notaneetivemethodforonstrutingasenario

network [2℄sinesimply relyingonpre-and post-onditionsdoesnottake

ad-vantageoftheanalystalreadyknowsaboutdesiredsequeningandonurreny.

Forexample,duetoourfamiliaritywithhowvoiemessagingsystemsoperate,

weareabletodrawupontaitknowledge. Weknowthatonurrenyispossible

sineaalleranleaveamessageforasubsriberatpreiselythesametimeat

whihthesubsribermaybelisteningtoothervoiemailmessagesintheirmail

box. Butthe pre-and postonditionsforthese senariosdid notindiate this

onurreny. Intheremainderofthispaper,wedisussthenarrativerenement

approah,whihprovedmuhmoreeetive.

Inthenarrativerenementapproah, analystsonsider theenvisioned

sys-tem that is desribed by the olletion of senarios. The system's behavior

is rstdesribed with asingle high-level story, expressedin naturallanguage.

Forexample,in theEMSasestudythesinglehigh-levelstorywas\TheEMS

reordsmessagesthat allers leaveforpartiular subsribers; subsribersmay

listentothesemessagesandstorethemforatimeiftheywish." Thestoriesare

thensuessivelydeomposedintosmaller,moredetailedstoriesuntileahstory

ontainsenoughdetailsothatallthedesiredsystembehaviorsaredesribedin

somestory. Thesesmallerstoriesmaybeextratedfromthehigher-levelstories

inseveralways:

hoosingasingleatorandfollowinghis/herinterationswiththesystem;

following a single onurrent thread of behavior of the system and its

(10)

As the stories beome progressivelymore detailed they yield sequenes of

thespeisenariosoveringationsthattakeplaein thatstory. Thestories

andthesequential,alternative,andonurrentrelationsamongtheiromponent

senariosformaformidablebasisforasenarionetworkdiagram.

Other approahes are possible and onstitute future work. For example,

these two approahes (annotating with pre- and post-onditions, and

rene-mentof narratives)assume that aolletionof senariosalreadyexists before

thesenario network is begun, but in pratie this need notbethe ase. We

haveseenindiationsthatanapproahin whihthesenariosandthesenario

network areonstrutedin parallelanoerfurther advantages. Inthis

situa-tion,thesenarionetworkprovidesproessguidanethroughoutthereationof

thesenarios,ratherthanonlywhenthesenarioolletionisnearlyomplete.

Individual senariosanbeproduedbyelaborating thestoriesto thedesired

levelofdetail,anddividingtheminto smallerstoriesandultimatelysenarios.

Theadditional eortrequired foronstruting thesenario network would be

minimalwiththisapproah.

5 Applying Senario Networks

Senario networks oer many benetsto developers asthey seek to speify a

system'srequirements. A senarionetwork reordsthe sequenesand

onur-reny that an ouramong its senarios, information that is not partof the

individual senarios and may nototherwise be reorded. A senarionetwork

provides a lear visual representation of those sequenes and onurreny, in

theform of the senarionetwork diagram. The proess ofreating asenario

network helps theanalyst improve thequalityof the individual senariosand

(ourasestudy showed) also helps theanalyst unoverproblems with the

re-quirements and thus improve their quality as well (Setion 5.2 disusses this

in greater detail). A ompleted senario network ats as a system

speia-tionthat inludeseverythingtheomponentsenariosspeifyand additionally

speies behavior that spans more than one senario, thus providing a more

eetiveoperationalizationofthesystem'srequirements. All thesebenetsaid

in the validation of the analysts' understanding of the system's behavior, the

systemspeiation(whih is thesenarionetwork itself), and the system

re-quirements. Inthis setion, wedisuss in more detail how the appliation of

senarionetworksduring requirementsengineeringativitiesoerstwospei

benets: senarionetworksprovideaframeworkforsenariomanagementand

oerproessguidane toanalysts, asdisussed insetions5.1 and5.2,

respe-tively.

5.1 Senario management

Senarionetworksprovidearihframeworkformanagingaolletionof

(11)

linkingthesenariosin aolletion.

A senario network provides a temporal sheme for organizing senarios;

every senario has a plae in the network. A senario's plae in the sheme

is based upon where it an our, temporally, relativeto the other senarios.

Temporal position is an important aspet of the senario from the analyst's

point of view. Thus it produes a better organization than one based on a

morearbitrary aspet, suh asthe order in whih the senarioswere reated.

Organizingsenariosaordingtotheorderinwhih theywereidentiedmake

fails to provide insightsinto meaningful relationships,suh assequening and

onurreny. In ontrast, senario networks highlight missing senarios and

dupliation between senarios in a way that analysts nd natural and useful

and that lends itself to methodial validation via walkthroughs (disussed in

Setion5.2).

A disadvantageoforganizingsenarioswithasenarionetworkisthat this

organizationdoes notlinearize easily; its naturaltopology is that of a graph.

Thus a senario network does not translate straightforwardly into a table of

ontents,forexample.

An assortmentofrelations betweensenariosariseduring the onstrution

of asenarionetwork orareindiated by thestruture of asenarionetwork.

Themostimmediately usefuloftheseare equivalenerelations,whih indiate

senarios that are equivalent in some sense. Examples are the relation that

groupstogether senariosthat anfollowallof thesamesenarios(illustrated

byTable5);orsenariosthatanpreedeallofthesamesenarios;orsenarios

that an both followthe samesenariosandpreede thesamesenarios.

For-mally,eahoftheseequivalenerelationspartitionsaolletionofsenariosinto

disjoint equivalene lasses; the senariosin eah lass are interhangeable in

thesense oftherelation,andeverysenarioisin exatlyonelass. Informally,

eah relation groupssenariosthat are similar in apartiular way. As an

ex-ample,Table5presentsagroupofequivalenelassesforthe\followsthesame

senarios"relation. Inthisexample,S

12 ,S

13 ,andS

29

formanequivalenelass

beauseeahofthemanfollowonlyS

2 ,S

12 ,orS

13

. Eahoftheeightsenarios

appearsinexatlyoneequivalenelass.

Follow-equivalenelasses

follow; : S

0

followfS

0

g : S

1 ,S

2 ,S

30

followfS

2 ,S

12 ,S

13

g : S

12 ,S

13 ,S

29

followfS

30

g : S

39

Table5: Equivalenelassesexample

These equivalene lasses of senarios are useful in senariomanagement.

(12)

thehangedone. Thesenariosinalassareonsistentinsomeway(orshould

be if theyare not); speially, senariosthat are preede-equivalentprodue

thesameorsimilarresults,andsenariosthat arefollow-equivalentrequirethe

sameorsimilarthingsinordertoahievetheirresults. Forexample,lookingat

Table5weanseethatahangeinsenarioS

12

mayalsorequireorresponding

hangesinthesenariosS

13 andS

29

thatarefollow-equivalenttoit,andthatthe

threesenarioshavethesameorsimilarprerequisites(infat,allthreesenarios

requirethatthesubsriberinquestionalreadybeauthentiatedtotheEMSby

his or herpassode, with S

12

additionally requiring that this subsriber have

moremessages to hear and S

13

additionally requiring that he or she haveno

moremessages).

5.2 Proess guidane

Senarionetworksoerproessguidanein severalways.

Asenarionetworkservesasausefulvisualaidforguidingwalkthroughs

ofthesenarios. Thebenetsofwalkthroughsarewidelyknown[12, 14℄.

Perhapssurprisingly,theproessof onstrutingasenarionetwork

pro-videsimportantbenetsbesidestheobviousoneofproduingthenetwork.

Construting a senarionetwork by either of the systematiapproahes

desribed inSetion 4guidestheanalystin identifying gapsin overage;

identifying redundany among the senarios in the form of overlapand

dupliation; reognizing equivalene relationsbetween the senariosand

theonsisteny among senariosthat is requiredbythose relations; and

establishingwhateah senariorequiresandaomplishes.

Thegraphialpropertiesofasenarionetworkoerguidaneinidentifying

stoppingpointsfortheproessofseekingadditionalsenarios: stopwhen

thesenarionetworknolongerhasgaps.

Wedisusssomeofthese pointsin moredetailbelow.

Senario walkthroughs

A senario network diagram provides a graphial aid that is well suited

to walkthroughs. The visual layout of the diagram suggests paths to follow

andprovidesguidane in thehoieofwhat pathsto traverseorwalkthrough

next. Overlapsanddupliationsbetweensenariosarehighlightedduring

walk-throughswhose ourse isdireted by the visualform of the senarionetwork.

Thisformanbeespeiallyusefulinindiatingalternativesthat maynothave

beenpreviouslyonsidered,beausethesealternativesarevisuallyobviousinthe

diagram. Potentialonurrenybetweensenarios,whih isfrequentlydiÆult

to unover,is also indiated visually by asenario network diagram. Finally,

the diagram provides aform in whih ertain kinds of information unovered

(13)

ousdoument in whih to reordbehaviorand relationshipsthatspan several

senarios

Guidanefromsystemationstrution

Theproess ofonstrutingasenarionetworkrequires aontinuingseries

of walkthroughs to hek the part of the senario network ompleted so far

andtoexaminehowremainingsenariosshould beaddedto thenetwork. Our

asestudies indiate that an analyst naturally tends to hek eah hange to

his/hersenarionetworkbywalkingthroughseveralharateristinarrativesfor

multipaths that passthroughthe senariosoronnetionsthat were hanged.

Similarly, an eetive way to determine how to add a senario to a network

is to walk through some narrativesthat involve that senario. Forexample,

onsidertheproess ofaddingthesenarioS

37

\Calleralls EMSdiretly and

leaves a message" to the senarionetwork of Figure 2. Walking through the

pathsthat ould involvethis senario shows that S

37

is quite similar

(follow-andpreede-equivalent)toS

30

\Callerallsasubsriberandleavesamessage."

Thus S

37

should be onnetedinto the diagram in exatly the ways that S

30

is. When we examine the full EMS diagram in Figure 1, we see that this is

indeed the ase. We also nd that for ananalyst, thinking about the system

in terms of walkthroughs suggests additional new multipaths that should be

walkedthrough. Thesewalkthroughsoeropportunitiestoimprovethequality

ofindividualsenariosandtheanalyst'sunderstandingofthesystemasreorded

inthesenarionetwork.

Anotherbenetthatours asasenarionetworkisonstrutedis the

un-overingofequivalenelassesofsenarios. Construtionofasenarionetwork

fores the analyst to onsider whih senariosare equivalentand to what

de-gree. Thisours asthe analystonsiderswhihsenariosanfollow,preede,

orbeginonurrentlywith apartiularsenario,aspartof theproess of

re-ating a senarionetwork diagram. Thediagram expressesthese relationships

graphially, and aorret diagram is onein whih (among other things) eah

of these relationships is expressed orretly. The areful analysis that ours

duringtheonstrutionofasenarionetworkandtheresultinglariationsof

andorretionsto thesenariosalsoimprovethequalityandusefulnessof the

senariosandresultsin amoreompleteunderstandingofhowthesystemisto

behave. Ourasestudyindiatedthat someoftheorretionstothesenarios

alsoresultedin orretionsto therequirementsaswell.

Theanalyst'sonsiderationofsenarioequivaleneduring theonstrution

ofasenarionetworkresultsinspeiattentiontowhateahsenarioassumes

isavailableandwhateahsenarioassumesistrue,andtotheresultstheations

ofeahsenarioprodue. Construtionofasenarionetworkneessarilydraws

attention to gaps that orrespond to missing senarios, to overlaps between

senarios(oftheations theyontain, orthe resultstheyprodue, orin what

theyassume),andto unsuspeted episodessharedbyseveralsenariosoreven

(14)

Gaps in thesenario network usually orrespond to missing or inomplete

senarios.Thevisualmetaphorprovidedbythediagrammakesthedisoveryof

suhunsuspetedsenariosmuheasierthanitwouldbeotherwise. For

exam-ple, onstrutionofthe EMSsenarionetwork unoveredthemissing senario

thatbeameS

13

,\Subsriberhasnomoremessagestolistento." Itwasfound

beause,as inFigure2,S

12

ouldberepeated(asindiatedbythearrowfrom

S

12

toitself)butthere wasnodierentbehaviorspeiedto ourwhen

SSHearMsgouldnolonger berepeated beausethere were nomoremessages

tohear.

6 Lessons learned

We learned several lessons during the ourse of the ase study and the work

thathasfollowedit.

A senario networks are amore eetive speiation than aolletion of

se-narios

We found that a senario network is a riher, more expressive, and more

eetive speiation than a olletion of senarios. A senario network

ex-presses not only the behaviors that eah of its senarios expresses, but also

larger-sale behavior spanning several senarios, whih a simple olletion of

senariosannot express. A senarionetworkonstitutesasingleunied

spe-iation,in whih (if the network is properlymade) theonstituent senarios

aremadeonsistentwitheahother, gapsinoverageofthesystemhavebeen

eliminated, andthe boundarybetweenwhat thesystemdoesand doesnotdo

hasbeendelineated. These harateristisof asenarionetwork removesome

ofthemostsigniantproblemsthatarisewhenaolletionofsenariosisused

asaspeiation.

Senario networksvalidate senarios andrequirements

Our ase study showed that senario networks are eetive in validating

senariosandrequirements. Thisvalidationoursduringtheonstrutionofa

senarionetwork,duringwalkthroughsofafullsenarionetwork,and through

onsiderationoftherelationsbetweensenariosthatasenarionetworkdiagram

expressesgraphially,aswedisussedat greaterlengthinSetion 5.2.

Oneofthemostexitingresultsof ouruseof senarionetworksin thease

studywasthedisoveryoftwoerrorsintheEMSrequirementsthrough

exami-nationofthesenarionetwork. Speially,thisourredduringthevalidation

ofthepre-andpostonditionsforasenario\Subsriberlistenstoanarhived

message"(deletedfrom thenal setofsenarios) thatpresentedasubsriber's

arhivedmessages. Traingthissenariobaktotherequirementsthatit

oper-ationalizedrevealedthatthoserequirementswereinompatiblewithotherEMS

(15)

quested. Neitherof these errorshad been disoveredduring extensivereviews

oftherequirements.

Asenario networkprovides auniedviewpoint

Sine an individual senario anhave a viewpoint, and the senarios in a

olletionwillingeneralnothavethesameviewpoint,itwasnotinitiallylear

whether a senario network ould be said to have a viewpoint and if so how

thatviewpointouldbeharaterized. Weharaterizethisviewpointas

\om-nisient", in keeping with literary usage whih ontrasts the viewpoint of an

individual narratorwith a viewpoint that is from no one harater's point of

view,andthatmayinorporateanyfat orinsightthatisofinterestregardless

ofwhihharaters (if any)in thestoryould knowthem. Similarly,whilean

individual senariois ommonly expressed from the viewpointof apartiular

ator, a network ontaining that senario inorporates all ations and events

that are neededto desribe thesystem, regardlessof whether theyare visible

fromtheviewpointofasingleator.

Foraolletionofsenariosthatarewrittenintermsofations,events,and

eets that are all externally visible, the orresponding senario network will

also be expressed in externally visible terms. In this partiularly usefulase,

theomnisientviewpointof thesenarionetworkanalso bedesribed asthe

viewpointthat takesinallexternallyvisiblephenomenainvolvingthesystem.

Pre- andpostonditionsprovide benets

Wefoundthatpre-andpostonditionsforsenariosprovidedseveralspei

benets.

Asenario'spre-andpostonditionareaveryspeirepresentationofthe

resultofthatsenario,andwhatthatsenariorequirestoprodueitsresult. In

ourasestudy, reationof these spei representationsof asenario'sresults

and prerequisites foused the attention of the analysts on aspets of the

se-narios,and therequirementstheytraedbakto, that until thenhad esaped

arefulsrutiny. Thepreiseformofthepre-andpostonditionsprovided

guid-anetotheanalystsastheyelaboratedthepreiseeetofeahsenario.

Theonditionsalso giveapreisestatementofwhen eah senarioan

o-ur,morerestritedthanthatgivenbytheonnetionsbetweensenariosinthe

tabularanddiagrammati forms;these onnetionsareoasionallynot

strin-gentenoughtoexpressexatlythesequentialandonurrentrelationsbetween

partiularsenarios.

Thepre-andpostonditionsinidentallyprovideanadditionalformagainst

whihtovalidatethetemporalrelationshipsexpressedininformallydrawn

se-narionetworkdiagrams,storieslinkingseveralsenarios,orspei system

re-quirements.

Aninformal senario networkisstilluseful

Whilepre- and postonditionson senariosprovide denitebenetsin the

ontextofasenarionetwork,theyalsorequireasubstantialeortandaremore

(16)

andpostonditionsforthesenarios. Wethenobservedthat evenwithout the

additionalinformation provided by pre-and postonditions, informalsenario

networkdiagramsprovidesubstantialresultstotheanalyst. Thevisualformof

thesenarionetworkdiagramontainsmostoftheinformationaboutasenario

network in aform that iseasily used forwalkthroughs andexpressesrelations

between senarios graphially. We found that an informal senario network

diagramwasusefulineverywaythat asenarionetworkdiagramis,exeptfor

thefewwaysthatdiretlyusethepre-andpostonditions.

Senario networksareabasis forsenariomanagement

As we disuss in detail in Setion 5.1, senario networks provide an

orga-nization for a olletion of senarios, and the senario relations they embody

supportsenariomanagementaswell.

Senario networksprovide proessguidane

AswedisussindetailinSetion5.2,senarionetworksalsoprovideproess

guidanein anumberof ways. Theyaidin diretingeetivewalkthroughsof

aolletionofsenarios;theirsystemationstrutionguidesdisoveryofgaps,

overlap,anddupliation;andasenarionetworkgivesamuh-neededstopping

riterionforsenariodevelopment.

In our ase study, senario networks proved useful in identifying missing

senariosthatwereneededtoompletesomesystemfuntionthatwaspartially

given in asenario already present, or to make the funtion provided by one

group of senarios in the network parallel to that provided by another. An

exampleofapartiallymissingfuntionisS

13

\Subsriberhasnomoremessages

tolisten to,"whihwasneededtoomplete thefuntion that S

12

\Subsriber

listensto amessage" provided; anexample of amissing parallel funtion was

S

38

\Caller takesno ation for a longtime," whih was added to math S

26

\Subsribertakesnoationforalongtime."

7 Future work

Wehaveseen that theviewpoint ofa senarionetwork isof interest. Further

workisneededtodeterminewhetherasenarionetworkanbeofusein

view-pointissuesthataetindividualsenarios,suhasin reastingasenariointo

anotherviewpoint.

While pre- and postonditions provide unique benets as partof senario

networks, they proved relatively diÆult to work with. Further investigation

into how theymaybeworkedwith more eÆiently, inludingthe possibilities

ofautomatedassistane forvariousspei formsofonditions,isneeded.

In ourwork thus far, wehave had suesswith sequentialomposition, in

whihweusepre-andpostonditionsofsenariostoomposetwoormore

se-nariosinasequeneintoalargerentitywithitsownappropriatepre-and

(17)

vestigatinghowtoidentifyinterationsbetweenonditionsduetoonurreny,

andwhatstepsanbetakentoextendompositioninto theseareasaswell.

Wehavetwo equivalentforms in whih to express asenarionetwork,one

tabularandonediagrammati. Athirdform,thatofthepre-andpostonditions

forthesenarios,isonlypartiallyequivalentasitdoesnotexpressonurreny.

Thesenarionetworkswehaveproduedthusfarhaveinvolvedrelativelysimply

pre-andpostonditionsandsystemstates,andforthesenetworksonurreny

didnothaveto bevisiblein thepre-andpostonditions. We planto examine

whethertheonurrenyshouldbevisiblethere,andifsohowitwouldbestbe

evident.

Inourtreatmentofonurrenysofar,wehaveonentratedonwhatismost

appropriateforits usein requirementsengineering. Weplanamorethorough

appliationoftheexistingtheoryandbody ofworkononurrenytosenario

networks.

Ourresearhhasidentiedagrowingnumberofsenariorelationsthatarise

with a senario network. We have found pratial uses for several of these

relations,andexpetthatfurther researhmayndothers.

We have loated several sets of senarios from industrial projets and are

makingplansto usethem in further asestudies. Anotherareaofinterestfor

these ase studies is the omparison of the results ahieved by analysts not

alreadyfamiliar with senarionetworks, andthe simultaneous developmentof

senariosandsenarionetworksasdisussedinSetion 4. Weareinterestedto

seetowhatdegreedierentanalystsreatesimilarsenarionetworkstodesribe

thesamesystem,andwehypothesizethattheuseofasystematiapproah,suh

as narrative renement, will tend to result in a onvergene among senario

networks desribingapartiularsystem.

8 Aknowledgements

Theauthorswish tothankAbdi ModarressiofBellSouthTeleommuniations,

In. inAtlanta,Georgiafordisussionsleadingtosomeofthiswork. Thiswork

waspartiallyfundedbyBellSouthTeleommuniationsCACCGrant#5-30092,

andpartiallyfundedbyNSFCAREER Grant#530195.

Referenes

[1℄ T.A.Alspaugh,A.I.Anton,T.Barnes,andB.Mott.Anintegratedsenario

managementstrategy.InRE'99: IEEEFourthInternationalSymposiumon

RequirementsEngineering, pages142{149,June1999.

[2℄ T. A. Alspaugh and A. I.Anton. Senario Networks: A asestudy of the

Enhaned Messaging System. In REFSQ'01: Seventh International

Work-shop onRequirementsEngineering: Foundationfor Software Quality,June

(18)

andvalidationofdistributedsystemsrequirements.InRE'99: IEEEFourth

International Symposium on RequirementsEngineering, pages44{54,June

1999.

[4℄ A.AntonandC.Potts.TheUseofGoalstoSurfaeRequirementsfor

Evolv-ingSystems.InICSE`98: IEEE 20thInternational Confereneon Software

Engineering, pages157{166,April1998.

[5℄ R.BuhrandR.Casselman.Useasemapsforobjet-orientedsystems.

Pren-tieHall,1996.

[6℄ R.Buhr.UseCaseMapsasArhiteturalEntitiesforComplexSystems.In

IEEETransationsonSoftwareEngineering,24(12),pages1131{1155,De.

1998.

[7℄ B.Dano, H. Briandand F. Barbier.An approah basedonthe oneptof

useasetoproduedynamiobjet-orientedspeiations.InRE'97: IEEE

ThirdInternational Symposiumon RequirementsEngineering,pages54{64,

1997.

[8℄ P. Haumer, K. Pohl and K. Weidenhaupt. Requirements Eliitation and

Validation with Real World Senes.IEEE Transations on Software

Engi-neering,pages1036{1054,De.1998.

[9℄ H. Kaindl.A Design ProessBased onaModelCombiningSenarioswith

GoalsandFuntions.IEEETransationsonSystems,ManandCybernetis,

30(5),pages537{551Sep.2000.

[10℄ A. van Lamsweerde, R. Darimont and E. Letier. Managing Conits in

Goal-DrivenRequirementsEngineering.IEEETransationsonSoftware

En-gineering,pages908{925,Nov.1998.

[11℄ J.C.Leite,G.Rossi,F.Balaguer,V.Maiorana,G.Kaplan,G.Hadadand

A. Oliveiros. Enhaning a Requirements Baseline with Senarios.

Require-mentsEngineering Journal,2(4),pages184{198,1997.

[12℄ N.Maiden,S.Minoha,K.Manning,andM.Ryan.CREWS-SAVRE:

Sys-tematisenariogenerationanduse.InICRE'98: ThirdInternational

Con-ferene onRequirementsEngineering, pages148{155,1998.

[13℄ C. Potts. UsingShemati Senarios to Understand UserNeeds. InPro.

ACM Symposium on Designing Interative Systems: Proesses, Praties

andTehniques(DIS`95),Aug.1995.

[14℄ C.Potts,K.TakahashiandA.I.Anton.Inquiry-BasedRequirements

Anal-ysis.IEEESoftware,11(2),pp.21-32,Mar.1994.

[15℄ C.RollandandC.BenAhour.Guidingtheonstrutionoftextualusease

speiations. Data and Knowledge Engineering Journal, 25(1{2): pages

(19)

senarios.IEEETransationsonSoftwareEngineering,24(12): pages1055{

1071,De.1998.

[17℄ A. Sutlie. Senario-Based Requirements Analysis. Requirements

Engi-neering Journal,3(1): pages48-65,1998.

[18℄ K. Weidenhaupt, K. Pohl, M. Jarke, and P. Haumer. Senarios in

Sys-tem Development: Current Pratie. IEEE Software, 15(2): pages 34{45,

Figure

Updating...

References