Будущее
Что же ждет нас в будущем? Прежде всего, в соответствии с законом Мура и учитывая непрерывный прогресс в технологии панельных дисплеев и проекторов, можно ожидать появления чрезвычайно мощных и универсальных (ubiquitous) компьютеров [7]. Примеры включают переносимые компьютеры [6], PDA, сверхминиатюрные или очень большие "проекционные" дисплейные устройства, а также легкие и доставляющие минимум неудобств шлемы-дисплеи для виртуальной и расширенной (augmented) реальности. Погружаясь в расширенную реальность, пользователь может видеть сгенерированную компьютером информацию, наложенную на образы реального мира через оптическое или видео-смешивание (слияние - merging), что обеспечивает, к примеру, встроенные аннотации или восприятие в рентгеновских лучах.
Разрешающая способность дисплеев, несомненно, увеличится по сравнению с теперешними, явно неадекватными 70-100 dpi (точек на дюйм), и процесс чтения в интерактивном режиме станет менее утомительным и более приятным. В конечном итоге мы будем иметь то, в чем сейчас так нуждаемся: доставляющие минимум неудобств высокоточные сенсоры с хорошим пространственным и временным разрешением для отслеживания положения головы, тела и глаз. Они сделают возможным быстрое и корректное распознавание жестов и, возможно, даже не вызывающую никаких неудобств биологическую обратную связь (biofeedback), что особенно важно для пользователей с физическими недостатками. Распознавание голоса на основе понимания (ограниченного) естественного языка станет доминирующей формой взаимодействия человека с компьютером. Тактильные (haptic) дисплеи позволят развить нашу способность воспринимать сгенерированную компьютером информацию. Радж Редди (Raj Reddy) из CMU (Carnegi Mellon University) дал описание интерфейсов SILK, которые будут поддерживать понимание речи, образов и языка на основе баз знаний [4]. Вычислительная мощь станет такой, что сможет обеспечивать возможность управления большим количеством непрерывной информации, поступающей одновременно от многих каналов ввода параллельно с симулированием поведения автономных реактивных объектов в реальном времени.
Наконец, мы узнаем, как комбинировать лучшие средства пользовательского взаимодействия через WIMP- и post-WIMP-интерфейсы с косвенным управлением, обеспечиваемым сертифицированными и заслуживающими доверия агентами, которые могут предугадывать потребности пользователя и работать на него в автономном режиме - вместе с другими агентами, распределенными по сети. Нет нужды доказывать, что такая агентская технология должна базироваться на мощных (еще не существующих!) базах знаний. Эта комбинация в конечном итоге позволит нам приблизиться к идеальной ситуации, в которой взаимодействие пользователя с компьютером будет столь же естественным, как общение между людьми.
Литература
Herndon, K.R., Meyer T. 3D widgets for exploratory scientific visualization. - In Proceedings of UIST'94, ACM SIGGRAPH, November 1994, p. 69-70. Kabbash P., Buxton W., Sellen A. Two-handed input in a compound task. - In Proceedings of CHI'94, p. 417-423. Kurtenbuch G., Buxton W. The limits of expert performance using hierarchic marking menus. - In Proceedings of InterCHI'93, p. 482-487. Reddy R. Turing Award Lecture: To dream the possible dream. - Communications of the ACM, V.39, N.5 (May 1996), p. 105-112. Robertson G., Mackinlay J, Card S. Information visualization using 3D interactive animation. - Communications of the ACM, V.36, N.4 (April 1993), p. 57-71. Smailagic A., Siewiorek D. P. The CMU mobile computers: A new generation of computer systems. - In Proceedings of COMPCON'94, IEEE Computer Society Press, February 1994. Weiser M. Some computer science problems in ubiquitous computing. - Communications of the ACM, V.36, N.7 (July 1993), p. 74-84. Zeleznik R. C., Forberg, A. S., Strauss P. S. Two-pointer input for 3D interaction. - In Proceedings of 1997 Simposium on Interactive 3D Graphics (Providence, Rhode Island, April 27-30). Zeleznik, R.C., Herndon, K.P., and Hughes, J.F. "Sketch: An interface for sketching 3D scenes", - Computer Graphics (Proceedings of SIGGRAPH'96), August 1996
Об авторе: Эндрю вэн Дам (Andries van Dam) - профессор кафедры информатики в Brown University, США, и директор научно-технологического центра по графике и визуализации Национального научного фонда (NSF) - исследовательского консорциума, объединяющего ресурсы пяти ведущих американских университетов. Председатель правления Numinous Technology, Inc., входит в консультационные советы нескольких компаний, в том числе Microsoft. Один из пионеров машиной графики, он стоял у истоков профессиональной ассоциации ACM SIGGRAPH. Автор и соавтор многих статей и книг, в том числе "Computer Graphics: Principles and Practice" (вместе с J.D. Foley, S.K. Feiner, J.F. Hughes), которая была переведена на многие языки. Удостоен многих национальных и международных наград, включая ACM SIGGRAPH Steven Coons Award - высшую награду в области машинной графики.
•Версия для печати
Учебные курсы через Интернет
БЕСПЛАТНО
Недостатки WIMP-интерфейсов
Помимо обозначенных достоинств, WIMP-интерфейсы принесли с собой и большие проблемы. Во-первых, чем более сложным является приложение, тем труднее осваивать интерфейс, причем эти трудности возрастают нелинейно. Взятые в отдельности интерфейсные особенности и инструменты могут быть вполне простыми, но, будучи в большом количестве интегрированы в одно приложение, они образуют новое качество сложности. Многие современные настольные приложения столь объемны, чтобы не сказать громоздки, что пользователь, погрузившись однажды в их функциональность, начинает даже отказываться от новейших версий, продолжая использовать то малое подмножество возможностей, которое удалось изучить, - это выражено в ставшем классическом "правиле 90/10".
Во-вторых, пользователи проводят слишком много времени, манипулируя интерфейсом, а не работая с самим приложением. Квалифицированные пользователи часто бывают раздражены слишком большим количеством слоев, возникающих в процессе point and click и создающих своеобразный хаос из-за слишком многих интерфейсных элементов (использование сокращенных комбинаций клавиш - это суррогатный метод решения этой проблемы).
В-третьих, WIMP GUI вместе с их 2D- интерфейсными элементами проектировались для работы с двухмерными же приложениями - такими, как обработка текстов, компоновка документов и электронные таблицы. Если же приложение является по своей сути трехмерным, то работа с ним с помощью 2D виджетов становится не слишком естественной. Нынешние WIMP-интерфейсы для 3D-приложений обычно состоят из управляющих панелей с 2D-кнопками и слайдерами, окружающими 3D-мир (я это называю "TV-модель"), которые используются для управления 3D-курсором, для манипуляций с точкой зрения наблюдателя и для редактирования объектов. Это позволяет в некоторой степени поддерживать "непрямое" взаимодействие и "когнитивную дистанцию". Понятно, что 3D-приложения, как правило, имеют много большую визуальную сложность, чем двухмерные, что еще более усиливает связанные с WIMP-интерфейсами проблемы.
В-четвертых, не все пользователи способны эффективно использовать мышь и клавиатуру - либо оттого, что им это не кажется естественным в контексте их задачи, либо из-за вызываемых этими устройствами чисто физиологических неудобств, связанных с постоянными нажатиями на клавиши при сильном напряжении зрения (не говоря уже о специальных категориях пользователей с физическими недостатками). Соответственно главным недостатком WIMP-интерфейсов является то, что они никак не используют такие каналы взаимодействия, как речь, слух и прикосновения. Хотя большое количество наших нейронов находится в "визуальной" части коры головного мозга, что позволяет зрению быть информационным каналом с самой высокой пропускной способностью, все равно без речи, слуха и прикосновений общение с физическим миром не может быть полноценным. Как указывает Билл Бакстон (Bill Buxton) из Aliias/Wavefront, WIMP-интерфейсы, основанные на использовании клавиатуры и мыши, являются совершенным инструментом только для существ с одним глазом, одним пальцем, лишенных всяких иных органов чувств.
Еще одно ограничение WIMP-интерфейсов в том, что они предназначены для одинокого пользователя настольной системы, который управляет объектами, не обладающими автономным поведением, реагирующими в основном на манипуляции с мышью. Соответственно имеется один, не разделяемый во времени полудуплексный канал взаимодействия; система откликается на каждое дискретное событие ввода, и эти события могут быть легко распознаны - они состоят из простых нажатий на клавиши и выбора с помощью мыши. Самый сложный ввод - последовательность позиций мыши, которая может представлять, например, путь закрашивающей кисти.
Рассмотрим сценарий, который основан на погружении в виртуальную реальность и сильно отличается от обычной работы с настольными приложениями. Этот сценарий более свойствен популярным системам в диапазоне от компьютерных игр до виртуального прототипирования и обучающих сред. Многочисленные участники взаимодействуют с разделяемой задачей, причем каждый снабжен погружающим стереодисплеем с широким полем зрения.Он управляется через отслеживание положения головы и рук, распознавание голоса и жеста, а также манипулированием несколькими интерактивными устройствами, обладающими более чем двумя степенями свободы (именно столько обеспечивает мышь). Взаимодействие включает множественные параллельные дуплексные каналы ввода/вывода с широкой пропускной способностью, передающими непрерывные (а не дискретные) сигналы, которые распознаются в реальном времени. WIMP-интерфейсы просто не способны обеспечить такие формы взаимодействия. Пока же не появились интерфейсы, способные полностью удовлетворить перечисленным требованиям, необходимо начать движение по направлению к ним.
О достоинствах WIMP-интерфейсов
Давайте более пристально рассмотрим достоинства и недостатки WIMP GUI, что поможет нам понять, почему назрела необходимость в новом поколении интерфейсов. Очень продолжительное время - несколько десятилетий - основное внимание при разработке компьютерных приложений уделялось функциональности и производительности. Только в 80-х гг., когда настольными вычислительными инструментами стали пользоваться миллионы людей, мы наконец в полной мере осознали, сколь важна для успеха приложения легкость его использования, или, как стало принято выражаться, насколько "дружественным" для пользователя он является. Причем это важно и для неискушенных пользователей, и для опытных. Первые хотят, чтобы освоение интерфейса и запоминание методов работы с ним требовало минимальных усилий; пользователи высокой квалификации озабочены в первую очередь не крутизной кривой обучения, а минимизацией усилий, необходимых для достижения высокой производительности в работе. Отсюда, кстати, следует, что один и тот же интерфейс нечасто удовлетворяет требованиям обоих классов пользователей.
Однако сколь "дружественным" ни был бы интерфейс, всегда существует некоторый люфт между намерениями пользователя и реализацией этих намерений средствами интерфейса. Иными словами, всякий интерфейс предполагает наличие слоя когнитивной обработки, явно или неявно располагающегося между пользователем и компьютерным исполнением заданных им целей. В этом смысле идеальным интерфейсом было бы его отсутствие, что позволило бы реализовать парадигму: "Я думаю, а компьютер дает мне то, о чем я думаю (и более того - о чем мне следует думать)". Вероятно, более осуществимой целью была бы реализация стремления трактовать компьютер как идеального слугу, который знает мои вкусы, привычки, особенности характера и поведения, вообще весь тот контекст, в котором происходит моя работа, и тактично исполняет приказания, даже предсказывая некоторые действия без необходимости явного руководства с моей стороны.
Когда же появляется необходимость в явном направлении действий слуги, я хотел бы взаимодействовать с ним посредством разговора, жестикуляции, мимики и других форм, принятых в человеческом общении. В дополнение к этому было бы хорошо иметь возможность вводить что-то вроде эскиза, чтобы бегло обозначать нужное понятие или схему, не отказываясь при этом от таких бесспорно эффективных форм взаимодействия, как выбор нужного пункта меню или ввод информации с клавиатуры.
Давайте еще раз обозначим нашу цель: минимизировать использование тех механизмов манипулирования, которые столь существенны в сегодняшних интерфейсах, и сократить "когнитивную" дистанцию между намерением и реализацией этого намерения. Иными словами, требуется дать пользователю возможность сосредоточиться на его задаче, а не на технологии, необходимой для специфицирования этой задачи. Таким образом, я рассматриваю WIMP- и post-WIMP-интерфейсы как последовательные шаги в направлении куда более мощного и естественного интерфейса. В полной мере обозначенная цель, очевидно, будет достигнута через несколько десятилетий.
Ну а пока мы находимся в начале длинного пути к интерфейсу-слуге, позвольте мне перечислить некоторые критерии его оценки. Прежде всего, он даст возможность полноценной работы с компьютером следующим трем категориям пользователей, которым трудно работать с теперешними интерфейсами: это дети, еще не умеющие читать и писать; менеджеры; непрофессиональные "домашние" пользователи. Без преувеличения можно сказать, что метод "указания и щелчка", отличительная особенность WIMP-интерфейсов, уже стал частью современной культуры. Неудивительно, что появилась новая специальность (быстро ставшая дефицитной) - дизайнер пользовательского интерфейса. Тестирование интерфейсов на предмет удобства и устойчивости стало необходимой частью всего процесса разработки приложений. По существу, WIMP GUI стали стандартом для прикладных интерфейсов, которые - по сравнению с интерфейсами "командной строки" - обеспечивают относительную простоту изучения и применения, легкость переноса знания, приобретенного от использования в одном приложении для применения в другом из-за большой совместимости концепции look and feel.Помимо прочего, это избавило многих от утомительного чтения руководств в процессе освоения приложения.
Пользовательские интерфейсы нового поколения
Эндрю вэн Дам avd@brown.edu, Brown University, США 17.06.1997 Открытые системы, #06/1997 |
Версия для печати Выскажите свое мнение |
О достоинствах WIMP-интерфейсов Недостатки WIMP-интерфейсов Post-WIMP-интерфейсы
Будущее Литература
Известен устойчивый и предсказуемый - на основе закона Мура - прогресс в аппаратном обеспечении, выражаемый в постоянном улучшении соотношения цена/производительность. Ничего подобного в отношении пользовательских интерфейсов не наблюдается. Пожалуй, вся история развития интерфейсов лучше всего характеризуется понятием, введенным известным специалистом в области эволюционной биологии Джеем Гоулдом (Jay Gould) - "прерывистое равновесие" (punctuated equilibrium), когда долгие периоды стабильности прерываются быстрыми изменениями. Мы можем идентифицировать четыре качественно отличных друг от друга поколения, которые характеризуются четырьмя интерфейсными стилями; представители первых трех поколений царствовали не по одному году. Сейчас на повестке дня - интерфейсы нового, четвертого поколения.
В первый период (50-е и начало 60-х гг.) компьютеры, как известно, работали в основном в пакетном режиме, используя перфокарты для ввода и устройство построчной печати для вывода; можно утверждать, что при этом фактически не было смысла говорить о пользовательском интерфейсе - не существовало самого понятия "интерактивного пользователя" в современном смысле этого слова (хотя некоторые из нас умудрялись выполнять отладку прямо с консоли, используя переключатели и световые индикаторы как "пользовательский интерфейс").
Во втором периоде в эволюции интерфейсов (с начала 60-х до начала 80-х гг.) господствовал режим разделения времени на мэйнфреймах и мини-компьютерах с использованием механических или "стеклянных" телетайпов (алфавитно-числовые дисплеи), когда пользователи могли взаимодействовать с компьютером путем ввода с клавиатуры команд с параметрами. Заметьте, что этот тип взаимодействия захватил и век ПК с MS DOS и ОС Unix.
Post-WIMP-интерфейсы
Для меня Post-WIMP-интерфейс - это такой интерфейс, который заключает в себе по крайней мере один метод взаимодействия, не присущий классическим 2D виджетам, таким как меню и пиктограммы. В конечном счете он должен включать действующие в параллель сенсорные каналы, коммуникации с помощью естественного языка - и все это в среде из многих пользователей. Среди примеров взаимодействия с помощью Post-WIMP-интерфейсов можно упомянуть распознаватели жестов, основанные на технике рисования пером, - они используются в карманных PDA, таких как Apple Newton или U.S. Robotics Pilot. Эти устройства более или менее успешно сочетают методы, свойственные как WIMP-, так и post-WIMP интерфейсам для 2D-задач. Другим показательным примером естественного человеко-машинного взаимодействия, но не использующим какие-либо WIMP-устройства и методы, являются диалоговые (arcade) видеоигры, такие как тренажеры с рулевым колесом управления с переключателем передачи, а также имитаторы игр, вроде гольфа, в которых игрок может бить реальной клюшкой по реальному мячу, траектория полета которого затем моделируется и изображается на экране дисплея.
Рисунок 1. 3D-виджет для манипулирования элементами в 3D-сцене |
Среди универсальных 3D-виджетов стоит упомянуть "блоки вращения и масштабирования" с соответствующими управляющими "рычагами" и навигаторы (использующиеся в VRML и других 3D-браузерах). Еще один метод, который комбинирует WIMP и post-WIMP, чтобы "получить интерфейс прямо из вашего лица" (как Билл Бакстон его определяет) - это использование marking menus - современной формы многоуровневых радиальных меню, при которых пользователь может задействовать свою "мускульную память" и выполнять выбор в меню зажатой в руке мышью или иглой без фактического появления самого меню [3].
Бакстон также пропагандирует ввод с помощью двух рук, при котором "вспомогательная" рука управляет крупными (грубыми) движениями (например, перемещением инструмента), в то время как "доминирующая" рука выполняет тонкую настройку (например, манипуляции инструментом) [2].
Рисунок 2. 3D-модель в системе Sketch |
Sketch использует довольно примитивную и дающую не слишком много реализма технику рендеринга, которая делает вид 3D-модели похожим на неформальный рисунок, состоящий из линий. На рис. 3 изображены два автомобиля и показано, как контур выхлопного дыма вместе с его тенью может быть позиционирован в 3D-пространстве, что делается двумя руками с помощью красного и желтого управляющих курсоров. Хотя по сравнению с WIMP-интерфейсом кривая обучения первоначально идет более круто, опыт пользователя может сильно облегчить познавательное усилие.
Рисунок 3. Пример 3D-манипулирования с использованием двух рук |