Интерфейс одной кнопки :: Дмитрий Сатин

Интерфейс одной кнопки

29.04.2006

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

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

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

Итак, у нас есть входящий поток задач и ресурсы, между которыми нужно распределять задачи. Всё просто… Нужно спроектировать интерфейсное решение распределения задач.

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

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

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

Через пару лет я снова оказался перед необходимостью решить эту задачу. И в этот раз решение пришло как-то подозрительно быстро :)

Я начал привычно думать о скорости обновления списка, как задумался над вопросом: “а сколько элементов должно быть в списке?” Понятно, что весь перечень заданий вываливать в виде списка неразумно:

  1. их может быть очень много
  2. вряд ли пользователи будут просматривать его далее 50-го элемента, или 40-го, 30-го… 10-го?

И тут-то случился инсайт!

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

Должна быть просто кнопка… одна кнопка! “Новая задача”. И система сама выберет первую задачу из списка, которая еще никем не выполняется. Так будет решена проблема с коллизиями, и так будет снята необходимость ненужного выбора.

Мда… Такое простое решение искать несколько лет?!

Поделитесь:
  • Print this article!
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • E-mail this story to a friend!
  • FriendFeed
  • LinkedIn
  • Turn this article into a PDF!
  • RSS
  • Twitter
blog comments powered by Disqus