4
trends in analytical chemistry, vol. 4, no. 8,198s . 191 interface Trends in computer user interface technology T. C. O’Haver College Park, MD, USA New developments in user interface designs for personal computers may make them easier to use for those who do not make computing their primary occupation. We may have to wait for the next generation of small computer hardware, however, before the potential of these developments can be fully realized. A broader view of interfacing The term ‘computer interfacing’ usually brings to mind the hardware interfacing of laboratory instru- ments to computers for control and data acquisition or the interfacing of computers to other computers, for file transfer, networking, etc. But another aspect of interfacing which is receiving increasing attention is user interfacing, that is the interfacing between the human user and the computer system. This includes all aspects of hardware and software design which determines how the user communicates his or her wishes to the computer and how the computer pre- sents data and messages to the user. In the last few years there has been much activity in the devel- opment of new types of user interfaces and applica- tion software which use those interfaces, as increas- ing numbers of non-specialists use the machines as tools. At least four general types of user interfaces can be distinguished: command, menu, graphical, and natural-language. Command-driven systems In a command-driven system, the user specifies the operation to be performed by typing in a com- mand consisting of one or more letters, words, ab- breviations or punctuation marks combined accord- ing to well-defined syntax rules. The computer indi- cates that it is ready to receive a command by dis- playing a prompt, a short word or symbol that indi- cates which mode the system is in. Command-driven systems can be difficult to learn and frustrating for the beginner. The commands must be typed exactly 01659936/85/$02.00. QElsevier Science Publishers B.V. according to a strict set of syntax rules. Typically the commands are somewhat cryptic. Often there are several modes, each indicated by a different prompt and each capable of accepting a different set of com- mands. The same command may mean different things in different modes. In spite of these difficul- ties, command-driven systems are powerful and make efficient use of computer resources. To help beginners, command-driven systems often have an on-line help capability which displays a list of avail- able commands. One significant advantage for the advanced user is that a series of commands, which is simply a string of text characters, can be treated as data; it is then a simple matter to prepare and store a ‘script’ of combined commands for performing com- plex operations automatically or to write programs which generate a list of commands, for example to remotely control another system. Menu-driven systems In a menu-driven system, a list of available opera- tions is listed on the screen as a menu and the user is prompted to select one of the choices. Usually there are a number of nested sub-menus, so that selecting an item from one menu brings up a sub-menu with additional choices. Three methods of menu selection are widely used: numeric, mnemonic, and pointer. In numeric menus the selections are simply num- bered sequentially and the user types in the number of the desired selection. In mnemonic menus the first letter of the menu item is typed to select that item. This can be a faster system for the experienced user because one eventually memorizes the mnemonics and uses them without reading the menus each time, whereas numeric menu selections are more difficult to memorize. The disadvantage of mnemonic menus is that the choice of item names is artificially restrict- ed because each item in a single menu must begin with a unique letter. In pointer menus, the menu is displayed with an arrow or other text indicator point- ing to the first selection. The user is given some way to move the pointer back and forth through the list of selections and to register his choice, either by press- ing specified keys on the keyboard or by the use of a

Trends in computer user interface technology

Embed Size (px)

Citation preview

trends in analytical chemistry, vol. 4, no. 8,198s .

191

interface

Trends in computer user interface technology

T. C. O’Haver College Park, MD, USA

New developments in user interface designs for personal computers may make them easier to use for those who do not make computing their primary occupation. We may have to wait for the next generation of small computer hardware, however, before the potential of these developments can be fully realized.

A broader view of interfacing The term ‘computer interfacing’ usually brings to

mind the hardware interfacing of laboratory instru- ments to computers for control and data acquisition or the interfacing of computers to other computers, for file transfer, networking, etc. But another aspect of interfacing which is receiving increasing attention is user interfacing, that is the interfacing between the human user and the computer system. This includes all aspects of hardware and software design which determines how the user communicates his or her wishes to the computer and how the computer pre- sents data and messages to the user. In the last few years there has been much activity in the devel- opment of new types of user interfaces and applica- tion software which use those interfaces, as increas- ing numbers of non-specialists use the machines as tools.

At least four general types of user interfaces can be distinguished: command, menu, graphical, and natural-language.

