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

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

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

Как и на кухне, в UX мы должны учитывать людей с различными компетенциями. Наши системы должны быть достаточно гибкими, чтобы позволить пользователям выполнять поставленную задачу, используя различные методы. Гибкие системы эффективны, потому что люди могут выбирать метод, который лучше всего подходит для них. 7—я из 10 эвристик юзабилити гласит, что мы должны уделять приоритетное внимание гибкости и эффективности использования за счет использования коротких путей и ускорителей, невидимых для начинающего пользователя, которые ускоряют взаимодействие для опытных пользователей. Такой подход позволяет системе обслуживать как неопытных, так и опытных пользователей.

У начинающих и опытных пользователей разные потребности

Новые пользователи часто нуждаются в руководстве при использовании системы и нуждаются в четких и очевидных вариантах, потому что они еще не разработали ментальную модель того, как работает система. Например, начинающие пользователи в значительной степени полагаются на пошаговые руководства или четко обозначенные меню, в то время как более опытные пользователи изучают сочетания клавиш или жесты на сенсорном экране для выполнения той же задачи. Опытные пользователи, конечно, все еще могут использовать более медленные, более продуманные методы, но не получают от этого никакой пользы. Вместо этого они используют более быстрый (но менее управляемый) подход к задаче. Эти более быстрые альтернативные методы выполнения частого действия называются ускорителями.

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

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

Итак, есть два разных аспекта создания гибкой и эффективной системы:

Несколько методов для выполнения одной и той же задачи

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

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

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