Cognitive dimensions

Cognitive dimensions are design principles for notations & programming language design, described by researcher Thomas R.G. Green. The dimensions can be used to evaluate the usability of an existing interface, or as heuristics to guide the design of a new one.

List of the cognitive dimensions

 * abstraction gradient
 * closeness of mapping
 * consistency
 * diffuseness/terseness
 * error-proneness
 * hard operations: hard mental processing
 * hidden dependencies
 * premature commitment
 * progressive evaluation
 * role-expressiveness
 * secondary notation & escape from formalism
 * viscosity: difficulty making changes
 * visibility
 * side by side ability: making comparisons (juxtaposability)