Интерфейсы будущего

23.10.2002

Что ждет привычные нам интерфейсы? Будут ли они заменены на что-либо другое? Чего можно ожидать от компьютеров будущего?

В последнее время, с ростом оскомины от графических интерфейсов (читай: Windows, MacOS и т.п.) возникает всё больше надежд на то, что вот-вот будет изобретен новый интерфейс, лучший, чем GUI. Особые надежды возлагаются на голосовое управление и трехмерные среды. В то же время есть определенные предпосылки к тому, что этим надеждам в полной мере сбыться не суждено (во всяком случае, в ближайшее время), напротив, в будущем будут доминировать другие интерфейсы, менее революционные и заметные, но, во многом, более эффективные. Настоящий обзор отнюдь не претендует на исчерпывающее описание возможных альтернатив GUI, это скорее изложение гипотез авторов по поводу возможных путей развития пользовательских интерфейсов компьютерных систем в течение ближайшего десятилетия.

Часть первая — голосовое управление

Как и искусственный интеллект, голосовое управление (далее ГУ) относится к вещам, которые вот уже десятки лет должны произойти в следующем году. Из-за этого напряженного ожидания оказывается довольно трудным рассудить, что именно ГУ может дать интерфейсу, поскольку у ГУ, помимо достоинств, есть и явный недостаток: во многих случаях оно не может являться очень быстрым интерфейсом.

Если сравнить время, затрачиваемое на произношение команды (для чистоты мысленного эксперимента не будем засчитывать обработку команды системой), с уже имеющимися сейчас методами взаимодействия, окажется, что ГУ в очень многих случаях оказывается на порядок более медленным. Например, для пользователя, сидящего за компьютером, щелкнуть мышью по кнопке чаще всего гораздо быстрее, чем произнести название этой кнопки (из этого наблюдения рождается следующая эвристика: для ГУ короткие названия кнопок предпочтительны в отношении скорости). Разумеется, если пользователь не сидит за компьютером, а сидит в другой комнате, ГУ окажется более быстрым.

Кроме того, говоря о ГУ, следует сразу определиться в отношении понимания системой нечетких команд. Система может как «понимать» команду, так и ограничиваться сравнением услышанного с содержимым своего банка команд. Во втором случае от пользователя будет требоваться время и усилие на формирование понятной системе команды, что резко увеличит число ошибок и уменьшит скорость взаимодействия. Можно, конечно, держать пользователя перед монитором и показывать ему возможные в данном контексте команды (читай — меню), но, как уже было сказано, необязательно, что голосовой ввод команд в такой ситуации будет самым быстрым. Проблема здесь заключается в том, что от понимания системой команд мы ещё очень далеки, в ближайшие несколько лет речь может идти только в сравнении команды с банком. В ближайшее время ГУ будет не более чем очередной инкарнацией пресловутой командной строки со всеми её проблемами — ничего принципиально революционного с её появлением не произойдет. В прессе, напротив, ГУ обсуждается так, будто этого понимания мы уже достигли, что попросту некорректно.

Ситуацию портит ещё и то, что полное введение ГУ в теперешних интерфейсах, к сожалению, очень трудоемко. Большинство диалоговых окон нужно будет переделывать, чтобы голосом можно было быстро изменить любой параметр в них. Учитывая стоимость такой переделки, легко предположить, что после появления ГУ большинство программ долго не смогут полноценно пользоваться этим способом взаимодействия. ГУ опять откладывается на несколько лет.

Таким образом, в ближайшие годы ГУ отнюдь не революционизирует пользовательские интерфейсы, но улучшит интерфейсы существующие. Голосовой интерфейс, сопряженный с тем же GUI, может сделать (и сделает) жизнь пользователей гораздо проще. Достаточно сказать, что компьютерная клавиатура для большинства пользователей станет архаикой — одно это стоит того, чтобы молиться на голосовое управление. Но само ГУ в чистом виде всех проблем отнюдь не решит.

Часть вторая — трехмерные среды

Трехмерность интерфейсов (далее ТМ), в отличие от голосового управления, уже перешла из научной фантастики в компьютеры пользователей. Сразу же оказалось, что, помимо игр, применить ТМ в обычных задачах крайне тяжело. Основных проблем здесь три: одна идеологическая, другая организационная, третья — техническая.

