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

кандидата технических наук
Белых, Александр Валерьевич
город
Ростов-на-Дону
год
2010
специальность ВАК РФ
05.13.12
Диссертация по информатике, вычислительной технике и управлению на тему «Визуальный метод разработки объектно-ориентированных баз данных для систем автоматизированного проектирования»

Автореферат диссертации по теме "Визуальный метод разработки объектно-ориентированных баз данных для систем автоматизированного проектирования"

БЕЛЫХ Александр Валерьевич

ВИЗУАЛЬНЫЙ МЕТОД РАЗРАБОТКИ ОБЪЕКТНО-ОРИЕНТИРОВАННЫХ БАЗ ДАННЫХ ДЛЯ СИСТЕМ АВТОМАТИЗИРОВАННОГО ПРОЕКТИРОВАНИЯ

Специальность 05.13.12 — Системы автоматизации проектирования (вычислительная техника и информатика)

АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата технических наук

2 5 КОЯ 2010

Ростов-на-Дону 2010

004613555

Работа выполнена

в государственном образовательном учреждении высшего профессионального образования «Ростовский государственный университет путей сообщения» (РГУПС)

доктор технических наук, профессор Ковалев Сергей Михайлович

доктор технических наук, профессор Лебедев Борис Константинович (ТТИ ЮФУ, г. Таганрог)

кандидат технических наук, доцент Тарасов Валерий Борисович (МГТУ им. Н.Э.Баумана, г. Москва)

ФГНУ НИИ "Спецвузавтоматика", г. Ростов-на-Дону.

Защита состоится «9» декабря 2010 г. в 14 ч. 20 мин. на заседании Диссертационного совета Д212.208.22 Южного федерального университета по адресу: г. Таганрог, пер. Некрасовский, 44, ауд. Д-406.

С диссертацией можно ознакомиться в зональной научной библиотеке ЮФУ по адресу: г. Ростов-на-Дону, ул. Пушкинская, 148.

Автореферат разослан «|» ноября 2010 года.

Просим Вас прислать отзыв на автореферат, заверенный гербовой печатью учреждения, по адресу: 347928, Ростовская область, г. Таганрог, пер. Некрасовский 44, диссертационный совет Д212.208.22.

Научный руководитель: Официальные оппопенты:

Ведущая организация:

Ученый секретарь

диссертационного совета Д212.208.22 доктор технических наук, профессор

А.Н. Целых

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

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

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

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

позволили бы сделать ООБД общедоступными и вывели бы их на новый этап развития.

Выполненные исследования опираются на результаты работ в области проектирования и нормализации объектно-ориентированных баз данных и САПР отечественных ученых В.М. Курейчика, Б.К. Лебедева, В.В. Курейчика, С.Д. Кузнецова, A.B. Замулина, М.Н. Гринева, а так же зарубежных ученых E.F. Codd, G. Jaeschke, H.J. Schek, M. Berler, J. Eastman, С. Russell, Т. Stanienda, Т. Kvatrani, Z. Meral Ozsoyoglu, L.Y. Yuan, M.A. Roth, H.F. Korth, T.W. Ling, L.L. Yan, V.M. Markowitz, J. Rumbaugh, M. Blaha, W. Premerlani, F. Eddy, W. Lorensen, Z. Tari, J. Stokes, S. Spaccapietra, W. Ambler, A. Formica, H.D. Groger, M. Missikoff, S. Ghosh, Т. Dinh-Trong и др.

Объектом исследования в работе являются методы проектирования алгоритмического, программного и информационного обеспечения объектно-ориентированных САПР.

Предмет исследования составляют методы проектирования интерпритационно пригодных схем информационных баз данных в специализированных САПР.

Цель диссертационной работы заключается в разработке формализованного метода проектирования интерпретационно пригодной схемы объектно-ориентированной базы данных для САПР.

Для достижения указанной цели необходимо решить следующие задачи:

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

2) формализованное описание новой объектно-ориентированной (00) N-модели данных для объектно-ориентированных баз данных;

3) разработка нового декларативного языка для проектирования и администрирования схем объектно-ориентированных баз данных для САПР на основе объектно-ориентированной N-модели данных;

4) разработка нового визуального языка проектирования для визуализации схем объектно-ориентированных баз данных для САПР на основе объектно-ориентированной N-модели данных;

5) разработка новых алгоритмов и правил нормализации схемы объектно-ориентированной базы данных для САПР, использующих математический аппарат, визуальный и декларативный языки объектно-ориентированной N-модели данных.

Решение поставленных задач позволит повысить восприятие и сократить избыточность схемы объектно-ориентированной базы данных, а так же удовлетворить тенденции развития методов проектирования ООБД для САПР.

Методы исследования. Основные результаты диссертационной работы получены и математически обоснованы с использованием аппарата

теории множеств, теории графов, теории языков программирования и оптимизации на сетях и графах.

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

Научная новизна работы заключается в следующем:

1) разработано формальное описание грамматики нового декларативного языка программирования и администрирования объектно-ориентированной базы данных для САПР, обладающего вычислительной полнотой и основанного на формализованной объектно-ориентированной N-модели данных;

2) разработан новый визуальный язык проектирования схем объектно-ориентированных баз данных, отличающийся малым количеством языковых конструкций и позволяющий строить интерпретационно пригодные схемы объектно-ориентированных баз данных для САПР на основе объектно-ориентированной N-модели данных.

3) разработаны новые правила и алгоритм нормализации схемы объектно-ориентированной базы данных, отличающийся простотой и позволяющий строить схемы для САПР и сокращать их избыточность, используя математический аппарат, а так же визуальный и декларативный языки объектно-ориентированной N-модели данных.

Практическая ценность работы заключается в применении результатов исследования для построения среды визуального проектирования схемы ООБД для САПР - Information Systems Developer Studio (ISDS). Использование результатов исследования позволило повысить восприятие схемы ООБД для САПР, сократило её избыточность и время разработки за счет применения нового метода проектирования и визуально-декларативного языка, основанных на формализованной объектно-ориентированной N-модели данных. Также результаты исследования снизили затраты и повысили уровень взаимодействия между аналитиками и специалистами в предметной области. Все это упростило процесс проектирования ООБД для САПР и снизило на него затраты.

Реализация результатов. Практические результаты диссертационной работы внедрены в Северо-Кавказском филиале ОАО «Федеральная пассажирская компания» (г.Ростов-на-Дону) и в Ростовском ИВЦ структурном подразделении Главного вычислительного центра -филиала ОАО «РЖД» (г. Ростов-на-Дону).

Апробация работы. Основные положения и результаты диссертации докладывались и обсуждались на Молодежной научно-технической конференции «Интеллектуальные системы - 2010» и на XI Всероссийском симпозиуме по прикладной и промышленной математике (секция Информационные технологии и задачи связи).

Публикации. Основные результаты диссертационной работы опубликованы в 8 печатных работах, из них 7 работ в изданиях, входящих в «Перечень ведущих научных журналов и изданий, выпускаемых в Российской федерации», утвержденный ВАК.

Структура и объем работы. Диссертационная работа состоит из введения, четырех тематических глав, заключения, списка литературы и приложения. Общий объем основного текста - 165 страниц, включая 41 рисунок. Список литературы изложен на 10 страницах и содержит 104 наименований.

СОДЕРЖАНИЕ РАБОТЫ

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

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

Впервые ООБД упоминались в публикациях в середине 1980-х. Их возникновение определяется, прежде всего, потребностями САПР: необходимостью разработки сложных структур данных, для которых технология предшествующих систем БД не была вполне удовлетворительной. В настоящее время можно отметить только положительные тенденции в исследовательской деятельности ученых, занимающихся ООБД и компаний производящих объектно-ориентированные системы управления базами данных (ООСУБД). Однако, несмотря на то что, сегодня имеется множество публикаций и работ по данной тематике, конкретных общепризнанных и формализованных моделей, средств и методов проектирования до сих пор не существует, есть только стандарты, которые можно назвать рекомендациями (например, ООМв 3.0). Именно поэтому ООБД не получили такого широкого распространения как реляционные БД, с их формализованной моделью данных. Что касается языков программирования и проектирования ООБД, то они, так же как и модели данных, представлены в широком ассортименте, но каждый из представленных языков обладает своими уникальными возможностями и недостатками и не является всеобщим стандартом. Несмотря на это они придерживаются определенных критериев, чтобы называться объектно-ориентированным.

