Создание интерфейса взаимодействия

Характеристики интерфейса взаимодействия, его естественность, согласованность и простота. Психофизиологические характеристики операторов. Темп ведения диалога. Классификации пользователей интерактивных систем. Анализ естественного языка взаимодействия.

Рубрика Программирование, компьютеры и кибернетика
Вид курс лекций
Язык русский
Дата добавления 13.11.2012
Размер файла 911,3 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

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

С учетом наличия двух компонентов в диалоговой системе на рис.3. представлена обобщенная схема алгоритма диалога с программным приложением.

При этом однократное прохождение по одной из ветвей схемы алгоритма от блока "Начало” до блока "Конец" или до возврат к началу схемы алгоритма будем называть шагом диалога или транзакцией. Шаг диалога характеризуется активным взаимодействием человека с ЭВМ, т.е. в данном случае в ответ на ввод сообщения пользователя после его обработки диалоговой системой выдается выходное сообщение, отражающее состояние системы или диалога. Восприятие системой входного сообщения включает 2 этапа:

синтаксический анализ - проверка соответствия формы, в которой введена информация, разрешенным на данном шаге, диалога шаблонам или правилам ввода-вывода;

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

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

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

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

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

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

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

Для реализации транзакций диалога используются следующие формы:

синтаксически ограниченная (меню, запросы с ответом по шаблону, запросы с ответом ДА/НЕТ);

директивная (команды);

фразовая (взаимодействие на ограниченном естественном языке);

объектно-ориентированная.

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

меню;

вопросы, требующие ответа ДА/НЕТ;

шаблон;

простой запрос;

команда;

взаимодействие на естественном языке.

Рисунок 3.

Сценарий взаимодействия

Взаимодействие человека-оператора с ЭВМ обычно подчиняется определенному сценарию диалога. Сценарий диалога представляет собой алгоритм взаимодействия оператора с программной системой. Его проектируют, исходя из задач, стоящих перед АСОИиУ, характера и функций человека в процессе управления, технических возможностей средств отображения информации. Сценарий диалога представляет собой детальное описание диалогового взаимодействия, выраженное в виде структуры диалога, а также его информационной и операционной моделей. Формально сценарий определяется следующим образом:

D = <S, A, C, R. G, I, O>,

где: S - множество состояний; A - множество операций; C=Q U F - множество условий (Q - множество входных условий, F - множество программных условий); R - множество выходных сообщений; G: SxC® S - граф диалога; I: {S® R; SxC® R} - информационная модель диалога; O: {S® A; SxC® A} - операционная модель диалога.

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

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

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

Линейная структура Древовидная структура Сетевая структура

Рисунок 4.

Рассмотрим диалог в форме меню.

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

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

Пользователь может выбрать требуемую функцию одним из следующих основных способов:

а) набором требуемой директивы или ее аббревиатуры;

б) набором номера выбранной директивы;

в) подведением курсора в строку экрана с требуемой директивой;

г) нажатием фотоселектора в соответствующей строке экрана.

Графически диалог можно представить в виде графа. Узлы графа соответствуют подмножеству функций системы, а дуги, направленные вниз, - возможным альтернативам пользователя. При этом число дуг равно числу предлагаемых системой функций. Дуга вместе с вершиной, из которой она исходит, соответствует шагу диалога. Верхний узел (корень) дерева соответствует начальному сообщению системы. На рис.5 приведен граф диалога меню в виде дерева. Корень дерева (верхний узел, соответствующий начальному сообщению системы) и исходящие из него дуги соответствуют шагу диалога. После выполнения некоторых шагов диалога система высветит меню, обозначенных прямоугольниками. Движение вниз по дереву графа меню в направлении прикладной системы называется "погружением" [12]. Для выполнения функции, соответствующей соседним ветвям дерева графа, при работе с прикладной системой используется механизм "всплытия”. Его можно реализовать двумя способами:

