Понятность системы Обучение работе с системой


Метафора


Как было сказано, чтобы научиться пользоваться системой, пользователю нужно построить ментальную модель этой системы. Очень хочется избавить его и от этой работы. Лучшим способом добиться этого является применение метафоры, которая позволяет пользователю не создавать новую модель, а воспользоваться готовой моделью, которую он ранее построил по другому поводу.

Самым простым примером метафоры в интерфейсе является устройство программ для проигрывания звуков на компьютере. Исторически сложилось, что вся аудиотехника имеет почти одинаковый набор кнопок, со стандартными обозначениями: несколько кнопок со стрелками (назад/вперед), кнопка с треугольником (воспроизведение), кнопка с двумя прямоугольниками (пауза) и т.д. Соответственно, при проектировании программы аналогичного назначения разумно скопировать существующую систему маркировки кнопок. Благодаря этому пользователям для использования программы ничему не приходится учиться.

Почти всегда метафору можно использовать в документации, не перенося её в интерфейс, при этом с тем же успехом. Достаточно просто написать, что «система во многом напоминает …» и нужный результат будет достигнут.

К сожалению, у метафор есть несколько существенных недостатков.

  • Не для любой функциональности можно подобрать подходящую метафору, причем заранее узнать, есть ли хорошая метафора или нет, невозможно, так что можно потратить время на поиски и ничего не найти. Это, как минимум, неэффективно.
  • Даже подходящая метафора может оказаться бесполезной, если её не знает существенная часть аудитории или её тяжело однозначно передать интерфейсом.
  • Почти всегда метафора будет сковывать функциональные возможности. Что делать, если проектируемая система обладает большим количеством функций, чем копируемый образец? Следование метафоре в таких условиях будет только вредить, поскольку совпадающим функциям будет учиться легче, а несовпадающим – сложнее (они будут слишком иначе устроены).

    Пример удачной метафоры. Хотя успех метафоры обусловлен, прежде всего, отсутствием необходимости расширять функциональность.
    Действительно, что еще требуется от проигрывателя, кроме как проигрывать музыку?

    Пример неудачной метафоры. Главный экран ОС Magic Cap. Будучи вся построена на метафорах, ОС приобрела широчайшую известность среди журналистов компьютерных изданий (они сразу всё понимали). С другой стороны, она не смогла добиться такой же любви у пользователей: они её понимали, но отказывались с ней работать из-за её неэффективности.

  • Совершенно необязательно, что сам по себе копируемый образец работает идеально. Если его копировать, окажется, что система не сможет быть эффективней своего прародителя. Например, Adobe PageMaker во многом копирует традиционные верстальные гранки, наследуя их известность пользователям вместе с их ограничениями. Благодаря этому он стал чрезвычайно популярен. Однако через некоторое время появился не копирующий гранки QuarkXpress, и отвоевал большую часть пользователей лишь потому, что работал более эффективно, не таская на себе груз старой идеи. Пользователи предпочитали потратить больше времени на обучение, зато выиграть в скорости работы. Анекдотичность ситуации заключается в том, что к настоящему времени гранки не используются вовсе, появилось поколение пользователей, которое никогда их в глаза не видело. Результат: обучаясь PageMaker, они должны дополнительно обучаться идее гранок, которая им вовсе не нужна.


  • Для таких физических объектов как принтеры или документы легко найти визуальную метафору. Но для таких часто используемых в программах понятий как процессы, связи, службы и преобразования это сделать трудно или даже невозможно. Очень сложно найти хорошую визуальную метафору для покупки билета, смены каналов, приобретения товара, нахождения ссылки, установки формата, вращения инструмента или смены разрешения экрана, хотя именно такие операции мы чаще всего встречаем в программах.

    Самая коварная проблема метафор возникает, если мы привязываем свой интерфейс к артефактам механической эры. Легко понять, как работать с буфером обмена, потому что это метафора, но придерживаясь метафоры, мы обнаружим, что его возможности очень слабы.


    Он не может хранить больше, чем один объект, не помнит, что хранил ранее, не может определить, откуда взялось изображение, он не может показать вам уменьшенные картинки того, что содержит и не хранит свое содержимое от запуска до запуска системы. Все эти действия не-метафоричны и им нужно учиться. Следование метафоре дает пользователю значительный прирост производительности в первый раз, когда они используют буфер обмена, но это стоит им многого после того как они откроют слабость этого механизма.

    Еще один "выдающийся" пример - новый интерфейс для взаимодействия с компьютером под названием MagicCap. Он основывается исключительно на метафоре в каждом своем аспекте. Вы метафорически идете вниз по улице со зданиями, обозначающими приложения. Вы входите в здание, чтобы запустить приложение и видите коридор с дверьми, обозначающими функции. С одной стороны вы можете интуитивно понять основные функции программы, но с другой стороны метафора ограничивает навигацию очень элементарным, линейным маршрутом. Чтобы запустить другое приложение, вы должны вернуться на улицу. В физическом мире это нормально, но в программе нет нужды заставлять пользователя делать все старыми неуклюжими методами.

    Таким образом, метафора, будучи лучшим средством для избавления пользователя от обучения, не является средством хорошим. С другой стороны, метафоры иногда всё-таки работают (взять те же музыкальные программы), так что определенную пользу от них получить можно.

    Анализируя опыт успешных случаев их применения, можно вывести следующие правила:

  • опасно полностью копировать метафору, достаточно взять из неё самое лучшее;
  • не обязательно брать метафору из реального мира, её смело можно придумать самому;
  • эффективнее всего метафорически объяснять значение отдельных объектов: например, для графической программы слои можно представлять как положенные друг на друга листы стекла (этот пример подходит и для предыдущего пункта);
  • если метафора хоть как-то ограничивает систему, от неё необходимо немедленно отказаться.


  • Суммируя, можно сказать, что применять метафорический подход к разработке можно, но с большой осторожностью. Гораздо более перспективным является идеоматический подход.

    наверх к оглавлению


    Содержание раздела