8 рекомендаций по проектированию сложных приложений

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

Что такое сложное приложение?

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

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

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

  • Дают высококвалифицированным пользователям специальные знания;
  • Помогают пользователям ориентироваться в больших базовых наборах данных и управлять ими, а также обеспечивают расширенное понимание или анализ данных;
  • Поддерживают решение проблем или конечных целей с неизвестными или переменными базовыми задачами;
  • Требуют передачи или сотрудничества между несколькими ролями, инструментами или платформами;
  • Снижают риски выполнения важных задач, когда на карту поставлены большие потери (например, доход или даже жизнь).

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

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

1. Продвигайте обучение через действие

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

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

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

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

В этом модуле редактирования информационной панели Salesforce элемент информационной панели предварительно просматривается и обновляется в реальном времени справа, когда пользователь устанавливает параметры и фильтры для данных слева.

2. Помогите пользователям перейти на более эффективные методы

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

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

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

Задача UX-разработчиков — помочь пользователям перейти на более эффективные методы, найдя ненавязчивые способы более быстрого и эффективного обмена информацией для поставленных задач.

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

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

3. Обеспечьте гибкие и плавные пути

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

  • физический интерфейс, с которым взаимодействуют пользователи;
  • некоторый тип линейного процесса, который они завершают с течением времени.

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

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

Mastercard Test & Learn, аналитическое приложение с самообслуживанием, использует мастер установки, чтобы направлять пользователей через сложные задачи, но обеспечивает гибкость с помощью интерактивной карты последовательности, которая позволяет пользователям перемещаться вперед и назад через шаги последовательности по своему усмотрению.

4. Помогите пользователям отслеживать действия и мыслительные процессы.

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

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

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

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

TreeAge — программное обеспечение для моделирования, которое позволяет пользователям вводить открытые комментарии во время анализа и моделирования данных (вверху), к которым можно будет получить доступ позже (внизу).

5. Контролируйте переход между несколькими инструментами и рабочими пространствами

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

  • для сбора данных из онлайн-баз;
  • для поиска статей или другой внешней документации;
  • для создания собственных заметок и комментариев в других приложениях, когда основное программное обеспечение не поддерживает это действие.

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

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

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

Microsoft Power BI — приложение для бизнес-аналитики. Оно предоставляет функцию копирования визуальных элементов в виде изображений, позволяя пользователям быстро записывать и вставлять визуализации данных во внешние приложения.

6. Уменьшите беспорядок, не уменьшая возможностей

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

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

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

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

7. Легкость перехода между основной и вторичной информацией

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

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

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

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

8. Сделайте важную информацию визуально заметной

Многие задачи требуют от пользователей сложных приложений высокого уровня визуального поиска и концентрации.

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

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

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

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

Заключение

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

  1. Поощряйте обучение на практике.
  2. Помогите пользователям использовать более эффективные методы для выполнения своих задач.
  3. Обеспечьте гибкие и плавные пути для рабочих процессов.
  4. Помогите пользователям отслеживать действия и мыслительные процессы.
  5. Контролируйте переход между несколькими инструментами и рабочими пространствами.
  6. Уменьшите беспорядок, не уменьшая возможностей и функционала.
  7. Упростите переход между основной и вторичной информацией.
  8. Сделайте важную информацию визуально более заметной.
Источник:
nngroup.com
arrow