Не позволять пользователям делать ошибки, а не давать им гибкость - PullRequest
3 голосов
/ 14 апреля 2009

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

Кто-нибудь еще сталкивался с подобной дилеммой передачи власти в руки пользователей? Как ты это решил? и каков был результат?

Ответы [ 10 ]

5 голосов
/ 14 апреля 2009

Обычно я не люблю подписываться на мысль, что все пользователи глупы, но есть правило, которое все еще можно применить:

Если вы дадите им возможность, они сломают ее

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

4 голосов
/ 14 апреля 2009

Я настоятельно рекомендую вам прочитать Джоэла: «Управление вашей средой делает вас счастливыми» , который можно охарактеризовать как трактат по дизайну пользовательского интерфейса, но на самом деле о юзабилити с добавлением здоровой психологии.

Я имею в виду раздел Выбор :

Каждый раз, когда вы предоставляете опцию, вы просите пользователя сделать решение.

Это то, с чем я полностью согласен. Многие разработчики, менеджеры по продуктам и т. Д. Выбирают легкий путь и вместо того, чтобы выяснить, что на самом деле нужно пользователям, они просто дают им выбор. Вы видите это в корпоративных раздуваемых приложениях, таких как Clearcase или PVCS, где есть так много вариантов - 90% из которых вы бы никогда не изменили - указывая на то, что дизайнеры пытались сделать все это для всех людей, а не делать одну или две вещи исключительно хорошо.

Вместо этого он просто плохо работает.

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

2 голосов
/ 14 апреля 2009

Интересное время для вашего вопроса. В США это неделя подоходного налога. Заполнение старых 1040 и связанных подчиненных форм должно дать нам некоторое сочувствие к тому, что переносят пользователи.

Уроки, которые я извлекаю:

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

Объедините связанные вопросы (при условии, что они обычно вводятся одним и тем же лицом, используя данные, наиболее вероятно имеющиеся в том же месте и времени, что является определением связанных для эти цели).

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

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

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


Да, это сложнее программировать. Обними его.

2 голосов
/ 14 апреля 2009

Лично мне нравится модель TurboTax (http://turbotax.intuit.com/).. При создании налоговой декларации я получаю простой мастер «скажи мне как пять», который шаг за шагом проведет меня через весь процесс , но Я могу выйти из процесса в любое время и использовать более продвинутые функции, вернувшись к процессу позже.

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

1 голос
/ 23 апреля 2009

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

Я бы так не сказал. Для меня это скорее вопрос ожиданий пользователей, и вопрос в первую очередь будет: Как я могу оправдать все важные ожидания пользователей (даже если они конфликтуют друг с другом), не повреждая приложение?

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

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

1 голос
/ 14 апреля 2009

Существует как минимум два способа создать хороший программный продукт:

  1. Сосредоточьтесь на узком наборе функциональных возможностей и очень хорошо реализуйте эти функциональные возможности.

  2. Создайте свою систему так, чтобы она была настраиваемой (в идеале, с помощью сценариев). Если вы правильно настроите базовую систему, вам будет легко предоставить базовую функциональность «просто сделай, что я хочу», без вариантов. верх слоя настройки.

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

0 голосов
/ 14 апреля 2009

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

0 голосов
/ 14 апреля 2009

Мне нравится подход Firefox к этому. Основные опции доступны в меню опций, все остальное в разделе: config. Таким образом, у вас простой интерфейс и невероятная гибкость, если вам это нужно.

0 голосов
/ 14 апреля 2009

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

0 голосов
/ 14 апреля 2009

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

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

Все дело в том, кто их получит.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...