kaiser: coms e6125 1 instructor : prof. gail e. kaiser student : zhenlin pei presentation 2010...

33
Kaiser: COMS E6125 1 Instructor Prof. Gail E. Kaiser Student Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in IUIs March 30, 2010

Upload: denis-underwood

Post on 13-Dec-2015

217 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125 1

Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei

Presentation 2010

Widgets and Projects Address Automatic UI Generation in IUIs

March 30, 2010

Page 2: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125 2

Content Summary

1 IntroductionIntroduction

2

Comparison among 3 widgetsComparison among 3 widgets3

Intelligent User Interface (IUIs)Intelligent User Interface (IUIs)

4 5 projects comparison5 projects comparison

5 ConclusionConclusion

46 Thank youThank you

March 30, 2010

Page 3: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125 3

1. Introduction

Have you ever used a web site application that has been difficult to use? Or maybe you aren't sure how to purchase something online, because the directions or the steps are unclear?

Have you ever used a web site application that has been difficult to use? Or maybe you aren't sure how to purchase something online, because the directions or the steps are unclear?

The intelligent user interfaces (IUIs) would be solving these problems above. The area of IUIs maybe covers series topics involve knowledge-based techniques to issues of human-computer interaction and the application of Artificial Intelligence (AI).

The intelligent user interfaces (IUIs) would be solving these problems above. The area of IUIs maybe covers series topics involve knowledge-based techniques to issues of human-computer interaction and the application of Artificial Intelligence (AI).

?

March 30, 2010

Page 4: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125 4

1. Introduction

Main issues addressed by intelligent user interface research are: [1-5] Main issues addressed by intelligent user interface research are: [1-5]

……

11 22

How can interfaces offer better support for their users' tasks, plans, and goals?

33

How can information be presented more effectively?

44How can the design and implementation of good interfaces be made easier?

How can interaction are made clearer and more efficient?

March 30, 2010

Page 5: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125 5

Introduce and compare 3 widgets, and compare 5 projects that address automatic UI generation

1. Introduction

Widgets

Yahoo! Widgets

Wicket Web BeansMetawidget

Windows Gadgets Google Gadgets

My task

OpenXava

JMatter

UGAT

Projects

March 30, 2010

Page 6: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125 6

1 IntroductionIntroduction

2

Comparison among 3 widgetsComparison among 3 widgets3

Intelligent User Interfaces (IUIs)Intelligent User Interfaces (IUIs)

4 5 projects comparison5 projects comparison

5 ConclusionConclusion

46 Thank youThank you

Content Summary

March 30, 2010

Page 7: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125 7

2. Intelligent User Interfaces (IUIs)

Definition of IUIs

Mark T. Maybury and Wolfgang Wahlster [6] said: Intelligent user interfaces (IUIs) are human-machine interfaces that aim to improve the efficiency, effectiveness, and naturalness of human-machine interaction by representing, reasoning, and acting on models of the user, domain, task, discourse, and media (e.g., graphics, natural language, gesture).

March 30, 2010

•intersection of human-computer interaction

•ergonomics

•cognitive science

•AI and its subareas

Page 8: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125 8

1 IntroductionIntroduction

2

Comparison among 3 widgetsComparison among 3 widgets3

Intelligent User Interfaces (IUIs)Intelligent User Interfaces (IUIs)

4 5 projects comparison5 projects comparison

5 ConclusionConclusion

46 Thank youThank you

Content Summary

March 30, 2010

Page 9: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125 9

3 mainstream widgets

11 22

Yahoo! Widgets

33

Google GadgetsWindows Desktop Gadgets

3. Comparison among 3 widgets

March 30, 2010

Page 10: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125

Windows Desktop Gadgets

10March 30, 2010

3. Comparison among 3 widgets

• In the summer of 2000, sidebar was developed, and was used internally at Microsoft.

• On September 2002, the Sidebar appeared in Windows Vista builds, and was originally intended to replace the Quick Launch toolbar or notification area in Windows, but Microsoft scrapped these plans after the Longhorn "reset" in mid-2004.

