Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Практикум.doc
Скачиваний:
58
Добавлен:
03.11.2018
Размер:
13.68 Mб
Скачать

Практическое занятое № 1

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

Информация

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

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

На рис. 1.1 представлена схема «айсберга» — ощуще­ний и впечатлений, которая демонстрирует долю участия каждого компонента интерфейса в ощущениях человека.

Авторство приписывается Дэвиду Лиддлу (David Liddle), бывшему главе Metaphor Computer Company.

Визуальное восприятие элементов интерфейса про­граммного продукта требует привлечения внимания че­ловека. Для этого применяется эффект «Лас-Вегаса». Од­ним из способов реализации эффекта «Лас-Вегаса» явля­ется создание первой заставки для программного продук­та. На рис. 1.2 приведено несколько возможных вариантов таких заставок для широко известных программных про­дуктов.

Надо отметить, что содержание каждого из окон яв­ляется однотипным: наименование программного продук­та, реквизиты разработчика, одна из основных метафор

203

Человеко-машинное взаимодействие: теория и практика

Практика

.

Рис. 1.2 (окончание).

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

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

Основными видами ошибок, допускаемых авторами программ при их именовании, являются:

  • выбор кричащего и вызывающего названия типа SUPER, COOL и т.п., такие названия прочно ассо­циируются с любительским творчеством;

  • выбор названия, которое никак не отражает назна­чения программы;

  • выбор двусмысленного названия;

  • предумышленная замена некоторых букв в назва­нии с целью повышения оригинальности;

  • использование в названии программы имен авто­ров.

Кроме того, выбранное название необходимо проверить на уникальность. Такую проверку рекомендуется выпол­нять в три этапа. Этапы проверки уникальности выбран­ного названия программы:

♦ Проверка, не является ли выбранное название чьей- то зарегистрированной торговой маркой. Сделать

