www.yurii.ru

Пользовательский интерфейс и его виды

МИНИСТЕРСТВО  ОБРАЗОВАНИЯ И НАУКИ  РОССИЙСКОЙ ФЕДЕРАЦИИ

Государственное образовательное учреждение

высшего профессионального образования   

«Сибирский  государственный  аэрокосмический  университет

  имени академика  М.Ф. Решетнева»

(СибГАУ)  

Кафедра: Информационных экономических систем  

Реферат на тему:

Пользовательский  интерфейс и его  виды            

Красноярск 2012 

 

Оглавление

 

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

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

       Интерфейс - совокупность технических, программных и методических (протоколов, правил, соглашений) средств сопряжения в вычислительной системе пользователей с устройствами и программами, а также устройств с другими устройствами и программами.

       Интерфейс - в широком смысле слова, это способ (стандарт) взаимодействия между объектами. Интерфейс в техническом смысле слова задаёт параметры, процедуры и характеристики взаимодействия объектов. Различают:

       Интерфейс пользователя - набор методов взаимодействия компьютерной программы и пользователя этой программы.

       Программный интерфейс - набор методов для  взаимодействия между программами.

       Физический  интерфейс - способ взаимодействия физических устройств. Чаще всего речь идёт о  компьютерных портах.

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

       В основном пользователь генерирует сообщения  следующих типов:

       В ответ пользователь получает подсказки  или справки; информационные сообщения, требующие ответа; приказы, требующие  действия; сообщения об ошибках и  другую информацию.

       Интерфейс пользователя компьютерного приложения включает:

       По  аналогии с процедурным и объектным  подходом к программированию различают процедурно-ориентированный и объектно-ориентированный подходы к разработкеинтерфейсов.

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

       Информационная  система является средой, составляющими  элементами которой являются компьютеры, компьютерные сети, программные продукты, базы данных, люди, различного рода технические и программные средства связи и т.д. Основная цель информационной системы — организация хранения и передачи информации. Информационная система представляет собой человеко-компьютерную систему обработки информации.

       Объектно-ориентированные  интерфейсы используют несколько иную модель взаимодействияс пользователем, ориентированную на манипулирование объектами предметной области. Врамках згой модели пользователю предоставляется возможность напрямую взаимодействовать скаждым объектом и инициировать выполнение операций, в процессе которых взаимодействуютнесколько объектов. Задача пользователя формулируется как целенаправленное изменениенекоторого объекта, имеющего внутреннюю структуру, определенное содержание и внешнеесимвольное или графическое представление. Объект при этом понимается в широком смыслеслова, например, модель реальной системы или процесса, база данных, текст и т. п. Пользователюпредоставляется возможность создавать объекты, изменять их параметры и связи с другимиобъектами, а также инициировать взаимодействие этих объектов. Элементы интерфейсов данноготипа включены в пользовательский интерфейс Windows, например, пользователь может «взять»файл и «переместить» его в другую папку. Таким образом, он инициирует выполнение операцииперемещения файла.

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

       Различают процедурно–ориентированные интерфейсы трех типов:

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

       Интерфейс-меню в отличие от примитивного интерфейса позволяет пользователю выбиратьнеобходимые операции из специального списка, выводимого ему программой. Эти интерфейсыпредполагают реализацию множества сценариев работы, последовательность действий в которыхопределяется пользователем.

       Различают одноуровневые и иерархические  меню. Первые используют для сравнительнопростого управления вычислительным процессом, когда вариантов немного (не более 5-7), и онивключают операции одного типа, например, Создать, Открыть, Закрыть и т. п. Вторые - прибольшом количестве вариантов или их очевидных различиях, например, операции с файлами иоперации с данными, хранящимися в этих файлах.Интерфейсы данного типа несложно реализовать в рамках структурного подхода кпрограммированию.

       Алгоритм  программы с многоуровневым меню обычно строится по уровням, причем выборкоманды на каждом уровне осуществляется так же, как для одноуровневого меню.

       Интерфейс-меню предполагает, что программа находится  либо в состоянии Уровень меню,либо в состоянии Выполнение операции. В состоянии Уровень меню осуществляется вывод менюсоответствующего уровня и выбор нужного пункта меню, а в состоянии Выполнение операцииреализуется сценарий выбранной операции. В порядке исключения иногда пользователюпредоставляется возможность завершения операции независимо от стадии выполнения сценарияи/или программы, например, по нажатию клавиши Esc.

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

       В условиях ограниченной навигации независимо от варианта реализации поиск требуемогопункта более чем двухуровневого меню может  оказаться непростой задачей.

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

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

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

       Причем  выбор следующей операции в меню осуществляется как мышью, так и с помощьюклавиатуры.

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

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

       Разработка  пользовательского интерфейса включает те же основные этапы, что и разработка программного обеспечения:.

stud24.ru

 

Начальная

Windows Commander

Far
WinNavigator
Frigate
Norton Commander
WinNC
Dos Navigator
Servant Salamander
Turbo Browser

Winamp, Skins, Plugins
Необходимые Утилиты
Текстовые редакторы
Юмор

File managers and best utilites

Пользовательский интерфейс и его виды. Пользовательский интерфейс реферат


Доклад - Пользовательский интерфейс - Информатика, программирование

Сегодня, благодаря совершенно неожиданным (по меркам 5-летней давности) применениям компьютеров, пользовательский интерфейс привлекает все больше внимания. К сожалению, как всякое модное слово (искусственный интеллект, мультимедиа, Internet) термин пользовательский интерфейс незамедлительно начали использовать в качестве рекламного аргумента в результате чего его смысл стал куда менее определенным. В этой ситуации было бы странно претендовать на истину, однако некоторыми соображениями автор этих строк хотел бы поделиться с читателями.

Во-первых, в понятие пользовательского интерфейса (ПИ) входит не только, и даже не столько, картинка на экране – трехмерная, анимированная, просто выполнена в модном дизайне, – а способы взаимодействия пользователя с системой. В этом контексте очень интересно сравнить материалы по ПИ в российской компьютерной прессе (напоминающие мне рецензии искусствоведов на художественные выставки) и классическую книгу Дональда Нормана «Психология повседневных вещей» («The Psychology of Everyday Things»), где основным примером книги оказался дизайн дверных ручек.

Еще одна книга, очень популярная среди американских специалистов по ПИ, анализирует развитие столовых приборов в средние века. В обеих книгах дизайн имеет подчиненное положение. Его главная цель – облегчить пользование предметом.

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

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

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

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

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

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

Вы скажете, что люди все же учатся. Это неправда, поскольку сегодня практически нет пользователей-любителей. До последнего времени на компьютерах любители могли только играть в игры. (Кстати, у популярных игр интерфейс очень хороший и совершенно не оконный.) Сегодня Internet стал для обыкновенных людей мощной побудительной причиной покупать компьютеры. И уже раздаются критические голоса об интерфейсе, трудно понимаемом простыми пользователями. Можно с уверенностью предсказать, что дальше станет хуже. Прирастать пользователи будут только любителями.

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

Отправной точкой всякого хорошего интерфейса является метафора.

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

Использованием метафоры убивается сразу несколько зайцев. Во-первых, пользователю легче понимать и интерпретировать изображение на экране.

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

В качестве примера удачной метафоры в интерфейсе можно привести Lotus Organizer, внешний вид которого напоминает привычный еженедельник, функции которого и выполняет этот продукт. Примером неудачной метафоры, точнее ее полного отсутствия там, где она необходима, может служить Explorer Windows 95.

Итак, мы придумали замечательную метафору для нашего интерфейса.

Сохраним ее в секрете как коммерческую тайну и пойдем дальше. Теперь нам нужно сделать концептуальный дизайн интерфейса. Что это такое? В рамках нашей метафоры мы должны разработать систему интерфейсных элементов, своего рода алфавит взаимодействия, изучив который пользователь сможет легко делать то, что ему нужно. Еще мы должны найти изящный способ изображения как отдельных элементов так и их групп. И, наконец, мы должны выбрать общий изобразительный стиль, который был бы легко узнаваем и приятен для глаз.

Наш (не)удачный предшественник – оконный интерфейс решил только первую задачу концептуального дизайна. В нем есть понятие «контролей» – интерфейсных элементов, с которыми в основном и происходит взаимодействие. В Windows 95 сделана попытка выработки общего изобразительного стиля для контролей. Об общем стиле экранного изображения речи вообще не идет, если только не считать за таковой набор «тем», входящий в состав Microsoft Plus.

Примером хорошего концептуального дизайна интерфейса (помимо некоторых компьютерных игр) может служить система дорожных знаков.

Ее разработка не так проста как может показаться на первый взгляд.

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

Концептуальный дизайн интерфейса должен базироваться на идее интерфейсной среды. В сущности, на время работы с системой пользователь погружается в среду интерфейса подобно тому, как приехав на сафари, турист погружается в среду дикой природы. Здесь слово «среда» применяется не для красоты, а как обозначение типичной для поведения человека в различных средах связки «сигнал-действие».

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

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

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

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

Понятия среды и понятие метафоры близко связаны. Если среда по виду и некоторым опорным элементам будет напоминать пользователю что-то уже знакомое, он сможет быстрее приспособиться к ней. Вместе с тем выбранная метафора может продиктовать все изобразительные решения дизайна интерфейса. Однако следует остерегаться фотографической похожести среды в компьютере с выбранной метафорой. (Тут есть аналогия с живописью.) Все-таки компьютерная среда – искусственна и полностью повторить все элементы взаимодействия из физического мира не удастся. А фотографическая похожесть может спровоцировать пользователя на то, чтобы пользоваться этой искусственной средой в точности как той, которую она напоминает. В первый же раз, когда пользователь натолкнется на различие, он испытает тяжелый психологический шок, который может привести к полному отторжению системы.

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

Тут мы подходим к еще одному важному принципу построения дизайна интерфейса – балансу между интерактивными возможностями программы и сложностью ее изобразительного ряда. Так же как при создании игр главным является баланс между сложностью игры и ее увлекательностью, выработка которого занимает основное время, так и в интерфейсе должен обеспечиваться баланс между функциональными возможностями программы, возможностями манипуляции ею и ее изобразительным рядом.

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

Сложная картинка психологически готовит к сложной жизни с программой.

Из этого, кстати, не следует, что у сложной программы должна быть изощренная графика и сложные пути взаимодействия. (Важное напоминание – мы разговариваем не о программах, предназначенных для профессиональной деятельности!) Лучше эту сложность «вытаскивать» постепенно, подобно кролику из шляпы или подобно наращиванию уровней в компьютерных играх.

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

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

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

Если у читателя создалось впечатление, что я ругаю оконный интерфейс, то это не так. Я использую его как всем известный источник аналогий и примеров. Оконный интерфейс был в начале 80-х столь же революционным и сыграл столь же положительную роль, что и текстовый интерфейс 70-х.

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

Во всех центрах, известных разработкой новых интерфейсов (XEROX PARC, MIT Media Lab, Apple Computer, Carnegie Mellon University), идут разработки разных концепций дизайна интерфейсов, опирающихся на возможности анимации. Прежде чем описывать их, я хочу изложить свою точку зрения на «физику интерфейса», однажды уже опубликованную, но которую уместно здесь повторить.

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

При переходе от алфавитно-цифровых дисплеев к графическим поле дисплея казалось непомерно большим и проблема синхронизации точки взаимодействия была самой сложной. Ее решение было выполнено по принципу «разделяй и властвуй». Поле экрана разбивалось на прямоугольники-окна и вся работа велась только в одном из них – так называемом активном окне. Одновременно сменилась форма текстового курсора, и, что очень важно, он начал подмигивать. Это требовалось для облегчения проблемы поиска текстового курсора в окне. Поиск же курсора мыши при его потере из поля внимания пользователь (до сих пор) выполняет подергиванием мыши.

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

