Размышляя об этой проблеме, я осознал, что в жизни присутствует интересный саморегулирующий механизм: если в компании есть человек, понимающий в проектировании интерфейсов, или проводилось хорошее исследование пользователей, то естественным образом добавят только нужные настройки. Иначе разработчик страхуется и добавляет столько настроек, сколько сможет придумать, и, как ни странно, именно это дает возможность воспользоваться этим продуктом (подобрав нужную комбинацию настроек) тем людям, кому продукт действительно нужен, вопреки отсутствию какого-либо проектирования интерфейса.
Во-первых, из нескольких вариантов не ясно, какой выбрать. Тут нужно сделать одну простую вещь задуматься о пользователях. «Каким вариантом они будут пользоваться? Будет ли им достаточно только первого варианта? Только второго?» это простые и очевидные вопросы, однако меня приводит в ужас, что даже когда на них можно получить ответ (весьма часто), в реальности люди, отвечающие за интерфейс продукта, их просто не задают, ведь легче добавить настройку, это снимает ответственность и для этого не надо думать. По уму же, если варианты эквивалентны с точки зрения использования, то нужно выбрать один, реализовать только его и не парить мозг пользователям (на эту тему хорошо рассуждают в [1]), а настройку делать, если варианты разные с точки зрения использования и пользователям будут нужны оба. Кстати, отвечая для себя на этот вопрос, можно развеять идеалистическую мечту сделать одну программу для всех пользователей разные пользователи и разные задачи часто требуют взаимоисключающих решений, и тут уже настройки не спасут настолько разные им нужны продукты.
Основная проблема непонимание целей и задач пользователя приводит к тому, что разработчик (в широком смысле компания, производящая программный продукт) принимает неверное решение по поводу той или иной настройки: добавляет ненужное и не добавляет нужного. Нехватка настроек плохо, но хотя бы не фатально, после релиза пользователи поправят начнут требовать настройку. А с добавлением лишних настроек уже интереснее. Назвав настройки серебряной пулей ПО в начале статьи, я имел в виду следующее распространенное заблуждение: считается, что если для реализации некоторой функциональности есть несколько способов, и не ясно, какой выбрать, то выбор следует дать пользователю с помощью настройки. Кажется, что такой вариант беспроигрышен, ведь что бы пользователю ни было нужно, он сам сможет выбрать нужный способ, а с нас взятки гладки. Давайте разбираться в этом заблуждении подробно.
Чтобы разобраться, давайте задумаемся, откуда берутся настройки? Теоретически, настройки это способ для разработчика приспособить программу под разные сценарии использования. Пользователи разные, одному нужно одно, другому другое, и если различия в сценариях незначительные, выбор между ними отдается на откуп пользователю. Отсюда следует, что чтобы сделать правильный экран настроек, надо знать цели и задачи пользователей. Это в теории. Что же происходит на практике?
Что такое настройки, все себе более или менее представляют. Любой пользователь компьютера рано или поздно с ними сталкивается. Только не всегда победителем из этого столкновения выходит пользователь. Основных проблем, с которыми приходится иметь дело, три: нужную настройку трудно найти, нужной настройки нет, и не понятно, что делает та или иная настройка.
Добрый день, уважаемые хабравчане! Продолжаю радовать вас уникальными статьями по пользовательским интерфейсам с живыми примерами на русском языке. Сегодня мы будем обсуждать серебряную пулю разработки программного обеспечения настройки приложений.
Покажи мне свои настройки, и я скажу, кто ты
Покажи мне свои настройки, и я скажу, кто ты / Хабрахабр
Комментариев нет:
Отправить комментарий