Именно поэтому в процессе внедрения бизнес-приложений мы большое внимание уделяем процессу построения пользовательских интерфейсов и выстраиванию пользовательского опыта в целом (UX).
Проектирование UI – это не разовая фаза проекта, это непрерывный итерационный процесс, в который вовлечены бизнес-пользователи, UX-инженеры, дизайнеры и программисты. К слову, участие программистов крайне важно с точки зрения раннего предупреждения о невозможности реализации тех или иных требований (например, если они не укладываются в общую архитектуру).
В ходе работы над UX мы всегда проводим исследования, опираясь на данные от бизнес-пользователей. Ниже приведены некоторые методы, которые мы используем:
- анкетирование и интервью – после внедрения релиза мы просим пользователей по 10-балльной шкале оценить наше приложение по разным критериям (удобство, скорость работы, интуитивность функций, простота, дизайн и т.д.);
- наблюдение за работой пользователей – мы непосредственно смотрим, как работает пользователь (лучше всего наблюдать «в бою»). С помощью этого метода можно выявить места для оптимизации и сокращения ненужных действий (поскольку в этот момент отчетливо проявляются основные сценарии работы – то, что можно назвать конвейером);
- A/B-тестирование – пользователи разделяются на группы, и каждая пытается выполнить определенные действия в одном и том же приложении. Суть метода состоит в том, что приложение для каждой группы отличаются, но лишь одним элементом (например, для группы А кнопка «OK» – слева, а для группы B – справа). Затем мы сравниваем результаты теста (какая группа выполнила действия быстрее/эффективнее) и оставляем выигрышный вариант. Существует мнение, что разработать удобный пользовательский интерфейс с первого раза невозможно. Это действительно так, именно поэтому крайне важно настроить процесс обратной связи как от тестовых групп, так и от пользователей непосредственно в ходе эксплуатации;
- методика «Попроси бабушку» – мы просим человека, вообще не знакомого с бизнес-процессом, после краткого инструктажа выполнить действия в системе. Это помогает улучшить приложение с точки зрения интуитивности и простоты, что, может, и не столь важно для уже работающих пользователей, однако сослужит свою службу для вновь прибывших сотрудников, поскольку порог входа в приложение для них будет минимальным;
- анализ карты кликов и записей сессий пользователя – с помощью специальных средств мы записываем все действия пользователей, включая клики, скроллинг мышью, нажатия клавиш, а потом выявляем проблемные точки. Это помогает не только понять, что нужно исправить прямо сейчас, но и анализировать наши UX-гипотезы в ретроспективе, поскольку данные можно собирать с самого первого релиза;
- метод «Чукотский тест» – мы просим пользователя в процессе работы вслух комментировать, что он сейчас видит, о чем думает, что чувствует? Эмоции в данном случае очень важны, именно эту информацию следует проанализировать самым внимательным образом. Если в какой-то момент пользователю хочется разбить экран монитора (причем о голову разработчика), с этим нужно разбираться в первую очередь.
Крайне важно учитывать ключевые «болевые точки» пользователей. Думать о том, что для них важнее всего? Возможно, это скорость ввода информации, а может, для них важнее удобство просмотра (вроде наличия на одном экране всего самого важного без необходимости перехода по вкладкам). В ходе первичного анкетирования и интервью мы задаем пользователям ряд вопросов, позволяющих выявить ключевые требования, которые будут заложены в принципы и гайдлайны.
Ниже приведены некоторые принципы, которые мы обязательно учитываем во всех случаях:
- Какого минимального количества кликов можно достичь для реализации пользовательского сценария?
- Пользователи не читают текст, как можно его минимизировать?
- Что является основным действием на данном экране? Элементы пользовательского интерфейса действительно подводят пользователя к нему, а не к какому-то другому действию?
- Реакция приложения на действия пользователя мгновенна или нет (независимо от сложности запросов в базу данных)?
Ожидание, если без него не обойтись, должно сопровождаться индикацией. Это и называется отзывчивостью – пользователь всегда должен чувствовать, что приложение не зависло.
- Как мы управляем вниманием пользователя?
Мы используем анимацию по назначению: чтобы привлечь внимание пользователя к событию или элементу, – или просто для красоты?
- Учитываем ли мы разницу в предпочтениях пользователей? Предусмотрели ли мы несколько способов сделать что-либо?
К примеру, при нажатии на Esc диалоговая форма закроется или это можно сделать только мышью?
Набор принципов (универсальных и специфичных для конкретного заказчика) в каждом проекте превращается в своего рода инструкцию. Инженер UX и специалист по тестированию (QA) при работе руководствуются подобной инструкцией как памяткой или, скорее, чек-листом. Это позволяет на выходе получить удобные, понятные и дружественные интерфейсы, не забывая о главной составляющей автоматизированной системы – о человеке.