Ситуация, которую мы наблюдаем сегодня, не сильно изменилась с 80-х годов, когда ситуация с реализациями ООСУБД была аналогична ситуации с реляционными СУБД в середине семидесятых годов. Тогда в случае реляционных систем, хотя и имелись разногласия по некоторым конкретным вопросам, таким как форма языка запросов, или должны ли

6

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

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

Очевидно, что для решения вышеописанных проблем требуется применение новых методик и инструментов проектирования, так как для ООБД, обладающих более богатыми структурными возможностями по сравнению с реляционной моделью, требуется иной метод сокращения избыточности данных или другими словами метод нормализации схемы. Один из таких методов нормализации схемы объектно-ориентированной модели данных подробно рассматривается в работе Z. Tari, J. Stokes, и S. Spaccapietra «Object normal forms and dependency constraints for object-oriented schemata», материалы которой используются во многих научных статьях. Так же существуют и другие взгляды на проблему нормализации ООБД, но этот метод, является наиболее четким и полностью формализованным.

Рассмотрим основные достоинства указанного метода:

— для создания сложных объектов используются обширные абстрактные модели данных, а именно объектно-ориентированные модели данных;

— расширение функциональных и многозначных зависимостей ограничений обеспечивает поддержку записи сложной объектно-ориентированной схемы: маршрутных зависимостей {path dependencies), локальных зависимостей (local dependencies) и глобальных зависимостей (global dependencies). Такие зависимости позволяют отобразить объектные связи на различных уровнях детализации;

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

Однако, рассматриваемый метод нормализации имеет и ряд недостатков:

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

— не рассматриваются нормализация и вопросы, связанные с построением дерева наследования классов;

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

В силу актуальности задачи формального описания метода проектирования или другими словами алгоритма нормализации ООБД, который бы учитывал недостатки вышеописанного метода, принято решение о разработки формализованного метода проектирования интерпретационно пригодной схемы ООБД для САПР. Новый метод должен основываться на формализованной 00 модели данных и использовать декларативный и визуальный языки. В качестве базового инструмента предложено разработать среду визуального проектирования для создания и развития корректных схем ООБД для САПР.

Во второй главе вводится формальное описание объектно-ориентированной N-модель данных, которая позволяет создавать сложные структуры, соответствующие объектам реального мира, производить их динамическое изменение и описывать бизнес-логику процессов происходящих в САПР. Так же вводится формальное описание грамматики декларативного языка программирования N-Declarative language для создания структур этой модели, манипулирования данными и администрирования системы.

N-модель данных имеет счетное множество образов l={ii,i2,...,inj. Объектное пространство 0={oi,o2,...,Ot} состоит из объектов, каждый из которых представляет собой некоторое множество образов: О сВ(1).

Экстенсионалом объекта Exti в модели данных называется множество объектов, каждый из которых является неким его подмножеством: Ext, - {о / ocoj. Интенсионалом объекта Int, называется множество объектов, для которых он является подмножеством: Int; = {о / о,ао}.

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

Атрибут - это функция, определенная на множестве объектов. Аналитические свойства объектов определяются через свойства образов, которые являются функциями а'е A', A'cI-*B(S,). Собственно свойства объектов представлены множеством функций aeA, AcO->B(Sv) таких,

а(о) = (ja'0'у), где {io,ii,...,ij=o, neN. Элемент aeA называется

J-О

атрибутивной функцией или атрибутом, а множество Sv— это в общем случае некоторое пространство значений.

Объект называется терминальным © на атрибуте, если все его образы имеют одинаковое значение функции а\ соответствующей

данному атрибуту, и, кроме того, атрибут информативен на объекте: а ®о <=> а(о)Ф- X, Vieo a'(i)=a(o).

Через 7) обозначается множество исходных атрибутов, на которых объект о, терминален: Т(= {а/а в о,}.

Утверждение 1. Если объект о, является подмножеством объекта о,, то множество Tj является подмножеством Tt. Иначе говоря, при возрастании мощности объекта, множество атрибутов, на которых он терминален, не увеличивается: o,<ro=> TjcrT.

Экземпляром называется такой объект о„ для которого множество Г, не пусто. Множество экземпляров обозначим через Inst, тогда Inst = {ot / Г,

Ф0}.

Объект о,- является концепт-объектом, если ни один исходный атрибут на нем не терминален: Т] =0.

Класс - это концепт-объект, состоящий из экземпляров, у которых множества Т содержат одинаковые атрибуты. Множество классов обозначим символом К, тогда К = (к / к = Qa, Voj Ti 3Т ¿где Т -

ы\

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

Утверждение 2. Два различных экземпляра одного класса имеют различные значения хотя бы одного исходного атрибута, терминального на них: 0j,02elnsti =>ЗаеТ,, что а(о!)фа(о

Утверждение 3. Различные экземпляры одного класса не пересекаются: oi,o2elnsti => oino2=0.

Утверждение 4. Класс k является подмножеством класса kj, если множество терминальных на экземплярах класса kj функций 7} является собственным подмножеством множества функций Т,- класса к,: TjcTi kj с kj.

Утверждение 5. Если множество атрибутов Tj, терминальных на экземплярах класса kj, является собственным подмножеством множества атрибутов Tt класса к„ то каждый экземпляр класса kj входит в экстенсионал точно одного экземпляра класса kj\ TjcTj => Voie Insti 3o2 elnstj, что Oico2, и —¡Эо3 elnstj, что OiCo3.

Так же в N-модели данных вводятся отношения наследования в и прямого наследования ф. Сформулируем прямое наследование так: если класс kj прямо наследует от класса kj, то он наследует от kj, и не существует такого класса кк, который наследует от kj и от которого наследует к,: kt ф kj <=> kt 6kj, -пЗкь что в кк и кц в kj. Так же вводится определение отношения наследования на множестве экземпляров. Экземпляр oj класса kt наследует от экземпляра о2 класса kj тогда и только тогда, когда ki наследует от kj, и О/ является подмножеством о2: h 9 kj, o/elnsti, o2elnstj, о ¡с о2 <=> ojO о2.

Прямое наследование на экземплярах определяется так: к,фк^ Oj elnst^ o2eInstj, oico2ooi6o2.

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

Cifkb U=M= ajcomp-op a J -о c/=(jgy. Vojelnsth Voj arfoj) comp-op a2(Oj)=true.

»

Если условие содержит логические связки, то имеются следующие соответствия: сДь UiOR UJ-ci[kh U,]uc2[kh U2], c,[kh UiAND UJ=Ci[kh U,]nc2[kh Щ, Ci[kh NOT U,]=h/c,[kb U,].

Категория c( наследует от другой категории Cj тогда и только тогда, когда условие первой категории включает в себя условие второй категории: U,- = Ц AND 1Г <=> с, в Cj, где СГ непустое логическое условие, определенное в соответствии с вышеописанными правилами.

С каждым классом можно связать категорию, условие которой истинно на всех экземплярах этого класса. Категория с,- прямо наследует от класса с* тогда и только тогда, она прямо наследует от его категории с с, фкк<=> с,- ф с\. На категории так же может быть определено некоторое множество расчетных атрибутов Т. Атрибуты, определенные на категориях, могут перекрывать атрибуты класса или других категорий этого класса. Под перекрытием атрибута понимается то, что значение этого атрибута в экземплярах некоторых категорий может быть получено способом, отличающимся от того, который принят для других экземпляров. При перекрытии выполняются следующие правила:

Правило 1. Допустим, что на некотором концепт-объекте о определен атрибут а. Атрибут а правильно перекрыт, если определен в наследующей от о категории с тем же именем, что и в о, но с другой формулой.

Правило 2. При перекрытии тип данных атрибута должен сохраняться.

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

После описания основных понятий и правил N-модели данных выводится понятие схемы базы данных как n-ка D-<K, С, ф, А, Д D>, где К — множество классов; С - множество категорий; ф- отношение прямого наследования; А - множество информативных атрибутов; 3- множество типов данных; D — множество имен.

Каждый класс определяется тройкой <t], Т, Т'>, где rje В -имя класса в схеме; Т - множество исходных атрибутов, определенных на классе; 7" - множество расчетных атрибутов, определенных на классе (Т, ГсА).

Каждая категория определяется тройкой <т], Ц 7">, где r\e D -имя категории в схеме; U — условие категории; Т' - множество расчетных атрибутов, определенных на категории (Т*сЛ).

Таким образом, база данных это двойка <Ц Inst>, где D - схема БД, a Inst - множество экземпляров классов из этой схемы.

N-модель данных в полной мере соответствует налагаемым на ООБД требованиям стандарта ODMG 3.0. Имеется ввиду наличие в N-модели данных сложных объектов, идентифицируемости объектов, инкапсуляции, классов, механизмов наследования, перекрытия и расширяемости.

Для полного раскрытия потенциала N-модели данных и как основа метода проектирования ООБД, был разработан язык программирования N-Declarative Language (NDL), который позволяет не только описывать структуры модели данных и управлять ими, но и производить операции над данными, хранящимися в них и администрировать систему.

Рассмотрим базовые понятия, используемые при построении языков.

Алфавит - это счетное множество допустимых символов языка. Будем обозначать это множество символом V.

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

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

алфавитом V без Л как V+, а множество всех цепочек над алфавитом V, включая Л символом У*.

Языком L над алфавитом V : L(V) называется некоторое счетное подмножество цепочек конечной длины из множества всех цепочек над алфавитом V. Тогда, грамматика G — это описание способа построения предложений некоторого языка. Язык, заданный грамматикой G, обозначается как L(G).

Таким образом, формально грамматика языка NDL(G) определяется как четверка G <VT,VN,P,S>, где:

VT — множество терминальных символов;

VN —множество нетерминальных символов: Vl(r\VT = 0;

Р — множество правил грамматики вида а-> р, где aeV*,fieV';

S — целевой (начальный) символ грамматики S е VN.

Грамматика языка NDL описывается на синтаксическом метаязыке Extended BNF, который является Международным стандартом (ISO/IEC 14977:1996). Множество VT представляется в первой части грамматики, затем рассматривается множество VN, далее представляется синтаксис

языка NDL. В качестве начального символа S грамматики NDL(G) выступает символ «оператор». Правило связанное с этим начальным символом имеет следующий вид:

оператор = создание базы данных | создание домена | изменение домена | удаление домена | создание класса | изменение класса | удаление класса | создание категории | изменение категории | удаление категории | создание объекта | изменение объекта | удаление объекта | выборка | создание индекса | изменение индекса | удаление индекса j создание пользователя | изменение прав пользователя | удаление пользователя ;

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

К операторам определения данных относятся оператор создания базы данных (CREATE DATABASE), операторы работы с доменом (CREATE DOMAIN, ALTER DOMAIN, DROP DOMAIN), операторы работы с классом (CREATE CLASS, ALTER CLASS, DROP CLASS) и операторы работы с категорией (CREATE CATEGORY, ALTER CATEGORY, DROP CATEGORY).

К операторам манипулирования данных относятся оператор создания объекта (INSERT), изменения объекта (UPDATE) и удаления объекта (DELETE).

К операторам администрирования относятся операторы работы с индексами (CREATE INDEX, ALTER INDEX, DROP INDEX) и операторы управления правами пользователей (CRATE USER, ALTER GRAND USER, DROP USER).

Разработанный язык NDL позволил заложить фундаментальное начало, требующееся для создания метода и инструментального средства проектирования ООБД для САПР, а так же позволил в удобной форме раскрыть основные возможности объектно-ориентированной N-модели данных.

В третьей главе предлагается визуальный язык проектирования - N-Visual language (NVL), который позволяет визуально описывать структуры ООБД для САПР на основе N-модели данных. Так же вводится формальное описание алгоритма нормализации, позволяющего строить схему ООБД для САПР на этом визуальном языке, сокращая её избыточностью.

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

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

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

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

В NVL класс представлен прямоугольником, состоящим из четырех горизонтальных секций (Рисунок 1). В верхней секции записывается уникальное имя класса и, через двоеточие, его тип: Concept, Abstract, Entity или State. Тип класса характеризует природу его экземпляров (понятие, абстракция, предмет или состояние).

Имя класса: Тип класса

имя атрибута тип атрибута имя атрибута тип атрибута

имя атрибута тип атрибута кия атрибут?* формула имя атрибуту формула

имя атрибута- формула спецификация метода спецификация метода

спецификация метода

Сборочная Единица: Entity

Код: char(24) Название: varchar(32) Вес: Integer

Габаритные размеры: varchar(10) Описание: varchar(64) Собственна« Цена: Сигтепсу Заказ: Integer

Поставщик: Ехд(Поставщик) План в БитСПотрсбносгь)

а) б)

Рисунок 1 — Классы в NVL. а) спецификация класса; б) пример класса

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

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

