2

Concepts and Issues

“If you don’t crack the shell, you can’t eat the nut.”

—Persian Proverb

Topics Covered in This Chapter

Computing Terms

User Interface Models

Design Improvements and Aggravations

Future Plans

Usability Terms

User Analysis Terms

User Analysis Trends

Accessibility Issues

There are numerous models for interfacing with a computer. These not only include the graphical user interface (GUI) that you’re probably used to using on your own computer, but also interfaces that are growing in popularity, such as touch screen interfaces.

Before I discuss models, it’s important for you to get a solid grounding in the terminology that I will use throughout this book. These terms, as well as the meaning behind them, are important for you to understand before you learn about user interface design. Although some of the following terms may be familiar, it never hurts to reacquaint yourself with them. There are also other terms that you need to learn, and I will define each term as you go through this book. Finally, there is a glossary at the back of this book for use as a reference.

This chapter continues with a discussion of the history of user interface models so you can understand how you interact with a computer. Current user interfaces have recently implemented design improvements, but aggravations remain, which you will learn about. There’s an exciting future in user interfaces, and this chapter discusses what’s in development and how those interfaces may look different from what we’re using today.

After you read about user interface models, you will learn about user design and analysis terms as well as user analysis trends. One of those trends is to design current and future interfaces to be as accessible as possible to reach the most users possible. You will learn not only about accessibility issues but also guidelines and regulations of which you should be aware before you design your user interface.

Computing Terms

I will refer to numerous computing terms throughout this book. It’s important that you know about and understand these terms because they are used to express and define user interface design.

Graphical User Interface (GUI)

A graphical user interface, which is more popularly known by its acronym GUI (pronounced “gooey”), is a system for interacting with a computer by manipulating graphics elements and text. These graphics elements include windows, buttons, menus, and icons. Because all programs that operate in a GUI have many of the same elements, it’s easier to use those programs, so you quickly learn to relate GUI elements to real-world equivalents.

Operating Systems

The computing world today has three major GUI operating systems. Although other operating systems are available, such as text-based systems that use a command-line interface (CLI), the following three operating systems are used by nearly all computer users today.

  • Windows—Microsoft Windows is the de facto standard GUI operating system. About 90 percent of computer users use the Windows operating system.
  • Mac OS—Mac OS is the operating system for Apple Computer’s Macintosh computers. Unlike Windows and Linux, Mac OS is hardware-specific—meaning you must purchase a Macintosh computer to use the Mac OS. About 4 percent of computer users use the Mac OS.
  • Linux—Linux is an operating system that is distributed for free, although you can purchase versions of Linux produced by companies such as Red Hat (www.redhat.com) and Novell (www.novell.com). Linux doesn’t have a built-in GUI, but these paid versions usually come with a Linux GUI such as GNOME or the K Desktop Environment (KDE). About 3 percent of desktop users use Linux. However, because Linux is considered to be more stable than Windows, about 25 percent of network servers run Linux.

Parts of a GUI

No matter what GUI operating system you use, there are standard parts of a GUI. These parts are commonly called widgets, which are components that the computer user interacts with to perform tasks.

Windows

A window, as shown in Figure 2.1, is an area on the screen that is usually rectangular in shape and contains an interface that displays output and allows you to enter information. Different windows can contain different functionality. For example, one window contains a Web browser you use to visit Web pages, and another window contains a word processing program to type, save, and print a letter. Windows typically have a border, and they can be minimized (hidden) or maximized (enlarged to the screen size), moved around the computer desktop, and closed.

Figure 2.1. An example of a window.

image

There are two different types of window interfaces: single document interfaces (SDIs) and multiple-document interfaces (MDIs). In an SDI, you can open several windows that run the same program, such as when you have several Web browser windows open, with each browser displaying a different Web site. In an MDI, there can be several child windows within a parent window, such as when you have several documents open in a word processor. Chapter 7, “Designing a User Interface,” discusses SDIs and MDIs in more detail.

Buttons

A button, as shown in Figure 2.2, is one way to issue a command. Buttons can take different forms, from clicking OK to confirm an action to clicking Print to print a document or Web page to your printer. Typically, buttons are rectangular, and when you activate or deactivate the button, the system depicts the appearance of a real-world button going up and down.

Figure 2.2. An example of a button.

image

Menus

A menu, as shown in Figure 2.3, is a list of commands that give you options for issuing commands to the program. The common type of menu is the drop-down menu; when you click on a menu name, the menu options appear to drop down underneath the menu name so that you can select an option. Modern operating systems also use the pop-up menu, where you click on a location in a window or on the screen (usually with the right mouse button), and a menu with options appears where you clicked the mouse button.

Figure 2.3. An example of a menu.

image

Menus provide access to different parts of a program or different parts of the operating system. In the example in Figure 2.3, the File menu in Microsoft Excel provides access to a number of commands, such as printing the current spreadsheet.

Toolbars

A toolbar, as shown in Figure 2.4, is a row, column, or toolbox that contains buttons and other widgets. When you click on one of these icons or buttons, the program initiates the corresponding function. Toolbars often appear along the top of a window below the menu bar or in a separate floating window. In the example in Figure 2.4, when you open Microsoft Excel, you see a toolbar with buttons that allows you to access commands, such as opening a new spreadsheet.

Figure 2.4. An example of a toolbar.

image

Scrollbars

A scrollbar, as shown in Figure 2.5, lets you view continuous text and graphics in a window if all the text and graphics in the area are too large to be displayed in that area. The scrollbar is a long rectangular area usually on the right edge (and in some cases the bottom) of the window. You can drag the scroll box up and down the trough of the scrollbar.

Figure 2.5. An example of a scrollbar.

image

As you drag the scrollbar up and down, the contents displayed in the window move up and down with the bar. If the text or graphics are too wide for the screen, a horizontal scrollbar appears at the bottom edge of the window. In addition to the scroll box, a scrollbar usually includes arrow buttons at the ends for adjusting the scroll position in small increments.

Taskbars

