Documente Academic
Documente Profesional
Documente Cultură
:FloorPlan
:Product Component
Select ing user act ion select ot her f unct ions sy st em st at us= link ready display : nav igat ion choices ent ry/ validat ed user do: link as required exit / user act ion select ed
c ust omiz at ion complet e select e-c ommerc e (purc hase) f unct ionalit y
selec t cust omizat ion f unc t ionalit y next select ion Cust omizing syst em st at us= input ready display: basic inst ruct ions room being def ined ent ry / validat ed user do: process user select ion exit / cust omiz at ion t erminat ed select descript ive cont ent Def ining room syst em st at us= input ready display: room def . window select descript iv e cont ent Sav ing f loor plan syst em st at us= input ready display: st orage indicat or ent ry / f loor plan sav e select ed do: st ore f loor plan exit / save complet ed
ent ry / roomdef . select ed all rooms do: run room queries def ined do: st ore room v ariables exit / room complet ed Building f loor plan sy st em st at us= input ready display : f loor plan window ent ry/ f loor plan select ed do: insert room in place do: st ore f loor plan variables exit / room insert ion complet ed room insert ion complet ed select descript iv e cont ent
They all present related information Use-cases provide a rather one-dimension view of the interaction. Sequence diagrams present a second dimension that is more procedural (dynamic) in nature. State diagrams provide a third dimension that is more behavioral and contains information about potential navigation pathways that are not provided by use-cases or the sequence diagram. When all three dimensions are used, omissions or inconsistencies that might escape discovery in one dimension become obvious when a second (or third) dimension is examined.
user observable functionality that is delivered by the WebApp to end-users the operations contained within analysis classes that implement behaviors associated with the class.
Activity Diagram
init ialize t ot alCost
disc ount
<= 0
c o m p u t e Pr i ( c) e ope r a t i on
Server-side
Server hardware and operating system environment must be specified Interoperability considerations on the server-side must be considered Appropriate interfaces, communication protocols and related collaborative information must be specified Browser configuration issues must be identified Testing requirements should be defined
Client-side
Relationship-Navigation Analysis
Relationship-navigation analysis (RNA) identifies relationships among the elements uncovered as part of the creation of the analysis model Steps:
Stakeholder analysisidentifies the various user categories and establishes an appropriate stakeholder hierarchy ( ) Element analysisidentifies the content objects and functional elements that are of interest to end users ( ) Relationship analysisdescribes the relationships that exist among the WebApp elements (content objects or functions) Navigation analysisexamines how users might access individual elements or groups of elements Evaluation analysisconsiders pragmatic issues (e.g., cost/benefit) associated with implementing the relationships defined earlier
9
Relationship Analysis-I
Is the element a member of a broader category of element? What attributes or parameters have been identified for the element? Does descriptive information about the element already exist? If so, where is it? Does the element appear in different locations within the WebApp? If so, where? Is the element composed of other smaller elements? If so, what are they? Is the element a member of a larger collection of elements? If so, what is it and what is its structure? Is the element described by an analysis class? Are other elements similar to the element being considered? If so, is it possible that they could be combined into one element?
10
Relationship Analysis-II
Is the element used in a specific ordering of other elements? Does its appearance depend on other elements? Does another element always follow the appearance of the element being considered? What pre- and post-conditions must be met for the element to be used? Do specific user categories use the element? Do different user categories use the element differently? If so, how? Can the element be associated with a specific formulations goal or objective? With a specific WebApp requirement? Does this element always appear at the same time as other elements appear? If so, what are they? Does this element always appear in the same place (e.g., same location of the screen or page) as other elements? If so, what are they?
11
Navigation Analysis-I
Should certain elements be easier to reach (require fewer navigation steps) than others? What is the priority for presentation? Should certain elements be emphasized to force users to navigate in their direction? How should navigation errors be handled? Should navigation to related groups of elements be given priority over navigation to a specific element. Should navigation be accomplished via links, via search-based access, or by some other means? Should certain elements be presented to users based on the context of previous navigation actions? Should a navigation log be maintained for users?
12
Navigation Analysis-II
Should a full navigation map or menu (as opposed to a single back link or directed pointer) be available at every point in a users interaction? Should navigation design be driven by the most commonly expected user behaviors or by the perceived importance of the defined WebApp elements? Can a user store his previous navigation through the WebApp to expedite future usage? For which user category should optimal navigation be designed? How should links external to the WebApp be handled? overlaying the existing browser window? as a new browser window? as a separate frame?
13
Summary
Analysis modeling transforms the requirements into a form that naturally leads to the design. Requirement analysis
User hierarchy, use-cases Base of system analysis Content model Interaction model
Analysis models
Relationship-navigation analysis
14
Readings
R. S. Pressman and D. Lowe: Web Engineering, A Practitioners Approach, McGraw-Hill, 2009.
15