а) последовательным движением вверх по дугам графа диалога до узла, непосредственно содержащего заданную функцию или содержащего ее в узлах, в которые из него можно перейти, используя "погружение”;

б) непосредственным переходом в корень дерева графа диалога с последующим погружением.

Рисунок 5.

Графически второй способ соответствует наличию в каждом узле ориентированной к вершине дерева дуги графа. Одна из таких дуг изображена на рис.3 штриховой линией.

Тип диалога в форме вопросов, требующих ответа ДА/НЕТ, являются частным случаем диалога типа "меню”, когда в шаге диалог; в качестве альтернатив пользователю предлагаются два ответа: ДА и НЕТ.

Графическая интерпретация рассматриваемого типа диалога изображена на рис.6.

Рисунок 6.

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

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

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

1) указание системой на экране дисплея формата вводимого пользователем сообщения;

2) резервирование места для сообщения пользователя в тексте сообщения системы на экране дисплея (например, с помощью поля повышенной яркости).

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

Рисунок 7.

Шаблон обычно используется для ввода данных, значения которых или "прозрачны" (например, текущая дата), или являются профессиональными терминами и поэтому они известны пользователю. Однако формы подачи этих данных не определяются их значениями.

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

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

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

Рисунок 8.

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

Рисунок 9.

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

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

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

Графическая интерпретация взаимодействия на естественном и квазиестественном языках приведена на рис.10, а, б соответственно.

рис.10, а, б

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

Анализ типов диалога

Анализ описанных типов диалога показывает, что применение только одного из них (за исключением последнего) не позволяет создать достаточно гибкую и эффективную систему. Рассмотрим некоторые ограничения на структуру диалога, накладываемые разными его типами;

а) вопросы, требующие ответа ДА/НЕТ - мала эффективность диалога, велика избыточность графа диалога при усложнении темы общения, чрезмерное их использование приводит к переутомлению пользователя;

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

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

Контрольные вопросы

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

2. Какие типы диалога наиболее известны в человеко-машинной среде?

3. Что означает термин "транзакция" в диалоговом взаимодействии?

4. Что означает сценарий диалога?

5. Каковы основные структуры диалога?

6. Как графически отображаются различные типы диалога?

Лекция 7. Анализ и синтез естественного языка взаимодействия. Структурная схема лингвистического транслятора. Морфологический анализ (синтез). Синтаксический анализ (синтез). Семантическая интерпретация (синтез) и проблемный анализ

Цель анализа предложений естественного языка (ЕЯ) заключается в их переводе на машинный язык (МЯ) вычислительной системы. Этот процесс можно представить наглядно в виде следующей схемы (рис11).

Структурная схема лингвистического транслятора

Рисунок 11.

Задача анализа ЕЯ сводится к:

распознаванию правильно построенных предложений ЕЯ;

исправлению ошибок в ЕЯ - тексте;

декомпозиции предложения на Фрагменты и построению его синтаксической структуры;

семантической интерпретации фрагментов ЕЯ во фрагменты М-языка;

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

Задача синтеза ЕЯ заключается в:

определении информации, которую необходимо сообщить пользователю;

разбиении текста М-языка на фрагменты, соответствующие будущим фразам;

определении лексем для синтезируемой фразы;

построении синтаксической структуры фразы;

определении порядка слов и осуществлении морфологического синтеза словоформ.

Морфологический анализ (синтез).

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

идти - глагол, множественное число, настоящее время;

занятие - существительное, средний род, множественное число, именительный падеж.

Существуют два основных метода морфологического анализа:

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

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

Морфологический синтез предназначен для построения конкретных словоформ ЕЯ по словарю и заданной морфологической информации. Аналогично анализу морфологический синтез реализуется декларативным и процедурным способами.

Синтаксический анализ (синтез).

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

