Конференция "Прочее" » А хотите задачку из области разработки интерфейсов?
 
  • Kolan © (26.10.08 00:52) [0]
    Здравствуйте, предлагаю вам решить задачу из книги Джефа Раскина The Humane Interface. Вам даётся сценарий работы некого Хола. Ваша задача придумать интерфейс. В результате должна быть картинка, а лучше работающая программа, и описание его работы.  

    Ответы я постараюсь оценить объективно с помощью модели GOMS, и субъективно :)

    Задание:
    Хол работает на компьютере — печатает отчеты. Иногда его отвлекают экспериментаторы, находящиеся в этой же комнате, чтобы попросить перевести температурные показания из шкалы Фаренгейта в шкалу Цельсия или наоборот. Например, Холу могут сказать: «Переведи, пожалуйста, 302.25 градуса по шкале Фаренгейта в градусы по шкале Цельсия». Значение температуры Хол может ввести только с помощью клавиатуры или мышки. Голосовые или другие средства ввода отсутствуют. Просьбы о переводе из одной шкалы в другую поступают приблизительно с равной вероятностью. Приблизительно 25% значений — отрицательные. 10% значений являются целочисленными (например, 37°). Результат перевода из одной шкалы в другую должен отражаться на экране монитора. Другие средства вывода результатов не используются. Хол читает вслух экспериментатору полученное значение. Вводимые и выводимые числовые значения температур могут иметь до десяти цифр с каждой стороны от десятичного разделителя.

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

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

    Дополнение:
    Только очень прошу не флеймить, не обсуждать бедного Хола, его родственников, коллег по работе, да и саму его работу тоже. Я знаю, вы любите, но не надо, пожалуйста. :)
  • Германн © (26.10.08 02:37) [1]
    Шёл бы Хол вместе в вербдюдами.  Ну т.е. на Север. :)
    Дополнение:
    Только очень прошу не флеймить,
    А я и не флеймил.
  • Virgo_Style © (26.10.08 10:58) [2]
    В предположении, что Хол не привык пользоваться цифровым блоком клавиатуры.

    Переход в поле ввода горячей клавишей.

    Пробел при пустом поле ввода эквивалентен знаку минус.
    Пробел при поле, равном знаку минус, стирает этот знак.
    Пробел при наличии в поле цифр и отсутствии десятичного разделителя эквивалентен ему.

    Любая из клавиш <>? - эквивалентна десятичному разделителю (в любой раскладке).

    Enter переводит введенное число в градусы Фаренгейта, повторное нажатие - в градусы Цельсия (или наоборот, по желанию). Разумеется, результат выводится с символом C или F.

    После нажатия Enter нажатие любой другой клавиши считается началом ввода нового числа.

    Шрифт - крупный, настраивается. Если количество цифр до или после запятой больше трех - предусмотреть "опорные точки", разбивающие число на блоки по три цифры.
  • Kerk © (26.10.08 12:08) [3]
    На форму кинуть 1 TEdit и 2 TLabel. В одном лейбле ввод будет в реальном времени переводиться в фаренгейты, в другом - в цельсии. Лейблы крупные и разноцветные, как щас модно. Для ввода использовать цифровую клаву, нефиг велосипед изобретать. По Enter очищать TEdit, но не трогать лейблы до начала следующего ввода.
  • @!!ex © (26.10.08 13:27) [4]
    Вообще думал об TEdit и двух TButton, одна для перевода в цельсии, другая в фаренгейты.

    Но согласен с вариантом Керка, он эффективне.
  • DVM © (26.10.08 13:46) [5]
    Excel
  • Kolan © (26.10.08 14:38) [6]
    Virgo_Style
    Переход в поле ввода горячей клавишей.
    MK = 1,55 сек.

    Ввод четырех цифр.
    MKKKK = 2,15 сек.

    Возмём вариант, когда энтер нажимается дважды, так как он длинее.
    MKK = 1,75 сек.

    Итого: 5,45 сек.

    Kerk
    Ввод четырех цифр.
    MKKKK = 2,15 сек.

    Итого: 2,15 сек.

    @!!ex
    Ввод четырех цифр.
    MKKKK = 2,15 сек.

    Нажатие нужной кнопки.
    MHMPK = 4,4 сек.

    Итого: 6,55 сек.
  • Zeqfreed © (26.10.08 15:29) [7]
    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
    EHjKknm83P/4u5IpwoSFCSKw4A==



    Сохраняем это в файл converter.html.bz2.base64 и выполняем команду
    base64 -d ./converter.html.bz2.base64 | bunzip2 > ./converter.html



    Скриншот прилагается:
    http://img159.imageshack.us/img159/3378/converterap2.png

    Работает только в Фаерфоксе (проверено в 3.0.3). В опере там вообще какой-то ужас. Ну не пишу я на яваскрипте, уж простите :) Если кто-то пофиксит и скажет мне из-за чего в опере такие косяки — буду благодарен.
  • Kolan © (26.10.08 15:34) [8]
    Zeqfreed
    Ввод четырех цифр и пробела.
    MKKKK = 2,35 сек.

    Ввод системы исчисления.
    MK = 1,55 сек.

    Итого: 3,7 сек.
  • Zeqfreed © (26.10.08 15:41) [9]
    > Kolan ©   (26.10.08 15:34) [8]

    И что это значит? Скорость ввода это единственный критерий, по которому идет оценка?
  • Virgo_Style © (26.10.08 15:54) [10]
    Kolan ©   (26.10.08 14:38) [6]

    Странная метОда... А если б я не написал про горячую клавишу - 1.55 секунды не было бы засчитано? %-)
  • Kolan © (26.10.08 16:10) [11]
    Zeqfreed, создать файл не получилось, Винда, как и я, не знает что это за программа base64. Пришли готовый аштээмэль мне на почту, пожалуйста.

    О методе можно прочесть в вики http://en.wikipedia.org/wiki/GOMS .
  • Zeqfreed © (26.10.08 16:55) [12]
  • Kolan © (26.10.08 17:08) [13]
    Zeqfreed, не получается что-то...
    www.ksoftware.ru/files/other/converter.html
  • Anatoly Podgoretsky © (26.10.08 17:19) [14]
    > Kolan  (26.10.2008 14:38:06)  [6]

    > Возмём вариант, когда энтер нажимается дважды, так как он длинее.
    > MKK = 1,75 сек.

    Даже страшно представить сколько же будет нажиматься пробел, секунд 10 наверно, уж больно длинный зараза.
  • {RASkov} © (26.10.08 17:26) [15]
    Kolan написал не правильно, но имел в виду вариант длиннее, а не ентер.
    Хотя прикольно получилось :)
  • Zeqfreed © (26.10.08 17:39) [16]
    > Kolan ©   (26.10.08 17:08) [13]

    Ну все верно. Это bzip2-архив. Осталось его только распаковать.
  • Kolan © (26.10.08 18:34) [17]
    К варианту Зигфрида добавляется еще MK, так как после ввода надо нажать Enter.

    Зато, можно проверить в работе:
    http://www.ksoftware.ru/files/other/converter.html

    Итого Zeqfreed: 5,25 сек.
  • Zeqfreed © (26.10.08 18:40) [18]
    Все равно не понятно в чем суть метода. Для любой задачи идеальным получается интерфейс, который работает по мере заполнения пользователем данных?
  • Джо © (27.10.08 01:03) [19]
    Книгу читал, спойлить не буду :)
 
Конференция "Прочее" » А хотите задачку из области разработки интерфейсов?
Есть новые Нет новых   [134445   +28][b:0][p:0.002]