Когнитивные измерения

Материал из Seo Wiki - Поисковая Оптимизация и Программирование

Перейти к: навигация, поиск

Когнитивные измерения - это принципы разработки синтаксиса, пользовательских интерфейсов и других особенностей языков программирования, описанные исследователями Томасом Грином и Марианом Петре. Измерения могут использоваться для оценки юзабилити существующих языков или для рекомендаций по дизайну новых.

Авторы концепции о когнитивных измерениях[1] выделяют четыре типа активности с интерактивными объектами: инкрементация (создание), транскрипция (переписывание), модификация и исследование дизайна.

Для оценки различных подходов и методов дизайна (синтаксиса) программ они выделили несколько когнитивных измерений:


Содержание

Градиент абстракции

Каковы минимальный и максимальный уровни абстракции, принятые для данного обозначения? Могут ли учитываться более конкретные детали?

Близость соответствия

Насколько близко данное обозначение соответствует настоящей проблеме?

Согласованность

Как легко можно догадаться о полном описании объекта после изучения его частичного описания (обозначения)?

Размытость / сжатость

Сколько символов или сколько места требуется для того, чтобы с помощью данного обозначения выдать определенный результат или выразить смысл?

Помехоустойчивость

В какой степени использование данного обозначения влияет на вероятность того, что пользователь сделает ошибку?

Трудность мыслительных операций

Сколько трудных умственных усилий приходится на уровень обозначения, а не на семантический уровень? Есть ли места, где пользователь должен прибегать к дополнительным аннотациям и комментариям, чтобы отслеживать, что происходит в программе?

Скрытые зависимости

Являются ли зависимости между элементами обозначения видимыми или скрытыми? Каждая ли зависимость отображается в обоих направлениях? Будет ли изменение в одном из аспектов обозначения приводить к неожиданным побочным эффектам?

Сопоставляемость

Можно ли сравнить друг с другом в одно и то же время разные варианты обозначения?

Преварительная выполнимость

Существуют ли серьезные ограничения на порядок, с которым выполняются задачи? Требуются ли какие-то решения, которые должны быть приняты когда еще нет всей необходимой информации в наличии? Могут ли эти решения быть отменены или исправлены позднее?

Оцениваемость прогресса выполнения

Насколько легко оценить и получить обратную связь когда решение еще не полностью готово?

Выразительность ролей

Насколько очевидна роль каждого из компонентов обозначения в решении в целом?

Вторичные обозначения и избегание формализма

Может ли обозначение нести дополнительную информацию путем, не связанным с синтаксисом, таким как расположение, цвет или другие подсказки?

Вязкость

Есть ли в данном обозначении заранее заложенные ограничения для изменений? Сколько усилий потребуется, чтобы внести изменения в программу, выраженную в данном обозначении?

Это измерение может быть разделено на следующие виды: [2]

  • 'Кумулятивная вязкость': изменения в коде, нарушают внутренние ограничения в программе, исправление которых может привести к дальнейшим нарушениям внутренних ограничений.
  • 'Итерационная вязкость': одно действие в рамках концептуальной модели пользователя требует много повторяющихся действий устройства.
  • 'Вязкость масштабирования': Изменение размера входного набора данных требует изменений в структуре самой программы.

Наглядность

Как легко необходимые части обозначения идентифицировать, получить к ним доступ и сделать наглядными?


Изменения в дизайне вдоль одного из измерений обычно затрагивает другие измерения. Т.е. они находятся в некотором балансе друг с другом.

Источники

en:Cognitive dimensions of notations
Личные инструменты

Served in 0.143 secs.