2User Experience ModelUse cases describe the way a system will be used, but they don’t specify the system user interface.User experience storyboards, based on use cases, add the process and techniques necessary to design and build a user interface that will meet requirements and allow users to exercise all the system behaviour described in use cases.Also facilitate communication among the UI designers, and the UI architects and developers who design and implement the system.
3User Experience (UX)Term used to describe the team and the activities of those specialists responsible for keeping the user interface consistent with current paradigms and appropriate for the context in which the system is to run.Some of the concerns of the UX team are architecturally significant (navigational flows) whereas others are purely cosmetic (colours, fonts). We concentrate on architecture here.
4Information Architect (IA) The main member of the UX team is the information Architect (IA). The IA is concerned with the information content of the screens, their organisation and their navigation.The principal artefact the IA is responsible for is the UX Guidelines Document. This document defines the overall ‘look and feel’ and provides a foundation of rules for defining new screens and flows.The UX team consume Use Cases and, using prototypes for illustrating storyboards, produce the UX Guideline Document.
5Artefacts of the UX Model Screens and content descriptionsStoryboard scenariosNavigational paths through the screensThe UX model is a view of the system through its screens.The architecturally significant properties of the screens and their navigational relationships are the main elements of the UX model.UML Collaborations capture storyboard scenarios of the application in terms of the system’s screens.The UX model’s storyboards are themselves mappings to the use case model.
7Screens A screen is something that is presented to the user. A screen contains the standard user interface infrastructure, such as menus and controls, as well as business relevant content.Content is a combination of:Static content – field names, titles, text and images that are constant for each userDynamic content – selected products, personal information, current status and other computed informationWeb pages are mechanisms that build and produce screens, usually by server-side mechanisms such as ASP, JavaServer Pages, servlets and so on. A screen is simply what is presented to the user.
8Overview of Screen Properties A screen’s properties and its behaviour with the user define the screen. These include:Name and descriptionStructureStatic contentBusiness logic contentManaged contentInput fields and controls that accept user inputDescriptions of user interaction with the screenStatic contentBusiness logic contentManaged contentUser inputStructure
9Screen PropertiesName and description- indicates purpose and why the screen is importantStructure- describes how the screen’s information is laid outStatic content- all the embedded text and images that remain constant over time and with each userInput fields and controls – identify what information the users can provide to the system through the interface
10Dynamic content (business and managed) Dynamic content managed by business processesBanner adsHelp and informational messagesPress releasesWhite papersDynamic content managed and delivered by the applicationSearch resultsShopping cart line itemsUser preferences
11StoryboardsWhen screens are combined and ordered they can describe use case scenarios.The goal of these so called ‘storyboard scenarios’ is to express a typical use of the system through the eyes of the user.Each scenario is an expression of a typical use of the system.Early in development, the screens might simply be hand-drawn diagrams but later these evolve into HTML files which make their way into the application builds.
12Navigational PathsMaps of the navigational paths express the structure of an application’s screens with their potential navigational pathways.The maps express all the legal and expected pathways through the system
13UX Modelling with UMLA screen is represented in a UML model with a <<screen>> stereotyped class.A screens name is used as the class name and a screens description captured as the class description.Static content such as labels and images are not architecturally significant and are not modelled.Content layout is not modelled for the same reasons. (These belong in the UX Guidelines Document).The simplest way to model dynamic content is to enumerate it as attributes of the stereotyped class.Strict data types are not necessary, it is sufficient to identify the domain content by name (with elaboration in the accompanying documentation)
14Modelling Dynamic Content If there is really only one allowed instance of the content in a screen, it should be modelled as an attribute of the class (Total appears as a class attribute since there is only one occurrence of this value to be seen on the screen.The content in the line items is variable.<<Screen>>CartTotal0..*Line ItemsIdNameShort DescriptionQuantityNumber AvailableThumbnail URL
15Modelling Screen Behaviour The behaviour of interest in the UX model is the behaviour that the screen user can invoke on the screen to alter its state or the state of the system. (Behind the screen action in creating the screen are not generally of interest in the UX model although some operations (navigation for example) are sometimes included for clarity).<<Screen>>CartTotalUpdate quantity()Delete line item()0..*Line ItemsIdNameShort DescriptionQuantityNumber AvailableThumbnail URL
16Modelling Screen Flow Catalog What might appear in the Product Screen? Home PageFeatured product IDFeatured product NameFeatured product PriceFeatured product descriptionFeatured product thumbnailselect featured productselect catalog<<Screen>><<Screen>>CategoriesPrevious0..*Category itemIdNameDescriptionImage URLCategoryCategory IDCategory nameCategory descriptionCategory imagescroll forwardscroll backwardselect product<<Screen>>Subcategories0..*NextWhat might appearin the Product Screen?Featured ProductProduct<<Screen>>
17Modelling Screen Flow Model associations between classes (screens). The influence of the browser’s back button is of no interest here.Navigational paths are limited to the expected paths, not every possible one.
18User InputIn the UX model, it is important to capture each named input field and, optionally, the type of control used to collect it.Input forms are modelled with a separate <<inputform>> stereotyped class.This becomes a composite aggregate of the screen class.Fields are captured as attributes and can be optionally typed with the type of input control they are.
19<<input form>> User InputIn this example:The Input Form Modelled as Contained ClassThe user input to the search form does not determine the next screen to be navigated.<<Screen>>CatalogCategories0..*Category ItemIdNameDescriptionImage URL<<input form>>Search FormKeywords: Text
20User InputHere, the user input to the search form determines the next screen to be navigated.<<Screen>>PaymentInformation<<input form>>Successful<<Screen>><<Screen>>IncompletePayment InfoOrder SummaryMissing DataError<<Screen>>Processing Error
21Screen CompartmentsIt is becoming common for I.A.’s to define screens and the look and feel as a whole- in terms of screen compartments, or sub screens.Each has a dedicated purpose that is expected to combine with other compartments to make a whole screen.The main of screen compartments advantage is reuse.They are modelled with a <<screen compartment>> sterotyped class.They are modelled as shared aggregates (just like dynamic content).
23Storyboard Construction In a web application, the screens are the individual boards that, when strung together, tell a story of the application.A UML storyboard is a collaboration and is best captured by collaboration diagrams.The UML storyboard maps to a Use Case.Steps:Illustrate navigation map (sometimes called a Participants Diagram) showing all the classes participating in the use case being storyboarded e.g the browse catalog use case. Remember, not all navigation paths may be shown if it complicates the diagram.Construct a sequence diagram for the browse catalog use case.Express the storyboard scenario as a collaboration diagram.
30Problem DescriptionUser needsMany requirements willbe resolved throughinteraction with actorsThe experience ofthe user duringInteractions needsto be modelledReqSpec.Use CasesUX ModelAnalysis Models: To model the user/applications domain*Class DiagramsObject DiagramsSequence DiagramsCollaboration DiagramsActivity DiagramsClass DiagramsActivity DiagramsSequence diagramsCollaboration diagramsUse Case DiagramsUse Case textActivity DiagramsSequence diagramsTemplates