Лекция № 14. Особенности разработки пользовательских интерфейсов

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

 

Цель лекции: ознакомиться с основными требованиями к разработке интерфейсов с учетом психофизических особенностей человека.

 

При проектировании пользовательских интерфейсов необходимо учиты­вать психофизические особенности человека, связанные с восприятием, за­поминанием и обработкой информации. Исследованием принципов работы мозга человека занимается когнитив­наяпсихология [1].

Информация о внешнем мире поступает в мозг в огромных количе­ствах. Часть мозга («процессор восприя­тия») постоянно без участия сознания перерабатывает ее, сравнивает с про­шлым опытом, и помещает в хранилище уже в виде зрительных, звуковых и прочих образов. Любые внезапные или просто значимые для нас изменения в окружении привлекают внимание, и тогда интересующая инфор­мация поступает в кратковременную память. Если же внимание не бы­ло привлечено, то информация в хранилище пропадает, замещаясь следую­щими порциями. В каждый момент времени фокус внимания фиксируется в одной точке. При необходимости одновременно отслеживать несколько ситуаций фокус перемещается с одного элемента на другой. При этом внимание «рассредоточивает­ся», и какие-то детали могут быть упущены. Так, при «прокрутке» тек­ста или рисунка с использованием линейки прокрутки окна Windows прихо­дится одновременно смотреть на текст и на ползунок. Поскольку текст важнее, фокус внимания перестает переме­щаться на мышь, и она «соскакивает» с ползунка линейки. Следует иметь в виду, что обработка процессором восприятия требует некоторого времени и, если сигнал выдается в течение времени, меньшем времени обработки, то наш мозг его не воспринимает. Восприятие во многом основано на мотивации. Например, если человек голоден, то он в первую очередь будет замечать все съедобное, а если устал - то, войдя в комнату, он в первую очередь увидит диван. Следует учитывать, что при переработке информации мозг сравнивает поступающие данные с предыдущими. Так, если показать человеку последовательность символов «А, 13, С»,то он может принять «13» за «В». При смене кадра мозг на некоторое время блокируется: он «осваивает» новую картинку, выделяя наиболее существенные детали, поэтому не стоит резко менять картинку, если не­обходима быстрая реакция пользователя.

Краткосрочная память является своего рода оперативной памятью мозга, именно с ней работает процессор познания, но не востребованная ин­формация хранится в ней не более 30 секунд. Ее емкость приблизительно равна 7 ± 2 несвязанных объектов. Чтобы не забыть важ­ную информацию, мы обычно повторяем ее «про себя», «обновляя» информацию в краткосрочной памяти. Поэтому при проектировании интерфейсов следует иметь в виду, что большинству людей сложно, например, запомнить и ввести на другом экране число, содержащее более 5 цифр (7 - 2), или некоторое сочетание букв.

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

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

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

Человеку свойственно субъектив­ное восприятие времени. Считают, что внутреннее время связано со скоро­стью и количеством воспринимаемой и обрабатываемой информации. Заня­тый человек времени не замечает. Зато в состоянии ожидания время тянется бесконечно: в это время мозг оказывается в со­стоянии информационного вакуума. Доказано, что при ожидании более 1-2 секунд пользователь может отвлечься, «потерять мысль», что увеличивает усталость и неблагоприятно сказывается на результатах работы. Сократить время ожидания можно, заняв пользователя, но не отвлекая его от работы. Например, предоставить ему какую-либо информацию для обдумывания или выводить промежуточные результаты.

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

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

Рисунок 14.1 - Процесс разработки пользовательского интерфейса

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

Основными критериями оценки интер­фейсов пользователем являются:

а) простота освоения и запоминания операций системы - оце­нивают время освоения и продолжительность сохранения информации в па­мяти;

б) скорость достижения результатов при использовании системы - опре­деляется количеством вводимых или выбираемых мышью команд и на­строек;