Идеологическая проблема

Главная на данный момент проблема ТМ заключается в том, что до сих пор не понятно, как трехмерная среда может быть использована в жизни простого офисного работника (а это главная движущая сила в программной индустрии). Несмотря на то, что в некоторых областях ТМ является вполне работающим интерфейсным методом (например, в управлении производством или в видео-арте), потенциал ТМ в массе своей ещё не определен. Некоторые попытки, конечно, предпринимаются, но они охватывают лишь часть деятельности пользователей, а это значит, что реального трехмерного интерфейса не будет ещё очень долго.

При этом не может утешать даже сознание того факта, что ТМ, вероятнее всего, вполне применима: никто не знает, когда будет изобретен способ с пользой применять трехмерные среды в интерфейсе. Может быть, это произойдет завтра, может быть — через годы. Может быть — никогда (хотя это и маловероятно).

Кадр из наивного фильма Хакеры. Арт-директору, несмотря на весь его талант, даже не пришло в голову, что в трехмерном интерфейсе пользователь не привязан к полу, он может «летать» не только между «зданий», но и над ними.

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

Такая жизнь и производная от неё биологическая эволюция привели к тому, что успешное восприятие трехмерной среды требует тренировок для своего раскрытия (летчики учатся не только устройству приборной панели и радиокомандам, они также учатся летать; вероятно, что помимо тренировок, необходим ещё и талант). Применительно к интерфейсам в этом нет никакой проблемы, просто потому что можно создать (и легче создать) не трехмерный, а «двух-с-половиной-мерный» интерфейс, хитрость в том, что этот интерфейс у нас уже есть! Если внимательно посмотреть на интерфейс Windows, например, легко увидеть, что у всех программ есть не только высота и ширина, но и небольшая, в несколько пикселей, глубина! Таким образом, мы уже много лет имеем ограниченный ТМ, благополучно этого не замечая.

Организационная проблема

В тот момент, когда всем со всей очевидностью станет ясно, как и зачем применять ТМ в интерфейсе (см. предыдущий параграф), возникнет другая проблема. Старые (двумерные) элементы управления не будут работать в новой среде: нужно будет разработать новые элементы, стандартизировать их и научить разработчиков ими пользоваться.

Практика показывает, что такого рода организационные проблемы решаются очень медленно: пройдут годы и даже (возможно) десятилетия, прежде чем ТМ станет работающим стандартом. Таким образом, ТМ опять откладывается в долгий ящик.

Техническая проблема

До сих пор основным типом информации, с которой сталкивается пользователь, является информация текстовая. Проблема заключается в том, что на современных мониторах, обладающих весьма низким разрешением, с трудом читается и обычный текст, степень же читаемости текста, подвергнутого геометрическим трансформациям (читай — перспективе) хуже на порядок. Чтобы повысить эту читаемость, необходимо увеличивать размер литер, но без увеличения разрешения монитора сделать это невозможно: на экран вмещается гораздо меньше текста, чем хочется.

Несмотря на то, что в последние годы в увеличении разрешения мониторов был достигнут значительный прогресс, до идеала (170 или более точек на дюйм) ещё очень далеко. Пройдут годы, прежде чем достаточная часть пользователей обзаведется экранами с высоким разрешением. До того времени эта проблема не будет разрешима (возможен, впрочем, иной вариант — текст будет заменен звуком и видео — но это пока фантастика).

Увы

Эти три причины не действуют по отдельности: пока не будет решена проблема текста, никто не будет вкладывать большие деньги в попытки изобрести применение ТМ, пока не изобретут это применение, не появятся и стандарты. В результате трехмерные интерфейсы откладываются на неопределенно долгий срок. А жаль.

Часть третья — деятельностно-ориентированные интерфейсы