Command-driven systems In a command-driven system, the user specifies

the operation to be performed by typing in a com- mand consisting of one or more letters, words, ab- breviations or punctuation marks combined accord- ing to well-defined syntax rules. The computer indi- cates that it is ready to receive a command by dis- playing a prompt, a short word or symbol that indi- cates which mode the system is in. Command-driven systems can be difficult to learn and frustrating for the beginner. The commands must be typed exactly

01659936/85/$02.00. QElsevier Science Publishers B.V.

according to a strict set of syntax rules. Typically the commands are somewhat cryptic. Often there are several modes, each indicated by a different prompt and each capable of accepting a different set of com- mands. The same command may mean different things in different modes. In spite of these difficul- ties, command-driven systems are powerful and make efficient use of computer resources. To help beginners, command-driven systems often have an on-line help capability which displays a list of avail- able commands. One significant advantage for the advanced user is that a series of commands, which is simply a string of text characters, can be treated as data; it is then a simple matter to prepare and store a ‘script’ of combined commands for performing com- plex operations automatically or to write programs which generate a list of commands, for example to remotely control another system.

Menu-driven systems In a menu-driven system, a list of available opera-

tions is listed on the screen as a menu and the user is prompted to select one of the choices. Usually there are a number of nested sub-menus, so that selecting an item from one menu brings up a sub-menu with additional choices. Three methods of menu selection are widely used: numeric, mnemonic, and pointer. In numeric menus the selections are simply num- bered sequentially and the user types in the number of the desired selection. In mnemonic menus the first letter of the menu item is typed to select that item. This can be a faster system for the experienced user because one eventually memorizes the mnemonics and uses them without reading the menus each time, whereas numeric menu selections are more difficult to memorize. The disadvantage of mnemonic menus is that the choice of item names is artificially restrict- ed because each item in a single menu must begin with a unique letter. In pointer menus, the menu is displayed with an arrow or other text indicator point- ing to the first selection. The user is given some way to move the pointer back and forth through the list of selections and to register his choice, either by press- ing specified keys on the keyboard or by the use of a

192 trends in analytical chemistry, vol. 4, no. 8,198S

physical pointing device. This approach involves more programming overhead, suffers form a lack of standardization of pointer movement control, and is typically slower than other menu selection methods.

In general, menu-driven systems are easier for the first-time user but slower for the expert user. In com- plex systems the number of nested menus and sub- menus becomes large and it may be tedious and time-consuming to wade through a large number of menus to achieve the desired effect or to search through the menus looking for a particular item. There is also the problem of getting back to a pre- vious menu; in some programs this is not obvious and there is little consistency between different pro- grams.

The graphic user interface The graphic user interface is a comparatively re-

cent development. It is characterized by a bit- mapped screen with freely intermixed text and graphic elements, a physical pointing device which controls an on-screen pointer or cursor, and the use of both pointer-selected menus and direct manipula- tion of on-screen graphic elements. The most widely used type of graphic user interface is based on a model developed during the 1970s at the Xerox Palo Alto Research Center (PARC). One of the aims of this work was to make powerful computing capabili- ties more accessible to the non-specialist by imple- menting a user interface which is ‘intuitive’, that is, which works in the same way people work with the more familiar physical tools such as paper, file fold- ers, typewriter, wastebasket, scissors, paste, etc. The result of this research was a user interface often referred to as the ‘desktop-window-mouse-icon’ en- vironment, after the main elements of its design. It was employed initially in the Xerox Alto and Star Workstations but lately has become much more pop- ular; variations on this interface have been used in Apple’s Lisa and Macintosh personal computers and in software such as Digital Research’s Graphics En- vironment Manager (GEM), Microsoft’s Windows, IBM’s Topview, and Digital Equipment Corpora- tion’s Synergy.

There are several central elements in the typical graphic interface; most of these are illustrated in Fig. 1, which shows a word processor application:

(1) Bit-mapped screen. The text screen and hard- ware character generators of conventional comput- ers are not used. Instead, all screen output is dis- played on a graphic screen in which every individual dot (‘pixel’) is controlled individually by software.

(2) Windows. Activity on the screen takes place in rectangular areas called windows. Typically several windows can be on the screen at the same time, each

