Understanding complex descriptions

  • Collin Potts
Cognitive Aspects
Part of the Lecture Notes in Computer Science book series (LNCS, volume 178)


User-system interaction is starting to receive the attention it deserves. A picture is starting to emerge from work in cognitive ergonomics of the requirements for user interfaces, for example for text editors (Card et al., 1983), command languages (Barnard et al., 1981) and programming language syntax (Green, 1980). In a short sketch of the research opportunities that exist, Shneiderman (1982) lists several similar issues, such as menu selection, on-line assistance, etc. He also draws attention to issues such as overcoming anxiety and fear of computer usage. I shall not comment on such social and organisational issues, but I want to suggest that attention to ergonomic issues of the first type neglects a range of important human factors in system use. These operate at a conceptual level beneath the external (e.g. graphical or pretty-printed) characteristics of the interface. The problem I want to address relates to these. It is this: how can an information system be designed so that the complex descriptions it supports and which are manipulated by the users can be rendered into forms that are harmonious with the users' mental models?

In the first part of the paper I shall discuss a conceptual architecture for information systems which emphasises the understandability of the descriptions they embody. The architecture consists of an internal description which may be manifested by applying two classes of transformation, forming separate conceptual and external interfaces. In connection with the conceptual interface, I discuss the relevance of current work in cognitive science, especially text linguistics. I shall ignore the external interface, as this has received the most attention in the cognitive ergonomics literature.

In the second part of the paper, I shall concentrate on a class of complex descriptions of particular relevance to software engineering, specifications. A specification is usually thought of as a text and a specification language as a language. A specification, however, is simply a description of a reality that does not exist yet and a programming support environment is, amongst other things, an information system for manipulating such descriptions. Thus in addition to the effects of syntactic and physical factors (e.g. layout) on the understandability of specification, we should also be examining the conceptual models required of the specifier by different specification language.


Canonical Formalism Specification Language Complex Description External Interface Lift System 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. Barnard, P., Hammond, N., Morton, J., Long, J., Clark I. (1981). Consistency and compatibility in human-computer dialogue, Int. Journal Man-Machine Studies 15, 87–134.Google Scholar
  2. Bartlett, A.J., Cherrie, B.H., MacLean R.I., Potts C. (1984). The derivation of Ada executable validation models from JSD representations. Imperial College of Science and Technology, Dept. Computing, Research Report Doc 84/3.Google Scholar
  3. Bates, P.C., Wileden J.C. (1982). EDL: a basis for distributed system debugging tools' Proc. 15th Hawaii Int. Conf. Sys. Sci. Software, Hardware Decision Support Systems, Special Topics. Vol. I.Google Scholar
  4. Card, S.K., Moran T.P., Newell A. (1983). The Psychology of Human-Computer Interaction. Erlbaum.Google Scholar
  5. Edmonds, E.A. (1981). Adaptive man-computer interfaces. Computing Skills and the User Interface. Coombs, M.J., Alty J.L. (Eds.). Academic.Google Scholar
  6. Fischer, G., Schneider, M. (1984) Knowledge-based communication processes in software engineering. Proc. 7th Int. Conf. Software Eng., IEEE Press.Google Scholar
  7. Green, T.R.G. (1980) Programming as a cognitive activity. Human Interaction with Computers. Smith H.T., Green T.R.G. (Eds.). Academic.Google Scholar
  8. Hammond, P. (1982). APES (A Prolog Expert System Shell): a detailed description. Imperial College, Dept. Computing Research Report Doc 82/10.Google Scholar
  9. Jackson, M.A. (1983). System Development. Prentice-Hall.Google Scholar
  10. Kintsch, W., Van Dijk, T.A. (1978). Toward a model of text comprehension and production. Psychol. Rev. 85, 363–394.CrossRefGoogle Scholar
  11. Kowalski, R. (1979). Logic for Problem Solving. North Holland.Google Scholar
  12. Lehman, M.M., Stenning, V., Turski W.M. (1983). Another look at software design methodology. Imperial College, Dept. Computing Research Report Doc 83/13.Google Scholar
  13. MacLean, R.I., Potts, C., Cherrie, B.H., Bartlett, A.J. (1983). The MINEX Model and its Language. Imperial College, Dept. Computing, EMMA Technical Report TR3 (available from the author).Google Scholar
  14. MacLean, R.I., Potts, C., Bartlett, A.J., Cherrie B.H. (1984). Validation in the software process. Proc. Software Process Workshop, Egham, IEEE Press.Google Scholar
  15. Mullery, G. (1979). CORE: a method for controlled requirement expression. Proc. 4th Int. Conf. Software Eng., IEEE Press.Google Scholar
  16. Potts, C.,MacLean, R.I., Bartlett, A.J. (1983). Modelling the domain of discourse as a precursor to requirements analysis. Imperial College of Science and Technology, Dept. Computing, Research Report Doc 83/16.Google Scholar
  17. Shneiderman, B. (1982). Human factors of interactive software. Enduser Systems and their Human Factors, Blaser, A., Zoeppritz, M. (Eds.). Springer-Verlag.Google Scholar
  18. Spilich, G.J., Vesonder, G.T., Chiesi, H.L., Voss, J.F. (1979). Text processing of domain-related information for individuals with high and low domain knowledge. Journal Verbal Learning and Verbal Behaviour, 18, 275–290.CrossRefGoogle Scholar
  19. Staunstrup, J. (Ed.). (1981). Program Specification. Springer-Verlag.Google Scholar
  20. Teichroew, D., Hershey, E.A. (1977). PSL/PSA: A computer-aided technique for structured documentation and analysis of information systems. IEEE Trans. Software Engineering SE-3: 41–48.Google Scholar
  21. Van Dijk, T.A. (1978). Text and Context: Explorations in the semantics and pragmatics of discourse. Longmans.Google Scholar
  22. Vipond, D. (1980). Micro-and macro-processes in text comprehension. Journal of Verbal Learning and Verbal Behaviour, 19, 276–296.Google Scholar
  23. Wasserman, A.I. (1981). Software tools in the User Software Engineering Environment. Tutorial: Software Development Environments. Wasserman A.I. (Ed.). IEEE Press.Google Scholar
  24. Winograd, T. (1983). Language as a Cognitive Process. Vol. 1. Syntax'. Addison-Wesley.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1984

Authors and Affiliations

  • Collin Potts
    • 1
  1. 1.Department of ComputingImperial College of Science and TechnologyLondonUK

Personalised recommendations