Система составляющих. Пусть имеется цепочка х (произвольная последовательность словоформ) длиной w (количество словоформ). Каждая словоформа цепочки называется точкой. Для любых точек a и b цепочки х таких, что а < b (а левее b) вводится понятие отрезка, представляющего множество точек s, удовлетворяющих неравенству а < s < b. Множество S отрезков цепочки х называется системой составляющих этой цепочки, если множество S содержит отрезок, состоящий из всех точек цепочки х, либо все одноточечные отрезки цепочки; любые два отрезка из множества b либо не пересекаются, либо один из них содержится в другом.

Элементы S называются составляющими. Например, для предложения "лекция проводится в аудитории номер 232 главного корпуса" допустима следующая система составляющих (рис.12): -

Рисунок 12. Система составляющих предложения

Дерево зависимостей. Пусть х - произвольная непустая цепочка и X - множество всех точек х.

Произвольное бинарное отношение R, определенное на X, при котором направленный граф (X,R) является деревом, называется отношением зависимости. Само дерево (X,R) называется деревом зависимостей для X. Если между точками а и b существует отношение а->b, то точку а называют управляющей, а b - подчиненной (рис.13).

Рисунок 13. Дерево зависимостей предложения

Целью синтаксического синтеза является формирование синтаксической структуры фраз и заполнение их соответствующими лексемами. Заключительным шагом синтеза является приписывание лексемам морфологических характеристик.

Семантическая интерпретация (синтез) и проблемный анализ

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

Рисунок 14. Семантическая сеть предложения

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

Контрольные вопросы

1. В чем заключается задачи анализа и синтеза естественного языка?

2. Какими методами проводится морфологический анализ (синтез) естественного языка?

3. Какими методами проводится синтаксический анализ (синтез) естественного языка?

4. В чем заключается семантическая интерпретация (синтез) и проблемный анализ ЕЯ. синтаксический анализ (синтез) естественного языка?

5. Приведите примеры морфологического, синтаксического анализа и семантической интерпретации ЕЯ?

Лекция 8. Классификация пользовательских интерфейсов. Особенности графических и неграфических пользовательских интерфейсов

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

WIMP-интерфейс, компонентами которого являются: window - окно, icon - пиктограмма, menu - меню и pointer - указатель.

SILK-интерфейс, speech - речь, icon - пиктограмма, language - язык, knowledge - знание.

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

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

графический пользовательский интерфейс (Graphical User Interface - GUI);

пользовательский Web-интерфейс (WEB-User Interface WUI);

пользовательские интерфейсы карманных устройств (Hand-User Interface - HUI);

неграфический пользовательский интерфейс командной строки (Command Line Interface - CLI).

Графический пользовательский интерфейс (GUI).

Графический пользовательский интерфейс (Graphical User Interface - GUI) oпределяется как стиль взаимодействия "пользователь-компьютер", в котором применяются такие основные элементы: окна, пиктограммы, меню и указатели. Иногда GUI-интерфейс называют WIMP-интерфейсом.

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

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

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

Меню. Меню отображает набор альтернатив, с помощью которых пользователь, может осуществить выбор. Обычно альтернативы GUI-ориентированного меню представляют собой имена выбираемых пользователями команд для выполнения действий над объектами. Примером меню является меню File (Файл), а пример альтернативного варианта команды, размещенной в меню File - команда Print (Печать). Meню содержат в себе полный набор пользовательских команд. Системы, отличные от графических, напротив, требуют, чтобы под меню использовался весь дисплей, при этом меню строятся иерархическим способом.

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

Указатели. Графические системы обычно содержат координатно-указательные устройства в виде мыши или шарового манипулятора.

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