Эта возможность не только теоретически осознана, но и уже около пяти лет находится в стадии экспериментального исследования. Две анимированные среды интерфейса разработаны в той самой фирме XEROX PARC, которой мы обязаны появлением идеи оконного интерфейса (и даже в группе того самого Стюарда Карда, которому принадлежит авторство этой идеи). Одна – «Конические деревья» – является визуализацией файловой системы компьютера и похожа на систему детских пирамидок, каждый уровень которой соответствует уровню файлового каталога. Сами файлы из каталога отображаются в виде 3-мерной карусели под своим каталогом. Соль модели в том, что нужный файл можно «приблизить» поворотом карусели (может быть, не одной), идущим в режиме анимации.

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

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

Анимация за счет увеличения времени перехода от одной картинки к другой (а именно времени анимированного преобразования картинок) существенно сокращает время осознания новой картинки. В психологическом смысле новой картинки и не существует, существует преобразованная старая, а так как все преобразования шли «на глазах у изумленных зрителей», то пользователь практически немедленно готов к взаимодействию.

Существует еще одно свойство анимационного пользовательского интерфейса, которое существенно улучшает его полезность по сравнению с графическим интерфейсом, а именно динамически визуальные сигналы.

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

Беда в том, что в оконном интерфейсе динамические визуальные сигналы носят характер гениальных находок и не образуют полную логичную систему. В качестве аналогии отмечу разницу между алфавитом и иероглифами. Выучив алфавит, можно читать любой текст. Выучив иероглифы, нельзя гарантировать, что не появится новый.

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

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

Однако, решая многие проблемы для пользователя, анимационный интерфейс, как это часто бывает, ставит тяжелые проблемы перед программистом и дизайнером.

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

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

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

Для дизайнеров интерфейсов конкретных продуктов работа тоже существенно усложнится. Анимационный интерфейс – орудие очень мощное и поэтому требует особой осторожности. Попытки потрясти мир могут привести к быстрой утомляемости пользователя и, как следствие, отторжению системы. Основной задачей дизайнера становится организация не неподвижного пространства, а целой серии пространств, неразрывно связанных между собой. Аналогия с созданием фильмов представляется здесь очень уместной.

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

После выработки сквозного визуального решения необходимо прорисовать картинки, называемые у аниматоров «фонами». Точнее называть их неподвижной составляющей подвижного изображения. На каждом фоне надо расположить анимированные элементы взаимодействия. И, наконец, самое трудное – надо спроектировать визуальные переходы между существенно отличающимися состояниями. И все это, сохраняя выбранный стиль! Кому это нужно? Пользователю, который ничего этого не заметит, но зато будет гораздо проще и быстрее взаимодействовать с системой. Хороший интерфейс похож на удобную обувь – никто его не замечает, а, если обратить на него внимание, в ответ получишь равнодушное «Ну и что такого?». Зато плохой интерфейс у всех на виду и на устах.

На самом деле, хороший интерфейс пользователями замечается подсознательно, и, когда он нравится, симпатии переносятся на функциональную часть программы. (Про «ДИСКо Командир» многие говорят, что он хорош, но НИКТО не говорит, чем именно.) К сожалению, следует констатировать, что сегодня стандартом стал плохой интерфейс, даже не столько плохо сделанный, сколько вообще «получившийся сам собой». Так, самое модное сейчас применение компьютеров – блуждание по Сети – имеет тот интерфейс, который вытекает из языка HTML, а он, в свою очередь, производит впечатление «времянки», которая, как теперь ясно, пришла всерьез и надолго.

Моя любимая цитата из обзора интерфейсов – «Интерфейс этой программы неестественен, потому что клавиша Alt+F4 не закрывает приложения». Здесь уже требуется талант Дарвина, чтобы понять происхождение такого вида естественности! Многие интерфейсные проблемы являются естественным продолжением маркетинговых достижений. Предположим, что ваша фирма выходит на рынок с новой моделью аудиомагнитофона, отличающейся от всех остальных некой возможностью А. Для успешной продажи этой модели та кнопка на панели управления, которая реализует А, должна быть как можно заметнее. Тогда потенциальный покупатель сам спросит «А что это?» – и продать ваше изделие будет гораздо легче. Однако, купив его и включив дома, этот покупатель будет, скорее всего, пользоваться стандартными кнопками для стандартных действий, показывая возможность А только гостям.

Таким образом, налицо противоречие, следующее из двух разных функций одного и того же товара. Первая функция – продавать самого себя за счет привлекательности и/или необычности внешнего вида, а вторая – использоваться по назначению. С точки зрения продавца (а часто, и производителя), первая функция гораздо важнее. Поэтому навязывается «стандарт», направленный именно на успешность первой функции. Замените аудиомагнитофон интерфейсными средами, и станет понятным, что я имею в виду.

(Желающих увидеть эту проблему крупным планом приглашаю на рынок пиратских CD-ROM, где покупатель принимает решение о покупке в общем-то недешевого товара, глядя только на обертку и даже будучи уверенным, что содержание в какой-то мере ей не соответствует.) Ряд интерфейсных проблем связан с конкурентной борьбой на рынке программ. Пожалуй, главная из них – какие формы должно принимать авторское право на интерфейсные решения. С одной стороны, ясно, что придумать и реализовать хороший интерфейс – очень сложная задача, и авторы такого интерфейса должны получить не только моральное вознаграждение. С другой стороны, если «защитить» такое решение патентом с последующими лицензионными выплатами, это может спровоцировать авторов новых продуктов искать свои, нехоженые и, зачастую, худшие пути в интерфейсе. В качестве яркого примера можно попробовать представить себе последствия патентования использования клавиши «F1» для вызова справки.

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

С проблемой защиты авторского права в области пользовательского интерфейса связаны два громких судебных процесса – Apple Computer против той же Microsoft, где предметом был сам оконный интерфейс, и Lotus против Borland, где с правовой точки зрения оспаривалось включение в Quattro Pro (наравне с несколькими другими) интерфейса Lotus 1-2-3.

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

К сожалению, сегодняшнее состояние рынка программного обеспечения таково, что дорогу себе прокладывают не лучшие решения, а решения, имеющие «большую пробивную силу», в основном связанную с финансовой мощью предлагающих их компаний. Это особенно верно для пользовательского интерфейса. Если взглянуть на программы просмотра WWW, то вообще трудно говорить о дизайне интерфейса – получилось как получилось. Терпимо, но не более. А ведь этими программами пользуется большее число людей, чем какими-либо другими. Теперь такой интерфейс становится фактическим стандартом, а это значит, что последующий переход к более естественному интерфейсу (который, безусловно, рано или поздно произойдет) будет связан с тяжелой психологической ломкой.

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

Список литературы

Донской М. Пользовательский интерфейс

www.ronl.ru

Реферат - Пользовательский интерфейс - Информатика, программирование

Сегодня, благодаря совершенно неожиданным (по меркам 5-летней давности) применениям компьютеров, пользовательский интерфейс привлекает все больше внимания. К сожалению, как всякое модное слово (искусственный интеллект, мультимедиа, Internet) термин пользовательский интерфейс незамедлительно начали использовать в качестве рекламного аргумента в результате чего его смысл стал куда менее определенным. В этой ситуации было бы странно претендовать на истину, однако некоторыми соображениями автор этих строк хотел бы поделиться с читателями.

Во-первых, в понятие пользовательского интерфейса (ПИ) входит не только, и даже не столько, картинка на экране – трехмерная, анимированная, просто выполнена в модном дизайне, – а способы взаимодействия пользователя с системой. В этом контексте очень интересно сравнить материалы по ПИ в российской компьютерной прессе (напоминающие мне рецензии искусствоведов на художественные выставки) и классическую книгу Дональда Нормана «Психология повседневных вещей» («The Psychology of Everyday Things»), где основным примером книги оказался дизайн дверных ручек.

Еще одна книга, очень популярная среди американских специалистов по ПИ, анализирует развитие столовых приборов в средние века. В обеих книгах дизайн имеет подчиненное положение. Его главная цель – облегчить пользование предметом.

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

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

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

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

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

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

Вы скажете, что люди все же учатся. Это неправда, поскольку сегодня практически нет пользователей-любителей. До последнего времени на компьютерах любители могли только играть в игры. (Кстати, у популярных игр интерфейс очень хороший и совершенно не оконный.) Сегодня Internet стал для обыкновенных людей мощной побудительной причиной покупать компьютеры. И уже раздаются критические голоса об интерфейсе, трудно понимаемом простыми пользователями. Можно с уверенностью предсказать, что дальше станет хуже. Прирастать пользователи будут только любителями.

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

Отправной точкой всякого хорошего интерфейса является метафора.

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

Использованием метафоры убивается сразу несколько зайцев. Во-первых, пользователю легче понимать и интерпретировать изображение на экране.

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

В качестве примера удачной метафоры в интерфейсе можно привести Lotus Organizer, внешний вид которого напоминает привычный еженедельник, функции которого и выполняет этот продукт. Примером неудачной метафоры, точнее ее полного отсутствия там, где она необходима, может служить Explorer Windows 95.

Итак, мы придумали замечательную метафору для нашего интерфейса.

Сохраним ее в секрете как коммерческую тайну и пойдем дальше. Теперь нам нужно сделать концептуальный дизайн интерфейса. Что это такое? В рамках нашей метафоры мы должны разработать систему интерфейсных элементов, своего рода алфавит взаимодействия, изучив который пользователь сможет легко делать то, что ему нужно. Еще мы должны найти изящный способ изображения как отдельных элементов так и их групп. И, наконец, мы должны выбрать общий изобразительный стиль, который был бы легко узнаваем и приятен для глаз.

Наш (не)удачный предшественник – оконный интерфейс решил только первую задачу концептуального дизайна. В нем есть понятие «контролей» – интерфейсных элементов, с которыми в основном и происходит взаимодействие. В Windows 95 сделана попытка выработки общего изобразительного стиля для контролей. Об общем стиле экранного изображения речи вообще не идет, если только не считать за таковой набор «тем», входящий в состав Microsoft Plus.

Примером хорошего концептуального дизайна интерфейса (помимо некоторых компьютерных игр) может служить система дорожных знаков.

Ее разработка не так проста как может показаться на первый взгляд.

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

Концептуальный дизайн интерфейса должен базироваться на идее интерфейсной среды. В сущности, на время работы с системой пользователь погружается в среду интерфейса подобно тому, как приехав на сафари, турист погружается в среду дикой природы. Здесь слово «среда» применяется не для красоты, а как обозначение типичной для поведения человека в различных средах связки «сигнал-действие».

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

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

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

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

Понятия среды и понятие метафоры близко связаны. Если среда по виду и некоторым опорным элементам будет напоминать пользователю что-то уже знакомое, он сможет быстрее приспособиться к ней. Вместе с тем выбранная метафора может продиктовать все изобразительные решения дизайна интерфейса. Однако следует остерегаться фотографической похожести среды в компьютере с выбранной метафорой. (Тут есть аналогия с живописью.) Все-таки компьютерная среда – искусственна и полностью повторить все элементы взаимодействия из физического мира не удастся. А фотографическая похожесть может спровоцировать пользователя на то, чтобы пользоваться этой искусственной средой в точности как той, которую она напоминает. В первый же раз, когда пользователь натолкнется на различие, он испытает тяжелый психологический шок, который может привести к полному отторжению системы.

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

Тут мы подходим к еще одному важному принципу построения дизайна интерфейса – балансу между интерактивными возможностями программы и сложностью ее изобразительного ряда. Так же как при создании игр главным является баланс между сложностью игры и ее увлекательностью, выработка которого занимает основное время, так и в интерфейсе должен обеспечиваться баланс между функциональными возможностями программы, возможностями манипуляции ею и ее изобразительным рядом.

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

Сложная картинка психологически готовит к сложной жизни с программой.

Из этого, кстати, не следует, что у сложной программы должна быть изощренная графика и сложные пути взаимодействия. (Важное напоминание – мы разговариваем не о программах, предназначенных для профессиональной деятельности!) Лучше эту сложность «вытаскивать» постепенно, подобно кролику из шляпы или подобно наращиванию уровней в компьютерных играх.

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

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

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

Если у читателя создалось впечатление, что я ругаю оконный интерфейс, то это не так. Я использую его как всем известный источник аналогий и примеров. Оконный интерфейс был в начале 80-х столь же революционным и сыграл столь же положительную роль, что и текстовый интерфейс 70-х.

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

