не задаст системе вопрос о ее текущем состоянии. Об этой проблеме мы уже говорили на примере фонарика в сумке. Одно из возможных решений состоит в том, чтобы обеспечить установку переключателя, имеющего несколько положений, в некое начальное состояние сразу после каждого случая его использования. В результате этого подсчет числа переключений позволит всегда определить текущее состояние переключателя. Если предполагается, что переключатель будет использоваться человеком, то целесообразно предусматривать не более 5 состояний переключателя. Другим решением может быть применение набора переключателей (radio buttons).
Тем не менее, на этом список проблем, к которым могут приводить режимы, не исчерпывается. Ко всему прочему, режимы могут еще лишать пользователя возможности взаимодействия с системой. Это особенно заметно в том случае, когда вы вынуждены прервать свою работу, чтобы ответить на возникшее окно сообщения. Некоторые разработчики считают, что принуждение пользователя остановиться или работать в жестких рамках установленной последовательности действий оказывается полезным, так как позволяет системе самой «направлять» действия пользователя. При некоторых обстоятельствах важно, чтобы пользователь принял то или иное конкретное решение к какому-то моменту времени или перед выполнением следующего шага из последовательности. Если же пользователь не имеет возможности принять свое решение, то и необходимости диалога с ним нет. В первом случае достаточно только поместить на экране часы с обратным отсчетом, но не следует ограничивать пользователя в том, чтобы в это время он мог совершать в системе и другие действия. Во втором случае пусть на экране появляется сообщение, в котором говорилось бы, что перед выполнением очередного шага необходимо принять следующее решение, но система не должна препятствовать пользователю в выполнении других операций, не относящихся к текущей программной последовательности. Необходимо учитывать, например, что для принятия решения пользователю требуется просмотреть какой-то файл или выполнить какие-то вычисления. Другими словами, запросы и подсказки должны даваться не модально, а так, чтобы пользователь мог в максимальной степени сохранять контроль над системой.
3.2.2. Режимы, пользовательские настройки и временные режимы
Возможности установки пользовательских настроек являются одним из примеров режимов и представляют собой большой источник расстройств для пользователя. Как ни странно, но такие возможности обычно подаются как некие преимущества для пользователя. Существующие сегодня интерфейсы зачастую оказываются настолько трудными в применении, что сам пользователь может чувствовать желание как-то перестроить их. Однако Microsoft (1995, с. 4) особенно рекомендует снабжать интерфейсы такими функциями. «Поскольку пользователи обладают довольно разными навыками и предпочтениями, они должны иметь возможность изменять параметры интерфейса (например, цвет, шрифт и др.) на свое усмотрение.» С другой стороны, одна из пользователей Microsoft Word сравнивала установку личных настроек с установкой часовой бомбы. Речь шла о том, что ей необходимо было сделать список в формате, отличающемся от того, который она обычно использовала. Для этого она прочитала справку о том, как делать такие изменения, и затем выбрала соответствующие настройки. В следующий раз, когда ей понадобилось сделать список, она воспользовалась знакомой ей командой List (Список) и, естественно, получила тот формат, на который она переустановила текстовый процессор, а не тот, который использовала обычно. Ей понадобилось больше часа, чтобы разобраться в том, что произошло, и исправить последствия. (В первый момент она подумала, что возникли неисправности в программе или что она неправильно применила команду, поэтому она повторила ее много раз, прежде чем вспомнить, что до этого изменила настройки.)
Боб Фауэлз (Bob Fowels) из компьютерного центра Пенсильванского государственного университета отмечает:
Пользователи, которые не осознают всей сложности программы Word, могут столкнуться с трудностями, если во время быстрой работы с клавиатурой случайно нажмут клавишу «Command», «Option» или «Ctrl» в сочетании с какой-то другой клавишей. Вчера, например, моя жена столкнулась с проблемой, с которой мне пришлось повозиться не одну минуту. Всякий раз, когда она нажимала клавишу «Return», на экране возникал маркированный список. Взглянув на выпадающее меню Правка, я увидел надпись: «Отменить автоформат». После нескольких минут поиска и чтения Справки я-таки нашел место управления функцией автоформатирования и отключил ее. То есть каким-то образом она умудрилась использовать сочетание клавиш, которое включило эту функцию (личное сообщение, 1998).
Пользователь пострадал сразу и от пользовательской настройки, и от режима, и от сочетания клавиш, и от излишней сложности интерфейса.
Пользовательские настройки – это такие изменения в программном обеспечении, которые не отражаются в документации. Например, во время использования Word я попытался отключить функцию, которая была мне неизвестна. В Справке я узнал, что мне следовало всего лишь щелкнуть по соответствующей кнопке на стандартной панели инструментов. Однако человек, который пользовался программой до меня, изменил эту панель инструментов с помощью окна пользовательских установок, и поэтому необходимой кнопки на ней не было, и мне потребовалось много времени, чтобы разобраться, как наладить работу программы нужным мне образом. Этот инцидент указал на еще более важную проблему применения пользовательских настроек, а именно: как можно протестировать качество интерфейса или написать документацию для системы, если ее конфигурация разработчикам не известна заранее? В описанном мною случае изменение режима, произведенное предыдущим пользователем, сделало документацию неверной.
В результате возможность настройки параметров интерфейса зачастую приводит к изменениям, которые не являются оптимальными, поскольку пользователь не всегда может обладать компетентностью специалиста по разработке интерфейсов. Чаще всего пользователь будет выбирать тот метод, который наиболее близок к уже известному ему методу, или настройку, которая требуется ему только на время. Некоторые разработчики утверждают, что для достаточно опытных пользователей следует предусматривать как можно больше настроек, которые они могут использовать для изменения системы под свои нужды. Однако нельзя сказать, что опытные пользователи вместе с тем являются и хорошими разработчиками интерфейсов, и, имея привычки в использовании данного программного продукта, они особенно заинтересованы в стабильной работе системы так, чтобы их привычки не потеряли основу после внесения в систему каких-либо изменений, пусть даже если они вносятся самими пользователями.
Снабжая программу настройками, мы обременяем пользователя задачей, которая не относится к его рабочим функциям. Пользователю, скажем, электронных таблиц приходится изучать не только эти электронные таблицы, но и опции по их настройке.
Установка персональных настроек в совместно используемой среде чревато серьезными сбоями, так как это означает, что в интерфейс могут быть незаметно внесены изменения. В результате вчера правильным действием было нажатие на красную кнопку, а сегодня – на синюю, так как кому-то показалось, что синий цвет красивее. Ваши навыки и привычки становятся ненужными. К тому же, пользователю системы с личными настройками намного труднее помочь по телефону или по электронной почте.
Персональные настройки кажутся удобными, демократичными, допускающими расширения, полными свободы и радости для пользователя, но, тем не менее, я не знаком ни с одним исследованием, в котором говорилось бы о повышении продуктивности, а также