icsea 2007 - environment for ui evolution

20
Software Environment for Research on Evolving User Interfaces Juan Quiroz , Anil Shankar, Sergiu M. Dascalu, Sushil J. Louis Department of Computer Science and Engineering University of Nevada, Reno USA

Upload: juan-quiroz

Post on 14-Jan-2015

1.289 views

Category:

Business


0 download

DESCRIPTION

We present an environment to conduct evolution of UIs.

TRANSCRIPT

Page 1: ICSEA 2007 - Environment for UI Evolution

Software Environment for Research on Evolving User Interfaces

Juan Quiroz, Anil Shankar, Sergiu M. Dascalu, Sushil J. Louis

Department of Computer Science and Engineering

University of Nevada, Reno

USA

Page 2: ICSEA 2007 - Environment for UI Evolution

2

Outline

• Motivation

• Background

• Evolution environment

• Improving research productivity

• Transitioning from research to end-user tool

Page 3: ICSEA 2007 - Environment for UI Evolution

3

Motivation

• User interface design is a complex, expensive, time consuming process

• Iterative process

• Users and contexts of use are numerous

• Streamline and improve UI design

Page 4: ICSEA 2007 - Environment for UI Evolution

4

IGA for UI Evolution

• IGA to explore the space of UIs– Creativity and insight

• Evolution is guided by both the user preferences and coded guideline metrics

Page 5: ICSEA 2007 - Environment for UI Evolution

5

Genetic Algorithms

• Population based search technique– Natural selection– Survival of the fittest

Page 6: ICSEA 2007 - Environment for UI Evolution

6

Interactive Genetic Algorithms (IGAs)

Page 7: ICSEA 2007 - Environment for UI Evolution

7

Implementation Details

• Python

• GUI – wxPython

• Target language – XUL

Page 8: ICSEA 2007 - Environment for UI Evolution

8

XUL User Interfaces

• XML User Interface Language

• Mark-up language for UIs– Buttons, textboxes, sliders

menubars, toolbars

• <button label=“Hello World” />

Poor XUL rendering support in python

Page 9: ICSEA 2007 - Environment for UI Evolution

9

Page 10: ICSEA 2007 - Environment for UI Evolution

10

Investing Time on Development

vs.

Research Experimentation

Page 11: ICSEA 2007 - Environment for UI Evolution

11

Research Environment Improvements

• wxPython integration

• Experiment runs manager

• Data manager

Page 12: ICSEA 2007 - Environment for UI Evolution

12

wxPython Integration

Page 13: ICSEA 2007 - Environment for UI Evolution

13

Experiment Runs Manager

Page 14: ICSEA 2007 - Environment for UI Evolution

14

Data Manager

Page 15: ICSEA 2007 - Environment for UI Evolution

15

Future Productivity Improvements

• GUI definition in wxGlade or NetBeans

• Integration of user interface definition in the environment

• Higher level user interface specification

• Code generation

• User interface editing

Page 16: ICSEA 2007 - Environment for UI Evolution

16

Transitioning from Research to End-User Tool

• Users– Researchers– UI designers

• Environment Modes– End-user mode– Researcher mode

Page 17: ICSEA 2007 - Environment for UI Evolution

17

User Modes

• End-user mode– Minimalist interface– Reduce technical jargon

• “Variety”• “Creativity”

– Subset of functionality of researcher mode

• Researcher mode– Advanced configuration

Page 18: ICSEA 2007 - Environment for UI Evolution

18

Use CaseEnd-User Mode

Researcher Mode

1 Define user interface √ √

2 Load user interface definition √

3 Customize high level IGA details √ √

4 Customize low level IGA details √

5 Start IGA √ √

6 Stop IGA √ √

7 Open IGA state √ √

8 Save IGA state √ √

9 Select best and worst UI √ √

10 Undo evolution step √ √

11 Redo evolution step √ √

12 Edit evolved UI √ √

13 Run batch mode √

14 Extended help √

Page 19: ICSEA 2007 - Environment for UI Evolution

19

Summary

• UI evolution

• Investing time on environment development– Improves productivity– Less error prone– Reduces tedious tasks

• Transition from end-user to research tool

Page 20: ICSEA 2007 - Environment for UI Evolution

20

Questions?

• www.cse.unr.edu/~quiroz

[email protected]