Автор: Андреева Е. Г.
Источник: Политехнический молодежный журнал. 2016. № 3
Андреева Е. Г. - Проектирование эффективного пользовательского интерфейса Рассмотрены особенности и принципы проектирования эффективного пользовательского интерфейса, принципы на детализациях, поведенческие и интерфейсные принципы сокращения трудозатрат, а также методы разработки пользовательских интерфейсов
Интерфейс, пользователь, проектирование, эффективность, метод, интерфейсный принцип, поведенческий принцип
С развитием высоких технологий актуальным стало создание эффективного человеко-машинного интерфейса. Однако разработчики программных продуктов в погоне за технологическим преимуществом нередко забывают о проектировании взаимодействия с пользователем. Казалось бы, технический прогресс должен облегчить жизнь человека, однако такие программные продукты становятся все более сложными в использовании и не приносят ожидаемого удовлетворения пользователю. Разработчикам не стоит забывать о том, что программа это лишь инструмент для достижения определенных целей, поэтому важна не только эффективность работы программы, но и производительность в совокупности с пользователем. Удобный и понятный интерфейс позволяет пользователю более продуктивно работать, поэтому грамотное проектирование – путь к лояльности потребителей и успеху бизнеса. Отметим также, что нередко пользователи воспринимают более удобный продукт, как более функциональный, в то же время сложное и неудобное взаимодействие создает ощущение перегруженности всего продукта.
Немногие из известных методов проектирования [1–3] включают средства эффективного и систематического преобразования знаний, собранных в ходе исследований, в детальную спецификацию интерфейса. Одна из причин кроется в том, что проектировщики выключены из цикла исследований, им приходится полагаться на чужие представления о поведении и желаниях пользователей. Другая причина состоит в том, что немногие подходы фиксируют поведение пользователей в пригодной для определения продукта форме. Большинство методов предоставляют информацию на уровне задач и не содержат информацию о целях пользователей. Такие данные подходят для создания компоновочных схем, моделирования рабочего процесса и преобразования функций в элементы пользовательского интерфейса, но не для определения общей инфраструктуры, отражающей то, чем продукт является, что делает и насколько соответствует различным потребностям пользователей. Для преодоления этого разрыва требуется четкий систематизированный процесс создания моделей пользователей, определения требований к пользовательскому интерфейсу и преобразования их в общую концепцию взаимодействия. Задача целеориентированного проектирования – устранить или минимизировать существующий в процессе разработки цифровых продуктов разрыв между исследованиями пользовательской аудитории и проектированием, эффективно сочетая новые и уже известные подходы [3].
Целеориентированное проектирование сочетает в себе методы этнографии, интервьюирование заинтересованных в проекте лиц, маркетинговые исследования, моделирование требований пользователей, проектирование на основе сценариев, а также базовый набор принципов и шаблонов проектирования взаимодействия пользователя с интерфейсом. Такое проектирование позволяет принимать решения, соответствующие потребностям и целям пользователей, с одной стороны, бизнес-требованиям и технологическим ограничениям, с другой. Процесс можно разделить на несколько этапов: исследование, моделирование, выработка требований, определение общей инфраструктуры, детализация и сопровождение.
На данном этапе для сбора качественных данных о существующих и/или потенциальных пользователях продукта применяют этнографические методы полевого наблюдения и полевого интервью. Кроме того, при необходимости можно провести конкурентный анализ, маркетинговых исследований и обзор статей о технологиях, материалов по стратегии брендинга, а также индивидуальное интервьюирование разработчиков, специалистов в предметной области и экспертов по технологии.
На этапе моделирования поведенческие шаблоны и шаблоны рабочих процессов, сформирована на основе анализа результатов полевых исследований и интервью, обобщают в виде моделей предметной области и моделей пользователей [3]. Модели предметной области могут включать информационные потоки и диаграммы рабочих процессов. Пользовательские модели, или персонажи, – это подробные и структурированные архетипы пользователей, которые представляют собой различные устойчивые комбинации поведенческих моделей, склонностей, взглядов, целей, мотивов, выявленные на стадии исследований.
Методы проектирования, применяемые проект ными командами на стадии выработки требований [3], обеспечивают связь между пользовательскими и всеми прочими моделями проекта. Здесь используют сценарные методы проектирования с одним важным дополнением: сценарии концентрируются не на абстрактных задачах пользователей, а на достижении целей и удовлетворении потребностей конкретных персонажей. Персонажи помогают понять, какие задачи действительно важны и почему, что позволяет, минимизировать число задач (усилий), но при этом увеличить отдачу. Они становятся главными участниками сценариев, и проектировщики изучают пространство возможных решений посредством так называемой ролевой игры. Для каждого интерфейса/ключевого персонажа процесс проектирования включает анализ данных, связанных с персонажем, и анализ функциональных потребностей (выраженный в терминах объектов, действий и контекстов), сформированных и ранжированных с помощью целей персонажей, их моделей поведения, а также особенностей взаимодействия с другими персонажами в различных контекстах.
Команда проектировщиков создает общую концепцию продукта, определяет поведение, графическое оформление и физическую форму [3]. Проектировщики синтезируют инфраструктуру взаимодействия при помощи контекстных сценариев в сочетании с двумя важ- нейшими методологическими инструментами. Один из них – это использование общих принципов проектирования взаимодействия, определяющих уместность поведения системы в контексте различных ситуаций. Другой – использование шаблонов проектирования взаимодействия, которые являются решением соответствующих проанализированных проблем.
Этап детализации схож с этапом определения инфраструктуры, но акцент делают на деталях реализации. Проектировщики взаимодей- ствия фокусируются на согласованности задач, используя ключевые (пошаговые) маршруты, а также проверочные сценарии с максимально подробными путями прохождения по пользовательскому интерфейсу [3]. Графические дизайнеры определяют начертание и размеры шрифтов, пиктограмм и других визуальных элементов с очевидным ожидаемым назначением и четкой визуальной иерархией, чтобы в итоге обеспечить пользователю комфортное взаимодействие с продуктом. Промышленные дизайнеры принимают окончательное решение по вопросу выбора материалов и совместно с инженерами прорабатывают схемы сборки и другие технические вопросы. Завершает этап подробная проектная документация – спецификация формы и поведения.
Принципы проектирования взаимодействия – это обобщенные рекомендации, ориентированные на особенности, форму и содержание продукта. Они поддерживают проектирование такого поведения продуктов, которое служит потребностям и целям пользователей, а также вызывает у них положительные эмоции при работе с этими продуктами.
Принципы применяют на всем протяжении процесса проектирования, помогая преобразовывать возникающие в ходе разработки сценариев задачи и требования в формализованные структуры и поведенческие реакции интерфейса.
Действуют принципы проектирования на нескольких уровнях детализации: от общей практики проектирования взаимодействия до конкретной работы с интерфейсом. Границы между уровнями размыты, однако принципы проектирования взаимодействия можно объединить в следующие группы:
Большинство принципов проектирования пользовательского интерфейса не привязаны к конкретной платформе, хотя некоторые, например, мобильные устройства и системы реального времени, требуют особого подхода. Связано это может быть с ограничениями размера экрана, способами ввода и контекстом применения.
Поведенческие и интерфейсные принципы сокращения трудозатрат. Один из основных принципов – оптимизация опыта пользователя, взаимодействующего с системой [4]. Если речь идет об офисных инструментах и других продуктах, неориентированных на развлечения, такая оптимизация опыта означает минимизацию трудозатрат. Сокращать необходимо следующие виды работ:
• когнитивную работу – понимание поведения продукта, а также текста и организующих структур;
• мнемоническую работу – запоминание поведения продукта, векторов команд, паролей, названий и расположения объектов данных и элементовуправления, а также других связей между объектами;
• работу органов зрения – поиск стартовой точки на экране, поиск одного объекта среди многих, расшифровка визуальной планировки, выявление различий между элементами интерфейса, имеющими цветовую кодировку;
• физическую работу – число нажатий на клавиши, перемещения мыши, использование жестов (щелчок, перетаскивание, двойной щелчок), переключение между режимами ввода, количество щелчков для осуществления навигации.
Большинство описанных принципов направлены на минимизацию работы и в то же время на обеспечение более качественной обратной связи и лучшего информирования пользователя в конкретной ситуации.
Создавать пользовательский интерфейс можно вручную и с помощью графического редактора [5]. В первом случае необходимо написание кода, который отвечает за создание элементов интерфейса, обрабатывающих пользовательские события. При этом осуществляется максимальный контроль создания интерфейса и обработки событий. Во втором – используют программный продукт, который позволяет нарисовать интерфейс, одновременно наблюдая за тем, как процесс отображается на экране монитора. Существуют два основных метода создания эффективного пользовательского интерфейса: классический и использование специализированных языков и сред.
На основе собранных пользовательских требований проектировщики создают макеты будущего интерфейса в виде прототипов, которые графически представляют внешний вид интерфейса [2, 5]. Частью прототипа является описание поведения интерфейса, возникающее в процессе взаимодействия пользователя с продуктом, либо эмуляция поведения продукта. На основе такой спецификации дизайнеры создают графический стиль продукта, а разработчики его реализуют. У каждого участника процесса имеется собственная зона ответственности и компетенции. Данный метод оптимален для вебприложений и классических настольных (GUI) приложений, где давно устоялись модели взаимодействия, построенные на основе фиксированного числа элементов управления. При этом он плохо совместим с современными Ajax приложениями, особенно для RIA.
Данный метод основывается на разделении внешнего вида пользовательского интерфейса от бизнес-логики программы. Основано оно на специальных языках описания интерфейса [3, 6, 7] – XAML от Microsoft, MXML от Adobe, ZUL от Mozilla и др. В этих текстовых языках описан внешний вид элементов (в векторном формате) так, что интерфейс можно создавать в любом редакторе. Так с помощью языка XAML можно задавать не только расположение элементов на экране (в векторном виде), но и всевозможные трансформации. Для редактирования XAML применяют специальные пакеты, например Microsoft Expression Blend (Blend).
Анализируя приведенные данные можно сделать вывод, что проектирование интерфейса, основанное на понимании целей и мотивов пользователей, является наиболее эффективным.
1. Проектирование пользовательского интерфейса // Издательский дом «Вильямс». URL: http://www.williamspublishing.com/PDF/5-8459-0276-2/part7.pdf (дата обращения: 05.03.2016).
2. Исследование методов построения пользовательских интерфейсов // Библиофонд. URL: http://www.bibliofond.ru/view.aspx?id=515584 (дата обращения: 19.03.2016).
3. Купер А., Рейман Р., Кронин Д. Алан Купер об интерфейсе. Основы проектирования взаимодействия / Пер. с англ. СПб: Символ-Плюс. 2009. 688 с.
4. Раскин Д. Интерфейс: новые направления в проектировании компьютерных систем / Пер. с англ. СПб.: Символ-Плюс. 2009. 149 с.
5. Методы и средства разработки пользовательского интерфейса // Студопедия. URL: http://studopedia.org/3-158804.html (дата обращения: 17.04.2016).
6. Разработка пользовательских интерфейсов // Pandia. URL:
http://pandia.ru/text/78/247/74988.php (дата обращения: 16.04.2016).
7. Мандел Т. Разработка пользовательского интерфейса. М.: ДМК Пресс. 2001. 416 с.