определяющее категорию. Третья и четвертая секции такие же как в классе.

Имя категории

Условие категории

имя атрибута= формула имя атрибута3 формула

имя атрибута- формула спецификация метода спецификация метода

спецификация метода

Производимая сборочная единица Поставщик \s Null

Собственная Цен а=5ит(Стоим ость материала)+$шп(Стоимость работы)

Деталь N

Части is Null

Стоимость = Собственная Цена

а) б)

Рисунок 2 — Категории в ЫУЬ. а) спецификация категории; б) примеры категории

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

г) 6) В)

Рисунок 3 — Отношения в а) наследование; б) связь; в) исключение

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

14

плановую потребность на каждую сборочную единицу и ее стоимость с учетом стоимости составных частей. Решение этой задачи на языке ИУЬ

Рисунок 4 — Схема ООБД для САПР в приборостроении на ЫУЬ

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

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

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

Обозначим множество классов символом С={с1,с2... с/}, где с1,с2... с; - отдельные классы.

Под терминальным множеством класса с будем подразумевать множество терминальных атрибутов класса с, которое обозначим как Т~{а1,а2...т}, где а1,а2...а1 - терминальные атрибуты класса с.

Под разностью классов или терминальных множеств, обозначим символом «\», будем подразумевать разность соответствующих множеств.

Правило 1: Если в классе с есть функциональные зависимости между его терминальными атрибутами, то атрибуты в них участвующие выделяются в общий новый класс, например cnew={a,b), а класс с становится равным c\cnew. Другими словами если есть функциональные зависимости вида а -> b , где a, b е Т , Т терминальное множество класса с, то атрибуты в них участвующие выделяются в новый класс, например cnew={a,b}, a c~c\cnew (правило так же применимо к соответствующим терминальным множествам).

Правило 2: Если терминальные множества равны, то и соответствующие им классы равны. Другими словами если 71=72 => с, =с2, где 71,72 терминальные множества классов с,, с2 соответственно.

Правило 3: Если терминальное множество 77 класса с, входит в терминальное множество 72 класса с2, то класс с3 = (с2 \с,) будет прямым потомком класса с,. Другими словами, если 7] с Тг, то с3 = (с2 \ с,) прямой потомок класса с,, где 77, 77 терминальные множества соответственно классов с,, с2.

Правило 4. Если терминальные атрибуты класса С, могут быть описаны в классе с2, а терминальные атрибуты в классе сг могут быть описаны в классе сх, то между данными классами может быть установлена наследственная связь.

Утверждение 6. Каждой глобальной функции F{х) X на множестве X, соответствует одно и только одно отношение с, Лс2 на уровне экземпляров классов, где с,, с2 классы из множества С.

Нормализация ООБД разделяется на два этапа нормализации: нормализацию дерева наследования и нормализацию отношений между классами. Нормализация дерева наследования состоит из алгоритма нахождение ребер и узлов дерева наследования (Алгоритм 1) и алгоритма построения дерева наследования (Алгоритм 2), а нормализация отношений между классами из алгоритма определения типов ссылок между классами (Алгоритм 3) и алгоритма отображения ссылок на дереве наследования или на отдельно взятых классах (Алгоритм 4). Языковые конструкции, используемые при описании алгоритмов соответствуют языковым конструкциям языка Pascal.