.это можно по адресу http://. www.nameprotect. com.

  • Проверка, не используется ли название кем-то дру­гим. Для этого можно воспользоваться одной из крупнейших поисковых систем AltaVista (http:// www. altavista .com).

  • Проверка, не зарегистрирован ли соответствующий домен в зоне.com (это можно сделать, например, по адресу http://www.domainsearch.ru).

  • Если все три этапа были пройдены успешно — вы­бранное вами название можно считать пригодным для использования.

206 207

Человеко-машинное взаимодействие: теория и практика

Практика

Задание 1.1

Выбрать имя для программного продукта соответствен­но тематике.

Выполнить проверку выбранного названия на пригод­ность по всем этапам. Результаты проверки предоставить в письменном виде.

Пример оформления результатов проверки имени про­граммы на уникальность

Предположим, что для создаваемой программы выбра­но имя «Q&S», которое является сокращением английский слов Quality and Steel.

Первый вариант поиска

Для поиска этого имени введем критерии: The name of the program Q&S — имя программы Q&S.

Результаты поиска по этому критерию приведены на рис. 1.3.

При заданных параметрах поиска произведен выбор всех словосочетаний, которые содержат указанные слова и объединяются дизъюнкцией. Количество найденных словосочетаний равно 243, причем в первую очередь ото­бражаются результаты по слову PROGRAM.

Второй вариант поиска

Для поиска этого имени введем критерии: Q&S.

Результаты поиска по этому критерию приведены на рис. 1.4.

При заданных параметрах поиска произведен выбор всех аббревиатур. Всего найдено 10 500 результатов. Дан­ная аббревиатура в результатах поиска интерпретируется как сокращение слов: Question — вопрос, ScreenShot — окно заставки, Standard — стандарт.

Большое количество результатов поиска и другая ин­терпретация аббревиатуры указывает на то, что имя для программного продукта выбрано неудачно.

Рис.1.3. Вид WEB – страницы с результатом поиска по критерию – The name of the program Q&S

208 209

Человеко-машинное взаимодействие: теория и практика

Практика

Рис. 1.4. Вид WEB страницы с результатами поиска по критерию 0&S

Информация

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

«Золотое сечение» — это самая комфортная для глаза пропорция. Форма, в основе построения которой лежит сочетание симметрии и «золотого сечения», способствует наилучшему зрительному восприятию и появлению ощу­щения красоты и гармонии.

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

В математике пропорцией называют равенство двух отношений:

а : Ь = с : d.

Отрезок прямой АВ можно разделить точкой С на две части следующими способами:

на две равные части АВ : АС = АВ : ВС;

на две неравные части в любом отношении (такие час­ти пропорции не образуют);

таким образом, когда АВ : ВС = ВС : АС.

Последнее и есть золотое деление или деление отрезка в крайнем и среднем отношении.

«Золотое сечение» — это такое пропорциональное деле­ние отрезка на неравные части, при котором весь отрезок так относится к большей части, как сама большая часть относится к меньшей; или, другими словами, меньший от­резок так относится к большему, как больший ко всему.

a:b = b : с или с :b = b : a.

Отрезки золотой пропорции выражаются бесконечной иррациональной дробью 0,618..., если с принять за еди­ницу, a - 0,382. Отношение же отрезков а и b составляет 1,618.

Прямоугольник с таким отношением сторон стали на­зывать золотым прямоугольником. Он также обладает ин­тересными свойствами. Если от него отрезать квадрат, то останется вновь золотой прямоугольник. Этот процесс можно продолжать до бесконечности. А если провести диа­гонали первого и второго прямоугольников, то точка их пересечения будет принадлежать всем получаемым золо­тым прямоугольникам.

Есть и золотой треугольник (равнобедренный треуголь­ник, у которого отношение длины боковой стороны к дли­не основания равняется 1,618), и золотой кубоид (прямо­угольный параллелепипед с ребрами, имеющими длины 1,618, 1 и 0,618).

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

210

211

Практика

Человеко-машинное взаимодействие: теория и практика

ный храм Парфенон также содержат в себе пропорцию 1,618 (рис. 1.5, а).

«Золотое сечение» не является искусственным явле­нием. Оно очень широко распространено в природе: «олотое сечение» можно найти в пропорциях тел многих рас­тений и животных, а также морских раковин и птичьих яиц. Но наиболее впечатляющий пример «применения» природой принципа «золотого сечения» — человеческое

Рис. 1.5 а. Примеры естественного и искусственного использования«золотого сечения»1

1 ВолошиновА.В. Математика и искусство. — М.: Просвещение, 1992.

тело (рис. 1.5, б). Оно це­ликом и его части (лицо, руки, кисти рук и т. п.) насквозь пронизаны пропорцией 1,618.

С

рис. 1.5.б. Примеры естественного и искусственного

использования«золотого сечения»

развитием дизай­на и технической эсте­тики действие закона «золотого сечения» рас­пространилось на кон­струирование машин, мебели и т. д. Проекти­рование компьютерных интерфейсов — не исключение. Формы диалоговых окон и элемен­тов управления, сторо­ны которых относятся как 1,618, очень привле­кательны для пользователей.

Задание 1.2

  1. Разработать основную метафору для программного про­дукта. *

  2. Создать окно-заставку, реализующее эффект «Лас-Ве­гаса» по следующим правилам:

  • один из размеров окна-заставки должен составлять Уз часть от соответствующего размера экрана неза­висимо от его разрешения;

  • геометрические размеры окна должны выдерживать соотношение «золотого сечения»;

  • в окне должны быть отражены сведения: название программы, основная метафора, данные об авторе и руководителе проекта, период создания, рекви-

212

213

Человеко-машинное взЗЛмвдейегвие: теория и практика

зиты организации и подразделения, версия про­граммного продукта; ♦ время отражения на экране должно определяться временем загрузки основного окна приложения. 3. Выполнить сопровождение окна звуковыми и.анима-ционными эффектами1.

Контрольные вопросы к практической работе

  • Определите понятие «интерфейс».

  • Поясните, почему необходимо привлекать внимание пользователя при работе с пользовательским интер­фейсом.

  • Приведите системы поисковых7систем, которые можно использовать при проверке имени программного про­дукта на уникальность.

  • Выполните обоснование проверки имени программы на уникальность.

  • Приведите примеры использования «золотого сечения» в окружающем мире, искусстве и программирова­нии.

  • Приведите примеры программных продуктов, которые используют эффект «Лас-Вегаса». Какие эффекты ис­пользуют эти программные продукты?

  • Определите понятие «модель пользователя».

  • Определите понятие «восприятие».

  • Как связано восприятие с моделью пользователя?

  • Определите элементы качества интерфейса.

Задание является необязательным и выполняется по жела­нию студента. Оценивается дополнительными баллами.

Практическое запетое 2

ОРГАНИЗАЦИЯ СТРУКТУРЫ И СЦЕНАРИЯ ДИАЛОГА В ПРОГРАММНОМ ПРОДУКТЕ

Информация

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

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

Таким образом, при проектировании пользовательско­го интерфейса необходимо определить:

  • применяемую терминологию;

  • структуру диалога;

215

Человеко-машинное взаимодействие: теория и практика

Практика

  • возможный сценарий развития диалога;

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

  • визуальные атрибуты отображаемой информации (синтаксис сообщений).

Задание 2.1

  1. Описать цели и задачи создания программного про­дукта.

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

Пример описания целей и задач программного продук­та «Q&S»

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

Для достижения поставленной цели решаются следую­щие задачи:

  • выполнить математическую формализацию исход­ного изображения;

  • выполнить расчет статических характеристик изо­бражения;

  • построить оценочные таблицы для характеристики внутренних дефектов в соответствии со значениями статистических характеристик;

  • графически отобразить результаты оценки для од­ного изображения и набора изображений;

  • разработать пользовательский интерфейс для реа­лизации поставленных задач.

216

Информация

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

Диалог типа «вопрос-ответ»

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

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

217

Человеко-машинное взаимодействие: теория и практика

Практика

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

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

Диалог на основе меню

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

Существует несколько основных форматов представ­ления меню на экране:

  • список объектов, выбираемых прямым указанием . либо указанием номера (или мнемонического кода);

  • меню в виде строки данных;

  • меню в виде блока данных;

  • меню в виде пиктограмм.

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

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

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

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

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

Диалог на основе экранных форм

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

218

219

Человеко-машинное взаимодействие: теория и практика

Практика

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

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

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

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

Многие командные языки поддерживают макросы, ко­торые расширяют функциональные возможности диалога

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

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

Выбор формы диалога можно представить с помощью «таблицы выбора» (табл. 2.1).

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

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

Закрыть графы «Тип диалога» для выбранного про­граммного продукта.

В графе «Выбор пользователя» пометить критерии, от­носящиеся к рассматриваемому применению.

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

Подсчитать число совпадений для каждого типа диа­лога.

222

223

Человеко-машинное взаимодействие: теория и практика

Практика

Таблица 2.1

Обоснование выбора структуры диалога в зависимости от типа пользователя

Критерий

Выбор пользова­теля

Тип диалога

Меню

Q&A

Язык команд

Экран­ные формы

Цель:

Запрос

+

+

+

+

вычисления

+

+

+

+

сложный выбор

+

+

ввод данных

+

+

ввод большого объема данных

+

+

+

+

Тип пользователя

программист

+

+

непрограммист

+

+

с опытом работы

+

+

*

*

без опыта работы

+

+

Время обучения

Очень малое

+

+

Менее 1 дня

+

+

**

**

Более 1 дня

+

+

Результат оценки

4

5

4

3

224

В табл. 2.1 введены обозначения: + — использование данного типа диалога для данной категории пользователей является хорошо разработанным в условиях данной зада­чи; * — использование этого типа диалога данной кате­горией пользователей требует наличия системы помощи; ** — использование средств системы возможно только в ограниченном объеме.

По данным, приведенным в табл. 2.1, можно утверждать, что наиболее оптимальным будет диалог «вопрос-ответ».

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

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

Задание 2.2

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

  2. Сделать вывод о выборе структуры диалога.

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

  4. Описать панели инструментов, если их использование подтверждается выбором пользователя.

  5. Описать назначение команд, если их использование подтверждается выбором пользователя.

  6. Выполнить проектирование набора необходимых форм, если их использование подтверждается выбором поль­зователя.

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

8. Зак. 313 225

Человеко-машинное взаимодействие: теория и практика

Практика

Информация

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

Целями разработки сценария диалога являются:

  • выявление и устранение возможных тупиковых си­туаций в ходе развития диалога;

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

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

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

В свою очередь, степень неопределенности действий пользователя зависит от выбранной структуры диалога. Наибольшей детерминированностью обладает диалог на основе меню, наименьшей — диалог типа «вопрос-ответ», управляемый пользователем.

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

  • использование смешанной структуры диалога (при­менение меню с целью «ограничения свободы» поль­зователя там, где это возможно);

  • применение входного контроля вводимой информа­ции (команд и данных).

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

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

Способ описания сценария диалога зависит от степени его сложности. Существующие методы описания сцена­риев можно разделить на две большие группы: неформаль­ные и формальные методы.

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

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

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

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

226

8*

227

Человеко-машинное взаимодействие: теория и практика

Практика

Подготовка сообщения

Выдача сообщения

участником 1

участником 1

Выдача сообщения участником 1

Подготовка сообщения участником 2

i

Рис. 2.1. Схема одного шага диалога

Задание

  1. Описать возможные тупиковые ситуации, которые мо­гут возникнуть при диалоге.

  2. Описать средства контроля при вводе данных.

  1. Составить схему сценария диалога для пяти первых шагов.

  2. Выполнить программную реализацию этого сценария для пяти шагов.

Пример построения сценария диалога для программ­ного продукта «Q&S»

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

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

Пользователь обращается к пункту меню «Математическое описание»

ПП открывает пункт «Математическое описание»

ПП выполняет алгоритмы оцифровки-

ПП активизирует пункт «Оцифровка изображения»

ПП активизирует пункты меню «Расче

оценок» и «Сохранение матрицы»

Рис. 2.2. Вид основного окна программы «Q&S»

Рис. 2.3. Схема сценария для оцифровки изображения

Каждый шаг предлагаемого сценария может быть уточ­нен по шагам используемых алгоритмов.

Контрольные вопросы к практической работе

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

  • Перечислите формы диалога, которые реализуются при создании программного продукта.

  • Перечислите форматы представления меню на экране.

  • В чем особенности использования диалога на основе «экранных форм»?

228

229

Человеко-машинное взаимодействие: теория и практика

  • В каких случаях используют диалог на основе команд­ного языка.

  • Определите назначение позиционных параметров.

  • Перечислите назначение ключевых параметров.

  • Какие существуют способы обоснования выбора струк­туры диалога программного продукта.

  • Перечислите цели разработки сценария диалога.

  • Перечислите методы описания сценариев.

  • Определите понятие «шаг диалога».

  • Сколько шагов диалога может быть построено в про­граммном продукте по выбранной теме?

  • Какие способы контроля выбираются при вводе исход­ных данных?

Практическое занятие № 3

ОРГАНИЗАЦИЯ СЦЕНАРИЯ РАБОТЫ ДНЯ AFEHTA-ПОМВЩНИКА В ПРОГРАММНОМ ПРОДУКТЕ

И ЕГО РЕАЛИЗАЦИЯ

Информация

Одним из применений технологии компьютерного ви­дения в настоящее время стала организация интеллекту­альных помощников.

Прежде чем погружаться в изучение Microsoft Agent, давайте оглянемся в прошлое и вспомним, как все начи­налось.

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

В прошлом веке (а именно, в 1992 г.) исследовательская лаборатория Microsoft Research (http://research.microsoft. com) приступила к работе над проектом Persona. Целью данного проекта было создание специального пользова­тельского интерфейса, использующего голосовые коман­ды и имеющего особый социальный аспект применения. Исследования показали, что многие люди испытывают определенные неудобства при работе с компьютером. В ка-

231

Человеко-машинное взаимодействие: теория и практика

Практика

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

Следующий шаг корпорация Microsoft сделала в 1995 г., выпустив продукт Microsoft Bob. В нем был реализован набор программ, в котором использовался анимированный персонаж в образе «гида». Гид с помощью специальных окон, содержащих вопросы и кнопки управления, позво­лял выполнять различные операции в зависимости от вы­бора пользователя. Данный проект также не прижился в Windows.

Но наработки, появившиеся в проектах Persona и Mi­crosoft Bob, послужили базой для нового проекта Microsoft Agent, а также легли в основу пакета Office Assistent в Office 97.

28 октября 1996 г. Microsoft объявила о выходе бета-вер­сии Microsoft Agent. А уже через год^8 сентября 1997 г., вы­шел первый официальный релиз Microsoft Agent 1.5.

Данная технология успешно развивалась. И если вер­сия MS Agent 1.5 распространялась как отдельный про­дукт, который можно было бесплатно скачать с сайта Mi­crosoft, то, начиная уже с Windows ME/2000, MS Agent версии 2.0 была интегрирована в систему, став ее неотъ­емлемой частью. Также эта технология была внедрена в последние версии Microsoft Office.

Несмотря на ее короткую историю, технологию MS Agent безусловно ждет дальнейшее развитие. Корпорация Microsoft неоднократно использовала данную технологию на различных презентациях своих новых продуктов. Кро­ме того, в ее развитии принимают участие и другие уча-

стники компьютерного рынка. Выпускаются, например, собственные разработки отдельных компонентов MS Agent от сторонних производителей.

Не секрет, что как в Интернете, так и в интрасетях объем информации, мгновенно доставляемой пользовате­лям компьютеров, рос с неимоверной скоростью. В резуль­тате информационного бума возник интерес к интеллек­туальным агентам (intelligent agents), программным по­мощникам, выполняющим такие задачи, как извлечение и доставка информации и автоматизация повторяющихся операций. Уже около 50 компаний занимаются разработ­кой программных агентов или служб, таких как Firefly (www.firefly.net) и WiseWire (www.wisewire.com). По дан­ным исследований, проведенных организацией GiGa Information Group, к 2000 г. интеллектуальные агенты будут иметь самые разнообразные применения, в том чис­ле в пользовательских интерфейсах, настольных пакетах, системах обмена сообщениями, программах, предназна­ченных для сфер коммерции и сетевого управления.

Агенты существенно упростят вычисления. Они впол­не справятся с функциями Web-браузеров, «справочных бюро» и помощников в приобретении товаров. Например, Web Browser Intelligence (Webby) фирмы IBM — прототип программы, отслеживающей операции, совершаемые поль­зователем браузера, и регистрирующей частоту посещения узлов, чтобы затем автоматически загружать «любимые» ее владельцем страницы. Более совершенные агенты, та­кие как Gingko фирмы IBM, построенный на базе Java, могут «изучать» предпочтения пользователя и прогнози­ровать его поведение.

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

232

233

Человеко-машинное взаимодействие: теория и практика

Практика

Именно такой подход лежит в основе Persona, иссле­довательского проекта, касающегося GUI, над которым работает группа User Interface Research фирмы Microsoft. С помощью речевого процессора Whisper, разработанного специалистами Microsoft, и технологии распознавания естественного языка группа создала словно живого ком­пьютерного помощника — анимированного 3D-nonyran по имени Пиди, способного взаимодействовать с пользо­вателем в разговорной манере. Прибегнув к его услугам, можно отыскать конкретные музыкальные компакт-дис­ки и дать указание воспроизвести их. Для выполнения более сложных вычислительных функций «живым» пер­сонажам необходимы более совершенные средства распо­знавания речи, гибкие средства естественного языка и улучшенные возможности синтеза речи.

Задание 3.1

  1. Привести примеры программных продуктов, имею­щих агентов-помощников (минимум два программ­ных продукта).

  2. Описать три состояния помощника-агента для одного из программных продуктов.

  3. Разработать эскиз для внешнего вида агента-помощ­ника для создаваемого программного продукта.

  4. Разработать три сценария поведения агента-помощ­ника.

  5. Выполнить реализацию одного из сценариев агента-помощника.

Указания к выполнению

Состояния агента помощника могут быть описаны сле­дующим способом (табл. 3.1).

Сценарий поведения помощника может быть представ­лен в схематическом виде (рис. 3.1).

Таблица 3.1 Возможные состояния агента помощника в MS Word

Название состояния

Вид помощника

Дополнительные эффекты

Состояние активного наблюдения за действиями пользо­вателя

Анимационное изменение формы и положения хвоста: вниз к лапам, помахивание и сворачивание в спираль

Состояние предупре­ждения при возмож­ном выполнении неправильного действия пользовате­лем

Звуковое сопровож­дение: мяуканье

Состояние предупре­ждения пользовате­лю на сложность сложившегося состояния в прило­жении

Звуковое сопровож­дение: царапанье поверхности и мурлыканье

Состояние приветст­вия пользователя при правильно выбран­ном действии в сложной ситуации

Анимационное сопровождение: зажигание лампоч­ки; и звуковое сопровождение: мяуканье

Состояние сна при бездействии пользо­вателя в пределах окна программного продукта в течение 10 минут

Анимационных и звуковых сопрово­ждений нет

234

235

Человеко-машинное взаимодействие: теория и практика

Практика

Дополнительное задание

  1. Выполнить программную реализацию для настроек параметров агента-помощника.

  2. Выполнить сопровождение реакции помощника зву­ковыми сигналами, желательно реального мира.

Контрольные вопросы к практическому занятию

  • Перечислите области применения агентов-помощ­ников.

  • Перечислите примеры использования агентов-помощ­ников в программном продукте.

  • Насколько рациональной, по вашему мнению, явля­ется разработка агента-помощника в условиях выбран­ного программного продукта?

  • Какие средства разработки вы использовали при раз­работке агента-помощника?

236

237

Практическое занятие № 4

КВАНТИФИКАЦИЯ ПОЛЬЗОВАТЕЛЬСКОГО ИНТЕРФЕЙСА

Информация

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