Это вторая часть из пяти статей. Вот часть первая.

Последовательность - одна из самых неправильно понимаемых концепций в дизайне продукта. Как Джаред Спул писал еще в 2005 году,

Проблема с последовательным мышлением заключается в том, что эти мысли сосредоточены исключительно на дизайне, и пользователь может потеряться. "Согласуется ли то, что я создаю с другими вещами, которые мы разработали (или разработали другие)?" это неправильный вопрос. Вместо этого правильный вопрос: «Помогут ли текущие знания пользователя понять, как использовать то, что я разрабатываю?»

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

Что значит соответствовать ожиданиям пользователя в контексте? Сам контекст постоянно меняется, что означает, что мы пытаемся достичь чувства последовательности, реагируя на что-то изначально непоследовательное.

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

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

Иногда режимы неизбежны, и они не всегда плохи. Когда я пишу этот пост, я перемещаю мышь, курсор перемещается по экрану. Когда я играю в Minecraft и делаю то же самое, весь мой взгляд меняется, когда я смотрю на виртуальный мир. Я нахожусь в «игровом режиме» и приспосабливаюсь, не задумываясь.

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

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

Вот простой пример. Amazon Kindle позволяет нажимать, удерживать и перетаскивать текст на экране, открывая такие параметры, как определения словаря, записи Википедии и выделение. До недавнего времени это выглядело так:

Для определений и контекстной информации Kindle предоставляет ряд карточек. Чтобы выделить выбор на потом, нажмите кнопку «Выделить».

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

Информационные карточки бесполезны для более длинного выбора. Итак, Amazon правильно предполагает, что я хочу выделить фразу, и просто делает это. Это умно, правда? Если я выберу абзац, я почти наверняка хочу выделить его; если я выберу только слово, это, вероятно, поиск. Это здорово, когда можно создать «умную» функцию с помощью простой эвристики.

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

Ошибки делают это еще более проблематичным. Выбор на Kindle неточен: легко пропустить, случайно выбрать лишнюю строку, превратив выделение из двух слов в двенадцать. Поскольку такие ошибки распространены (и разочаровывают), их должно быть легко прервать или исправить. Но новый адаптивный пользовательский интерфейс Amazon означает, что действие «прервать» непредсказуемо: есть два варианта (выделить или просто щелкнуть мышью), каждый из которых дает противоположный результат.

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

В нашем примере с Kindle Amazon создала два различных режима:

  1. Выберите ‹4 слова: Показать определения и кнопку« Выделить ».
  2. Выберите ≥4 слов: автоматическое выделение и отображение «Отменить».

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

  1. Выбрать ‹4 слова: Начал засыпать и нажал на экран.
  2. Выберите ≥4 слов: предназначены для уточнения определения слова и пропущены.
  3. Выберите ‹4 слова: Требуется выделить три слова.

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

Мышечная память и привыкание имеют значение и в немодальных ситуациях. Вот последняя версия главного экрана Xbox One. Его самая заметная особенность - это список приложений и игр, в данном случае Netflix, Amazon Video и Destiny:

Посмотрите, что происходит после того, как я открываю Amazon Video:

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

Apple представила собственную адаптивную программу запуска в iOS 9 с лучшим подходом:

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

Но у поиска есть есть собственный компонент мышечной памяти: тянуть вниз, печатать, искать результаты. И дизайн Apple это поддерживает. Когда ввод сфокусирован, а клавиатура поднята, ничто не мешает вашей работе. Если нужное приложение есть в интеллектуальной панели запуска и вы заметили, это сэкономит вам немного усилий; в противном случае никакого вреда.

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

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

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

Как же тогда нам создать отличный опыт, который также будет умным и адаптивным? Признавая, что алгоритм и UX идут рука об руку, как всегда; что тип адаптивности, который мы создаем, является такой же частью опыта, как и закругленные углы на кнопках.

Чтобы достичь этого, мы должны научиться совместно развивать наши интеллектуальные алгоритмы с нашим UX. Чтобы перестать спрашивать: «Каков правильный UX для этой интеллектуальной системы?» и начать спрашивать: «Что мы должны построить, чтобы удовлетворить эту потребность пользователей? Какой тип интеллекта ему пригодится? »

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

Я расскажу, как это может сработать, в моем следующем посте, но мы все еще работаем над этим как отрасль, и я приветствую ваши мысли. А пока спасибо за чтение.