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

кандидата технических наук
Кучеров, Сергей Александрович
город
Таганрог
год
2013
специальность ВАК РФ
05.25.05
цена
450 рублей
Диссертация по документальной информации на тему «Разработка и исследование моделей и метода проектирования структурно-независимых баз данных для конфигурируемых информационных систем»

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

На правах рукописи

КУЧЕРОВ Сергей Александрович

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

СИСТЕМ

05.25.05 — информационные системы и процессы

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

1 9 СЕН 2013

005533167

Таганрог - 2013

005533167

Работа выполнена в Южном федеральном университете.

Научный руководитель: Научные Консультанты:

Официальные оппоненты:

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

Доктор технических наук, профессор РОГОЗОВ Юрий Иванович.

Доктор наук, профессор БОДРОВ Владимир.

Кандидат технических наук, доцент СВИРИДОВ Александр Славьевич.

КАМАЕВ Валерий Анатольевич, доктор технических наук, профессор, Волгоградский государственный технический университет, кафедра Системы автоматизированного проектирования и поискового конструирования, заведующий кафедрой.

РОДЗИН Сергей Иванович, кандидат технических наук, Южный федеральный университет, кафедра Математического обеспечения и применения ЭВМ, профессор кафедры.

Учреждение Российской академии наук Институт программных систем им. А.К. Айламазяна РАН (ИПС им. А.К. Айламазяна РАН).

Защита состоится «04» октября 2013 г. в «14-20» часов на заседании диссертационного совета Д 212.208.25 Южного федерального университета по адресу: 347928, Ростовская обл., г. Таганрог, ул. Чехова 2, ауд. И-409.

С диссертацией можно ознакомиться в зональной библиотеке Южного федерального университета.

Автореферат разослан «03» сентября 2013 г.

Ученый секретарь диссертационного совета

Ю.А. Брюхомицкий

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

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

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

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

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

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

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

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

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

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

Объектом исследования конфигурируемые информационные системы, базы и хранилища данных.

В качестве предмета исследования в диссертации рассматриваются модели, методы, средства и способы хранения данных в информационных системах.

Для достижения сформулированной цели в диссертации были поставлены следующие основные задачи:

1. Разработать концептуальную модель структурно-независимых баз данных, включающую в себя отсутствующие в известных частных моделях баз данных механизмы манипуляции структурами пользовательских данных.

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

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

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

5. Провести проверку разработанного метода на примере получения новой структурно-независимой базы данных.

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

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

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

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

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

a. формальная модель структуры СНБД;

b. формальная модель механизмов манипуляции структурами данных в рамках структурно-независимых баз данных;

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

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

Практическую значимость имеют следующие результаты:

1. Метод проектирования структурно-независимых баз данных с учетом особенностей предметной области.

2. Структурно-независимая база данных

Основные положения, выносимые на защиту.

1. Понятие и концептуальная модель структурно-независимых баз данных.

2. Формальная модель структурно-независимых баз данных.

3. Формальные модели механизмов манипуляции данными и структурами данных в рамках структурно-независимых баз данных

4. Метод проектирования структурно-независимых баз данных на основе предложенных формальных моделей.

5. Структурно-независимая база данных как результат применения предложенного метода.

Реализация результатов работы. Результаты работы внедрены на предприятиях ООО НПП «Дейманд» и ОАО МРСК Северного Кавказа,

что подтверждается соответствующими актами. Также результаты используются в ходе продолжающихся грантов РФФИ № 12-07-00202-а и № 12-07-31190, госбюджетной НИР № 12355 и послужили основной для создания учебно-методических материалов по дисциплинам «Проектирование автоматизированных систем обработки информации и управления» и «Технологии разработки информационных систем на основе моделей», читаемых в ФГАОУ ВПО «Южный федеральный университет» для студентов специальности 230102 - Автоматизированные системы обработки информации и управления, а также для бакалавров и магистров направления 230100 - Информатика и вычислительная техника.

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

1. Мавлютовские чтения: Всероссийская молодёжная научная конференция (Уфа, 2009);