Непосредственное манипулирование. Наиболее значительное свойство GUI-интерфейса заключается в непосредственном манипулировании, которое позволяет пользователю взаимодействовать с объектами с помощью указателя. Например, окно можно переместить по экрану с помощью мыши, установив указатель на строку заголовка окна, нажав и удерживая кнопку мыши и перемещая мышь (иногда эту операцию называют "захватить и перетащить" - "grab and drag"). Многие действия, выполняемые с помощью выбора альтернатив или меню, можно произвести, воспользовавшись непосредственным манипулированием. Например, во многих системах результатом перетаскивания пиктограммы документа на пиктограмму принтера на рабочем столе является печать документа. К другим действиям, которые выполняются с помощью непосредственной манипуляции, относятся такие операции, как Move (Переместить), Сору (Копировать), Delete (Удалить) и Link (Связать).

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

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

Пользовательский Web-интерфейс (WUI).

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

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

браузер обеспечивает меню для Web-приложения;

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

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

создание специализированных меню требует дополнительной работы по программированию;

клиентская область не содержит традиционных пиктограмм;

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

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

поддержка указателя осуществляется в основном для выбора с помощью одного щелчка мышью или выбора по навигационным ссылкам. Технология "drag and drop" ("перетащить и поместить") не поддерживается за исключением случаев специального программирования в определенных средах. Действия кнопки 2, мыши также ограничены.

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

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

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

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

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

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

гиперссылка представляет собой вариант выбора, который отображает следующую страницу информации или перемещает фокус отображения на другую область той же страницы;

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

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

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

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

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

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

Пользовательский интерфейс карманных устройств (HUI).

Сегодня широко известны компьютеры два основных класса PDA (Personal Digital Assistant-персональный цифровой ассистент - "карманный" компьютер, предназначенный, выполнения некоторых специальных функций) - в одних используется настоящий GUI-стиль как по внешнему виду, так и по поведению, в других применяется подмножество GUI-интерфейса. Для ввода данных пользователем применяется "жестикуляционный" стиль с пером и сенсорным экраном.

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

HUI-интерфейс обеспечивает некоторые возможности GUI-интерфейса, а именно пиктограммы, меню и аналогичное поведение указателя. В окне устройства одновременно отображается один объект. Общий стиль для HUI-интерфейса можно назвать SIMP-стилем (Screen - экран, Icon - пиктограмма, Menu - меню и Pointer - указатель). При этом обеспечиваются многие свойства GUI-интерфейса, некоторые из них приведены ниже.

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

б) Строка меню и сами меню отображаются по требованию и обладают обычным для таких компонентов поведением.

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

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

Основные проблемы проектирования HUI-ориентированных приложений перечислены ниже.

а) Упрощение требований к пользователю по вводу данных и взаимодействию.

б) Использование ограниченной области дисплея.

Неграфический пользовательский интерфейс командной строки (Command Line Interface - CLI).

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

Контрольные вопросы

1. Как классифицируются пользовательские интерфейсы?

2. Каковы особенности применения GUI?

3. Каковы особенности применения WUI?

4. Каковы особенности применения HUI?

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

Рассмотрим интерфейс информационного взаимодействия на примере WEB-приложений, отметим, что рассмотренный ранее пользовательский WUI непосредственно связан с программным интерфейсом уровня приложений. Взаимодействие различных объектов в сети Интернет строится в соответствии с правилами и требованиями общего международного стандарта ISO 7498 (ISO - International Organization for Standardization).

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

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

В качестве прообраза модели взаимодействия OSI (Open System Interconnection) была использована структура, предложенная ANSI (American National Standards Institute). ISO 7498 является стандартом в области телекоммуникаций.

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

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

Предположим, например, что система А, изображенная на рис.15, имеет информацию для отправки в систему В. Прикладная программа системы А начинает взаимодействовать с уровнем 4 системы А (верхний уровень), который, в свою очередь, начинает взаимодействовать с уровнем 3 системы А, и т.д. - до уровня 1 системы А. Задача уровня 1 забирать информацию из физической среды сети, отдавать, а потом после того как информация проходит через физическую среду сети и поступает в систему В, она последовательно обрабатывается на каждом уровне системы В в обратном порядке - сначала на уровне 1, затем на уровне 2 и т.д., пока, наконец, не достигнет прикладной программы системы В.

