CS 66-460
Introduction to Graphical Human Machine Interfaces

An Overview of User Interface Software

MONDAY, FEBRUARY 3, 1997

Instructor: G. Bowden Wise
Rensselaer Polytechnic Institute
Spring 1997


Review ....

So far we have been looking at design aspects

The claim is that to design good interfaces, we must

involve the user as much as possible

Remember the iterative nature of the HCI lifecylce:

Today we begin looking at the development (implementation) side of user interfaces.

Today's user interfaces (GUIs) are particularly complex

Using and understanding user interface software tools will help us implement user interfaces.


Why Are UIs So Hard to Build/Implement?

Why Are UIs So Hard to Build/Implement? (continued)

They require multi-processing

They have real-time requirements

Need for robustness


Why Are UIs So Hard to Build/Implement? (continued)

Lower testability (difficult to test direct manipulation)

Little language support

Complexity of tools


Some Definitions


Importance of UI Tools: Better Quality Interface


Importance of UI Tools: Easier To Create And Maintain


What Should Tools Do?

Based on the goals on the previous pages, we can come up with a number of features that tools might provide

These features can be used to evaluate different tools

Note: no tool will have everything; and different designers/developers have different needs.

In general, the tools might:


How Might Tools Do That?

Perhaps by having the tools:


Components of UI Software

Layers:


Windowing System


Windowing System Layers


WM and WS Evolution


Organizations of Windowing Systems



Structure of Windowing Systems



Structure of Windowing Systems (continued)

The base layer

The UI layer


Window System: Output Model


Window System: Output Model (continued)

There are various graphics standards or styles:

Window System: Output Model (continued)

Other standards

Alll new systems implement a graphics style as part of the windowing system (Macintosh, X, NeWS, Microsoft Windows).


Window Systems: Input Model


Window Systems: Input Model (continued)


Window Systems: Input Model (continued)

Problems with event-driven model:


Window Systems: Communication


Window Systems: Communication in X Windows

In X, messages are sent to processes via the network.


A Simple Example of the X Protocol

  


Notes:


Window Manager: Window Decorations


Window Manager: Commands



Bowden Wise
Wed Feb 12 12:57:14 EST 1997