Model-based user interface engineering with design patterns

Seffah Ahmed, Ashraf Gaffar

Research output: Contribution to journalArticle

42 Citations (Scopus)

Abstract

The main idea surrounding model-based UI (User Interface) development is to identify useful abstractions that highlight the core aspects and properties of an interactive system and its design. These abstractions are instantiated and iteratively transformed at different level to create a concrete user interface. However, certain limitations prevent UI developers from adopting model-based approaches for UI engineering. One such limitation is the lack of reusability of best design practices and knowledge within such approaches. With a view to fostering reuse in the instantiation and transformation of models, we introduce patterns as building blocks, which can be first used to construct different models and then instantiated into concrete UI artefacts. In particular, we will demonstrate how different kinds of patterns can be used as modules for establishing task, dialog, presentation and layout models. Starting from an outline of the general process of pattern application, an interface for combining patterns and a possible formalization are suggested. The Task Pattern Wizard, an XML/XUL-based tool for selecting, adapting and applying patterns to task models, will be presented. In addition, an extended example will illustrate the intimate complicity of several patterns and the proposed model-driven approach.

Original languageEnglish (US)
Pages (from-to)1408-1422
Number of pages15
JournalJournal of Systems and Software
Volume80
Issue number8
DOIs
StatePublished - Aug 2007
Externally publishedYes

Fingerprint

User interfaces
Concretes
Reusability
XML

Keywords

  • Model-based user interface
  • Model-driven development
  • Presentation and user interface models
  • Software architecture
  • Task
  • Usability
  • User interface design patterns

ASJC Scopus subject areas

  • Computer Science Applications
  • Information Systems
  • Software

Cite this

Model-based user interface engineering with design patterns. / Ahmed, Seffah; Gaffar, Ashraf.

In: Journal of Systems and Software, Vol. 80, No. 8, 08.2007, p. 1408-1422.

Research output: Contribution to journalArticle

Ahmed, Seffah ; Gaffar, Ashraf. / Model-based user interface engineering with design patterns. In: Journal of Systems and Software. 2007 ; Vol. 80, No. 8. pp. 1408-1422.
@article{685adaac4f844547997a145e8560e459,
title = "Model-based user interface engineering with design patterns",
abstract = "The main idea surrounding model-based UI (User Interface) development is to identify useful abstractions that highlight the core aspects and properties of an interactive system and its design. These abstractions are instantiated and iteratively transformed at different level to create a concrete user interface. However, certain limitations prevent UI developers from adopting model-based approaches for UI engineering. One such limitation is the lack of reusability of best design practices and knowledge within such approaches. With a view to fostering reuse in the instantiation and transformation of models, we introduce patterns as building blocks, which can be first used to construct different models and then instantiated into concrete UI artefacts. In particular, we will demonstrate how different kinds of patterns can be used as modules for establishing task, dialog, presentation and layout models. Starting from an outline of the general process of pattern application, an interface for combining patterns and a possible formalization are suggested. The Task Pattern Wizard, an XML/XUL-based tool for selecting, adapting and applying patterns to task models, will be presented. In addition, an extended example will illustrate the intimate complicity of several patterns and the proposed model-driven approach.",
keywords = "Model-based user interface, Model-driven development, Presentation and user interface models, Software architecture, Task, Usability, User interface design patterns",
author = "Seffah Ahmed and Ashraf Gaffar",
year = "2007",
month = "8",
doi = "10.1016/j.jss.2006.10.037",
language = "English (US)",
volume = "80",
pages = "1408--1422",
journal = "Journal of Systems and Software",
issn = "0164-1212",
publisher = "Elsevier Inc.",
number = "8",

}

TY - JOUR

T1 - Model-based user interface engineering with design patterns

AU - Ahmed, Seffah

AU - Gaffar, Ashraf

PY - 2007/8

Y1 - 2007/8

N2 - The main idea surrounding model-based UI (User Interface) development is to identify useful abstractions that highlight the core aspects and properties of an interactive system and its design. These abstractions are instantiated and iteratively transformed at different level to create a concrete user interface. However, certain limitations prevent UI developers from adopting model-based approaches for UI engineering. One such limitation is the lack of reusability of best design practices and knowledge within such approaches. With a view to fostering reuse in the instantiation and transformation of models, we introduce patterns as building blocks, which can be first used to construct different models and then instantiated into concrete UI artefacts. In particular, we will demonstrate how different kinds of patterns can be used as modules for establishing task, dialog, presentation and layout models. Starting from an outline of the general process of pattern application, an interface for combining patterns and a possible formalization are suggested. The Task Pattern Wizard, an XML/XUL-based tool for selecting, adapting and applying patterns to task models, will be presented. In addition, an extended example will illustrate the intimate complicity of several patterns and the proposed model-driven approach.

AB - The main idea surrounding model-based UI (User Interface) development is to identify useful abstractions that highlight the core aspects and properties of an interactive system and its design. These abstractions are instantiated and iteratively transformed at different level to create a concrete user interface. However, certain limitations prevent UI developers from adopting model-based approaches for UI engineering. One such limitation is the lack of reusability of best design practices and knowledge within such approaches. With a view to fostering reuse in the instantiation and transformation of models, we introduce patterns as building blocks, which can be first used to construct different models and then instantiated into concrete UI artefacts. In particular, we will demonstrate how different kinds of patterns can be used as modules for establishing task, dialog, presentation and layout models. Starting from an outline of the general process of pattern application, an interface for combining patterns and a possible formalization are suggested. The Task Pattern Wizard, an XML/XUL-based tool for selecting, adapting and applying patterns to task models, will be presented. In addition, an extended example will illustrate the intimate complicity of several patterns and the proposed model-driven approach.

KW - Model-based user interface

KW - Model-driven development

KW - Presentation and user interface models

KW - Software architecture

KW - Task

KW - Usability

KW - User interface design patterns

UR - http://www.scopus.com/inward/record.url?scp=34249009879&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=34249009879&partnerID=8YFLogxK

U2 - 10.1016/j.jss.2006.10.037

DO - 10.1016/j.jss.2006.10.037

M3 - Article

VL - 80

SP - 1408

EP - 1422

JO - Journal of Systems and Software

JF - Journal of Systems and Software

SN - 0164-1212

IS - 8

ER -