• In the second half of 2005, Microsoft rebuilt the Windows Sidebar, and the Windows Sidebar began to appear in Windows Vista builds.

Page 11: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125 11March 30, 2010

Yahoo! Widgets

3. Comparison among 3 widgets

• In 2003 Konfabulator released paid software that consisted of cool standalone applets that did all kinds of stuff from monitoring stock market prices, to telling the time, to displaying iCal calendar.

• During 2005, Yahoo! obtained the startup, and then offered Konfabulator as freeware, both for Windows and Mac OS X.

• Later Yahoo! had great idea of renaming Konfabultaor to the Yahoo! Widget Engine.

Page 12: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125 12March 30, 2010

3. Comparison among 3 widgets

Google Gadgets

• Google Gadgets are an addition to the Google Desktop Search package. At the end of 2004, Google Desktop Search is a desktop-based, local search technology made available to the public by Google.

• Google Gadgets debuted with the release of Google Desktop 4 on May 2006.

Page 13: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125 13

Available

Platforms

Interface

Windows Desktop Gadgets

Functionality

Aesthetics

3. Comparison among 3 widgets

March 30, 2010

Google Gadgets

Yahoo! Widgets

Community

Security

Page 14: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125

1.Functionality

14March 30, 2010

3. Comparison among 3 widgets

• Windows Desktop Gadgets and Yahoo! Widget Engine only serve as a Widget engine. They fail to offer the search function that Google Gadgets offers.

• So Google Gadgets get the points in this area.

Page 15: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125 15March 30, 2010

3. Comparison among 3 widgets

2.Available

• Windows Desktop Gadgets are installed on windows OS only, but they are binding with windows OS.

• Users can store Yahoo! Widgets everywhere and activate those widgets just be executing the file, some sort of like the elegance of the Mac OS X’s application compositions which all files are under one folder, and an application can run from everywhere its folder constructions are stored.

• Google are Windows’ install-files-in-various places methodology.

• Windows Desktop Gadgets get the point here.

Page 16: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125 16March 30, 2010

3.Interface

• Widgets’ heads-up-display (HUD), formerly known as Konsposé, actually a play on Mac’s “Exposé” functionality, it shows users all they running and background Widgets at a press of a button. Users can expand the widget, resize the widget, move it on their desktop, and change the frame, the opacity.

• Gadgets can be detached from the Desktop Sidebar, can be always on top and it is collapsible only.

• Yahoo! Widgets get the point here.

3. Comparison among 3 widgets

Page 17: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125 17March 30, 2010

3. Comparison among 3 widgets

4. Platforms

• Windows Desktop Gadgets and Google only available on Windows, versus Yahoo! Widgets is available on Mac OSX, Windows XP, Vista (but not Windows 7).

• Yahoo! Widgets is cross platform and has the most desktop Widgets available over 4,000 across all OS’s.

• Yahoo! Widgets get the point here.

Page 18: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125 18March 30, 2010

3. Comparison among 3 widgets

5.Aesthetics

• Yahoo! translucency works for users, especially since users sometimes choose some Widgets, such as CPU monitor and clock, hover over some main applications.

• Even on the top of applications, gadgets are not good as translucency works. Yahoo! Widgets are more visually appealing, but Google goes for the minimalist approach.

• Yahoo! Widgets get the point here.

Page 19: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125 19March 30, 2010

3. Comparison among 3 widgets

6.Security

• The underlying Google Gadgets security problem is that Google's security architecture allows an attacker to put pretty much whatever he or she wants inside Google Gadgets.

• By design, Google Gadgets allow scripted code to be uploaded by the end user, creating interesting new attack vectors for those with malicious intent.

• Google Gadgets lost the point in this area.

Page 20: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125 20March 30, 2010

3. Comparison among 3 widgets

7.Community

• Yahoo! Widgets have bigger developer community; Widgets have comments, ratings, Widgets looks better and are more customizable. The website support Yahoo! Widgets Help Topics include: Basics, Site Updates, Using Widgets, Authoring Widgets, Platforms, Security, Troubleshooting, and Individual Widgets. Users could ask any questions about Yahoo! Widgets and find any solution about it.

• Yahoo! gets the points in this one.

