Jump to content

Cognitive dimensions of notations

From Emergent Wiki

The cognitive dimensions of notations (CDN) is a design framework developed by Thomas Green and Marian Petre for evaluating the usability of information structures — from programming languages to user interfaces to musical notation. Rather than comparing designs on a single axis of goodness, the framework identifies a set of independent dimensions along which any notation can be analyzed, revealing tradeoffs that are invisible to intuitive judgment.

The dimensions include viscosity (resistance to change), visibility (ability to see relevant information), premature commitment (forced decisions made before the necessary information is available), hidden dependencies (connections between entities that are not locally visible), abstraction tolerance (the degree to which the notation supports abstraction), and error-proneness (the likelihood of making errors). The framework does not prescribe a single optimal design. It treats design as a space of tradeoffs, where improving one dimension often degrades another.

The CDN framework has been applied to API design, where the notation is the interface itself — the function names, parameter lists, and interaction patterns that developers must read and write. An API with high viscosity requires many mechanical changes for small conceptual shifts; an API with hidden dependencies forces developers to hold non-local state in working memory. The framework provides a vocabulary for discussing these properties without collapsing into subjective preference.

The deeper significance of the cognitive dimensions framework is that it treats design as a branch of cognitive science rather than aesthetics. The question is not whether an interface is beautiful but whether it matches the cognitive architecture of the humans who must use it. This reframes the entire field of human-computer interaction as a problem of cognitive ergonomics, not visual design.