throbber
Exhibit 1015 – Part 5
`
`Exhibit 1015 — Part 5
`
`

`
`Ch. 5 Direct Manipulation
`
`205
`
`2'-"'§-if3l‘§E H§.53'lEEE SEED F-ELE
`
`gssa 234?
`
`‘Fl- E: ?=--
`,
`_._J-...
`'H~E =6: 3nL& as %HE case 92:;
`HE BUTTON TD SELECT A cannnan
`
`5:4!“

`
`Figure 5.12: This electronic Rolodex or phone number card file gives users rapid
`control over
`the card motion by a
`forward or backward joystick press.
`Commands are displayed by moving the joystick left or right. The lively motion
`of the cards appeals to many users.
`
`the user need only move the
`movement reverses. To change an entry,
`cursor over the field to be updated and type the correction. To delete an
`entry, the user just blanks out the fields. Blank cards might be left at the
`top of the file, but when the fields are filled in, proper alphabetic
`placement is provided. To find all entries with a specific zip code,
`the
`user types the zip code in the proper field and enters a question mark.
`
`Checkbook maintenance and searching might be done in a similar
`fashion. Display a checkbook register with labeled columns for check
`number, date, payee, and amount. The joystick might be used to scan
`earlier entries, changes could be made in place, new entries would be
`made at the first blank line, and a check mark could be made to indicate
`verification against a monthly report or bank statement. Searches for a
`
`

`
`206
`
`Designing the User Interface
`
`particular payee could be made by filling in a blank payee field and then
`typing a question mark.
`Bibliographic searching has more elaborate requirements, but a basic
`system could be built by first showing the user a wall of labeled catalog
`index drawers. A cursor in the shape of a human hand might be moved
`over to the section labeled “Author “Index” and to the drawer labeled
`“F-L.” Depressing the button on the joystick or mouse would cause the
`drawer to open, revealing an array of index cards with tabs offering a
`finer index. By moving the cursor-finger and depressing the selection
`button, the actual index cards could be made to appear. Depressing the
`button while holding a card would cause a copy of the card to be made in
`the user’s notebook, also represented on the screen. Entries in the
`notebook might be edited to create a printed bibliography or combined
`with other entries to perform set
`intersections or unions. Copies of
`entries could be stored on user files or transmitted to colleagues by
`electronic mail.
`It
`is easy to visualize many alternate approaches, so
`careful design and experimental testing would be necessary to sort out the
`successful comprehensible approaches from the idiosyncratic ones.
`Why not do airline reservations by showing the user a map and
`prompting for cursor motion to the departing and arriving cities? Then,
`use a calendar to select the date and a clock to indicate the ‘me. Seat
`selection is done by showing the seating plan of the plane on t e screen,
`with a diagonal line to indicate an already reserved seat.
`Why not do inventory by showing the aisles of the warehouse with the
`appropriate number of boxes on each shelf? McDonald (1983) deals with
`medical supply inventory with a visual warehouse display by combining
`videodisc and computer graphics technology.
`‘
`Why not
`teach students about polynomial equations by letting them
`bend the curves and watch how the coefficients change or where the
`X-axis
`intercept
`occurs
`or
`how the
`derivative
`equation
`reacts
`(Shneiderman, 1974)?
`
`These ideas are sketches for real systems. Competent designers and
`implementers must complete the sketches and fill in the details. Direct
`manipulation has the power to attract users because it is comprehensible,
`natural, rapid, and even enjoyable.
`If actions are simple, reversibility
`
`

`
`Ch.5 DkectManmumfion
`
`207
`
`ensured, and retention easy,
`in.
`
`then anxiety recedes and satisfaction flows
`
`5.5 DIRECT MANIPULATION DISK OPERATING
`SYSTEM (DMDOS)
`
`This section gives a detailed description of one design project whose
`goal was to develop a direct manipulation user interface for a widely used
`command language. The difficulty of designing a direct manipulation
`system ‘was explored in a visual ‘design for
`the commands
`in the
`Microsoft ‘Disk Operating System (MS-DOS) for IBM and compatible
`computers (detailed design and implemention by Osamu Iseki). The
`motivations were to avoid the:
`
`1.
`
`difficult-to-remember,
`E1ror—prone,
`commands, such as;
`
`and
`
`difficult—to-type
`
`dir/w c;leve12
`copy a;fi1el.pas b:filel.bak
`
`erase c:level2 filel
`
`Need for many commands, such as: VERsi_on, VOLume
`DATE,
`TIME,
`CD, MKDIR,
`RMDIR,
`Cl-l‘DI.R,
`TYPE, PRINT, DELETE, and RENAME.
`Frustration of watching the directory listings scroll off of
`the screen too quiclgly.
`and destination
`source
`seeing the
`Uncertainty of not
`directories while copying, comparing, or "deleting files.
`After issuing a file command, many users issue a directory
`display command to verify that the command was carried
`out correctly.
`
`Need to type file and directory names, except when they are
`created. Once created,
`tile" and directory names can be
`selected from the display, When the number of files is in
`
`

`
`208
`
`Designing the User Interface
`
`to type the file
`it may be more convenient
`the hundreds,
`name, but with only tens of files, selection by pointing is
`often more rapid and accurate.
`
`5.5.1 Design goals
`
`In a positive way, we sought to provide a world in which the:
`
`Task—_re]ated objects
`were always visible.
`
`(files) and the actions
`
`(commands)
`
`Users could select objects and actions by pointing instead of
`typing.
`Results of actions were immediately visible.
`
`We hoped that such a design would be easy to learn and retain, rapid
`in performing tasks,
`low in errors, and high in user satisfaction. After
`many revisions and tests with hundreds of knowledgeable observers and
`novices, the screen layout was determined (Figure 5.13).
`
`5.5.2 Screen organization
`
`The largest parts of the screen are the right and the left drive
`information areas. Each area has the:
`
`Drive name (A, B, or C).
`
`Volume name of the disk.
`
`the toggle switch for changing the
`[SUB—DIR/FILE],
`listing from/to file names or subdirectory names.
`
`the sort condition
`switch that allows users to set
`[SORT]
`of the file listing to son by file name, extension, size, or
`date.
`
`toggle switch for changing the format of
`[WIDE/FULL],
`the file listing from a single to a double column listing.
`
`

`
`Ch. 5 Direct Manipulation
`
`209
`
`Directory Display Controls
`
`DOS 2.10
`
`06-05-1985
`
`l2:l5.30
`
`DK|VtA
`
`volumename
`
`worlcdisl:
`
`sue-om soar
`
`FULL
`
`1> DMDOSSUB EAT
`2) DMDOS
`BAT
`3) DM_DOS
`BAN
`4> DM_DOS
`PRM
`5> DM‘_DOS
`TEL
`5> DM_DOS MSG
`7> DM_DOS COM
`B) DM_DOS 000
`9> DMINTR
`TXT
`10> DMHELP
`TXT
`
`T
`
`52
`99
`975
`1620
`5504
`15542
`65024
`422110
`7552
`13696
`
`05-21-85
`0521-85
`05-1|-85
`05-21-85
`05-21-55
`05-21-35
`05»2l—85
`05-21-85
`0511-85
`05-Z‘|-B5-
`
`-
`
`JUDD
`PRINT
`ASSIGN
`GRAPHICS
`EXEZBIN
`DEBUG
`PROGFILT
`BUF128
`DEASE
`I23
`
`TEXTFILT
`RECOVER
`TREE
`FIND
`LINK
`BACK
`EASICA
`lC
`‘l23TUTO
`FDISK
`
`I
`11 File(s)
`
`I
`162516
`
`-more
`free
`
`bytes
`
`]
`80895
`
`-more
`free
`
`bytes
`
`ll ll
`
`-l-l-l-lll
`
`PromptandError
`
`e5sageArea
`
`_
`
`Commands
`requiring
`2 arguments
`
`Commands
`requiring
`I argument
`
`Personal
`commands
`
`Special
`Commands
`
`Figure 5.13: DMDOS (Iseki & Shneiderman, 1986) performs MS-DOS functions
`by arrow key or mouse movements instead of typing commands. The display
`shows the source and destination directory displays that are scrollable under user
`control.
`
`Current directory name.
`
`in the
`The listing of file names or subdirectory names
`current directory. Each listing has a maximum of twenty
`file names or ten subdirectory names.
`
`Icons for scrolling ‘up and down the listing. The short
`arrows serve for one-line scrolling and the long arrows for
`five—line.
`
`

`
`Designing the User Interface
`
`These two large areas are independent from each other.
`Below these drive information areas are command areas
`
`that are
`
`categorized into four groups:
`
`1. Commands requiring two arguments: COPY, COMPaI‘e,
`EXECute.
`
`argument: ERASE,
`requiring one
`Commands
`PRINT, KEY-IN, and FORMAT.
`
`VIEW,
`
`Definable personal commands (space is provided for only
`five).
`
`Special commands: MACRO, HELP, and EXIT.
`
`The screen format contains most
`
`items users need, and it remains
`
`visible unless a program file is executed or the contents of a file are seen
`by using the [VIEW] command. Therefore, users may have less anxiety
`about the correct execution of a command than working in a line—by—line
`mode.
`
`5.5.3 Functions
`
`DMDOS functions are categorized into seven groups:
`
`the
`example,
`For
`executed.
`automatically
`Functions
`directory listing is always displayed on the screen. This
`eliminates the need for the DIR command.
`
`Functions executed by single object or switch selection.
`Selecting an object causes some functions.
`
`selected object.
`Functions executed by overtyping the
`These are mainly for renaming files and changing the date
`or time.
`
`Functions executed by commands with one argument.
`These commands need only a source object.
`
`Functions executed by commands with two arguments.
`These commands need source and destination objects.
`
`

`
`Ch. 5 Direct Manipulation
`
`211
`
`These
`commands.
`personal
`by
`executed
`Functions
`commands can be defined by the user and include a
`sequence of operations.
`
`7.
`
`Functions executed by special commands.
`
`Table 5.1 shows functions in each category. These are described with
`the equivalent MS~DOS commands for comparison. Since we tried to
`
`DMDOS
`command category
`
`PC—DOS internal
`commands
`
`PC—DOS external
`commands
`
`SORT(onIy for filename)
`
`Automatically Executed
`or
`Executed by Single
`Selection
`
`DIR
`DATE(display)
`TIME (display)
`VERsion
`VOLume name
`(CHDIR)
`
`Executed by Overtyplng RENAME
`the Object
`MKDIR
`CHDIR
`DATE(Set)
`TIME (set)
`
`[ERASE]
`[ERASE]
`[VIEW]
`
`FORMAT
`PRINT
`
`[FORMAT]
`[PRINT]
`
`[COMP]
`COMP
`DISKCOMP [COMP]
`DISKCOPY [COPY]
`
`I-object Command
`
`2~object Command
`
`Addltiona|Command
`
`not necessary in DMDOS
`
`[EXEC]
`[KEY—IN]
`[HELP]
`[MACRO]
`
`not implemented in
`DMDOS
`
`(Batch command),
`BREAK, PATH , VERIFY
`
`ASSIGN, BACKUP,
`CI-IKDISK,
`GRAPHICS, MODE,
`RECOVER,
`RESTORE, SYS
`
`Table 5.1: A comparison of DMDOS (Iseki & Shneiderman, 1986) and MS-DOS
`Commands showing how selection of visible objects and actions replaces typed
`commands.
`
`

`
`212
`
`Designing the User Interface
`
`to reduce the number of commands to the minimum, some MS-DOS
`functions used infrequently have not been implemented. The most
`' important commands not
`implemented are batch processing commands
`that allow users to make their own command sequences in an executable
`batch file. However, DMDOS has_ a special command [MACRO]
`to
`make user-definable commands (see Section 5.5.5).
`
`5.5.4 Operational principles
`
`Operation in DMDOS is mainly based on movement of the cursor and
`selection of an objector a command of interest. Cursor movement and
`selection can be done by using either keyboard or mouse.
`
`Using a keyboard. Users can use four arrow keys to move the cursor.
`The cursor is moved from item to item instead of from character to
`character except if it is in a selected object. Selection is done by placing
`the cursor in the object of interest and pressing the RETURN key.
`
`Using a mouse. The cursor moves character by character according to
`the mouse movement. Selection is made by pressing one mouse button.
`The keyboard can also be used at the same time.
`
`The mouse is a more ‘direct’ tool to locate the cursor on the item of
`interest quickly. However, two sets of‘ special keys may help users move
`the cursor effectively by the keyboard. First, four corner keys adjacent to
`four arrow keys allow users to make a shortcut by jumping the cursor to
`the four comers of the screen. Second,
`the ten function keys (F1-F10)
`are dedicated to moving the cursor onto the drive field or scrolling icons
`of each drive and making a selection. Figure 5.14 shows the keys used
`for cursor movement.
`
`The item visited by the cursor is reverse—displayed partly or fully.
`Once the item is selected, it remains highlighted until it is unselected or a
`function is executed.
`'
`
`As a special case of selection, multiselection of file names is permitted.
`The operation of multiselection is to hold down the CTRL key while
`pressing the RETURN key when selecting some file names. The
`
`

`
`Ch. 5 Direct Manipulation
`
`O1~I]1-1980
`
`K31:
`
`Help window
`’I(l'.-‘yeneral
`In<Formaticr\>Z>
`ililureclr Control Key
`
`Move Cursor Up
`.
`
`Hove Bursar to
`
`Move Cursor to
`[WIDE] Field
`Left Drive Narue--- m F'gUp ~~- Right
`Hove Cursor Left~Ae
`(NA) -—-Mnve Cursor Right
`[EXIT] Command
`[GDMPJ Cnmmand
`Move Cursor to ——- End
`v
`-—-Move Cursor to
`.
`Hove Cursor Down
`(NA:NcIt Assigned)
`
`xselecticm
`(1) Move cursor into desired object or command.
`(2) Press (Return?) key or right button nf MOUSE.
`
`1 Return to DMDOS
`
`it Next Page
`
`Figure 5.14: This help screen from DMDOS shows cursor key movement
`possibilities.
`
`maximum number of multiselection files is ten. This function may be
`used for copying several files to another drive or erasing several files at
`one time.
`In MS-DOS, it is necessary to use such wild—card characters as
`“*” and “T” to indicate the multiple files. Though this mechanism is also
`allowed in DMDOS, multiselection is sometimes an easier way to
`
`indicate a set of files.
`The general principle of operation is to select an object first, called the
`source object. After that, overtyping or selecting a command is effective.
`Three typical operational sequences are:
`
`Overtyping
`
`a.
`
`Select an object of interest
`
`b. Overtype the new name
`
`Select the object again to install the new name
`c.
`2. Command with one argument
`
`a.
`b.
`
`Select an object of interest
`Select a command
`
`

`
`214
`
`Designing the User Interface
`
`c. Users might be prompted by some messages.
`Answer these prompts, if any.
`Then the command will be executed.
`
`3. Command with two arguments
`
`Select a source object
`Select a command
`
`Select a destination object
`
`Users might be prompted by some messages.
`Answer these prompts, if any.
`Then the command function will be executed.
`
`This object—first strategy is different from the order of MS-DOS’s
`command syntax. After executing a command function,
`the most
`recently selected object
`is still selected. Therefore,
`if usersneed to
`execute any other command on this object, they can simply select a new
`command just after the execution of the previous command.
`
`5.5.5 Programming with the macro command
`
`One major objective of DMDOS development was to try to implement
`a programming capability based on direct manipulation. This macro
`definition function corresponds to the batch command in MS—DOS. A
`command defined by this function is called a personal command and can
`be regarded as a small program. To maintain consistency, a personal
`command can be programmed by showing an example of a sequence of
`ordinary operations. Users can enter the macrodefining stage by selecting
`the MACRO special command. A sequence of selections will be
`recorded as a replayable operational sequence during this stage.
`
`Each personal command can have one or two arguments like other
`commands for source and destination objects. By modifying the example
`of the operational sequence, these arguments can be implemented in the
`personal command.
`
`

`
`Ch. 5 Direct Manipulation
`
`215
`
`For example, making a personal command called “MOVE,” whose
`function is to move a file (source argument) from one drive to another
`(destination argument), requires these steps:
`
`1.
`
`2.
`
`3.
`
`Select [MACRO] special command.
`
`Select [De fine. .
`
`.
`
`] macro subcommand.
`
`the name of MOVE and press RETURN.
`Type
`macrodefining stage begins.
`
`The
`
`Show an operational example.
`Select a file named FILEl.
`
`Select [COPY] command.
`Select a drive name B: .
`
`Select F‘ILEl again.
`
`Select [ERASE] command.
`
`.
`
`Select [Yes] for confirmation.
`
`Select [Macro] command again to indicate the end of the
`macrodefining
`stage.
`Then
`the
`recorded
`operational
`sequence and edit-parameter will be displayed.
`
`the first
`for
`[Source Argument] parameter
`Select
`object F'ILEl. Then the F‘ILEl selected at 4.d will also
`be changed to the source argument automatically.
`
`Select [Destination Argument] parameter for the
`second object B: .
`
`Select [Return to DMDOS]
`modification.
`
`to indicate the end of the
`
`This MOVE command will copy a source file to the destination drive
`and erase the source file.
`
`5.6 CONCLUSION
`
`in
`Novice and knowledgeable users have expressed a strong interest
`DMDOS, but field trials with real users are just beginning. There are
`
`

`
`Desugning the Jser Interface
`
`some performance problems that may limit use of the current version.
`DMDOS takes almost 20 seconds to load on a standard PC, requires use
`of one of the floppy disk drives, and consumes more than 52,000 bytes.
`These problems are reduced when a hard drive is available.
`Since
`DMDOS invokes MS-DOS functions, hardware failures produce error
`messages that sometimes destroy the DMDOS screen.
`On the user interface side, there is some annoyance in having to do so
`much arrow key pressing, and therefore some further shortcuts should be
`explored.
`The mouse version reduces
`this problem.
`Single—letter
`alternates for some commands might further speed the work of some
`frequent users. The KEY-IN feature that uses the MS-DOS console input
`mechanism might be replaced by a small text editor.
`
`they would prefer to type
`Knowledgeable users often remark that
`commands and believe that they can work more rapidly by just typing the
`commands. A field trial over
`several weeks would be helpful
`in
`ascertaining actual performance.
`
`We feel that we succeeded in our goal to create a direct manipulation
`interface for MS-DOS commands. Whether these ideas can become
`successfully integrated into commercial software remains to be seen. The
`6,000 lines of Turbo Pascal were written in a seven-month period by one
`person (Osamu Iseki). Re—implementation should be easier and would
`permit inclusion of additional features.
`Several competing software products accomplish some of the goals of
`DMDOS.
`File Command from IBM reduces the memorization and
`keystroking burden by showing commands on the screen and allowing
`users to press function keys to produce commands. The 1DIR package
`from Bourbaki provides some features of DMDOS but shows only one
`directory at a time. The Apple Macintosh desktop and the GEM Desktop
`for IBM PCs offer visual representations of directories and convenient
`icon movement or copying.
`
`5.7 DIRECT MANIPULATION PROGRAMMING
`
`It should
`Performing tasks by direct manipulation is not the only goal.
`be possible to do programming by direct manipulation as well, for at least
`
`

`
`Ch. 5 Direct Manipulation
`
`217
`
`some problems. The MACRO command of DMDOS supports a limited
`form of programming, but more complex forms of programming seem
`possible with direct manipulation ideas.
`
`Robot programming is sometimes done by moving the robot arm
`through a sequence of steps that are later replayed, possibly at higher
`speed. This example seems to be a good candidate for generalization.
`How about moving a drill press or a surgical
`tool
`through a complex
`series
`of motions
`that
`are
`then
`repeated
`exactly‘? How about
`programming a car by driving it once through a maze and then having the
`car repeat the path? In fact, these direct manipulation programming ideas
`are implemented in modest ways with automobile radios that are preset
`by turning the frequency control knob and then pulling out a button.
`When the button is depressed,
`the radio tunes to the frequency. Some
`professional television camera supports allow the operator to program a
`sequence of pans or zooms and then replay them smoothly when
`required.
`
`seems quite natural by direct
`Programming of physical devices
`manipulation, but an adequate visual representation of information may
`make direct manipulation programming possible in other domains.
`Several word processors allow creation of macros by simply performing a
`sequence of commands that are stored away for later reuse. The Wang
`Decision Processing system enables the creation of “glossary” items that
`can be lengthy sequences of text, special function keys such as TAB, and
`control structures (Figure 5.15). The control structures can test for user
`input and cursor location. Glossary items can invoke each other, leading
`to complex programming possibilities. LOTUS 1-2-3, Symphony, and
`Framework have rich programming languages and allow portions of
`programs to be created by carrying out standard spreadsheet operations.
`The result of the operations is stored in another part of the spreadsheet
`and can be edited, printed, and stored in a textual form.
`
`A delightful children’s program, Delta Drawing from Spinnaker,
`enables children to move a cursor and draw on the screen by typing D to
`draw one unit, R to rotate right 30 degrees, and so on. The forty
`commands provide rich possibilities for drawing some kinds of screen
`images.
`In addition, Delta Drawing allows users to save, edit, and then
`invoke programs. For example, a circle can be drawn by saving the
`
`

`
`Designing the User Interface
`
`(g)
`
`(—TAB-) (-TAB—) Very truly yours, (—RETURN-)
`(—RETURN-) (—RETURN-)
`(-TAB—) (-TAB—) J. S. Bach
`(—RETURN-) (-TAB—) (-TAB—)
`President (—RETURN-)
`
`(-PROMP'I‘-)
`Printout? y or n
`(-EXECUTIVE-)
`(-1-KEY—)
`
`(—BACKSPACE-)
`
`(-IF-) “y”
`(-GO-TO-GL-)y I
`(—END-)
`(-GO-TO-GL-)n
`
`Figure 5.15: Direct manipulation programming in the Wang Decision Processing
`System. Users press labelled function keys for each token to create the program
`which is stored in the glossary.
`.
`
`Invoking the program with the
`program consisting of a D and a R.
`argument, 12, then produces a rough twelve-sided circle.
`
`A number of research projects have attempted to create direct manipu-
`lation
`programming
`systems.
`Halbert’s Smallstar
`(1984) was
`a
`programming-by—example system to enable programming of Xerox Star
`actions. PICT-D (Glinert & Tanimoto, 1984) and ThinkPad (Rubin,
`Golin, & Reiss, 1985) both tried to make graphical
`icons into a pro-
`gramming language. This strategy has many of the elements of direct
`manipulation.
`
`

`
`Ch. 5 Direct Manipulation
`
`219
`
`5.8 PRACTITIONER’S SUMMARY
`
`Among interactive systems that provide equivalent functionality and
`reliability, some systems emerge to dominate the competition. Often the
`most appealing systems have an enjoyable user interface that offers a
`natural representation of the task and commands, hence the term direct
`manipulation. These systems are easy to learn, use, and retain over time.
`Novices can acquire a simple subset of the commands and then progress
`to more elaborate operations. Actions are rapid, incremental, reversible,
`and often performed with physical actions instead of complexsyntactic
`forms. The results of operations are immediately visible, and error
`messages are needed less often.
`Just because direct manipulation principles have been used in a system
`does not ensure its success. A poor design, slow implementation, or
`inadequate
`functionality
`can
`undermine
`acceptance.
`For
`some
`applications, menu selection, form fill—in, or command languages may be
`more appropriate.
`Iterative design (see Section 10.2)
`is especially
`important in testing direct manipulation systems because the novelty of
`this approach may lead to problems for designers and users.
`
`5.9 RESEARCHER’S AGENDA
`
`the
`to be done to refine our understanding of
`Research needs
`each
`feature
`of
`direct manipulation:
`analogical
`Contribution
`of
`representation, incremental operation, reversibility, physical action instead
`of syntax, immediate visibility of results, graceful evolution, and graphic
`form. The relative merits of competing analogical representations could
`be better understood through experimental comparisons (Bewley et al.,
`1983). Reversibility is
`easily accomplished by
`a generic UNDO
`command, but designing natural inverses for each operation may be more
`attractive. Can complex actions always be represented with direct
`
`

`
`220
`
`Designing the User Interface
`
`manipulation, or is there a point at which command syntax becomes
`appealing?
`
`If researchers and designers can free themselves to think visually, then
`the future of direct manipulation is promising. Tasks that could have been
`performed only with tedious command or programming languages may
`soon be accessible through lively, enjoyable interactive systems that
`reduce learning time, speed performance, and increase satisfaction.
`
`REFERENCES
`
`Arnheim, Rudolf, Visual Thinking, University of California Press,
`Berkeley, CA, (1972).
`Bewley, William L., Roberts, Teresa L., Schroit, David, and Verplank,
`William L., Human factors testing in the design of Xerox’s 8010
`“Star” Office Workstation, Proc. CHI
`'83 Conference - Human
`Factors in Computing Systems, Available from ACM Order Dept., P.
`0. Box 64145, Baltimore, MD 21264, (1983), 72-77.
`Bruner, James, Toward a Theory of Instruction, Harvard University
`Press, Cambridge, MA, (1966).
`
`J. M., Learning, using and designing command paradigms,
`Carroll,
`Human Learning 1, (19823), 31-62.
`
`Carroll, J. M., The adventure of getting to know a computer, IEEE
`Computer 15, (1982b), 49-58.
`
`Carroll, John M., and Thomas, John C., Metaphor and the cognitive
`representation of computing systems, IEEE Transactions on Systems,
`Man, and Cybernetics, SMC-I2, 2, (March/April 1982), 107-116.
`Carroll, "J. M., Thomas, J. C., and Malhotra, A., Presentation and
`representation in design problem—solving, British Journal of Psychology
`71, (1980), 143-153.
`
`Copeland, Richard W., How Children Learn Mathematics, Third Edition,
`MacMiIlan, New York, (1979).
`
`and Tanimoto, Steven L., Pict: An interactive
`Glinert, Emphraim,
`graphical
`programming
`environment,
`IEEE Computer
`17,
`11,
`(November 1984), 7-25.
`
`

`
`Ch. 5 Direct Manipulation
`
`221
`
`dissertation,
`Ph. D.
`Halbert, Daniel, Programming "by Example,
`Department
`of Electrical Engineering
`and Computer Systems,
`University of California, Berkeley, CA, Available as Xerox Report
`OSD—T8402, Palo Alto, CA, (1984).
`Hatfield, Don, Personal communication and lecture at Conference on
`Easier and More Productive Use of Computer Systems, Ann Arbor, MI
`(1981).
`Heckel, Paul, The Elements of Friendly Software Design, Warner Books,
`New York, NY, (1984), 205 pages.
`Herot, Christopher F., Spatial management of data, ACM Transactions on
`Database Systems, Vol. 5, No. 4, (December 1980), 493513.
`Herot, Christopher, Graphical user
`interfaces,
`In Vassiliou, Yannis
`(Editor), Human Factors and Interactive Computer Systems, Ablex
`Publishing Co., Norwood, NJ, (1984), 83—104.
`Hollan, J. D., Hutchins, E. L., and Weitzman, L., STEAMER: An
`interactive inspectable simu1ation—based training system, AI Magazine,
`(Summer 1984), 15427.
`Hutchins, Edwin L., Hollan, James D., and Norman, Don A., Direct
`manipulation interfaces, In Norman, Don A., and Draper, Stephen W.
`(Editors), User Centered System Design: New Perspectives on
`Human—Computer
`Interaction,
`Lawrence
`Erlbaum Associates,
`Hillsdale, NJ, (1986).
`Iseki, Osamu and Shneiderman, Ben, Applying direct manipulation
`concepts: Direct Manipulation Disk Operating System (DMDOS),
`Software Engineering Notes 11 , 2, (March 1986).
`MacDonald, Alan, Visual Programming, Datamation 28, 11,
`1982), 132-140.
`McDonald, Nancy, Multi—media approach to user interface, In Vassiliou,
`Yannis (Editor), Human Factors in Interactive Computer Systems,
`Ablex Publishing Co., Norwood, NJ, (1983).
`McKim, Robert H., Experiences
`in Visual Thinking, Brooks/Cole
`Publishing Company, Monterey, CA, (1972).
`Malone, Thomas W., What makes computer games fun?, BYTE 6, 12,
`(December 1981), 258-277.
`Montessori, Maria, The Montessori Method, Schocken, New York,
`(1964).
`
`(October
`
`

`
`222
`
`Designing the User Interface
`
`Nelson, Ted, Interactive systems and the design of virtuality, Creative
`Computing Vol. 6, No. 11, (November 1980), 56 ff., and Vol. 6, No.
`12, (December 1980), 94 ff.
`
`Papert, Seymour, Mindstorms: Children, Computers, and Powerful Ideas,
`Basic Books, Inc., New York, NY, (1980).
`
`Polya, G., How to Solve It, Doubleday, New York, (1957).
`
`Roberts, Teresa L., Evaluation of Computer Text Editors, Ph. D.
`dissertation,
`Stanford University, Available
`from University
`Microfilms, Ann Arbor, MI, Order Number AAD 80-11699, (1980).
`Rubin, Robert V., Golin, Eric J., and Reiss, Steven P., Thinkpad: a
`graphics system for programming by demonstrations, IEEE Software
`Vol. 2, No. 2, (March 1985), 73-79.
`
`Rutkowski, Chris, An introduction to the Human Applications Standard
`Computer Interface, Part
`1: Theory and principles, BYTE 7, 11,
`(October 1982), 291-310.
`
`Schild, W., Power, L. R., and Karnaugh, M., PICTUREWORLD: A
`concept for future office systems,
`IBM Research Report RC 8384,
`Yorktown Heights, NY, (July 30, 1980).
`_
`-
`
`Shneiderman, Ben, A computer graphics system for polynomials, The
`Mathematics Teacher, Vol. 67, No. 2, (1974), 111-113.
`Shneiderman, Ben, Control flow and data structure documentation: Two
`
`Experiments, Communications of the ACM, Vol. 25, No. 1, (January
`1982), 55-63.
`
`Shneiderman, Ben, Mayer, R., McKay, D., and Heller, P., Experimental
`investigations of the utility of detailed flowcharts in programming,
`Communications of the ACM, Vol. 20, (1977), 373-381.
`
`Smith, Cranfield, Irby, Charles, Kimball, Ralph, Verplank, Bill, and
`Harslem, Eric, Designing the Star user interface, BYTE, Vol. 7, No. 4,
`(April 1982), 242-282.
`
`Thimbleby, Harold, What you see is what you have got? Unpublished
`paper, University of York, England, (1982).
`
`Wertheimer, M., Productive Thinking, Harper and Row, New York,
`(1959).
`
`Yedwab, Laura, Herot, Christopher F., and Rosenberg, Ronni L., The
`automated desk, Sigsmall Newsletter 7, 2, (October 1981), 102-108.
`
`

`
`Ch. 5 Direct Manipulation
`
`223
`
`Zloof, M. M., Office—by-Example: A business language that unifies data
`and word processing and electronic mail, IBM Systems Journal 21, 3,
`(1982), 272-304.
`
`Zloof, M. M., Query—by—Example, Proceedings of the National Computer
`Conference, AFIPS Press, Montvale, NJ (1975).

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket