Интерфейс: новые направления в проектировании компьютерных систем

ОглавлениеДобавить в закладки К обложке

6.5. Письмо от одного пользователя

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

• «Этот программный пакет показался мне более развитым продуктом». В разговоре с программистами выяснилось, что приоритет был отдан больше плану выполнения работ, чем качеству. Поэтому покупателям была предложена скорее мечта руководителей изначального проекта. Скорее всего, в условиях жесткого плана работы был создан «минимальный полезный краткий вариант». Многие важные детали были пропущены, т. к. инструменты для разработки интерфейса были выбраны заранее и поэтому не дали возможности реализовать задуманные формы взаимодействия с пользователем.

• «Пользователь должен нажимать клавишу «Enter» или щелкать кнопкой мыши намного чаще, чем это требуется для ввода полезной информации». При вводе данных в поле нет необходимости в том, чтобы пользователь нажимал клавишу «Enter» или «Return» или вообще что-либо делал еще. Когда пользователь переходит к следующему полю или окну или использует меню или кнопку, система должна автоматически принять введенные данные.

Использование клавиши «Tab» вместо клавиш со стрелками для перемещения по полям также создавало проблемы. Два поля на экране допускали свободное форматирование текста. В этих полях пользователь мог применять клавишу «Tab» для создания отступов или списков, и поэтому клавиша «Tab» не давала возможности перейти на следующее поле. Тяжело было смотреть на пользователя, который много раз и безуспешно нажимал на клавишу «Tab», чтобы попытаться перейти на следующее поле.[51]

Эти примеры иллюстрируют две распространенные проблемы в интерфейсах. Первая связана с использованием клавиши «Return» для разделения полей. Эта привычка уходит далеко в то время, когда несколько десятков лет назад в прикладных системах, работающих в режиме разделения времени, а также в приложениях для микрокомпьютеров использовались ограничения, принятые для телетайпных машин. Вторая проблема связана с функциональной перегрузкой клавиш «Return» и «Tab», в результате которой в полях, допускающих свободный ввод текста, они означают одно, а в более коротких полях – другое.

• «Когда выбирается опция поиска, курсор должен появляться в соответствующем текстовом окне так, чтобы пользователь мог начать вводить информацию без необходимости щелкать мышью внутри поля или нажимать на кнопку Tab». Это частный случай следующего общего принципа: если пользователь в следующий момент может выполнить только одно действие, пусть это действие выполнит компьютер.

• «Ненужные диалоговые окна, наверное, являются главной причиной бесполезной траты времени и вызывают раздражение у пользователя». Речь идет о тех диалоговых окнах, которые предназначены для сообщения пользователю о том, что произошло, и для своего закрытия требующие нажатия кнопки мыши или клавиши «Enter». Другого выбора не остается – продолжить можно, только лишь кликнув по окну. Это другой частный случай приведенного выше принципа (если пользователь далее может выполнить только одно-единственное действие, пусть его выполнит компьютер). Как пишет автор в другом месте своего письма: «Важно, чтобы всякий раз, когда пользователь должен взаимодействовать с каким-то диалоговым окном, это взаимодействие давало полезный результат». Это можно обобщить до следующего утверждения: каждый раз, когда пользователь должен вступить во взаимодействие с компьютером, это взаимодействие должно предполагать получение полезного результата. Перемещение к следующему шагу в работе само по себе не является полезным результатом.

Далее автор письма продолжает сетовать, что одно из диалоговых окон просто «сообщает пользователю, что элемент уже введен в список» в том случае, когда название или номер существующего предмета вводится в окно для новых элементов. Чтобы продолжить, вам требуется убрать это диалоговое окно. Вместо этого автор предложил, чтобы появлялись три кнопки: оставить элемент, удалить элемент из списка или перейти к его редактированию. Хотя вариант автора является лучшим, чем изначальный, мы все же можем предложить еще более лучшую схему. Описанная проблема отчасти связана с идеей, что ввод нового элемента отличается от редактирования или удаления элементов. Предложим более простой метод: пользователь вызывает форму и вводит дескриптор элемента. Если он является новым, элемент вводится, и пользователь продолжает работу, как предполагалось. Если элемент уже имеется в списке, данные о нем сразу же вызываются, чтобы пользователь мог увидеть, что элемент уже существует. После этого пользователь может редактировать их. Естественно, удаление – это один из способов редактирования.


Логин
Пароль
Запомнить меня