UX для аналитиков

UI-паттерны для промышленных информационных систем

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

По материалам: учебные материалы по бизнес-анализу (каталог типовых задач UI из промышленных информационных систем).

На этой странице

Главные идеи#

Чем отличаются такие системы#

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

Паттерны отображения#

Проблема Паттерн
Сущности вложены до трёх уровней, в них тысячи позиций Иерархическое представление, которое раскрывается по требованию и не перегружает экран
Вложенные структуры внутри таблицы Упрощённое дерево в строках таблицы
Порядок строк важен для выбора, как в очереди Таблица без пагинации, чтобы был виден весь порядок
Большие таблицы Закреплённые шапка, ключевой столбец и нижняя строка (футер)
Итоги нужны при прокрутке Промежуточные итоги или средние значения в нижней строке таблицы
Выделенные строки ушли за пределы экрана при прокрутке Видимый счётчик выделенных строк
Многие кнопки повторяют одно и то же слово Действия сгруппированы под одной общей подписью
Строки или ячейки выделены цветом Легенда, которая объясняет цвета

Функциональные паттерны#

  • Редактирование сущности с вложенной структурой в одном месте, без переходов между экранами.
  • Каскадные поля: поля формы, которые считывают значения других полей и заполняются сами.
  • Зависимые списки: варианты в раскрывающемся списке зависят от значений, выбранных в другом месте формы.
  • Адаптивные формы: структура формы меняется в зависимости от выбранного значения.
  • Упорядочивание строк перетаскиванием с сохранением нового порядка.
  • Порядок выбора: фиксируется не только то, какие строки выбраны, но и в каком порядке.
  • Фильтры по диапазону дат, которые находят записи, чей период пересекается с выбранным диапазоном.
  • Фильтры по скрытым атрибутам: фильтрация по атрибутам, которые не выведены в столбцы.

Случай посложнее: элементы управления, зависящие от статуса#

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

Как применять#

  1. Рано спрашивайте об объёмах и продолжительности работы. Сколько записей на экране? Сколько уровней вложенности? Сколько часов в день человек проводит на этом экране? Ответы определят, какие паттерны нужны.
  2. Явно специфицируйте поведение таблиц: есть ли пагинация, какие части закреплены, какие итоги в нижней строке, правила сортировки и фильтрации, правила выделения — включая порядок выбора, если он важен.
  3. Специфицируйте зависимости в формах. Для каждого зависимого поля или списка укажите поле-источник и правило. Для этого хорошо подходит таблица решений.
  4. Определите смысл диапазонов дат. «Пересекается», «начинается внутри» и «целиком лежит внутри» дают разные результаты, поэтому укажите, что именно вы имеете в виду.
  5. Привяжите поведение, зависящее от статуса, к модели состояний. Перечислите, какие действия разрешены в каком статусе, и договоритесь, где в решении будет находиться это правило.
  6. Прототипируйте на реалистичных объёмах данных. Таблица, которая хорошо выглядит на десяти строках, может не справиться с десятью тысячами.

Чек-лист для ревью#

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

Пример#

«Мастерская», вымышленная сеть веломастерских, делает для управляющих экран заказа запчастей. В каталоге три уровня (модель велосипеда, узел, запчасть) и несколько тысяч запчастей. Аналитик специфицирует:

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

Затем прототип тестируют на полном каталоге, а не на выборке.

Источники и что почитать#

  • Учебные материалы по бизнес-анализу (практические примеры и шаблоны): каталог типовых задач UI и UX из промышленных информационных систем.