IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog...

37
IWWOST’01 Valencia June 01 User Interface Models IV: User Interface Models IV: ( Design Level ) ( Design Level ) Dialog Model : (X, P)-dialog It describes the user-system “conversation”. When the user can invoke commands, select or enter information or when the computer can require data from the user and display the output information. Purpose: Describe the syntactic structure of the user-system interaction.

Transcript of IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog...

Page 1: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

User Interface Models IV:User Interface Models IV:( Design Level )( Design Level )

User Interface Models IV:User Interface Models IV:( Design Level )( Design Level )

Dialog Model: (X, P)-dialog

It describes the user-system “conversation”.

When the user can invoke commands, select or enter information or when the computer can require data from the user and display the output information.

Purpose: Describe the syntactic structure of the user-system interaction.

Page 2: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

The Dialog ModelThe Dialog Model11 Dialog Interaction Diagram:Dialog Interaction Diagram:

Windows and Dialogs the user needs to perform the tasks. Windows and Dialogs the user needs to perform the tasks. Example:Example:

The Dialog ModelThe Dialog Model11 Dialog Interaction Diagram:Dialog Interaction Diagram:

Windows and Dialogs the user needs to perform the tasks. Windows and Dialogs the user needs to perform the tasks. Example:Example:

RentalCar

start exit

Select Rent a Car

Car Rental Return Cars

Close

Select Return a

Car Close

States: Windows

or Dialogs

Events: User

Selections

Page 3: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

RentalCar

start exit

Select Rent a Car

Car Rental Return Cars

Close

Select Return a Car

Close

Page 4: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

The Dialog ModelThe Dialog Model22 Component Specification Diagram: (A, alfa)-dialogComponent Specification Diagram: (A, alfa)-dialog

Models the contents of every one of the windows and dialogs represented in the Models the contents of every one of the windows and dialogs represented in the previous diagrama. Example:previous diagrama. Example:

The Dialog ModelThe Dialog Model22 Component Specification Diagram: (A, alfa)-dialogComponent Specification Diagram: (A, alfa)-dialog

Models the contents of every one of the windows and dialogs represented in the Models the contents of every one of the windows and dialogs represented in the previous diagrama. Example:previous diagrama. Example:

Ren t a C arDialog Control

Sho w Client

Sho w Car

Sho w Date

SelectClient

SelectCar

Close

OK

MainWin dow

Client Selection Car Selection

Dialog for Renting a Car:

Window or Dialog

Component

Visualisation Tool

Control Tool

Page 5: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Rent a CarDialog Control

Show Client

Show Car

Show Date

SelectClient

SelectCar

Close

OK

MainWindow

Client Selection Car Selection

Dialog for Renting a Car :

Page 6: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Main Window: One component for every user Use Case (User Task)

ApplicationControl

Exit

SelectRental

Rent a Car

Sale a Car

Main Window

Rent a Car

Select Sales

Sale a Car

Page 7: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

The Dialog ModelThe Dialog Model33 Component Functional Model:Component Functional Model:

Table in which every one of the components and tools represented in the previous Table in which every one of the components and tools represented in the previous diagram are described in detail.diagram are described in detail.

Example: Example:

The Dialog ModelThe Dialog Model33 Component Functional Model:Component Functional Model:

Table in which every one of the components and tools represented in the previous Table in which every one of the components and tools represented in the previous diagram are described in detail.diagram are described in detail.

Example: Example:

Component Control Tool Visualisation ToolRent a Car Select_Client: Allows the

selection of a Client or theintroduction of a new one.Select_Car: Allows theselection of a car from thedatabase.

Show_Client: Shows the clientselected through the control tool.Show_Car: Shows the carselected through the control tool.Show_date: Shows the systemdate corresponding to the rentaldate.

DialogControl

Ok: Allows the user tointroduce a new rental inthe system.Close: Close the dialog andreturns the user to the mainwindow.

