Model-based user interface engineering with design patterns

Seffah Ahmed, Gaffar Ashraf

Research output: Contribution to journalArticle

42 Scopus citations


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
Issue number8
StatePublished - Aug 2007


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

ASJC Scopus subject areas

  • Software
  • Information Systems
  • Hardware and Architecture

Fingerprint Dive into the research topics of 'Model-based user interface engineering with design patterns'. Together they form a unique fingerprint.

  • Cite this