Помогите спроектировать интерфейс
От: WinterMute Россия http://yarrr.ru
Дата: 18.10.05 10:45
Оценка:
Нужен ваш свежий взгляд:
Есть программа для резервного копирования диска (а-ля Acronis True Image), в новой версии, кроме всего прочего, планируется улучшить интерфейс. Сейчас интерфейс построен на основе визарда: на первой странице пользователь выбирает задачу (создать образ, скопировать диск на диск и т.д.), затем проходит по страницам задавая все необходимые параметры. После выполнения задачи пользователь попадает на первую страницу.

А теперь слайды (как оно сейчас):

(первая страница)


(типичная страница с выбором параметров):


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

* например: на первой странице пользователь выбирает диск, который нужно сохранить в архив, на второй имя файла для архива. Вдруг, во время выбора файла, человек засомневался, что правильно выбрал диски, чтобы рассеять свои опасения ему придётся вернутся на страницу назад, что не есть гут.


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



Основные фичи нового решения:

Но и здесь не всё гладко: парамеры прописанные под пунктами навигации могут занимать разное место в зависимости от их значения, например: если пользователь выберет очень много дисков, то их перечисление придётся продолжить на второй строчке, из-за этого, все пункы навигации сдвинутся вниз -- такая "пляска" управляющих контролов, хоть и не критична, но не радует. Это раз. Два: хочется сделать дополнительное окошко, в которое будут выводится a) некритичные сообщения пользователю (замена MessageBox c кнопкой OK) б) содержание всех MessageBox'ов с результатом выбора (часто бывает, что человек жмёт OK, Cencel, etc на автомате, так он хотя-бы будет в курсе, какой выбор он сделал), НО, для этого окошка банально не хватает места, запихать его налево довольно рисковано, предыдущие две панели могут занимать довольно много места по высоте.

Интересны ваши мнения на счёт нового варианта.
Re: Помогите спроектировать интерфейс
От: Sergei I. Gorelkin Россия  
Дата: 18.10.05 14:30
Оценка: +1
Здравствуйте, WinterMute, Вы писали:

<поскипано>

WM>Интересны ваши мнения на счёт нового варианта.


А нужен ли визард?
Backup — это такая операция, которую надо один раз сконфигурить, а потом выполнять одним нажатием. Или вообще без нажатий — по расписанию.
Потом, вся основная функциональность этой программы подчиняется понятию "что"-"куда". Создание образа диска — задаем диск ("что") и файл образа ("куда"). Восстановление — они меняются местами. Копирование раздела — опять же "что-то" копируется "куда-то". Монтирование — то же самое. Так почему бы в первом окне каждой функции не показывать крупным планом "что" и "куда" (причем уже заполненные теми значениями, которые были заданы в предыдущем сеансе), и две кнопки "изменить"? По сравнению с имеющимся вариантом для выполнения задачи в первый раз потребуется на два клика больше, зато потом можно вообще просто жать "далее".
Понятие "один экран — одна задача" сохраняется, только задача немного обобщается. Например, при смене пароля в Windows мы вводим старый пароль, новый и подтверждение на одной странице, а не на трех...
А насчет доп. окошка с сообщениями — можно сделать как в TheBat, например — внизу окна раскрывающийся список, который к тому же сохраняется в лог.
Re[2]: Помогите спроектировать интерфейс
От: WinterMute Россия http://yarrr.ru
Дата: 19.10.05 11:01
Оценка:
Здравствуйте, Sergei I. Gorelkin, Вы писали:

SIG>Здравствуйте, WinterMute, Вы писали:


SIG><поскипано>


WM>>Интересны ваши мнения на счёт нового варианта.


SIG>А нужен ли визард?


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

SIG>Backup — это такая операция, которую надо один раз сконфигурить, а потом выполнять одним нажатием. Или вообще без нажатий — по расписанию.

Для этого у нас есть планировщик и скрипты.

