Past, Present, and Future of User Interface Software Tools - PowerPoint PPT Presentation

About This Presentation
Title:

Past, Present, and Future of User Interface Software Tools

Description:

Themes that are important in determining successful tools: ... Predictability is a key attribute, and should not be sacrificed to make tool smarter. ... – PowerPoint PPT presentation

Number of Views:83
Avg rating:3.0/5.0
Slides: 32
Provided by: BerksLehi
Category:

less

Transcript and Presenter's Notes

Title: Past, Present, and Future of User Interface Software Tools


1
Chapter 10
Past, Present, and Future of User Interface
Software Tools
2
Introduction
  • Research in the area of user interface software
    has had an enormous impact on todays software
    development.
  • Virtually all applications today are built using
    window managers, toolkits, and interface builders
    that have their roots in the research of the 70s,
    80s, and 90s.

3
Homogeneity Sophistication
  • Most applications on Windows, UNIX, and Mac look
    and work in very similar fashions, primarily
    using a small set of constructs invented 15 or
    more years ago.
  • Hardware has stabilized on the desktop machine.

4
New Problems
  • Many feel opportunities for improved graphical
    interfaces are being lost to stagnation.
  • Many conventional techniques cannot be applied to
    newer technology stating to emerge (PDAs,
    digital cell phones, etc.)
  • This leads to dramatic increase in diversity.

5
Evaluating Themes
  • Themes that are important in determining
    successful tools
  • Parts of the user interface that are addressed
  • Threshold and ceiling
  • Path of least resistance
  • Predictability
  • Moving Targets

6
10.2.1 Historical Perspective
Parts of the User Interface Threshold /
Ceiling Path of Least Resistance Predictability Mo
ving Target
7
10.2.2 What Worked
User Interface Tools have had a tremendous impact
on software development. An example of current
generation environment would be Microsoft OLE.
8
10.2.2.1 Windows Managers and Toolkits
Windows Managers provide a basic programming
model for drawing and screen update.Toolkits
make managing the creation of interfaces a much
easier process.
9
10.2.2.2 Event Languages
With Event Languages, events are properly sorted
to programs which contain the necessary code to
complete the task.Event Languages also
encourage the use of Mode-Free styles of
interfaces.
10
10.2.2.3 Interactive Graphical Tools
These tools help the user to create windows and
dialogue boxes using interactive, graphical
menus.By using graphical means to express
graphical concepts, the developer can better
understand what is to be done.
11
10.2.2.4 Component Systems
Example
Different components can take place within other
components.(EX.) A drawing program can be
implemented inside a writing program.
12
10.2.2.5 Scripting Languages
The first toolkits were developed using
programming languages that were
interpreted.Combing different ideas (Scripting,
Components, and Interface Builders) has had major
success.
13
10.2.2.6 Hypertext
Hypertext attained amazing popularity with the
creation of the World Wide Web. Its easy to
understand creation process is key to its
success.
14
10.2.2.7 Object-Oriented Programming
Uses visible objects when programming to create a
better understanding of the end product.
15
10.2.3 Promising Approaches That Have Not Caught
On
With standardization came the lack of a need for
tools which appealed to a wide variety of
styles. As they were created, research and ideas
changed.
16
10.2.3.1 User Interface Management Systems
User Interface Management Systems offered a
higher degree of customization and control.
17
10.2.3.2 Formal Language-Based Tools
Formal Language-Based Tools fell victim to the
moving target problem. It involved dialogue
management taking a very central role. While it
was able to manage systems well, it grew obsolete
as better ideas were implemented.
18
10.2.3.3 Constraints
Constraints are declared once and maintained
automatically by the system. Constraint systems
offer simple, declarative specifications for a
capability useful in implementing several
different aspects of an interface.
19
10.2.3.4 Model-Based and Automatic Techniques
Users implement the functionality and relies on
the system to create the interfaces.Unfortunatel
y, these systems proved too unpredictable and
became obsolete.
20
10.3.1 Computers Becoming a Commodity
As time progresses, the hardwares level of
sophistication rises while cost of such hardware
diminishes.
http//www.transhumanist.com/volume1/moravec.htm
21
10.3.2.1 Varying Input and Output
Capabilities 10.3.2.2 Tools to Rapidly Prototype
Devices
We cannot assume we are going to use the same I/O
as in the past with new, ubiquitous computing
devices.
22
10.3.3 Recognition-Based User Interfaces
The system must be able to recognize the input
(hence recognition-based). I.E. speech, facial
expressions, hand motions, handwriting
recognition, etc. The system must be able to
interpret the new inputs. The system must be able
to give feedback on what it perceives to be the
input.
23
10.3.2.3 Tools for Coordinating Multiple,
Distributed Communicating Devices
These new devices must be able to communicate
with one another and sync the data they contain
to be truly useful. This kind of connectivity,
given the circumstances, must be provided at a
low level in the hardware (bluetooth, 802.11) and
OS.
24
10.3.4 Three-Dimensional Technologies
The two-dimension approach to interfaces resemble
paper. A new three-dimensional approach required
the designer and user to thing on new techniques
and metaphors. Suns Looking Glass environment is
already making headway into this 3D space. Also,
Microsofts future OS, Longhorn, will most likely
have a 3D environment.
http//wwws.sun.com/software/looking_glass/
25
10.3.5 End-User Programming, Customization, and
Scripting
Taking the theory of spreadsheets which allow
users to program and manipulate data, future
systems should make it easier for the user to
program. This will facilitate user customization
to increase productivity. Needs to be developed
in the OSs toolkit, not by a separate, compiler
identity.
10.1
26
10.3.6 Further Issues for Future Tools
-Skill and dexterity levels of users -Non-overlapp
ing layout or rectangular and opaque interactive
components -Using fixed libraries of interactive
components -Interactive setting -Requiring the
users full attention -Support for
evaluation -Creating usable interfaces
27
OS Issues
  • Some capabilities must be provided at a very low
    level for it to make intelligent choices (ex.
    Windows CE for palm devices cannot find out what
    type of hardware buttons are available on the
    PDA).
  • Todays network interfaces cannot decide how fast
    a connection is available.

28
OS Issues Cont.
  • Interfaces of the future will need to be able to
    make intelligent choices based on knowledge of
    the current systems capabilities and connections
    to its environment.
  • Ideally, all of the required capabilities with be
    packed with the operating system.

29
Conclusion
  • Research and innovation in tools lead the
    innovation of user interface design, and has made
    an enormous impact on software development.
  • Design is poised for a radical change with the
    rise in new technologies such as
    recognition-based user interfaces, 3D, etc.

30
Conclusion
  • It is believed that future tools will be based
    around the ability to provide info about the
    user, devices, and the applications state,
    rather than events.
  • It is recommended that future tools aim for a low
    threshold, so that they are easy to use but can
    still provide a high ceiling.

31
Conclusion
  • Predictability is a key attribute, and should not
    be sacrificed to make tool smarter.
  • These new challenges provide new opportunities
    and research problems for the user interface
    tools of tomorrow.
Write a Comment
User Comments (0)
About PowerShow.com