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

StackOverflow https://stackoverflow.com/questions/125269

  •  02-07-2019
  •  | 
  •  

Вопрос

Недавняя статья о Ars Technica ( Арс Техника ) обсуждается недавнее исследование, проведенное факультетом психологии Университета штата Северная Каролина, которое показало, что пользователи склонны делать все возможное, чтобы избавиться от диалогового окна и вернуться к своей текущей задаче.Большинство из них нажимают "ОК" или "Да", сворачивают диалоговое окно или закрывают его, независимо от отображаемого сообщения.Некоторые из отображаемых диалоговых окон были реальными, а некоторые - поддельными (например, всплывающие окна, отображаемые веб-страницами, выдающими себя за предупреждение антивируса).Время отклика будет указывать на то, что эти пользователи на самом деле не читают эти диалоговые окна.

Итак, зная это, как это повлияет на ваш дизайн и что бы вы попытались с этим сделать (если вообще что-нибудь)?

Это было полезно?

Решение

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

  1. бесконечная (или, по крайней мере, многоступенчатая) отмена / повтор
  2. интегрируйте документацию в интерфейс с помощью динамических всплывающих подсказок и других контекстно-зависимых средств коммуникации (один документ, который особенно актуален, посвящен "Удиви, Объясни, Вознагради" (прямая ссылка: СИР) - использование типичных психологических реакций на неожиданное поведение для информирования пользователей)
  3. Включите состояние системы в указанную документацию (используйте данные текущего пользователя в качестве примеров и конкретизируйте документацию, используя данные, которые они могут видеть прямо сейчас)
  4. Ожидать ошибка пользователя.Если есть вероятность, что кто-то попытается выполнить запись в a:\, когда на месте нет диска, то установите тайм-аут, чтобы система могла корректно завершить работу, и запросите другое местоположение.Сохраняйте данные в памяти до тех пор, пока они не будут надежно сохранены на диске и т.д.

Это сводится к двум основным вещам:(1) Программируйте защищенно и (2) Держите пользователя в курсе событий настолько хорошо, насколько это возможно.Если интерфейс системы прост в использовании и ведет себя в соответствии с их ожиданиями, то они с большей вероятностью знать какую кнопку нажать, когда появится раздражающее диалоговое окно.

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

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

Другие советы

Во-первых, использование цвета и значков должно помочь пользователю получить некоторое визуальное представление о серьезности проблемы. Красный цвет указывает на исключительность, желтый - на предупреждение, а белый - на информацию.

Во-вторых, использование глаголы на ваших кнопках диалогового окна дает пользователям представление о том, что они приказывают системе делать, даже если они не читают текст диалогового окна.

Наконец, если вам интересно изучить совершенно другую парадигму уведомлений, ознакомьтесь с информационной панелью или панелью уведомлений, которая реализована в Firefox и Internet Explorer.StackOverflow использует тот же тип механизма для уведомления пользователей, когда они получают новый значок.

Информационная панель не является навязчивой и находится в верхней части экрана, ожидая внимания пользователя.Я думаю, это отличная дизайнерская метафора.

Вот несколько руководств по реализации:

Вот Руководство Корпорации Майкрософт по оформлению диалоговых окон, это также касается концепции Информационной панели.

Сразу же появилась книга Стива Круга Не Заставляй Меня Думать приходит на ум.

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

Поэтому выделите сообщения об ошибках красным, предупреждения желтым и т.д.

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

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

Пара предложений

  1. Используйте коробки только в случае крайней необходимости.
  2. Всегда устанавливайте по умолчанию наименее опасный параметр

A .NET - Камни на ум приходит эпизод (я верю эпизод 338 "Марк Миллер о науке хорошего пользовательского интерфейса") обсуждает именно эту тему.Я думаю, что ключевым моментом во всей этой дискуссии является то, что это базовый дизайн пользовательского интерфейса, зашедший слишком далеко.Там, где модальный язык когда-то был приемлемым средством коммуникации, теперь мы обнаруживаем, что он превратился в программную бестактность.Пользователи понимают, что в 6 случаях из 10 информация недостаточно актуальна, чтобы о ней стоило беспокоиться.В результате они относятся ко всем модальностям одинаково - к выученной беспомощности.Если появляется модальное сообщение и сообщает мне, что произошла ошибка приложения X, и все, что я могу нажать, это "OK" - даже если я не думаю, что это "OK", я изучаю определенное поведение.Я связываю модальности с идеей, что, вероятно, я мало что могу с ними поделать, но если я нажму OK / Yes, то смогу вернуться к тому, что мне нужно.

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

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

Часто разработчики используют модальные диалоговые окна просто потому, что их легко закодировать.

Однако пользователю часто удобнее иметь дело с немодальными уведомлениями.

Одно предложение:

  1. Не используйте диалоговые окна.Особенно модальные диалоговые окна "ОК" / "Отмена".

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

Если вам необходимо использовать диалоговое окно, поставьте описательные подписи к кнопкам внутри диалогового окна.

Например, вместо кнопок "ОК" и "Отмена" попросите их сказать "Отправить счет" и "Вернуться назад" или что-то другое, что уместно в контексте вашего диалогового окна.

