Интеллектуальная система автоматизированного проектирования SQL запросов к базам данных

Автор: Пользователь скрыл имя, 26 Мая 2012 в 13:52, курсовая работа

Краткое описание

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

Оглавление

1. Введение.
2. Постановка задачи проекта.
3. Технические требования к разрабатываемой системе.
3.1. Общие требования.
3.2. Требования к программному обеспечению оболочки интеллектуальных систем (ПОБ)
3.3. Структура исходных данных проекта. Цель проекта.
3.4. Правила формирования цели проекта
4. Структура системы управления учебным процессом «Деканат»
5. Теоретические основы реализации поставленной задачи.
5.1. Состав таблиц, полей и связей.
5.2 Пользовательский интерфейс. Структура пользовательского представления знаний
5.3 структура внутреннего представления знаний.
5.4. Технологии проектирования системы
6.Разработка алгоритма вывода решения. Логика управления алгоритмом вывода решения (пополнения знаний)
6.1.Доказательство истинности предлагаемого решения.
6.2 Алгоритм управления проектом
6.3 Алгоритм объяснения полученного решения
7. Алгоритм проектирования пакета SQL запросов реализации поставленной цели.
7.1. Структурная схема системы МИРА
8. Интеллектуальный Интерфейс системы
9. Заключение.
10. Список используемой литературы.
Интеллектуальная система автоматизированного проектирования SQL запросов к базам данных.

Файлы: 1 файл

Курсовая работа № 1 17 02.docx

— 306.98 Кб (Скачать)

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

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

Четвертым отличием этого интерфейса является его способность  запоминать выполненные проекты  и использовать их результаты в других проектах.

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

 

 

Структура БЗ (пользовательское  представление)

Номер элемент

ИД лев. табл

Список полей лев. Табл.

Имя правой табл.

Список полей правой табл.

Предикат

Операн.

Список полей 

Оператор

Метка перехода

ИД Прогр. Обраб.

 

Т1

 

 

 

T1

P1

P2

 

 

P1

P2

T2

P5

P6

        =

JOIN

 

 

 

SELECT

P5

P6

P7

P8

P1

P2

     

 

<Номер элемента списка>:=<сквозной  номер  во все структуры>

<оператор>:=<BREAK>

<ИД программы обработки>:=<ИД  программы форм>

 

Кол-во структурных элементов:

  • Цели, реализуемые системами
  • Структуры выхода запроса
  • Последовательность обработки
  • Правила обработки
  • Структуры входа SQL запросов
  • Структуры условий запроса
  • Дополнительные функции
  • Структура таблиц БД

Структура Выход запроса заполнительной функции

Операция запроса обработки

ИД поля сортировки

Имя табл.

1

ORDER BY

P1

P2

P8

P9

T1

T1

T2

T3

2

GRUPP BY

P1

P8

T1

T2

3

HAVING

   

Структура Выход запроса

Имя поля

Имя табл.

Имя места рез-та

ИД цели (задачи)

СУБД

 

P1

P2

P3

P8

P9

T1

T2

T1

T2

T3

REZ1

Экз.ведомость

FoxPro


 

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

Структура УСЛОВИЕ определяется из пользовательского  интерфейса (вводит сам пользователь).

Система  поиска формирует список возможных  вариантов полей ввода.

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

 

Структура БД

-содержит  функциональные связи таблиц  и условия этих связей во  всей БД

 

Функции обработки  БЗ

    • SELECT – проектирует запросы на поиск строк с заданным условием им без в одной таблице
    • SELECT-JOIN – проектирует раздел вход запроса на соединение двух или нескольких таблиц без предварит. Поиска строк от первой таблицы
    • DOPFUNC –проектирует дополнит. Функции к разделу УСЛОВИЕ (ORDER BY;GRUPP BY;HAVING)
    • SELJOIN – проектирует составляет запрос с предварительным поиском строк из первой таблицы по условиям  соединения рез-та с одной или несколькими таблицами.
    • PROREL – проектирует фрибс  «послед.  Обработки». На основании заданий структуры док-т и исходных табл.БД
    • PROOUT – проектирует фрибс  «структур выход» на основании заданий структуры док-та и структуры SQL-запроса (простой, составной)

 

 

 

 

 

