Книга: Интерфейс: новые направления в проектировании компьютерных систем
B. Теория работы интерфейса для SwyftCard
B. Теория работы интерфейса для SwyftCard
Некоторые из принципов, рассмотренных в этой книге, впервые были опубликованы в 1984 году в руководстве для SwiftCard. Система SwiftCard, предназначенная для довольно успешного в то время Apple II, была (по сегодняшним стандартам) простой. Приложение к ее руководству имело необычное содержание. Вместе с обычным, традиционным изложением принципа работы электронной начинки этого устройства предлагалось теоретическое описание работы программного обеспечения, а также информация о теории работы пользовательского интерфейса. Это, пожалуй, был первый случай, когда информация такого рода сопровождала коммерческий продукт. В некотором смысле то приложение можно считать началом этой книги. Нижеследующий материал взят из второго издания руководства (Alzofon и Raskin, 1985).
Подходы, на основе которых была создана SwiftCard, разрабатывались с целью решения целого ряда проблем, которыми страдают почти все современные системы. Большинство из этих проблем сами по себе являются довольно небольшими, но в совокупности они приводят к тому, что процесс изучения и использования существующего программного обеспечения чрезмерно замедляется, что вызывает раздражение и усталость от использования компьютеров.
Например, мы всегда удивлялись, почему пользователю приходится форматировать диски. Разве компьютер не способен самостоятельно определить, форматирован диск или нет, и при необходимости выполнить форматирование? Кроме того, нам кажется, что клавиши для управления курсором работают слишком медленно, а если учесть то количество дополнительных команд, которое они требуют (для перемещения к следующему/предыдущему слову, предложению, абзацу, странице; для перемещения к началу или концу строки, документа или файла), то, на наш взгляд, они являются также и слишком сложными. ГУВ существенного улучшения не приносит, поскольку большая часть этих устройств заставляет пользователя убирать руки с клавиатуры, а также требует много экранного пространства для меню, полос прокрутки и других механизмов, связанных с использованием ГУВ. Необходимость работать с меню вместо того, чтобы сразу делать то, что нам необходимо, вызывает раздражение, а огромное число команд, которое используется в большинстве систем, ставит нас в затруднительное положение. Мы ненавидим дисковые системы, которые могут допустить потерю информации из-за обычных человеческих ошибок. Нас удивляет, что многие текстовые процессоры не успевают воспринимать информацию, вводимую с клавиатуры человеком.
SwiftCard демонстрирует собой, что хороший проект позволяет решить все эти, а вместе с ними и многие другие вопросы и проблемы, которые беспокоили нас в течение многих лет. Эта система способна работать на недорогом компьютере, имеющем только один диск, и требует минимальных ресурсов памяти. Наш продукт выполняет то, что требуется для большинства пользователей, однако без помощи операционной системы, без ценника с большими цифрами, без капризов в работе.
Основные принципы разработки включают много новшеств и учитывают опыт, использованный в других продуктах.
1. Концепция курсора с функцией LEAP, которая позволяет перемещаться к целевому объекту со скоростью, в среднем в три раза превышающей скорость работы самого лучшего общераспространенного устройства типа мышь.
2. Сам курсор состоит из двух частей, которые точно показывают места, где будет появляться вводимый текст и где будет происходить удаление. Этот же курсор сворачивается при перемещении так, чтобы было удобно удалять.
3. Ограниченный набор основных операций позволяет легко выполнять широкий диапазон задач.
4. Отказ от использования операционной системы позволяет выполнять все операции непосредственно из редактора без необходимости переходить в различные режимы.
5. Устранение режимов в целом способствует формированию привычек, поскольку пользователю не приходится задумываться, в каком состоянии находится система, чтобы определить доступные в этом состоянии команды. Это свойство называется безмодальностью.
6. Отказ от использования множества способов выполнения той или иной задачи – опять же для того, чтобы пользователю не приходилось задумываться о том, какой способ выполнения задачи выбрать. Этот принцип мы называем монотонностью. Так же как и безмодальность, монотонность способствует формированию привычек в использовании.
7. Акцент на формирование привычек сам по себе является основополагающим принципом, однако разработчики зачастую его неоправданно не учитывают. Мы считаем важным, чтобы после короткого периода обучения пользователь мог использовать систему, не задумываясь о ее работе.
8. Команда DISK позволяет снять сложности, которые обычно возникают при использовании дисковой операционной системы (DOS). Используется только одна простая команда. Она же позволяет защитить данные от наиболее частых ошибок, приводящих к потере информации. Возможность для создания такой команды дает метод, при котором один диск соответствует одному Тексту.
9. Создание зависимости скорости работы от частоты использования (чаще используемые задачи выполняются быстрее, реже используемые – медленнее).
10. «То, что вы видите, то вы и получите» (What you see is what you get). Другими словами, изображение на экране будет выглядеть так же и на бумаге. (Из-за ограничений в оборудовании Apple этот принцип, тем не менее, был нарушен для операции подчеркивания.)
11. Построение команд по методу «существительное-глагол». Сначала пользователь определяет, с чем он собирается работать (что дает время на проверку и при необходимости исправление), и затем применяет некоторое действие к выбранному объекту. В некоторых системах используется обратная последовательность («глагол-существительное») или даже смешиваются оба метода, что еще хуже.
12. Другой общий принцип заключается в том, что в системе трудно что-либо испортить или стереть. Это возможно, но очень трудно. Ошибки не происходят случайно или по невнимательности пользователя.
13. Включение средств программирования и коммуникации в среду общего назначения, внутри которой выходные данные помещаются в область редактирования или поиска.
14. Необходимость учета в плане работы времени на проведение длительных (в течение нескольких месяцев) тестирований и наладки. Покупатели системы не должны использоваться в качестве субъектов тестирования.
Вышеизложенное является только упрощенным наброском (описание системы насчитывает около 50 страниц), но мы надеемся, что это даст вам некоторое представление о том, что привело нас к идее сделать систему SwiftCard такой, какая она есть.
- Типы данных для работы с датой и временем
- Новые функции API для работы с Blob и массивами
- 10 Алгоритм работы с возражениями
- 33.1. Интерактивный и неинтерактивный режим работы
- 4. Режимы работы экспертных систем
- Не допускайте того, чтобы поток пользовательского интерфейса блокировался на длительное время
- ГЛАВА 5. СИСТЕМНЫЕ ОПЕРАЦИИ ДЛЯ РАБОТЫ С ФАЙЛОВОЙ СИСТЕМОЙ
- Введение Визуализация работы коллективного интеллекта
- Нужна ли философам квантовая теория?
- 5.2. Основные приемы работы, элементы текстового редактора
- Описание работы МП
- Описание работы ЦПУ