Алгоритм 1. Нахождение ребер и узлов дерева наследования.

Вход: Отсортированное множество Т по убыванию количества терминальных атрибутов в его элементах.

Выход.

1. Измененное множество Т — множество элементов дерева наследования;

1.В-{Ь1,Ь2,ЬЗ...Ы} - множество ребер дерева наследования, где 6i= {7потомок,Тродитель}. 7потомок,7родитель элементы множества Т.

Инициализация. £={}, {} - пустое множество.

16

Алгоритм.

For i:=l to Length(T) do Begin

{Последний элемент множества(массива) T или одноэлементное множество не рассматриваются} If i=Length(7) Then Break;

{рассмотрим каждый последующий элемент множества Т - (ТЭД) в сравнении с элементом текущим T[i]} For j:=j+l to Length(7) do Begin

{Если текущий рассматриваемый элемент T[i], разложим на общую часть T[j] и на остаток (T[i]\T[j]), то он далее не рассматривается, а замещается остатком (T[i]\T[j]) и ребром, ссылающимся на общую часть T[j]. Т.к. только общая часть может рассматриваться как еще не делимая. Другими словами T[j] входит в T[i]} If Щ] включено в 7[i] Then Begin

7Ii]:=7Ii]\7Ij];

{Если для T[j] и T[j] выполняется Правило 4 } If (T[j] определено в T[i])and(T[i] определено в T[j]) Then {Строится наследственная связь между T[j] и T[j] }

В=В-кй,Ш)

Else

{Строится отношение между T[j] и T[j] } R=r+{r[i], r[j], OneToOne} Break; End; End; End;

Алгоритм 2. Построение дерева наследования из множеств Т и В; Вход.

1. С={с7,с2... ci) — множество классов.

2. T-{Tl,T2,T3...Ti} — множество терминальных множеств соответственно классов cl,c2... ci;

3. B={bl,b2,b3...bi} — множество ребер дерева наследования, вида 6i= {Тпотомок,7родитель}, где Тгютомок,Тродитель элементы множества Т.

Выход. Нормализованное дерево наследования классов из множества

С.

Алгоритм.

1. Создать классы соответствующие элементам из множества Т.

2. Отобразить каждое ребро из множества В, как связь наследования от 7потомока к 7родигелю для соответствующих новых классов.

Алгоритм 3. Определение типов ссылок между классами. Вход.

1. C={cl,c2... ci} - множество классов;

2. R={r 1 ,г2.. .И} - множество отношений между классами.

Выход. O={ol,o2,o3...oi} - множество ссылок, где о1={Систочник,Сприемник,<ТиП СВЯЗИ>} Систочник,Сприемник Элементы множества

С. <Тии связи>={ОпеТоОпе|ОпеТоМапу|МапуТоМапу}; Алгоритм.

For i:=l to Length^) do Begin

If r[i] есть функция then Begin

If r[i] есть функция инъективная then

0=0+ {r[i] .Сведущий,г[1] .Сведомый,ОпеТоОпе);

If r[i] есть функция не инъективная then 0=0+{г[у]. Сведущий, г[1].Сведомый,ОпеТоМапу); End Else Begin

(>=СН-{г[1].Сведуший,г[1].Сведомый,МапуТоМапу). End End;

Алгоритм 4. Отображение ссылок, описанных в множестве О, на дереве наследования или на отдельно взятых классах. Вход.

1. Дерево наследования или C={cl,c2... ci} -множество классов. 2.0={о 1 ,о2,оЗ ...oi} — множество ссылок, где

о1={систоч11ик,сприемш1к,<тип СВЯЗИ>} Систочник,Сприемник ЭЛеМеНТЫ МНОЖеСТВа

С. <Тип связи>={ОпеТоОпе|ОпеТоМапу|МапуТоМапу}; Выход. Нормализованная схема данных ООБД. Общий алгоритм построения дерева наследования для классов ООБД на основе вышеописанных правил и алгоритмов будет следующим:

1) для каждого терминального множества из Г применить Правило 1;

2) уплотнить множество Г используя Правило 2;

3) отсортировать множество Т по убыванию количества терминальных атрибутов в его элементах.

4) найти элементы дерева наследования, используя Алгоритм 1;

5) построить дерево наследования, используя Алгоритм 2;

6) определить типы ссылок между классами, используя Алгоритм 3;

7) отобразить ссылки на дереве, используя Алгоритм 4.

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

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

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

В четвертой главе рассматривается, основанная на объектно-ориентированной N-модели данных, среда визуального проектирования ООБД для САПР - Information Systems Developer Studio (ISDS). Система была разработана на языке Delphi в среде Delphi 7. В качестве средства поддержки объектно-ориентированного анализа и проектирования был выбран пакет Rational Rose.

ISDS позволяет создавать на визуально-декларативном языке NVL ООБД для САПР, производить нормализацию ООБД и генерировать код её бизнес логики. Система состоит из двух взаимосвязанных программ -визуальной среды проектирования и редактора скриптов NDL. Посредством пользовательского интерфейса (Рисунок 5) визуальная среда проектирования предоставляет разработчику следующие возможности:

— создание ООБД для САПР с указанием ее параметров;

— открытие и сохранение проекта ООБД;

— создание классов и категорий;

— определение отношений между классами и категориями;

— проведение нормализации ООБД.

шш

--TL-

9t__^

Рисунок 5 — Основное окно среды ISDS

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

ISDS является надстройкой над реляционной СУБД, что с одной стороны делает для пользователя доступным объектно-ориентированное представление предметной области, а с другой стороны данные хранятся в реляционном формате. Таким образом, в ISDS осуществляет преобразование проектных диаграмм в реляционные структуры и SQL процедуры. Это преобразование реализовано при помощи интерфейса взаимодействия визуальной среды с редактором скриптов NDL и программного интерфейса СУБД, посредством использования для этого соответствующих компонент в среде Delphi.

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

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

Так же в главе производится анализ влияние среды проектирования ISDS на процесс разработки информационных систем. Для этого рассматриваются современные модели жизненного цикла информационных систем, и анализируется влияние среды ISDS непосредственно на структуру жизненного цикла.

Рассмотрим преимущества, которые предоставляет ISDS разработчику:

1) лучшее понимание проектных диаграмм;

2) сокращение числа ошибок ранних этапов проектирования и времени их обнаружения;

3) отсутствие этапа кодирования и ошибок кодирования;

4) упрощение процесса тестирования (только выявления ошибок анализа и проектирования);

5) возможность проведения тестирования в любой момент времени;

6) упрощение процесса проектирования (отсутствие проектирования структуры программы, взаимодействия модулей и программных алгоритмов);

7) автоматическая генерация кода;

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

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

Исходя из вышеописанных качеств системы проектирования КОЗ, из процесса разработки выпадают кодирование и тестирование кода. Все это приводит к сокращению времени разработки и как следствие снижению затрат. Таким образом, была разработана система визуального проектирования ООБД для САПР ЕЗБЗ, которая в полной мере раскрывает возможности метода визуальной разработки объектно-ориентированных баз данных для САПР, объектно-ориентированной Ы-модели данных и языков >Л/Ь и Ж)Ь, позволяет производить нормализацию ООБД и избавляет проектировщика от написания кода и его тестирования, что в свою очередь упрощает проектирование и снижает на него затраты.

В заключении приведены основные результаты диссертационной работы и сделаны общие выводы.

ОСНОВНЫЕ ВЫВОДЫ И РЕЗУЛЬТАТЫ ДИССЕРТАЦИОННОЙ РАБОТЫ

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

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

2) Разработанный декларативный язык проектирования и администрирования объектно-ориентированных баз данных (№)Ь), который позволяет описывать структуры объектно-ориентированной базы данных для САПР, основывается на формализованной объектно-ориентированной ТЯ-модели данных и обладает вычислительной полнотой.

3) Разработанный визуальный язык проектирования (ЫУЬ), позволяет оперировать большими массивами данных посредством малого количества языковых конструкций и позволяет строить интерпретационно пригодные схемы объектно-ориентированных баз данных для САПР на основе объектно-ориентированной № модели данных.