Во всех центрах, известных разработкой новых интерфейсов (XEROX PARC, MIT Media Lab, Apple Computer, Carnegie Mellon University), идут разработки разных концепций дизайна интерфейсов, опирающихся на возможности анимации. Прежде чем описывать их, я хочу изложить свою точку зрения на «физику интерфейса», однажды уже опубликованную, но которую уместно здесь повторить.

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

При переходе от алфавитно-цифровых дисплеев к графическим поле дисплея казалось непомерно большим и проблема синхронизации точки взаимодействия была самой сложной. Ее решение было выполнено по принципу «разделяй и властвуй». Поле экрана разбивалось на прямоугольники-окна и вся работа велась только в одном из них – так называемом активном окне. Одновременно сменилась форма текстового курсора, и, что очень важно, он начал подмигивать. Это требовалось для облегчения проблемы поиска текстового курсора в окне. Поиск же курсора мыши при его потере из поля внимания пользователь (до сих пор) выполняет подергиванием мыши.

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

Эта возможность не только теоретически осознана, но и уже около пяти лет находится в стадии экспериментального исследования. Две анимированные среды интерфейса разработаны в той самой фирме XEROX PARC, которой мы обязаны появлением идеи оконного интерфейса (и даже в группе того самого Стюарда Карда, которому принадлежит авторство этой идеи). Одна – «Конические деревья» – является визуализацией файловой системы компьютера и похожа на систему детских пирамидок, каждый уровень которой соответствует уровню файлового каталога. Сами файлы из каталога отображаются в виде 3-мерной карусели под своим каталогом. Соль модели в том, что нужный файл можно «приблизить» поворотом карусели (может быть, не одной), идущим в режиме анимации.

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

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

Анимация за счет увеличения времени перехода от одной картинки к другой (а именно времени анимированного преобразования картинок) существенно сокращает время осознания новой картинки. В психологическом смысле новой картинки и не существует, существует преобразованная старая, а так как все преобразования шли «на глазах у изумленных зрителей», то пользователь практически немедленно готов к взаимодействию.

Существует еще одно свойство анимационного пользовательского интерфейса, которое существенно улучшает его полезность по сравнению с графическим интерфейсом, а именно динамически визуальные сигналы.

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

Беда в том, что в оконном интерфейсе динамические визуальные сигналы носят характер гениальных находок и не образуют полную логичную систему. В качестве аналогии отмечу разницу между алфавитом и иероглифами. Выучив алфавит, можно читать любой текст. Выучив иероглифы, нельзя гарантировать, что не появится новый.

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

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

Однако, решая многие проблемы для пользователя, анимационный интерфейс, как это часто бывает, ставит тяжелые проблемы перед программистом и дизайнером.

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

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

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

Для дизайнеров интерфейсов конкретных продуктов работа тоже существенно усложнится. Анимационный интерфейс – орудие очень мощное и поэтому требует особой осторожности. Попытки потрясти мир могут привести к быстрой утомляемости пользователя и, как следствие, отторжению системы. Основной задачей дизайнера становится организация не неподвижного пространства, а целой серии пространств, неразрывно связанных между собой. Аналогия с созданием фильмов представляется здесь очень уместной.

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

После выработки сквозного визуального решения необходимо прорисовать картинки, называемые у аниматоров «фонами». Точнее называть их неподвижной составляющей подвижного изображения. На каждом фоне надо расположить анимированные элементы взаимодействия. И, наконец, самое трудное – надо спроектировать визуальные переходы между существенно отличающимися состояниями. И все это, сохраняя выбранный стиль! Кому это нужно? Пользователю, который ничего этого не заметит, но зато будет гораздо проще и быстрее взаимодействовать с системой. Хороший интерфейс похож на удобную обувь – никто его не замечает, а, если обратить на него внимание, в ответ получишь равнодушное «Ну и что такого?». Зато плохой интерфейс у всех на виду и на устах.

На самом деле, хороший интерфейс пользователями замечается подсознательно, и, когда он нравится, симпатии переносятся на функциональную часть программы. (Про «ДИСКо Командир» многие говорят, что он хорош, но НИКТО не говорит, чем именно.) К сожалению, следует констатировать, что сегодня стандартом стал плохой интерфейс, даже не столько плохо сделанный, сколько вообще «получившийся сам собой». Так, самое модное сейчас применение компьютеров – блуждание по Сети – имеет тот интерфейс, который вытекает из языка HTML, а он, в свою очередь, производит впечатление «времянки», которая, как теперь ясно, пришла всерьез и надолго.

Моя любимая цитата из обзора интерфейсов – «Интерфейс этой программы неестественен, потому что клавиша Alt+F4 не закрывает приложения». Здесь уже требуется талант Дарвина, чтобы понять происхождение такого вида естественности! Многие интерфейсные проблемы являются естественным продолжением маркетинговых достижений. Предположим, что ваша фирма выходит на рынок с новой моделью аудиомагнитофона, отличающейся от всех остальных некой возможностью А. Для успешной продажи этой модели та кнопка на панели управления, которая реализует А, должна быть как можно заметнее. Тогда потенциальный покупатель сам спросит «А что это?» – и продать ваше изделие будет гораздо легче. Однако, купив его и включив дома, этот покупатель будет, скорее всего, пользоваться стандартными кнопками для стандартных действий, показывая возможность А только гостям.

Таким образом, налицо противоречие, следующее из двух разных функций одного и того же товара. Первая функция – продавать самого себя за счет привлекательности и/или необычности внешнего вида, а вторая – использоваться по назначению. С точки зрения продавца (а часто, и производителя), первая функция гораздо важнее. Поэтому навязывается «стандарт», направленный именно на успешность первой функции. Замените аудиомагнитофон интерфейсными средами, и станет понятным, что я имею в виду.

(Желающих увидеть эту проблему крупным планом приглашаю на рынок пиратских CD-ROM, где покупатель принимает решение о покупке в общем-то недешевого товара, глядя только на обертку и даже будучи уверенным, что содержание в какой-то мере ей не соответствует.) Ряд интерфейсных проблем связан с конкурентной борьбой на рынке программ. Пожалуй, главная из них – какие формы должно принимать авторское право на интерфейсные решения. С одной стороны, ясно, что придумать и реализовать хороший интерфейс – очень сложная задача, и авторы такого интерфейса должны получить не только моральное вознаграждение. С другой стороны, если «защитить» такое решение патентом с последующими лицензионными выплатами, это может спровоцировать авторов новых продуктов искать свои, нехоженые и, зачастую, худшие пути в интерфейсе. В качестве яркого примера можно попробовать представить себе последствия патентования использования клавиши «F1» для вызова справки.

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

С проблемой защиты авторского права в области пользовательского интерфейса связаны два громких судебных процесса – Apple Computer против той же Microsoft, где предметом был сам оконный интерфейс, и Lotus против Borland, где с правовой точки зрения оспаривалось включение в Quattro Pro (наравне с несколькими другими) интерфейса Lotus 1-2-3.

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

К сожалению, сегодняшнее состояние рынка программного обеспечения таково, что дорогу себе прокладывают не лучшие решения, а решения, имеющие «большую пробивную силу», в основном связанную с финансовой мощью предлагающих их компаний. Это особенно верно для пользовательского интерфейса. Если взглянуть на программы просмотра WWW, то вообще трудно говорить о дизайне интерфейса – получилось как получилось. Терпимо, но не более. А ведь этими программами пользуется большее число людей, чем какими-либо другими. Теперь такой интерфейс становится фактическим стандартом, а это значит, что последующий переход к более естественному интерфейсу (который, безусловно, рано или поздно произойдет) будет связан с тяжелой психологической ломкой.

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

Список литературы

Донской М. Пользовательский интерфейс

www.ronl.ru

Реферат : Пользовательский интерфейс (работа 1)

Пользовательский интерфейс

Сегодня, благодаря совершенно неожиданным (по меркам 5-летней давности) применениям компьютеров, пользовательский интерфейс привлекает все больше внимания. К сожалению, как всякое модное слово (искусственный интеллект, мультимедиа, Internet) термин пользовательский интерфейс незамедлительно начали использовать в качестве рекламного аргумента в результате чего его смысл стал куда менее определенным. В этой ситуации было бы странно претендовать на истину, однако некоторыми соображениями автор этих строк хотел бы поделиться с читателями.

Во-первых, в понятие пользовательского интерфейса (ПИ) входит не только, и даже не столько, картинка на экране – трехмерная, анимированная, просто выполнена в модном дизайне, – а способы взаимодействия пользователя с системой. В этом контексте очень интересно сравнить материалы по ПИ в российской компьютерной прессе (напоминающие мне рецензии искусствоведов на художественные выставки) и классическую книгу Дональда Нормана "Психология повседневных вещей" ("The Psychology of Everyday Things"), где основным примером книги оказался дизайн дверных ручек.

Еще одна книга, очень популярная среди американских специалистов по ПИ, анализирует развитие столовых приборов в средние века. В обеих книгах дизайн имеет подчиненное положение. Его главная цель – облегчить пользование предметом.

Этот взгляд кардинально отличается от широко распространенного мнения, что пользовательский интерфейс – это набор "интерфейсных элементов" и их расположение на экране. Сама номенклатура принятых в среде Windows интерфейсных элементов вызывает большие сомнения в том, что на ее базе можно создать действительно удобные интерфейсы.

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

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

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

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

С пользователем-любителем все наоборот. Пока в уголовном кодексе не предусмотрено наказание типа "заключения в пользовательский интерфейс", он имеет право выбора (не между одной программой и другой, а между компьютером и телевизором или даже книгой). Он хочет за компьютером развлекаться, и тратить время и силы на овладение неудобным интерфейсом ему не с руки. Исключением являются фанаты, общающиеся с компьютером по принципу "охота пуще неволи".

Вы скажете, что люди все же учатся. Это неправда, поскольку сегодня практически нет пользователей-любителей. До последнего времени на компьютерах любители могли только играть в игры. (Кстати, у популярных игр интерфейс очень хороший и совершенно не оконный.) Сегодня Internet стал для обыкновенных людей мощной побудительной причиной покупать компьютеры. И уже раздаются критические голоса об интерфейсе, трудно понимаемом простыми пользователями. Можно с уверенностью предсказать, что дальше станет хуже. Прирастать пользователи будут только любителями.

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

Отправной точкой всякого хорошего интерфейса является метафора.

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

Использованием метафоры убивается сразу несколько зайцев. Во-первых, пользователю легче понимать и интерпретировать изображение на экране.

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

В качестве примера удачной метафоры в интерфейсе можно привести Lotus Organizer, внешний вид которого напоминает привычный еженедельник, функции которого и выполняет этот продукт. Примером неудачной метафоры, точнее ее полного отсутствия там, где она необходима, может служить Explorer Windows 95.

Итак, мы придумали замечательную метафору для нашего интерфейса.

Сохраним ее в секрете как коммерческую тайну и пойдем дальше. Теперь нам нужно сделать концептуальный дизайн интерфейса. Что это такое? В рамках нашей метафоры мы должны разработать систему интерфейсных элементов, своего рода алфавит взаимодействия, изучив который пользователь сможет легко делать то, что ему нужно. Еще мы должны найти изящный способ изображения как отдельных элементов так и их групп. И, наконец, мы должны выбрать общий изобразительный стиль, который был бы легко узнаваем и приятен для глаз.

Наш (не)удачный предшественник – оконный интерфейс решил только первую задачу концептуального дизайна. В нем есть понятие "контролей" – интерфейсных элементов, с которыми в основном и происходит взаимодействие. В Windows 95 сделана попытка выработки общего изобразительного стиля для контролей. Об общем стиле экранного изображения речи вообще не идет, если только не считать за таковой набор "тем", входящий в состав Microsoft Plus.

Примером хорошего концептуального дизайна интерфейса (помимо некоторых компьютерных игр) может служить система дорожных знаков.

Ее разработка не так проста как может показаться на первый взгляд.

