
- •Эргономика
- •1. Производительность пользователя
- •1.2. Длительность интеллектуальной работы
- •1.2.1. Непосредственное манипулирование
- •1.2.2. Потеря фокуса внимания (прерывание)
- •1.2.3. Ограничение принятия решений
- •1.2.4. Закон Хика
- •1.3. Длительность физических действий пользователя
- •1.3.1. Закон Фитса
- •1.3.2. Методы повышения доступности кнопки
- •1.3.3. Уменьшение числа манипуляций
- •1.3.4. Уменьшение необходимости ввода данных
- •1.3.5. Память программы
- •1.4. Длительность реакции системы
- •1.4.1. Фоновый режим выполнения задач
- •Типы человеческих ошибок
- •3.1. Ошибки, вызванные недостаточным знанием предметной области.
- •3.2. Опечатки.
- •3.3. Не считывание показаний системы.
- •3.4. Моторные ошибки.
- •Методы предотвращения ошибок
- •4.3.Повышение разборчивости и заметности индикаторов
- •4.3.1. Качество/скорость восприятия элемента
- •Ошибочно выбранный визуальный сюжет элемента.
- •4.3.1.2. Нестандартно выбранный сюжет элемента или реализация сюжета.
- •4.3.1.3. Избыточная детализация сюжета.
- •4.3.2.Физическая реализация элемента
- •4.4. Блокировка потенциально опасных действий до получения подтверждения
- •4.4.1. Блокируйте системные файлы.
- •4.4.2. Не делайте опасные для пользователя кнопки кнопками по умолчанию.
- •4.5. Проверка действий пользователя перед их принятием
- •4.6. Самостоятельный выбор параметров
- •Обучение работе с системой
- •5.1. Почему пользователи учатся
- •5.2. Средства обучения
- •5.2.1. Понятность системы
- •5.2.1.1. Ментальная модель
- •5.2.1.2. Метафора
- •5.2.1.3. Идеома
- •5.2.1.4. Аффорданс
- •5.2.1.5. Стандарт
- •5.2.2. Обучающие материалы
- •5.2.2.1.Типы обучающих материалов
- •5.2.2.2. Среды передачи обучающих материалов
- •5.2.2.3. Спиральность
- •Субъективная удовлетворенность
- •5.1. Эстетика
- •5.2. Субъективное восприятие скорости работы
- •5.3. Приемы для уменьшения субъективного восприятия
- •5.4. Уменьшение вероятности стрессовых ситуаций
- •5.5. Пароли
- •5.6. Сообщение об ошибках
- •5.7. Как избежать сообщений об ошибках
- •5.7.2. Каким должно быть сообщение об ошибке
- •5.7.3. Пузырь как альтернатива сообщениям об ошибке
- •5.7.4. Сообщения о завершении операции
- •5.7.4.1. Необходимо предлагать пользователю обратную связь, не прерывая его.
- •5.7.4.2. Используйте само-срабатывающие диалоги.
- •6.1. Программа перегружена элементами управления
- •6.2. Терминология не адекватна знаниям пользователя о системе
- •6.3. От пользователя постоянно требуется дополнительная информация
- •6.4. Программа не готова к немедленной работе и требуют настройки
- •6.5. Программа имеет многодокументный интерфейс
- •6.6. Отсутствует единый стиль
- •6.7. Программа перегружена окнами сообщений
- •6.8. Интерфейс отражает внутреннюю структуру реализации и мышление программистов
- •6.9. Взаимное размещение объектов на экране не совпадает с их логической связью и/или с их важностью
- •6.10. Пиктограммы используются некорректно
- •Заголовки
- •Дизайн окна
- •Командные кнопки
- •Порядок табуляции фокуса ввода
- •Пиктограммы
- •Взаимодействие с пользователем
5.2.1.2. Метафора
Как было сказано, чтобы научиться пользоваться системой, пользователю нужно построить ментальную модель этой системы. Очень хочется избавить его и от этой работы. Лучшим способом добиться этого является применение метафоры, которая позволяет пользователю не создавать новую модель, а воспользоваться готовой моделью, которую он ранее построил по другому поводу. Самым простым примером метафоры в интерфейсе является устройство программ для проигрывания звуков на компьютере. Исторически сложилось, что вся аудиотехника имеет почти одинаковый набор кнопок, со стандартными обозначениями: несколько кнопок со стрелками (назад/вперед), кнопка с треугольником (воспроизведение), кнопка с двумя прямоугольниками (пауза) и т.д. Соответственно, при проектировании программы аналогичного назначения разумно скопировать существующую систему маркировки кнопок. Благодаря этому пользователям для использования программы ничему не приходится учиться. Почти всегда метафору можно использовать в документации, не перенося её в интерфейс, при этом с тем же успехом. Достаточно просто написать, что «система во многом напоминает …» и нужный результат будет достигнут. К сожалению, у метафор есть несколько существенных недостатков.
Не для любой функциональности можно подобрать подходящую метафору, причем заранее узнать, есть ли хорошая метафора или нет, невозможно, так что можно потратить время на поиски и ничего не найти. Это, как минимум, неэффективно.
Даже подходящая метафора может оказаться бесполезной, если её не знает существенная часть аудитории или её тяжело однозначно передать интерфейсом.
Почти
всегда метафора будет сковывать
функциональные возможности. Что делать,
если проектируемая система обладает
большим количеством функций, чем
копируемый образец? Следование метафоре
в таких условиях будет только вредить,
поскольку совпадающим функциям будет
учиться легче, а несовпадающим – сложнее
(они будут слишком иначе устроены).
Рис.
5.2.1.2-1. Пример удачной метафоры.
Хотя
успех метафоры обусловлен, прежде всего,
отсутствием необходимости расширять
функциональность. Действительно, что
еще требуется от проигрывателя, кроме
как проигрывать музыку?
Рис.
5.2.1.2-2. Пример неудачной метафоры.
Главный
экран ОС Magic Cap. Будучи вся построена на
метафорах, ОС приобрела широчайшую
известность среди журналистов компьютерных
изданий (они сразу всё понимали). С другой
стороны, она не смогла добиться такой
же любви у пользователей: они её понимали,
но отказывались с ней работать из-за её
неэффективности.
Совершенно необязательно, что сам по себе копируемый образец работает идеально. Если его копировать, окажется, что система не сможет быть эффективней своего прародителя. Например, Adobe PageMaker во многом копирует традиционные верстальные гранки, наследуя их известность пользователям вместе с их ограничениями. Благодаря этому он стал чрезвычайно популярен. Однако через некоторое время появился не копирующий гранки QuarkXpress, и отвоевал большую часть пользователей лишь потому, что работал более эффективно, не таская на себе груз старой идеи. Пользователи предпочитали потратить больше времени на обучение, зато выиграть в скорости работы. Анекдотичность ситуации заключается в том, что к настоящему времени гранки не используются вовсе, появилось поколение пользователей, которое никогда их в глаза не видело. Результат: обучаясь PageMaker, они должны дополнительно обучаться идее гранок, которая им вовсе не нужна.
Для таких физических объектов как принтеры или документы легко найти визуальную метафору. Но для таких часто используемых в программах понятий как процессы, связи, службы и преобразования это сделать трудно или даже невозможно. Очень сложно найти хорошую визуальную метафору для покупки билета, смены каналов, приобретения товара, нахождения ссылки, установки формата, вращения инструмента или смены разрешения экрана, хотя именно такие операции мы чаще всего встречаем в программах. Самая коварная проблема метафор возникает, если мы привязываем свой интерфейс к артефактам механической эры. Легко понять, как работать с буфером обмена, потому что это метафора, но придерживаясь метафоры, мы обнаружим, что его возможности очень слабы. Он не может хранить больше, чем один объект, не помнит, что хранил ранее, не может определить, откуда взялось изображение, он не может показать вам уменьшенные картинки того, что содержит и не хранит свое содержимое от запуска до запуска системы. Все эти действия не-метафоричны и им нужно учиться. Следование метафоре дает пользователю значительный прирост производительности в первый раз, когда они используют буфер обмена, но это стоит им многого после того как они откроют слабость этого механизма. Еще один "выдающийся" пример - новый интерфейс для взаимодействия с компьютером под названием MagicCap. Он основывается исключительно на метафоре в каждом своем аспекте. Вы метафорически идете вниз по улице со зданиями, обозначающими приложения. Вы входите в здание, чтобы запустить приложение и видите коридор с дверьми, обозначающими функции. С одной стороны вы можете интуитивно понять основные функции программы, но с другой стороны метафора ограничивает навигацию очень элементарным, линейным маршрутом. Чтобы запустить другое приложение, вы должны вернуться на улицу. В физическом мире это нормально, но в программе нет нужды заставлять пользователя делать все старыми неуклюжими методами. Таким образом, метафора, будучи лучшим средством для избавления пользователя от обучения, не является средством хорошим. С другой стороны, метафоры иногда всё-таки работают (взять те же музыкальные программы), так что определенную пользу от них получить можно. Анализируя опыт успешных случаев их применения, можно вывести следующие правила:
опасно полностью копировать метафору, достаточно взять из неё самое лучшее;
не обязательно брать метафору из реального мира, её смело можно придумать самому;
эффективнее всего метафорически объяснять значение отдельных объектов: например, для графической программы слои можно представлять как положенные друг на друга листы стекла (этот пример подходит и для предыдущего пункта);
если метафора хоть как-то ограничивает систему, от неё необходимо немедленно отказаться.
Суммируя, можно сказать, что применять метафорический подход к разработке можно, но с большой осторожностью. Гораздо более перспективным является идеоматический подход.