4) Разработанный формализованный метод проектирования схемы объектно-ориентированной базы данных, в основе которого лежит алгоритм нормализации, визуальный и декларативный языки, позволяет строить на визуальном языке проектирования ИУЬ схемы объектно-ориентированных баз данных для САПР, обладающие сокращенной избыточностью;

5) Выполнена программная реализация декларативного языка программирования и визуального языка проектирования, а так же основанного на них алгоритма нормализации схемы объектно-ориентированной базы данных. В разработанной системе КЮв представлены развитые средства визуального проектирования и нормализации схемы, которые позволяют избавить проектировщика от написания кода и его тестирования, что в свою очередь снижает затраты и упрощает процесс проектирования объектно-ориентированной базы данных для САПР.

СПИСОК ПУБЛИКАЦИЙ ПО ТЕМЕ РАБОТЫ

Работы в изданиях, входящих в «Перечень ведущих научных журналов и изданий, выпускаемых в Российской Федерации», утвержденный ВАК.

1. Ольховик О.В., Белых A.B. N-Модель данных // Известия ЮФУ. Технические науки. Тематический выпуск "Интеллектуальные САПР". — Таганрог: ТТИ ЮФУ, 2009. № 4 (93). С. ] 81-388.

2. Белых A.B., Ковалев С.М., Ольховик О.В. Декларативный язык для N-модели данных // Вестник РГУПС. — Ростов н/Д: РГУПС, 2009. № 4(36), С. 80-86.

3. Белых A.B., Ковалев С.М., Ольховик О.В. Нормализация объектно-ориентироваш1ых баз данных на основе N-модели данных // Известия ВогГТУ. Серия: Актуальные проблемы управления, вычислительной техники и информатики в технических системах. — Волгоград: ВолгГТУ, 2009. №12(60), Вып. 7. С. 58-61.

4. Белых A.B., Ковалев С.М., Ольховик О.В. Визуально-декларативный язык проектирования программного обеспечения информационных систем // Вестник ДГТУ. — Ростов н/Д: ДГТУ,

2009. Том 9, №4 (43). С. 381-390.

5. Белых A.B., Ковалев С.М., Ольховик О.В. Сокращение избыточности схемы ООБД // Известия ЮФУ. Технические науки. Тематический выпуск "Интеллектуальные САПР". — Таганрог: ТТИ ЮФУ, 2009. № 12 (101). С. 181-186.

6. Белых A.B., Ковалев С.М. Построение нормализованной схемы объектно-ориентированной базы данных для САПР // Вестник РГУПС. — Ростов н/Д: РГУПС, 2010. № 2(3 8). С. 63-67.

7. Белых A.B. Построение нормализованной схемы для объектно-ориентированной N-модели // Обозрение прикл. и промышл. матем.

2010. Том. 17, Вып. 4. С. 532.

В работах, опубликованных в соавторстве, лично автору принадлежат следующие результаты: в [1] разработка понятия базы данных; в [2] разработка синтаксиса ядра декларативного языка NDL; в [3] разработка алгоритма построения дерева наследования и алгоритма нормализации отношений между классами объектно-ориентированной базы данных; в [4] разработка спецификации отношений и ограничения наследования между классами; в [5] разработан алгоритм для выработки входных данных для нормализации объектно-ориентированной базы данных; в [6] разработан алгоритм нахождение ребер и узлов дерева наследования классов объектно-ориентированной базы данных.

Работы в других изданиях.

8. Белых A.B. Пример применения проектных диаграмм на NVL для построения ERP-систем // Труды Конгресса по интеллектуальным системам и информационным технологиям «AIS-IT'10». Научное издание в 4-х томах. — М.: Физматлит, 2010. Том. 3. С. 268-273.

БЕЛЫХ Александр Валерьевич

ВИЗУАЛЬНЫЙ МЕТОД РАЗРАБОТКИ ОБЪЕКТНО-ОРИЕНТИРОВАННЫХ БАЗ ДАННЫХ ДЛЯ СИСТЕМ АВТОМАТИЗИРОВАННОГО ПРОЕКТИРОВАНИЯ

Автореферат диссертации на соискание ученой степени кандидата технических наук

Подписано к печати 29.10.2010 г. Формат 60x84/16. Бумага офсетная. Печать офсетная. Усл. Печ. л. 1,0. Тираж 100. Заказ № S2BЗ.

Ростовский государственный университет путей сообщения. Ризография РГУПСа

Адрес университета: 344038, г. Ростов-на-Дону, пл. Ростовского стрелкового полка народного ополчения, 2.

Оглавление автор диссертации — кандидата технических наук Белых, Александр Валерьевич

Введение.

1 Анализ объектно-ориентированных баз данных.

1.1 Общие понятия объектно-ориентрованного подхода в ООБД.

1.2 Объектно-ориентированные модели данных и стандарт ООМСт.

1.3 Языки программирования систем ООБД.

1.4 Визуальные языки проектирования ООБД.

1.5 Современные методы нормализации ООБД.

1.6 Вывод.

2 Формальное описание объектно-ориентированной 14-модели данных и разработка её декларативного языка программирования.

2.1 Общие понятия объектно-ориентированной >1-модели данных.

2.2 Формальное описания ОО 1ЧГ-модели данных.

2.3 Разработка декларативного языка программирования ОО И-модели данных.

2.4 Вывод.

3 Разработка методов и средств проектирования ОО К-модели данных

3.1 Разработка визуального языка проектирования 1Ч-модели данных.

3.2 Разработка алгоритма нормализации ООБД на основе №Модели данных

3.3 Сравнение алгоритма нормализации Ы-модели данных с существующими алгоритмами нормализации ООБД.

3.4 Вывод.

4 Разработка визуальной среды проектирования ООБД для САПР.

4.1 Описание системы проектирования ООБД для САПР.

4.2 Влияние среды проектирования 18В8 на процесс разработки информационных систем.

4.3 Вывод.

Введение 2010 год, диссертация по информатике, вычислительной технике и управлению, Белых, Александр Валерьевич

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

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

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

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

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

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

Очевидно, что для решения этих проблем требуется применение новых методик и инструментов проектирования, так как для абстрактной модели данных, обладающей более богатыми структурными возможностями по сравнению с реляционной моделью, требуется иной метод сокращения избыточности данных или другими словами метод нормализации схемы. При этом общепризнанного метода нормализации ООБД не существует, есть только отдельные методы, представленные в различных работах. Один из таких методов нормализации схемы объектно-ориентированной модели данных подробно рассматривается в работе по нормализации ООБД Z. Tari, J. Stokes, S.

8рассар1е1та [60], материалы которой используются во многих научных статьях. В этой работе акцент сделан на нормализацию сложных атрибутов, построенных используя кортеж и(или) несколько доменов простых атрибутов. Так же показано что нормализация объектно-ориентированной схемы является динамичным процессом сокращения избыточности и отражения идей, заложенных при проектировании.

Однако, рассматриваемый метод нормализации имеет и ряд недостатков:

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

2) не рассматриваются нормализация наследования и вопросы, связанные с построением дерева наследования классов;

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

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

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

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

Выполненные исследования опираются на результаты работ в области проектирования и нормализации объектно-ориентированных баз данных и САПР отечественных ученых В.М. Курейчика, Б.К. Лебедева, В.В. Курейчика, С.Д. Кузнецова, A.B. Замулина, М.Н. Гринева, а так же зарубежных ученых E.F. Codd, G. Jaeschke, H.J. Schek, М. Berler, J. Eastman, С. Russell, Т. Stanienda, Т. Kvatrani, Z. Meral Ozsoyoglu, L.Y. Yuan, M.A. Roth, H.F. Korth, T.W. Ling, L.L. Yan, V.M. Markowitz, J. Rumbaugh, M. Blaha, W. Premerlani, F. Eddy, W. Lorensen, Z. Tari, J. Stokes, S. Spaccapietra, W. Ambler, A. Formica, H.D. Groger, M. Missikoff, S. Ghosh, T. Dinh-Trong и др.

