4.3.2. Другие решения интерфейса для Хола
4.3.2. Другие решения интерфейса для Хола
В разделе 4.3.1 мы приостановили дальнейшие попытки улучшения интерфейса, достигнув 70 % теоретической информационной производительности. Данная производительность определена для пока еще неизвестного, теоретического интерфейса, в котором каким-то образом можно получить 100 % эффективность использования клавиш. Давайте посмотрим, насколько мы можем приблизиться к этому идеалу с помощью стандартной клавиатуры и ГУВ.
Рассмотрим интерфейс, в котором используется клавиатура со всеми символами. В таком интерфейсе на экране появляется следующее сообщение:
Для перевода температуры из одной шкалы в другую укажите нужную шкалу с помощью символа C (шкала Цельсия) или F (шкала Фаренгейта). Введите числовое значение температуры, затем нажмите клавишу Enter. Результат преобразования будет отображен на экране.
GOMS-анализ показывает, что пользователь должен сделать 6 нажатий клавиш. По правилам расстановки операторов M получаем. следующую запись:
M K K K K K M K
Среднее время составит 3.9 с.
Мы можем уменьшить это время, если сами символы C и F будем использовать в качестве разделителей. Рассмотрим интерфейс, в котором появляется следующая инструкция:
Для перевода температуры из одной шкалы в другую введите числовое значение температуры и следом поставьте символ C, если оно в шкале Цельсия, или F, если оно в шкале Фаренгейта. Результат преобразования будет отображен на экране.
В данном примере нажимать на клавишу «Enter» не требуется. Некоторые примитивные средства разработки интерфейсов требуют, чтобы пользователь обязательно использовал клавишу «Enter», и поэтому в них невозможно использовать символы C и F в качестве разделителей. Такие инструменты не подходят для разработки человекоориентированных интерфейсов.
GOMS-анализ показывает, что для интерфейса с символами C и F в качестве разделителей запись будет следующей:
M K K K K M K
Среднее время составит 3.7 с. Если бы мы не знали, что теоретически минимальное время составляет 2.15 с, то это решение могло бы показаться удачным. Оно является значительно более эффективным, чем ранее рассмотренные, поэтому мы могли бы на нем остановиться. Однако теоретический минимум подстегивает нас к поиску еще более быстрой интерфейсной модели. Рассмотрим интерфейс, изображенный на рис. 4.5. Такой интерфейс можно назвать разветвленным. В нем один ввод дает в результате два вывода.
Рис. 4.5. Интерфейс, в котором не используется разделитель. Более эффективным является вариант, в котором выполняется посимвольная обработка вводимых данных и одновременное преобразование в обеих шкалах
В разветвленном интерфейсе нет необходимости в разделителе. Кроме того, пользователю не нужно указывать, какое именно преобразование требуется провести. GOMS-анализ показывает, что для 4 символов, которые в среднем будут вводиться, запись будет следующей:
M K K K K
В разветвленном интерфейсе достигается минимальное время 2.15 с, и его символьная эффективность составляет 100 %.
Если, как в нашем примере, в месте вывода происходит изменение результата в тот момент, когда символы вводятся, это колебание цифр не отвлекает пользователя, потому что в локусе его внимания находится именно ввод данных. Непрерывно изменяемые значения на выводе могут быть даже полезными – после нескольких применений пользователь будет замечать эти колебания только краем глаза, что будет служить подсказкой о том, что система отвечает на вводимые данные. Если используется посимвольный режим работы интерфейса, то для большей эффективности такая система должна реагировать довольно быстро. В частности скорость реакции не должна быть меньше скорости ввода. Такая проблема может возникать только при сетевом использовании интерфейса.
Хотя это и не входит в условие задачи, но может возникнуть вопрос о том, как происходит очистка полей в преобразователе для выполнения следующего преобразования. Добавляет ли операция очистки еще одно нажатие клавиши? Необязательно. Например, мы можем разработать интерфейс таким образом, что каждый раз, когда оператор возвращается к своему основному занятию или переходит к другой задаче, значения, указанные в преобразователе, могут автоматически затеняться, а сам температурный преобразователь становиться неактивным; причем в это время все значения могут оставаться в своих полях так, что при необходимости их можно было бы опять увидеть, но уже при следующем вводе все они будут стерты.
Разветвленный интерфейс не обязательно является самым лучшим из тех, что уже были рассмотрены – или из тех, что возможны, – только потому, что он имеет оптимальную скорость работы и является весьма эффективным. Кроме скорости есть и другие параметры, которые также являются важными: частота появления ошибок; время, необходимое для изучения интерфейса; возможность длительного запоминания способа использования интерфейса. Особенно следует обратить внимание на частоту появления ошибок в разветвленном интерфейсе, поскольку есть вероятность того, что Хол может прочитать результат не из того поля. Это важно особенно потому, что когда он услышал, например слово Цельсий, ему необходимо прочитать значение из поля шкалы Фаренгейта. Тем не менее, разветвленный температурный преобразователь определенно входит в небольшое число тех интерфейсов, которые можно рассматривать как рабочие варианты для программы преобразования температурных значений из одной шкалы в другую. Другие рассмотренные нами примеры, которые могли бы показаться удачными, если бы мы не проводили с ними GOMS-анализ, на самом деле не являются таковыми.
Используемая как в простом анализе временных затрат на нажатия клавиш, так и в полном информационно-теоретическом исследовании, квантификация теоретического интерфейса с минимальным временем использования или с минимальным количеством используемых символов, или с минимальным количеством используемой информации может быть полезна с точки зрения разработки интерфейса. Без количественных ориентиров мы можем только догадываться о том, насколько хорошо мы разработали интерфейс и есть ли возможность его улучшения.
Данный текст является ознакомительным фрагментом.