Файл: Иванова Г.С. Технология программирования.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 20.11.2019

Просмотров: 9508

Скачиваний: 184

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

• 

процедурный

 - 

предполагает

выделение

в

текущей

словоформе

основы

которую

затем

идентифицируют

После

распознавания

словоформ

осуществляют

синтаксический

анализ

сообщения

по

результатам

которого

определяют

его

синтаксическую

структуру

т

е

выполняют

разбор

предложения

Далее

выполняют

семантический

анализ

т

е

определяют

смысловые

отношения

между

словоформами

При

этом

выявляют

главные

предикаты

определяющие

смысл

предложения

Таким

образом

интерфейс

реализующий

фразовую

форму

диалога

должен

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

сообщения

из

естественно

-

языковой

формы

в

форму

внутреннего

представления

и

обратно

выполнять

анализ

и

синтез

сообщений

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

и

системы

отслеживать

и

запоминать

пройденную

часть

диалога

Основными

недостатками

фразовой

формы

при

использовании

подмножества

естественного

языка

являются

большие

затраты

ресурсов

отсутствие

гарантии

однозначной

интерпретации

формулировок

• 

необходимость

ввода

длинных

грамматически

правильных

фраз

Основное

достоинство

фразовой

формы

состоит

в

относительно

свободном

общении

с

системой

Директивная

форма

предполагает

использование