Объектом исследования в работе являются методы проектирования алгоритмического, программного и информационного обеспечения объектно-ориентированных САПР.

Предмет исследования составляют методы проектирования интерпритационно пригодных схем информационных баз данных в специализированных САПР.

Цель диссертационной работы- заключается в- разработке формализованного метода проектирования интерпретационно пригодной схемы объектно-ориентированной базы данных для САПР:

Для достижения указанной цели необходимо решить следующие задачи:

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

2) формализованное описание новой объектно-ориентированной (ОО) И-модели данных для объектно-ориентированных баз данных;

3) разработка нового декларативного языка для проектирования и администрирования схем объектно-ориентированных баз данных для САПР на основе объектно-ориентированной "Ы-модели данных;

4) разработка нового визуального языка проектирования для визуализации схем объектно-ориентированных баз данных для САПР на основе объектно-ориентированной 1Ч-модели данных;

5) разработка новых алгоритмов и правил нормализации схемы объектно-ориентированной базы данных для САПР, использующих математический аппарат, визуальный и декларативный языки объектно-ориентированной >Т-модели данных.

Решение поставленных задач позволит повысить восприятие и сократить избыточность схемы объектно-ориентированной базы данных, а так же удовлетворить тенденции развития методов проектирования ООБД для САПР.

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

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

Научная новизна работы заключается в следующем:

1) разработано формальное описание грамматики нового декларативного языка программирования и администрирования объектно-ориентированной базы данных для САПР, обладающего вычислительной полнотой и основанного на формализованной объектно-ориентированной Ы-модели данных;

2) разработан новый визуальный язык проектирования схем объектно-ориентированных баз данных, отличающийся малым количеством языковых конструкций и позволяющий строить интерпретационно пригодные схемы объектно-ориентированных баз данных для САПР на основе объектно-ориентированной Ы-модели данных.

3) разработаны новые правила и алгоритм нормализации схемы объектно-ориентированной базы данных, отличающийся простотой и позволяющий строить схемы для САПР и сокращать их избыточность, используя математический аппарат, а так же визуальный и декларативный языки объектно-ориентированной N-модели данных.

Практическая ценность работы заключается в применении результатов исследования для построения среды визуального проектирования схемы ООБД для САПР - Information Systems Developer Studio (ISDS). Использование результатов исследования позволило повысить восприятие схемы ООБД для САПР, сократило её избыточность и время разработки за счет применения нового метода проектирования и визуально-декларативного языка, основанных на формализованной объектно-ориентированной N-модели данных. Также результаты исследования снизили затраты и повысили уровень взаимодействия между аналитиками и специалистами в предметной области. Все это упростило процесс проектирования ООБД для САПР и снизило на него затраты.

Реализация результатов. Практические результаты диссертационной работы внедрены в Северо-Кавказском филиале ОАО «Федеральная пассажирская компания» (г.Ростов-на-Дону) и в Ростовском ИВЦ структурном подразделении Главного вычислительного центра - филиала ОАО «РЖД» (г. Ростов-на-Дону).

Апробация работы. Основные положения и результаты диссертации докладывались и обсуждались на Молодежной научно-технической конференции «Интеллектуальные системы - 2010» и на XI Всероссийском симпозиуме по прикладной и промышленной математике (секция Информационные технологии и задачи связи).

Публикации. Основные результаты диссертационной работы опубликованы в 8 печатных работах, из них 7 работ в изданиях, входящих в «Перечень ведущих научных журналов и изданий, выпускаемых в Российской федерации», утвержденный ВАК.

Структура и объем работы. Диссертационная работа состоит из введения, четырех тематических глав, заключения, списка литературы и приложений. Общий объем основного текста — 165 страниц, включая 41 рисунка. Список литературы изложен на 10 страницах и содержит 104 наименований.

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

4.3 Вывод

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

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

Таким образом, была разработана система визуального проектирования ООБД для САПР 1808, которая в полной мере раскрывает возможности 1М-модели данных и языков ЫУЬ и №)Ь, избавляет проектировщика от написания кода и его тестирования, что в свою очередь снижает затраты при проектировании, а так же позволяет производить нормализацию схемы базы данных. При этом система КОБ обладает следующими преимуществами: снижение числа ошибок анализа, автоматическая генерация кода с отсутствием ошибок кодирования, раннее обнаружение ошибок проектирования, снижение трудоемкости проектирования ПО ИС, снижение трудозатрат на создание ПО ИС, уменьшение затрат, связанных с движением персонала, упрощение процесса развития ПО ИС, снижение риска провала проекта информатизации, снижение риска увеличения основных параметров проекта (сроки, стоимость), уменьшение временных затрат на информатизацию, более качественное обслуживания ИС и независимость от разработчиков.

Заключение

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

Для описания схемы модели данных были разработаны декларативный язык программирования МЭЬ, обладающий вычислительной полнотой, и 1 визуально-декларативный язык ЫУЬ, который обладает малой элементной базой и позволяет строить схемы ООБД для САПР, включающие бизнес-логику. Все это послужило основой для создания формализованного метода проектирования схемы ООБД, в основе которого лежит алгоритм нормализации ООБД, позволяющий строить интепритационно пригодные схемы ООБД для САПР на визуальном языке проектирования и сокращать их избыточность.

В работе также производится сравнение разработанного алгоритма нормализации с существующим алгоритмом нормализации ООБД и рассматривается, основанная на объектно-ориентированной >Т-модели данных,

153 среда визуального проектирования информационных систем - Information Systems Developer Studio (ISDS). Представленная среда визуального проектирования ISDS, в полной мере раскрывает возможности N-модели данных и языков NVL и NDL, позволяет производить нормализацию схемы ООБД и избавляет проектировщика от написания кода и его тестирования, что в свою очередь снижает затраты при проектировании.,

Полученные результаты позволяют сделать следующие выводы:

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

2) Разработанный декларативный язык проектирования и администрирования объектно-ориентированных баз данных (NDL), который позволяет описывать структуры объектно-ориентированной базы данных для САПР, основывается на формализованной объектно-ориентированной N-модели данных и обладает вычислительной полнотой.

3) Разработанный визуальный язык проектирования (NVL), позволяет оперировать большими массивами данных посредством малого количества языковых конструкций и позволяет строить интерпретационно пригодные схемы объектно-ориентированных баз данных для САПР на основе объектно-ориентированной N-модели данных.

4) Разработанный формализованный метод проектирования схемы объектно-ориентированной базы данных, в основе которого лежит алгоритм нормализации, визуальный и декларативный языки, позволяет строить на визуальном языке проектирования NVL схемы объектно-ориентированных баз данных для САПР, обладающие сокращенной избыточностью;

5) Выполнена программная реализация декларативного языка программирования и визуального языка проектирования, а так же основанного на них алгоритма нормализации схемы объектно-ориентированной базы данных. В разработанной системе КОБ представлены развитые средства визуального проектирования и нормализации схемы, которые позволяют избавить проектировщика от написания кода и его тестирования, что в свою очередь снижает затраты и упрощает процесс проектирования объектно-ориентированной базы данных для САПР.

Библиография Белых, Александр Валерьевич, диссертация по теме Системы автоматизации проектирования (по отраслям)

1. Аткинсон М.П., Бансилон Ф., ДеВитт Д., Дитрих К.Р., Майер Д., Здоник С. Б. Манифест систем объектно-ориентированных баз данных // СУБД. 1995. № 4. С. 160-155.

2. Курейчик В.М., Корячко В.П., Норенков И.П. Теоретические основы САПР / Учебник. М.: Энергоатом-издат, 1987. 400 с.3. .Kureichik V., Koryachko V., Norenkov I. CAD Basics. Mir Publishers, Moscow, 1990. 325 p.

3. Литовка Ю.В., Дьяков И.А., Романенко A.B., Алексеев С.Ю., Попов А.И. Основы проектирования баз данных в САПР: Учеб. пособие. Тамбов: Изд-во Тамб. гос. техн. ун-та, 2005. 96 с.

4. Woo С.С., Lochovsky F.H. An Object-Based Approach to Modelling Office Work // IEEE Database Engineering Bulletin. 1985. Vol. 8. № 4. P. 14-22.

