Etude(ID:7571/)

Music programming language 





Related languages
DOC => Etude   Influence
Scribe => Etude   Influence
TeX => Etude   Influence

References:
  • Good, Michael. Etude and the Folklore of User Interface Design. Memo OAM-018, MIT Lab. for Computer Science, Office Automation Group, July, 1980 view details
  • Hammer, M., R. Ilson, et. al. The Implementation of Etude, An Integrated and Interactive Document Production System. Memo OAM-026, MIT Lab. for Computer Science, Office Automation Group, Dec., 1980 view details
  • Schoichet, Sandor. Page Makeup in Etude. Working Paper WP-020, MIT Lab. for Computer Science, Office Automation Group, April, 1980 view details
  • Good, Michael "Etude and the Folklore of User Interface Design" pp34-43 view details Abstract: Research in user interface design is like the weather -- everybody talks about it, but nobody does anything about it. While this isn't strictly true. the great majority of guidelines for user interface design that one is likely to come across are based on the experience or gut feelings of a particular designer. These are better than nothing, but they are made less useful since 1) a particular recommendation could be based on factors unique to the designer's own system, 2) the population for whom the particular system is intended is either not described in detail or is not a generalizable sample of computer users, 3) designers' gut feelings are notoriously inaccurate sources for human factors guidelines. Thus the main body of recommendations available to the designer of a new system is more in the category of folklore than of readily accepted engineering principles.

    So long as one recognizes these limitations, it is still very helpful to consider the recommendations one finds in the literature when designing a new system. Some of these are based on experimental evidence, while others are repeated often enough and with so little opposition that their utility is better than average. In this paper, I will show how these principles have been applied in designing the Etude text processing system. After summarizing the major ideas behind the design of Etude, I will focus on several specific areas of user interface design, comparing Etude's approach with the appropriate recommendations from the folklore. I will conclude by briefly describing a forthcoming experiment which is intended to determine if adherence to the folklore has in fact produced a system that is easy to use.
    Extract: Etude
    Etude
    The Etude interactive editor and formatter is the first component of an integrated office work station being developed by the Office Automation Group of the MIT Laboratory for Computer Science. It is intended to run on a small, powerful computer system with a high-resolution bit-map display. The interactive nature of the system means that the user can create, edit, and format a document at a terminal and see the results immediately displayed on a full page, high resolution display screen. Other tools, such as an image processing system, a database management system, and an electronic mail system, will be incorporated in an integrated manner so that the user will not be conscious of having to switch between systems in order to perform the necessary tasks.

    The design goals of Etude, as described in the specifications [15], are as follows:

    The system should be very easy to learn to use. We expect that a person with no specialized training should be able to sit down in front of the system, and, with system prompts and queries, be able to create, edit, and print out a formatted document. At any time, if the user is unsure of what he can or should do, he may ask the system for help, and the system will display and explain the available options.
    The experienced user'should not be encumbered by the facilities which are present to aid the novice.
    When editing and formatting a document, the user will be able to express what he wishes to do in a natural way, so he may easily translate his thoughts into system commands.
    The system will contain a large amount of typographic knowledge so that usual formatting can be handled automatically by the system, with some assistance from the user.
    The latter three goals emphasize that the primary design goals are ease of learning and ease of use. While in many systems these two goals may appear to be at odds with each other, Etude provides optional features that make the system easy for the novice to learn without frustrating the expert. For example. while menus may be provided at any point by pressing the menu key, the use of a menu is never required for any operation -- alternatives may be specified directly by the experienced operator. Expressing the commands in a natural way and incorporating a large amount of knowledge into the system results in the use of higher level formatting commands than those found in most formatting systems. Letters can be written by specifying a return address, address, salutation, body, closing, and notations. These high level objects are referred to as the components of a document and vary over different document types. Type face, margins, spacing, and indentation are all handled automatically by the system, relieving the user from the burden of creating detailed specifications. These benefits apply both to novices and experienced users.

    Another major consideration in the design of Etude is the so-called "anxiety factor" [11]:

    Frequently, a long period of acclimatization must elapse before an operator is sufficiently expert with a system to feel truly comfortable with it. In the interim, the user's feelings are akin to those associated with walking a tightrope while wearing a blindfold. Because of the often obscure nature of the interface that he is forced to employ, the operator cannot fully anticipate the consequences of the actions he performs. This leads to feelings of tension and uncertainty. Moreover, the user develops a fear of committing an unrecoverable error, and thereby becomes overly timid and cautious in his dealings with the system.

    Etude attempts to alleviate this anxiety in several ways, most notably by providing an undo key which will reverse the effects of any previous operation or sequence of operations. Also provided are a cancel key, which stops the current operation, and a help key that can be used at any time.

    The design of Etude began in 1979, after a large number of text editing and formatting systems were surveyed. Features from these systems which appeared useful in meeting our goals were incorporated into Etude. Three important examples are:

    The command structure, based on Doc.

    The idea of using high level formatting objects, based on Scribe.

    An internal structure based on the boxes and glue of TEX.

    After a prototype version was completed early in 1980, Etude was thoroughly reviewed in terms of its compliance to the user interface guidelines found in the folklore. As a result, we changed several features and are reworking the system implementation for greater efficiency. I will now examine how the current version of Etude measures up to the collected wisdom in the design folklore. Relevant features will be introduced as required. Hammer et al. have described the system in more detail. Extract: Command Structure
    Command Structure
    Etude's basic command structure follows verb-modifier-object form. The most commonly used verbs, modifiers, and objects are placed on special keys. Verbs include commands such as go-to, erase, begin, copy, and change. Modifiers include next, previous, start-of, end-of, and positive integers. Objects include "low-level" ones such as character, sentence. line, and paragraph, typefaces such as bold and italic, and the document components described in the previous section. Commands are formed through combinations such as erase sentence, go-to end-of next paragraph, begin address, and change previous 3 line(s) (to) quotation. Characters shown in parentheses are provided by Etude when echoing the command in a special command line. This prompting is similar to the use of "noise words" in TENEX [41].

    This choice of command structure is becoming more popular in computer systems, especially in the area of word processing.  The premise behind this approach is that it is easier for a user to perform complex functions by combining relatively small sets of primitive objects into commands than by having to remember and choose from a much larger set of separate commands. These primitives combine to form English phrases, with system prompts providing the necessary function words (e.g., prepositions and articles [39]). This is intended to present the user with an easy to use natural syntax while avoiding the "user fooling" problems associated with "natural language" systems [33]. As Bennett [2] comments:

    Following this line of reasoning, we observe that the choice of a verb-like vocabulary to represent commands and a noun-like vocabulary for labels does have proven value both for establishing an easy-to-teach conceptual framework and for aiding memory during use. This highly desirable practice. drawing on a user's language habits, can be productive even though it stops far short of the full natural language exchanges envisioned by some.

    An experiment performed at the University of Massachusetts at Amherst provides supporting evidence for this strategy [21]:

    The results demonstrate that redesigning the surface syntax of a commercial editor so that the commands more closely resemble English phrases resulted in far better performance. On all measures, performance using the English editor was superior to performance using the notational editor. This was true regardless of the experience level of the users.

    There is no special "insert mode" in Etude. Text is inserted at the current cursor position (located between characters) as it is typed. This avoids the oft-encountered mode switching problem, mentioned by Newman and Sproull [29]:

    Each such state in which a given operation by the user is interpreted differently by the program is called a command mode. The more modes in a command language, the more likely the user is to make mistakes by forgetting which mode he is in. Single-mode command languages avoid this problem completely (p. 451) Extract: Online copy

          in SIGPLAN Notices 16(06) June 1981, also Proceedings of the ACM SIGPLAN SIGOA symposium on Text manipulation 1981, Portland, Oregon view details
  • Hammer, M., Ilson, R., Anderson, T., Gilbert, E., Good, M., Niamir, B., Rosenstein, L. and Schoichet, S. Etude: An integrated document processing system. In 1981 Office Automation Conference Digest (Houston, March 23-25, 1981), AFIPS, pp. 209-219. view details Extract: Introduction
    Introduction
    Contemporary word processing systems are being subjected to a variety of contrasting, even conflicting, pressures. On the one hand, existing systems are widely perceived as being too difficult to learn and use for all but the simplest of document production applications: training times are high, errors too frequent, and the user population is generally restricted to a small cadre of specialists. In particular, the professional in the office, who is responsible for the content of documents, is rarely a user of the systems that are used to produce these documents. Yet because of an anticipated shortfall in the available population of office support staff, and because of the real benefits that derive from the use of advanced office systems, it is very desirable that professionals and other office workers be able to make effective direct use of automated office tools. A document production system that is simple to learn and easy to use can do much to realize this goal.

    At the same time. recent advances in printing technology, such as "dry" phototypesetters and moderate cost laser printers, can be exploited to raise the quality of the appearance of documents that are produced with a word processor. These printers are characterized by their ability to place virtually any pattern of dots on a page. This enables them to print text in a wide variety of styles and sizes, to employ variable inter-character and inter-line spacing, and to match many of the other qualities typically associated with typeset documents. The advantages that these printers can yield are substantial, including lowered costs for paper, copying, and mailing (since typeset documents require less paper than their typewritten counterparts); improved readability and comprehension; and a greater variety of document formats and layouts. However, to control such output devices in order to realize their benefits, to specify how and where text is to be printed, imposes additional burdens on the operator. New sets of commands are required, which further complicate the interface that the user must employ. Although there is a strong demand in the office for the document quality that these printers can achieve, attaining this new functionality would seem to be at odds with the equally important goal of reducing the difficulty of using document production systems. For a system to be useful, it must be usable.

    Etude is an experimental document processing system that seeks to address both these issues: to increase the functionality of office document production systems by exploiting the capabilities of new printing technologies, while reducing the complexity of the user interface. This paper presents the design philosophy of Etude and summarizes its features. Complete specifications of the Etude system can be found in [3], and a discussion of the techniques used to implement it is presented in [4].


          in SIGPLAN Notices 16(06) June 1981, also Proceedings of the ACM SIGPLAN SIGOA symposium on Text manipulation 1981, Portland, Oregon view details
  • Hammer, M., Ilson, R., Anderson, T., Gilbert, E., Good, M., Niamir, B., Rosenstein, L. and Schoichet, S. The implementation of Etude, an integrated and interactive document production system. view details Extract: Introduction
    Introduction
    Etude is an experimental text processing system that is being developed in order to formulate and evaluate new approaches to the design of user interfaces for office automation tools. The primary design goal for Etude is to provide the user with substantial functionality in the editing and formatting of documents in the context of a system that is easy to learn and use.

    Office workers can now have access to the technology that will allow them to produce documents of typeset quality, due to the dramatic increase in quality and decrease in cost of ever more powerful and flexible output devices, such as laser and electrostatic printers. However, the control of such equipment as provided by conventional formatting systems introduces substantial complexity into the document production process and effectively requires that the operator of the system be an amateur typographer. The commands the operator must employ to specify the appearance of a document are low-level and very detailed. Moreover, the operator must engage in a lengthy process consisting of initial specifications, printing on the output device, revision of specifications, additional printing, and so on, until the output has the desired appearance.

    Etude seeks to address these problems by providing an environment in which the document is displayed to the operator as he is working on it, and in which the appearance of this document is specified in high-level terms based on the natural structure of the document. Etude is designed to operate on a high-resolution screen which can present to the operator a representation of a document as it would be produced on a typeset quality output device. Formatting information is provided by specifying the type of the document (letter, report, memo, or the like), and by identifying the components of the document that are associated with its particular type (such as return address. salutation, body, and closing for a letter). Etude has drawn from the Scribe system in this regard [8, 9]. The Etude system has the responsibility of translating these descriptors into detailed formatting instructions for the screen and the printing device.

    Etude also seeks to support and enhance the entire process by which an operator interacts with a system to produce a document, encompassing both the editing and formatting functions. The design of the user interface plays the dominant role in achieving this end. Etude seeks to lower the anxiety factor typically associated with word processing and other computer-based document production systems by providing a command structure that is accessible and comprehensible to a novice user, together with a variety of user aids. These include on-line menu and help facilities, as well as the ability to "undo" any completed activity; the latter makes the entire document production process less susceptible to user error. Moreover, Etude seeks to avoid the conflict between a system that is easy for a novice to learn and one that is convenient for an experienced user. This is accomplished by providing the user with a diversity of interaction modes, ranging from succinct command codes through specialized function keys to detailed menus and prompts. The user has the choice of which mode to employ, and can readily shift from one to another. All share a consistent underlying framework.

    The Etude user interface is summarized in Section 2 below; further details may be found in Hammer et al. [1] and the complete specifications [2]. While Etude does resemble a number of other systems in some of its individual constructs (notably Scribe and Bravo [4]), it also provides a number of innovative features, and is unique in its integration of a wide range of facilities and in its approach to the total document production process. A prototype implementation of the Etude system has been completed, and a second version is now being developed. In attempting to implement the range of Etude facilities with a modicum of efficiency (although performance was not our principal design goal for the prototype), a number of major issues relating to the construction of text processing systems were confronted. The purpose of this paper is to identify these issues and describe the approaches taken to them. Section 3 summarizes the overall architecture of the Etude prototype implementation, and Section 4 describes the way in which Etude represents documents: this representation is fundamental to all that follows. Sections 5 and 6 discuss the ways in which this representation is used to support editing and formatting, and document display on the screen. Section 7 summarizes the approach taken to handling the user interface, especially the facilities that support the user. Section 8 describes how the Etude system interacts with its terminal device.

    Extract: Overview of Etude
    Overview of Etude
    Etude is designed to operate on a hardware base that provides a high-resolution bit-map display device. (Etude may also be used with conventional CRT screens, but only a page-size bit-map display will take advantage of all of Etude's capabilities.) The Etude operator sees the display divided into a number of windows. The center portion of the screen is the text window, in which a full page of formatted text is displayed. This page may include text in a variety of type styles and sizes, may be right-justified, may exhibit proportional spacing, and may be organized in a variety of page layout formats, as determined by the document's component specifications. The display is intended to represent the appearance of the document as it would be printed by a typeset quality output device; it is constantly maintained to reflect the current status of the document as it is changed in the course of the editing process. The left-margin of the page serves as the format window, in which the components of the document's structure are indicated. (Etude has several user'selectable pagination and display modes, which determine whether page-breaks are recomputed dynamically or by explicit request, whether components are displayed or suppressed in the format window, and so on.)

    Part of the screen is reserved for interaction and status windows; the former displays user commands as they are entered and system responses, as well as error information; the latter shows a variety of contextual information. Help information and menus are displayed on request in special windows that "pop up" on the screen. These windows are placed so as not to obscure the area of current interest to the operator, which in general is defined to be the area around the position of the cursor.

    Etude commands are structured like English imperatives; they consist of a verb phrase and up to two noun phrases. A noun phrase consists of a series of modifiers and an object. Etude provides a number of basic objects (character, word, sentence, line, paragraph, column, page. and document) that are widely used in many different contexts, as well as a set of document-specific components. There are four basic modifiers (next, previous, start-of, and end-of); any positive integer may also serve as a modifier. Modifiers and objects may be combined as in English; e.g. start-of paragraph, end-of next 3 sentence(s), previous 10 line(s).

    Etude verbs may be divided into five categories as determined by their function:

    User aids (undo, help, menu, go ahead, cancel, again)
    Cursor movement (go-to, arrow keys)
    Region definition (begin, end)
    Editing (erase, copy, move, label, back-space, back-word)
    Formatting (make, remove, change, split, combine)
    The editing verbs are similar to those encountered in conventional text-editing systems. The editing verbs (and some others) are applied to a region of text, which may be identified by a noun phase or by means of explicit region definition (see below). (The prototype system implements only a basic set of editing verbs; a more complete set will be provided in the next version.)

    The formatting verbs are used to manipulate the component structure of a document. Make is used to associate a component with already existing text while change and remove alter or remove a component associated with some text. Split and combine provide additional ways to manipulate the component structure.

    To move the cursor, the operator may use either the cursor control keys, or the go-to command followed by a noun phrase. If the noun phrase starts with a non-numeric modifier, the go-to command may be omitted.

    Region definition is not done as an independent operation in Etude, but rather in the context of a command such as move, erase, or label. A region is a sequence of text, and may be defined either by using a single noun phrase, or by using begin and end to bracket a series of explicit cursor movements.

    The user aids are critical elements in the plan to make Etude truly easy-to-use. As implemented, undo will reverse the effects of the last operation performed. All operations except labeling, anchoring, and region definition are undoable in the prototype version. Although the prototype only allows the most recent operation to be undone, the system architecture supports a completely general reversal facility, and a richer user interface would allow an arbitrary number of operations to be undone. Help is available at any time in the session, and provides information about what the user has been doing and what his options are at the current point. Cancel terminates the specification of an operation, while again repeats the last command. (This latter facility is generally available only for the cursor movement and editing commands.)

    We plan to design a keyboard specifically for the Etude system. The prototype uses a conventional ASCII keyboard: the Etude verbs and objects can be directly keyed via control and escape sequences. Any verb or object name can also be explicitly typed in full, or selected from a menu displayed to the operator.

    Go ahead is used for the confirmation of operations such as erase; the area affected by the command is highlighted, and execution occurs only when the user hits go ahead. Moreover, when typing in a name during an Etude command (usually that of a component), typing go ahead instructs the system to automatically "complete" the name, from what has been typed. If the string typed in so far is ambiguous (i.e., a prefix of more than one name), Etude informs the user of the ambiguity. The menu command may then be used to display available options (in the form of legitimate names that have the typed string as prefix). Whenever menu is pressed, whether in this situation or in others where a menu can be used, the available options are displayed in a "pop-up" window. The cursor control keys can then be used to select from the menu--the currently selected item is highlighted on the screen, and each cursor control key moves the selection over by one item in the menu. Pressing go ahead finalizes selection from the menu. Alternatively, the user may decide to type in the name of an item listed in the menu and then press go ahead
          in SIGPLAN Notices 16(06) June 1981, also Proceedings of the ACM SIGPLAN SIGOA symposium on Text manipulation 1981, Portland, Oregon view details