Проектирование информационных систем в рамках объединенного объектно-реляционного подхода тема диссертации и автореферата по ВАК РФ 05.13.12, кандидат технических наук Добряк, Павел Вадимович

  • Добряк, Павел Вадимович
  • кандидат технических науккандидат технических наук
  • 2007, Екатеринбург
  • Специальность ВАК РФ05.13.12
  • Количество страниц 223
Добряк, Павел Вадимович. Проектирование информационных систем в рамках объединенного объектно-реляционного подхода: дис. кандидат технических наук: 05.13.12 - Системы автоматизации проектирования (по отраслям). Екатеринбург. 2007. 223 с.

Оглавление диссертации кандидат технических наук Добряк, Павел Вадимович

ВВЕДЕНИЕ.

Исторический обзор.

Актуальность темы исследования.

Цель и задачи диссертационной работы.

Область исследования.

Методика исследования.

Научная новизна.

Практическая и теоретическая ценность, внедрение.

Результаты, выносимые на защиту, авторский вклад.

Достоверность и обоснованность работы.

Апробация результатов работы, публикации.

Структура диссертации.

1 АНАЛИЗ ПАРАДИГМ.

1.1 Анализ технологий и классической объектно-ориентированной парадигмы.

1.1.1 CASE-технологии и графические нотации.

1.1.2 Среды исполнения.

1.1.3 Технологии программирования.

1.1.4 Технологии управления данными.

1.1.5 Объектно-ориентированные и интеллектуальные базы данных.

1.1.6 Языки запросов.

1.1.7 Теоретические препятствия в развитии объектно-ориентированных технологий.

1.1.8 Предшественники объединенной парадигмы.

Выводы.

1.2 Модели данных.

1.2.1 Диаграмма «Сущность-связь» Чена.

1.2.2 Связи в объектно-ориентированных базах данных.

1.2.3 ER-диаграммы для представления объектно-ориентированных связей.

1.2.4 Модели данных в унифицированном языке моделирования (UML).

1.2.5 Объектно-ориентированные языки программирования.

1.2.6 Модель RM/T.

1.2.7 Множественное представление.

Выводы.

1.3 Объектно-ориентированное программирование и базы данных.

1.3.1 Аналогии между элементами баз данных и объектно-ориентированного программирования.

1.3.2 Триггеры и события.

1.3.3 Наследование, агрегация и реляционные отношения.

1.3.4 Элементы СУБД, отсутствующие в объектно-ориентированном программировании.

Выводы.

1.4 Распределенные информационные системы.

1.5 Системы с эволюцией структуры.

1.5.1 Исторический обзор.

1.5.2 Элементы объектно-ориентированного программирования.

1.5.3 Динамизм баз данных.

1.5.4 Расширение объектно-ориентированной парадигмы принципом динамизма

Выводы.

1.6 Интеллектуальные информационные системы.

1.6.1 Технологии управления данными и программирования.

1.6.2 Объектно-ориентированный подход и парадигмы искусственного интеллекта.

1.6.3 Семантические сети.

1.6.4 Язык интеллектуальных запросов.

1.6.5 Распределенные интеллектуальные системы, мобильные и интеллектуальные агенты.

1.6.6 Эволюция структуры программы.

1.6.7 Нечеткие технологии.

Выводы.

Выводы.

2 ОБЪЕДИНЕННАЯ ПАРАДИГМА.

2.1 Общие сведения об объединенной парадигме.

2.2 Взаимоотношения с другими парадигмами.

2.2.1 ООП как надстройка.

2.2.2 Другие парадигмы как надстройки над ООП.

2.2.3 Элементы, реализующие другие парадигмы как объекты.

2.3 Принцип реализации полноты парадигмы.

2.3.1 Главные элементы.

2.3.2 Обязательное наследование и метаклассирование.

2.3.3 Полная реализация концепции "класс-это тоже объект".

2.3.4 Дуализм классов и экземпляров классов.

2.3.5 Обязательная агрегация.

2.4 Динамизм структуры.

2.5 Абстракция и инкапсуляция.

2.5.1 Предпосылки введения понятия «паттерн».

2.5.2 Определение паттерна и его использование.

2.5.3 Расширенные объекты.

2.5.4 Расширенная модель атрибута.

2.6 Полиморфизм.

2.6.1 Указатели (ссылки) на паттерны.

2.6.2 Дуализм объектов и связей.

2.6.3 Полиморфизм представлений.

2.6.4 Полиморфизм использования.

2.6.5 Модель связи.

2.6.6 Значения по умолчанию как свойства класса.

2.7 Новая модель информационной системы, анализ и проектирование информационных систем.

2.7.1 Описание модели.

2.7.2 Примеры из современных предметных областей.

2.7.3 Анализ и проектирование в соответствии с объединенной парадигмой.

2.7.4 Польза элементов объединенной парадигмы.

Выводы.

3 ГРАФИЧЕСКАЯ И ТЕКСТОВАЯ НОТАЦИЯ.

3.1 Принципы построения нотаций.

3.2 Диаграммы паттернов.

3.2.1 Вложенные паттерны.

3.2.2 Связи между паттернами.

3.2.3 Связи как интерфейсы.

3.2.4 Ограничения на количество экземпляров.

3.2.5 Указатели на паттерн для реализации параметрического полиморфизма.

3.2.6 Паттерны-функции.

3.2.7 Триггеры.

3.2.8 Принадлежность объекта нескольким классам.11 ]

3.3 Дополнительные элементы текстовой нотации.

3.3.1 Автоэкземпляризация.1 и

3.3.2 Параметризованные классы как паттерны.

3.3.3 Расширенные объекты.

3.3.4 Архитектура «Элементы программы как объекты».

3.3.5 Транзакции

3.3.6 Динамизм структуры паттерна.

3.3.7 Полиморфизм использования объектов.

3.4 НФБ Паттерна.

Выводы.

4 МАТЕМАТИЧЕСКИЕ ОСНОВЫ ТЕХНОЛОГИИ.

4.1 Операции над паттернами.

4.1.1 Принципы построения операций.

4.1.2 Описание операций.

Выводы.

4.2 Анализ сложности систем.

4.2.1 Виды оценок качества ПО.

4.2.2 Элементарные характеристики паттернов.

3.2.3 Составные характеристики паттернов.

4.2.4 Предельные и средние характеристики паттернов.

4.2.5 Обобщенные характеристики.

4.2.6 Характеристики сложности структуры на основе сходящихся рядов.

Выводы.

Выводы.

5 ПРАКТИЧЕСКАЯ РЕАЛИЗАЦИЯ И АЛГОРИТМ ПРЕОБРАЗОВАНИЯ ПАТТЕРНОВ В ОБЪЕКТНУЮ СТРУКТУРУ.

5.1 Описание программы «Patterns».

5.2 Руководство пользователя.

5.3 Разработка стандартных С++ программ.

5.3.1 Класс со свойствами.

5.3.2 Функции.

5.3.3 Наследование.

5.3.4. Структуры.

5.4 Особые случаи.

5.4.1 Многоуровневая экземпляризация.

5.4.2 Принадлежность объекта нескольким классам.

5.4.3 Взаимное наследование.

5.4.4 Сложная связь.

5.4.5 Паттерн - класс, функция и связь.

5.4.6 Класс - свойство.

5.4.7 Класс внутри структурного блока.

5.5 Примеры.

5.5.1 Большой абстрактный пример.

5.5.2 Пример паттерна «административная единица».

5.5.3 Сравнение текстовой нотации и кода С++.

5.6 Алгоритм преобразования структуры Patterns в С++.

Выводы.

Рекомендованный список диссертаций по специальности «Системы автоматизации проектирования (по отраслям)», 05.13.12 шифр ВАК

Введение диссертации (часть автореферата) на тему «Проектирование информационных систем в рамках объединенного объектно-реляционного подхода»

Концептуальное описание предметной области.186

Логическое проектирование ИС.187

Реляционная модель.187

Объектно-ориентированная модель.189

Модель по объединенной парадигме.189

Элементы объединенной парадигмы этапа выполнения.191

Запросы.191

Алгебраические операции.192

Открытость и динамизм структуры.193

Оценки сложности системы.194

Заключение.195

ПРИЛОЖЕНИЕ 3. ПАТТЕРН «ЧЕЛОВЕК».196

БИБЛИОГРАФИЧЕСКИЙ СПИСОК.202

Список использованных источников.202

История технологий и прогнозы.202

Концептуальные основы технологий.203

Общие сведения по объектно-ориентированному подходу.204

Технологии программирования.204

Технологии проектирования.205

Модели данных.206

СУБД.207

Хранилища, OLAP.210

СУБД, запросы, транзакции.210

Распределенные и параллельные системы.211

Источники для приложения 2.212

Список публикаций автора.212

СПИСОК СОКРАЩЕНИЙ.213

СПИСОК ИЛЛЮСТРАЦИЙ.213

СПИСОК ТАБЛИЦ.216

СПИСОК ЛИСТИНГОВ.216

АЛФАВИТНЫЙ УКАЗАТЕЛЬ.219

ВВЕДЕНИЕ Исторический обзор

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

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

Рассмотрим процесс взаимодействия и сближения средств программирования и баз данных. Условно его можно разделить на четыре этапа.

Первый этап. Параллельное существование взаимодействующих технологий. В технологиях программирования сменяют или надстраивают друг друга следующие парадигмы:

1. Программирование в машинных кодах и ассемблерах.

2. Структурное программирование.

3. Процедурное программирование.

4. Объектно-ориентированное программирование.

В СУБД сменяют и дополняют друг друга следующие подходы:

1. Иерархические БД

2. Сетевые БД

3. Реляционные БД

4. Семантические БД, БД «сущность-связь»

5. Объектно-реляционные и объектно-ориентированные БД.

6. Дедуктивные и интеллектуальные БД.

ИС с точки зрения разработки имеют два уровня: на верхнем уровне используется язык программирования общего назначения, который на уровне операций применяет язык работы с БД. При этом существует большое количество специализированных классов, описывающих в объектной парадигме составляющие СУБД. В настоящее время большая часть ИС строится по этому принципу.

Второй этап. Взаимное обогащение технологий. Реляционные базы данных дополняются хранимыми процедурами, третья версия языка запросов SQL наделает этот язык вычислительной полнотой, появляются объектно-реляционные и объектно-ориентированные БД (об «объектности» стандарта SQL3 см. [102]), в которых реляционные отношения дополняются отношениями наследования и агрегацией атрибутов. На данном этапе начинает свою деятельность ODMG - рабочая группа по разработке средств управления объектными данными, разработавшей ряд стандартов, в том числе языки описания интерфейсов и объектов IDL и ODL, не являющиеся полноценными языками программирования, а средством описания компонентов распределенных ИС, а также расширения объектно-ориентированных языков программирования С++, Java, Smalltalk средствами запросов, описаниями связей и типов связей.

Третий этап. Объектно-ориентированный анализ и проектирование. Его начало можно связать с разработкой диаграммы «Сущность-связь» Ченом, последующими модификациями диаграммы Рамбо, Бучем, диаграммой ОМТ и разработкой языка UML. Средства данного этапа относятся к типу CASE и предназначены для проектирования как программ, так и БД и аппаратной части ИС в рамках объектно-ориентированного описания, то есть эти средства не являются полноценными языками программирования.

Четвертый этап. Синтез технологий. Появление объектно-ориентированных БД (ООБД), языка объектных запросов OQL. На данном этапе создаются средства, позволяющие создавать программное обеспечение (ПО), сочетающее в себе свойства программ и БД. Появляются технологии, объединяющие базы данных и экспертные системы - дедуктивные и интеллектуальные БД.

Данное разделение на этапы условно, так как создатели сред разработки видят развитие своих продуктов в рамках того или иного этапа, то есть нельзя полностью разграничить этапы во времени. Кроме того, средства четвертого этапа не реализованы полностью, так как технологии БД продолжают развиваться; все более широкое применение находят системы OLAP и хранилища данных [120]. В настоящее время можно по-видимому говорить о синтезе ООП и реляционных OLTP, хотя универсальность ООП допускает его проникновение и в СУБД, построенные по другим принципам. Современное состояние СУБД, обзор и перспективы развития анализируются в работах [97, 10, 98].

Следует отметить следующих ученых и коллективы разработчиков, внесшие значительный вклад в развитие технологий; на их идеи в значительной степени опирается данная работа: Б. Страуструп (С++); О. Мадсен, Б. Мёллер-Педерсен, К Нига-ард - скандинавская школа (BETA); Э. Кодд (RM/T); М. Минский (фрейм-слот); Г. Буч, Д. Рамбо, И. Якобсон. - Rational Rose (UML); М. Аткинсон, Ф. Бансилон, Д. Де-Витт, К. Дитгрих, Д. Майер, С. Здоник (манифест ООБД); Консорциум ODMG; М. Стоунбрейкер и др. (объектно-реляционные СУБД); С. Кузнецов и др. - МАИ (алгебра); В.В. Прохоров - ИММ РАН (мультипарадигменный подход); Холстед (оценки сложности), Аббот (методика анализа и проектирования) и др. Российские ученые имеют большой опыт разработки сред программирования общего назначения (см. [7, 90], проводятся конференции, посвященные таким разработкам [105]).

Актуальность темы исследования

