Topic – Elements of Computer Interfaces

Topic -Elements of Computer Interfaces

Introduction

Why should we study Human Computer Interaction? For some of us interaction with computers is a very straight-forward thing. Computers are literal and they follow instructions exactly. However – we should also realize that when we interact with a computer we are interacting with a human designed system and that the computer is simply following a set of rules designated by another human. These interactions can be frustrating or can be natural – and the ability to create an interface that is intuitive and logical makes working with a computer a much more rewarding experience for the user.

History

Today we may take for granted interfaces devices like the computer mouse – but in the early days this was not so obvious and the mouse was a product of a lot of complex research and modeling (see https://en.wikipedia.org/wiki/Fitts’s_law ). We take a lot of the interface elements for granted that are now considered normal. The book The Psychology of Human-Computer Interaction was influential in shaping the direction of computer interfaces. It introduced the GOMS model (https://en.wikipedia.org/wiki/GOMS ) . The history of HCI is still in progress, recent innovations in HCI include advances such as the smart phone and features available on these devices as well as much more complex systems.

Understanding HCI

In this class you will learn to (1)  propose design alternatives for interfaces, (2) test user responses to interface designs, (3) evaluate these responses, and (4) select best alternatives. Along the way you will need to learn methods to represent your designs, document the design and evaluate and present the results of user interactions. This itself is part of HCI. You will learn some UML, common interface elements and uses, and standards used to present solid designs and alternatives. We will be looking at the social issues associated with user interfaces, developing an understanding of target users and the differences between groups and individuals. We will learn to understand the organizations that contract to programmers to develop these designs. We will go into the costs of designs and finally look at different platforms and the effect they have on HCI and UI design.

Design Methodology

There are many design methodologies. The most common design methodology in user interface design involves an iterative cycle of design, prototype, evaluate, and repeat.  User interface design is a very mature discipline, but also one with many current advances. Wikipedia presents an excellent overview of user interface design at https://en.wikipedia.org/wiki/User_interface_design and you should be very familiar with this article as we will be delving into many of the topics covered in it.

User Interface Modeling

User interface modeling ( https://en.wikipedia.org/wiki/User_interface_modeling  ) is a relatively mature science with a number of very well known languages used to develop the model. One of the most common of these languages is Unified Modeling Language ( UML – https://en.wikipedia.org/wiki/Unified_Modeling_Language  ) which we will explore and use in a high level of depth in this class.

User Modeling

Modeling users is not the same as modeling user interfaces, in user modeling we are actually trying to predict the behavior of humans and how they will interact with a design.

GOMS Model

The Goals-Operators-Methods-Selection (GOMS) model is a frequently used model to characterize user interaction and actions. The parts are (1) Goals – what is the user trying to achieve, (2) What operators available to accomplish those goals, (3) What methods (which are sequences of operators), and (4) Selections of methods – if multiple exist. This may sound relatively simple – but can be complex. Take the example of setting a digital wrist watch with 4 buttons. The goal is simple – Set the watch to the correct time. Possible operators would be press button 1, press-hold button 1, press button 2, press-hold button 2, press button 3, press-hold button 3, press button 4, press-hold button 4. Each of these actions (operators) can have different results depending of performing the action. Take for example the Suunto Vector wrist watch with altimeter – the guide is here  . Note that this guide is 54 pages – and even a simple task (like setting the time) has a level of complexity that requires guidance.

Simple example of CPM-GOMS Model for changing watch time with no if/then

GOAL – Set Time

GOAL – Get Into Time Set Mode

OPERATOR – Press Hold Button 2

GOAL – Change Hours

OPERATOR – Press Button 3 (decrease)

OPERATOR – Press Button 4 (increase)

GOAL – Change set mode to minutes

OPERATOR – Press Button 2

GOAL – Change Minutes

OPERATOR – Press Button 3 (decrease)

OPERATOR – Press Button 4 (increase)

GOAL – Get out of time set mode

OPERATOR – Press Button 2

 

Required Reading

https://en.wikipedia.org/wiki/User_interface_design – Wikipedia article on user interface design. These are the topics that we will be covering in detail.

https://en.wikipedia.org/wiki/Human%E2%80%93computer_interaction – The wikipedia article on Human Computer Interaction provides the basis of the field and is also the source of most of your quiz questions.

http://www.cs.cmu.edu/~amulet/papers/uihistory.tr.html – The simple and concise history of HCI has very useful information about understanding the background and direction of HCI.

Resources

Introductions to GOMS Slides from RPI

GOMS Model Lecture from University of Maryland