14
Generative Pattern- Based Design of User Interfaces Jean Vanderdonckt and Francisco Montero Université catholique de Louvain and University of Castilla-La Mancha (Belgium) (Spain)

Generative Pattern-Based Design of User Interfaces

Embed Size (px)

DESCRIPTION

This paper suggests a method for developing graphical user interfaces based on generative patterns. A generative pattern contains portions of previously designed user interfaces are expressed through models that are either partially or totally instantiated. These portions could be identified and re-applied to a new design case study by generating code by instantiating the specifications contained in the models. The method involves typical models found in user interface development life cycle such as task, domain, abstract user interface, concrete user interface, final user interface, context model, and mappings between them. Any model could virtually be the source of a pattern and could be described, searched, matched, retrieved, and assembled together so as to create a new graphical user interface. For this purpose, a software has been developed that manages generative patterns by combining an existing user interface description language (UsiXML – user interface extensible markup language) with concepts addressing problems raised by pattern description and matching in a pattern-based language (PLML – Pattern Language Markup Language, a language was introduced to uniformly represent user interface patterns). Once instantiated from the generative patterns, the models give rise to a model-driven engineering based on model-to-model transformation and model-to-code compilation.

Citation preview

Page 1: Generative Pattern-Based Design of User Interfaces

Generative Pattern-Based Design of User Interfaces

Jean Vanderdonckt and Francisco MonteroUniversité catholique de Louvain and University of Castilla-La Mancha

(Belgium) (Spain)

Page 2: Generative Pattern-Based Design of User Interfaces

Contents

Introduction

Related Work

A conceptual model of UI patterns

Using UI patterns with UsiXML

Conclusions and future works

Page 3: Generative Pattern-Based Design of User Interfaces

Introduction

User

Interface Quality

Experience

Model-based UI Development

Quality

GenerativeexperienceModel-based

UI Development

User Interface

Page 4: Generative Pattern-Based Design of User Interfaces

Related work (ii)

UI and interaction patterns

Design Patterns: Elements of

Reusable Object Oriented Software

A Pattern Language: Towns,

Buildings, Construction

USAPs: Usability supporting

Architectural patterns

A Pattern Language for

Human-Computer Interface Design

A Pattern Library for Interaction

Design

User Interface Design

Patterns

Yahoo! Design Pattern Library

Design of Sites, The: Patterns

for Creating Winning

Web Sites

A Pattern Language for Web Usability

Ajax Design

Patterns

Just-UI

Stream-lined

object modelin

g

Page 5: Generative Pattern-Based Design of User Interfaces

Related works (ii)<!ELEMENT pattern (name?, alias*, illustration?, problem?, context?, forces?, solution?, synopsis?, diagram?, evidence?, confidence?, literature?, implementation?, related-patterns?, pattern-link*, management?)><!ATTLIST pattern patternID CDATA #REQUIRED><!ELEMENT name (#PCDATA)><!ELEMENT alias (#PCDATA)><!ELEMENT illustration ANY><!ELEMENT problem (#PCDATA)><!ELEMENT context ANY><!ELEMENT forces ANY><!ELEMENT solution ANY><!ELEMENT synopsis (#PCDATA)><!ELEMENT diagram ANY><!ELEMENT evidence (example*, rationale?)><!ELEMENT example ANY><!ELEMENT rationale ANY><!ELEMENT confidence (#PCDATA)><!ELEMENT literature ANY><!ELEMENT implementation ANY><!ELEMENT related-patterns ANY><!ELEMENT pattern-link EMPTY><!ATTLIST pattern-link type CDATA #REQUIREDpatternID CDATA #REQUIREDcollection CDATA #REQUIREDlabel CDATA #REQUIRED><!ELEMENT management (author?, credits?, creation-date?, lastmodified?, revision-number?)><!ELEMENT author (#PCDATA)><!ELEMENT credits (#PCDATA)><!ELEMENT creation-date (#PCDATA)><!ELEMENT last-modified (#PCDATA)><!ELEMENT revision-number (#PCDATA)>

PLML

Page 6: Generative Pattern-Based Design of User Interfaces

Related works (iii)

Page 7: Generative Pattern-Based Design of User Interfaces

A conceptual model of UI patterns

Page 8: Generative Pattern-Based Design of User Interfaces

Using UI patterns and usixml

Task-oriented specification

Abstract User Interface

Concrete User Interface

Final User Interface

Page 9: Generative Pattern-Based Design of User Interfaces

An example: Login (welie.com)

Page 10: Generative Pattern-Based Design of User Interfaces

An example: Login (welie.com)

Task Model

Page 11: Generative Pattern-Based Design of User Interfaces

An example: Login (welie.com)

Task to AUI

model

Page 12: Generative Pattern-Based Design of User Interfaces

An example: Login (welie.com)

AUI to CUI

model

Page 13: Generative Pattern-Based Design of User Interfaces

Conclusions and future works

• Interaction patterns can be used to generate user interfaces

• Model-based and Model-driven are useful tools for UI development

• Additional work is needed in order to classify and organized available interaction patterns

Quality

GenerativeexperienceModel-based

UI Development

User Interface

Page 14: Generative Pattern-Based Design of User Interfaces

Generative Pattern-Based Design of User Interfaces

Jean Vanderdonckt and Francisco MonteroUniversité catholique de Louvain and University of Castilla-La Mancha

(Belgium) (Spain)