cooperative computing & communication laboratory a survey on transformation tools for...

13
Cooperative Computing & Communication Laboratory A Survey on Transformation Tools for Model-Based User Interface Development Robbie Schäfer – Paderborn University / C- LAB

Upload: hector-joseph

Post on 18-Jan-2016

216 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Cooperative Computing & Communication Laboratory A Survey on Transformation Tools for Model-Based User Interface Development Robbie Schäfer – Paderborn

Cooperative Computing & Communication Laboratory

A Survey on Transformation Tools for Model-Based User Interface Development

Robbie Schäfer – Paderborn University / C-LAB

Page 2: Cooperative Computing & Communication Laboratory A Survey on Transformation Tools for Model-Based User Interface Development Robbie Schäfer – Paderborn

2

Cooperative Computing & Communication Laboratory

© 2007 Siemens IT Solutions and Services GmbH & Co. OHG und Universität Paderborn Robbie Schäfer

Outline

Motivation

Transformations in Model-based User Interface Development

Comparison of Transformation Approaches

Conclusion

Page 3: Cooperative Computing & Communication Laboratory A Survey on Transformation Tools for Model-Based User Interface Development Robbie Schäfer – Paderborn

3

Cooperative Computing & Communication Laboratory

© 2007 Siemens IT Solutions and Services GmbH & Co. OHG und Universität Paderborn Robbie Schäfer

Different ways to access to the same service (e.g. hotel booking)

Varying interaction modalities Different devices Different UI-toolkitsHow can different devices and modalities be supported?

Motivation – Many Devices

When do you arrive?

Motivation

Transformation

Comparison

Conclusion

Page 4: Cooperative Computing & Communication Laboratory A Survey on Transformation Tools for Model-Based User Interface Development Robbie Schäfer – Paderborn

4

Cooperative Computing & Communication Laboratory

© 2007 Siemens IT Solutions and Services GmbH & Co. OHG und Universität Paderborn Robbie Schäfer

Motivation – Different Users in Varying Contexts

User Interfaces have to be adapted to individual preferences and capabilities

How can the user’s capabilities and preferences be captured?How can the user interfaces be adapted?How does the context of use control the adaptation?

User A can see well…

User B can‘t see well…

Motivation

Transformation

Comparison

Conclusion

Page 5: Cooperative Computing & Communication Laboratory A Survey on Transformation Tools for Model-Based User Interface Development Robbie Schäfer – Paderborn

5

Cooperative Computing & Communication Laboratory

© 2007 Siemens IT Solutions and Services GmbH & Co. OHG und Universität Paderborn Robbie Schäfer

Solution: Model-based User Interface Development

Final UI (FUI)

Concrete UI (CUI)

Abstract UI (AUI)

Task & ConceptsDescribes which steps are

needed to reach a goal

Independent from specific modality

Independent from underlying toolkit

Toolkit-dependent User Interface

Concrete UI (CUI)

Final UI (FUI)

When do you arrive?

Motivation

Transformation

Comparison

Conclusion

Page 6: Cooperative Computing & Communication Laboratory A Survey on Transformation Tools for Model-Based User Interface Development Robbie Schäfer – Paderborn

6

Cooperative Computing & Communication Laboratory

© 2007 Siemens IT Solutions and Services GmbH & Co. OHG und Universität Paderborn Robbie Schäfer

Device Profile

HTML

UIML

DISL

Transformations needed in Model-based User Interface Development Approach

Model Transformations Transformations of UIDLs Transformations for optimizations Profile Conversion and Evolution

Final UI (FUI)

Concrete UI (CUI)

Abstract UI (AUI)

WMLVoiceXML

FIPA Device ProfileCC/PP

Motivation

Transformation

Comparison

Conclusion

Page 7: Cooperative Computing & Communication Laboratory A Survey on Transformation Tools for Model-Based User Interface Development Robbie Schäfer – Paderborn

7

Cooperative Computing & Communication Laboratory

© 2007 Siemens IT Solutions and Services GmbH & Co. OHG und Universität Paderborn Robbie Schäfer

Selection Criteria for Transformation Systems

Large number of transformation systems in computing

Even if constrained to MDA >20 systems

UI-Development (still) has models and transformation systems differing from Software Engineering

Candidates selected because Allow generic model transformation And successfully applied for UI transformation And / or provide useful aspects for UI transformation