5. Atkinson M.P., Bancilhon F., DeWitt D J., Dittrich K.R., Maier D., Zdonik S. B. The Object-Oriented Database System Manifesto // The First International Conference on Deductive and Object-Oriented Databases. 1989. P. 223-240.

6. Codd E.F. A Relational Model of Data for Large Shared Data Banks // Communications of the ACM. 1983 Vol. 26. № 1. P. 64-69.

7. Jaeschke G., Schek H J. Remarks on the algebra of non first normal form relations // The 1st ACM SIGACT-SIGMOD symposium on Principles of database systems. 1982. Session 5. P. 124-138.

8. Дейт К.Дж. Введение в системы баз данных: 7-е издание. / Пер. с англ. М.: Издательский дом "Вильяме". 2001. 1072 с.

9. П.Райордан Р. Основы реляционных баз данных. / Пер. с англ. М.: Издательско-торговый дом «Русская Редакция», 2001. 384 с.

10. Кузнецов С. Д. Базы данных. Модели и языки. / Учебник. М.: Изд-во БИНОМ, 2008. 720 с.

11. Ульман Д. Д., Уидом Д. Основы реляционных баз данных. / Пер. с англ. М.: Изд-во Лори, 2006. 382 с.

12. Гарсиа-Молина Г., Ульман Д., Уидом Д. Системы баз данных. Полный курс. /М.: Изд-во Вильяме, 2004. 1088 С.

13. Card M. Next-Generation Object Database Standardization // ODBMS.ORG: Object Database Technology Working Group. URL: http://www.odbms.org/download/033.0 l%20Card%20Next

14. Generation%200bject%20Database%20Standardization%20September%202007.PD F (дата обращения: 26.10.2009).

15. ODBMS.ORG: образовательный и исследовательский портал. URL: http://www.odbms.org/ (дата обращения: 26.10.2009).

16. Object Model Features Matrix // NCITS Technical Committee H7. 1997. Doc. No.: X3H7-93-007vl2b. URL:http://www.obis.com/x3h7/fmindex.htm (дата обращения: 23.10.2009).

17. Замулин A.B. Системы программирования баз данных и знаний / Новосибирск: Наука. 1990. 352 с.

18. Кузнецов С.Д. Языки программирования объектно-ориентированных баз данных и оптимизация запросов // CITFORUM.RU: IT-портал Центра Информационных Технологий. URL: http://www.citforum.ru/database/articles/art 23 .shtml (дата обращения: 27.10.2009).

19. Гринев М.Н., Кузнецов С.Д. Управление данными: достижения и проблемы // ICT.EDU.RU: Институт системного программирования РАН. URL: http://www.ict.edu.ru/fi/005644/62321el-st08.pdf (дата обращения: 27.10.2009).

20. Lécluse С., Richard P. The 02 Database Programming Language // 15th Int. Conf. Very Large Data Bases. 1989. P. 604-432.

21. Laenens E., Staes F., Vermeir D. Browsing a la carte in Object-Oriented Databases // The Computer Journal. 1989. Vol. 32. № 4. P. 333-340.

22. Сиротюк O.B. Особенности проектирования современных баз данных // COMIZDAT.COM: Портал COMPUTERWORLD Украина. URL: http://www.comizdat.com/index cw.php?in=komi results&id=733&tn-komi article s ru&SearchString=&lang=ru (дата обращения: 27.10.2009).

23. Боггс У., Боггс M. UML и Rational Rose 2002. M.: Изд-во Вильяме, 2004.510 c.

24. Леоненков A. В. Объектно-ориентированный анализ и проектирование с использованием UML и IBM Rational Rose. M.: Интернет-университет информационных технологий, Бином. Лаборатория знаний, 2006. 320 с.

25. Буч Г., Рамбо Д., Якобсон И. Язык UML. Руководство пользователя. М.: «ДМК Пресс», 2007. 496 с.

26. Фаулер М., Скотт К. UML. Основы. М.: Символ-Плюс, 2006. 192 с.

27. Мацяшек JL А. Анализ и проектирование информационных систем с помощью UML 2.0. / Третье издание. М.: Изд-во Вильяме, 2008. 816 С.

28. Ларман К. Применение UML 2.0 и шаблонов проектирования. Введение в объектно-ориентированный анализ и проектирование / 3-е издание. М.: Изд-во Вильяме, 2008. 736 с.

29. Буч Г., Максимчук Р. А., Энгл М. У., Янг Б. Дж., Коналлен Д., Хьюстон К. А. Объектно-ориентированный анализ и проектирование с примерами приложений (UML 2) / Третье издание. М.: Изд-во Вильяме, 2010. 720 с.

30. Слама Д., Гарбис Д., Рассел П. Корпоративные системы на основе CORBA. М.: Изд-во Вильяме, 2000. 368 с.

31. Цимбал А. А. Технология CORBA для профессионалов. СПб.: Изд-во Питер, 2001. 624 с.

32. Сигел Д. COBRA 3. / Пер. с англ. М.: Изд-во Малип, 2002. 412с.

33. Мюллер Р. Дж. Базы данных и UML. Проектирование. М.: Изд-во Лори, 2002. 420с.

34. Кватрани Т. Визуальное моделирование с помощью Rational Rose 2002 и UML / Пер. с англ. М. : Издательский дом «Вильяме». 2003. 192 с.

35. Gyssens M., Paredaens J., Van den Bussche J., Van Gucht D. A graph-oriented object database model // IEEE Transactions on Knowledge and Data Engineering. 1994. Vol. 6. № 4. P. 572-586.

36. Gyssens M., Paredaens J., Van Gucht D. A graph-oriented object model for database end-user interfaces // ACM SIGMOD international conference on Management of data table of contents. 1990. Vol. 19. № 2. P. 24-33.

37. Poulovassilis A., Levene M. A nested-graph model for the representation and manipulation of complex objects // ACM Transactions on Information Systems (TOIS). 1994. Vol. 12. № 1. P. 35-68.

38. Coulondre S., Libourel T. An integrated object-role oriented database model // Data & Knowledge Engineering. 2002. Vol. 60. № 1. P. 113-141.

39. Albano A., Bergamini R., Ghelli G., Orsini R. An Object Data Model with Roles // 19th International Conference on Very Large Data Bases. 1993. P. 39-51.

40. Levene M., Poulovanssilis A. An object-oriented data model- formalised through hypergraphs // Data & Knowledge Engineering. 1991. Vol. 6. № 3. P. 205224.

41. Codd E.F. Further normalization of the data base relational model // Data Base Systems: Courant Computer Science Symposia Series 6. 1972.

42. Jaeschke G., Schek H. J. Remarks on the algebra of non-first normal form relations // 1st ACM SIGACT-SIGMOD symposium on Principles of database systems. 1982. Session 5. P. 124-138.

43. Meral Ozsoyoglu Z., Yuan L.Y. A new normal form for nested relations // ACM Transactions on Database Systems (TODS). 1987. Vol. 12. № 1. P. 111-136.

44. Roth M.A., Korth H.F. The design of INF relational databases into nested normal form // ACM SIGMOD international conference on Management of data. 1987. P. 143-159.

45. Ling T.W., Yan L.L. NF-NR: A practical normal form for nested relations //Journal of Systems Integration. 1994. Vol. 4. № 4. P. 309-340.

46. Markowitz V.M., Shoshani A. On the correctness of representing extended entity-relationship structures in the relational model // ACM SIGMOD international conference on Management of data. 1989. P. 430-439.

47. Ling T.W. A normal form for entity-relationship diagrams // Fourth International Conference on Entity-Relationship Approach. 1985. P. 24-35.

48. Hull R., King R. Semantic database modeling: survey, applications, and research issues // ACM Computing Surveys (CSUR). 1987. Vol. 19. № 3. P. 201260.

49. Hammer M., Mcleod D. Database description with SDM: A semantic database model // ACM Trans. Database Syst. 1981. Vol. 6. № 3. P. 351-386.

50. Elmasri R., Weeldreyer J., Hevner A. The category concept: An extension to the entity-relationship model // Data & Knowledge Engineering. 1985. Vol. 1. № l.P. 75-116.