SIG>Потом, вся основная функциональность этой программы подчиняется понятию "что"-"куда". Создание образа диска — задаем диск ("что") и файл образа ("куда"). Восстановление — они меняются местами. Копирование раздела — опять же "что-то" копируется "куда-то". Монтирование — то же самое.


При создании образа есть ещё диалог "параметры образа" -- степень сжатия, вид архива (посекторный образ | сохранение только полезной информации), пароль и т.д, При восстановлении образа и копировании диска на диск, есть ещё диалог "resize" -- т.е. можно восстановить образ диска размером 20Gb на 40Gb-диск, ещё нужно задать букву диска.

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

Так почему бы в первом окне каждой функции не показывать крупным планом "что" и "куда" (причем уже заполненные теми значениями, которые были заданы в предыдущем сеансе), и две кнопки "изменить"? По сравнению с имеющимся вариантом для выполнения задачи в первый раз потребуется на два клика больше, зато потом можно вообще просто жать "далее".

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


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

SIG>Понятие "один экран — одна задача" сохраняется, только задача немного обобщается. Например, при смене пароля в Windows мы вводим старый пароль, новый и подтверждение на одной странице, а не на трех...


SIG>А насчет доп. окошка с сообщениями — можно сделать как в TheBat, например — внизу окна раскрывающийся список, который к тому же сохраняется в лог.

Как вариант подойдёт, хотя мне не очень нравится, не достаточно наглядно.
Re[3]: Помогите спроектировать интерфейс
От: Sergei I. Gorelkin Россия  
Дата: 20.10.05 06:44
Оценка:
Здравствуйте, WinterMute, Вы писали:

<>

Мне кажется, что в данной задаче давать пользователю слишком много выбора, а точнее — принуждать его делать этот выбор, было бы лишним. И вот почему:
— Набор дисков (томов) меняется, прямо скажем, не каждый день. У большинства пользователей он меняется только вместе с компьютером. Поэтому среднестатистический пользователь будет постоянно выбирать одни и те же диски — и злиться, что ему нужно это делать.
— Имя файла образа — опять же, если заставлять пользователя каждый раз придумывать нечто с нуля, то либо он будет задавать имя файла, включающее текущую дату или что-то подобное, либо довольно быстро просто запутается в этих архивах. Но первое программа может запросто сделать и сама. То есть пользователя надо попросить задать папку для архивов (один раз вначале), а потом предлагать имя типа "drive_c_201005.arc" и кнопку "изменить". Нравится — жми "далее", не нравится — жми "изменить" и придумывай сам. Имхо.
— То же самое и с опциями. Не думаю, что кому-то будет надо создавать образ со сжатием, а через полчаса — без сжатия. Пароль, правда, под этот критерий не подходит.
— При восстановлении образа: диск, с которого был создан образ, наверняка записан в файле образа, т.е. известен. Поэтому опять же стоит подставить этот диск в поле "куда" и дать пользователю возможность (но не принуждать) его изменить. Если пользователь выбрал диск другого размера, то тогда ему нужно показать страницу resize, в противном случае ее можно пропустить.
— И еще кажется, что уместно позволить пользователю автоматизировать процесс не только с помощью скриптов, но и на более понятном ему уровне. Т.е. грубо говоря, после операции показать опцию "я хочу выполнять это же в дальнейшем, запомни установки", а в начале работы предлагать список запомненных настроек.
Re: Помогите спроектировать интерфейс
От: wildwind Россия  
Дата: 20.10.05 08:50
Оценка:
Здравствуйте, WinterMute, Вы писали:

WM>Нужен ваш свежий взгляд:


Первая эмоция от первого взгляда: "Блин, слизали все у Акрониса, и не стыдятся это показывать!" Допускаю конечно, что это не так; возможно даже все наоборот (Акронис слизал), но так получилось, что Акронис я увидел раньше (он сильнее раскручен), и от этого никуда не деться. Поэтому сразу хочется дать совет: хотите вызвать симпатию — сделайте интерфейс непохожим на Акронис (не в ущерб эргономике конечно).

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