Обратите внимание на сочетание "реалистических" пиктограмм с "абстрактными", на комбинирование многих знаков, висящих вместе, на "словарь фонов". Кроме того, удалось решить поистине титаническую задачу – знаки заметны и не портят красоту окружающей природы там, где эта красота есть. И, главное, эта система хорошо работает и не требует от своих пользователей высшего образования. Во многих моих интерфейсных раздумьях дорожные знаки занимают значительное место.

Концептуальный дизайн интерфейса должен базироваться на идее интерфейсной среды. В сущности, на время работы с системой пользователь погружается в среду интерфейса подобно тому, как приехав на сафари, турист погружается в среду дикой природы. Здесь слово "среда" применяется не для красоты, а как обозначение типичной для поведения человека в различных средах связки "сигнал-действие".

Эта идея принадлежит психологу Гибсону (не путайте с популярным фантастом) и извлечена мной из его книги "Экологический подход к психологии восприятия". Он утверждает, что наше восприятие основано на мотивации в том смысле, что если мы хотим есть, то видим только съедобные вещи, а если устали – то только предметы мебели, предназначенные для отдыха. То есть человек не просто видит, а опрашивает среду, руководствуясь различными мотивами. В свою очередь, среда подает человеку разные сигналы. Наряду с ответами на его запросы, есть сигналы первоочередные (или всегда запрашиваемые), связанные с физической опасностью. Опираясь на полученные сигналы, человек осуществляет различные действия.

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

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

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

Понятия среды и понятие метафоры близко связаны. Если среда по виду и некоторым опорным элементам будет напоминать пользователю что-то уже знакомое, он сможет быстрее приспособиться к ней. Вместе с тем выбранная метафора может продиктовать все изобразительные решения дизайна интерфейса. Однако следует остерегаться фотографической похожести среды в компьютере с выбранной метафорой. (Тут есть аналогия с живописью.) Все-таки компьютерная среда – искусственна и полностью повторить все элементы взаимодействия из физического мира не удастся. А фотографическая похожесть может спровоцировать пользователя на то, чтобы пользоваться этой искусственной средой в точности как той, которую она напоминает. В первый же раз, когда пользователь натолкнется на различие, он испытает тяжелый психологический шок, который может привести к полному отторжению системы.

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

Тут мы подходим к еще одному важному принципу построения дизайна интерфейса – балансу между интерактивными возможностями программы и сложностью ее изобразительного ряда. Так же как при создании игр главным является баланс между сложностью игры и ее увлекательностью, выработка которого занимает основное время, так и в интерфейсе должен обеспечиваться баланс между функциональными возможностями программы, возможностями манипуляции ею и ее изобразительным рядом.

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

Сложная картинка психологически готовит к сложной жизни с программой.

Из этого, кстати, не следует, что у сложной программы должна быть изощренная графика и сложные пути взаимодействия. (Важное напоминание – мы разговариваем не о программах, предназначенных для профессиональной деятельности!) Лучше эту сложность "вытаскивать" постепенно, подобно кролику из шляпы или подобно наращиванию уровней в компьютерных играх.

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

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

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

Если у читателя создалось впечатление, что я ругаю оконный интерфейс, то это не так. Я использую его как всем известный источник аналогий и примеров. Оконный интерфейс был в начале 80-х столь же революционным и сыграл столь же положительную роль, что и текстовый интерфейс 70-х.

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

Во всех центрах, известных разработкой новых интерфейсов (XEROX PARC, MIT Media Lab, Apple Computer, Carnegie Mellon University), идут разработки разных концепций дизайна интерфейсов, опирающихся на возможности анимации. Прежде чем описывать их, я хочу изложить свою точку зрения на "физику интерфейса", однажды уже опубликованную, но которую уместно здесь повторить.

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

При переходе от алфавитно-цифровых дисплеев к графическим поле дисплея казалось непомерно большим и проблема синхронизации точки взаимодействия была самой сложной. Ее решение было выполнено по принципу "разделяй и властвуй". Поле экрана разбивалось на прямоугольники-окна и вся работа велась только в одном из них – так называемом активном окне. Одновременно сменилась форма текстового курсора, и, что очень важно, он начал подмигивать. Это требовалось для облегчения проблемы поиска текстового курсора в окне. Поиск же курсора мыши при его потере из поля внимания пользователь (до сих пор) выполняет подергиванием мыши.

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

Эта возможность не только теоретически осознана, но и уже около пяти лет находится в стадии экспериментального исследования. Две анимированные среды интерфейса разработаны в той самой фирме XEROX PARC, которой мы обязаны появлением идеи оконного интерфейса (и даже в группе того самого Стюарда Карда, которому принадлежит авторство этой идеи). Одна – "Конические деревья" – является визуализацией файловой системы компьютера и похожа на систему детских пирамидок, каждый уровень которой соответствует уровню файлового каталога. Сами файлы из каталога отображаются в виде 3-мерной карусели под своим каталогом. Соль модели в том, что нужный файл можно "приблизить" поворотом карусели (может быть, не одной), идущим в режиме анимации.

Вторая модель – "Стена в перспективе" – также отображает файловую систему, но вне ее иерархии, согласно двум каким-то параметрам, например частоте обращения к файлу и его размеру. Это нормальная стена, только очень длинная, разбитая на три отрезка. Средний из них отображается на экране плоско, а два крайних уходят в перспективу. Пользователь может сделать средним любой отрезок стены, причем это тоже происходит в режиме анимации. Для Карда анимация – принципиальный момент, так как "анимация сохраняет в восприятии пользователя идентичность объекта", то есть пользователь легко соотносит объекты в конечной точке движения с объектами в начальной.

На это свойство анимационного интерфейса следует обратить особое внимание. В графическом интерфейсе пользователь имеет дело с последовательностью картинок. Программисты, хвастаясь скоростью своих программ, замеряют время, "теряемое" между картинками. Однако психологи, занимающиеся интерфейсом, говорят о совсем другом времени, – времени, когда пользователь может начать взаимодействие с новой картинкой на экране. В этот интервал входит не только время вывода новой картинки на экран, но и время осознания ее пользователем, ведь определенное время и усилия тратятся пользователем на то, чтобы понять, как каждая следующая картинка соотносится с предыдущей.

Анимация за счет увеличения времени перехода от одной картинки к другой (а именно времени анимированного преобразования картинок) существенно сокращает время осознания новой картинки. В психологическом смысле новой картинки и не существует, существует преобразованная старая, а так как все преобразования шли "на глазах у изумленных зрителей", то пользователь практически немедленно готов к взаимодействию.

Существует еще одно свойство анимационного пользовательского интерфейса, которое существенно улучшает его полезность по сравнению с графическим интерфейсом, а именно динамически визуальные сигналы.

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

Беда в том, что в оконном интерфейсе динамические визуальные сигналы носят характер гениальных находок и не образуют полную логичную систему. В качестве аналогии отмечу разницу между алфавитом и иероглифами. Выучив алфавит, можно читать любой текст. Выучив иероглифы, нельзя гарантировать, что не появится новый.

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

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

Однако, решая многие проблемы для пользователя, анимационный интерфейс, как это часто бывает, ставит тяжелые проблемы перед программистом и дизайнером.

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

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

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

Для дизайнеров интерфейсов конкретных продуктов работа тоже существенно усложнится. Анимационный интерфейс – орудие очень мощное и поэтому требует особой осторожности. Попытки потрясти мир могут привести к быстрой утомляемости пользователя и, как следствие, отторжению системы. Основной задачей дизайнера становится организация не неподвижного пространства, а целой серии пространств, неразрывно связанных между собой. Аналогия с созданием фильмов представляется здесь очень уместной.

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

После выработки сквозного визуального решения необходимо прорисовать картинки, называемые у аниматоров "фонами". Точнее называть их неподвижной составляющей подвижного изображения. На каждом фоне надо расположить анимированные элементы взаимодействия. И, наконец, самое трудное – надо спроектировать визуальные переходы между существенно отличающимися состояниями. И все это, сохраняя выбранный стиль! Кому это нужно? Пользователю, который ничего этого не заметит, но зато будет гораздо проще и быстрее взаимодействовать с системой. Хороший интерфейс похож на удобную обувь – никто его не замечает, а, если обратить на него внимание, в ответ получишь равнодушное "Ну и что такого?". Зато плохой интерфейс у всех на виду и на устах.

На самом деле, хороший интерфейс пользователями замечается подсознательно, и, когда он нравится, симпатии переносятся на функциональную часть программы. (Про "ДИСКо Командир" многие говорят, что он хорош, но НИКТО не говорит, чем именно.) К сожалению, следует констатировать, что сегодня стандартом стал плохой интерфейс, даже не столько плохо сделанный, сколько вообще "получившийся сам собой". Так, самое модное сейчас применение компьютеров – блуждание по Сети – имеет тот интерфейс, который вытекает из языка HTML, а он, в свою очередь, производит впечатление "времянки", которая, как теперь ясно, пришла всерьез и надолго.

Моя любимая цитата из обзора интерфейсов – "Интерфейс этой программы неестественен, потому что клавиша Alt+F4 не закрывает приложения". Здесь уже требуется талант Дарвина, чтобы понять происхождение такого вида естественности! Многие интерфейсные проблемы являются естественным продолжением маркетинговых достижений. Предположим, что ваша фирма выходит на рынок с новой моделью аудиомагнитофона, отличающейся от всех остальных некой возможностью А. Для успешной продажи этой модели та кнопка на панели управления, которая реализует А, должна быть как можно заметнее. Тогда потенциальный покупатель сам спросит "А что это?" – и продать ваше изделие будет гораздо легче. Однако, купив его и включив дома, этот покупатель будет, скорее всего, пользоваться стандартными кнопками для стандартных действий, показывая возможность А только гостям.

Таким образом, налицо противоречие, следующее из двух разных функций одного и того же товара. Первая функция – продавать самого себя за счет привлекательности и/или необычности внешнего вида, а вторая – использоваться по назначению. С точки зрения продавца (а часто, и производителя), первая функция гораздо важнее. Поэтому навязывается "стандарт", направленный именно на успешность первой функции. Замените аудиомагнитофон интерфейсными средами, и станет понятным, что я имею в виду.

(Желающих увидеть эту проблему крупным планом приглашаю на рынок пиратских CD-ROM, где покупатель принимает решение о покупке в общем-то недешевого товара, глядя только на обертку и даже будучи уверенным, что содержание в какой-то мере ей не соответствует.) Ряд интерфейсных проблем связан с конкурентной борьбой на рынке программ. Пожалуй, главная из них – какие формы должно принимать авторское право на интерфейсные решения. С одной стороны, ясно, что придумать и реализовать хороший интерфейс – очень сложная задача, и авторы такого интерфейса должны получить не только моральное вознаграждение. С другой стороны, если "защитить" такое решение патентом с последующими лицензионными выплатами, это может спровоцировать авторов новых продуктов искать свои, нехоженые и, зачастую, худшие пути в интерфейсе. В качестве яркого примера можно попробовать представить себе последствия патентования использования клавиши "F1" для вызова справки.

Лицензионная защита интерфейсных решений – прямой путь к тому, что одни и те же интерфейсные функции будут реализовываться в разных продуктах по-разному, а это далеко не в интересах пользователя. При всей моей нелюбви к фактической монополии фирмы Microsoft на рынке операционных сред должен отметить, что положительной чертой этой монополии явилась "бесплатная" стандартизация интерфейса под Windows.

С проблемой защиты авторского права в области пользовательского интерфейса связаны два громких судебных процесса – Apple Computer против той же Microsoft, где предметом был сам оконный интерфейс, и Lotus против Borland, где с правовой точки зрения оспаривалось включение в Quattro Pro (наравне с несколькими другими) интерфейса Lotus 1-2-3.

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

К сожалению, сегодняшнее состояние рынка программного обеспечения таково, что дорогу себе прокладывают не лучшие решения, а решения, имеющие "большую пробивную силу", в основном связанную с финансовой мощью предлагающих их компаний. Это особенно верно для пользовательского интерфейса. Если взглянуть на программы просмотра WWW, то вообще трудно говорить о дизайне интерфейса – получилось как получилось. Терпимо, но не более. А ведь этими программами пользуется большее число людей, чем какими-либо другими. Теперь такой интерфейс становится фактическим стандартом, а это значит, что последующий переход к более естественному интерфейсу (который, безусловно, рано или поздно произойдет) будет связан с тяжелой психологической ломкой.

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