Многоуровневая модель не предполагает наличия непосредственной связи между одноименными уровнями взаимодействующих систем. Следовательно, каждый уровень системы А должен полагаться на услуги, предоставляемые ему смежными уровнями системы А, чтобы помочь осуществить связь с соответствующим уровнем системы В. Предположим, что уровень 4 системы А должен связаться с уровнем 4 системы В. Для того чтобы выполнить эту задачу, уровень 4 системы А должен воспользоваться услугами уровня 3 системы А, тогда уровень 4 будет называться "пользователем услуг", а уровень 3 - "источником услуг".

Рисунок 15.

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

Рисунок 16. Инкапсуляция блоков данных различных уровней

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

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

Структура заголовка и собственно данных относительна и зависит от уровня, который в данный момент анализирует информационный блок. Например, на уровне 2 информационный блок состоит из заголовка этого же уровня и следующих за ним данных. Однако данные уровня 2 могут содержать заголовки уровней 3 и 4. Кроме того, заголовок уровня 2 является просто данными для уровня 1. Помимо заголовка на каждом уровне системы информационный блок завершается соответствующей контрольной суммой - КонтСум. Эта концепция иллюстрируется на рис.16.

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

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

В соответствии с ISO 7498 выделяются семь уровней (слоев) информационного взаимодействия:

7. Уровень приложения (Application Layer).

6. Уровень представления (Presentation Layer).

5. Уровень сессии (Session Layer).

4. Транспортный уровень (Transport Layer).

3. Сетевой уровень (Network Layer).

2. Канальный уровень (DataLink Layer).

1. Физический уровень (Physical Layer).

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

Определение.

Протокол - набор алгоритмов (правил) взаимодействия объектов одноименных уровней.

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

Определение.

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

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

Определение

Стек - иерархически организованную группу взаимодействующих протоколов

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

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

Уровни 1-3 и иногда 4 считаются нижними уровнями OSI. На каждом из этих уровней определяется свой формат представления данных. При прохождении по стеку с 4-го уровня до первого сообщение пользователя последовательно фрагментируется и преобразуется в последовательность блоков данных соответствующего уровня.

Определение.

Инкапсуляция - процесс помещения фрагментированных блоков данных одного уровня в блоки данных другого уровня.

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

Контрольные вопросы

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

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

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

4. Каков смысл терминов инкапсуляция и стек протоколов в компьютерных системах?

Лекция 10. Программно-аппаратные интерфейсы. Интерфейсы взаимодействия уровня приложений. Реализация интерфейса взаимодействия WEB - приложений

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

При реализации интерфейса взаимодействия WEB - приложений используется протокол HTTP (Hypertext Transfer Protocol - протокол передачи гипертекcта), который представляет собой протокол прикладного уровня и обеспечивает возможность доступа к разнообразной информации, размещенной в сети WWW - World Wide Web. Протокол HTTP обладает высокопроизводительными механизмами тиражирования информации, независимо от типа представления данных. Протокол построен по объектно-ориентированной технологии и может использоваться для решения различных задач, например, управления распределенными информационными системами.

Способность хранить и представлять данные разнообразных форматов (изображения, видео, аудио) делает сеть WWW с используемым HTTP уникальным средством размещения информации.

В настоящее время протокол HTTP используется системой WWW качестве одного из основных протоколов. С учетом этого рассмотрим подробнее методы работы протокола HTTP.

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

Рассмотрим составляющие программно-аппаратных интерфейсов на основе протоколов уровня приложений.

URI (Uniform Resource Identifier, Идентификатор ресурса), URL (Uniform Resource Locator, Местонахождение ресурса), URN (Uniform Resource Name, Имя ресурса) - разные аспекты идентификации одного и того же сервиса, определяющие тип, метод доступа и расположение узла сети, на котором находятся ресурс, доступный через сеть Интернет. Этот сервис состоит из трех частей.