Вот такое противоречивое мнение.
Re[2]: Помогите спроектировать интерфейс
От: WinterMute Россия http://yarrr.ru
Дата: 20.10.05 10:47
Оценка:
Здравствуйте, wildwind, Вы писали:

W>Здравствуйте, WinterMute, Вы писали:


WM>>Нужен ваш свежий взгляд:


W>Первая эмоция от первого взгляда: "Блин, слизали все у Акрониса, и не стыдятся это показывать!" Допускаю конечно, что это не так; возможно даже все наоборот (Акронис слизал), но так получилось, что Акронис я увидел раньше (он сильнее раскручен), и от этого никуда не деться. Поэтому сразу хочется дать совет: хотите вызвать симпатию — сделайте интерфейс непохожим на Акронис (не в ущерб эргономике конечно).


W>Но если подумать глубже, ведь ваш продукт скорее всего нацелен на точно ту же аудиторию, то есть непродвинутых домашних пользователей. А для нее такой интерфейс наиболее приемлем и уже стал практически стандартом. Поэтому второй совет: ничего не меняйте, пусть продукт выглядит хорошо узнаваемым и выигрывает за счет функциональности, цены и пр.


W>Вот такое противоречивое мнение.


На счёт "слизали всё у акрониса": это мнение о текущей версии, или о новой (последний скриншот). Но, тем не менее, обращу внимание: и в первом и во втором случае, есть достаточно качественных отличий от интерфейса Акрониса, хотя, конечно, всё хорошее, что было у Акрониса (и не тоько у него) мы постарались повторить у себя. Впрочем не всё, на текущий момент у нас нет нормального GUI движка и мы писали всё на WTL, в новой версии, скорее всего перейдём на Qt.
Re[3]: Помогите спроектировать интерфейс
От: wildwind Россия  
Дата: 20.10.05 11:03
Оценка:
Здравствуйте, WinterMute, Вы писали:

WM>На счёт "слизали всё у акрониса": это мнение о текущей версии, или о новой (последний скриншот).

Текущей конечно.
Re[4]: Помогите спроектировать интерфейс
От: WinterMute Россия http://yarrr.ru
Дата: 20.10.05 12:04
Оценка:
Здравствуйте, Sergei I. Gorelkin, Вы писали:


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

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

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

SIG>Здравствуйте, WinterMute, Вы писали:


SIG>Мне кажется, что в данной задаче давать пользователю слишком много выбора, а точнее — принуждать его делать этот выбор, было бы лишним. И вот почему:

SIG>- Набор дисков (томов) меняется, прямо скажем, не каждый день. У большинства пользователей он меняется только вместе с компьютером. Поэтому среднестатистический пользователь будет постоянно выбирать одни и те же диски — и злиться, что ему нужно это делать.
SIG>- Имя файла образа — опять же, если заставлять пользователя каждый раз придумывать нечто с нуля, то либо он будет задавать имя файла, включающее текущую дату или что-то подобное, либо довольно быстро просто запутается в этих архивах. Но первое программа может запросто сделать и сама. То есть пользователя надо попросить задать папку для архивов (один раз вначале), а потом предлагать имя типа "drive_c_201005.arc" и кнопку "изменить". Нравится — жми "далее", не нравится — жми "изменить" и придумывай сам. Имхо.
SIG>- То же самое и с опциями. Не думаю, что кому-то будет надо создавать образ со сжатием, а через полчаса — без сжатия. Пароль, правда, под этот критерий не подходит.
SIG>- При восстановлении образа: диск, с которого был создан образ, наверняка записан в файле образа, т.е. известен. Поэтому опять же стоит подставить этот диск в поле "куда" и дать пользователю возможность (но не принуждать) его изменить. Если пользователь выбрал диск другого размера, то тогда ему нужно показать страницу resize, в противном случае ее можно пропустить.
SIG>- И еще кажется, что уместно позволить пользователю автоматизировать процесс не только с помощью скриптов, но и на более понятном ему уровне. Т.е. грубо говоря, после операции показать опцию "я хочу выполнять это же в дальнейшем, запомни установки", а в начале работы предлагать список запомненных настроек.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.