Матчасть

Делай, а не спрашивай

Одной из типовых задач проектирования интерфейсов является создание механизмов выполнения различных операций над объектами-сущностями: создание, просмотр, редактирование, удаление.

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

Например, коллега Павел Коноплицкий в своем посте «Делая интернет-платежи простыми и удобными. Перепроектирование системы A1Pay» (эта же статья для тонких ценителей хабрабабра: http://habrahabr.ru/blogs/ui/123859/) рассказывает нам о своем опыте перепроектирования уже работающего интернет-ресурса. Среди прочих проблем, присутствовавших в интерфейсе, Павел выделил отсутствие подтверждения при удалении объектов.

Вот, что он пишет:

У важных операций, когда данные не могут быть восстановлены (например удаление), отсутствовало подтверждение. Было сформулировано следующее правило:

Подтверждение удаления

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

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

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

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

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

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

Вконтакте-Удаление поста

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

Реклама
Стандартный

  1. Безвозвратное удаление — плохая практика. Раньше на Франтобе объявления не удалялись, а помещались в архив (спомощью ajax). Но многие пользователи стали жаловаться на слишком большой архив.

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

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

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

    Здесь кнопка-крестик одновременно выполняет две функции:
    1. Стереть пост — выполнение основной функции.
    2. Содержит в себе дополнительный функционал: защита от спама, скрытие всех постов этого пользователя и проч. — экономия экранного пространства за счет скрытия редко используемых возможностей.

    • В Google+ этот момент решен по-другому: вместо крестика показана стрелочка, в отличии от facebook’а заранее намекающая на выпадающее меню.

      Мне кажется такое решение более логичным и последовательным.

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход /  Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход /  Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход /  Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход /  Изменить )

Connecting to %s