русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Тема 4. Факторы оценки пользовательских интерфейсов


Дата добавления: 2013-12-23; просмотров: 2565; Нарушение авторских прав


Классификации диалогов и общие принципы их разработки

Как отмечалось в § 8.1, диалог - это процесс обмена информацией меж­ду пользователем и программной системой, осуществляемый через интерак­тивный терминал и по определенным правилам.

Различают тип диалога и его форму.

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

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

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

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

• фразовую,

• директивную,

• табличную.

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



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

Чаще всего используют диалоги, предполагающие односложные ответы, например:

Программа: Введите свой возраст (полных лет):

Пользователь: 48.

В этом случае программа содержит ограниченное описание как синтак­сиса, так и семантики используемого ограниченно-естественного языка. Для данного примера достаточно определить синтаксис понятия «целое положи­тельное число» и наложить ограничение на значение числа.

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

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

Выделяют два метода морфологического анализа:

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

• процедурный - предполагает выделение в текущей словоформе осно­вы, которую затем идентифицируют.

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

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

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

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

• большие затраты ресурсов;

• отсутствие гарантии однозначной интерпретации формулировок;

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

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

Команду можно вводить:

• в виде строки текста, специально разработанного формата, например,
команды MS DOS, которые вводятся в командной строке;

• нажатием некоторой комбинации клавиш клавиатуры, например, ком­
бинации «быстрого доступа» современных Windows-приложений;

• посредством манипулирования мышью, например, «перетаскиванием»
пиктограмм;

 

• комбинацией второго и третьего способов.
Основными достоинствами директивной формы являются:

• сравнительно небольшой объем вводимой информации;

 

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

• ориентация на диалог, управляемый пользователем;

• использование минимальной области экрана или неиспользование ее
вообще;

• возможность совмещения с другими формами.

 

Недостатки директивной формы:

• практическое отсутствие подсказок на экране, что требует запомина­
ния вводимых команд и их синтаксиса;

• почти полное отсутствие обратной связи о состоянии инициированных
процессов;

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

• отсутствие возможности настройки пользователем.

 

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

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

• наличие подсказки, что уменьшает нагрузку на память пользователя,
так как данная форма ориентирована не на запоминание, а на узнавание;

• сокращение количества ошибок ввода: пользователь не вводит инфор­
мацию, а указывает на нее;

• сокращение времени обучения пользователя;

• возможность совмещения с другими формами;

 

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

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

 

• использование сравнительно большой площади экрана для изображе­
ния визуальных компонентов;

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

 

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

Рис. 8.10. Соответствие типов диалогов и его форм

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

Разработка диалогов. Процесс проектирования и реализации диалогов можно разделить на следующие стадии:

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

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

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

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

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

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

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

Пример 8.2. Разработать граф диалога для системы решения комбина­торно-оптимизационных задач.

Так как диалог на верхнем уровне должен обеспечивать реализацию ди­аграммы вариантов использования, исходный вариант графа диалога строим на основе анализа этой диаграммы (см. рис. 6.4). Можно предположить, что пользователь будет принимать решение о сохранении или удалении результа­тов после их просмотра, поэтому эти операции естественно объединить в единую группу. Кроме того, в ту же группу целесообразно добавить опера­цию печати результатов. Аналогично просмотр данных целесообразно объе­динить с их удалением или корректировкой. Операцию Новое задание целе­сообразно поместить в отдельную группу (рис. 8.11).

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

Пример 8.3. Детализировать диа­лог Новое задание.

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

Анализ графов диалога показыва­ет, что диалог, управляемый системой,

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

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

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

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

 

 

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

 



<== предыдущая лекция | следующая лекция ==>
Пользовательская и программная модели интерфейса | Скорость выполнения работы


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.005 сек.