1) Схема. Идентифицирует тип сервиса, через который можно получить доступ к сервису, например WWW-сервер.

2) Адрес. Идентифицирует адрес (хост) ресурса, например, www.ripn.net.

3) Имя или путь доступа. Идентифицирует полный путь к ресурсу на выбранном хосте, который мы хотим использовать для доступа к ресурсу, например, /home/images/image l. gif.

Например, файл readme. txt, расположенный на сайте Microsoft (WWW-сервере), представляет собой ресурс с идентификатором: http://www.microsoft.com/readme. txt. Это означает, что для обращения к ресурсу должен использоваться протокол HTTP, (схема доступа отделена двоеточием ": " и указывает название использованного протокола), следующие два слэша отделяют адрес сервера www.microsoft.com; а также) имя файла /readme. txt.

Как правило, когда имеют в виду компьютер, на котором расположен ресурс, используют значение URL или URN, а когда обозначают ресурс полностью (тип, хост, путь) используют URI. Нет ошибки, если используется одно обозначение вместо другого, но обязательно следует пояснить, что оно значит в контексте.

Идентификатор URI может содержать не только имя ресурса, но и параметры, необходимые для его представления. Имя ресурса отделяется от строки параметров символом "?". Строка параметров состоит из символьных групп с постоянной структурой (лексем), разделяемых символом "&", каждая такая лексема состоит из имени параметра и его значения, разделенных символом "=", символ пробела " " заменяется знаком "+". Символы лексем, не входящие в набор символов ASCII, заменяются знаком "%" и шестнадцатеричным значением этого символа. Для указанного ресурса вся строка параметров является одним строковым параметром, поэтому тип, порядок следования или уникальность имен отдельных параметров строки не существенны. Например: http://www.exe.com/bm/scrshell.run? in=10&go=ok+and+ok&event=l&event=2


Подобные документы

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

    курсовая работа [112,7 K], добавлен 05.01.2017

  • Разработка проекта системы, программы, интерфейса взаимодействия пользователя с системой. Программная база для реализации проекта "Электронная администрация". Создание удобной среды для пользователей системы. Разработка форм входных и выходных данных.

    дипломная работа [3,9 M], добавлен 20.06.2012

  • Особенности процесса взаимодействия пользователя с компьютером. Графический интерфейс ОС Windows, его преимущества и недостатки. Основы простейшего SILK-интерфейса. Основные черты и специфика структуры WIMP-интерфейса. Общепринятые соглашения для меню.

    реферат [26,8 K], добавлен 02.10.2012

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

    контрольная работа [13,9 K], добавлен 10.04.2013

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

    дипломная работа [442,2 K], добавлен 30.11.2016

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

    курсовая работа [2,0 M], добавлен 16.02.2016

  • Согласование способа кодирования электрических сигналов, определение длины сообщений. Программная и аппаратная реализация коммуникационных протоколов. Модель взаимодействия открытых систем ISO/OSI. Уровни взаимодействия интерфейсов. Стек протокола TCP/IP.

    контрольная работа [189,1 K], добавлен 01.05.2015

  • Активные и пассивные устройства физического уровня. Основные схемы взаимодействия устройств. Архитектура физического уровня. Базовая эталонная модель взаимодействия открытых систем. Параметры сред передачи данных. Характеристики сетевых концентраторов.

    курсовая работа [525,8 K], добавлен 02.02.2014

  • Обзор существующих систем управления базы данных. Основные характеристики языка программирования MS VB 2010. Содержание базы данных для хранения информации об успеваемости. Программирование системных модулей программы, содержание интерфейса пользователя.

    курсовая работа [1,1 M], добавлен 22.02.2014

  • Изучение аэродинамики как одной из разделов физики в современном мире. Компьютерное моделирование взаимодействия самолета с окружающей средой. Создание физического движка. Освоение языка программирования C++, графического программного интерфейса OpenGL.

    практическая работа [1,1 M], добавлен 03.05.2015

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.