2. VII Всероссийская научная конференция молодых ученых, аспирантов и студентов «Информационные технологии, системный анализ и управление» (Таганрог, 2009);

3. Пятая международная конференция по Программному обеспечению и технологиям данных (the Fifth International Conference on Software and Data Technologies) ICSOFT 2010, (Греция, Афины, 2010)

4. Международная научно-техническая конференция «Актуальные проблемы построения информационных систем и процессов» (Таганрог, 2010)

5. VIII Всероссийская научная конференция молодых ученых, аспирантов и студентов «Информационные технологии, системный анализ и управление» (Таганрог, 2010);

6. II Международная научно-техническая конференция «Технологии разработки информационных систем» (Таганрог, 2011);

7. 6-ой весенний/летний коллоквиум молодых исследователей в области программной инженерии «SYRCoSE 2012» (Пермь, 2012);

8. III Международная научно-техническая конференция «Технологии разработки информационных систем» (Таганрог, 2012).

За цикл работ по теме диссертационного исследования в 2012 году автор удостоен стипендии Мэра города Таганрога.

Публикации. Основные результаты диссертационного исследования нашли отражение в 1 монографии, 3 статьях, опубликованных в ведущих научных журналах и изданиях, рекомендованных ВАК Министерства образования и науки РФ, в 7 статьях, опубликованных по результатам докладов на международных и всероссийских конференциях, в тезисах б докладов на всероссийских и региональных конференциях. Всего по теме диссертации имеется 17 публикаций.

Структура и объем диссертации. Диссертация состоит из введения, четырех глав, выводов, списка использованных источников (87 наименований) и приложений. Работа изложена на 123 страницах, содержит 29 рисунков, 2 таблицы и 2 приложения.

ОСНОВНОЕ СОДЕРЖАНИЕ РАБОТЫ Во введении излагается актуальность темы диссертации, ее цели, задачи, объект и предмет исследования, научная новизна, практическая значимость, апробация и результаты исследования, выносимые на защиту.

В первой главе выполнено исследование известный моделей данных и методов проектирования баз данных с точки зрения применения их в конфигурируемых информационных системах. Производится обзор существующих баз для хранения пользовательских структур данных, предложенных в работах Р. ЫасИсагш, К. А§га\¥а1, Д. Палей, Д.Б. Коваль, А. Тенцера, Е. Григорьева, Н. Банникова и других. Введено понятие структурно-независимой базы данных (СНБД) и обозначены ее особенности по отношению к обычным базам данных.

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

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

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

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

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

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

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

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

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

- Данные идентифицируются посредством ссылок в подсхему метаданных.

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

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

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

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

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

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

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

В связи с этим для решения обозначенной актуальной научной задачи требуется:

1. Разработать концептуальную модель структурно-независимых баз данных

2. Разработать формальную модель структурно-независимой базы данных.

3. Разработать метод проектирования структурно-независимых баз данных, позволяющих хранить как данные, так и структуры пользовательских данных.

4. Провести проверку разработанного метода

Концептуальная и формальная модели представлены во второй главе диссертационной работы.

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

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

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

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

Описание и молифнк-ация польтиательских структур данных

Разработчик

Рисунок 1 - Концептуальная модель структурно-независимой базы данных

Согласно предложенной концептуальной модели, представленной на рисунке 1, принципы работы СНБД могут быть описаны следующим образом:

1. Логическая модель данных предметной области, определенная по одному из классических типов, преобразуется посредством детерминированных процедур преобразования в форму ее хранения в СНБД;

2. Логический уровень СНБД наполняется соответствующими справочниками, иерархиями, ключевыми значениями и т.д.;

3. Логическая модель СНБД посредством детерминированных процедур преобразовывается в реляционную форму. Метаданные и данные распределяются по соответствующим таблицам.

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

СНБД можно разделить на четыре основных компонента:

1. Подсхема метаданных, реализуемая в виде взаимосвязанного набора реляционных таблиц в рамках СНБД;

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

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

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

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

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

Для СНБД определены следующе хранимые базовые составляющие: объекты предметной области; характеристики объектов предметной области; связи характеристик с объектами; связи объектов с объектами; экземпляры объектов; связи экземпляров объектов; данные, хранящиеся в виде значений характеристик объектов.

Можно выделить ряд базовых составляющих структуры СНБД и представить ее формализованную модель следующим образом: М = (Е, а,/., Я, V) где: Е-сущности; Л-атрибуты; ^-структура сущностей; /.-структура связей; /^-экземпляры сущностей; К-данные. Рассмотрим компоненты формализованной модели.

Сущность. Пусть существует т сущностей, которые можно идентифицировать. Тогда все сущности будут описываться следующим конечным множеством: £ = {е,.}, 1 = 1,т.

Атрибут. Пусть существует множество С областей значения: С = {с,,с2,...,с„} и множество N имен областей: = {и,,и2>...,«,}. На этих множествах можно задать соответствие Т = (С, М, являющееся типами данных, где FcCxN, г, еГ - ¡-й тип данных. Подмножество элементов соответствия Г является доменом Д, О = {£>,,02,..„ Оп |Д с}, а его имя -атрибутом Аг Следовательно, множество всех атрибутов — двойки вида А = {< а,, >}, где а, - имя домена, /, - тип данных.

Структура сущностей. Задается бинарным отношением 5 = (£, А, Т7) на множествах Е и А, с графиком отношения Р, таким, что: = = Если 3е1е Е&3а1е А, такие что от-

ношение Б содержит кортеж и, для которого /?,({/) = е,,/г2(77) = а1, то атрибут а, принадлежит сущности е,.

Структура связей. В СНБД связи между сущностями могут быть представлены следующим тернарным отношением £ = (£, А, Г), задавае-

мым на множествах Е и А, с графиком отношения Р, таким, что: ^(¿) = £,,£,с£, жг(Е) = Е\Е'^Е, тг,Щ = А\АсА, где Е' - подмножество родительских сущностей, Е" - подмножество дочерних сущностей Е", А' - подмножество ключевых атрибутов. Если Эе1,е1 е £&3я, е А, такие что отношение Ь содержит кортеж и, для которого *■,({/) = е,, 71,(4) = е,, = ак, то сущности е, - родительская сущность, е, -

дочерняя и они связаны между собой атрибутом ак (ак первичный ключ для e¡ и внешний для е;).

Экземпляры сущностей. В СНБД ввиду хранения данных в виде троек возникает необходимость дополнительно идентифицировать экземпляры сущности. Идентификация может быть представлена следующим бинарным отношением: Л = (£,/,/г), задаваемым на множествах Е и I, с графиком отношения Р, таким, что: л,(/?) = £', Е'с Е, л2(Я) = 1, где Е' - подмножество сущностей, обладающих экземплярами, I - множество всех экземпляров всех сущностей, хранимых в базе данных. Если Эе - е Е и л1(<те (Я)) = /', /'с / то для сущности eJ существует множество

/'={4} экземпляров, количеством и = |/'|. Для сущностей, о которых нет ни одной записи в СНБД, л\(К) и л2(К) равны нулю.

Данные (значения атрибутов). В СНБД данные хранятся в виде кортежей фиксированной длины и структуры, которые представлены следующим тернарным отношением: V, =(1,Л,0,Г), задаваемым на множествах I, А и Э с графиком отношения Р, таким, что: л-,(К) =/",/"с /, Я2(У) = А\ А'^А, = £>",£>"<= с, О'еС,, где I" - подмножество всех экземпляров сущностей, обладающих атрибутами типа ъ, А' - подмножество атрибутов типа Ъ множества А, Э"- подмножество активных доменов типа 1;.

Связи экземпляров сущностей. Для хранения связей между экземплярами сущностей используется тип данных С„, областью допустимых значений данных которого являются все элементы множества экземпляров С| = I. Связи фиксируются в отношении ^ в котором проекция я, (К) = 1Р,1Р с/ представляет собой подмножество 1р всех экземпляров родительских сущностей, а проекция л■,(У) = 1С,1С с/- подмножество экземпляров дочерних сущностей 1с.

Методы манипуляции данными

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

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

и селекции: 1. /' = л-2(ст£=г (Л))- получение всех экземпляров сущности еп / = {'*}> 2. А" = я-,(ст,..(,. , .^(О)- получение множества записей.

Вставка. Пусть R - исходное отношение экземпляров сущности, R'

- отношение, содержащее кортеж с новым экземпляром '»сущности е>\

V - исходное отношение, V' - отношение, содержащее кортеж с новым

значением v' атрибута принадлежащего экземпляру сущности е', тогда вставка может быть описана с помощью оператора объединения: 1. R = RvjR\R'={<enik>} - добавление нового экземпляра сущности; 2.

V = VuV',V'= {<ij,a,,v'>} - добавление значения.

Удаление. Пусть V - исходное отношение, V' - отношение, содержащее кортеж с удаляемым значением v' атрибута , принадлежащего

экземпляру сущности е'\ R - исходное отношение экземпляров сущности, R' - отношение, содержащее один кортеж с удаляемым экземпляром '»сущности е>, тогда удаление может быть реализовано с помощью оператора разности: 1. K = 2. Если (tr^ (S)) = {а,}

и Хг(<г,-,,.А-ы(У)) = {},™ R = R-R\ /?'={<е,Л>}. Методы манипуляции структурой данных

Способ, которым в СНБД обеспечивается независимость физического уровня [2], позволяет для описания методов манипулирования структурами данных использовать DML-подмножество операторов SQL

- Select, Insert, Update, Delete.

Добавление сущности (атрибута) заключается в объединения двух множеств: исходного множества Е (А) имеющихся сущностей (атрибутов), и нового множества Е' (А') добавляемых сущностей (атрибутов): £ = £и £',£'= {е',} (A = AuA',A'={<a\.,t}. >}).

Связывание сущности и атрибутов заключается в объединении двух отношений: отношения S имеющихся связей сущность-атрибут, и нового отношения S' добавляемых связей: 5 = 5и5",5'= {<е,,ау >}.

Связывание сущностей реализуется путем объединения двух отношений: исходного отношения L имеющихся связей сущность-сущность, и нового отношения L' добавляемых связей: L = Lu L',L'=\<ei,et,aJ >}.

Удаление сущности (атрибута) заключается в разности двух множеств: множества Е (А) имеющихся сущностей (атрибутов), и множества Е' (А) удаляемых сущностей (атрибутов): Е = Е-Е',Е'={е\} (A = A-A,,A,= {<a'i ,tj >}).

Удаление связи сущность - атрибут заключается в разности двух отношений: исходного отношения S имеющихся связей сущность-атрибут, и отношения S' удаляемых связей: S = S-S',S'={<e,,aj >}.

Удаление связи сущностей заключается в разности двух отношений: исходного отношения Ь имеющихся связей сущность-сущность, и отношения и удаляемых связей: 1 = 1-1',П=^епек,а) >}.

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

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

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

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

На основе математической модели метод может быть сформулирован следующим образом.

Этап первый. Построение подсхемы метаданных

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

Шаг 1. Определить способы представления множества сущностей и множества атрибутов в рамках реляционных технологий и специфицировать соответствующие таблицы логической модели. На данном шаге выполняется спецификация таблицы или группы таблиц, которая обеспечивает хранение реализаций ЕК множества сущностей и А" множества атрибутов. Допускается отличие реализаций от базовых множеств, обусловленное спецификой целей разработчика. Так, например, обе реализации могут быть преобразованы в отношения, задаваемые на искомых множествах и на множестве уникальных идентификаторов.

Шаг 2. Определить отношения реализации и /?" соответ-

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

Этап второй. Построение подсхемы данных

На данном этапе необходимо определить типы данных, которые будут использоваться для хранения значений атрибутов, а также разработать подсхему данных в виде конечного набора однотипных не связанных между собой реляционных таблиц для хранения значений атрибутов. Количество таблиц соответствует количеству используемых типов данных. Выделение отдельных таблиц на каждый тип необходимо для повышения производительности за счет упразднения процедур преобразования типов. Хранить значения целесообразно в виде троек «сущность-атрибут-значение», где первые два элемента - ссылки на записи в таблицах метаданных. Это позволяет представить структуру данных в виде разреженных матриц.

Шаг 3. В рамках заранее известной цели применения СНБД определить множество С областей допустимых значений, необходимых для хранения всевозможных данных предметных областей, а также множество N имен областей допустимых значений. Задать соответствие Т, на базе которого определяются базовые типы данных СНБД.

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

Этап третий. Формирование связей

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

Шаг 5. Определить для каждой полученной на 1-4 шаге таблицы естественные первичные ключи, при невозможности - ввести в таблицы поля с искусственными первичными ключами.

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

По результатам выполнения шагов 1-6 будет получена логическая модель СНБД, реализующей цели конкретного разработчика и предназначенная для применения в определенной им предметной области.

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

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

ванными базами данных и СНБД, которые становятся неразличимы с ростом числа обрабатываемых экземпляров сущностей.

Созданная с помощью предложенного метода структурно-независимая база данных 510В удовлетворяет следующим требованиям:

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

2. стандартная форма представления запросов;

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

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

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

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

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

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

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

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

2. Требования, которым должна удовлетворять БД для хранения данных с изменяемой структурой, позволяют объединить имеющиеся решения общим термином - структурно-независимые базы данных.

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

4. Формальная модель СНБД, соответствующая концептуальной модели и отвечающая выделенным требованиям, позволяет описывать новые, а также все известные на момент написания диссертационной работы структурно-независимые базы данных.

5. Метод проектирования СНБД на основе разработанных моделей позволяет за конечное множество шагов реализовать структурно-независимую базу данных для выбранной предметной области, отвечающую требованиям, которым должна удовлетворять БД для хранения данных с изменяемой структурой. Также метод может быть воплощен в виде CASE-средства, что в значительной мере повысит эффективность его применения.

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

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

Основные положения диссертации опубликованы в 17 работах, основными из которых являются:

Монография:

1. Рогозов Ю.И., Свиридов А.С., Кучеров С.А. Проектирование информационных систем на основе метамоделирования. Монография. Lambert Academic Publishing, Германия, 2011, ISBN 978-38465-4919-3

Статьи в ведущих научных журналах и изданиях, рекомендованных ВАК Министерства образования и науки РФ:

2. Кучеров С.А., Рогозов Ю.И., Свиридов А.С., Жибулис Ю.А. Подход к реализации БД со статической структурой на основе модели данных EAV // Известия Южного федерального университета. Технические науки. 2010. Т. 103. № 2. С. 87-92.

3. Кучеров С.А., Рогозов Ю.И., Свиридов А.С. Метод построения структурно-независимых баз данных с использованием реляционных технологий // Новые технологии, Информационные технологии. 2011. №2. С.52-59.

4. Кучеров С.А., Свиридов А.С., Шевченко О.В. Формализованная модель структурно-независимых баз данных. Структура и манипуляции // Информатизация и связь, 2011, № 3, с. 32-34.

Публикации в других изданиях:

5. Кучеров С.А. Модель данных для БД с динамически меняющимся набором сущностей и атрибутов // Мавлютовские чтения: Всероссийская молодёжная научная конференция: сб.тр. в 5 т. Том 3/ Уфимск. гос. авиац. техн. ун-т . - Уфа: УГАТУ, 2009. - с. 57-59.

6. Кучеров С.А. Оценка производительности статистической структуры БД // Сборник трудов VII Все-российской научной конференции молодых ученых, аспирантов и студентов «Информационные технологии, системный анализ и управление».- Таганрог: Изд-во ТТИ ЮФУ, 2009- С. 13 8-141.

7. Youri I. Rogozov, Alexander S. Sviridov, Sergey A. Kutcherov, Wladimir Bodrov. Purpose-driven approach for flexible structure-independent database design // Proceedings of the Fifth International Conference on Software and Data Technologies, ICSOFT 2010, Volume 1, p.356-362

8. Кучеров С.А. Структурно-независимая база данных S1DB для web-ориентированных систем автоматизированной разработки информационно-справочных систем // Сборник материалов «Не-деля науки 2010» т.2. - Таганрог: Изд-во ТТИ ЮФУ. 2009. - стр. 65-67.

9. Рогозов Ю.И., Свиридов А.С., Кучеров С.А. Способ формального представления метамоделей // АКТУАЛЬНЫЕ ПРОБЛЕМЫ ПОСТРОЕНИЯ ИНФОРМАЦИОННЫХ СИСТЕМ И ПРОЦЕССОВ: сборник статей международной научно-технической конференции. Таганрог: изд-во ТИ ЮФУ, 2010 г., с. 9-15

10. Рогозов Ю.И., Свиридов А.С., Кучеров С.А. Оценка эффективности структурно-независимой базы данных SIDB в задачах полнотекстового поиска // АКТУАЛЬНЫЕ ПРОБЛЕМЫ ПОСТРОЕНИЯ ИНФОРМАЦИОННЫХ СИСТЕМ И ПРОЦЕССОВ: сборник статей международной научно-технической конференции. Таганрог: изд-во ТИ ЮФУ, 2010 г., с. 196-199

11.Кучеров С.А. Проблемы разработки баз данных для хранения слабоструктурированной информации // Сборник трудов VIII всероссийской научной конференции молодых ученых, аспирантов и студентов «Информационные технологии, системный анализ и управление».- Таганрог: Изд-во ТТИ ЮФУ, 2010 с. 95-100.

12. Кучеров С.А., Свиридов А.С., Шевченко О.В. Формализованная модель структурно-независимых баз данных // Технологии разработки информационных систем: сборник материалов Международной научно-технической конференции. Том 1. - Таганрог: Изд-во ТТИ ЮФУ, 2011, с. 109-113

И.Свиридов А.С., Кучеров С.А. Технологии разработки информационных систем: сборник материалов Международной научно-технической конференции. Том 2. - Таганрог: Изд-во ТТИ ЮФУ, 2011, с. 120-124.

H.Yury Rogozov, Alexander Sviridov, Sergey Kucherov. Meta-database for the information systems development platform // Труды 6-ого весеннего/летнего коллоквиума молодых исследователей в области программной инженерии (SYRCoSE 2012), 30-31 мая 2012 г. -Пермь, Россия: ISBN 978-5-91474-019-8, 230, стр. 164 - 171.

15.Кучеров С.А. Производительность структурно-независимых баз данных. Принципы работы и оценка процедур выборки // Технологии разработки информационных систем: сборник материалов Международной научно-технической конференции. Том 2. - Таганрог: Изд-во ТТИ ЮФУ, 2012, с. 105-110

16.Кучеров С.А. СТРУКТУРНО-НЕЗАВИСИМАЯ БАЗА ДАННЫХ S1DB ДЛЯ СИСТЕМ БЫСТРОЙ РАЗРАБОТКИ ИНФОРМАЦИОННО-СПРАВОЧНЫХ СИСТЕМ. Проблемы автоматизации. Региональное управление. Связь и автоматика - ПАРУСА-2012/Сборник трудов Всероссийской научной конференции молодых ученых, аспирантов и студентов. — Геленджик: Издательство Южного федерального университета, 2012, с. 65-68

17.Кучеров С.А. МАТЕМАТИЧЕСКАЯ МОДЕЛЬ СТРУКТУРНО-НЕЗАВИСИМОЙ БАЗЫ ДАННЫХ SIDB. Проблемы автоматизации. Региональное управление. Связь и автоматика - ПАРУСА-2012/Сборник трудов Всероссийской научной конференции молодых ученых, аспирантов и студентов. - Геленджик: Издательство Южного федерального университета, 2012, с. 69-72

Текст работы Кучеров, Сергей Александрович, диссертация по теме Информационные системы и процессы, правовые аспекты информатики



МИНОБРНАУКИ РОССИИ Федеральное государственное автономное образовательное учреждение высшего профессионального образования «ЮЖНЫЙ ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ»

04201362612

а правах рукописи

КУЧЕРОВ Сергей Александрович ДИССЕРТАЦИЯ

на соискание ученой степени кандидата технических наук

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

Специальность: 05.25.05 Информационные системы и процессы

Научный руководитель Д.т.н., профессор Ю.И. Рогозов

