Живая система

в 11:17, , рубрики: user experience design, Дизайн в IT, дизайн интерфейсов, интерфейсы, метки: ,

У меня появилась хорошая метафора — «живая система». Система должна отзываться на действия пользователя, как живой организм.

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

Тривиальный уровень

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

  • Наведение на элемент — слегка увеличивается
  • Захват — меняет цвет, приподнимается над основным фоном (тень) и поворачивается
  • Движение — ничего особенного не происходит
  • Наведение на цель — цель подсвечивается, элемент меняет цвет
  • Отпускание — элемент меняет цвет и постепенно возвращается в нормальное состояние

Все это усиливает ощущения от работы с системой, кажется, что ты имеешь дело с чем-то реальным, вещественным.

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

Уровень эмоций и эмпатии

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

Рассмотрим несколько состояний. Скажем, у нас в системе есть баги и таски. Соответственно, бывают состояния, когда нет багов и нет тасков. Когда нет багов — это хорошо. Система должна радоваться и говорить «Класс! Ни одного бага не нашла». Если нет тасков, то система может подбодрить «Вся работа сделана. Можно почитать Хабр» или потроллить «Что, нечем заняться? Неужели не осталось никаких важных дел? Может добавить новое?» Добавить новое — ссылка на добавление новой задачи.

Другой вариант, по результатам поиска система выдала 500 открытых багов. Тут грех не позлорадствовать «У вас 500 багов. Ого!»

Назначаете вы задачу на Ваню. А на Ване уже и так 19 задач. Система может пожалеть его «На Ване 19 задач и вряд ли он все успеет сделать скоро. Может, переназначим что-нибудь на других людей?» Соответственно, ссылка на список Ваниных задач.

Чтобы делать такие вещи, надо очень хорошо понимать сценарии использования и думать о конечном пользователе. А то у нас везде «0 items found». Скука смертная…

Классный пример живой системы — Siri. Конечно, там голосовой интерфейс и все дела. Но я уверен, в обычное веб-приложение тоже можно вдохнуть душу. Чем мы и собираемся заняться в самое ближайшее время.

Автор: 9zloy

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js