This paper presents decision making elements in an anatomy of the design of undo support in the GNU Emacs environment. Apart from providing design guidelines for undo support, it illustrates how to bring a design from an abstract conception to a concrete realization and how to balance trade-offs in the process. Undo support is a usability feature of interactive computer systems which allows a user to reverse the effects of executed commands. GNU Emacs was chosen as a suitable environment to demonstrate how to design undo support because of its sophistication and practical significance. User's opinions about which aspects of the existing undo support facility in Emacs need to be improved were solicited by conducting an informal survey among Emacs users. The results of the survey are discussed and were used to tailor a proposal for an improved undo support facility for Emacs. In order to test the adequacy of the proposal, it was subjected to an informal expert walk-through and a review of Emacs users opinions was conducted through a computer network. These evaluations are discussed and revisions to the proposal elicited. After the revised prototype of the design was implemented, a post-mortem evaluation was carried out and its results were incorporated in the final implementation. © 1992.
Yang, Y. (1992). Anatomy of the design of an undo support facility. International Journal of Man-Machine Studies, 36(1), 81–95. https://doi.org/10.1016/0020-7373(92)90053-N