Таганрог - 2013 г.

ОГЛАВЛЕНИЕ

ВВЕДЕНИЕ......................................................................................................................4

ГЛАВА 1. ОБЗОР СУЩЕСТВУЮЩИХ МОДЕЛЕЙ И МЕТОДОВ ПРОЕКТИРОВАНИЯ БАЗ ДАННЫХ........................................................................14

1.1. Обзор существующих моделей данных......................................................14

1.2. Обзор существующих баз для хранения пользовательских структур данных........................................................................................................................29

1.3. Обзор существующих методов разработки баз данных............................33

1.4. Постановка задачи обеспечения гибкости баз данных конфигурируемых информационных систем..........................................................................................39

1.5. Выводы по главе............................................................................................41

ГЛАВА 2. РАЗРАБОТКА МОДЕЛЕЙ СТРУКТУРНО-НЕЗАВИСИМЫХ БАЗ ДАННЫХ.......................................................................................................................45

2.1. Разработка концептуальной модели структурно-независимых баз данных 47

2.2. Разработка формальной модели структурно-независимых баз данных.. 54

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

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

2.5. Выводы по главе............................................................................................68

ГЛАВА 3. РАЗРАБОТКА МЕТОДА ПРОЕКТИРОВАНИЯ СТРУКТУРНО-НЕЗАВИСИМЫХ БАЗ ДАННЫХ...............................................................................70

3.1. Разработка концепции метода проектирования структурно-независимых баз данных..................................................................................................................70

3.2. Разработка метода проектирования структурно-независимых баз данных 72

3.2.1. Разработка методики проектирования подсхемы хранения метаданных............................................................................................................73

3.2.2. Разработка методики проектирования подсхемы хранения данных. 75

3.2.3. Разработка методики формирования связей между подсхемами

данных и метаданных...........................................................................................76

3.3. Разработка модели бизнес-процесса проектирования структурно-независимых баз данных на основе предложенного метода................................78

3.4. Выводы по главе............................................................................................82

ГЛАВА 4. РАЗРАБОТКА СТРУТКТУРНО-НЕЗАВИСИМОЙ БАЗЫ ДАННЫХ SiDB И ПРОВЕРКА ПРЕДЛОЖЕННОГО МЕТОДА ПРОЕКТИРОВАНИЯ........83

4.1. Проверка предложенного метода проектирования структурно-независимых баз данных на примере известной реализации базы данных для хранения пользовательских структур данных.......................................................83

4.2. Разработка структурно-независимой базы данных SiDB посредством предложенного метода..............................................................................................90

4.2.1. Проектирование модели структурно-независимой базы данных SIDB 90

4.2.2. Реализация структурно-независимой БД SIDB...................................94

4.3. Оценка производительности разработанной структурно-независимой базы данных SiDB.....................................................................................................96

4.4. Выводы по главе..........................................................................................104

ЗАКЛЮЧЕНИЕ...........................................................................................................105

СПИСОК СОКРАЩЕНИЙ И УСЛОВНЫХ ОБОЗНАЧЕНИЙ..............................108

СПИСОК ЛИТЕРАТУРЫ...........................................................................................109

ПРИЛОЖЕНИЕ 1. Модели баз для хранения пользовательских структур данных .......................................................................................................................................118

ПРИЛОЖЕНИЕ 2. Тексты запросов

121

ВВЕДЕНИЕ

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

В процессе разработки и эксплуатации ИСС возникают следующие ситуации:

1. На этапе исследования не удается собрать исчерпывающие сведения о предметной области;

2. Предметная область изменяется в процессе ее разработки или внедрения ИС;

3. Предметная область изменилась в процессе эксплуатации ИС.

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

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

Борьба со смягчением негативного влияния изменений предметной области в процессе разработки началась с середины 80-х годов прошлого века вместе с появлением спиральной модели жизненного цикла [3]. На текущий момент данная проблема успешно решается комплексом Agile [4] методик, таких как Scrum [5], eXtreme Programming [6] и т.д. Стоит отметить, что подобные методики могут быть успешно применены и для максимально полного извлечения сведений о предметной области, так как на первом этапе требуют лишь общего образа

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

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

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