Page 8: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Functional Model SemanticsFunctional Model SemanticsFunctional Model SemanticsFunctional Model Semantics

Event Calling within Dialog Model Control Tools events and Domain Model event/transactions

Event Calling within Domain Model events

and Dialog Model Visualization Tools

Page 9: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Reification of the two object Reification of the two object societiessocietiesReification of the two object Reification of the two object societiessocieties

Reification = implementation ; change of granularity (Grit Denker et.al)

Three object types : abstract object : Abs : ( object ,object ) building block : Bas : ( bas ,bas ) middle object : Ref :(ref ,ref)

Ref = Abs + Bas + {A , X } A : A*

Bas Aabs

X : X*Bas Xabs

Two reification processes: Role Refinement into Components Collaboration view Refinement into Dialog Structures

Reification = implementation ; change of granularity (Grit Denker et.al)

Three object types : abstract object : Abs : ( object ,object ) building block : Bas : ( bas ,bas ) middle object : Ref :(ref ,ref)

Ref = Abs + Bas + {A , X } A : A*

Bas Aabs

X : X*Bas Xabs

Two reification processes: Role Refinement into Components Collaboration view Refinement into Dialog Structures

Page 10: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

INTER-SOCIETIES INTER-SOCIETIES MORPHISMS: behaviourMORPHISMS: behaviourINTER-SOCIETIES INTER-SOCIETIES MORPHISMS: behaviourMORPHISMS: behaviour

Mb: X-dialog X*- domain alfa-domain Dialog Interaction Diagram Sequence Diagram

Mb-inv: X-domain X*- dialog alfa-dialog Sequence Diagram Dialog Interaction Diagram

Mb: X-dialog X*- domain alfa-domain Dialog Interaction Diagram Sequence Diagram

Mb-inv: X-domain X*- dialog alfa-dialog Sequence Diagram Dialog Interaction Diagram

Page 11: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

INTER-SOCIETIES MORPHISM: INTER-SOCIETIES MORPHISM: structure (via behav.)structure (via behav.)INTER-SOCIETIES MORPHISM: INTER-SOCIETIES MORPHISM: structure (via behav.)structure (via behav.)

Ms: (A,alfa)-domain (A*,alfa)-dialog• Roles Comp.spec.diagram

Ms: (A,alfa)-domain (A*,alfa)-dialog• Roles Comp.spec.diagram

Page 12: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Page 13: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

User Interface

Component

Window

Tool

Control Tool Visualisation Tool

Combined Tool

Screen

Abstract Interaction ObjectsAbstract Interaction Objects Composing the User Interface Composing the User Interface at Design Levelat Design Level

Page 14: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Final User Task

Objective

Action

User - System InteractionUser - System InteractionUser - System InteractionUser - System Interaction

Page 15: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Design SpecificationDesign SpecificationDesign SpecificationDesign Specification

New OASIS classes for Abstract Interaction Objects

Event Calling within Domain Model events

and Dialog Model Visualization Tools

Page 16: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Design SpecificationDesign SpecificationDesign SpecificationDesign Specification

New OASIS classes for Abstract Interaction Objects Specification:

Task/Activity Class: Describes the collaboration among the objects involved in the task.

Resource Class: Represents a domain entity. User Class: Represents the properties of the different users of the

information system.

Page 17: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Design SpecificationDesign SpecificationDesign SpecificationDesign Specification New OASIS classes for Abstract Interaction Objects Specification:

conceptual schema Interfaz_de_usuario

Class nombre_clase_pantalla aggregation of dynamic relational nombre_clase_ventana towards (1, *) from (1,1);

Class nombre_clase_ventana aggregation of static relational nombre_clase_componentes towards (1, *) from (1,1);

Class nombre_clase_componente aggregation of static relational nombre_clase_herramienta towards (1, *) from (1,1);

Class nombre_clase_componente aggregation of static relational nombre_clase_herramienta towards (1, *) from (1,1);

nombre_clase_herramienta_control, nombre_clase_herramienta_visualizaciónstatic specialization of nombre_clase_herramienta;

nombre_clase_herramienta_combinada static specialization of nombre_clase_herramienta_control, nombre_clase_herramienta_visualización;

Page 18: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Page 19: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

User Interface Models V:User Interface Models V:User Interface Models V:User Interface Models V:

Presentation Model:

It describes the final components in the user screen, its design characteristics and visual dependencies among them.

Static Part: standard widgets presentation.

Dynamic Part: Shows the data dependent on the application that change at run time.

Page 20: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Implementation Phase = UI Implementation Phase = UI VisualizationVisualization

Implementation Phase = UI Implementation Phase = UI VisualizationVisualization

Depending on the final platform

OASIS-IU Specification

Automatic Code Generation

Final GUI

AIO CIO

Page 21: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Ontological Model of IDEAS:Ontological Model of IDEAS:Ontological Model of IDEAS:Ontological Model of IDEAS:

SemanticLevel

SyntacticLevel

LexicalLevel

Task Model Domain Model

Dialog Model

Presentation Model

Page 22: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Interface Development Interface Development Environment within OASISEnvironment within OASIS

IDEASIDEAS

Page 23: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

STD OM

Executable System

refine

Ontologicalmodel

ExecutableGUI

refine refine

refine

refinecompliant

OASISSpecification

General viewGeneral view

integrate

Page 24: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Integrating Usability Within Integrating Usability Within IDEASIDEASIntegrating Usability Within Integrating Usability Within IDEASIDEAS

The ISO definition of usability: The ISO 9241 standard defines usability as the "extent to which a product can be used by specified users to achieve specified goals with effectiveness, efficiency and satisfaction in a specified context of use".

Page 25: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Use cases

User requirement

Analysis

Design and Implementation

System Ready

Dialog modelPresentation modelGuidelines and heuristic

Interface Evaluation

Task modelUser modelDomain modelsUsability goals

Prototype

Feedback information

Feedback information

Feedback information

Usability Testing

Integrating Usability Within IDEASIntegrating Usability Within IDEASIntegrating Usability Within IDEASIntegrating Usability Within IDEAS

Page 26: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Interaction Patterns for Interaction Patterns for User Interface DesignUser Interface Design

Interaction Patterns for Interaction Patterns for User Interface DesignUser Interface Design

Page 27: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Introduction. DefinitionsIntroduction. DefinitionsIntroduction. DefinitionsIntroduction. Definitions

User Centred Design.

Usability

Goal: Diminish the semantic gap between designers and final users.

¿What mechanisms could be useful to documenting the experience in user

interface design?

User Centred Design.

Usability

Goal: Diminish the semantic gap between designers and final users.

¿What mechanisms could be useful to documenting the experience in user

interface design?

Style Guides Interaction Patterns

Page 28: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Style GuidesStyle GuidesStyle GuidesStyle Guides

Inconvenients:

Too simple and abstract

Difficult to select

Difficult to interpret

Can be conflictive

Style guides are of the form: Do this or Do not do this.

Inconvenients:

Too simple and abstract

Difficult to select

Difficult to interpret

Can be conflictive

Style guides are of the form: Do this or Do not do this.

Page 29: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Patterns and Pattern Patterns and Pattern LanguagesLanguagesPatterns and Pattern Patterns and Pattern LanguagesLanguages

Pattern.

Should present and solve a problem.

Should have a context of use where the solution is reachable.

Should be useful in the treatment of similar problems in other situations.

Should teach about the problem solution.

Should have an identification name to identify the pattern.

Nevertheless, patterns are no as restrictive as style guides.

Pattern Languages: Common Ground, Lingua Franca

Pattern.

Should present and solve a problem.

Should have a context of use where the solution is reachable.

