Вестник Кольского научного центра РАН. 2016, №1.

Автоматизация синтеза баз данных системы. исследования. Для имитации используются встроенные функции и библиотека программных модулей (БИЭЗ), имитирующих представленные в КМПО процессы, ссылки (указатели) на процессы обработки данных также хранятся в БД. В ССМ применяются реляционные базы данных, которые наиболее распространены в приложениях, несмотря на наличие альтернативных принципов построения БД [8]. В качестве стандартного формата хранения данных в исследовательской версии ССМ принят формат DBF, поскольку его поддерживает используемая в настоящее время ГИС ArcInfo. Базу данных ССМ можно разделить на две части: предметно-зависимую и предметно­ независимую, структура файлов первой части постоянна и не зависит от предметной области, в которой применяется ССМ, структура файлов второй части БД определяется структурой КМПО, т. е. проведенной пользователем декомпозицией понятий и связей элементов объекта исследования. В первую часть входят базы данных основных подсистем ССМ: КМПО, ЭС и ГИС, вторую часть назовем базой данных предметной области (БДПО), ее структура синтезируется автоматически на различных этапах работы ССМ. В первых версиях ССМ БДПО была реализована в виде файловой структуры, последние версии используют идеологию сервера SQL [2]. Далее, если это не вызывает разночтений, БД будет называться каждая реляционная таблица, содержащая записи определенного типа. При разработке баз данных ССМ, кроме обычных принципов проектирования БД, ориентированных на повышение эффективности процедур поиска, были приняты меры по устранению возможных ошибок, часто вызываемых различным написанием строковых величин. Поэтому все процедуры логической обработки, поиск, сортировка и т. д. выполняются только по служебным числовым кодам, присваиваемым именам и значениям данных в ходе их ввода в компьютер. Строковые величины используются только при визуализации данных. Даже списковые данные, имеющие числовые значения, обрабатываются по такому же принципу [4]. Это дает возможность осуществлять контроль диапазонов значений величин, хранимых в полях переменной длины (далее они называются еще memo-полями [2]), не обращаясь к содержимому этих полей. Кроме того, тем самым существенно упрощается изменение языка, на котором ведется диалог с пользователем (например, переход с русского языка на английский). Ниже, кроме специально оговоренных случаев, при упоминании значения строковой величины имеется в виду соответствующий ей код, доступ к строковым данным осуществляется через специальные справочники, структура которых поясняется при описании использующих их баз. Рассмотрим структуру основных баз данных, присутствующих во всех реализациях ССМ, поскольку в каждом приложении по пожеланиям заказчика создавались дополнительные специализированные БД, включаемые обычно в БДПО. База данных концептуальной модели Одно из требований к системе моделирования состоит в обеспечении хранения модели предметной области, созданной пользователем в режиме редактирования. Назначение БД КМПО состоит в хранении и обеспечении ускоренного доступа к характеристикам элементов модели и связей между ними. Для создания БД хранения концептуальной модели в ССМ используется принцип модели сущность - связь (ER-модели) [2]. Как уже упоминалось, в КМПО имеются три множества сущностей - это множество процессов P , множество объектов O и множество данных (ресурсов) Res. Множества однотипных связей образуют отношения, заданные между объектами КМПО в явном виде: ОР, РО , и отношения, определяемые косвенно: объект - суперобъект, объект - приписанные к нему процессы, процесс - последующий процесс, данное - процессы-генераторы, данное - процессы-потребители. Наиболее удобной для хранения данных, имеющих древовидную структуру, представляется вторая нормальная форма. Установленные на КМПО иерархические и другие отношения между объектами можно отобразить в реляционной структуре в виде ключей идентификации строк таблицы. Если из атрибутов таблицы, содержащей экземпляры данных 102 ВЕСТНИК Кольского научного центра РАН 1/2016(24)

RkJQdWJsaXNoZXIy MTUzNzYz