Технология создания и пополнения базы знаний.

  • В предлагаемой системе определено следующее распределение обязанностей среди персонала, задействованного в процессе эксплуатации системы:
  • Пользователь – определяет цели в виде названия проектируемого документа, его структуры, условий на обработку и дополнительных функций по преобразованию документа
  • Проектировщик БЗ – определяет и разрабатывает алгоритмы-функции (процедуры обработки фреймов) фреймы-правила и структуру БД-фрейм.
  • Фреймы 2,3,5,6,7 (Выход, последовательность, вход, УСЛОВИЕ, дополнительные функции) формируются             БЗ с помощью процедур обработки фреймов. Исходные данные для реализации  этапа подготавливает аппарат логического вывода БЗ, использующий алгоритмы  поиска в ширину и глубину.
  • Таким образом, технология создания БЗ можно определить как последовательность шагов обучения, в процессе которых проектирующая и пополняющая разделы фреймов по мере поступления от пользователей все новых и новых целей.

 

 

 

 

 

 

 

 

 

5.3 структура внутреннего  представления знаний.

 

 

              ключ

 Курс, расписание.           Join , группа, группа.

Расписание, студент       Join , группа, группа.

Студент, оценки               Join , № зачетной книжки, № зачетной книжки


 

 

                      



 

 

 

 


 


 

                                                              Результат выполнения запроса

SQL запрос


 





 

 




 

 

 

 

 

 

 

 

Рисунок 5.3. Схема взаимодействия с  системой.

 

 

5.4. Технология проектирования системы

 

 

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

  • невозможность точного (формального) описания процесса управления;
  • значительное количество приложений базы данных (≥ 30);
  • постоянный ввод новых приложений (>5 в год).

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

После отладки прототипа возникает  необходимость коррекций БД и  ПОпо результатам отладки. Этот процесс повторяется каждый раз при вводе очередного ПО. Процесс отладки ПО всей системы будет производится с использованием структурного подхода.  Суть этого подхода заключается в следующем:

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

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

 

 

 

Спиральная модель жизненного цикла информационной системы

 

 

 

 

Преимущества спиральной модели

 

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

Рассмотрим преимущества итерационного  подхода более подробно.

-    Итерационная разработка существенно упрощает внесение изменений в проект при изменении требований заказчика.

 

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

 

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

 

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

 

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

 

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

 

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

 

 

 

 

 

 

 

 

Недостатки спиральной модели

 

Основная проблема спирального  цикла - определение момента перехода на следующий этап. Для ее решения  необходимо ввести временные ограничения  на каждый из этапов жизненного цикла. Иначе процесс разработки может  превратитьсяв бесконечное совершенствование уже сделанного. При итерационном подходе полезно следовать принципу «лучшее - враг хорошего». Поэтому завершение итерации должно производиться строго в соответствии с планом, даже если не вся запланированная работа закончена.

Планирование работ обычно проводится на основе статистических данных, полученных в предыдущих проектах, и личного  опыта разработчиков.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6.  Разработка алгоритма вывода решения. Логика управления алгоритмом  вывода решения (пополнения знаний).

 

Разработка алгоритма  вывода решения.

Представим предложенную структуру  в виде входящих в нее элементов  и определим действия системы  по её анализу.

Анализ необходим для разработки правил принятия решения о структуре  проектируемого запроса.

Цель : = IS1,SP1, IS2,SP2….. ISi,SPi.

Выполняемый анализ дал следующие  результаты:

Правило 1

If  (IS1 UIS2)=R. AND (SP1 ∩ SP2)= to execute uniIn else execute правило 2

Правило 2.

If  (IS1 UNULL )=R. AND (IS2=NULL)= to execute select else execute правило 3

Правило3.

If  (IS1 UIS2)=R1. AND (SP1 ∩ SP2)=0 to execute join IS3 ≠ NULL to execute правило 4

Правило4.

If  (IS2UIS3)=R2. AND: (SP2 U SP3)=0 to execute join  else execute правило 5

Правило5.

If  (IS1 UIS2)=R. AND (SP2 U SP1)=0 to execute join else execute  выводсообщенияпользователя – «Уточнитеструктуруцели»

Правило6. 

‹Идентификатор  цели› execute  Э ‹фрейм целей› elseexecute   переход и обработка фрейма типовое решение вывод сообщения «база знаний не содержит сведений о заданной цели. Вам необходимо  задать структуру цели.»

 

 

Логика управления алгоритмом  вывода решения (пополнения знаний).

 

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

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