Список литературы

Донской М. Пользовательский интерфейс

topref.ru

Курсовая работа - Пользовательский интерфейс

Сегодня, благодаря совершенно неожиданным (по меркам 5-летней давности) применениям компьютеров, пользовательский интерфейс привлекает все больше внимания. К сожалению, как всякое модное слово (искусственный интеллект, мультимедиа, Internet) термин пользовательский интерфейс незамедлительно начали использовать в качестве рекламного аргумента в результате чего его смысл стал куда менее определенным. В этой ситуации было бы странно претендовать на истину, однако некоторыми соображениями автор этих строк хотел бы поделиться с читателями.

Во-первых, в понятие пользовательского интерфейса (ПИ) входит не только, и даже не столько, картинка на экране – трехмерная, анимированная, просто выполнена в модном дизайне, – а способы взаимодействия пользователя с системой. В этом контексте очень интересно сравнить материалы по ПИ в российской компьютерной прессе (напоминающие мне рецензии искусствоведов на художественные выставки) и классическую книгу Дональда Нормана «Психология повседневных вещей» («The Psychology of Everyday Things»), где основным примером книги оказался дизайн дверных ручек.

Еще одна книга, очень популярная среди американских специалистов по ПИ, анализирует развитие столовых приборов в средние века. В обеих книгах дизайн имеет подчиненное положение. Его главная цель – облегчить пользование предметом.

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

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

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

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

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

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

Вы скажете, что люди все же учатся. Это неправда, поскольку сегодня практически нет пользователей-любителей. До последнего времени на компьютерах любители могли только играть в игры. (Кстати, у популярных игр интерфейс очень хороший и совершенно не оконный.) Сегодня Internet стал для обыкновенных людей мощной побудительной причиной покупать компьютеры. И уже раздаются критические голоса об интерфейсе, трудно понимаемом простыми пользователями. Можно с уверенностью предсказать, что дальше станет хуже. Прирастать пользователи будут только любителями.

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

Отправной точкой всякого хорошего интерфейса является метафора.

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

Использованием метафоры убивается сразу несколько зайцев. Во-первых, пользователю легче понимать и интерпретировать изображение на экране.

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

В качестве примера удачной метафоры в интерфейсе можно привести Lotus Organizer, внешний вид которого напоминает привычный еженедельник, функции которого и выполняет этот продукт. Примером неудачной метафоры, точнее ее полного отсутствия там, где она необходима, может служить Explorer Windows 95.

Итак, мы придумали замечательную метафору для нашего интерфейса.

Сохраним ее в секрете как коммерческую тайну и пойдем дальше. Теперь нам нужно сделать концептуальный дизайн интерфейса. Что это такое? В рамках нашей метафоры мы должны разработать систему интерфейсных элементов, своего рода алфавит взаимодействия, изучив который пользователь сможет легко делать то, что ему нужно. Еще мы должны найти изящный способ изображения как отдельных элементов так и их групп. И, наконец, мы должны выбрать общий изобразительный стиль, который был бы легко узнаваем и приятен для глаз.

Наш (не)удачный предшественник – оконный интерфейс решил только первую задачу концептуального дизайна. В нем есть понятие «контролей» – интерфейсных элементов, с которыми в основном и происходит взаимодействие. В Windows 95 сделана попытка выработки общего изобразительного стиля для контролей. Об общем стиле экранного изображения речи вообще не идет, если только не считать за таковой набор «тем», входящий в состав Microsoft Plus.

Примером хорошего концептуального дизайна интерфейса (помимо некоторых компьютерных игр) может служить система дорожных знаков.

Ее разработка не так проста как может показаться на первый взгляд.

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

Концептуальный дизайн интерфейса должен базироваться на идее интерфейсной среды. В сущности, на время работы с системой пользователь погружается в среду интерфейса подобно тому, как приехав на сафари, турист погружается в среду дикой природы. Здесь слово «среда» применяется не для красоты, а как обозначение типичной для поведения человека в различных средах связки «сигнал-действие».

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

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

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

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

Понятия среды и понятие метафоры близко связаны. Если среда по виду и некоторым опорным элементам будет напоминать пользователю что-то уже знакомое, он сможет быстрее приспособиться к ней. Вместе с тем выбранная метафора может продиктовать все изобразительные решения дизайна интерфейса. Однако следует остерегаться фотографической похожести среды в компьютере с выбранной метафорой. (Тут есть аналогия с живописью.) Все-таки компьютерная среда – искусственна и полностью повторить все элементы взаимодействия из физического мира не удастся. А фотографическая похожесть может спровоцировать пользователя на то, чтобы пользоваться этой искусственной средой в точности как той, которую она напоминает. В первый же раз, когда пользователь натолкнется на различие, он испытает тяжелый психологический шок, который может привести к полному отторжению системы.

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

Тут мы подходим к еще одному важному принципу построения дизайна интерфейса – балансу между интерактивными возможностями программы и сложностью ее изобразительного ряда. Так же как при создании игр главным является баланс между сложностью игры и ее увлекательностью, выработка которого занимает основное время, так и в интерфейсе должен обеспечиваться баланс между функциональными возможностями программы, возможностями манипуляции ею и ее изобразительным рядом.

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

Сложная картинка психологически готовит к сложной жизни с программой.

Из этого, кстати, не следует, что у сложной программы должна быть изощренная графика и сложные пути взаимодействия. (Важное напоминание – мы разговариваем не о программах, предназначенных для профессиональной деятельности!) Лучше эту сложность «вытаскивать» постепенно, подобно кролику из шляпы или подобно наращиванию уровней в компьютерных играх.

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

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

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

Если у читателя создалось впечатление, что я ругаю оконный интерфейс, то это не так. Я использую его как всем известный источник аналогий и примеров. Оконный интерфейс был в начале 80-х столь же революционным и сыграл столь же положительную роль, что и текстовый интерфейс 70-х.

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

Во всех центрах, известных разработкой новых интерфейсов (XEROX PARC, MIT Media Lab, Apple Computer, Carnegie Mellon University), идут разработки разных концепций дизайна интерфейсов, опирающихся на возможности анимации. Прежде чем описывать их, я хочу изложить свою точку зрения на «физику интерфейса», однажды уже опубликованную, но которую уместно здесь повторить.

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

При переходе от алфавитно-цифровых дисплеев к графическим поле дисплея казалось непомерно большим и проблема синхронизации точки взаимодействия была самой сложной. Ее решение было выполнено по принципу «разделяй и властвуй». Поле экрана разбивалось на прямоугольники-окна и вся работа велась только в одном из них – так называемом активном окне. Одновременно сменилась форма текстового курсора, и, что очень важно, он начал подмигивать. Это требовалось для облегчения проблемы поиска текстового курсора в окне. Поиск же курсора мыши при его потере из поля внимания пользователь (до сих пор) выполняет подергиванием мыши.

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

Эта возможность не только теоретически осознана, но и уже около пяти лет находится в стадии экспериментального исследования. Две анимированные среды интерфейса разработаны в той самой фирме XEROX PARC, которой мы обязаны появлением идеи оконного интерфейса (и даже в группе того самого Стюарда Карда, которому принадлежит авторство этой идеи). Одна – «Конические деревья» – является визуализацией файловой системы компьютера и похожа на систему детских пирамидок, каждый уровень которой соответствует уровню файлового каталога. Сами файлы из каталога отображаются в виде 3-мерной карусели под своим каталогом. Соль модели в том, что нужный файл можно «приблизить» поворотом карусели (может быть, не одной), идущим в режиме анимации.

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

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

Анимация за счет увеличения времени перехода от одной картинки к другой (а именно времени анимированного преобразования картинок) существенно сокращает время осознания новой картинки. В психологическом смысле новой картинки и не существует, существует преобразованная старая, а так как все преобразования шли «на глазах у изумленных зрителей», то пользователь практически немедленно готов к взаимодействию.

Существует еще одно свойство анимационного пользовательского интерфейса, которое существенно улучшает его полезность по сравнению с графическим интерфейсом, а именно динамически визуальные сигналы.

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

Беда в том, что в оконном интерфейсе динамические визуальные сигналы носят характер гениальных находок и не образуют полную логичную систему. В качестве аналогии отмечу разницу между алфавитом и иероглифами. Выучив алфавит, можно читать любой текст. Выучив иероглифы, нельзя гарантировать, что не появится новый.

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

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

Однако, решая многие проблемы для пользователя, анимационный интерфейс, как это часто бывает, ставит тяжелые проблемы перед программистом и дизайнером.

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

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

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

Для дизайнеров интерфейсов конкретных продуктов работа тоже существенно усложнится. Анимационный интерфейс – орудие очень мощное и поэтому требует особой осторожности. Попытки потрясти мир могут привести к быстрой утомляемости пользователя и, как следствие, отторжению системы. Основной задачей дизайнера становится организация не неподвижного пространства, а целой серии пространств, неразрывно связанных между собой. Аналогия с созданием фильмов представляется здесь очень уместной.

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

После выработки сквозного визуального решения необходимо прорисовать картинки, называемые у аниматоров «фонами». Точнее называть их неподвижной составляющей подвижного изображения. На каждом фоне надо расположить анимированные элементы взаимодействия. И, наконец, самое трудное – надо спроектировать визуальные переходы между существенно отличающимися состояниями. И все это, сохраняя выбранный стиль! Кому это нужно? Пользователю, который ничего этого не заметит, но зато будет гораздо проще и быстрее взаимодействовать с системой. Хороший интерфейс похож на удобную обувь – никто его не замечает, а, если обратить на него внимание, в ответ получишь равнодушное «Ну и что такого?». Зато плохой интерфейс у всех на виду и на устах.

На самом деле, хороший интерфейс пользователями замечается подсознательно, и, когда он нравится, симпатии переносятся на функциональную часть программы. (Про «ДИСКо Командир» многие говорят, что он хорош, но НИКТО не говорит, чем именно.) К сожалению, следует констатировать, что сегодня стандартом стал плохой интерфейс, даже не столько плохо сделанный, сколько вообще «получившийся сам собой». Так, самое модное сейчас применение компьютеров – блуждание по Сети – имеет тот интерфейс, который вытекает из языка HTML, а он, в свою очередь, производит впечатление «времянки», которая, как теперь ясно, пришла всерьез и надолго.

Моя любимая цитата из обзора интерфейсов – «Интерфейс этой программы неестественен, потому что клавиша Alt+F4 не закрывает приложения». Здесь уже требуется талант Дарвина, чтобы понять происхождение такого вида естественности! Многие интерфейсные проблемы являются естественным продолжением маркетинговых достижений. Предположим, что ваша фирма выходит на рынок с новой моделью аудиомагнитофона, отличающейся от всех остальных некой возможностью А. Для успешной продажи этой модели та кнопка на панели управления, которая реализует А, должна быть как можно заметнее. Тогда потенциальный покупатель сам спросит «А что это?» – и продать ваше изделие будет гораздо легче. Однако, купив его и включив дома, этот покупатель будет, скорее всего, пользоваться стандартными кнопками для стандартных действий, показывая возможность А только гостям.

Таким образом, налицо противоречие, следующее из двух разных функций одного и того же товара. Первая функция – продавать самого себя за счет привлекательности и/или необычности внешнего вида, а вторая – использоваться по назначению. С точки зрения продавца (а часто, и производителя), первая функция гораздо важнее. Поэтому навязывается «стандарт», направленный именно на успешность первой функции. Замените аудиомагнитофон интерфейсными средами, и станет понятным, что я имею в виду.

