ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 20.11.2019
Просмотров: 9508
Скачиваний: 184

•
процедурный
-
предполагает
выделение
в
текущей
словоформе
основы
,
которую
затем
идентифицируют
.
После
распознавания
словоформ
осуществляют
синтаксический
анализ
сообщения
,
по
результатам
которого
определяют
его
синтаксическую
структуру
,
т
.
е
.
выполняют
разбор
предложения
.
Далее
выполняют
семантический
анализ
,
т
.
е
.
определяют
смысловые
отношения
между
словоформами
.
При
этом
выявляют
главные
предикаты
,
определяющие
смысл
предложения
.
Таким
образом
,
интерфейс
,
реализующий
фразовую
форму
диалога
,
должен
:
преобразовывать
сообщения
из
естественно
-
языковой
формы
в
форму
внутреннего
представления
и
обратно
,
выполнять
анализ
и
синтез
сообщений
пользователя
и
системы
,
отслеживать
и
запоминать
пройденную
часть
диалога
.
Основными
недостатками
фразовой
формы
при
использовании
подмножества
естественного
языка
являются
:
•
большие
затраты
ресурсов
;
•
отсутствие
гарантии
однозначной
интерпретации
формулировок
;
•
необходимость
ввода
длинных
грамматически
правильных
фраз
.
Основное
достоинство
фразовой
формы
состоит
в
относительно
свободном
общении
с
системой
.
Директивная
форма
предполагает
использование
команд
(
директив
)
специально
разработанного
формального
языка
.
Командой
в
этом
случае
называют
предложение
этого
языка
,
описывающее
комбинированные
данные
,
которые
включают
идентификатор
инициируемого
процесса
и
,
при
необходимости
,
данные
для
него
.
Команду
можно
вводить
:
•
в
виде
строки
текста
,
специально
разработанного
формата
,
например
,
команды
MS DOS,
которые
вводятся
в
командной
строке
;
•
нажатием
некоторой
комбинации
клавиш
клавиатуры
,
например
,
комбинации
«
быстрого
доступа
»
современных
Windows-
приложений
;
•
посредством
манипулирования
мышью
,
например
, «
перетаскиванием
»
пиктограмм
;
•
комбинацией
второго
и
третьего
способов
.
Основными
достоинствами
директивной
формы
являются
:
•
сравнительно
небольшой
объем
вводимой
информации
;
•
гибкость
-
возможности
выбора
операции
в
данном
случае
ограничены
только
набором
допустимых
команд
;
•
ориентация
на
диалог
,
управляемый
пользователем
;
•
использование
минимальной
области
экрана
или
неиспользование
ее
вообще
;
•
возможность
совмещения
с
другими
формами
.
Недостатки
директивной
формы
:
•
практическое
отсутствие
подсказок
на
экране
,
что
требует
запоминания
вводимых
команд
и
их
синтаксиса
;
•
почти
полное
отсутствие
обратной
связи
о
состоянии
инициированных
процессов
;
•
необходимость
навыков
ввода
текстовой
информации
или
манипуляций
мышью
;
•
отсутствие
возможности
настройки
пользователем
.
Исследования
показали
,
что
директивная
форма
удобна
для
пользователя
-
профессионала
,
который
обычно
быстро
запоминает
синтаксис
часто
используемых
команды
или
комбинации
клавиш
.
Основные
достоинства
формы
(
гибкость
и
хорошие
временные
характеристики
)
проявляются
в
этом
случае
особенно
ярко
.
Табличная
форма
предполагает
,
что
пользователь
выбирает
ответ
из
предложенных
программой
.
Язык
диалога
для
табличной
формы
имеет
простейший
синтаксис
и
однозначную
семантику
,
что
достаточно
легко
реализовать
.
Удобна
эта
форма
и
для
пользователя
,
так
как
выбрать
всегда
проще
,
чем
вспомнить
,
что
особенно
существенно
для
пользователя
-
непрофессио
-
нала
или
пользователя
,
редко
использующего
конкретное
программное
обеспечение
.
Однако
применение
табличной
формы
возможно
не
всегда
:
ее
можно
использовать
только
,
если