команд

  (

директив

специально

разработанного

формального

языка

Командой

в

этом

случае

называют

предложение

этого

языка

описывающее

комбинированные

данные

которые

включают

идентификатор

инициируемого

процесса

и

при

необходимости

данные

для

него

Команду

можно

вводить

в

виде

строки

текста

специально

разработанного

формата

например

команды

 MS DOS, 

которые

вводятся

в

командной

строке

нажатием

некоторой

комбинации

клавиш

клавиатуры

например

комбинации

  «

быстрого

доступа

» 

современных

 Windows-

приложений

посредством

манипулирования

мышью

например

, «

перетаскиванием

» 

пиктограмм

комбинацией

второго

и

третьего

способов

Основными

достоинствами

директивной

формы

являются

сравнительно

небольшой

объем

вводимой

информации

гибкость

 - 

возможности

выбора

операции

в

данном

случае

ограничены

только

набором

допустимых

команд

ориентация

на

диалог

управляемый

пользователем

использование

минимальной

области

экрана

или

неиспользование

ее

вообще

возможность

совмещения

с

другими

формами

Недостатки

директивной

формы

практическое

отсутствие

подсказок

на

экране

что

требует

запоминания

вводимых

команд

и

их

синтаксиса

почти

полное

отсутствие

обратной

связи

о

состоянии

инициированных

процессов

необходимость

навыков

ввода

текстовой

информации

или

манипуляций

мышью

;  

отсутствие

возможности

настройки

пользователем

Исследования

показали

что

директивная

форма

удобна

для

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

-

профессионала

который

обычно

быстро

запоминает

синтаксис

часто

используемых

команды

или

комбинации

клавиш

Основные

достоинства

формы

  (

гибкость

и

хорошие

временные

характеристики

проявляются

в

этом

случае

особенно

ярко

Табличная

форма

предполагает

что

пользователь

выбирает

ответ

из

предложенных

программой

Язык

диалога

для

табличной

формы

имеет

простейший

синтаксис

и

однозначную

семантику

что

достаточно

легко

реализовать

Удобна

эта

форма

и

для

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

так

как

выбрать

всегда

проще

чем

вспомнить

что

особенно

существенно

для

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

-

непрофессио

-

нала

или

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

редко

использующего

конкретное

программное

обеспечение

Однако

применение

табличной

формы

возможно

не

всегда

ее

можно

использовать

только

если


background image

множество

возможных

ответов

на

конкретный

вопрос

конечно

Причем

если

количество

возможных

ответов

велико

  (

более

 20), 

то

применение

табличной

формы

может

оказаться

нецелесообразным

Достоинствами

табличной

формы

являются

наличие

подсказки

что

уменьшает

нагрузку

на

память

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

так

как

данная

форма

ориентирована

не

на

запоминание

а

на

узнавание

сокращение

количества

ошибок

ввода

пользователь

не

вводит

информацию

а

указывает

на

нее

сокращение

времени

обучения

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

возможность

совмещения

с

другими

формами

в

некоторых

случаях

возможность

настройки

пользователем

К

недостаткам

данной

формы

относят

необходимость

наличия

навыков

навигации

по

экрану

• 

использование

сравнительно

большой

площади

экрана

для

изображения

визуальных

компонентов

   • 

интенсивное

использование

ресурсов

компьютера

связанное

с

необходимостью

постоянного

обновления

информации

на

экране

Следует

иметь

в

виду

что

типы

и

формы

диалога

выбирают

независимо

друг

от

друга

любая

форма

применима

для

обоих

типов

диалогов

 (

рис

. 8.10).  

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Однако

фразовая

форма

которая

используется

в

диалоге

управляемом

пользователем

как

правило

предполагает

более

сложные

синтаксис

и

семантику

языка

диалога

так

как

программа

должна

 «

понимать

» 

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

Сложное

программное

обеспечение

обычно

взаимодействует

с

пользователем

посредством

диалогов

различных

типов

и

форм

в

зависимости

от

решаемых

задач

Причем

помимо

диалогов

происходящих

в

процессе

нормальной

работы

программного

обеспечения

и

называемых

синхронными

предусматривают

диалоги

возникающие

по

инициативе

системы

или

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

при

нарушении

сценария

нормального

процесса

Такие

диалоги

называют

асинхронными

Обычно

их

используют

для

выдачи

экстренных

сообщений

от

системы

или

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

Разработка

диалогов

.

Процесс

проектирования

и

реализации

диалогов

можно

разделить

на

следующие

стадии

определение

множества

необходимых

диалогов

их

основных

сообщений

и

возможных

сценариев

 — 

проектирование

абстрактных

диалогов

определение

типа

и

формы

каждого

диалога

а

также

синтаксиса

и

семантики

используемых

языков

 - 

проектирование

конкретных

диалогов


background image

выбор

основных

и

дополнительных

устройств

и

проектирование

процессов

ввода

-

вывода

для

каждого

диалога

а

также

уточнение

передаваемых

сообщений

 - 

проектирование

технических

диалогов

В

основу

абстрактных

диалогов

должна

закладываться

идеология

технологического

процесса

для

автоматизации

которого

предназначается

программный

продукт

Именно

анализируя

составляющие

автоматизируемого

технологического

процесса

разработчик

определяет

сценарии

диалогов

 (

см

. § 6.2), 

которые

должны

быть

предусмотрены

в

программном

обеспечении

Кроме

сценариев

при

проектировании

абстрактных

диалогов

используют

диаграммы

состояний

интерфейса

или

графы

диалога

Граф

диалога

 — 

ориентированный

взвешенный

граф

каждой

вершине

которого

сопоставлена

конкретная

картинка

на

экране

  (

кадр

или

определенное

состояние

диалога

характеризующееся

набором

доступных

пользователю

действий

Дуги

исходящие

из

вершин

показывают

возможные

изменения

состояний

при

выполнении

пользователем

указанных

действий

В

качестве

весов

дуг

указывают

условия

переходов

из

состояния

в

состояние

и

операции

выполняемые

во

время

перехода

Таким

образом

каждый

маршрут

на

графе

соответствует

возможному

варианту

диалога

Причем

представление

диалога

в

виде

графа

в

зависимости

от

стадии

разработки

может

выполняться

с

разной

степенью

детализации

По

сути

граф

диалога

 - 

это

граф

состоянии

конечного

автомата

моделирующего

поведение

программного

обеспечения

при

воздействиях

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

Для

представления

таких

графов

уже

были

введены

две

нотации

нотация

диаграмм

состояний

структурного

подхода

к

разработке

 (

см

рис

. 4.3) 

и

нотация

диаграмм

состояний

 UML 

(

см

рис

. 7.17). 

Причем

нотация

 UML 

является

более

мошной

так

как

позволяет

использовать

обобщенные

состояния

Поэтому

чтобы

не

вводить

новую

нотацию

для

представления

графа

ди

-

алога

будем

использовать

обозначения

 UML. 

Пример

 8.2.

Разработать

граф

диалога

для

системы

решения

комбинаторно

-

оптимизационных

задач

Так

как

диалог

на

верхнем

уровне

должен

обеспечивать

реализацию

диаграммы

вариантов

использования

исходный

вариант

графа

диалога

строим

на

основе

анализа

этой

диаграммы

  (

см

рис

. 6.4). 

Можно

предположить

что

пользователь

будет

принимать

решение

о

сохранении

или

удалении

результатов

после

их

просмотра

поэтому

эти

операции

естественно

объединить

в

единую

группу

Кроме

того

в

ту

же

группу

целесообразно

добавить

операцию

печати

результатов

Аналогично

просмотр

данных

целесообразно

объединить

с

их

удалением

или

корректировкой

Операцию

Новое

задание

целесообразно

поместить

в

отдельную

группу

 (

рис

. 8.11). 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 


background image

На

верхнем

уровне

диалог

очевидно

должен

управляться

пользователем

Директивная

и

табличная

формы

могут

использоваться

альтернативно

по

желанию

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

а

применение

фразовой

формы

нецелесообразно

Пример

 8.3.

Детализировать

диалог

Новое

задание

В

 § 6.2 

приведен

сценарий

Выполнения

задания

на

базе

которого

можно

предложить

граф

диалога

управляемого

системой

 (

рис

. 8.12, 

а

). 

Однако

этот

же

диалог

можно

представить

и

в

виде

диалога

управляемого

пользователем

 (

рис

. 8.12, 

б

). 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Анализ

графов

диалога

показывает

что

диалог

управляемый

системой

в

данном

случае

сильно

ограничивает

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

в

выборе

вариантов

действия

а

диалог

управляемый

пользователем

предполагает

выбор

действия

после

каждого

шага

хотя

по

смыслу

эти

шаги

чаще

всего

будут

выполняться

последовательно

Поэтому

для

реализации

лучше

использовать

комбинированный

вариант

который

учитывает

наличие

сценария

но

допускает

отклонения

от

него

по

желанию

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

 (

рис

. 8.13). 

Теперь

необходимо

определить

какие

формы

диалога

можно

использовать

для

каждого

шага

диалога

Первый

шаг

 - 

Выбор

задачи

включает

три

варианта

поэтому

имеет

смысл

использовать

табличную

форму

Второй

шаг

 - 

Определение

данных

не

конкретизирован

следовательно

уточнить

его

форму

пока

невозможно

Третий

шаг

 - 

Выбор

алгоритма

опять

же

предполагает

выбор

причем

количество

вариантов

невелико

целесообразно

использовать

табличную

форму

В

остальных

случаях

также

предпочтительной

оказывается

именно

эта

форма

Последний

этап

проектирования

интерфейсов

 - 

разработка

конкретных

операций

ввода

-

вывода

для

каждого

диалога

с

учетом

специфики

формы

интерфейса

Рассмотрим

интерфейсные

компоненты

которые

могут

быть

использованы

в

современных

пользовательских

интерфейсах


background image

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 
 

8.5. 

Основные

компоненты

графических

пользовательских

интерфейсов

Графические

пользовательские

интерфейсы

поддерживаются

операционными

системами

Windows, Apple Macintosh, OS/2 

и

т

д

В

рамках

указанных

операционных

систем

для

таких

интерфейсов

разработаны

наборы

стандартных

компонентов

взаимодействия

с

пользователем

Эти

наборы

не

идентичны

как

и

основные

приемы

работы

с

интерфейсами

различных

операционных

систем

Пользовательские

интерфейсы

большинства

современных

программ

строятся

по

технологии

WIMP: W - Windows (

окна

), I - Icons (

пиктограммы

), 

М

 - Mouse (

мышь

), 

Р

 - Pop-up (

всплывающие

или

выпадающие

меню

). 

Основными

элементами

графических

интерфейсов

таким

образом

являются

окна

пиктограммы

компоненты

ввода

-

вывода

и

мышь

которую

используют

в

качестве

указующего

устройства

и

устройства

прямого

манипулирования

объектами

на

экране

Окна

.

Окно

обычно

прямоугольная

ограниченная

рамкой

область

физического

экрана

Окно

может

менять

размеры

и

местоположение

в

пределах

экрана

Все

окна

можно

разделить

на

 5 

категорий

основные

окна

 (

окна

приложений

); 

       • 

дочерние

или

подчиненные

окна

окна

диалога

информационные

окна

окна

меню

Окно

приложения

 Windows (

рис

. 8.14) 

обычно

содержит

рамку

ограничивающую

рабочую

область

окна

строку

заголовка

с

кнопкой

системного

меню

и

кнопками

выбора

представления