(Желающих увидеть эту проблему крупным планом приглашаю на рынок пиратских CD-ROM, где покупатель принимает решение о покупке в общем-то недешевого товара, глядя только на обертку и даже будучи уверенным, что содержание в какой-то мере ей не соответствует.) Ряд интерфейсных проблем связан с конкурентной борьбой на рынке программ. Пожалуй, главная из них – какие формы должно принимать авторское право на интерфейсные решения. С одной стороны, ясно, что придумать и реализовать хороший интерфейс – очень сложная задача, и авторы такого интерфейса должны получить не только моральное вознаграждение. С другой стороны, если «защитить» такое решение патентом с последующими лицензионными выплатами, это может спровоцировать авторов новых продуктов искать свои, нехоженые и, зачастую, худшие пути в интерфейсе. В качестве яркого примера можно попробовать представить себе последствия патентования использования клавиши «F1» для вызова справки.

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

С проблемой защиты авторского права в области пользовательского интерфейса связаны два громких судебных процесса – Apple Computer против той же Microsoft, где предметом был сам оконный интерфейс, и Lotus против Borland, где с правовой точки зрения оспаривалось включение в Quattro Pro (наравне с несколькими другими) интерфейса Lotus 1-2-3.

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

К сожалению, сегодняшнее состояние рынка программного обеспечения таково, что дорогу себе прокладывают не лучшие решения, а решения, имеющие «большую пробивную силу», в основном связанную с финансовой мощью предлагающих их компаний. Это особенно верно для пользовательского интерфейса. Если взглянуть на программы просмотра WWW, то вообще трудно говорить о дизайне интерфейса – получилось как получилось. Терпимо, но не более. А ведь этими программами пользуется большее число людей, чем какими-либо другими. Теперь такой интерфейс становится фактическим стандартом, а это значит, что последующий переход к более естественному интерфейсу (который, безусловно, рано или поздно произойдет) будет связан с тяжелой психологической ломкой.

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

Список литературы

Донской М. Пользовательский интерфейс

www.ronl.ru

Реферат: Пользовательский интерфейс

Сегодня, благодаря совершенно неожиданным (по меркам 5-летней  давности) применениям компьютеров, пользовательский интерфейс  привлекает все больше внимания. К сожалению, как всякое модное слово  (искусственный интеллект, мультимедиа, Internet) термин пользовательский  интерфейс незамедлительно начали использовать в качестве рекламного  аргумента в результате чего его смысл стал куда менее определенным. В  этой ситуации было бы странно претендовать на истину, однако  некоторыми соображениями автор этих строк хотел бы поделиться с  читателями.

Во-первых, в понятие пользовательского интерфейса (ПИ) входит не только,  и даже не столько, картинка на экране – трехмерная, анимированная, просто  выполнена в модном дизайне, – а способы взаимодействия пользователя с  системой. В этом контексте очень интересно сравнить материалы по ПИ в  российской компьютерной прессе (напоминающие мне рецензии  искусствоведов на художественные выставки) и классическую книгу  Дональда Нормана "Психология повседневных вещей" ("The Psychology of  Everyday Things"), где основным примером книги оказался дизайн дверных  ручек.

Еще одна книга, очень популярная среди американских специалистов по  ПИ, анализирует развитие столовых приборов в средние века. В обеих  книгах дизайн имеет подчиненное положение. Его главная цель – облегчить  пользование предметом.

Этот взгляд кардинально отличается от широко распространенного мнения,  что пользовательский интерфейс – это набор "интерфейсных элементов" и  их расположение на экране. Сама номенклатура принятых в среде Windows  интерфейсных элементов вызывает большие сомнения в том, что на ее базе  можно создать действительно удобные интерфейсы.

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

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

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

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

С пользователем-любителем все наоборот. Пока в уголовном кодексе не  предусмотрено наказание типа "заключения в пользовательский интерфейс",  он имеет право выбора (не между одной программой и другой, а между  компьютером и телевизором или даже книгой). Он хочет за компьютером  развлекаться, и тратить время и силы на овладение неудобным интерфейсом  ему не с руки. Исключением являются фанаты, общающиеся с компьютером  по принципу "охота пуще неволи".

Вы скажете, что люди все же учатся. Это неправда, поскольку сегодня  практически нет пользователей-любителей. До последнего времени на  компьютерах любители могли только играть в игры. (Кстати, у популярных  игр интерфейс очень хороший и совершенно не оконный.) Сегодня Internet  стал для обыкновенных людей мощной побудительной причиной покупать  компьютеры. И уже раздаются критические голоса об интерфейсе, трудно  понимаемом простыми пользователями. Можно с уверенностью  предсказать, что дальше станет хуже. Прирастать пользователи будут  только любителями.

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

Отправной точкой всякого хорошего интерфейса является метафора.

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

Использованием метафоры убивается сразу несколько зайцев. Во-первых,  пользователю легче понимать и интерпретировать изображение на экране.

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

В качестве примера удачной метафоры в интерфейсе можно привести Lotus  Organizer, внешний вид которого напоминает привычный еженедельник,  функции которого и выполняет этот продукт. Примером неудачной  метафоры, точнее ее полного отсутствия там, где она необходима, может  служить Explorer Windows 95.

Итак, мы придумали замечательную метафору для нашего интерфейса.

Сохраним ее в секрете как коммерческую тайну и пойдем дальше. Теперь  нам нужно сделать концептуальный дизайн интерфейса. Что это такое? В  рамках нашей метафоры мы должны разработать систему интерфейсных  элементов, своего рода алфавит взаимодействия, изучив который  пользователь сможет легко делать то, что ему нужно. Еще мы должны найти  изящный способ изображения как отдельных элементов так и их групп. И,  наконец, мы должны выбрать общий изобразительный стиль, который был  бы легко узнаваем и приятен для глаз.

Наш (не)удачный предшественник – оконный интерфейс решил только  первую задачу концептуального дизайна. В нем есть понятие "контролей" –  интерфейсных элементов, с которыми в основном и происходит  взаимодействие. В Windows 95 сделана попытка выработки общего  изобразительного стиля для контролей. Об общем стиле экранного  изображения речи вообще не идет, если только не считать за таковой набор  "тем", входящий в состав Microsoft Plus.

Примером хорошего концептуального дизайна интерфейса (помимо  некоторых компьютерных игр) может служить система дорожных знаков.

Ее разработка не так проста как может показаться на первый взгляд.

Обратите внимание на сочетание "реалистических" пиктограмм с  "абстрактными", на комбинирование многих знаков, висящих вместе, на  "словарь фонов". Кроме того, удалось решить поистине титаническую  задачу – знаки заметны и не портят красоту окружающей природы там, где  эта красота есть. И, главное, эта система хорошо работает и не требует от  своих пользователей высшего образования. Во многих моих интерфейсных  раздумьях дорожные знаки занимают значительное место.

Концептуальный дизайн интерфейса должен базироваться на идее  интерфейсной среды. В сущности, на время работы с системой пользователь  погружается в среду интерфейса подобно тому, как приехав на сафари,  турист погружается в среду дикой природы. Здесь слово "среда"  применяется не для красоты, а как обозначение типичной для поведения  человека в различных средах связки "сигнал-действие".

Эта идея принадлежит психологу Гибсону (не путайте с популярным  фантастом) и извлечена мной из его книги "Экологический подход к  психологии восприятия". Он утверждает, что наше восприятие основано на  мотивации в том смысле, что если мы хотим есть, то видим только  съедобные вещи, а если устали – то только предметы мебели,  предназначенные для отдыха. То есть человек не просто видит, а  опрашивает среду, руководствуясь различными мотивами. В свою очередь,  среда подает человеку разные сигналы. Наряду с ответами на его запросы,  есть сигналы первоочередные (или всегда запрашиваемые), связанные с  физической опасностью. Опираясь на полученные сигналы, человек  осуществляет различные действия.

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

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

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

Понятия среды и понятие метафоры близко связаны. Если среда по виду и  некоторым опорным элементам будет напоминать пользователю что-то уже  знакомое, он сможет быстрее приспособиться к ней. Вместе с тем  выбранная метафора может продиктовать все изобразительные решения  дизайна интерфейса. Однако следует остерегаться фотографической  похожести среды в компьютере с выбранной метафорой. (Тут есть аналогия  с живописью.) Все-таки компьютерная среда – искусственна и полностью  повторить все элементы взаимодействия из физического мира не удастся. А  фотографическая похожесть может спровоцировать пользователя на то,  чтобы пользоваться этой искусственной средой в точности как той, которую  она напоминает. В первый же раз, когда пользователь натолкнется на  различие, он испытает тяжелый психологический шок, который может  привести к полному отторжению системы.

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

Тут мы подходим к еще одному важному принципу построения дизайна  интерфейса – балансу между интерактивными возможностями программы и  сложностью ее изобразительного ряда. Так же как при создании игр  главным является баланс между сложностью игры и ее увлекательностью,  выработка которого занимает основное время, так и в интерфейсе должен  обеспечиваться баланс между функциональными возможностями  программы, возможностями манипуляции ею и ее изобразительным рядом.

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

Сложная картинка психологически готовит к сложной жизни с программой.

Из этого, кстати, не следует, что у сложной программы должна быть  изощренная графика и сложные пути взаимодействия. (Важное  напоминание – мы разговариваем не о программах, предназначенных для  профессиональной деятельности!) Лучше эту сложность "вытаскивать"  постепенно, подобно кролику из шляпы или подобно наращиванию уровней  в компьютерных играх.

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

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

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

Если у читателя создалось впечатление, что я ругаю оконный интерфейс, то  это не так. Я использую его как всем известный источник аналогий и  примеров. Оконный интерфейс был в начале 80-х столь же революционным  и сыграл столь же положительную роль, что и текстовый интерфейс 70-х.

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

Во всех центрах, известных разработкой новых интерфейсов (XEROX  PARC, MIT Media Lab, Apple Computer, Carnegie Mellon University), идут  разработки разных концепций дизайна интерфейсов, опирающихся на  возможности анимации. Прежде чем описывать их, я хочу изложить свою  точку зрения на "физику интерфейса", однажды уже опубликованную, но  которую уместно здесь повторить.

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

При переходе от алфавитно-цифровых дисплеев к графическим поле  дисплея казалось непомерно большим и проблема синхронизации точки  взаимодействия была самой сложной. Ее решение было выполнено по  принципу "разделяй и властвуй". Поле экрана разбивалось на  прямоугольники-окна и вся работа велась только в одном из них – так  называемом активном окне. Одновременно сменилась форма текстового  курсора, и, что очень важно, он начал подмигивать. Это требовалось для  облегчения проблемы поиска текстового курсора в окне. Поиск же курсора  мыши при его потере из поля внимания пользователь (до сих пор)  выполняет подергиванием мыши.

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

Эта возможность не только теоретически осознана, но и уже около пяти лет  находится в стадии экспериментального исследования. Две анимированные  среды интерфейса разработаны в той самой фирме XEROX PARC, которой  мы обязаны появлением идеи оконного интерфейса (и даже в группе того  самого Стюарда Карда, которому принадлежит авторство этой идеи). Одна –  "Конические деревья" – является визуализацией файловой системы  компьютера и похожа на систему детских пирамидок, каждый уровень  которой соответствует уровню файлового каталога. Сами файлы из каталога  отображаются в виде 3-мерной карусели под своим каталогом. Соль модели  в том, что нужный файл можно "приблизить" поворотом карусели (может  быть, не одной), идущим в режиме анимации.

Вторая модель – "Стена в перспективе" – также отображает файловую  систему, но вне ее иерархии, согласно двум каким-то параметрам, например  частоте обращения к файлу и его размеру. Это нормальная стена, только  очень длинная, разбитая на три отрезка. Средний из них отображается на  экране плоско, а два крайних уходят в перспективу. Пользователь может  сделать средним любой отрезок стены, причем это тоже происходит в  режиме анимации. Для Карда анимация – принципиальный момент, так как  "анимация сохраняет в восприятии пользователя идентичность объекта", то  есть пользователь легко соотносит объекты в конечной точке движения с  объектами в начальной.