carrying out a separate task or displaying a separate menu or document. Usually the windows can over- lap each other non-destructively; if work in one win- dow has to be interrupted in order to perform anoth- er task, the new task takes place in a new window which overlaps with but does not destroy or com- pletely obscure the first window. Thus the user more easily keeps his place and is less likely to become confused or lost when working with an unfamiliar system. When a large document is displayed, there is generally some mechanism for scrolling the docu- ment through the window.

(3) Menus. Many operations are selected by means of ‘pull down’ (or ‘pop up’) menus. These are essentially nested, pointer-type menus. The main or top menu stays on screen at all times, often in a ‘menu bar’ at the top of the screen. When one item is selected, a sub-menu appears instantly in its own window, temporarily overlapping a portion of the document window. When a selection from that menu is made, the menu disappears. If additional informa- tion or selection from a deeper sub-menu is needed, additional levels of overlapping windows or menus come up to display messages or handle input.

(4) Mouse. The mouse is a hand-held pointing de- vice which controls an on-screen pointer. It is used to control the cursor position in text entry, to make se- lections from menus, to manipulate windows, and to perform other operations which can be expressed graphically, such as setting tabs and margins in a word processor application, adjusting column width in a spreadsheet, designing the layout of printed for- mats in a database report, and manipulating graphic elements in a graphics preparation application. A mouse has one or more buttons which are used to se- lect items and register choices. Alternatives to the mouse include the graphics tablet, light pen, and touch-sensitive screen.

(5) Icons. Icons are small pictures or graphic el- ements which represent documents or operations. The icons are designed to suggest the operation they represent, so as to make the system more intuitive. For example, in a word processing program the mar- gin, indentation, and tab settings can be represented by small icons (e.g. arrows) on a horizontal ruler scale; the settings can be changed by sliding the icons along the scale, much as would be done on a real mechanical typewriter.

In the relatively short time since graphic interfaces have been widely used, it has become clear that they greatly improve the ease of learning new programs and increase the productivity of the casual or novice user. Graphic icons have strong suggestive power which makes an operation more intuitive and more easily remembered once learned. A well-designed

trends in analytical chemistry, vol. 4, no. 8,1985 193

Fig. I. A word processor working in a apical PARS-sole graphic user antedate. Most of the screen is occupied in this case by a single large window containing the document being worked on. In this case only one window D shown, but several document windows can be on the screen at the same time, each showing a different document. Across the top of the screen is the main menu bar, which stays on the screen at ail times. Here, the ‘character’ item is being selected by the mope-controlled pointer (the small arrow). This action pulls down the character sub-menu, which temporarily and non-destructively overlaps the text in the main document window. This sub-menu allows various text styles to be selected. Once the selection has been made (by moving the pointer down to the desired item) the overlapping sub- menu i~tantly disappears, revealing the underlying text. The entire screen is bit-mapped and thus is capable of showing the text exactly as it will appear on the print-out, with proportional spacing, full justification, boldface, underlining, italics, subscripts, superscripts, Greek characters, and other special mathematical symbols. Various icons are also evident on the screen. At the bottom and right-hand side of the document window are grey scroll bars’ used to move around within the document. The icon in the extreme lower right corner is used to resize the window, useful if more than one window is on the screen at one time. The small black rectangle near the upper right corner is a ‘split bar’ used to split the window into two independently scrollable parts in order to view two different parts of the document at the same time. Across the top of the window is a ruler icon calibrated in inches relative to the left margin. The small black triangles are margin markers and the small downwardpointing arrows are tab markers. These areplaced, moved, and removed by using the mope-&ontrolled pointer.

graphic interface makes it easier for the program au- thor to create a metaphor for the operation of the program which more closely matches the user’s in- ternal mental model of how the different parts of the program relate to each other. For example, the great success of spreadsheet programs has been due to a large extent to the clear metaphor they present; the first-time user readily ‘gets the idea’. This is partic- ularly interesting because spreadsheets usually do rather simple calculations that could always have been done with a computer. It is the user interface which makes this application accessible to a much wider audience.

A bit-mapped graphic interface is extremely flexi-