множество
возможных
ответов
на
конкретный
вопрос
конечно
.
Причем
,
если
количество
возможных
ответов
велико
(
более
20),
то
применение
табличной
формы
может
оказаться
нецелесообразным
.
Достоинствами
табличной
формы
являются
:
•
наличие
подсказки
,
что
уменьшает
нагрузку
на
память
пользователя
,
так
как
данная
форма
ориентирована
не
на
запоминание
,
а
на
узнавание
;
•
сокращение
количества
ошибок
ввода
:
пользователь
не
вводит
информацию
,
а
указывает
на
нее
;
•
сокращение
времени
обучения
пользователя
;
•
возможность
совмещения
с
другими
формами
;
•
в
некоторых
случаях
возможность
настройки
пользователем
.
К
недостаткам
данной
формы
относят
.
•
необходимость
наличия
навыков
навигации
по
экрану
;
•
использование
сравнительно
большой
площади
экрана
для
изображения
визуальных
компонентов
;
•
интенсивное
использование
ресурсов
компьютера
,
связанное
с
необходимостью
постоянного
обновления
информации
на
экране
.
Следует
иметь
в
виду
,
что
типы
и
формы
диалога
выбирают
независимо
друг
от
друга
:
любая
форма
применима
для
обоих
типов
диалогов
(
рис
. 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).
Теперь
необходимо
определить
,
какие
формы
диалога
можно
использовать
для
каждого
шага
диалога
.
Первый
шаг
-
Выбор
задачи
включает
три
варианта
,
поэтому
имеет
смысл
использовать
табличную
форму
.
Второй
шаг
-
Определение
данных
не
конкретизирован
,
следовательно
,
уточнить
его
форму
пока
невозможно
.
Третий
шаг
-
Выбор
алгоритма
опять
же
предполагает
выбор
,
причем
количество
вариантов
невелико
:
целесообразно
использовать
табличную
форму
.
В
остальных
случаях
также
предпочтительной
оказывается
именно
эта
форма
.
Последний
этап
проектирования
интерфейсов
-
разработка
конкретных
операций
ввода
-
вывода
для
каждого
диалога
с
учетом
специфики
формы
интерфейса
.
Рассмотрим
интерфейсные
компоненты
,
которые
могут
быть
использованы
в
современных
пользовательских
интерфейсах
.
8.5.
Основные
компоненты
графических
пользовательских
интерфейсов
Графические
пользовательские
интерфейсы
поддерживаются
операционными
системами
Windows, Apple Macintosh, OS/2
и
т
.
д
.
В
рамках
указанных
операционных
систем
для
таких
интерфейсов
разработаны
наборы
стандартных
компонентов
взаимодействия
с
пользователем
.
Эти
наборы
не
идентичны
,
как
и
основные
приемы
работы
с
интерфейсами
различных
операционных
систем
.
Пользовательские
интерфейсы
большинства
современных
программ
строятся
по
технологии
WIMP: W - Windows (
окна
), I - Icons (
пиктограммы
),
М
- Mouse (
мышь
),
Р
- Pop-up (
всплывающие
или
выпадающие
меню
).
Основными
элементами
графических
интерфейсов
,
таким
образом
,
являются
:
окна
,
пиктограммы
,
компоненты
ввода
-
вывода
и
мышь
,
которую
используют
в
качестве
указующего
устройства
и
устройства
прямого
манипулирования
объектами
на
экране
.
Окна
.
Окно
-
обычно
прямоугольная
,
ограниченная
рамкой
область
физического
экрана
.
Окно
может
менять
размеры
и
местоположение
в
пределах
экрана
.
Все
окна
можно
разделить
на
5
категорий
:
•
основные
окна
(
окна
приложений
);
•
дочерние
или
подчиненные
окна
;
•
окна
диалога
;
•
информационные
окна
;
•
окна
меню
.
Окно
приложения
Windows (
рис
. 8.14)
обычно
содержит
:
рамку
,
ограничивающую
рабочую
область
окна
,
строку
заголовка
с
кнопкой
системного
меню
и
кнопками
выбора
представления