A taskbar, as shown in Figure 2.6, is a bar at the bottom of the screen by default (although you can move it elsewhere) that opens and monitors applications. The taskbar has been a standard in all versions of Microsoft Windows since Windows 95. The taskbar contains buttons and icons that represent your currently open windows that are not visible. Not all taskbar widgets are accessible; some widgets are only visible to provide information about a program or service.

Figure 2.6. An example of a taskbar.

image

Internet

The Internet is the worldwide system of interconnected computer networks that is accessible to the public. The Internet has had a significant effect on user interface design, so this book will touch on several Internet terms as well.

World Wide Web

The World Wide Web, also known as the Web or by its acronym WWW, is an information-sharing space on the Internet that you access through a Web browser. The Web is not the same as the Internet; it is a space where people can read and write information and share that information with others.

Web Browsers

A Web browser, as shown in Figure 2.7, is a software program that displays information on a Web page and lets you interact with that Web page, such as filling out a form that the Web page sends to the company hosting the Web site when you click the form’s Submit button. Many Web browsers are available. According to the Wikipedia Web site article about Web site usage (http://en.wikipedia.org/wiki/Usage_share_of_web_browsers), between 83 and 86 percent of users use Internet Explorer for Windows and the Mac OS for Web browsing as of mid-2006.

Figure 2.7. An example of a Web browser—MSN.com.

image

URL

The Uniform Resource Locator, known popularly as URL or as Web address, is a sequence of characters that describes the location of a Web page, site, or other resource on the Internet. A URL combines four different pieces of information to retrieve Web sites, and these pieces must appear in the exact order required for the browser to find the Web site you want. For example, the Microsoft Web site URL is http://www.microsoft.com.

HTML, Java, and Other Languages

Hypertext Markup Language (HTML) is the standard language for creating Web pages and sites. However, as a simple markup language, HTML is limited in its functionality As the Web has matured, new languages have been developed to provide more features and greater functionality to Web sites.

Java is a platform-independent programming language. Platform-independent means that any computer will be able to run programs written in Java. While initially widely embraced, Java has become less popular for programming Web sites, having been replaced in recent years by other programming languages, including Adobe’s Flash for animations, PHP and JavaScript for programming, as well as Microsoft’s Active Server Pages (ASP) technology.

The most popular of these latest technologies are PHP, Flash, and JavaScript. JavaScript was developed by Netscape, a company that pioneered the first commercially successful Web browser. JavaScript lets you add scripting language within the Web page itself, but despite the JavaScript name, JavaScript bears only a distant relationship to the Java language. JavaScript and HTML are integral components of Dynamic HTML (DHTML), which is a collection of technologies to create interactive and animated Web sites. AJAX (a term for Asynchronous JavaScript and XML) is also a popular collection of technologies for creating interactive and animated Web sites. It’s so popular, in fact, that Microsoft has designed its Atlas technology to connect with ASP to implement AJAX functionality.

PHP has become the preferred Web programming language over JavaScript because it’s free to use, relatively easy to learn, and recognized by all Web browsers.

Flash is a program that is owned by Adobe, a company that originally pioneered the PostScript printing language for controlling laser printers. Flash became popular in the late 1990s because it was flexible and relatively easy to create good-looking animated graphics to place in a Web site. Flash also comes with its own scripting language, ActionScript, that you can program from within the Flash program.

JavaScript, PHP, Flash, and Java are all designed to provide greater functionality than HTML, the standard language for creating Web sites. These languages not only provide animations that Web site visitors can view, but they also use their capabilities as actual programming languages to connect to other components that the user doesn’t see. For example, a Web site that lets you shop for items online includes components that check the company database to see if a product is in stock, processes your credit card number, and connects to a shipping company Web site to ship the product to you.

World Wide Web

When you visit the World Wide Web using a Web browser, there are a number of features both in the browser and on the Web page of which you should be aware.

Hyperlinks

Hyperlinks are references to other documents on the Internet. You can attach a hyperlink, as shown in Figure 2.8, to one or more words in text, and you can attach hyperlinks to a graphic. In Figure 2.8, you see a hyperlink attached to the Pearson Education title at the top of the MSN.com page. Text hyperlinks are called embedded links, and embedded links usually have a distinctive style. (The standard embedded link style is to underline the word and color the word blue.)

Figure 2.8. An example of a hyperlink.

image

Toolbars

A toolbar in your Web browser, as shown in Figure 2.9, is the same as a toolbar in any other application. The toolbar contains a row of icons that represent commonly used functions in the browser. When you click on one of the icons, the browser performs the function. For example, if you click the Back icon in Internet Explorer, the last Web page you viewed appears in the Internet Explorer window.

Figure 2.9. An example of a toolbar in your Web browser.

image

Address Bar

The Address bar appears near the top of your browser window, as shown in Figure 2.10. The Address bar is where you type the URL for the Web site you want to visit. If you navigate to subpages within a site, the URL for that page appears in the Address bar automatically so you see your exact location.

Figure 2.10. An example of the Address bar.

image

Navigation Bar/Button

Browsers let you navigate back and forth between pages using Back and Forward buttons in the toolbar, as shown in Figure 2.11. The Back button contains an icon that points to the left and displays the previous page you viewed. The Forward button contains an icon that points to the right and displays the last page you viewed before you clicked the Back button.

Figure 2.11. An example of a navigation bar with buttons.

image

User Interface Models

Eric Raymond, in his e-book The Art of Unix Usability (2004), categorized the history of user interface models into three distinct eras:

  • Batch interfaces, which were used from the advent of the ENIAC computer in 1945 through 1968.
  • The text, or CLI, in use from 1969 to 1983.
  • The GUI, in use from 1984 through the present.

Use of these three types of interfaces didn’t just disappear from one era to the next. Most users of IBM PC and compatible computers in the 1980s continued to use the CLI in DOS, the Disk Operating System, until many of those users migrated to the Windows GUI in the early 1990s. And the GUI has its roots in the Xerox Alto that was developed in the 1970s. Even so, computers with these interfaces didn’t enter the mainstream of computing until the first year of each corresponding era.

Batch Interface

The batch interface was the first type of interface available for computers. These weren’t personal computers by any means—they were used in government facilities, universities, and large businesses, and many of these computers took up large rooms. These computers had one or more interfaces that let users preprogram specially formatted cards with punch holes, like the punch holes in a three-hole punch paper. These “punch cards” were punched with specific numbers of punches in a specific pattern that the computer would recognize. Typically, the pattern of holes that composed a particular character or operator ran vertically on the card. Each card would more or less correspond to what we later would think of as a command on the command line or a line of code in a file (although some cards were used to control the batch job). The so-called job cards guided the processing of the deck of cards. The cards would be read in a card reader that supplied the information to the computer to process.

The problem with the batch interface is that you couldn’t interact with the computer while the computer was processing the cards. If there was a problem with the cards, the operation would stop, and you would have to submit a new card with the corrected information. It could easily take several runs—and several days—to get your program to work.

Command-Line Interface

A CLI displays a command prompt, which lets the user know that the computer is ready for input. The user can then type in a command using the keyboard and submit the command for processing, usually by pressing the Enter key. The computer then processes the command and provides text output. A command can also call a file containing a series of commands or code to be processed.

The CLI traces its roots back to the 1950s, when teletype machines and computer monitors began to appear with newer, faster computers. In the 1970s, mainframe and minicomputer interfaces were changed over from cards to paper-based and then CRT monitor-based CLI interfaces. The CLI provided the possibility of interactivity with the computer (you could still use it to run programs in batch fashion and often did because it was cheaper, i.e., it consumed less of the processor’s time, which was a precious resource at the time), which was a quantum leap in usability over the batch card interface. The biggest drawback to a CLI is that you have to learn an arcane list of commands to instruct the computer to do what you want.

DOS for the IBM PC and compatible computers was the most popular operating system with a CLI because PC-compatibles were the most popular computers. DOS included a rudimentary scripting language, called batch programming (not to be confused with the batch interface), that allowed users to create a small program, called a batch file, that included a number of commands. When the user ran the batch file, DOS would run the commands in the batch file in the order they appeared in the file.

Although Windows supplanted DOS as the operating system of choice, Windows didn’t initially replace DOS. Instead, Windows was a “shell” on top of DOS that let you invoke commands without having to type anything into the DOS interface. DOS didn’t go away, and you still can access an emulation of DOS from Windows by opening the command window, as shown in Figure 2.12.

Figure 2.12. The Windows command window.

image

Even though GUIs have supplanted CLIs as the interface of choice, operating systems with CLIs are still used by many network administrators and programmers, who find that the CLI helps them be more productive. Windows XP still contains the command window, and people who have used DOS in the past will feel right at home. UNIX-based operating systems including Mac OS X and Linux also allow you to access a command window to access the operating system using a CLI. These UNIX-based CLIs also include scripting capabilities.

The development of CLIs isn’t standing still. Microsoft is developing a “CLI on steroids,” called PowerShell, that includes a scripting language based on Microsoft’s C# (that’s “C sharp”) programming language and keystroke reduction features. PowerShell will be used extensively in Microsoft Exchange Server 2007, which is the next version of Microsoft’s messaging and collaborative software system.

UNIX-based CLIs are also continuously under development. For example, the popular Bash (Bourne Again SHell) shell, which was first developed in 1987 and was based on the Bourne UNIX shell developed in 1978, received a major update to version 3.0 in 2004. Version 3.1 is available as of this writing.

The Text User Interface

After GUIs became popular, the term text user interface, or TUI, was coined to distinguish text interfaces from graphics interfaces, as shown in Figure 2.13. Unlike CLIs, a TUI uses the entire screen area to perform tasks. TUIs were in wide use on IBM PCs during the 1980s to provide greater functionality and usability for conducting tasks. Applications that used TUIs included word processing software such as WordPerfect, which was the leading word processor for IBM PC and compatible computers, as well as telecommunications software that allowed the user to connect to bulletin board systems through their modems.

Figure 2.13. A sample text user interface.

image

Graphical User Interfaces

GUIs, of course, have been the standard user interface since the 1990s, and were first available for general computing use in 1984 when Apple introduced the Macintosh. However, the availability of Windows on the popular IBM PC and compatibles platform drove GUIs to widespread acceptance. Instead of typing commands, you use your mouse to click on icons and menus. Your information is organized much like a desktop—your files are located in folders and you can organize programs and other information on the screen. GUIs are typically based on a metaphor of some type where the visual elements match something in our everyday experience with physical reality. The desktop metaphor is present in the Windows, Mac OS, and Linux GUIs.

You can launch programs and manipulate objects on the screen by using the mouse, a hardware device, to move the mouse pointer on the screen to an object and perform an action, such as clicking on it or dragging it elsewhere. These objects were categorized in four areas that together formed the acronym WIMP: window, icon, menu, and pointing device. The default pointing device in many GUIs is in the shape of an arrow, but the pointing device shape can change to alert the user that he is performing a certain task, such as editing a word processing document, or to indicate that the computer is busy doing intensive processing.

Another hallmark of GUIs is the customizability of the interface. Unlike TUIs, which only let you change a few elements like colors, GUIs let you change the appearance and position of various elements on your screen, including the “wallpaper” graphic for the desktop background, icons, and in Windows, the position of the taskbar. Windows and other GUI operating systems, as well as Web sites, offer “skins” or themes for your GUI. Skins and themes are templates that provide a custom appearance for your graphics elements in the GUI, such as the Windows Media Player 11 interface shown in Figure 2.14.

Figure 2.14. The Windows Media Player 11 window in Windows Vista.

image

Chapter 1, “Brief Histories,” discussed the three major operating systems and their GUIs: Windows, Mac OS, and Linux under GNOME and KDE. There are other GUIs for UNIX-based computers, including the Sun Solaris operating system for use with Sun Microsystems workstations.

Web Interfaces

Web interfaces are based on HTML and additional technologies that work behind the scenes to let you interact with Web pages, as shown in Figure 2.15. For example, you can enter text into the appropriate boxes, click buttons to initiate actions, and click on links in text and graphics to go directly to a different Web page.

Figure 2.15. A sample Web form.

image

Web sites contain interconnected Web pages that employ a consistent user interface, and the appearance of that interface can depend on the Web browser that the user uses to view Web pages as well as the video resolution of the user’s computer. For example, if a Web site is designed for users who have computers with 1024 by 768 pixel resolution, which is also called XGA resolution (XGA stands for Extended Graphics Array), and the user has a screen that displays only 800 by 600 pixel resolution, the Web page won’t appear as you intend it to—the user will be required to scroll horizontally in the Web browser window to view the rest of the page. Figures 2.16 and 2.17 show how the Pearson home page looks in Internet Explorer at 800 by 600-pixel resolution and 1024 by 768-pixel resolution, respectively.

Figure 2.16. The Pearson home page in 800 by 600-pixel resolution.

image

Figure 2.17. The Pearson home page in 1024 by 768 resolution. Notice that the vertical scrollbar at the side of the page in 800 by 600 resolution is no longer needed on the page in 1024 by 768 resolution.

image

Web sites provide some level of interactivity through links embedded in text and graphics, as well as through forms, such as an order form, that you can fill out and then submit to the company sponsoring the Web site.

Interfaces That Integrate with These Models

Security is of paramount concern with computing in general, and network computing (like the Web) in particular. Hardware interfaces that help maintain computer security are built to work with software interfaces to grant access to the computer or software application. These interfaces include the following:

  • Smart cards, which are much like credit cards that you insert into a separate card reader. The application reads your card and compares it to the record it has on file, as shown in Figure 2.18.

Figure 2.18. A smart card.

image

  • Fingerprint scanning, which involves placing your index finger into a small device that reads the fingerprint and checks the fingerprint against the one on file.
  • Retina scanning, which sounds like something out of Star Trek. Like a lot of other devices on Star Trek, this device has made its way into real life. You put your face against a retina reader, and the system scans the retina in your eye and compares it to the one on file.
  • Radio Frequency Identification (RFID) tags, which are mobile devices that interface with a computer system through the use of an RFID reader. As of this writing, RFID tags are used to track products and transport payments, such as electronic toll collection at toll booths. RFID chips are also being implanted in animals for livestock tracking, as well as in some humans. For example, in 2004, the Mexican Attorney General’s office implanted 18 of its workers with RFID chips from Verichip Corp. so these workers could quickly access a secure room.

These interfaces and others designed to enhance computing security will undoubtedly have greater impact on user interface design and operating system functions. The latest version of Windows contains interface improvements that help reinforce the aspects (and the appearance) of a safe and secure operating system.

Other Interfaces

The interfaces discussed in this section are not the only ones available. Indeed, several of the new ones are widely used (or will be soon), and you may have used one of them recently.

  • Tactile interfaces are those that rely on the sense of touch to gain feedback about what’s going on with the system. This type of feedback, called haptic feedback, is used in simulators to more accurately project what happens in the real world. (The term haptic comes from the Greek Haphe, which means pertaining to the sense of touch.) For example, flight simulators use tactile interfaces to tell the user what’s happening. When a pilot in a simulation encounters a situation on the screen, the control stick will provide the same amount of resistance that the pilot would experience in that situation.
  • Touch interfaces are becoming popular in places like your local grocery store, ATM machines, and even polling places. For example, when I last visited my grocery store, I paid using my credit card. The grocery store has a reader at the checkout stand so that I could not only swipe my credit card, but I could also use my wand or my finger to enter my discount card code. You will also find such interfaces in cars that have a touch screen for accessing maps, radio stations, and more, as well as at kiosks to provide services, such as public Internet access or express check-in at airports.
    Touch interfaces are also widely used with handheld PCs, also called Personal Digital Assistants (PDAs) and Pocket PCs. The interfaces for these devices use a stylus, which is a miniature wand, so you can tap icons and other objects to manipulate them. You can also use your finger to tap objects.
  • Telephone user interfaces require you to use the telephone touch pad to interact with the program in the system. This is commonly used for such purposes as selecting the correct extension or department number when you call a company as well as accessing your answering machine voice mail system that your telephone company manages. A long session with one of these interfaces has brought about the derisive term voice mail hell to describe the frustration of being unable to address a real person within a certain amount of time.
    However, as the line between handheld PCs and cell phones blurs, people are also using their telephone user interface to interact with their telephone to take pictures, play games, and especially send text messages.
  • Button interfaces include those you find on your iPod or a video game player. Although button interfaces have a lot of the features of touch interfaces, I’ve put button interfaces in a separate category because you use a piece of hardware to manipulate objects on the screen instead of using the screen as the interface. Button interfaces can take different forms. For example, an iPod has a button wheel that lets you navigate quickly through your playlist to find the song or video you want to play. Button interfaces can also be combined with related interfaces, such as using a joystick to move an object in a game.

Design Improvements and Aggravations

2006 saw a number of interesting developments in user interface design, starting with the most popular operating system: Microsoft Windows.

Windows Vista

Windows Vista, the sixth major version of Windows, was released at the end of 2006 to businesses and in early 2007 to consumers. This version contains some evolutionary, but not revolutionary, updates to the software. One of the biggest improvements is the Aero user interface, which includes such features as translucent windows, the capability to tilt windows, and new organizational and search capabilities, as shown in Figure 2.19. The security capabilities have also been improved, especially when it comes to controlling user accounts and who sees what in Windows.

Figure 2.19. The Windows Vista desktop.

image

The biggest issue confronting Windows is one of security. Because Windows is the most popular operating system, attacks on the system are numerous and constant. Therefore, Windows Vista has established security features that have been described in the computing media as “unfriendly.” When you use a program or service, Windows Vista in its default mode opens a dialog box asking you to grant permission to run the program. This interface feature could be a deterrent to adoption of Vista for those users who are aggravated by taking the extra step to click the Allow button in the dialog box to use their system. Such features could also provide competitors like Apple an opportunity to tell Windows users that their operating system doesn’t employ these security features and offers a better user experience.

Mac OS X

The Mac OS has long been considered the leader in operating system technology and usability. Previous versions of Mac OS X, shown in Figure 2.20, have included impressive improvements in searching for files and folders on your Mac, the Aqua interface that included translucent windows and “gel” buttons that sparked a lot of imitating for a while, and the Dock, which is an area at the bottom of the screen that lets you access files and folders more quickly—a concept similar to Microsoft’s taskbar.

Figure 2.20. The Mac OS X desktop.

image

Leopard is another incremental improvement to the Mac OS that provides more evolutionary search and interface features based on user feedback. However, the Aqua interface is starting to get long in the tooth, and the improvements that Microsoft has made in its interface have put it about on par with the Mac OS. With the Intel transition complete, in 2008, Steve Jobs and company may decide to reveal Mac OS 11 (or XI or X1), which will sport a new interface.

Linux

Linux still has two major competing user interfaces, largely because Linux is an open operating system. Until Linux users settle on one interface, there may not be a concerted push to make Linux more accessible to individual computer users. As of this writing, version 3.5 is the latest version of KDE, as shown in Figure 2.21. A new version of KDE, version 4, is due for release in late 2006 or early 2007, but in terms of user interface design, it’s already behind the curve. A new version of GNOME is also under development. Whether these new versions will bring these GUIs on a par with Windows Vista and the Mac OS remains to be seen.

Figure 2.21. The KDE desktop.

image

Web Design Improvements

Many of the Web design improvements in the decade of the 2000s have happened “under the hood,” specifically with the languages used to produce Web sites. Extensible Markup Language, or XML, is a language that is a cousin of HTML; both are built from the same ancestor: the Standard Generalized Markup Language (SGML). XML is designed to better share information between different systems on the Internet. As a result, HTML code is going away and is being replaced by sites written in a hybrid of HTML and XML, called (of course) XHTML. The difference you’ll see in your browser is faster performance with database-driven Web sites.

Thanks to years of people discussing what’s good and bad about Web sites, Web design has progressed beyond the days where people used dark blue text on a black background and thought it was cool—and expected people to be able to read it, too. However, new Web designers may not be aware of design requirements, and some Web sites serve as instructional aids to show new designers what not to do, as shown in Figure 2.22.

Figure 2.22. A poorly designed Web site.
Figure courtesy of Michelle Blowers, Owner, Gold Nugget Webs (www.goldnuggetwebs.com).

image

Unfortunately, there are still enough limitations in Web design that, if a designer is not aware of them, it could cause serious trouble, as I’ll explain in the next section.

What’s Still Not Fixed

Not all operating systems, and especially all Web browsers, speak the same language—they all like to tweak their programs to add a new feature that no one else has, ostensibly to give their product a competitive edge. However, the tweaking can aggravate users and designers.

For example, each major Web browser can display a Web page slightly different from its competitors. You also have to design a Web site using a few common fonts and a set number of colors, called Web-safe colors. This is because not all Web users have the same fonts installed on their computers or the same number of colors available, so designing a Web site according to what looks best to you may look nothing like what you intended on someone else’s computer.

What’s more, programs running under the same operating system may not use the same conventions, which helps undermine the idea of having similar commands across all programs to make things easier for the user. For example, I like using keystroke combinations (like Shift+F1) instead of picking a menu option with the mouse because it’s faster. However, the keystroke combinations for accessing the spell checker are different for WordPerfect and Word—WordPerfect uses Ctrl+F1 but Word uses F7.

Perhaps the biggest problem with user interface design is that it’s largely static—the standard GUI has been in use for nearly 35 years as of this writing, and although it has been refined over the years, there isn’t a new (and hopefully more effective) way of interacting with a computer. The problem also includes GUI applications, which have been tweaked incrementally over the years, but application interfaces are similar to interfaces from older versions released 10 years ago.

However, Microsoft may have something in the works regarding a new user interface in the next major release of Windows, and there are other interfaces under development that could see the light of day during the second decade of the 21st century.

Future Plans

Whether the changes are just evolutionary or revolutionary, user interfaces will continue to change. This section provides a peak into the near future of what those changes might be like.

Windows Vienna

Vienna is the code name for Version 7 of the Windows operating system. The Vienna name replaced the new version’s original name, Blackcomb. Many of the features that were promised in Windows Vista have been scheduled for individual release—perhaps as Vista service packs—between now and Vienna’s release, and others have been moved back to Vienna.

One of those changes is a complete revamping of the user interface based on Microsoft research during the past decade or so. Microsoft is good at revealing hints that may or may not be included with the next version of Windows. What’s more, Microsoft has a track record of announcing new features that get pushed back due to time constraints or technological issues, so it’s always best to take what Microsoft says with a grain of salt.

Mac OS

In 2006, Apple’s focus was more on hardware than software. It decided to migrate all its Macintosh computers from running on the PowerPC chips to running on Intel chips. This change is designed to provide Apple with more powerful portable and desktop computers.

Apple released the latest version of Mac OS X, called Leopard, in early 2007, but more significant changes may be in store now that the Intel transition is complete. Whatever Steve Jobs has up his sleeve for the next version of Mac OS, he’s not letting on.

Web Browsers and Their Impact on Design

Web browsers have forced operating systems to adopt new functionality to deal with Internet issues such as blocking pop-up ads. User interface design has also integrated the use of online help directly from Web sources, which requires a presentation of that data that is easy to find and understand. And there is the issue of accessibility for all users, which was discussed in Chapter 1.

As the line between the computer desktop and the Web browser blurs with the capability for users to have always-on Internet broadband connections (such as cable and DSL), Web formatting and design restrictions are beginning to affect user interface design. Web technologies such as Flash, the de facto standard for creating animated objects on the Web as well as creating animated Web sites, have made Web sites more interactive than ever.

For example, the Rich Internet Application System (RIAS) uses Flash to create a Web interface that looks more like an interface on the user’s desktop. This RIAS interface is a graphical shell that appears over the HTML pages, much as the Windows interface was a shell over the DOS CLI from the first version of Windows through the release of Windows Millennium Edition in 2000. Another example is that Windows Vista lets you search the Internet from the desktop.

A Web development area of great interest is the Web-based application, where users will be able to use applications such as word processors and spreadsheets directly from a Web site and won’t have to install software on their computer. Application service providers (ASPs) are already in operation and make applications available on the Web.

Application subscriptions and rentals have the attention of larger companies such as Google, which announced the Google Spreadsheet in 2006. The Google Spreadsheet allows users to share spreadsheet data through the Web with other users, thus bypassing the need to use existing programs. In addition to the advent of open-source software, this development is a tremendous challenge for companies like Microsoft that have used the proprietary model of software design and sales, especially because these software sales provide dependable revenue for the companies that produce that software.

Up-and-Coming Interfaces

Several new and interesting interfaces are currently being designed and researched. One or more of these interfaces could make their way into our lives at some point in the future.

  • Attentive interfaces manage the users’ attention by guiding them through a process and warning them about any potential problems, such as the lack of required input from the user that will prevent the application from completing the desired task. The interface is designed to understand what the user is doing so that the interface can react accordingly. For example, the interface will watch for any change in visual attention or if the user has turned to give attention to something else.
  • Gesture interfaces rely on hand gestures for input. If you watched the movie Minority Report, you saw that the computers of 2054 used gesture interfaces as users would move their hands and arms to manipulate objects on the computer.
  • Reflexive interfaces allow users to define and control the entire system through the user interface, such as changing the command verbiage to suit their needs and expectations.
  • Tangible interfaces give physical form to tangible pieces of information. For example, the Marble Answering Machine by Durrell Bishop (Wikipedia, 2006) has a marble that represents a message on the answering machine. When you drop the marble into a dish, the answering machine plays back the message. The movie Minority Report used a similar feature, where the predicted outcome of murder events was not reported on a computer screen, but in the form of a marble that had the information etched on it.
  • Zooming interfaces is an evolutionary outgrowth of the GUI. Therefore, zooming interfaces sport the acronym ZUI, for zooming user interface. A ZUI represents objects in different levels of scale and detail. As you pan across an infinite desktop that consists of various objects in various levels of detail, you can select an object to enlarge it to view or work on it, and then you can shrink it again when you’re finished. ZUIs don’t use windows; instead, they use vector graphics to represent objects. One example of a ZUI is MSN.com Maps, in which you enter an address, MSN.com shows you the map, and then lets you zoom in and out as you see fit. See Figure 2.23.

Figure 2.23. MSN.com Maps, a zooming user interface example.

image

  • The Archy interface is a new interface proposed by the late Jef Raskin, a human-computer interface expert who started the Macintosh project at Apple in the 1970s. Raskin left Apple in 1982 and started his own company, where he eventually developed a product that integrated an early version of the Archy interface in 1987. That product was the Canon Cat.
    This interface is text based and doesn’t use GUI features. Instead, the Archy interface uses leaping, which lets you move on the screen via an incremental text search. You can also insert and execute commands at any point in the interface; all you have to do is hold down the command key (which is the Caps Lock key) and type the command. Archy also fills in the command name automatically.
    The Archy interface also uses a ZUI called Zoomworld that you can interface with using a mouse. Hyperlinks are embedded in each icon, and as you move the zoom area closer to the object, the object gets bigger so you can examine more of the information and decide if you want to expand the object.
  • The brain-computer interface is perhaps the most direct interface of all. People will not have microprocessor chips installed in their heads anytime soon, but rudimentary brain-computer interfaces have been developed that allow humans and monkeys to control a cursor on a screen. Related interfaces have shown promise in using implants that are controlled by the brain to overcome noncongenital deafness and blindness.

Usability Terms

Chauncy Wilson, a senior member of the Society for Technical Communication (STC), notes that the word usability can be traced back to 1382 according to the Oxford English Dictionary online (www.oed.com), and that the first reference to usability can be traced back to 1842. (Wilson, Chauncey. “Usability and User Experience Design: The Next Decade.” Intercom (January 2005): 6[nd]9.) Today, the Merriam-Webster Online dictionary (www.m-w.com) has two rather terse definitions for usability:

  1. Capable of being used.
  2. Convenient and practicable for use.

These definitions do little to explain what usability is. Dumas and Redish (1999) provide a straightforward definition of what usability is: “The people who use the product can do so quickly and easily to accomplish their own tasks.” Dumas and Redish base this definition of usability on four points:

  1. Usability requires focus on the users.
  2. People use products to be productive.
  3. Users are busy people trying to accomplish tasks.
  4. Users decide when a product is easy to use.

As personal computing technology became widely available, companies placed a greater emphasis on improving users’ experiences with computers as more people who used hardware and software products were increasingly lay people using computers at home and in the office instead of computing professionals.

This shift in priorities gave rise to several different buzzwords related to usability, including usability engineering, user-centered design, and user experience engineering.

The increased focus on usability studies over the past 25 years or so has categorized those who engage in usability studies into three categories.

Usability Engineers

A usability engineer is someone who provides usability services. Usability services are any activities that improve the user experience of anything a person uses to accomplish a task. This can include the design of a software application, the creation of a user guide, the creation of training services, and the creation of a Web site.

Usability Scientists

A usability scientist is someone who has formal training in usability research and development disciplines. These disciplines include usability science, usability engineering, human factors engineering, and ergonomics. Usability scientists usually hold advanced degrees in one of the cognitive science fields.

User Experience Professionals

A user experience professional is someone who can fit into one of the other two categories, or it can be someone in a company, office, or department that isn’t a formal usability engineer or works in a usability engineering department, but someone who does provide usability services.

For example, most technical writers are passionate about making printed or online documentation as easy to read and use as possible. What’s more, technical writers have had to expand their repertoire to include some programming, Web design, and even software and hardware design.

As a result, more technical communicators are becoming usability engineers or are simply expanding their repertoire even more by learning about usability testing and techniques and offering these services to their internal and external customers.

Types of Usability Design

There are three major types of usability design:

  • Documentation design, which is the design of paper and online documentation that serves as a reference for users. Technical writers lead the charge to produce documentation design and employ usability techniques, including user and task analysis, which I’ll discuss later in this chapter.
  • Interface design, which is the process of designing a software or hardware interface that users find attractive and easy to use. GUI design requirements have taken some issues of software design off the table, but GUIs do not automatically result in good software interface design.
  • Web design, which is the process of designing Web sites, which are a number of connected pages to present information to the reader.

User Analysis Terms

As the study of usability and user analysis has matured, processes for user design and usability testing have emerged. The leading process for user design is the Goal-Directed Design Process. Usability testing falls into three categories: quick and dirty, formative, and summative.

The Goal-Directed Design Process

Cooper and Reimann (2003) produced the Goal-Directed Design Process for software engineering and user design. The Goal-Directed Design Process was designed to keep everyone in the loop, keep guesswork out of the design process, and provide a clear rationale for decisions. If you’re on a product project team, it may adhere to this process. You’ll learn more about the Goal-Directed Design Process and applying it to your interface design in Chapter 5, “How Users Behave.”

Testing Methods

When you want to test the usability of something against the user’s goals, testing falls into three different categories.

  • Quick and dirty—This type of usability testing is usually performed after the product has been produced. These tests can be in the form of print or online questionnaires or direct feedback from the users through customer support calls or e-mail messages. If the users don’t like the products, you’ll know from angry customers’ phone calls or low product sales.
  • Formative—This type of usability testing occurs during the development of a product (Bias et al., 2005). You’ve likely heard the term beta testers to refer to those people who test the usability and functionality of software. These testers provide direct feedback about the good and bad of the product. Users generally don’t see printed documentation until the product is released, so any formative testing of printed documentation is usually limited to internal users. However, beta testers can test online help within software to make sure the help is usable and accessible.
  • Summative—Summative testing takes place when a product has reached a certain stage of development defined by the project team and the testers want to find out how much progress has been made in the product’s development (Bias et al., 2005). This type of testing uses metrics to evaluate the efficiency, effectiveness, and satisfaction of the product being tested. The draft of printed or online user documentation, if any exists, is usually available during this stage so that beta testers can provide feedback about the usefulness of the documentation.

Ideally, you should conduct user and task analysis to gain understanding about your users. User and task analysis is the process of learning about ordinary users by observing them in action (Hackos and Redish, 1998). Chapter 3, “Making the Business Case,” covers the user’s goals, and Chapter 5 discusses user and task analysis in greater detail.

User Analysis Trends

Wilson (2005) identified six trends for usability that people should pay particular attention to in the months and years ahead.

  • The focus of product design and evaluation will be the total user experience. This chapter has already discussed the total user experience in some detail, and you’ll learn more about it in Chapter 6, “Analyzing Your Users.”
  • Employers will ask usability practitioners to provide more evidence of their impact on the company’s return on investment (ROI). You’ll learn more about ROI and how to calculate it for your management team in Chapter 3.
  • Social psychology is becoming more important in the design of new collaboration and e-commerce technologies. Chapter 6 will discuss the psychology of everyday things and how it affects users.
  • Business skills and savvy will become important criteria in hiring usability and user experience practitioners. Chapter 3 goes into this concept in greater detail.
  • Facilitation skills will become as important as design and evaluation skills. You’ll learn more about facilitation skills starting with Chapter 9, “Usability,” where you’ll learn how to plan your usability test.
  • The validity and reliability of cherished usability methods will be examined. There aren’t many standards currently for procedures, data analysis, or reporting, so much of usability testing and research is still in its formative stages.

Accessibility Issues

Another user interface and analysis trend not on this list, but one you should be aware of, is the need to design user interfaces to meet the needs of users with special accessibility issues due to disability or age-related impairments. The following disabilities can affect computer users:

  • Complete or partial blindness
  • Color blindness
  • Deafness or difficulty hearing
  • Cognitive disabilities, such as autism and dyslexia
  • Motor and dexterity limitations, including paralysis and carpal tunnel syndrome

Operating system manufacturers have incorporated numerous accessibility features into their operating systems. Some of these features work in concert with assistive technologies, which are hardware devices designed to meet the needs of disabled users. These technologies include alternative keyboards and pointing devices, wands and sticks, sip-and-puff systems, and touch screens.

If you’re developing software or a Web site, you need to be aware of Section 508 issues that the U.S. government mandates as well as Web site accessibility guidelines published by the World Wide Web Consortium (commonly referred to as W3C). Other countries, including Australia and the United Kingdom, also have disability antidiscrimination legislation that affects user interface accessibility.

Section 508 Accessibility

Section 508 is the section that in 1998 amended the Rehabilitation Act of 1973. If you’re going to develop a user interface for a government agency, Section 508 requires you to develop interfaces that are accessible to federal employees who have disabilities. Section 508 is separate from the Americans with Disabilities Act, which was passed in 1990.

For software and hardware product developers, as well as Web designers, you need to be aware of the following features to include in your product:

  • Software programs—Programs must include usability features for the visually impaired, including the use of alternate keyboard navigation, as well as the ability to interact with speech recognition products.
  • Telecommunications products—Include accessibility for people who are deaf or hard of hearing, such as integration with TTY devices.
  • Videos or multimedia products—Captioning of multimedia products that appear in software or on a Web site, and the capability to turn captioning on or off.
  • Kiosks and other closed products—These systems must include accessibility features, such as the capability to activate a speaker system so that information can be dictated aloud.
  • Web sites and applications—Use text labels that describe graphics on the screen through the use of ALT tags, which are small pieces of text attached to the graphic that tell the user what the graphic is about. When you move the mouse pointer over the graphic, the ALT tag box appears and displays the graphic description next to the pointer.

The U.S. government lists 16 different guidelines that a Web site must meet before the site complies with Section 508 requirements. Those guidelines are available on the Section 508 Web site at www.section508.gov.

Web Site Accessibility

In 1999, the W3C passed the first version of its Web Content Accessibility Guidelines that provided recommendations for creating accessible Web sites. These guidelines include the following:

  • Provide equivalent alternatives to auditory and visual content.
  • Don’t rely on color alone. In other words, make sure that text and graphics are understandable if you don’t use color.
  • Use markup and style sheets, and do so properly.
  • Clarify natural language usage.
  • Create tables that transform gracefully. In other words, make sure that tables use the proper HTML commands that identify the table components as a table to browsers that access pages through a Braille display or dictate pages through speech output.
  • Ensure that pages featuring new technologies transform gracefully, meaning that pages should be accessible even when newer technologies such as scripts are not supported or turned off.
  • Ensure user control of time-sensitive content changes.
  • Ensure direct accessibility of embedded user interfaces.
  • Design for device-independence.
  • Use interim solutions so that older browsers display your Web site correctly.
  • Use W3C technologies and guidelines.
  • Provide context and orientation information.
  • Provide clear navigation mechanisms.
  • Ensure that documents are clear and simple.

You can review the Version 1.0 guidelines in their entirety at www.w3.org/TR/WAI-WEBCONTENT.

In May 2006, the W3C published the working draft of version 2.0 of the Web Content Accessibility Guidelines. Instead of using specific guidelines as with version 1.0, version 2.0 offers four guiding principles:

  1. Content must be perceivable. For example, the foreground must be distinguishable from the background.
  2. Interface components in the content must be operable. For example, help users avoid mistakes and easily overcome any mistakes that occur.
  3. Content and controls must be understandable, meaning that text must be understandable and placement of text must be consistent.
  4. Content should be robust enough to work with current and future user agents, including assistive technologies. You must ensure that content is accessible or provide an accessible alternative.

The version 2.0 working draft has been criticized for being too vague, and perhaps taking a step backward in terms of Web accessibility. You can view the entire working draft at www.w3.org/TR/WCAG20/.

Operating System Accessibility

Currently, all four major operating systems—Windows, Mac OS, Linux/KDE, and Linux/GNOME—have accessibility features built in. You can activate accessibility features in the “control panel” area of the GUI that lets you manipulate operating system features. These features can include the following:

  • Changing the font size, color, and size of objects on the desktop, such as increasing the size of icons and changing to high-contrast color schemes
  • Enlarging a portion of the screen for greater visibility through a magnifier
  • Enlarging the cursor and changing the cursor blink rate
  • Enlarging the screen by changing the screen resolution
  • Displaying captions for speech and sounds
  • Displaying warnings for system sounds that the user should know about
  • Setting window command options to have the computer read text aloud through the computer’s speakers
  • Changing the size and speed of the mouse pointer
  • Highlighting or dragging the mouse pointer without holding down the mouse button
  • Allowing users to press one key at a time for key combinations
  • Moving the mouse pointer with the numerical keypad on the keyboard
  • Hearing tones when you press certain keys

This is only a short list of available accessibility options; it is not exhaustive. What is more, some of these features may not be available in all operating systems. However, this list should give you a good idea of the accessibility features available in the operating system for which you design your software. Make a note of this for your customers. Check the information about accessibility on the operating system manufacturer Web site; all four operating systems contain information about their accessibility features, such as the Ease of Access window in Windows Vista, as shown in Figure 2.24.

Figure 2.24. The Ease of Access window in Windows Vista.

image

Summary

The chapter began with a discussion of basic computer terminology and concepts. This was followed by the three types of interface models: batch interfaces, the command-line interface (CLI), and the graphical user interface (GUI). You learned the differences in these three interface models, and various types of hardware user interface models that work in concert with software interfaces to control access to a computer.

Design improvements and aggravations were covered next. You learned about design improvements in the latest operating systems released in 2006, the Web technologies behind the scenes and the design techniques for Web pages, and some of the issues that still need to be addressed, including the fact that the current desktop GUI is getting stale.

A discussion of future user interface plans for the three major operating systems—Windows, Mac OS, and Linux—followed. Of the three major operating systems, Microsoft’s plans for the next major release of Windows are the most concrete at this point, and its plans include a major change in how we interact with our computers. You also learned about up-and-coming interfaces that could change the way we interact with computers in the future, from attentive interfaces to brain-computer interfaces.

Usability terms were covered next. You learned what the definition of usability is and what usability is designed to do from the 1999 definition by Dumas and Redish: “The people who use the product can do so quickly and easily to accomplish their own tasks.” You also read about the three types of usability design: documentation design, interface design, and Web design.

Next was a discussion of usability analysis terms. You learned about the goal-directed process and how to use the process to ask a number of important questions about your users. Then you learned about the different types of testing methods available, and why you should conduct user and task analysis.

The chapter continued with trends in usability design so that you know what’s required of usability analysis today. The primary trend is the focus on total user experience in product design and evaluation. Social and business skills are other trends in usability design. You also learned about the shortcomings of usability analysis and where you can find more information about usability analysis in this book.

The chapter ended with a discussion about accessibility and how it affects user interface design. You should always incorporate accessibility features into your software or hardware product, as well as your Web site, to meet the needs of your customers. You also learned about how operating systems have integrated accessibility features so that users with disabilities can access software programs and Web sites.

Review Questions

Now it’s time to review what you’ve learned in this chapter before you move on to Chapter 3. Ask yourself the following questions, and refer to Appendix A to double-check your answers.

1. What is the definition of a graphical user interface (GUI)?

2. What are the three major GUI operating systems in use today?

3. What are the main parts of a GUI?

4. What is the Internet?

5. What is the World Wide Web?

6. What are the three user interface model eras?

7. Why is Web design still a significant challenge?

8. Why does Web design have an impact on user interface design?

9. What is a ZUI?

10. How do Dumas and Redish define usability?

11. What are the three types of usability titles or occupations discussed in this chapter?

12. When do you employ quick and dirty testing?

13. When do you employ summative testing?

14. Why is the validity and reliability of user interface methods being examined?

15. Why is accessibility important?

16. What legislation establishes statutory accessibility requirements in the United States.?

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset