[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
article
Free access

A specification language for direct-manipulation user interfaces

Published: 01 October 1986 Publication History

Abstract

A direct-manipulation user interface presents a set of visual representations on a display and a repertoire of manipulations that can be performed on any of them. Such representations might include screen buttons, scroll bars, spreadsheet cells, or flowchart boxes. Interaction techniques of this kind were first seen in interactive graphics systems; they are now proving effective in user interfaces for applications that are not inherently graphical. Although they are often easy to learn and use, these interfaces are also typically difficult to specify and program clearly.
Examination of direct-manipulation interfaces reveals that they have a coroutine-like structure and, despite their surface appearance, a peculiar, highly moded dialogue. This paper introduces a specification technique for direct-manipulation interfaces based on these observations. In it, each locus of dialogue is described as a separate object with a single-thread state diagram, which can be suspended and resumed, but retains state. The objects are then combined to define the overall user interface as a set of coroutines, rather than inappropriately as a single highly regular state transition diagram. An inheritance mechanism for the interaction objects is provided to avoid repetitiveness in the specifications. A prototype implementation of a user-interface management system based on this approach is described, and example specifications are given.

References

[1]
ANSON, E. The device model of interaction. Comput. Graph. 16, 3 (July 1982), 107-114.
[2]
BUXTON, W., LAMB, M. R., SHERMAN, D., AND SMITH, K.C. Towards a comprehensive user interface management system. Comput. Graph. 17, 3 (July 1983), 35-42.
[3]
CARDELLI, L., AND PIKE, R. Squeak: A language for communicating with mice. Comput. Graph. 19, 3 {July 1985), 199-204.
[4]
FELDMAN, M. B., AND ROGERS, G.T. Toward the design and development of style-independent interactive systems. In Proceedings of the A CM SIGCHI Human Factors in Computer Systems Conference (Gaithersburg, Md., Mar. 15-17). ACM, New York, 1982, pp. 111-116.
[5]
FOLEY, J. D., AND VAN DAM, A. Fundamentals of Interactive Computer Graphics. Addison- Wesley, Reading, Mass., 1982.
[6]
FOLEY, J. D., AND WALLACE, V.L. The art of graphic man-machine conversation. Proc. IEEE 62, 4 (Apr. 1974), 462-471.
[7]
GOLDBERG, A., AND ROBSON, D. Smalltalk-80: The Language and Its Implementation. Addison- Wesley, Reading, Mass., 1983.
[8]
GREEN, M. The University of Alberta user interface management system. Comput. Graph. 19, 3 (July 1985), 205-213.
[9]
HAVES, P. J. Executable interface definitions using form-based interface abstractions. In Advances in Human-Computer Interaction, H. R. Hartson, Ed. Ablex, Norwood, N.J., 1985, pp. 161-189.
[10]
HEITMEYER, C. L., LANDWEHR, C. E., AND CORNWELL, M.R. The use of quick prototypes in the military message systems project. Softw. Eng. Notes 7, 5 (Dec. 1982), 85-87.
[11]
HOARE, C. A. R. Communicating sequential processes. Commun. ACM 21, 8 (Aug. 1978), 666-677.
[12]
HUERAS, J.F. A formalization of syntax diagrams as k-deterministic language recognizers. M.S. thesis, Computer Science Dept., Univ. of California, Irvine, 1978.
[13]
HUTCHINS, E. L., HOLLAN, J. D., AND NORMAN, D.A. Direct manipulation interfaces. In User Centered System Design: New Perspectives in Human-Computer Interaction, D. A. Norman and S. W. Draper, Eds. Erlbaum, Hillsdale, N.J., 1986.
[14]
JACOB, R. J.K. Executable specifications for a human-computer interface. In Proceedings of the ACM SIGCHI Human Factors in Computer Systems Conference (Boston, Mass., Dec. 12-15). ACM, New York, 1983, pp. 28-34.
[15]
JACOB, R. J. K. Using formal specifications in the design of a human-computer interface. Commun. ACM 26, 4 (Apr. 1983), 259-264.
[16]
JACOB, R. J.K. An executable specification technique for describing human-computer interaction. In Advances in Human-Computer Interaction, H. R. Hartson, Ed. Ablex, Norwood, N.J., i985, pp. 211-242.
[17]
KASIK, D.J. A user interface management system. Comput. Graph. 16, 3 (July 1982), 99-106.
[18]
KIERAS, D., AND POLSON, P.G. A generalized transition network representation for interactive systems. In Proceedings of the A CM SIGCHI Human Factors in Computer Systems Conference (Boston, Mass., Dec. 12-15). ACM, New York, 1983, pp. 103-106.
[19]
LIEBERMAN, H. There's more to menu systems than meets the screen. Comput. Graph. 19, 3 (July 1985), 181-189.
[20]
MYERS, B. A., AND BUXTON, W. Creating highly-interactive and graphical user interfaces by demonstration. Comput. Graph. 20, 4 (Aug. 1986), 249-258.
[21]
OLSEN, D. R., AND DEMPSEY, E.P. SYNGRAPH: A graphical user interface generator. Comput. Graph. 17, 3 (July 1983), 42-50.
[22]
PARNAS, D. L. On the use of transition diagrams in the design of a user interface for an interactive computer system. In Proceedings of the 24th National ACM Conference. ACM, New York, 1969, pp. 379-385.
[23]
REISNER, P. Formal grammar and human factors design of an interactive graphics system. IEEE Trans. Softw. Eng. SE-7, 2 (Mar. 1981), 229-240.
[24]
SCHULERT, A. J., ROGERS, G. T., AND HAMILTON, J.A. ADM--A dialog manager. In Proceedings of the A CM SIGCHI Human Factors in Computer Systems Conference (San Francisco, Calif., Apr. 14-18). ACM, New York, 1985, pp. 177-183.
[25]
SHNEIDERMAN, B. Multi-party grammars and related.features for defining interactive systems. IEEE Trans. Syst. Man Cybern. SMC-12, 2 (Mar. 1982), 148-154.
[26]
SHNEIDERMAN, B. Direct manipulation: A step beyond programming languages. Computer 16, 8 (Aug. 1983), 57-69.
[27]
SIBERT, J. L., AND HURLEY, W.D. A prototype for a general user interface management system. Tech. Rep. GWU-IIST-84-47, Institute for Information Science and Technology, George Washington Univ., Washington, D.C., 1984.
[28]
SIBERT, J. L., HURLEY, W. D., AND BLESER, T.W. An object-oriented user interface management system. Comput. Graph. 20, 4 (Aug. 1986), 259-268.
[29]
SINGER, A. Formal methods and human factors in the design of interactive languages. Ph.D. dissertation, Computer and Information Science Dept., Univ. of Massachusetts, 1979.
[30]
SMITH, D. C., IRBY, C., KIMBALL, R., AND VERPLANK, B. Designing the Star user interface. Byte 7, 4 (Apr. 1982), 242-282.
[31]
WASSERMAN, A.I. Extending state transition diagrams for the specification of human-computer interactions. IEEE Trans. Softw. Eng. SE-11, 8 (Aug. 1985), 699-713.
[32]
WASSERMAN, A. I., AND SHEWMAKE, D. T. The role of prototypes in the user software engineering (USE) methodology. In Advances in Human-Computer Interaction, H. R. Hartson, Ed. Ablex, Norwood, N.J., 1985, pp. 191-209.
[33]
WASSERMAN, A. I., AND STINSON, S.K. A specification method for interactive information systems. In Proceedings of the Specifications of Reliable Software Conference. IEEE Press, New York, 1979, pp. 68-79. IEEE Catalog no. 79CH1401-9C.
[34]
WEINREB, D., AND MOON, D. Lisp Machine Manual. Artificial Intelligence Laboratory, Massachusetts Institute of Technology, Cambridge, Mass., 1981.
[35]
YUNTEN, T., AND HARTSON, H.R. A supervisory methodology and notation (SUPERMAN) for human-computer system development. In Advances in Human-Computer Interaction, H. R. Hartson, Ed. Ablex, Norwood, N.J., 1985, pp. 243-281.

Cited By

View all

Recommendations

Reviews

Warren S. Hoffman

Many of us use and benefit daily from computers equipped with direct-manipulation interfaces (such as an Apple Macintosh or an MS-DOS machine equipped with Microsoft Windows). I, for one, have never stopped to think how I would specify the flow of logic of an application being developed for such an environment. The problem, of course, is that with a mouse or the equivalent and a number of windows and pull-down menus, the user can cause a wide variety of actions to take place, far more than the relatively few that exist in a traditional command-oriented application. This research is important and should be of interest to those who select a documentation method for what users refer to as window applications. A system for specifying the user interface is presented. It focuses upon the flow of logic. The language defined is based upon characteristics of direct-manipulation interfaces: :9BThey are usually made up of a number of simple dialogues. The dialogues are related to each other as a set of coroutines. The layout details can be dealt with separately. They seem to have nodes and states (despite appearances). The specification language has been implemented and tested, with some success, for some relatively simple applications. The development of these concepts to the point of generating an applications development environment, perhaps even a standard environment, would be useful.

Access critical reviews of Computing literature here

Become a reviewer for Computing Reviews.

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Transactions on Graphics
ACM Transactions on Graphics  Volume 5, Issue 4
Special issue on user interface software
Oct. 1986
92 pages
ISSN:0730-0301
EISSN:1557-7368
DOI:10.1145/27623
Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 October 1986
Published in TOG Volume 5, Issue 4

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)122
  • Downloads (Last 6 weeks)17
