systematic generation of abstract user interfaces
DESCRIPTION
An abstract user interface is defined according the Came¬leon Reference Framework as a user interface supporting an interactive task abstracted from its implementation, independently of any target computing platform and interaction modality. While an abstract user interface could be specified in isolation, it could also be produced from various models such as a task model, a domain model, or a combination of both, possibly based on information describing the context of use (i.e., the user, the platform, and the environment). This paper presents a general-purpose algorithm that systematically generates all potential abstract user interfaces from a task model as candidates that could then be refined in two ways: removing irrelevant candi-dates based on constraints imposed by the temporal operators and grouping or ungrouping candidates according to constraints imposed by the context of use. A model-driven engineering environment has been developed that applies this general-purpose algorithm with multiple levels of refinement ranging from no contextual consideration to full-context consideration. This algorithm is exemplified on a some sample interactive application to be executed in various contexts of use, such as different categories of users using different platforms for the same task.TRANSCRIPT
![Page 1: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/1.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012) 1
Systematic Generation of Abstract User Interfaces
27/06/2012
Vi Tran Jean VanderdoncktFrançois Beuvens
Université catholique de LouvainLouvain School of ManagementLouvain Interaction Laboratory
Louvain-la-Neuve (Belgium)
Ricardo Tesoriero
University of Castilla-La Mancha Albacete (Spain) &
Université catholique de LouvainLouvain Interaction Laboratory
![Page 2: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/2.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012) 2
Presentation structure• Motivations and related works• AUI generation workflow and its principal
components• Conclusion• Demo
27/06/2012
![Page 3: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/3.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012) 3
Motivations• Today, there exists many ways for generating
an Abstract UI (AUI) from different sources such as:
• Task model• Domain model (more than a mere data model)• Context model
• Consequences• Heterogeneity of techniques• No coverage of all possible AUIs at once
27/06/2012
![Page 4: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/4.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012) 4
Related workIKnowU: expert system for deciding AUIs based on rules
27/06/2012
![Page 5: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/5.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012) 5
Related workGenerating AUIs based on discourse model
27/06/2012
![Page 6: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/6.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012) 6
Related workROAM: Generating AUIs based on task model
27/06/2012
![Page 7: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/7.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012) 7
Related workDygimes: Generating AUIs based on task model
27/06/2012
![Page 8: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/8.jpg)
08/04/2023 8
Objectives of the research• Generating the abstract user interfaces for multiple
platforms based on:• Task model• and domain model.
![Page 9: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/9.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012) 9
AUI generation workflow and its principal components
Principal components
27/06/2012
![Page 10: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/10.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012)
AUI generation workflow principal componentsAUI generation workflow
27/06/2012 10
![Page 11: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/11.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012)
AUI generation workflow principal componentsTask and domain models
27/06/2012 11
Contacts task model
Contacts domain model
![Page 12: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/12.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012)
AUI generation workflow principal componentsAUI generation workflow• Link tasks to domain’s components
27/06/2012 12
![Page 13: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/13.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012)
AUI generation workflow principal componentsAUI generation workflow• Link tasks to domain’s components
27/06/2012 13
An example of linking tasks to domain components
![Page 14: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/14.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012)
AUI generation workflow principal componentsAUI generation workflow• Link tasks to domain’s components• Assign weights for the tasks
27/06/2012 14
![Page 15: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/15.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012)
AUI generation workflow principal componentsAUI generation workflow• Link tasks to domain’s components• Assign weights for the tasks
27/06/2012 15
Tasks in Contact task model are assigned weights based on the task types
![Page 16: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/16.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012)
AUI generation workflow principal componentsAUI generation workflow• Link tasks to domain’s components• Assign weights for the tasks• Create task groups
27/06/2012 16
![Page 17: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/17.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012)
AUI generation workflow principal componentsAUI generation workflow• Link tasks to domain’s components• Assign weights for the tasks• Create task groups
27/06/2012 17
An example of task grouping
An example of operator check
![Page 18: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/18.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012)
AUI generation workflow principal components
27/06/2012 18
AUI generation workflow• Link tasks to domain’s components• Assign weights for the tasks• Create task groups• Assign weights for the platforms
![Page 19: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/19.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012)
AUI generation workflow principal componentsAUI generation workflow• Link tasks to domain’s components• Assign weights for the tasks• Create task groups• Assign weights for the platforms• Generate configurations
27/06/2012 19
![Page 20: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/20.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012)
AUI generation workflow principal componentsAUI generation workflow• Link tasks to domain’s components• Assign weights for the tasks• Create task groups• Assign weights for the platforms• Generate configurations
27/06/2012 20
The configuration is generated for Palm platform
![Page 21: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/21.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012)
AUI generation workflow principal components
27/06/2012 21
AUI generation workflow• Link tasks to domain’s components• Assign weights for the tasks• Create task groups• Assign weights for the platforms• Generate configurations• Generate abstract user interface
![Page 22: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/22.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012)
AUI generation workflow principal components
27/06/2012 22
AUI generation workflow• Link tasks to domain’s components• Assign weights for the tasks• Create task groups• Assign weights for the platforms• Generate configurations• Generate abstract user interface
Rule1: An AbstractSelectionUI is considered when a task derives from an attribute of a domain class which is not the edited class and the relationships between the edited class and another one is ‘1-1’ or ‘n-1’and .
Rule2: An AbstractInputUI is considered when a task derives from the attributes of the classes that these classes are the edited classes.
Rule3: An AbstractOutputUI is considered when an abstract user interaction has been created and its label is the task name of the task related to this abstract user interaction.
Rule4: An AbstractDataItemUI is considered when a task derives from the attributes of the classes.
Rule5: An AbstractTriggerUI is considered when a task derives from an operation of a class. For example. Once the tasks have been grouped by the developer based on the screen size of devices, the AUIs are generated automatically by system.
![Page 23: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/23.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012)
AUI generation workflow principal components
27/06/2012 23
AUI generation workflow• Link tasks to domain’s components• Assign weights for the tasks• Create task groups• Assign weights for the platforms• Generate configurations• Generate abstract user interface
AUI is generated from configuration specified above
![Page 24: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/24.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012)
AUI generation workflow principal components
27/06/2012 24
AUI generation workflow• Link tasks to domain’s components• Assign weights for the tasks• Create task groups• Assign weights for the platforms• Generate configurations• Generate abstract user interface • Store generated AUIs into a xml file in
terms of UsiXML specification
![Page 25: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/25.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012) 25
Conclusion• Providing a general process for systematically
generating abstract user interfaces from the task and the domain models is necessary, but not sufficient
• Providing a palette algorithms for specifying abstract user interface types and configurating these abstract user interfaces is definitely a plus
• Implementing a software that supports this process is important for maximal usage
• Import/export facilities need to be elaborated (for the moment, only UsiXML is supported)
27/06/2012
![Page 26: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/26.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012) 26
Demonstration: https://www.youtube.com/watch?v=KoY6KxkVzAU&feature=g-upl
27/06/2012
![Page 27: Systematic Generation of Abstract User Interfaces](https://reader033.vdocuments.mx/reader033/viewer/2022061121/5468cbeaaf7959317f8b629c/html5/thumbnails/27.jpg)
EICS'2012 (Copenhagen, Denmark, June 25-28, 2012) 27
Thank you very much for your attention!
Any question?
See more at:
www.usixml.org, www.usixml.eu
www.lilab.eu, www.lilab.be
27/06/2012