В настоящее время большая часть ИС являются ИС первого этапа, то есть представляют собой клиентские объектно-ориентированные надстройки над серверными БД, в которых таблицы соединены реляционными отношениями.

При появлении объектно-ориентированного программирования основной его задачей было представление программ в наиболее удобном для понимания программистов виде - иерархии классов объектов. Такое представление отчасти соответствовало способу человеческого мышления (абстракции, агрегации, систематизации), что привело к появлению объектно-ориентированного анализа и проектирования как способа изучения предметных областей для их дальнейшего описания с помощью CASE - средств (язык UML CASE средства Rational Rose). После разработки объектно-ориентированной парадигмы стиль программирования сильно изменился, однако программы продолжают описываться в виде иерархических объектных описаний, что порождает некоторую избыточность (один и тот же объект предметной области описывается объектами нескольких классов в программе). Назовем такой подход классическим объектным описанием. Кроме того, при проектировании с помощью С4Ж-средств появляется описание на языке UML. Разделение на объектно-ориентированный анализ и проектирование и объектно-ориентированное программирование представляется несколько искусственным, потому что после анализа и прои ектирования в благоприятном варианте следует этап программирования приложения. В настоящее время программы являются распределенными, что порождает проблемы с иерархическим наследованием. Программные модули могут быть использованы многократно различными приложениями, поэтому возникла необходимость в их описании на универсальных языках для того, чтобы с помощью этих описаний встраивать модули на двоичном уровне. Эти языки также являются объектно-ориентированными (языки IDL, ODL [94]). описание в UML описание /ч \

Рис. 1. Взаимоотношения между классами, описывающими объект в современных приложениях.

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

В настоящее время программное обеспечение разрабатывается с помощью различных сред разработки и функционирует, пользуясь сервисами операционных систем, виртуальных машин и серверов баз данных. В наиболее распространенном случае разработка ведется в среде, поддерживающей языки высокого уровня - объектно-ориентированные языки (Visual Studio, Delphi), данные хранятся в базах данных под управлением СУБД (SQL Server, Oracle), проектируемых с помощью CASE-средств (Рис. 2, технологии приведены для примера и их список не является исчерпывающим).

Среда разработки Язык Программное Механизм проектирования) программирования обеспечение выполнен

Рис. 2. Схема разработки и функционирования ПО

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

В схеме на Рис. 2 в явном виде присутствует разделение на программный код и данные. При этом программный код пишется с использованием объектно-ориентированных языков. Одним из принципов объектно-ориентированного программирования является объединение данных и кода, их обрабатывающего, в одном классе. На практике это приводит к существованию объектов-посредников в среде разработки для работы с БД.

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

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

Типичным примером ИС является трехуровневая система, состоящая из модулей, находящихся на сервере СУБД, сервере бизнес-логики и клиентского компьютера; спроектированная с помощью CASE-средства (Rational Rose - UML), состоящая из зарегистрированных компонентов, описанных на ODL (или IDL). На сервере СУБД база данных Oracle (или другая реляционная СУБД) со вставками Java или PL/SQL. На сервере второго уровня бизнес-логика реализуется в виде Enterpraise Java beans (или ActiveX Server). Взаимодействие с вспомогательными компонентами на других серверах осуществляется по протоколу CORBA (или dcom). Программы на сервере 2-го уровня реализованы в виде JSP или XML, клиент получает результаты в виде XML с апплетами Java.

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

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

В сфере разработки интеллектуальных информационных систем применяются семантические сети и фреймовые модели. Семантические сети являются обобщением диаграмм «сущность-связь», традиционно применяющихся при проектировании баз данных. Фреймовая модель является аналогом ООП в системах искусственного интеллекта и не имеет принципиальных отличий от ООП. Таким образом, конвергенция ООП, моделей «сущность-связь» и фреймовых моделей сделала бы более эффективной автоматизацию наукоемких предметных областей.

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

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