На это свойство анимационного интерфейса следует обратить особое  внимание. В графическом интерфейсе пользователь имеет дело с  последовательностью картинок. Программисты, хвастаясь скоростью своих  программ, замеряют время, "теряемое" между картинками. Однако  психологи, занимающиеся интерфейсом, говорят о совсем другом времени,  – времени, когда пользователь может начать взаимодействие с новой  картинкой на экране. В этот интервал входит не только время вывода новой  картинки на экран, но и время осознания ее пользователем, ведь  определенное время и усилия тратятся пользователем на то, чтобы понять,  как каждая следующая картинка соотносится с предыдущей.

Анимация за счет увеличения времени перехода от одной картинки к другой  (а именно времени анимированного преобразования картинок) существенно  сокращает время осознания новой картинки. В психологическом смысле  новой картинки и не существует, существует преобразованная старая, а так  как все преобразования шли "на глазах у изумленных зрителей", то  пользователь практически немедленно готов к взаимодействию.

Существует еще одно свойство анимационного пользовательского  интерфейса, которое существенно улучшает его полезность по сравнению с  графическим интерфейсом, а именно динамически визуальные сигналы.

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

Беда в том, что в оконном интерфейсе динамические визуальные сигналы  носят характер гениальных находок и не образуют полную логичную  систему. В качестве аналогии отмечу разницу между алфавитом и  иероглифами. Выучив алфавит, можно читать любой текст. Выучив  иероглифы, нельзя гарантировать, что не появится новый.

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

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

Однако, решая многие проблемы для пользователя, анимационный  интерфейс, как это часто бывает, ставит тяжелые проблемы перед  программистом и дизайнером.

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

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

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

Для дизайнеров интерфейсов конкретных продуктов работа тоже  существенно усложнится. Анимационный интерфейс – орудие очень  мощное и поэтому требует особой осторожности. Попытки потрясти мир  могут привести к быстрой утомляемости пользователя и, как следствие,  отторжению системы. Основной задачей дизайнера становится организация  не неподвижного пространства, а целой серии пространств, неразрывно  связанных между собой. Аналогия с созданием фильмов представляется  здесь очень уместной.

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

После выработки сквозного визуального решения необходимо прорисовать  картинки, называемые у аниматоров "фонами". Точнее называть их  неподвижной составляющей подвижного изображения. На каждом фоне  надо расположить анимированные элементы взаимодействия. И, наконец,  самое трудное – надо спроектировать визуальные переходы между  существенно отличающимися состояниями. И все это, сохраняя выбранный  стиль!  Кому это нужно? Пользователю, который ничего этого не заметит, но зато  будет гораздо проще и быстрее взаимодействовать с системой. Хороший  интерфейс похож на удобную обувь – никто его не замечает, а, если  обратить на него внимание, в ответ получишь равнодушное "Ну и что  такого?". Зато плохой интерфейс у всех на виду и на устах.

На самом деле, хороший интерфейс пользователями замечается  подсознательно, и, когда он нравится, симпатии переносятся на  функциональную часть программы. (Про "ДИСКо Командир" многие  говорят, что он хорош, но НИКТО не говорит, чем именно.)  К сожалению, следует констатировать, что сегодня стандартом стал плохой  интерфейс, даже не столько плохо сделанный, сколько вообще  "получившийся сам собой". Так, самое модное сейчас применение  компьютеров – блуждание по Сети – имеет тот интерфейс, который  вытекает из языка HTML, а он, в свою очередь, производит впечатление  "времянки", которая, как теперь ясно, пришла всерьез и надолго.

Моя любимая цитата из обзора интерфейсов – "Интерфейс этой программы  неестественен, потому что клавиша Alt+F4 не закрывает приложения". Здесь  уже требуется талант Дарвина, чтобы понять происхождение такого вида  естественности!  Многие интерфейсные проблемы являются естественным продолжением  маркетинговых достижений. Предположим, что ваша фирма выходит на  рынок с новой моделью аудиомагнитофона, отличающейся от всех  остальных некой возможностью А. Для успешной продажи этой модели та  кнопка на панели управления, которая реализует А, должна быть как можно  заметнее. Тогда потенциальный покупатель сам спросит "А что это?" – и  продать ваше изделие будет гораздо легче. Однако, купив его и включив  дома, этот покупатель будет, скорее всего, пользоваться стандартными  кнопками для стандартных действий, показывая возможность А только  гостям.

Таким образом, налицо противоречие, следующее из двух разных функций  одного и того же товара. Первая функция – продавать самого себя за счет  привлекательности и/или необычности внешнего вида, а вторая –  использоваться по назначению. С точки зрения продавца (а часто, и  производителя), первая функция гораздо важнее. Поэтому навязывается  "стандарт", направленный именно на успешность первой функции. Замените  аудиомагнитофон интерфейсными средами, и станет понятным, что я имею  в виду.

(Желающих увидеть эту проблему крупным планом приглашаю на рынок  пиратских CD-ROM, где покупатель принимает решение о покупке в  общем-то недешевого товара, глядя только на обертку и даже будучи  уверенным, что содержание в какой-то мере ей не соответствует.)  Ряд интерфейсных проблем связан с конкурентной борьбой на рынке  программ. Пожалуй, главная из них – какие формы должно принимать  авторское право на интерфейсные решения. С одной стороны, ясно, что  придумать и реализовать хороший интерфейс – очень сложная задача, и  авторы такого интерфейса должны получить не только моральное  вознаграждение. С другой стороны, если "защитить" такое решение  патентом с последующими лицензионными выплатами, это может  спровоцировать авторов новых продуктов искать свои, нехоженые и,  зачастую, худшие пути в интерфейсе. В качестве яркого примера можно  попробовать представить себе последствия патентования использования  клавиши "F1" для вызова справки.

Лицензионная защита интерфейсных решений – прямой путь к тому, что  одни и те же интерфейсные функции будут реализовываться в разных  продуктах по-разному, а это далеко не в интересах пользователя. При всей  моей нелюбви к фактической монополии фирмы Microsoft на рынке  операционных сред должен отметить, что положительной чертой этой  монополии явилась "бесплатная" стандартизация интерфейса под Windows.

С проблемой защиты авторского права в области пользовательского  интерфейса связаны два громких судебных процесса – Apple Computer  против той же Microsoft, где предметом был сам оконный интерфейс, и  Lotus против Borland, где с правовой точки зрения оспаривалось включение  в Quattro Pro (наравне с несколькими другими) интерфейса Lotus 1-2-3.

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

К сожалению, сегодняшнее состояние рынка программного обеспечения  таково, что дорогу себе прокладывают не лучшие решения, а решения,  имеющие "большую пробивную силу", в основном связанную с финансовой  мощью предлагающих их компаний. Это особенно верно для  пользовательского интерфейса. Если взглянуть на программы просмотра  WWW, то вообще трудно говорить о дизайне интерфейса – получилось как  получилось. Терпимо, но не более. А ведь этими программами пользуется  большее число людей, чем какими-либо другими. Теперь такой интерфейс  становится фактическим стандартом, а это значит, что последующий  переход к более естественному интерфейсу (который, безусловно, рано или  поздно произойдет) будет связан с тяжелой психологической ломкой.

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

Список литературы

Донской М. Пользовательский интерфейс

www.referatmix.ru

Реферат: Пользовательский интерфейс

Сегодня, благодаря совершенно неожиданным (по меркам 5-летней давности) применениям компьютеров, пользовательский интерфейс привлекает все больше внимания. К сожалению, как всякое модное слово (искусственный интеллект, мультимедиа, Internet) термин пользовательский интерфейс незамедлительно начали использовать в качестве рекламного аргумента в результате чего его смысл стал куда менее определенным. В этой ситуации было бы странно претендовать на истину, однако некоторыми соображениями автор этих строк хотел бы поделиться с читателями.

Во-первых, в понятие пользовательского интерфейса (ПИ) входит не только, и даже не столько, картинка на экране – трехмерная, анимированная, просто выполнена в модном дизайне, – а способы взаимодействия пользователя с системой. В этом контексте очень интересно сравнить материалы по ПИ в российской компьютерной прессе (напоминающие мне рецензии искусствоведов на художественные выставки) и классическую книгу Дональда Нормана "Психология повседневных вещей" ("The Psychology of Everyday Things"), где основным примером книги оказался дизайн дверных ручек.

Еще одна книга, очень популярная среди американских специалистов по ПИ, анализирует развитие столовых приборов в средние века. В обеих книгах дизайн имеет подчиненное положение. Его главная цель – облегчить пользование предметом.

Этот взгляд кардинально отличается от широко распространенного мнения, что пользовательский интерфейс – это набор "интерфейсных элементов" и их расположение на экране. Сама номенклатура принятых в среде Windows интерфейсных элементов вызывает большие сомнения в том, что на ее базе можно создать действительно удобные интерфейсы.

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

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

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

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

С пользователем-любителем все наоборот. Пока в уголовном кодексе не предусмотрено наказание типа "заключения в пользовательский интерфейс", он имеет право выбора (не между одной программой и другой, а между компьютером и телевизором или даже книгой). Он хочет за компьютером развлекаться, и тратить время и силы на овладение неудобным интерфейсом ему не с руки. Исключением являются фанаты, общающиеся с компьютером по принципу "охота пуще неволи".

Вы скажете, что люди все же учатся. Это неправда, поскольку сегодня практически нет пользователей-любителей. До последнего времени на компьютерах любители могли только играть в игры. (Кстати, у популярных игр интерфейс очень хороший и совершенно не оконный.) Сегодня Internet стал для обыкновенных людей мощной побудительной причиной покупать компьютеры. И уже раздаются критические голоса об интерфейсе, трудно понимаемом простыми пользователями. Можно с уверенностью предсказать, что дальше станет хуже. Прирастать пользователи будут только любителями.

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

Отправной точкой всякого хорошего интерфейса является метафора.

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

Использованием метафоры убивается сразу несколько зайцев. Во-первых, пользователю легче понимать и интерпретировать изображение на экране.

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

В качестве примера удачной метафоры в интерфейсе можно привести Lotus Organizer, внешний вид которого напоминает привычный еженедельник, функции которого и выполняет этот продукт. Примером неудачной метафоры, точнее ее полного отсутствия там, где она необходима, может служить Explorer Windows 95.

Итак, мы придумали замечательную метафору для нашего интерфейса.

Сохраним ее в секрете как коммерческую тайну и пойдем дальше. Теперь нам нужно сделать концептуальный дизайн интерфейса. Что это такое? В рамках нашей метафоры мы должны разработать систему интерфейсных элементов, своего рода алфавит взаимодействия, изучив который пользователь сможет легко делать то, что ему нужно. Еще мы должны найти изящный способ изображения как отдельных элементов так и их групп. И, наконец, мы должны выбрать общий изобразительный стиль, который был бы легко узнаваем и приятен для глаз.

Наш (не)удачный предшественник – оконный интерфейс решил только первую задачу концептуального дизайна. В нем есть понятие "контролей" – интерфейсных элементов, с которыми в основном и происходит взаимодействие. В Windows 95 сделана попытка выработки общего изобразительного стиля для контролей. Об общем стиле экранного изображения речи вообще не идет, если только не считать за таковой набор "тем", входящий в состав Microsoft Plus.

Примером хорошего концептуального дизайна интерфейса (помимо некоторых компьютерных игр) может служить система дорожных знаков.

Ее разработка не так проста как может показаться на первый взгляд.

Обратите внимание на сочетание "реалистических" пиктограмм с "абстрактными", на комбинирование многих знаков, висящих вместе, на "словарь фонов". Кроме того, удалось решить поистине титаническую задачу – знаки заметны и не портят красоту окружающей природы там, где эта красота есть. И, главное, эта система хорошо работает и не требует от своих пользователей высшего образования. Во многих моих интерфейсных раздумьях дорожные знаки занимают значительное место.

Концептуальный дизайн интерфейса должен базироваться на идее интерфейсной среды. В сущности, на время работы с системой пользователь погружается в среду интерфейса подобно тому, как приехав на сафари, турист погружается в среду дикой природы. Здесь слово "среда" применяется не для красоты, а как обозначение типичной для поведения человека в различных средах связки "сигнал-действие".