Selected Graph Transformation, ATL, TXL, 4DML, UIML peers, XSLT, GAC, RDL/TT

Motivation

Transformation

Comparison

Conclusion

Page 8: Cooperative Computing & Communication Laboratory A Survey on Transformation Tools for Model-Based User Interface Development Robbie Schäfer – Paderborn

8

Cooperative Computing & Communication Laboratory

© 2007 Siemens IT Solutions and Services GmbH & Co. OHG und Universität Paderborn Robbie Schäfer

The Selected Canditates (1)

Graph transformations (GT) Formal approach for UI abstractions which are specified with

graphs Embedded in UsiXML Allows transformation of almost all levels of abstractions

Atlas Transformation Language (ATL) Hybrid approach with declarative matching rules (patterns +

OCL expressions) Imperative constructs for matching rules Works on models only

Rule Description Language for Tree Transformation (RDL/TT) General XML transformation language Mainly used for UI adaptation Simple source matching, target defined with Java-like

constructs

Motivation

Transformation

Comparison

Conclusion

Page 9: Cooperative Computing & Communication Laboratory A Survey on Transformation Tools for Model-Based User Interface Development Robbie Schäfer – Paderborn

9

Cooperative Computing & Communication Laboratory

© 2007 Siemens IT Solutions and Services GmbH & Co. OHG und Universität Paderborn Robbie Schäfer

The Selected Canditates (2)

TXL Broad Scope, also used for model transformations Specification of Structure with BNF Transformation rules (pattern / replace) and functional

programming Allows for the transformation to concrete UI instance

Four-Dimensional Markup Language (4DML) General purpose but used for UI adaptation Transformations between completely different notations Views Data as n-dimensional structures Declarative source matching and target definition

Motivation

Transformation

Comparison

Conclusion

Page 10: Cooperative Computing & Communication Laboratory A Survey on Transformation Tools for Model-Based User Interface Development Robbie Schäfer – Paderborn

10

Cooperative Computing & Communication Laboratory

© 2007 Siemens IT Solutions and Services GmbH & Co. OHG und Universität Paderborn Robbie Schäfer

The Selected Canditates (3)

User Interface Markup Language (UIML) UIML is XML-based UI Description language Allows mapping to target interfaces Linear transformations

Extensible Stylesheet Language Transformations (XSLT) XML transformation language Used for UI transformations e.g. XHTML conversion Recursive application of template rules and patterns

General Adaptation Component (GAC) XML transformation language Developed for adaptation of web content Transformations described with RDF

Motivation

Transformation

Comparison

Conclusion

Page 11: Cooperative Computing & Communication Laboratory A Survey on Transformation Tools for Model-Based User Interface Development Robbie Schäfer – Paderborn

11

Cooperative Computing & Communication Laboratory

© 2007 Siemens IT Solutions and Services GmbH & Co. OHG und Universität Paderborn Robbie Schäfer

Comparison of Different Transformation Tools

Feature ATL GT TXL 4DML XSLT GAC UIML RDL

Declarative + + + + + - + -

Imperative + - - - + + - +

Model Transformation + + (+) (+) (+) (+) (+) (+)

XML Transformation - - (+) (+) + + - +

Code Transformation - - + (+) - - - -

Code Generation - - + + (+) - + (+)

Complex Mapping + + + + + + - +

Extensible + - - - - - - +

Parameterizable - - - - - + - +

Motivation

Transformation

Comparison

Conclusion

Page 12: Cooperative Computing & Communication Laboratory A Survey on Transformation Tools for Model-Based User Interface Development Robbie Schäfer – Paderborn

12

Cooperative Computing & Communication Laboratory

© 2007 Siemens IT Solutions and Services GmbH & Co. OHG und Universität Paderborn Robbie Schäfer

Conclusion

Looked at several systems for UI transformation

Studied only language features, not real performance

Decision for one approach largely depends on The modeling tasks The model representation formats The targeted application The developers familiarity with a certain programming

model

Transformations working on XML model representations can help to bypass or improve transformations in UI modeling tools

Motivation

Transformation

Comparison

Conclusion

Page 13: Cooperative Computing & Communication Laboratory A Survey on Transformation Tools for Model-Based User Interface Development Robbie Schäfer – Paderborn

13

Cooperative Computing & Communication Laboratory

© 2007 Siemens IT Solutions and Services GmbH & Co. OHG und Universität Paderborn Robbie Schäfer