UML,OOP,面向对象
Figure8.De ningSystemUnderDescription
4MappingfromWebNavigationtoState-chartModeling
Inthissection,webnavigationwillbemodeledbyusingStatechart.Ingeneral,webpagesandtheiraccompaniedclientprogramsandscriptsaremodeledasstatesintheStat-echart,andthehyperlinkbetweenwebpagesaremodeledastransitions,governedbytheeventsthattriggersthetran-sition.Onlythenavigationrelatedelementsaremodeledtosuitourgoal.Becauseofthecomplexityofthecontem-poraryWWW,themodelingscopewill rstbediscussed,thenwewillintroducemodelingofwebnavigationthatap-pliestoallwebpages,followedbywebnavigationmodelextensionsfordynamicwebpages.
4.1ModelingScope
Inthewebenvironment,itisnotpossibletomodelallwebpageshyperlinkeddirectlyandindirectlytothepagesweareinterestedin.Thisisbecausetherearerarelyany“deadend”ofwebpagesthatdonothaveanyhyperlinkoutofit,sobysimplyfollowinghyperlinks,onecannavigatetosomemillionsofwebpages.Wemustthereforelimitthescopeofthesystemunderdescription.
Thesetofwebpagesthatareofinterestis rstidenti ed,thenthescopeofthesystemunderdescriptionislimitedtoanywebpagethatbelongstothesetorisdirectlyhyper-linkedbyanywebpagebelongstotheset.AsshowninFigure8,somewebpageswiththeirhyperlinksarerepre-sentedbyasimpledirectedgraph.Theinterestsetis rstidenti edaswebpagesP1toP5.TheimmediatelylinkedpagesareQ1andR1.Sothesystemunderdescriptionin-cludeswebpagesP1,P2,P3,P4,P5,Q1,R1.
Thereasontoincludethisextra“layer”ofpagesinthemodelisthatnavigationpathsleadingoutoftheinterestsetofpagesisalsoimportantfornavigationmodeling,astheyactasthe“exit”ofthesystem,andthedestinationsofthese
exitpathswillalsobeofimportance.
Bythesameprincipal,itisarguablethatwebpagesthatleadintotheinterestsetshouldalsobemodeled.Butbythedirectionalnatureofhyperlink,thetargetwebpageofahyperlinkcannotknowwhatisthesourcewebpage.Soitisimpossibletoidentifywhichwebpages,ifany,leadsintotheinterestset.Moreover,afterarrivingattheinterestset,the“entrancepage”isofnomorevaluetonavigationashy-perlinkisnotbi-directionalandthereisnowaytonavigatebacktoit.If,however,thereisalinkbacktothe“entrancepage”intheinterestset,that“entrance”willbemodeledasanexitpath.
Exitpathdestinationpagesaremodeledasbasicstates.Notethattheseexitpagesarenotnecessarilyterminalstates,unlesseverycomponentofthesystemhasenteredtheseexitpagestates,thesystemcancomebackfromthesestates.SeeClientSideinSection4.2.5foranexampleofre-enteringtootherstatesfromanexitpagestateforpartofthesystem.
4.2WebNavigationModeling
4.2.1Intra-page
Forintra-pagewebnavigations,whenscrollingisnotpos-sible(eitherlimitedbyashortpagelengthorbyintention-allydisablingthescrollbar)andthereisnoselftargetedhyperlink,thewebpageismodeledbyanbasicstate(Fig-ure9a).1
Inothercases,sub-statesareusedtorepresentthedif-ferentpositionsofthewebpageinview.We rstde nejp(target,pos)istheeventtojumptopositionposofatar-getwebpagetargetbyahyperlink.Bothtargetandposarede nedasprimitivevariablesinthestatechartmodel.Theeventofactivatingaselftargetedhyperlinkismodeledbysettingtargettothecurrentwebpage.Thepageismodeledasacomposedstateandeverypossiblebrowsingpositionofthepageismodeledasapossiblesub-stateofthepage.Whenthepageisinaparticularsub-state,furtherintra-pagehyperlinkjumpingeventswillcauseittoleavethecurrentsub-statetothenewappropriateonebytheselectconnec-tiveinStatechart.Thepropernewsub-stateisselectedbythevaluepos(thenewdisplayarea)oftheeventtore ectthenewbrowsingposition(Figure9b).4.2.2Inter-page
Thisisamoretrivialkindofmappingfromhyperlinkstostatetransitions.Abstractionisdonehereonindividualpagesincomposedstate,detailsofsub-statesarehidden