Проектирование диалога с пользователем: текствое представление 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Проектирование диалога с пользователем: текствое представление



Текстовое представление диалога.

1. If <условие> then … - Форма Бекуса-Науэра

2. логические выражения

3. регулярные выражения

Наибольшее распространение – продукционные правила (если, то). Не существует «иначе».

Основной принцип работы продукционных правил – все правила равны между собой, всегда все работают. Если выполняются все части условия, то переходим к действию.

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

1. системы, ориентированные на события

2. системы, ориентированные на состояния

3. смешанные

1. В системах, ориентированных на события и условия, и действия представляют собой множество событий. События делятся на три вида:

А) пользовательские (те, которые сгенерировал пользователь). Такие события обозначают с заглавной буквы.

Б) внутренние события, используются для сохранения состояния диалога. Их имена начинаются со строчных букв. Это некоторые флаги. Хранятся в системе.

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

Пример: рисование ломаной линии.

1 правило:

Выбран_режим_ломанная_линия -> начало_линии, <курсор_линия>

2 правило: Одиночный_щелчок, начало_линии -> продолжение_линии, <резиновая_нить>

3 правило: Одиночный_щелчок, продолжение_линии -> продолжение_линии, <нарисовать_отрезок>

4 правило: Двойной_щелчок, продолжение_линии -> <рисовать_отрезок>, <отключить_резиновую_нить>, <стандартный_курсор>

5 правило: Esc -> <стереть_все>, <стандартный_курсор>, <отключить_резиновую_нить>

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

Плюс таких систем: просто добавить/удалить/изменить функционал (добавить/удалить/изменить правило).

2.Система правил, ориентированных на состояния.

Память представляет собой множество именованных значений (атрибутов). Состояние системы определяется конкретным значением этих атрибутов.

Атрибут – мышь. Значения – не_работает/ выбор_линии/ одиночный_щелчок/ двойной_щелчок.

Атрибут – линия. Значения – начало_линии/продолжение линии/выбор изменен.

Атрибут – резиновая нить. Значение – вкл, выкл.

Атрибут – рисование. Значение – ничего_не_рисуется/рисуется_линия.

Правила:

Мышь=выбор_линии -> мышь=не_работает, линия=начало_линии

Мышь=одиночный_щелчок, линия=начало_линии -> мышь=не_работает, линия=продолжение_линии, резиновая_нить=вкл.

Мышь=одиночный_щелчок, линия=продолжение_линии -> мышь=не_работает, рисование=рисуется_линия

Мышь=двойной_щелчок, линия=продолжение_линии -> мышь=не_работает, резиновая_нить=выкл, рисование=рисуется_линия

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

3.смешанные системы.

Событие: условие -> действие

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

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


 

Распределенные БД

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

Особенности: каждый узел обладает своими собственными СУБД. Может иметь собственные базы данных, локальных пользователей, клиентские станции и т.д.

Узлы работают согласованно. Поэтому пользователь получить доступ к данным на любом узле сети, так как будто они находятся на его собственном узле. При работе с распределенными базами данных могут выполняться транзакции 2 видов: локальные и глобальные. При локальной доступ осуществляется только к тем данным, которые находятся на своем узле. Глобальные – для других узлов.

Пусть имеется отношение (со схемой) r(R). Существует несколько способов хранения такого отношения в распределенной базе:

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

2. фрагментация. Отношение распределяется на основе фрагментации, то есть делится на фрагменты, каждый из которых должен содержать достаточно информации, для восстановления общего отношения. Фрагментация может быть либо горизонтальной (отношение делится на несколько подмножеств, каждый кортеж общего базового отношения принадлежит хотя бы одному фрагменту. Фрагмент определяется как r1θ(r). Восстановление r= Uni=1 ri) и вертикальной (декомпозиция, при которой формируется множество наборов атрибутов таким образом, чтобы общая схема отношения получалась путем объединения этих атрибутов, фрагмент определяется rjRj(r), а общее отношение устанавливается как r=r1 r2 rk

a х b – декартово произведение

a b – натуральное произведение

a b – тетта соединение

3. смешанный.

 



Поделиться:


Последнее изменение этой страницы: 2017-01-19; просмотров: 449; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.138.141.202 (0.008 с.)