Page 21: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125 21

1 IntroductionIntroduction

2

Comparison among 3 widgetsComparison among 3 widgets3

Intelligent User Interfaces (IUIs)Intelligent User Interfaces (IUIs)

4 5 projects comparison5 projects comparison

5 ConclusionConclusion

46 Thank youThank you

Content Summary

March 30, 2010

Page 22: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125

4. 5 Projects comparison

•Metawidget

22March 30, 2010

• Metawidget is a 'smart User Interface widget' that populates itself, at runtime, with UI components to match the properties of users business objects.

• It does this without introducing new technologies. It does not replace or hide users existing UI framework and guarantees that users’ investment in its technology and knowledge is as valid as always.

Page 23: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125

4. 5 Projects comparison

•Wicket Web Beans

23March 30, 2010

• Wicket Web Beans (WWB) is an Apache Wicket component toolkit for displaying and editing POJOs that conform to the JavaBeans specification.

• Web pages are automatically generated based on bean properties and certain conventions. In other words, the toolkit normally does what users expect, but when it doesn't, users can override its behavior.

Page 24: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125

4. 5 Projects comparison

•JMatter

24March 30, 2010

• The JMatter framework is Eitan Suez' modern implementation of the Naked Objects Architectural Pattern using Swing, Hibernate, and deployed with Java WebStart.

Page 25: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125

4. 5 Projects comparison

•OpenXava

25March 30, 2010

• OpenXava is a productive way for creating AJAX Enterprise Applications with Java.

Page 26: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125

4. 5 Projects comparison

•UGAT

26March 30, 2010

• the unified generic application toolkit is a Java framework designed for rapid application development.

• Based on the WidgetServer framework it enables an application to run either as a monolithic Swing application, a thin-client/server Swing application, or as a Web (AJAX) application without any change!

Page 27: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125

4. 5 Projects comparison

Comparison among them in three ways:

27March 30, 2010

• Inspecting existing architectures to create UI widgets.

• To perform inspection at runtime, detecting types and subtypes dynamically.

• Creating native sub-widgets for slotting into existing UIs.

Page 28: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125

Project Inspects existing architectures

Performs runtime UI generation, not

static code generation

Creates native sub-widgets for slotting

into existing UIs

Metawidget Yes Yes Yes

Wicket Web Beans

No, expects a fixed set of technologies (Wicket,

JavaBeans)

Yes Yes

JMatter No, requires everything to be defined on domain objects

Yes No

OpenXava No, expects a fixed set of technologies

(JPA, Hibernate Validator)

Yes No

UGAT No, expects a fixed set of technologies (Hibernate)

No No

28March 30, 2010

4. 5 Projects comparison

Page 29: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125 29March 30, 2010

• Based on these ways, the table above shows how a project compares to other projects.

• Obviously, Metawidget's most unique feature is its integration with existing architectures.

4. 5 Projects comparison

Page 30: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125 30

1 IntroductionIntroduction

2

Comparison among 3 widgetsComparison among 3 widgets3

Intelligent User Interfaces (IUIs)Intelligent User Interfaces (IUIs)

4 5 projects comparison5 projects comparison

5 ConclusionConclusion

46 Thank youThank you

Content Summary

March 30, 2010

Page 31: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125 31

5. Conclusion

March 30, 2010

Comparison among 3 mainstream widgets

• Windows Desktop Gadgets get the points in Available.

• Google Gadgets get the points in Functionality, lost the point in Security.

• Yahoo! Widgets get the points in Interface, Platforms, Aesthetics, Community.

Page 32: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125 32March 30, 2010

5. Conclusion

Comparison among 5 mainstream projects

• It is a good idea for users to use Metawidget when they face these requirements:

• leverage the full ecosystem of tools and frameworks, targeting multiple platforms;

• avoid vendor lock-in, and specialized architectural requirements.

Page 33: Kaiser: COMS E6125 1 Instructor : Prof. Gail E. Kaiser Student : Zhenlin Pei Presentation 2010 Widgets and Projects Address Automatic UI Generation in

Kaiser: COMS E6125 33

6. Thank you

March 30, 2010