Эта идея принадлежит психологу Гибсону (не путайте с популярным фантастом) и извлечена мной из его книги "Экологический подход к психологии восприятия". Он утверждает, что наше восприятие основано на мотивации в том смысле, что если мы хотим есть, то видим только съедобные вещи, а если устали – то только предметы мебели, предназначенные для отдыха. То есть человек не просто видит, а опрашивает среду, руководствуясь различными мотивами. В свою очередь, среда подает человеку разные сигналы. Наряду с ответами на его запросы, есть сигналы первоочередные (или всегда запрашиваемые), связанные с физической опасностью. Опираясь на полученные сигналы, человек осуществляет различные действия.

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

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

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

Понятия среды и понятие метафоры близко связаны. Если среда по виду и некоторым опорным элементам будет напоминать пользователю что-то уже знакомое, он сможет быстрее приспособиться к ней. Вместе с тем выбранная метафора может продиктовать все изобразительные решения дизайна интерфейса. Однако следует остерегаться фотографической похожести среды в компьютере с выбранной метафорой. (Тут есть аналогия с живописью.) Все-таки компьютерная среда – искусственна и полностью повторить все элементы взаимодействия из физического мира не удастся. А фотографическая похожесть может спровоцировать пользователя на то, чтобы пользоваться этой искусственной средой в точности как той, которую она напоминает. В первый же раз, когда пользователь натолкнется на различие, он испытает тяжелый психологический шок, который может привести к полному отторжению системы.

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

Тут мы подходим к еще одному важному принципу построения дизайна интерфейса – балансу между интерактивными возможностями программы и сложностью ее изобразительного ряда. Так же как при создании игр главным является баланс между сложностью игры и ее увлекательностью, выработка которого занимает основное время, так и в интерфейсе должен обеспечиваться баланс между функциональными возможностями программы, возможностями манипуляции ею и ее изобразительным рядом.

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

Сложная картинка психологически готовит к сложной жизни с программой.

Из этого, кстати, не следует, что у сложной программы должна быть изощренная графика и сложные пути взаимодействия. (Важное напоминание – мы разговариваем не о программах, предназначенных для профессиональной деятельности!) Лучше эту сложность "вытаскивать" постепенно, подобно кролику из шляпы или подобно наращиванию уровней в компьютерных играх.

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

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

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

Если у читателя создалось впечатление, что я ругаю оконный интерфейс, то это не так. Я использую его как всем известный источник аналогий и примеров. Оконный интерфейс был в начале 80-х столь же революционным и сыграл столь же положительную роль, что и текстовый интерфейс 70-х.

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

Во всех центрах, известных разработкой новых интерфейсов (XEROX PARC, MIT Media Lab, Apple Computer, Carnegie Mellon University), идут разработки разных концепций дизайна интерфейсов, опирающихся на возможности анимации. Прежде чем описывать их, я хочу изложить свою точку зрения на "физику интерфейса", однажды уже опубликованную, но которую уместно здесь повторить.

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

При переходе от алфавитно-цифровых дисплеев к графическим поле дисплея казалось непомерно большим и проблема синхронизации точки взаимодействия была самой сложной. Ее решение было выполнено по принципу "разделяй и властвуй". Поле экрана разбивалось на прямоугольники-окна и вся работа велась только в одном из них – так называемом активном окне. Одновременно сменилась форма текстового курсора, и, что очень важно, он начал подмигивать. Это требовалось для облегчения проблемы поиска текстового курсора в окне. Поиск же курсора мыши при его потере из поля внимания пользователь (до сих пор) выполняет подергиванием мыши.

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

Эта возможность не только теоретически осознана, но и уже около пяти лет находится в стадии экспериментального исследования. Две анимированные среды интерфейса разработаны в той самой фирме XEROX PARC, которой мы обязаны появлением идеи оконного интерфейса (и даже в группе того самого Стюарда Карда, которому принадлежит авторство этой идеи). Одна – "Конические деревья" – является визуализацией файловой системы компьютера и похожа на систему детских пирамидок, каждый уровень которой соответствует уровню файлового каталога. Сами файлы из каталога отображаются в виде 3-мерной карусели под своим каталогом. Соль модели в том, что нужный файл можно "приблизить" поворотом карусели (может быть, не одной), идущим в режиме анимации.

Вторая модель – "Стена в перспективе" – также отображает файловую систему, но вне ее иерархии, согласно двум каким-то параметрам, например частоте обращения к файлу и его размеру. Это нормальная стена, только очень длинная, разбитая на три отрезка. Средний из них отображается на экране плоско, а два крайних уходят в перспективу. Пользователь может сделать средним любой отрезок стены, причем это тоже происходит в режиме анимации. Для Карда анимация – принципиальный момент, так как "анимация сохраняет в восприятии пользователя идентичность объекта", то есть пользователь легко соотносит объекты в конечной точке движения с объектами в начальной.

На это свойство анимационного интерфейса следует обратить особое внимание. В графическом интерфейсе пользователь имеет дело с последовательностью картинок. Программисты, хвастаясь скоростью своих программ, замеряют время, "теряемое" между картинками. Однако психологи, занимающиеся интерфейсом, говорят о совсем другом времени, – времени, когда пользователь может начать взаимодействие с новой картинкой на экране. В этот интервал входит не только время вывода новой картинки на экран, но и время осознания ее пользователем, ведь определенное время и усилия тратятся пользователем на то, чтобы понять, как каждая следующая картинка соотносится с предыдущей.

Анимация за счет увеличения времени перехода от одной картинки к другой (а именно времени анимированного преобразования картинок) существенно сокращает время осознания новой картинки. В психологическом смысле новой картинки и не существует, существует преобразованная старая, а так как все преобразования шли "на глазах у изумленных зрителей", то пользователь практически немедленно готов к взаимодействию.

Существует еще одно свойство анимационного пользовательского интерфейса, которое существенно улучшает его полезность по сравнению с графическим интерфейсом, а именно динамически визуальные сигналы.

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

Беда в том, что в оконном интерфейсе динамические визуальные сигналы носят характер гениальных находок и не образуют полную логичную систему. В качестве аналогии отмечу разницу между алфавитом и иероглифами. Выучив алфавит, можно читать любой текст. Выучив иероглифы, нельзя гарантировать, что не появится новый.

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

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

Однако, решая многие проблемы для пользователя, анимационный интерфейс, как это часто бывает, ставит тяжелые проблемы перед программистом и дизайнером.

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

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

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

Для дизайнеров интерфейсов конкретных продуктов работа тоже существенно усложнится. Анимационный интерфейс – орудие очень мощное и поэтому требует особой осторожности. Попытки потрясти мир могут привести к быстрой утомляемости пользователя и, как следствие, отторжению системы. Основной задачей дизайнера становится организация не неподвижного пространства, а целой серии пространств, неразрывно связанных между собой. Аналогия с созданием фильмов представляется здесь очень уместной.

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

После выработки сквозного визуального решения необходимо прорисовать картинки, называемые у аниматоров "фонами". Точнее называть их неподвижной составляющей подвижного изображения. На каждом фоне надо расположить анимированные элементы взаимодействия. И, наконец, самое трудное – надо спроектировать визуальные переходы между существенно отличающимися состояниями. И все это, сохраняя выбранный стиль! Кому это нужно? Пользователю, который ничего этого не заметит, но зато будет гораздо проще и быстрее взаимодействовать с системой. Хороший интерфейс похож на удобную обувь – никто его не замечает, а, если обратить на него внимание, в ответ получишь равнодушное "Ну и что такого?". Зато плохой интерфейс у всех на виду и на устах.

На самом деле, хороший интерфейс пользователями замечается подсознательно, и, когда он нравится, симпатии переносятся на функциональную часть программы. (Про "ДИСКо Командир" многие говорят, что он хорош, но НИКТО не говорит, чем именно.) К сожалению, следует констатировать, что сегодня стандартом стал плохой интерфейс, даже не столько плохо сделанный, сколько вообще "получившийся сам собой". Так, самое модное сейчас применение компьютеров – блуждание по Сети – имеет тот интерфейс, который вытекает из языка HTML, а он, в свою очередь, производит впечатление "времянки", которая, как теперь ясно, пришла всерьез и надолго.

Моя любимая цитата из обзора интерфейсов – "Интерфейс этой программы неестественен, потому что клавиша Alt+F4 не закрывает приложения". Здесь уже требуется талант Дарвина, чтобы понять происхождение такого вида естественности! Многие интерфейсные проблемы являются естественным продолжением маркетинговых достижений. Предположим, что ваша фирма выходит на рынок с новой моделью аудиомагнитофона, отличающейся от всех остальных некой возможностью А. Для успешной продажи этой модели та кнопка на панели управления, которая реализует А, должна быть как можно заметнее. Тогда потенциальный покупатель сам спросит "А что это?" – и продать ваше изделие будет гораздо легче. Однако, купив его и включив дома, этот покупатель будет, скорее всего, пользоваться стандартными кнопками для стандартных действий, показывая возможность А только гостям.

Таким образом, налицо противоречие, следующее из двух разных функций одного и того же товара. Первая функция – продавать самого себя за счет привлекательности и/или необычности внешнего вида, а вторая – использоваться по назначению. С точки зрения продавца (а часто, и производителя), первая функция гораздо важнее. Поэтому навязывается "стандарт", направленный именно на успешность первой функции. Замените аудиомагнитофон интерфейсными средами, и станет понятным, что я имею в виду.

(Желающих увидеть эту проблему крупным планом приглашаю на рынок пиратских CD-ROM, где покупатель принимает решение о покупке в общем-то недешевого товара, глядя только на обертку и даже будучи уверенным, что содержание в какой-то мере ей не соответствует.) Ряд интерфейсных проблем связан с конкурентной борьбой на рынке программ. Пожалуй, главная из них – какие формы должно принимать авторское право на интерфейсные решения. С одной стороны, ясно, что придумать и реализовать хороший интерфейс – очень сложная задача, и авторы такого интерфейса должны получить не только моральное вознаграждение. С другой стороны, если "защитить" такое решение патентом с последующими лицензионными выплатами, это может спровоцировать авторов новых продуктов искать свои, нехоженые и, зачастую, худшие пути в интерфейсе. В качестве яркого примера можно попробовать представить себе последствия патентования использования клавиши "F1" для вызова справки.

Лицензионная защита интерфейсных решений – прямой путь к тому, что одни и те же интерфейсные функции будут реализовываться в разных продуктах по-разному, а это далеко не в интересах пользователя. При всей моей нелюбви к фактической монополии фирмы Microsoft на рынке операционных сред должен отметить, что положительной чертой этой монополии явилась "бесплатная" стандартизация интерфейса под Windows.

С проблемой защиты авторского права в области пользовательского интерфейса связаны два громких судебных процесса – Apple Computer против той же Microsoft, где предметом был сам оконный интерфейс, и Lotus против Borland, где с правовой точки зрения оспаривалось включение в Quattro Pro (наравне с несколькими другими) интерфейса Lotus 1-2-3.

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

К сожалению, сегодняшнее состояние рынка программного обеспечения таково, что дорогу себе прокладывают не лучшие решения, а решения, имеющие "большую пробивную силу", в основном связанную с финансовой мощью предлагающих их компаний. Это особенно верно для пользовательского интерфейса. Если взглянуть на программы просмотра WWW, то вообще трудно говорить о дизайне интерфейса – получилось как получилось. Терпимо, но не более. А ведь этими программами пользуется большее число людей, чем какими-либо другими. Теперь такой интерфейс становится фактическим стандартом, а это значит, что последующий переход к более естественному интерфейсу (который, безусловно, рано или поздно произойдет) будет связан с тяжелой психологической ломкой.

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

Список литературы

Донской М. Пользовательский интерфейс


Смотрите также

 

..:::Новинки:::..

Windows Commander 5.11 Свежая версия.

Новая версия
IrfanView 3.75 (рус)

Обновление текстового редактора TextEd, уже 1.75a

System mechanic 3.7f
Новая версия

Обновление плагинов для WC, смотрим :-)

Весь Winamp
Посетите новый сайт.

WinRaR 3.00
Релиз уже здесь

PowerDesk 4.0 free
Просто - напросто сильный upgrade проводника.

..:::Счетчики:::..

 

     

 

 

.