в) субъективная удовлетворенность при эксплуатации (удобство работы, утомляемость и т. д.).

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

Дополнительную информацию по теме можно получить в [1, 4, 14].


15 Лекция № 15. Компоненты пользовательских интерфейсов. Технология Drag&Drop

Содержание лекции: диалоговые средства связи пользователей с ПК; технология Drag&Drop; интеллектуальные элементы пользовательских интерфейсов.

 

Цель лекции: ознакомиться с компонентами пользовательских интерфейсов и технологиями, применяемыми при их создании.

 

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

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

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

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

Табличная формапредполагает, что пользователь выбирает ответ из вариантов, предложенных программой. Язык диалога для табличной формы имеет про­стейший синтаксис и однозначную семантику. Однако применение табличной формы возможно не всегда: ее мож­но использовать только, если ограничено множество возможных ответов на конкретный вопрос (менее 20). Достоинствамитабличной формы являются: наличие подсказки; сокращение количества ошибок ввода (пользователь не вводит инфор­мацию, а указывает на нее); сокращение времени обучения пользователя; возможность совмещения с другими формами; возможность настройки пользователем. Недостатки: необходимость наличия навыков навигации по экрану; использование сравнительно большой площади экрана для изображе­ния визуальных компонентов; интенсивное использование ресурсов компьютера, связанное с необхо­димостью постоянного обновления информации на экране.

Типы и формы диалога выбирают независимо друг от друга: любая форма применима для обоих типов диалогов (рисунок 15.1).

Рисунок 15.1 -Соответствие типов диалогов и его форм

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

Пользовательские интерфейсы большинства современных программ строятся по технологии WIMP[14]: W - Windows (окна), I - Icons (пиктограммы), М - Mouse (мышь), Р - Pop-up (всплывающие или выпадающие меню). Основными элементами графических интерфейсов являются: окна, пиктограммы, компоненты ввода-вывода и мышь, использу­емая в качестве указующего устройства и устройства прямого манипулирова­ния объектами на экране.

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

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

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

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

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

Возможность прямого манипулирования, предусмотренная в WIMP-ин­терфейсах, позволяет разрабатывать для приложений объектно-ориентиро­ванные интерфейсы прямого манипулирования. Интерфейсы данного типа на внешнем уровне используют директивную форму диалога: ввод команды осуществляется при выполнении определен­ных действий с пиктограммой объекта мышью. Их основными элементами являются: метафоры, объекты, представления объектов и тех­нология Drag&Drop [1].

Технология Drag&Drop («перетащил и бросил») определяет основные принципы прямого манипулирования, опи­санные в руководстве по разработке пользовательских интерфейсов фирмы IBM (CUA - Common User Access):

а) результат перемещения объекта должен соответствовать ожиданиям;

б) пользователи не должны неожиданно терять информацию;

в) пользователь должен иметь возможность отменить дей­ствие.

Эта технология также определяет основные принципы визуализации операции прямого манипулирования:

а) исходное выделение - используется в качестве обратной связи пользо­вателю, чтобы сообщить ему, что объект захвачен;

б) визуализация перемещения - идентификация выпол­няемого действия;

в) целевое выделение - идентификация пункта назна­чения;

г) визуализация действия - используется для обозначения времени ожи­дания завершения операции (изменение формы курсора на «песочные часы»).

В последние годы появилось много новых перспективных элементов пользовательских интерфейсов, привносящих в них эле­менты искусственного интеллекта: Мастер, Советчик, Агент. Сделано множество попыток создания социализированного пользовательского интерфейса, в основе которого интерфейса лежит идея создания персонифицированного («имеющего личность») интерфейса. Однако в этой области существуют психологические проблемы. Например, «безобидный» Советчик Microsoft Office вызывает у многих пользователей резко отрицательную реакцию.

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

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

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

а) программы-агенты, настраиваемые на выполнение указанных задач;

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

Дополнительную информацию по теме можно получить в [1, 5, 14, 18].