ble because all output is essentially graphic and is not constrained by a fixed text character set. Given enough screen resolution, it is possible to create a ‘what you see is what you get’ word processor with full justification, proportional spacing, multiple font styles and sizes, on-screen italics, boldface, under- lining, subscripts and superscripts, and special char- acters such as diacritical marks, Greek letters and math symbols, and imbedded graphic illustrations. One can even imagine a ‘chemical’ word processor with a built-in chemical character set and structure drawing tools.

There have also been some experimental attempts to apply graphic interfaces to such traditionally text-

194 trends in analytical chemistry, vol. 4, no. &I985

oriented applications such as database programs and computer programming languages. Beyond the ob- vious and rather straightforward porting of such ap- plications to a graphic interface environment, there have been some attempts to use graphics directly in the formulation and design of these applications, for example to show graphically the logical relationships in a database search or the structure of a pro- gramming algorithm. This seems to be an area of really creative new development.

A disadvantage of the graphic interface is the large software ‘overhead’ necessary to support it. For example, a lot of memory is needed for a high- resolution bit-mapped graphics screen, and fonts, which are implemented in software rather than in hardware character generators, take up additional memory. Thus the programs and the operating sys- tem tend to be much bigger than for traditional text- oriented systems. This calls for larger main memory, faster processors, and larger and faster disk drives. Of course, the capacity and power of small comput- ers are growing all the time, so that the needs of a graphic interface system can be more easily met. The fact remains, though, that in a given amount of mem- ory, it will always be possible to pack more raw func- tionality into a system with a minimal user interface. More to the point, it seems clear from the experience so far that currently available hardware in the per- sonally affordable price range cannot support a Xe- rox PARC style graphic interface in a completely satisfactory manner, that is, with the speed, capacity and responsiveness of more traditional systems. It seems likely that the next generation of systems, available within the next year or two, will be much more capable in this respect.

Another problem with the graphics interface is that it may seem cumbersome and limiting to the ex- pert user. A professional computer operator, or any- one else who spends a great deal of time at the key- board, may prefer a fast and concise command- driven system. It may be difficult to design a system which is both easy to learn and convenient for the ex- pert user. One helpful feature which is being used in most current programs utilizing a graphics interface are command-key alternatives to pointer-selected operations; the beginner can use pointer selection at first and then shift to command-key operation as de- sired.

Natural language systems The natural language interface is essentially a

command-driven system in which the commands are natural English-language sentences which are typed in or, ultimately, spoken into a speech-recognition device. The idea is that the computer could under-

,

stand any meaningful and unambiguous sentence construction, so that the user would not have to learn a particular command vocabulary or syntax. Ideally the system would adapt to each user’s particular method of expression. Such ideas are really at the cutting edge of current development and represent an aspect of artificial intelligence research. This turns out to be a very challenging problem, because natural language is very complex, subtle, and often ambiguous. Understanding depends on all sorts of unspoken assumptions which we generally call ‘com- mon sense’. It seems likely that the truly practical application of natural language interface will be hampered by our lack of understanding of natural language and of the representation of knowledge.

The significance of the user interface Clearly the most fundamentally important aspect

of any computer system or program is its functionali- ty; user interface concerns are of secondary concern. Nevertheless, the development of sophisticated user interfaces is of considerable importance to the scien- tific community for several reasons:

(1) Scientists are not professional users of comput- er systems; more often they are casual users whose main concern is focused on the job at hand, not on the computer system. They are often too busy to take time out to learn a complicated system. In fact, many scientists are not taking advantage of comput- er technology where they could because it is simply not worth the time and trouble.

(2) Well-developed user interfaces may greatly enlarge the market for computer hardware and soft- ware, as more personal and small business users find the new systems practical tools. As new technology moves into the consumer sector, the economies of scale lower prices and improve the availability of support and service, which benefits all users.

(3) Just as a sophisticated user interface can make the ordinary applications of computers relatively easy, they may be able to make really difficult things barely possible. For example, Metaphor Computer Systems of Mountain View, CA, U.S.A., markets sophisticated database, statistics and network server systems which are based on a variation of the icon- based graphic interface.

It remains to be seen how significant these devel- opments in user interface technology will become, but any measure which tries to make computers a part of the solution rather than a part of the problem is a step in the right direction.

T. C. O’Haver is at the Department of Chemistry, University of Maryland, College Park, MD 20742, U.S.A.