51. Rumbaugh J., Blaha M., Premerlani W., Eddy F., Lorensen W. Object-Oriented Modeling and Design / Prentice-Hall: 1st edition. 1990. 512 p.

52. Tari Z. On the design of object-oriented databases // ACM Conf on Information and Knowledge Management (CIKM'93). 1992. P. 625-634.

53. Tari Z., Stokes J., Spaccapietra S. Object normal forms and dependency constraints for object-oriented schemata // ACM Transactions on Database Systems (TODS). 1997. Vol. 22. № 4. P. 513-569.

54. Ambler W. Introduction to Class Normalization Scott // AGILEDATA.ORG: Techniques for Successful Evolutionary/Agile Database Development. URL:http://www.agiledata.org/essays/classNormalization.html (дата обращения: 28.10.2009).

55. Formica A., Groger H.D., Missikoff M. An Efficient Method for Checking Object-Oriented Database Schema Correctness // ACM Transactions on Database Systems (TODS). 1998. Vol. 23. № 3. p. 333-368.

56. Курейчик B.M. Дискретная математика: Учебное пособие. Ч. 1. — Таганрог: Изд-во ТРТУ, 1997.

57. Курейчик В.М., Гладков Л.А., Курейчик В.В. Дискретная математика. Теория множеств. Учебное пособие. 4.1. — Таганрог: Изд-во ТРТУ, 2005.

58. Курейчик В.М. Дискретная математика: Учебное пособие. Ч. 2. Элементы теории графов. № 2536-2. Таганрог: Изд-во ТРТУ, 1997.

59. Кляйн К., Кляйн Д., Хант Б. SQL. Справочник / 3-е издание. М.: Символ-Плюс, 2009. 656 с.

60. Кригель А., Трухнов Б. SQL. Библия пользователя. Язык запросов SQL / 2-е издание. М.: Изд-во Диалектика, 2009. 752 С.

61. Боуман Дж., Эмерсон С., Дарновски М. Практическое руководство по SQL. M.: Изд-во Вильяме, 2001. 336 с.

62. Астахова И.Ф., Мельников В.М., Толстобров А.П., Фертиков В.В. СУБД: язык SQL в примерах и задачах. М.: Изд-во ФИЗМАТЛИТ, 2009. 168 с.

63. Себеста Р. В. Первый шаг к совершенствованию: язык ALGOL 60 // Основные концепции языков программирования. 5-е изд. М.: Изд-во Вильяме, 2001. С. 672.

64. ISO/IEC 14977:1996. Information technology. Syntactic Metalanguage. Extended BNF.

65. Гордеев A.B., Молчанов А.Ю. Системное программное обеспечение. / СПб. : Питер. 2002. 736 с.

66. ISO/IEC 646:1991. Information technology ISO 7-bit coded character set for information interchange.

67. Черемных C.B., Семенов И.О., Ручкин B.C. Моделирование и анализ систем. IDEF-технологии: практикум. М.: Изд-во Финансы и статистика, 2006. 192 с.

68. Черемных С.В., Семенов И.О., Ручкин B.C. Структурный анализ систем: IDEF-технологии. М.: Изд-во Финансы и статистика, 2003. 208 с.

69. Маклаков С.В. BPWin и ERWin. CASE-средства разработки информационных систем. -М.: ДИАЛОГ-МИФИ, 2000. 256 с.

70. Маклаков С.В. Моделирование бизнес-процессов с Allfusion Process Modeler (BPWin 4.1). M.: ДИАЛОГ-МИФИ, 2002. 240 с.

71. Калашян А. Н., Калянов Г. Н. Структурные модели бизнеса: DFD-технологии. М.: Изд-во Финансы и статистика, 2003. 256 с.

72. Дубейковский В.И. Эффективное моделирование с AllFusion Process Modeler (BPwin). M.: ДИАЛОГ-МИФИ, 2007. 384 с.

73. Дубейковский В.И. Практика функционального моделирования с AllFusion Process Modeler 4.1. Где?Зачем?Как? М.: ДИАЛОГ-МИФИ, 2004. 464 с.

74. Белых А.В., Ковалев С.М., Ольховик О.В. Декларативный язык для N-модели данных // Вестник РГУПС. — Ростов н/Д: РГУПС, 2009. № 4(36), С. 80-86.

75. ISO/IEC 6609:1992. Information technology Control functions for 7-bit and 8-bit coded character sets.

76. ISO/IEC 13346-2:1999. Information technology. Volume and file structure of write-once and rewritable media using non-sequential recording for information interchange. Part 2: Volume and boot block recognition.

77. Белых A.B., Ковалев C.M., Ольховик О.В. Визуально-декларативный язык проектирования программного обеспечения информационных систем // Вестник ДГТУ. — Ростов н/Д: ДГТУ, 2009. Том 9, №4 (43). С. 381-390.

78. France R.B., Ghosh S., Dinh-Trong Т. Model-Driven Development Using UML 2.0: Promises and Pitfalls // Computer. 2006. Vol. 39. № 2. P. 59-66.

79. OMG. Unified Modeling Language: Superstructure, version 2.2 // OMG.ORG: Портал The Object Management Group URL: http://www.omg.org/cgi-bin/doc?formal/09-02-02.pdf (дата обращения: 28.09.2009).

80. Intégration définition for information modeling (IDEF1X) // IDEF.COM: Портал Knowledge Based Systems, Inc. URL: http://www.idef.com/pdfyideflx.pdf (дата обращения: 10.09.2009).

81. Белых А.В., Ковалев С.М. Построение нормализованной схемы объектно-ориентированной базы данных для САПР // Вестник РГУПС. — Ростов н/Д: РГУПС, 2010. № 2(38). С. 63-67.

82. Белых А.В., Ковалев С.М., Ольховик О.В. Сокращение избыточности схемы ООБД // Известия ЮФУ. Технические науки. Тематический выпуск "Интеллектуальные САПР". — Таганрог: ТТИ ЮФУ, 2009. № 12 (101). С. 181186.

83. Белых А.В. Пример применения проектных диаграмм на NVL для построения ERP-систем // Труды Конгресса по интеллектуальным системам и информационным технологиям «AIS-IT'10». Научное издание в 4-х томах. — М.: Физматлит, 2010. Том. 3. С. 268-273.

84. Белых А.В. Построение нормализованной схемы для объектно-ориентированной N-модели // Обозрение прикл. и промышл. матем. 2010. Том. 17, Вып. 4. С. 532.

85. Избачков Ю. С., Петров В. Н. Информационные системы: Учебник для вузов. / 2-е издание. СПб.: Изд-во Питер, 2006. 656 с.

86. Вендров А.М. CASE-технологии. Современные методы и средства проектирования информационных систем // CITFORUM.RU: IT-портал Центра Информационных Технологий. URL: http://www.citforum.ru/database/case/ (дата обращения: 15.02.2010).

87. Востриков С.М., Ковязин А.Н. Мир InterBase: Архитектура, администрирование и разработка приложений баз данных в InterBase, Firebird, Yaffil / Изд. 3-е. СПб.: КУДИЦ-Образ, 2005. 496 С.

88. Бондарь А. Г. InterBase и Firebird. Практическое руководство для умных пользователей и начинающих разработчиков. СПб.: БХВ-Петербург, 2007. 592 С.

89. Брауде Э. Дж. Технология разработки программного обеспечения. СПб.: Изд-во Питер, 2004. 656 с.

90. Боэм Б.У. Инженерное проектирование программного обеспечения. / Пер. с англ. М. Радио и связь, 1985. 512 с.

91. Зиндер Е.З. Бизнес-реинжиниринг и технологии системного проектирования : Учебное пособие. М. : Центр Информационных Технологий. 1996.

92. Boehm B.W. A Spiral Model of Software Development and Enhancement // ACM SIGSOFT Software Engineering Notes. 1986. Vol. 11. № 4. P. 14-24.

93. ISO/IEC 12207:2008. Systems and software engineering. Software, life cycle processes.

94. Макконнелл С. Совершенный код. Мастер-класс / Пер.с англ. М. : Издательский торговый дом «Русская Редакция»; СПб. : Питер. 2005. 896 с.