Таким образом, текст находится прямо под их курсором, и у них есть хорошие шансы его понять.

Mac OS X делает это большую часть времени. Вот пример изображения.

Редактировать:

Это лучший образ, и я нашел это на сайте Apple Human Interface Guideline Guideline, который является отличным справочником и очень читабелен. Этот документ на этом сайте полностью посвящен диалогам.

Неправильный вопрос."Как бы вы обращались с пользователями" начинается не с того конца.

Правильный вопрос звучит так: "Учитывая, что диалоги отвлекают пользователей от текущей задачи, какие существуют лучшие альтернативы?".

Работая над достижением цели или завершением задачи, мы можем выделить три ситуации:

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

(2) Есть только одно действие, которое вы можете предпринять, или альтернативы не имеют отношения к пользователю.Вообще не беспокойте его.

(3) Существует два или более способа достижения цели.Позвольте пользователю выбирать между ними.Не формулируйте это как вопрос типа "да / нет".(Vista предлагает это как обычный диалог, заменяющий окно сообщения.) Если это вообще возможно, не делайте этот выбор необратимым.

Исключением из этого правила является ситуация, когда пользователь будет ожидать вопрос "да" / "нет".Но на самом деле, если это так, то почему этот вопрос не является частью обычного рабочего процесса?Диалоговые окна выходят за рамки обычного рабочего процесса.

Я думаю, вы, вероятно, захотите прочитать эту статью:"Влияние интенсивных перерывов в согласованном стиле на отладку конечных пользователей", T.J.Робертсон, Джозеф Лоуренс и Маргарет Бернетт, Journal of Visual Languages and Computing 17(2), 187-202, апрель 2006.

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

[Лайтбокс](http://en.wikipedia.org/wiki/Lightbox_ (JavaScript)) модальный диалог кажется эффективным методом в некоторых случаях (деривация web 2.0, но может быть реализован в других контекстах).

Еще один момент:если вы можете отказаться от диалогового окна для Отменить функция (Gmail, например, отстаивал эту концепцию как стандартное поведение веб-приложения), на которую стоит обратить внимание.

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

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

У меня мало терпения к пользователям, которые не читают то, на разработку чего у меня ушло много времени и сил:1) приложение 2) инструкции Помимо этого, если вы не читаете и просто делаете "все, что нужно", вы предоставлены сами себе.Я заявляю об этом заранее.Я разрабатываю свои приложения так, чтобы они были как можно более интуитивно понятными, и все же есть люди, которые звонят в службу поддержки ни с того ни с сего, как ребенок, который ляпнул на уроке, когда этого делать не следовало.Я этого терпеть не могу.Почитайте руководство, почитайте диалоги - ответы на 99% проблем находятся прямо там.

Выше приведено множество полезных советов.Я просто хочу добавить к рекомендациям книги - книгу Джоэла Сплоски "Дизайн пользовательского интерфейса для программистов" стоит прочитать:

http://www.amazon.com/User-Interface-Design-Programmers-Spolsky/dp/1893115941/ref=pd_bbs_sr_4?ie=UTF8&s=books&qid=1222233643&sr=8-4

Единственное, что вы можете сделать, это отключить кнопку OK на 3 секунды.

Firefox делает это, когда вы устанавливаете расширение.

Редактировать: Ладно, некоторых людей это раздражает.Я все еще думаю, что примерно 1 секунды было бы достаточно.Это подавило бы инстинкт мгновенного нажатия кнопки "ОК", присущий людям (включая меня), и заставило бы действовать дважды.Конечно, даже это будет раздражать людей, если ваш диалог - это не то, что им на самом деле нужно читать.

Прежде всего, глупость должна причинять боль, но обычно это не так...

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

Включите в конце диалогового окна тест с несколькими вариантами ответов, на который пользователь должен выбрать ответ, показывающий, что он действительно прочитал и понял текст.Произвольно меняйте порядок выбора, чтобы они не могли всегда выбирать один и тот же вариант.

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

Я называю это проблемой "автопилота".

  1. Не используйте кнопки "ОК", "Отмена" в нижней части экрана.Посмотрите на то, как Vista пытается заставить пользователей принять реальное решение.
  2. Отключите кнопки на несколько секунд, отобразите таймер "Время подумать" / панель выполнения.Таким образом, пользователь не может нажать на автопилот.Пользователи, как правило, находят это очень раздражающим.

Не используйте подтверждение (Вы уверены?Да / Нет), но используйте Отмену.

Не выводите всплывающие предупреждения, которые будут блокирующий, потому что пользователи будут пытаться возобновить работу как можно быстрее, игнорируя сообщение и просто удаляя его щелчком мыши.Используйте что-то вроде информационной панели из Internet Explorer, которая не блокируется.

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

Но если вам действительно необходимо использовать диалоговые окна, попробуйте следующее:

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

Что я думаю о диалоговых окнах?В двух словах:Это тупые и безмозглые твари.Программы, которые их используют, встают у меня на пути и тормозят меня своими глупыми бессмысленными вопросами.Кроме того, часто программы, использующие диалоговые окна, довольно глупы.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top