Почти все графические интерфейсы пользователя в настоящее время принадлежат к одному из двух типов:

  1. Имплементационные интерфейсы (сделали, как получилось). Характерными примерами таких интерфейсов являются интерфейсы самодельных систем автоматизации: появление новых и изменение существующих функций без перепроектирования системы всегда пагубно влияет на интерфейс. Такие интерфейсы характерны обилием элементов управления, полным равнодушием ко введенным ранее данным (пользователь обязан вводить значение, даже если система может сама его безболезненно вычислить), низкой структурированностью.
  2. Объектные интерфейсы. В системе реализованы некоторые объекты, пользователь оперирует ими и тем самым достигает необходимого ему результата. Как правило, такие интерфейсы характерны небольшим количеством элементов управления (значимая информация вычисляется системой не только из самих объектов, но также из их взаимосвязи) и (характерная черта) высокой структурированностью.

Объектные интерфейсы практически всегда гораздо лучше интерфейсов имплементационных (собственно говоря, объектные интерфейсы — это следующая, после имплементационных интерфейсов, ступень эволюции). Поспорить с этим невозможно, но открытым остается вопрос — что лучше объектных интерфейсов? Какова следующая эволюционная ступень?

Это, вероятно, деятельностно-ориентированные интерфейсы (ДоИ, обратите внимание, что это наш, относительно условный термин). В отличие от объектных интерфейсов, в которых пользователю предоставляются объекты и свобода манипулирования ими, в ДоИ «строительными блоками» являются задачи пользователя. В качестве примера можно привести диалоговое окно создания нового документа в MS Word: создать можно не просто обобщенный документ, одинаково плохо решающий все задачи, но документ для текущей задачи пользователя (например, письмо).

Перед тем, как перечислять преимущества этого вида интерфейсов, нужно определить, чем несовершенны интерфейсы объектные. Недостатки их таковы:

  1. Такие интерфейсы требуют от пользователя существенных когнитивных нагрузок и способности к абстрактному мышлению: пользователю необходимо транслировать цель своих действий в конкретный алгоритм использования объектов. Это требует определенных усилий, так что при прочих равных от этой работы пользователей следует освободить.
  2. Объектные интерфейсы зачастую требуют от пользователя серьезных усилий по отвлечению от собственной предметной области и привлечения внимания к вопросу «компьютерной поддержки» своей деятельности: репрезентируемые объекты, будучи универсальными, не полностью соответствуют предметной области конкретного пользователя. Например, разные интерфейсы почтового клиента нужны пользователю, который получает 5 писем в день и пользователю, который получает 70 писем, хотя в обоих случаях объекты (письма) одни и те же.
  3. Во многих случаях «объектность» интерфейса подталкивает его разработчика к совершению некорректных действий: в поиске объектов деятельности разработчики чаще всего ограничиваются правами доступа. Смена парадигмы может форсировать разработчиков более тщательно подходить к проектированию функциональности и интерфейса (хотя и новая парадигма, вероятно, тоже будет подталкивать разработчиков к совершению некорректных действий).

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

Частным, вырожденным, примером деятельностно-ориентированного интерфейса являются мастера (Wizards). Вместо того, чтобы показывать пользователю единое диалоговое окно со сложной конфигурацией элементов управления, пользователю выдается сравнительно простая последовательность экранов. В идеальном случае, когда каждый последующий экран зависит от действий пользователя на предыдущем экране, мастер оказывается чрезвычайно эффективным. В неидеальном случае, когда его экраны не связаны между собой, он всё равно оказывается более эффективным (незначительное снижение скорости работы компенсируется низкими когнитивными нагрузками пользователя и другими факторами).

Но мастера это только начало пути: деятельностно-ориентированного в них не так уж и много. В будущем интерфейсы, идя по пути большей ориентированности на задачи и деятельность пользователей, достигнут ещё большей эффективности, при этом:

  1. Разделение между интерфейсами, предназначенными для профессионалов и непрофессионалов, будет увеличиваться (как это уже произошло во всех других областях техники).
  2. Программы будут становиться все более и более специализированными: не просто текстовый редактор, а текстовый редактор для сугубо определенной группы пользователей, решающих определенные задачи.
  3. Адаптивность интерфейсов будет увеличиваться: они будут все больше и больше учитывать характерные особенности работы конкретных пользователей.
  4. Количество технических подробностей (файлы, папки, порты и т.п.) в большинстве интерфейсов будет резко сокращено, поскольку эти объекты не связаны напрямую с деятельностью пользователей.

Show your support

Clapping shows how much you appreciated Влад Головач’s story.