University of Rostock 1 CADUI'96 - 5-7 June 1996 - FUNDP Namur Automatic user interface generation from declarative models Egbert Schlungbaum & Thomas.

Slides:



Advertisements
Similar presentations
Requirements Engineering Processes – 2
Advertisements

Advanced Piloting Cruise Plot.
University of Paderborn Software Engineering Group E. Kindler Handout for the talk given in the eJustice Dialogues at Saarland University. June 6, 2005.
Chapter 7 System Models.
Copyright © 2003 Pearson Education, Inc. Slide 1 Computer Systems Organization & Architecture Chapters 8-12 John D. Carpinelli.
Copyright © 2003 Pearson Education, Inc. Slide 1.
Chapter 1 The Study of Body Function Image PowerPoint
1 Copyright © 2013 Elsevier Inc. All rights reserved. Chapter 1 Embedded Computing.
Author: Julia Richards and R. Scott Hawley
1 Copyright © 2013 Elsevier Inc. All rights reserved. Appendix 01.
Objectives: Generate and describe sequences. Vocabulary:
UNITED NATIONS Shipment Details Report – January 2006.
Copyright CompSci Resources LLC Web-Based XBRL Products from CompSci Resources LLC Virginia, USA. Presentation by: Colm Ó hÁonghusa.
Introduction to Metview
Tutorial 3 – Creating a Multiple-Page Report
XP New Perspectives on Microsoft Office Word 2003 Tutorial 7 1 Microsoft Office Word 2003 Tutorial 7 – Collaborating With Others and Creating Web Pages.
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
Arithmetic and Geometric Means
Multiplying binomials You will have 20 seconds to answer each of the following multiplication problems. If you get hung up, go to the next problem when.
FACTORING ax2 + bx + c Think “unfoil” Work down, Show all steps.
Year 6 mental test 5 second questions
Year 6 mental test 10 second questions
Excel Functions. Part 1. Introduction 2 An Excel function is a formula or a procedure that is performed in the Visual Basic environment, outside the.
Solve Multi-step Equations
REVIEW: Arthropod ID. 1. Name the subphylum. 2. Name the subphylum. 3. Name the order.
Week 2 The Object-Oriented Approach to Requirements
Configuration management
Testing Workflow Purpose
NI LabVIEW Object-Oriented Programming
ABC Technology Project
Microsoft Access.
1 Undirected Breadth First Search F A BCG DE H 2 F A BCG DE H Queue: A get Undiscovered Fringe Finished Active 0 distance from A visit(A)
2 |SharePoint Saturday New York City
Green Eggs and Ham.
VOORBLAD.
Name Convolutional codes Tomashevich Victor. Name- 2 - Introduction Convolutional codes map information to code bits sequentially by convolving a sequence.
1 Breadth First Search s s Undiscovered Discovered Finished Queue: s Top of queue 2 1 Shortest path from s.
Copyright © 2013, 2009, 2006 Pearson Education, Inc.
BIOLOGY AUGUST 2013 OPENING ASSIGNMENTS. AUGUST 7, 2013  Question goes here!
Factor P 16 8(8-5ab) 4(d² + 4) 3rs(2r – s) 15cd(1 + 2cd) 8(4a² + 3b²)
Basel-ICU-Journal Challenge18/20/ Basel-ICU-Journal Challenge8/20/2014.
1..
© 2012 National Heart Foundation of Australia. Slide 2.
Understanding Generalist Practice, 5e, Kirst-Ashman/Hull
Macromedia Dreamweaver MX 2004 – Design Professional Dreamweaver GETTING STARTED WITH.
25 seconds left…...
H to shape fully developed personality to shape fully developed personality for successful application in life for successful.
Januar MDMDFSSMDMDFSSS
REGISTRATION OF STUDENTS Master Settings STUDENT INFORMATION PRABANDHAK DEFINE FEE STRUCTURE FEE COLLECTION Attendance Management REPORTS Architecture.
Chapter 10: The Traditional Approach to Design
Analyzing Genes and Genomes
Systems Analysis and Design in a Changing World, Fifth Edition
We will resume in: 25 Minutes.
©Brooks/Cole, 2001 Chapter 12 Derived Types-- Enumerated, Structure and Union.
Essential Cell Biology
Database Administration
Intracellular Compartments and Transport
PSSA Preparation.
Essential Cell Biology
13-1 © Prentice Hall, 2004 Chapter 13: Designing the Human Interface (Adapted) Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra,
Energy Generation in Mitochondria and Chlorplasts
Modeling Main issues: What do we want to build How do we write this down.
From Model-based to Model-driven Design of User Interfaces.
FH Augsburg - FB Informatik 1 CADUI' June FUNDP Namur Software Life Cycle Automation for Interactive Applications: The AME Design Environment.
Presentation transcript:

University of Rostock 1 CADUI' June FUNDP Namur Automatic user interface generation from declarative models Egbert Schlungbaum & Thomas Elwert Department of Computer Science University of Rostock Rostock, Germany

University of Rostock 2 CADUI' June FUNDP Namur Introduction 1 Overview on recent research works –model-based approach 2 The TADEUS approach –a small example to demonstrate some features 3 Conclusion

University of Rostock 3 CADUI' June FUNDP Namur Introduction (2) CAGUI - Computer Automated Generation of UI –Declarative models –Automatic user interface generation CADUI - Computer Aided Design of UI –model-based approach and UI development Support of UI-Designer or UI-Constructor ?

University of Rostock 4 CADUI' June FUNDP Namur Model-based tools (some) UIDE, HUMANOID, MECANO (I), ITS, GENIUS, JANUS ADEPT, TRIDENT MASTERMIND, MECANO (II), AME, FUSE, TADEUS EXPOSE, IDA

University of Rostock 5 CADUI' June FUNDP Namur Model-based approach

University of Rostock 6 CADUI' June FUNDP Namur Declarative models in model-based tools Task model Application model Dialogue model Presentation model Behaviour model Platform model User model Workplace model

University of Rostock 7 CADUI' June FUNDP Namur Use of declarative models UIDE UIDE application model ( application & interface actions, interaction techn. ) pre- and post-conditions are assigned to each action HUMANOID HUMANOID declarative modelling language with 5 parts: application semantics, presentation, behaviour, dialogue sequencing, side effects MECANO MECANO domain model TRIDENT TRIDENT task model, application model, presentation model GENIUS GENIUS existing application model, dialogue model JANUS JANUS OOA - application model

University of Rostock 8 CADUI' June FUNDP Namur Classification ( small ) classification on notation of central model systems with their own notation e.g., UIDE, HUMANOID, TRIDENT systems with notations well-known from software- engineering e.g., JANUS, GENIUS UI-ESE Interactive systems development  one possibility of integration: UI-E and SE for Interactive systems development

University of Rostock 9 CADUI' June FUNDP Namur Use of declarative models MASTERMIND MASTERMIND task model, presentation model, application model MECANO II MECANO II user-task model, domain model, presentation model, dialogue model, user model, design model AME AME application systems objects (all-purpose OO-model) FUSE FUSE task model, problem domain model, user model, dialogue and layout models

University of Rostock 10 CADUI' June FUNDP Namur Different architectures  UIDE, HUMANOID, MECANO, MASTERMIND  AME: OI, C++ GENIUS: ISA DM JANUS: ISA DM, OI TADEUS: ISA DM ISA DM:ISA Dialogue Manager, ISA GmbH OI:Open Interface, Neuron Data

University of Rostock 11 CADUI' June FUNDP Namur Automatic generation from models UIDEGENIUS presentation: data model of application - UIDE, GENIUS UIDE dynamic behaviour: application model extended with pre- & postconditions - UIDE JANUSMECANOAME presentation and dynamic behaviour: object or domain models - JANUS, MECANO, AME ADEPTTRIDENTMASTERMINDFUSE TADEUS presentation and dynamic behaviour: multiple models - ADEPT, TRIDENT, MASTERMIND, FUSE, TADEUS

University of Rostock 12 CADUI' June FUNDP Namur TADEUS TAsk-based DEvelopment of USer interface software task-oriented and model-based approach to User Interface development of interactive systems methodology supports continuous development process declarative models: task, user, problem-domain, dialogue integration of UI and Software engineering by means of tool integration

University of Rostock 13 CADUI' June FUNDP Namur Modelling steps in TADEUS Requirements of Interactive system: Task, Problem-domain, and User m. Dialogue design: Dialogue model 1. Dialogue view identification 2. Navigation dialogue between views 3. Processing dialogue inside views Automatic generation

University of Rostock 14 CADUI' June FUNDP Namur Declarative models and automatic generation in TADEUS Dialogue model: Dialogue graph + Interaction tables problem-domain model Interaction tables presentation: problem-domain model (object model) and refinements in dialogue model: Interaction tables task model Dialogue graph dynamic behaviour: task model and refinements in dialogue model: Dialogue graph

University of Rostock 15 CADUI' June FUNDP Namur Example: Task and Problem-domain m.

University of Rostock 16 CADUI' June FUNDP Namur

University of Rostock 17 CADUI' June FUNDP Namur Example: Identification of dialogue views

University of Rostock 18 CADUI' June FUNDP Namur Example: Dialogue model Dialogue graph and Interaction table

University of Rostock 19 CADUI' June FUNDP Namur Generation of UI code in TADEUS Steps of the automatic process: 1 Default layout description 2 Selection of AIO’s for each dialogue form 3 Mapping from AIO’s to CIO’s 4 Layout of CIO’s using defaults 5 Placing CIO’s inside the dialogue view 6 Creation the dynamics from Dialogue graph 7 User interface description file for Existing UIMS

University of Rostock 20 CADUI' June FUNDP Namur Step 1: Default layout description example: push-button, some attributes default_layout PushButton {.background_colourDark_Grey;.foreground_colourBlack;.fontButtonFont;.cursortypeActionCursor; }

University of Rostock 21 CADUI' June FUNDP Namur Step 2: Selection of AIO’s automatic, rule-based selection ( Dialogue designer only specifies dialogue form, type ) ifDialogueForm is ‘data input’ andtype is ‘1:n’ then set AIO ‘single selector’

University of Rostock 22 CADUI' June FUNDP Namur Step 3: Mapping from AIO’s to CIO’s automatic, rule-based mapping ifAIO is ‘multiple selector’ andnumber_of_items is ‘const’ andnumber_of_items less 7 then set CIO ‘group of check boxes’

University of Rostock 23 CADUI' June FUNDP Namur Step 4: Layout of CIO’s presentation values are assigned to CIO’s using: 1Dialogue designer’s specification in the Interaction table ( if there is one ) 2Default layout description

University of Rostock 24 CADUI' June FUNDP Namur Step 5: Placing CIO’s placing procedure is executed for each view it uses information on groups specified in the interaction tables identification of CIO’s to place: outside-in computation of position and size:inside-out defaults for orientation –of groups in a view:{vertical, horizontal} –of CIO’s in a group:{vertical, horizontal}

University of Rostock 25 CADUI' June FUNDP Namur Step 6: Creation of dynamics Generation pattern of Dialogue graph transitions

University of Rostock 26 CADUI' June FUNDP Namur View User model Interaction table and generation result

University of Rostock 27 CADUI' June FUNDP Namur View User model ( modified ) Interaction table and generation result

University of Rostock 28 CADUI' June FUNDP Namur Conclusion: Some questions to open discussion Support of UI-Designer or UI-Constructor ? –What kind of user interface does we have to the modelling languages ? (UI for dialogue designer) –What range of applications does the modelling languages support ? TADEUS’ answer: –graphical tools under development –application area: information systems (business application), TADEUS itself

University of Rostock 29 CADUI' June FUNDP Namur Conclusion: Some questions to open discussion Automatic generation - Does it really support ? –What is the relation between modelling effort and quality of automatic generation result ? –Which steps of user interface generation can be done in a fully automatic way ? TADEUS’ answer: –quality of generation result is good, but modelling effort is high (in the restricted application area)

University of Rostock 30 CADUI' June FUNDP Namur Conclusion: Some questions to open discussion Automatic generation - Does it really support ? –How to properly integrate the generated User Interface and the functional core ? –How to to update the declarative models, if the dialogue designer improves the generated UI by hand ? TADEUS’ answer: –the destination UIMS allows the independent development of the user interface and functional core –generation of different solutions from which the designer can select the best one

University of Rostock 31 CADUI' June FUNDP Namur Conclusion: Some questions to open discussion How to perform a re-generation of a User Interface when requirements change ? How to reverse engineer an existing User Interface to do a generation ?

University of Rostock 32 CADUI' June FUNDP Namur Thank you for your attention!