Should be useful in the treatment of similar problems in other situations.

Should teach about the problem solution.

Should have an identification name to identify the pattern.

Nevertheless, patterns are no as restrictive as style guides.

Pattern Languages: Common Ground, Lingua Franca

Page 30: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Interaction PatternsInteraction PatternsInteraction PatternsInteraction Patterns

“Now, my understanding of what you are doing with patterns... It is a kind of a neat format, and that is fine. The pattern language that we began did have other features, and I don’t know whether those have translated into your discipline. I mean, there was at root behind the whole thing a continuous mode of preoccupation with under what circumstances is the environment good. In our field that means something”

Christopher Alexander, OOPSLA’96

“Now, my understanding of what you are doing with patterns... It is a kind of a neat format, and that is fine. The pattern language that we began did have other features, and I don’t know whether those have translated into your discipline. I mean, there was at root behind the whole thing a continuous mode of preoccupation with under what circumstances is the environment good. In our field that means something”

Christopher Alexander, OOPSLA’96

Page 31: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Interaction PatternsInteraction PatternsInteraction PatternsInteraction Patterns The difference between design patterns and interaction patterns is in their

application domain. The first one are intended for object domain

implementation (OO software design) whereas interaction pattern are intended

for user interface objects (GUI objects).

The first one aims reuse and the second one aims usability.

The difference between design patterns and interaction patterns is in their

application domain. The first one are intended for object domain

implementation (OO software design) whereas interaction pattern are intended

for user interface objects (GUI objects).

The first one aims reuse and the second one aims usability.

Page 32: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Patterns within IDEASPatterns within IDEASPatterns within IDEASPatterns within IDEAS

Page 33: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

ProposalProposalProposalProposal

Replace style guides with interaction patterns.

Associate pseudoidioms to the defined interaction patterns using XML based

languages.

Replace style guides with interaction patterns.

Associate pseudoidioms to the defined interaction patterns using XML based

languages.

Page 34: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Why Markup Languages?Why Markup Languages?Why Markup Languages?Why Markup Languages? Describe user interface in a canonical way.

Separates presentation from content. (XUL, UIML)

Help non-expert people to design UI.

Web Oriented.

Allows UI design reuse in different devices.

Universal language and device-independent (UIML)

Describe user interface in a canonical way.

Separates presentation from content. (XUL, UIML)

Help non-expert people to design UI.

Web Oriented.

Allows UI design reuse in different devices.

Universal language and device-independent (UIML)

Page 35: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Conclusions :Conclusions :Conclusions :Conclusions :

Model-Based User Interface Development Environment: Object Oriented Approach tackled in parallel to the system modeling and covering the phases of Analysis, Design and Implementation.

Use of Declarative Models to describe the different aspects of the user-system interaction.

Automatic Code Generation starting from the models.

Formal and Methodological Support.

Usability criteria within the development process.

Page 36: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Conclusions II:Conclusions II:Conclusions II:Conclusions II: With this User Interface Model we answer the following

questions:

Who are the potential users of the interface? ( User Model)

What tasks perform the users interacting with the system? (Task Model)

What domain objects can be accessed through the Interface?(Domain Model)

What commands and actions can the user perform with the system interface? (Dialog Model)

How are the components of the UI presented to each user? (Presentation Model)

Page 37: IWWOST’01 Valencia June 01 User Interface Models IV: ( Design Level ) Dialog Model: (X, P)-dialog H H It describes the user-system “conversation”. H H.

IWWOST’01 Valencia June 01

Conclusions III: Conclusions III: Conclusions III: Conclusions III: Patterns and Language Patterns to facilitate the communication

between designer and final user.

Allows the user to be involve in the design of the User Interface

Includes usability criteria.

Portability to different devices.

Patterns and Language Patterns to facilitate the communication

between designer and final user.

Allows the user to be involve in the design of the User Interface

Includes usability criteria.

Portability to different devices.