• Наиболее распространенные языки программирования (семейства С++: С# и Java, которые считаются будущим ООП [2]) не реализуют интересные идеи из таких перспективных языков, как Smalltalk и Beta, которые могут быть полезными при реализации ИС.

• Существует искусственное разделение между объектно-ориентированным программированием и анализом и проектированием. Иногда говорят даже об объектно-ориентированной инженерии [30]. Модели данных в анализе и проектировании являются слишком обобщенными и не содержат многих элементов объектно-ориентированных языков программирования или БД. Развитие технологий программирования опережает теорию проектирования [8]. В CASE-средствах проектирования учитываются только самые общие элементы различных технологий. Добавление в CASE технологии специфических особенностей языков программирования, относящихся к структуре данных, позволило бы преодолеть существующее разделение между объектно-ориентированным программированием и анализом и проектированием и привело к созданию более универсальных технологий программирования.

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

• В ООБД отсутствует общепринятая терминология и математическая обоснованность предложенных решений, «отсутствует какая-либо общая, повсеместно признанная точка зрения о том, что должны обеспечивать» ООБД [127]. Теоретические исследования в области ООБД особенно актуальны.

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

• Автоматизация предполагает уменьшение роли человека в функционировании системы, в то же время существуют системы, в которых человек является неотъемлемой частью, например, система дистанционного образования. В корпоративных информационных системах (КИС) человек является субъектом управленческих решений. В ООП в явном виде отсутствуют средства для описания действий человека, что проявляется и в названии ООП (в ООП существуют объекты а не субъекты). Некоторый интерес для решения этой проблемы представляют аспектно-ориентированные методы [84].

• В настоящее время происходит автоматизация различных предметных областей и становится все более необходимой разработка более универсальной модели данных, чем существующие. Существует разрыв между семантическими моделями организации данных, реляционной моделью и объектно-ориентированной. Обобщенная модель удовлетворяла бы наибольшему числу приложений. Появление объектно-ориентированных баз данных и гибридных объектно-реляционных баз данных означает проникновение объектно-ориентированного подхода в БД, однако само объектно-ориентированное программирование могло бы позаимствовать из наиболее развитых БД модели данных, что привело бы к созданию более универсальной технологии, способной разрешить кризис современных СУБД, связанный с хранением и обработкой данных сложных типов [9].

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

Цель и задачи диссертационной работы

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

1. Модели объектно-ориентированного программирования и проектирования;

2. Информационные модели БД: реляционные и объектно-ориентированные;

3. Модели распределенных приложений;

4. Модели с эволюцией структуры;

5. Информационные модели искусственного интеллекта: семантические и фреймовые.

В рамках диссертационного исследования были решены следующие задачи:

1. Объединение парадигм и формирование единого понятийного аппарата для разработки обобщенной модели данных. Разработка методики анализа и проектирования ИС в рамках объединенной парадигмы.

2. Создание графических диаграмм для проектирования ИС в соответствии с обобщенной парадигмой и текстовых нотаций, объединяющих работу с элементами баз данных и приложений.

3. Создание математического аппарата для работы со структурными элементами ИС.

4. Разработка численных оценок сложности структур ИС.

5. Разработка средства проектирования ИС в соответствии с предложенными решениями. Обеспечение совместимости с ведущими технологиями проектирования и программирования.

Область исследования

Область исследования диссертационной работы - разработка средства проектирования ИС для автоматизации этапа логического проектирования, создание модели ИС и методологии проектирования в рамках объединенной объектно-реляционной парадигмы.

Объектами исследования являются:

• Объектно-ориентированная парадигма как теоретическая основа;

• Объектно-ориентированные языки программирования, объектно-ориентированные средства анализа и проектирования информационных систем, информационные модели реляционных, объектно-реляционных, объектно-ориентированных баз данных, семантические и фреймовые модели. Предметом исследования являются пути обобщения моделей данных технологий объекта исследований, построение оценок сложности структур и системные связи сложных объектов, разработка программного обеспечения для автоматизации проектирования ИС.

Рассмотрим особенности современных информационных систем:

• Они содержат вычислительные алгоритмы,

• Включают алгоритмы манипулирования данными,

• Управление передается с помощью механизма событий и сообщений, многопоточные системы,

• Системы динамически изменяются (отдельные модули могут обновляться без приостановления работы),

• Распределенные системы (выполняются на нескольких компьютерах),

• Имеют частично компилируемые модули (вначале выполняются на сервере, потом - на клиенте),

• Многоуровневые (данные доходят до конечного потребителя через цепочку серверов, обрабатывающих данные),

• Мигрирующие (компоненты способны перемещаться с сервера на сервер),

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

• Открытые системы с множеством взаимосвязей с окружением.

Проведем отбор технологий для анализа реализации в них ООП и для использования их в качестве источников для создания нотации, соответствующей объединенной парадигме. При отборе будем руководствоваться следующими принципами:

• Технология должна быть средством общего назначения.

• Распространенность (такая технология берется в качестве основы создаваемой).

• Современность версии.

• Реализация общих принципов ООП.

• Типичность в классе подобных технологий.

Схожие принципы построения успешной технологии приведены в работе [84]. В рамках объектно-ориентированно ориентированного проектирования выберем язык UML, его диаграмму классов возьмем за основу при проектировании графической нотации. Также интерес представляют предки диаграммы классов - диаграммы «Сущность-связь» Чена, Рамбо, Буча и ОМТ, к их особенностям будем обращаться по мере необходимости.

В качестве основных языков объектно-ориентированного программирования выберем С++, Java и С# (сравнение характеристик наиболее распространенных языков см. в [101], о происхождении сценарных языков - [83]). Эти языки являются наиболее применяемыми в настоящее время. Считается, что Java создавался как модификация С++ для реализации Интернет-приложений (сравнение С++ и Java см. в [37]), а С# - как развитие С++ и Java с дополнительными возможностями межъязыковой интеграции, распределенности и динамизма приложений. Однако не следует выбирать только один С#, потому что у его предка С++ присутствует полезное свойство, исключенное в дальнейшем из Java и С# - множественное наследование, кроме того, преимущества С#, как их излагает компания-разработчик (Microsoft) имеют в основном рекламный характер. В качестве дополнительных языков будем рассматривать Pascal (он используется в среде Delphi, популярной у разработчиков), Smalltalk [38] первый «чистый» язык программирования в рамках ООП), язык BETA [33] (с концепцией паттернов, объединяющих такие понятия как класс, функция, процедура и пакет) и CLOS (с динамизмом изменения структуры).

Из технологий разработки распределенных приложений выберем семейство технологий COM (dCOM, ActiveX Components, ActiveX Documents [36]), семейство технологий Java (аплеты, сервлеты, аглеты, JavaBeans [35], Enterprise JavaBeans), в качестве дополнения - стандарт CORBA [39], разработанный группой OMG, и языки описания объектов для совместимости компонентов на уровне кода IDL и ODL.

В рамках БД интерес представляют стандарт объектно-ориентированных баз данных группы ODMG, язык объектных запросов OQL, а также СУБД Oracle как наиболее распространенная СУБД смешанного типа (объектно-реляционная) и стандарт языка SQL 3.0, реализующий вычислительную полноту и поддерживающий объектно-ориентированные технологии. Также нужно обратить внимание на расширения С++ и Java, предложенные группой ODMG для реализации встроенных запросов.

В качестве ограничения не будем рассматривать такие технологии современных БД, как хранилища и OLAP. Не отрицая возможности объектно-ориентированного подхода в этих технологиях, отметим, что системы OLTP (быстрая обработка транзакций) стоят ближе к программам общего назначения, чем системы длительного хранения данных, что и проявилось в создании объектно-ориентированных баз данных.

Из моделей интеллектуальных информационных систем (ИИС) рассмотрим семантические сети и модель фрейм-слот.

Методика исследования

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

Научная новизна

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

1. Объединенная парадигма и соответствующая ей технология, позволяющая проектировать ИС в виде открытых динамически изменяющихся сетей паттернов внутри сетей с дуализмом сущностей и связей. Парадигма включает в себя следующие основные новые аспекты:

1.1. Изменение понятия «объект»

• Формирование объекта за счет действия различных механизмов (Отход от положения «объект = экземпляр класса»);

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

• Расширенное описание атрибутов;

1.2. Переход от понятия «класс» к «паттернам», связи общего вида.

• Именованные n-арные связи с ролями и возможностью наследования и агрегации;

• Единое описание сущностей, связей, функций - обобщенное понятие «паттерн»;

• Многоуровневое метаклассирование.

1.4. Взаимоотношение ООП со структурой программы.

• Концепция элементов программного кода как объектов и транзакций;

• Динамизм структуры программы.

1.5. Структурные ограничения - развитие виртуального наследования. 1 .б.Методика анализа и проектирования ИС в виде сети паттернов.

2. Операции над сложными объектами автоматизации - паттернами, сочетающими свойства сущностей, связей и функций.

3. Численные оценки сложности структуры ИС.

4. Алгоритм преобразования структур данных, разработанных в соответствии с объединенной парадигмой, в объектный код С++.

Практическая и теоретическая ценность, внедрение

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

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

Практическое значение имеет созданное средство автоматизированного проектирования «Patterns», поддерживающее графическое проектирование ИС, автоматическую генерацию кода в текстовой нотации и кода на языке С++ и оценок сложности структуры ИС, позволяющее проектировать и анализировать приложения и базы данных в рамках единого подхода. Графическая диаграмма модифицирует диаграмму классов UML, а текстовая нотация вводит дополнительные элементы в язык С++. Таким образом, сохраняется преемственность с лидирующими технологиями в области проектирования программного обеспечения.

Результаты работы внедрены и используются в Свердловском предприятии вычислительной техники и информатики (средство проектирования Patterns используется при анализе и проектировании программных комплексов) и ГОУ ВПО "Уральский государственный технический университет" (учебный процесс специальности «Информационные системы в технике и технологиях» по дисциплинам «Управление данными» и «Проектирование информационных систем», г/б НИР 3334 «Создание CASE-средств проектирования распределенных информационных систем»).

Результаты, выносимые на защиту, авторский вклад

1. Объединенная парадигма, включающая элементы ООП, реляционных баз данных, семантических сетей и фреймов. Методика проектирования ИС.

2. Графические диаграммы и текстовые нотации, позволяющие проектировать ИС в виде структур распределенных сетей паттернов.

3. Операции над паттернами для возможности явной реализации объектных алгебр при проектировании ИС.

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

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

Достоверность и обоснованность работы

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

Апробация результатов работы, публикации.

Основные научные результаты, полученные в ходе диссертационного исследования, докладывались и обсуждались на следующих конференциях и выставках: III, IV, V отчетных конференциях молодых ученых УГТУ-УПИ (Екатеринбург, 2002, 2003), межрегиональных форумах «Приборостроение» (Екатеринбург, 2002, 2003), всероссийской научно-технической конференции «Радиовысотометрия-2004» (Каменск-Уральский, 2004), конференции, посвященной 50-летию радиотехнического образования на Урале, международной научно-практической конференции «Связь-пром 2005». По теме диссертации опубликовано 10 научных работ, из них 6 статей, в том числе 1 - в издании, рекомендуемом ВАК.

Структура диссертации

Диссертация состоит из введения, пяти глав, заключения, грех приложений, библиографии и оглавления; всего 219 стр. (основной текст - 172 стр.), 73 рисунка, 24 таблицы, 71 листинг программ. Список литературы включает 150 наименований. Первая глава содержит анализ объектов исследования, рассматриваются возможности объединения моделей объектно-ориентированных технологий, моделей интеллектуальных систем, баз данных. Рассматриваются системы с эволюцией структуры и распределенные системы. Во второй главе приводятся теоретические положения объединенной парадигмы, анализ и проектирование ИС, вид ИС в соответствии с объединенной парадигмой. Третья глава содержит описание графической и текстовой нотации для разработанной парадигмы, приводится формальное определение понятия «паттерн». В четвертой главе приводится математический аппарат для описания раз

Похожие диссертационные работы по специальности «Системы автоматизации проектирования (по отраслям)», 05.13.12 шифр ВАК

Заключение диссертации по теме «Системы автоматизации проектирования (по отраслям)», Добряк, Павел Вадимович

Выводы

В данной главе рассмотрено средство проектирования ИС "Patterns", реализующее идеи объединенной парадигмы. На примере паттерна «административная единица» и абстрактном примере показывается, что предложенная текстовая нотация имеет преимущества по сравнению с кодом С++ по длине кода и числу строк, а также по простоте (количеству сущностей). Сокращение числа сущностей (до 44%), достигаемое за счет единого графического представления паттерна, соответствующего композиции классов С++, упрощает проектирование структуры класса, а значит, сокращает время проектирования. Приводятся схемы алгоритма, преобразующего структуру паттернов в объектную структуру С++.

180

Заключение

Мы рассмотрели полезность нескольких элементов объединенной парадигмы при проектировании паттерна «Административная единица» (см. Табл. 23).

Табл. 23. Использование элементов объединенной парадигмы для паттерна «Административная единица»

Элементы объединенной парадигмы Использование

Гибридная рекурсивная связь Отношение подчинения административных единиц

Метаклассы Типы административных единиц

Расширенные объекты Адрес

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

Аналог рекурсивных запросов Формирование адреса

Алгебраические операции Объединение административных единиц

Механизмы обеспечения динамизма структуры и открытости системы Использование общей БД в различных ИС

Также рассчитана сложность разработанной системы по введенным оценкам сложности паттерна.

Паттерн «Административная единица» находит широкое применение в системах, использующих пространственные БД. Кроме того, паттерны с аналогичной структурой могут использоваться в системах с иерархиями и взаимосвязями между узлами (компонентные технические системы с различными видами взаимосвязей, системы менеджмента персонала и т.д.).

Список литературы диссертационного исследования кандидат технических наук Добряк, Павел Вадимович, 2007 год

1. История технологий и прогнозы

2. Андреев А. Эволюция современных языков программирования. // Мир ПК, №3, 2001.

3. Бобровский С. История объектно-ориентированного программирования. http://www.computer-museum.ru/histsoft/oophist.htm.

4. Грей Дж. Управление данными: Прошлое, Настоящее и Будущее. // Системы управления базами данных, №3, 1998.

5. Зильбершац А., Здоник С. Стратегические направления в системах баз данных // Системы управления базами данных, №4, 1997.

6. Иванов А. Г. Объектно-ориентированные системы: состояние и перспективы. Москва, 1992.

7. Ким В., Гарза Ж, Грэхэм Б. Пути развития объектно-реляционных технологий баз данных // Системы управления базами данных, №4, 1996.

8. Когаловский М.Р. Очерк истории отечественных технологий баз данных. Отрывок из книги // Открытые системы, №01, 2002.

9. Кузнецов С. Будущие направления исследований в области баз данных: десять лет спустя, 1999г. http://www.citforum.ru/database/articles/future01.shtml

10. Кузнецов С. Крупные проблемы и текущие задачи исследований в области баз данных, http://citforum.urc.ac.ru/database/articles/problems/

11. Ю.Кузнецов С. Развитие постреляционных СУБД.http://www.csu.ac.ru/osp/dbms/1995/02/source/dbmsin.html

12. Кузнецов С. Три манифеста баз данных: ретроспектива и перспективы. Доклад на международной научной конференции "Базы данных и информационные технологии XXI века", http://www.citforum.ru/database/articles/manifests/

13. Кузнецов С. Что было, то и теперь есть, и что будет, то уже было., 1999. http://fizmat.vspu.ru/citforum/database/articles/oozinder.shtml

14. Кузнецов С.Д. Тенденции в мире систем управления базами данных. http://www.citforum.ru/database/articles/art25.shtml

15. Концептуальные основы технологий

16. Гуэррини Дж., Мерло И. Расширение триггерами модели объектов стандарта ODMG. IEEE Trans. Know, and Data Eng. T 16 №2 с 170-188.

17. Когаловский M. P. Абстракции и модели в системах баз данных. // Системы управления базами данных, №04-05, 1998.

18. Лапшин А. Свойство неизменности ООП под микроскопом. // Открытые систе мы №11, 2002

19. Легалов А. О стрельбе по множественному наследованию. // Открытые системы №5-6, 2001 г.

20. Легалов Л. Мультиметоды и парадигмы. // Открытые системы №05, 2002.

21. Люри Дж., Мансур Ш. Преодоление иерархий. Windows IT Pro // Издательство "Открытые системы" (www.osp.ru), 24.10.2001.

22. Прохоров В.В. Концепция иерархических языков. // Тезисы докладов молодеж ной конференции «Проблемы теоретической и прикладной математики», 1992. Екатеринбург: УрО РАН, 1993. - с. 88-89.

23. Прохоров В.В. О микроконтекстном подходе к построению языков представления знаний и человеко-компьютерного взаимодействия. // Известия РАН. Теория и системы управления, 1997, №5 (ISSN 1064-2307). с. 5-16.

24. Прохоров В.В. О мультиметафорном подходе к построению языков и программных средств. // Труды международного семинара «Искусственный интеллект в образовании», часть II. Казань: КГТУ, 1996. с. 49-54.

25. Смит Дж., Смит Д. Абстракции баз данных: агрегация и обобщение. // Системы управления базами данных, №02, 1996.

26. Труб И. О проблемах множественного наследования. // Открытые системы №2, 2001 г.

27. Общие сведения по объектно-ориентированному подходу

28. Грехем И. Объектно-ориентированные методы. Принципы и практика. 3-е издание.: Пер. с. англ. М.: Издательский дом «Вильяме», 2004. - 880 е.: ил. -Парал. тит. англ.

29. Иванов А.Г., Карпова А.В., Кремер Ю.Е., Семик В.П. Объектно-ориентированная среда программирования. Системы и средства информатики. -М.: Наука, вып.З, 1993.

30. Иванов А.Г., Пятницкий А.А., Филинов Ю.Е. Объектно-ориентированный подход. Технологии программирования. Сборник трудов ИПИ РАН. 1993г.

31. Крикориан X. Введение в объектно-ориентированную системную инженерию. // Открытые системы №11, 2003

32. Одел Дж. Агенты и сложные системы. // Открытые системы №10, 2002

33. Снайдер У. Проблемные типы данных. Windows IT Pro // Издательство "Открытые системы" (www.osp.ru), 24.10.2001.

34. Технологии программирования

35. Madsen O.L., Moller-Pedersen В., Nygaard К. Programming in the BETA programming language. 348p, 1993.

36. Бадд Т. Объектно-ориентированное программирование.

37. Галатенко В., Таранов А. Компонентная объектная модель JavaBeans // Системы управления базами данных №04, 1997.

38. Деннинг A. ActiveX для профессионалов СПб: Питер, 1998. - 624 е.: ил.

39. Иванов Н. С++ или Java. Сравнительный анализ объектно-ориентированных языков С++ и Java.

40. Кирютенко Ю.А., Савельев В.А. Незнакомый Smalltalk. Ростовский государственный университет, 1997.

41. Обзор архитектуры CORBA. Сервер компании Epsylon-Technologies, 1999.

42. Одинцов И. Профессиональное программирование. Системный подход. BHV-СПб 512с, 2002.

43. Смит Кони, Уильяме Ллойд. Эффективные решения. Практическое руководство по созданию гибкого и масштабируемого ПО. с англ. М.: Издательский дом «Вильяме», 2003г.

44. Швыркин И. Пролог. Генезис. // Мир ПК, №05, 2000.1. Технологии проектирования

45. Abbott R. November 1983. Program Design by Informal English Descriptions. Communications of the ACM vol. 26(11).

46. Бок К. UML 2: модель деятельности и модель действий. Journal of Object Technology, февраль 2004.

47. Буч Г. Объектно-ориентированный анализ и проектирование с примерами приложений на С++, 2-е изд./Пер. с англ. М: «Издательство Бином», СПб: «Невский диалект», 1998 г. - 560 е., ил.

48. Буч Г., Рамбо Дж., Джекобсон А. Язык UML. Руководство пользователя.

49. Вендров A.M. CASE-технологии. Современные методы и средства проектирования информационных систем. М.: Финансы и статистика, 1998. - 176с.: ил.

50. Вендров A.M. Практические рекомендации по освоению и внедрению CASE-средств. // Системы управления базами данных, №01, 1997.

51. Гома X. Проектирование систем реального времени, параллельных и распределенных приложений: Пер. с англ. М.: ДМК Пресс, 2002. - 704 е.: ил.

52. Кузнецов С. Д., Концептуальное проектирование реляционных баз данных с использованием языка UML, 2003. http://www.citforum.ru/database/articles/umlbases.shtml

53. Леоненков А.В. Самоучитель UML. СПб.: БХВ-Петербург, 2001. - 304 е.: ил.

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

55. Марков Б. Проектирование систем регистрации и анализа данных. 2002. http://www.citforum.ru/database/articles/regdata.shtml

56. Мартин, Р.С. Быстрая разработка программ: принципы, примеры, практика. : Пер. с англ. М.: Издательский дом «Вильяме», 2004. - 752 с. : ил.

57. Новоженов Ю. В., Звонкин М. 3., Тимонин Н. Н. Объектно-ориентированные CASE-средства. // Системы управления базами данных №5, 1996.

58. Рэй Н. Разрешающая технология. Краеугольные камни подхода к разработке. Мир компьютерной автоматизации, 97/3

59. Фридман А.Л. Основы объектно-ориентированной разработки программных систем. М.: Финансы и статистика, 2000. - 192 е.: ил.

60. Харрингтон Д. Проектирование объектно-ориентированных баз данных: Пер. с англ. М.: ДМК Пресс, 2001. - 272 е.: ил.

61. Якобсон И., Кристиансон М., Костантайн Я. Метод OOSE: подход, управляемый видами использования, http://www.math.rsu.ru/smalltalk/usecase.ru.html1. Модели данных

62. Atkinson М, Bansilhon F, DeWitt D, Dittrich К, Maier D, Zdonik S. The Object-Oriented Database System Manifesto // 1st Int. Conf. Deductive and Object-Oriented Databases, Kyoto, Japan, Dec. 4-6, 1989

63. Codd, E.F. "Extending the Relational Database Model to Capture More Meaning." IBM Research Report RJ2599 (August 6th, 1979). Republished in ACM Transactions on Database Systems 4(4), December 1979.

64. Date, C.J. and Hugh Darwen. Foundation for Object/Relational Databases: The Third Manifesto. Reading, Mass.: Addison-Wesley, 1998.

65. Аткинсон M., Бансилон Ф., ДеВитт Д., Дитрих К., Майер Д., Здоник С. Манифест систем объектно-ориентированных баз данных. // Системы управления базами данных, №4, 1995.

66. Башмаков А.И., Башмаков И.А. Интеллектуальные информационные технологии: Учеб. пособие. М.: Изд-во МГТУ им. Н.Э. Баумана, 2005. - 304 е.: ил.

67. Гаскаров Д.В. Интеллектуальные информационные системы. Учеб. для вузов. -М.: Высш. шк., 2003.-431 с: ил.

68. Дейт К. Дж, Дарвен Хью. Основы будущих систем баз данных. Третий манифест 2004г.

69. Кодд Э. Ф. Расширение реляционной модели для лучшего отражения семантики. // Системы управления базами данных, №5, 1996.

70. Кузнецов С. Третий манифест Дейта и Дарвена. // Открытые системы №04, 2000.

71. Кузнецов С. Третий манифест Дейта и Дарвена: немного формализма // Открытые системы №07-08, 2000.

72. Лыу Дык Кхам. Некоторые расширения в теории нечетких реляционных баз данных. Диссертация на соискание ученой степени кандидата технических наук. Санкт-Петербург, 2003.

73. Никитин В.И. Методика представления слабоструктурированных данных в реляционных СУБД. Диссертация на соискание ученой степени кандидата технических наук. Тула, 2003.

74. Полтавцева Н.А. Интеграция объектных систем обработки информации и реляционных серверов. Диссертация на соискание ученой степени кандидата технических наук. Тверь, 2003.

75. Чен П. Модель "сущность-связь" шаг к единому представлению о данных. // Системы управления базами данных, №3, 1995.

76. Шекхар Ш., С. Чаула С. Основы пространственных баз данных./Пер. с англ. -М.: Кудиц-Образ, 2004. 336 с.1. СУБД

77. C.J. Date. When's an extension not an extension? Intelligent Enterprise, June 1, 1999, Volume 2, Number 8.

78. Zdonik S. Directions in Object-Oriented Databases // COMPSAC'89 13th Annu. Int. Comput. Software and Appl. Conf., Orlando, Fla, Sept. 20-22, 1989.- 200

79. Андреев A. M., Березкин Д. В., Кантонистов Ю. А. Выбор СУБД для построения информационных систем корпоративного уровня на основе объектной парадигмы. // Системы управления базами данных, №04-05, 1998.

80. Андреев А., Березкин Д., Самарев Р. Внутренний мир объектно-ориентированных СУБД//СУБД март2001, сс. 47-57, М: «Открытые системы», 2001.

81. Аносов А. Критерии выбора СУБД при создании информационных систем. 2001.

82. Багуи С. Объектно-ориентированные базы данных: достижения и проблемы. // №03 (95) 2004. сс. 12-18 М: «Открытые системы», 2004.

83. Богатырев Р. Природа и эволюция сценарных языков // Мир ПК, №11, 2001.

84. Богданов Н. К. Аспектно-ориентированные методы в управлении информационными потоками баз данных ДП АСУТП, "Автоматизация в промышленности", №9 2003.

85. Вейд А. Стандарты объектных запросов. // Системы управления базами данных, №04, 1996.

86. Винокуров JI. Л., Леонтьев Д. В., Гершельман А. Ф. СУБД ADABAS основа универсального сервера баз данных // Системы управления базами данных, №02, 1997.

87. Голосов А. О. Аномалии в реляционных базах данных // Системы управления базами данных, №03, 1996.

88. Горохов Д., Чернов В. Методы организации хранения данных в СУБД. // Открытые системы, №3, 2003.

89. Григорьев Е. Объектно-ориентированная организация реляционных данных, 2003.

90. Гринев М., Кузнецов С., Фомичев А. Особенности СУБД Sedna. XML-СУБД Sedna: технические особенности и варианты использования. // Открытые системы, №8, 2004.

91. Зиндер Е.З. Проектирование баз данных: новые требования, новые подходы.

92. Злуф М.М. Query-by-Example: язык баз данных. // Системы управления базами данных, №03, 1996.

93. Калиниченко Л.А. Стандарт систем управления объектными базами данных ODMG-93: краткий обзор и оценка состояния. // Системы управления базами данных, №1, 1996.

94. Калиниченко Л.А., Когаловский М.Р. Стандарты OMG: Язык определения интерфейсов IDL в архитектуре CORBA. // Системы управления базами данных, №02, 1996.

95. Колонии Ю. Jasmine первая полномасштабная ОСУ БД.

96. Коннолли Т., Бегг К. Базы данных. Проектирование, реализация и сопровождение. Теория и практика. 3-е издание.: Пер. с англ. М.: Издательский дом «Вильяме», 2003. - 1440 е.: ил. - Парал. тит. англ.

97. Кузнецов С. Объектно-ориентированные базы данных основные концепции, организация и управление: краткий обзор. http://www.citforum.ru/database/articles/art24.shtml

98. Кузнецов С.Д. Основы современных баз данных. Объектно-ориентированные базы данных основные концепции, организация и управление: краткий обзор. http://www.citforum.ru/database/articles/art24.shtml

99. Малютин П.В. Система управления объектно-ориентированной, распределенной базы данных с сетевым принципом организации. Всероссийская межвузовская НТК студентов и аспирантов. Зеленоград, 17-18 апреля 2002: Тезисы докладов.

100. Полтавцева Н.А. Интеграция объектного подхода к созданию информационных систем с сохранением данных в реляционной СУБД. Сборник научных трудов. Тверь, издательство ТГТУ, 2000 с. 115-117.

101. Прехельт JI. Эмпирическое сравнение семи языков программирования. // Открытые системы, №12, 2000.

102. Пржиялковский В. Новые одежды знакомых СУБД: Объектная реальность, данная нам // Системы управления базами данных, №04, 1997.

103. Пуле М. Денормализация: как нарушить правила и избежать последствий. Windows IT Pro // Издательство "Открытые системы" (www.osp.ru).

104. Ред. и перевод Когаловского М. Воплощение идей SQL-99 в ведущих объектно-реляционных серверах баз данных, (подборка статей). // Открытые системы, №07-08, 1999.

105. Рузайкин Г.И. Магический кристалл баз данных. // Открытые системы, №11,2003.

106. Селезнев К., Борисов В. Визуализация семантической сети. // Открытые системы, №11, 2003.

107. Симонов М.А. Подход к созданию моделей объектно-ориентированных СУБД. Исследования по прикладной математике и информатике №24, 2003. с. 121 - 127, 158.

108. Сиротюк О.В. Задачи оптимизации проектирования логических структурI

109. ООБД. Изд-во ИПУ РАН. Труды международной конференции по проблемам управления. Москва 17-19 июня 2003.

110. Твердова О. СУБД Postgress. // Системы управления базами данных, №02, 1997.

111. Тенцер А. База данных — хранилище объектов КомпьютерПресс 8'2001.

112. Формика А. Выполнимость ограничений ООБД с множественными и пакетными атрибутами. Informational Systems х0306-4379 Т28, №3, 2003. с 213224.

113. Чемберлин Д. Анатомия объектно-реляционных баз данных. // Системы управления базами данных, №01-02, 1998.

114. Черняк Jl. Джим Мелтон о судьбе стандарта SQL. // Открытые системы, №06,2003.1. Хранилища, OLAPс

115. Барсегян А.А., Куприянов М.С., Степаненко В.В., Холод И.И. Методы и модели анализа данных: OLAP и Data Mining. СПб.: БХВ-Петербург, 2004. -336 е.: ил.

116. Использование витрин данных в учетной системе. Подготовлено: по материалам зарубежных сайтов. Перевод: Intersoft Lab 2003.

117. Коровкин С. Д., Левенец И. А., Ратманова И. Д., Старых В. А., Щавелёв Л. В. Решение проблемы комплексного оперативного анализа информации хранилищ данных, http://www.citforum.ru/database/articles/artl l.shtml

118. Кузнецов С., Артемьев В. Обзор возможностей применения ведущих СУБД для построения хранилищ данных (DataWarehouse). http://www.citforum.ru/database/kbd98/glaval5.shtml

119. Стулов А. Особенности построения информационных хранилищ. От-^ крытые системы №4, 2003.

120. Шроэк М., Зинн Д., Берг Б. Интегрированная аналитика. Как извлечь максимальную выгоду из ERP-систем. 2003. http://www.seminars.ru/bnode/105/article/1710/index.htm1. СУБД, запросы, транзакции

121. Cluet S, Delobel С, Lecluse С, Richard P. RELOOP: An Algebra Based Query Language for an Object-Oriented Database System // Data and Knowledge Eng.- 5.1990,- 333-352.

122. Kim W. Object-Oriented Databases: Definition and Research Directions // IEEE Trans. Data and Knowledge Eng.- 2, N 3.- 1990.- 327-341.

123. Wilkinson K, Lyngbaek P, Hasan W. The Iris Architecture and Implementation // IEEE Trans. Knowledge and Data Eng.- 2, N 1,- 1990.- 63-75.

124. Григорьев E. Представления идентифицируемых сложных объектов в реляционной базе данных. 2001. http://www.citforum.ru/database/articles/rxo.shtml

125. Заставной Д.А. Разработка и реализация высокоуровнего навигационного языка запросов для объектных баз данных. Диссертация на соискание ученой степени кандидата технических наук. Ростов-на-Дону, 2005.

126. Кузнецов С. "Объектны" ли объектные расширения языка SQL? 2005. http://www.citforum.ru/database/articles/sqlodmg/

127. Кузнецов С. Об основаниях ненавигационного языка запросов к объектно-ориентированным базам данных. http://www.citforum.ru/database/articles/art20.shtml

128. Кузнецов С., Чардин П. Семейство алгоритмов ARIES. Открытые системы №3, 2004.

129. Кузнецов С., Языки программирования объектно-ориентированных баз данных и оптимизация запросов. http://www.citforum.ru/database/articles/art23.shtml

130. Савушкин С. Точка зрения на ОРСУБД. 2003. http://zeus.sai.msu.ru:7000/database/articles/art23.shtml

131. Чардин П. Многоверсионность данных и управление параллельными транзакциями. http://zeus.sai.msu.ru:7000/database/articles/multiversionA сокр. версия в журнале «Открытые системы».

132. Чемберлин Д. XQuery: язык запросов XML. // Открытые системы, №01, 2003.

133. Распределенные и параллельные системы

134. Аншина М. Увлекательное путешествие с CORBA 3: по широким просторам распределенных приложений // Открытые системы, №05-06, 1999.

135. Ахтырченко К. В., Леонтьев В. В. Распределенные объектные технологии в информационных системах // Системы управления базами данных, №0506, 1997.

136. Девитт Д. Параллельные системы баз данных: будущее высоко эффективных систем баз данных // Системы управления базами данных, №02, 1995.

137. Кузнецов М. Наследование реализации в распределенных объектных системах // Открытые системы, №12, 2002.

138. Оззу М. Т., Валдуриз П. Распределенные и параллельные системы баз данных. // Системы управления базами данных, №04, 1996.

139. Пуха Ю. Объектные технологии построения распределенных информационных систем // Системы управления базами данных, №03, 1997.

140. Источники для приложения 2.

141. Люри Дж., Мансур Ш. Преодоление иерархий. //Открытые системы, 24.10.2001. http://www.osp.ru/win2000/sql/970.htm.

142. Бен Ган И. СТЕ и циклы. //Открытые системы, 27.01.2005. http://www.osp.ru/win2000/sql/newability/501 1 .htm.1. Список публикаций автора

143. Добряк П.В., Калмыков А.А. Альтернативный подход по организации структур данных в объектно-ориентированных языках. Практика приборостроения №49., 2004.-с. 76-79.

144. Добряк П.В. Объектно-ориентированные технологии в интеллектуальных информационных системах. Вестник УГТУ-УПИ №17(69), Екатеринбург, 2005. -с. 100- 105.

145. Добряк П.В., Калмыков А.А. Объектно-ориентированные технологии в интеллектуальных информационных системах. Сборник научных трудов международной научно-практической конференции «Связь-пром 2005». Екатеринбург, 2005. с. 153 - 157.

146. Добряк П.В., Калмыков А.А. Объектно-ориентированное программирование распределенных приложений. Вестник УГТУ-УПИ №20(50), Екатеринбург, 2004.-С. 175- 177.

147. Добряк П.В., Калмыков А.А. Применение диаграмм «сущность-связь» при проектировании программного обеспечения для технических систем. Практика приборостроения №27., Екатеринбург, 2004. С. 33 - 36.

148. Добряк П.В., Калмыков А.А. Развитие диаграмм «сущность-связь» при объектно-ориентированном программировании. Сборник статей научных трудов V отчетной конференции молодых ученых ГОУ ВПО УГТУ-УПИ. Екатеринбург, 2004.-С. 190-191.

149. Добряк П.В., Калмыков А.А. Объектно-ориентированная парадигма языков программирования и информационные модели БД. Сборник статей научныхтрудов IV отчетной конференции молодых ученых ГОУ ВПО УГТУ-УПИ. Екатеринбург, 2003. С. 144 - 145.

150. Добряк П.В., Калмыков А.А. Конвергенция объектно-ориентированной парадигмы языков программирования и информационных моделей баз данных. -Сборник статей научных трудов III отчетной конференции молодых ученых ГОУ ВПО УГТУ-УПИ. Екатеринбург, 2002.

151. Добряк П.В. Исследование принципов объектно-ориентированного программирования. Вестник №4 УГТУ-УПИ «Информационные технологии, системы управления и электроника». Екатеринбург, 1997 - С. 8.

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