Результат вычисления относится к удачному случаю, когда исходный термометр уже предустановлен на требуемый диапазон и точность. Теперь рассмотрим случай, при котором Хол расширяет шкалу, чтобы увидеть необходимое температурное значение, изменяет диапазон, сжимает шкалу, чтобы получить требуемую точность, и затем перемещает стрелку указателя. Далее я привожу общую запись метода, который использует Хол, без промежуточных шагов. (Я исхожу из того, что Хол является опытным пользователям и не прокручивает шкалу туда и обратно, чтобы найти на ней нужный участок.) Холу приходится несколько раз пользоваться стрелками для прокрутки температурной шкалы. На каждую операцию прокручивания экрана может потребовать нескольких жестов. Кроме того, требуется время на то, чтобы отобразить изменения на экране, связанные с его прокруткой. Чтобы оценить время прокручивания, я построил такой интерфейс и измерил эти значения. Все они были равны 3 с и более. Обозначая время прокручивания шкал через S, запишем последовательность жестов, которые применяет Хол.
H P K S K P K S K P K S K P K K
В соответствии с правилами расставляем операторы M:
H + 3(M + P + K + S + K) + M + P + K + K
0.4 + 3*(1.35 + 0.2 + 3.0 + 0.2) + 1.35 + 0.4 + 0.2 + 0.2 = 16.8 с
За исключением редких случаев, когда шкалы уже с самого начала установлены правильно, идеальному пользователю понадобится более 16 с. на то, чтобы выполнить перевод из одной шкалы в другую, тогда как реальный, т. е. не идеальный пользователь, может сбивать шкалы и стрелки указателей, и поэтому ему понадобится даже больше времени.
4.3. Измерение эффективности интерфейса
Каждый инструмент несет с собой тот дух, в котором он был создан.
Мы рассмотрели два интерфейса: в одном из которых требуется около 5 с. на выполнение задачи, а в другом – более 15 с. Отсюда ясно, какой из интерфейсов лучше удовлетворяет поставленным условиям. Следующий вопрос – это определить, насколько быстро работает тот интерфейс, который отвечает поставленным требованиям.
Если имеется модель интерфейса, то с помощью GOMS и его расширений можно определить время, необходимое пользователю на выполнение любой, четко сформулированной задачи, для которой данный интерфейс предусмотрен. Однако модели анализа не могут дать ответ на вопрос о том, насколько быстро должен работать интерфейс. Чтобы ответить на него, мы можем воспользоваться мерой, применяемой в теории информации. Далее мы будем рассматривать термин
Чтобы сделать правильную оценку времени, необходимого на выполнение задачи с помощью самого быстрого интерфейса, прежде всего следует определить минимальное количество информации, которое пользователь должен ввести, чтобы выполнить задачу. Это минимальное количество не зависит от модели интерфейса. Если методы работы, используемые в предполагаемом интерфейсе, требуют введения такого количества информации, которое превышает минимальное, это означает, что пользователь делает лишнюю работу, и поэтому интерфейс можно усовершенствовать. С другой стороны, если от пользователя требуется ввести именно то количество информации, которое необходимо для выполнения задачи, то для этой задачи интерфейс нельзя сделать более производительным путем изменения количества информации. В этом случае пути улучшения интерфейса (а также много путей для ухудшения) все же остаются, но по крайней мере данная цель повышения производительности будет уже достигнута.
Информационно-теоретическая производительность определяется так же, как понятие производительности определяется в термодинамике – отношением мощности на выходе к мощности на входе процесса. Если в течение какого-то периода времени электрогенератор, работающий от двигателя производительностью в 1000 ватт, производит 820 ватт, то он имеет производительность 820/100=0.82. Производительность также часто обозначается через проценты. В этом случае производительность электрогенератора будет составлять 82 %. Идеальный генератор (который не может существовать с точки зрения второго закона термодинамики) должен иметь производительность 100 %.
Информационная производительность интерфейса E определяется как отношение минимального количества информации, необходимого для выполнения задачи, к количеству информации, которое должен ввести пользователь. Так же как и в отношении физической производительности, параметр E может изменяться в пределах от 0 до 1. Если никакой работы для выполнения задачи не требуется или работа просто не производится, то производительность составляет 1. (Это формальное положение вводится для того, чтобы избежать деления на 0, как в случае ответа на выводимое прозрачное сообщение об ошибке (см. раздел 5.5).)
Производительность E может равняться и 0 в случаях, когда пользователь должен ввести информацию, которая совершенно бесполезна (рис. 4.4). Следует отметить, что в интерфейсах можно встретить немало деталей, которые имеют сомнительную ценность из-за параметра E=0. Примером такого бесполезного элемента может быть диалоговое окно, в котором есть только одна-единственная возможность для действия пользователя, например кнопка OK. (В JavaScript есть даже специальная команда Alert, предназначенная только для того, чтобы делать такие ненужные диалоговые окна. Разработчики языка JavaScript были достаточно разумны, чтобы убрать из него команду goto и сделать программирование на этом языке структурным, но они упустили из виду аспект интерфейса.)
В параметре E учитывается только информация, необходимая для задачи, и информация, вводимая пользователем. Два или более методов действия могут иметь одинаковую производительность E, но иметь разное время выполнения. Возможно даже, что один метод имеет более высокий показатель E, но действует медленнее, чем другой метод, – например M K M K и M K K K. В этом примере при использовании первого метода должно быть введено только два символа. При использовании второго метода требуется ввести три символа, но времени на все действие тратится меньше. Трудно привести другие примеры из обычной жизни, в которых происходит аналогичная перестановка скорости и информационной производительности.[22] Как правило, чем более производительным является интерфейс, тем более продуктивным и более человекоориентированным он является.
Информация измеряется в битах. Один бит, который представляет собой один из двух альтернативных вариантов (таких как 0 или 1, да или нет), является единицей информации.[23] Например, чтобы выбрать один из каких-либо четырех объектов, потребуется 2 бита информации. Если объекты обозначить как A, B, C и D, первый бит информации определит выбор между A и B или C и D. Когда первый выбор сделан (например, C и D), второй бит определит выбор между следующими двумя элементами (либо C, либо D). Двух двоичных выборов, или двух битов, достаточно для выбора одного элемента из четырех. Чтобы сделать выбор из группы восьми элементов, потребуется 3 бита. Из шестнадцати элементов – 4 бита, и т. д. В общем случае при количестве n равновероятных вариантов суммарное количество передаваемой информации определяется как степень 2, равная n:
log_2 n