The framework of 'cognitive dimensions' applies to notations (such as music, dance, morse, programming languages), and to all kinds of information-handling devices (spreadsheets, databases, word-processors, and the famously-difficult VCR). It is a broad-brush analysis (no 'death by detail'), meant to be comprehensible to non-specialists. It is a small vocabulary of about 12 terms which describe aspects that are cognitively-relevant.
The idea is that each term is instantly recognisable and should feel familiar as soon as it is encountered. One example is 'viscosity', the degree to which an information structure resists local changes. (Technical literature, with cross-references and section headings, is viscous, because introducing a new section requires many changes to cross-references. One remedy is to use a smart editor.)
Discussing design choices, or comparing different problems, would be easier (I claim) if such a vocabulary were in use. Instead of painstakingly describing all the details of some device and hoping that our listeners can infer the problems, we could directly describe its profile in terms of cognitive dimensions. Choosing what to buy could be done not just in terms of number of features but also in terms of a profile of cognitive dimensions. For different kinds of work we would want different profiles, or different regions in a hyperspace of cognitive dimensions.
Design choices are frequently interlinked. For example, if we use a smart editor when preparing technical literature, it will reduce the viscosity but increase the 'level of abstraction' -- the number of new concepts that need to be learnt. It will probably also introduce hidden dependencies inside the nformation structure, such that changing one bit may unexpectedly change another. So one cannot arbitrarily choose where in the hyperspace to locate one's design; as ever, compromise will be called for.
Needless to say, there is much work to be done before this vision is fulfilled, but it has already proved useful in its early stages. Look on the publications page for related papers; also try these ones:
A web-based introduction:
Green, T. R. G. (1996) An introduction to the Cognitive Dimensions framework. Extended abstract of invited talk at MIRA workshop, Monselice, Italy. (HTML)
A more detailed exposition:
Green, T. R. G. (2000) Instructions and descriptions: some cognitive aspects of programming and similar activities. Invited paper, in Di Gesù, V., Levialdi, S. and Tarantino, L., (Eds.) Proceedings of Working Conference on Advanced Visual Interfaces (AVI 2000). New York: ACM Press, pp 21-28.
A tongish tutorial:
Green T R G and Blackwell, A F (1998) A tutorial on cognitive dimensions. (No longer on my site) This tutorial has 3 parts: an introduction to the framework; analysis of two real-life examples; and a set of interactive virtual devices, accessible via the web, which illustrate different design decisions and their trade-offs.
Virtual devices, illustrating different design decisions:
A resource page for the CDs community (not on my site):