Учитывая все вышесказанное, исследователи сходятся во мнении, что информационная система уже не может быть «товаром, отчуждаемым от производителя и покупаемым потребителем» [7], она должна быть гибким инструментом, способным эволюционировать вместе с предметной областью.

Для решения обозначенных выше проблем был предложен отдельный класс информационных систем, обладающих функциями подстройки для достижения соответствия изменяющимся условиям использования - конфигурируемые информационно-справочные системы (КоИСС). Таким системам посвящены работы Л.Лядовой, X. Гарсия и др. [8,9].

В классических информационных системах конфигурации могут подвергаться:

1. Интерфейсы, в том числе графический интерфейс пользователя (без изменения состава функциональных элементов окна приложения);

2. Правила политики безопасности.

Что фактически никак не может быть соотнесено с изменениями предметной области: высококонтрастная тема оформления или делегирование прав доступа к отдельным компонентам АРМ не решают проблемы появления нового объекта данных для хранения или изменения правил работы с существующими объектами данных.

В отличие от классических ИС, в КоИСС конфигурации могут также подвергаться:

1. Правила работы с информационными ресурсами (Бизнес-логика);

2. Структура базы пользовательских данных;

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

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

КоИСС является готовым решением, настроенным в момент поставки потребителю на соответствие ПрО, которое при необходимости может быть изменено с минимальными затратами и без потери работоспособности имеющейся конфигурации с сохранением накопленных данных. Внесением изменений занимается, как правило, команда разработчиков КоИСС, однако по мнению Г. Фишера в будущем данная задача должна лечь на плечи конечных пользователей [10]. Вручив пользователю инструменты, с помощью которых он может подстраивать систему под свои конкретные нужды, мы сможем достичь нового уровня соответствия ИСС и ПрО [11]. Таким образом, обработка изменений ПрО порождает наряду с задачами снижения стоимости сроков и

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

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

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

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

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

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

Достоинством такого варианта решения является возможность использования в своей основе любой модели данных и создание

узкоспециализированных решений. Недостатком - сложность разработки процедур автоматизированной модификации и обеспечения сохранности данных в процессе использования гибкой БД. Кроме того, возможны различного рода ситуации, приводящие к невозможности автоматизированной миграции данных и необходимости привлечения специалистов с достаточным уровнем знаний и практическим опытом в области разработки БД. Во-первых, технические знания понадобятся при возникающих критических несоответствиях между различными версиями сгенерированных структур, а во-вторых, изменение физической структуры БД влечет и изменение механизмов работы с данными, как правило ОЯМ-слоя, которые создаются программистами.

Во главу угла в КоИСС ставится гибкость, обеспечиваемая минимальными трудозатратами (производительность ИСС является важной, но не первостепенной характеристикой), поэтому вариант с динамическими реляционными структурами не является приемлемым. Альтернативным решением является статическая реляционная структура БД, изолированная от логической модели хранимых данных. В рамках данного решения предполагается создание в определенной степени универсальной БД, которая будет выступать инструментом для хранения не только пользовательских данных, но и информации о предметной области в виде ее логической модели данных.

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

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

СНБД, сохраняя достаточную производительность [21;22], обеспечивает новый уровень гибкости - работу с пользовательскими структурами данных исключительно на логическом уровне, изолированном от большинства технических нюансов, таких как триггеры, индексы и т.п., в большей степени сосредоточенном на предметной области - составе и связях между хранимыми данными, типах хранимых данных и т.д.

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

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

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

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

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

В качестве предмета исследования в диссертации рассматриваются модели, методы, средства и способы хранения данных в информационных системах.

Для достижения сформулированной цели в диссертации были поставлены следующие основные задачи:

1. Разработать концептуальную модель структурно-независимых баз данных, включающую в себя отсутствующие в известных частных моделях баз данных механизмы манипуляции структурами пользовательских данных.

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

3. Разработать метод проектирования структурно-независимых баз данных, позволяющих хранить как данные, так и структуры пользовательских данных. Метод должен позволять учитывать типизацию сущн