Reflects downloads up to 13 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2025)DIRA: A model of the user interfaceInternational Journal of Human-Computer Studies10.1016/j.ijhcs.2024.103381193(103381)Online publication date: Jan-2025
  • (2020)IFML-Based Web Application ModelingProcedia Computer Science10.1016/j.procs.2020.02.034166(129-133)Online publication date: 2020
  • (2016)Exploring young students' learning experiences with the iPadUniversal Access in the Information Society10.1007/s10209-014-0395-715:3(359-367)Online publication date: 1-Aug-2016
  • (2015)Designing Implicit Interfaces for Physiological ComputingACM Transactions on Computer-Human Interaction10.1145/268792621:6(1-27)Online publication date: 14-Jan-2015
  • (2015)A Portable & Cost Effective Human Computer Interface Device for Disabled2015 Fifth International Conference on Communication Systems and Network Technologies10.1109/CSNT.2015.130(1268-1273)Online publication date: Apr-2015
  • (2014)Adaptive Model-Driven User Interface Development SystemsACM Computing Surveys10.1145/259799947:1(1-33)Online publication date: 1-May-2014
  • (2014)A graphical editor for the SMUIML multimodal user interaction description languageScience of Computer Programming10.1016/j.scico.2013.04.00386(30-42)Online publication date: Jun-2014
  • (2014)Bridging the gap between a behavioural formal description technique and a user interface description language: Enhancing ICO with a graphical user interface markup languageScience of Computer Programming10.1016/j.scico.2013.04.00186(3-29)Online publication date: Jun-2014
  • (2014)Extending the Interaction Flow Modeling Language (IFML) for Model Driven Development of Mobile Applications Front EndMobile Web Information Systems10.1007/978-3-319-10359-4_15(176-191)Online publication date: 2014
  • (2014)Concepts, Values, and Methods for Technical Human–Computer Interaction ResearchWays of Knowing in HCI10.1007/978-1-4939-0378-8_4(69-93)Online publication date: 20-Mar-2014
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Full Access

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media