Научная статья на тему 'Алгоритм автоматизированного формирования структуры плоских динамических схем'

Алгоритм автоматизированного формирования структуры плоских динамических схем Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
214
50
i Надоели баннеры? Вы всегда можете отключить рекламу.
i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Алгоритм автоматизированного формирования структуры плоских динамических схем»

ThePage^DrawingScale)"

ЬосР1пХ "=GUARD(200 шш/ThePage^PageScale* ThePage^DrawingScale)" LocPinY "=GUARD(0)"

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

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

Следующим шагом в Microsoft Office Visio будет дополнение шаблонов линий новыми образцами, необходимыми при проектировании, например, шаблоном «направление движения», чтобы в дальнейшем менять форматы линий чертежа в автоматизированном режиме.

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

главное меню «Вид» открывается «окно проводника по документам», в котором с помощью контекстного меню, вызываемого правой кнопкой мыши, в папку «Узоры заливки» добавляется новый шаблон линии. В окне создания узора в строке «имя» следует записать название нового шаблона и выбрать «тип» - шаблон линии и ее «поведение» - прерывистая или плавная по образцу кнопки. Затем в папке «шаблоны линий» двойным щелчком левой кнопкой мыши открыть окно вновь созданного образца. Операция завершена.

В результате модернизации Microsoft Office Visio 2007 можно успешно применять в САПР, что значительно повышает качество проекта и уменьшает время проектирования.

Литература

1. Масуев М.А. Проектирование предприятий автомобильного транспорта. Махачкала: МФ МАДИ, 2002. 238 с.

2. Черников Б.М. Офисные информационные технологии: учеб. пособие. М.: Финансы и статистика, 2007. 400 с.

3. Джуди Лемке. Шаг за шагом - Microsoft Office Visio 2007. М.: ЭКОМ, 2008. 368 с.

Поз. Наименование помещения Площадь, м2

1 Зона уборочно-моечных работ 62,4

2 Зона диагностики 71,16

3 Зона ТО и ТР 115,44

4 Склад запасных частей 31,65

5 Участок агрегатно-механический 172,44

6 Административное помещение 10,56

7 Зона хранения автомобилей 216

УДК 519.711.3

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

И.А. Евсеенко, к.т.н. (Белорусско-Российский университет, Беларусь, г. Могилев, 327igor@rambler.ru)

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

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

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

систем и в создании отечественного специализированного программного обеспечения с простым и

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

Представление структуры математической модели в матричной форме

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

В данной работе предлагается алгоритм автоматизированного перехода от двухмерного графического представления динамической модели к матричному. Матричное представление моделей реализовано применительно к структурно-матричному методу моделирования технических систем на макроуровне [1, 2].

Формирование динамической модели осуществляется путем перемещения выбранного ЭДМ из палитры элементов на область построения динамических схем. Положение ЭДМ определяется двумя координатами. Каждый ЭДМ имеет полюсы, которые связываются между собой соединительными линиями (связями).

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

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

Матрица внешних воздействий типа потенциала - таблица, количество строк которой равно количеству инерционных элементов, а количество столбцов - количеству внешних воздействий. Заполнение каждого элемента матрицы, находящегося на пересечении ]-го столбца и 1-й строки, происходит по следующему принципу: если ]-е воздействие подводится к 1-му инерционному элементу, элемент матрицы принимает значение единицы; если направление ]-го воздействия не совпадает с направлением фазовой координаты типа потока (скорости) 1-го инерционного элемента, элемент матрицы принимает значение -1; если ]-е воздействие не приложено к 1-му инерционному элементу, элемент матрицы принимает нулевое значение.

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

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

Матрица диссипативных ЭДМ формируется аналогично матрице упругих ЭДМ.

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

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

Для трансформаторных ЭДМ, как и для фрикционных, предусмотрены матрицы трансформаторных ЭДМ, расположенных между инерционными элементами, и матрицы трансформаторных ЭДМ, расположенных между упругими и инерционными ЭДМ. Формирование матриц трансформаторных ЭДМ осуществляется по аналогии с матрицами фрикционных ЭДМ.

Заполнение матриц осуществляется в следующем порядке: инерционные элементы, внешние воздействия, фрикционные, трансформаторные, упругие, диссипативные элементы.

Правила построения динамических схем

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

• модель должна быть регулярной и без топологических вырождений [3];

• на динамической модели должны адекватно отображаться направления фазовых координат (направление передачи потока мощности);

• ЭДМ должны быть связаны друг с другом полюсами (не должно быть изолированных ЭДМ);

• необходимо соблюсти ограничения, накладываемые на взаимодействие полюсов некоторых типов ЭДМ;

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

Регулярность динамической модели подразумевает непосредственное взаимодействие инерционных элементов с безынерционными [3]. Кроме того, необходимо обеспечить отсутствие топологических вырождений в динамической модели, то есть наличие между инерционными элементами двух или более безынерционных элементов (упру-

гих, диссипативных), относящихся к одной группе.

Направления фазовых координат определяются автоматически по направлению и величине источников внешних воздействий с учетом изменения знаков скоростей трансформаторными элементами. Направления фазовых координат совпадают с направлением передачи потока мощности.

В динамической модели не должно быть разрывов между ЭДМ (изолированных ЭДМ).

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

Алгоритм автоматизированного формирования структуры динамических моделей в матричном виде

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

Каждый ЭДМ имеет свой код, необходимый для идентификации типа элемента.

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

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

Блоки 15, 16 служат для вывода сообщений о нарушениях, допущенных при построении линии связи, с описанием причины и неправильно указанных пользователем типов и номеров ЭДМ. Блоки 15 и 16 подразумевают обязательное редактирование динамической модели, то есть переход к блокам 2, 3 или 6.

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

Рассмотрим пример построения динамической модели гидромеханической трансмиссии автомобиля БелАЗ-7555 (рис. 2) в прикладном ПО 8ММ_Мвёг1 [2].

Выбор ЭДМ из библиотеки элементов и их размещение (тип, номер и координаты расположения ЭДМ; параметры, описывающие физические свойства ЭДМ) I

Указание полюса первого ЭДМ для построения соединительной линии (тип, номер и код полюса соединяемого ЭДМ; параметры, описывающие внешний вид линии (конфигурация, высота, ширина и цвет))

I ~

Указание полюса второго ЭДМ для построения соединительной линии (тип, номер и код полюса соединяемого ЭДМ)

Входные данные

.-у-----------

15

Описание ошибок,

допущенных при формировании модели

Вывод сообщения о наличии в схеме изолированных ЭДМ

Я

Установка связей между ЭДМ посредством соединительных

Редактирование динамической модели (добав ление, перемещение, копирование, вырезка, вставка и удаление ЭДМ) и параметров ее элементов

островные динамической схемы

N 14 Организация

нет вычислительного

4 ч процесса

10

Обращение к соответствующей матрице инциденций по кодам типов ЭДМ, соединяемых линией

Определение столбца и строки матрицы инциденций по номерам соединяемых ЭДМ (строка определяется номером инерционного элемента, а столбец номером безынерционного ЭДМ, соединяемых линией связи)

11

X

Определение значения заполняемо го элемента матрицы в соответствии с направлением фазовой системы координат, связанной с инерционным элементом и видом заполняемых матриц —-----------------1--------------.Т^Г

12 13

Заполнение матриц инциденций

Выходные данные

Номер линии = Номер линии + 1

Формирование структуры моделируемого объекта в матричном виде

Рис. 1

На рисунке 2 использованы следующие обозначения моментов инерции: Л1 - двигателя и насосного колеса гидротрансформатора, 32 - турбинного колеса гидротрансформатора, 13, 34 -ведущей и ведомой частей фрикционной муфты переключения соответственно, ^ - ведущей и ведомой частей диапазонной фрикционной муфты соответственно, 37 - центрального редуктора глав-

ной передачи и дифференциала, 18 - колесных редукторов и шин ведущих колес (суммарный), - автомобиля (суммарный); коэффициентов жесткости: сь с2 - входного и промежуточного валов гидромеханической передачи соответственно, с3 -выходного вала гидромеханической передачи и карданного вала между коробкой передач и центральным редуктором главной передачи, с4 - по-

1

3

6

5ММ Мос!е1 2. Программа для анализа динамических систем

Файл Вид Редактирование Выполнить Результат Помощь

& И "Ur1 üte Jt Ш Ш и А

нн

qí*

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

сэ>

Mi

nr

ГДТ

M2

Tjf

Мз

(Т/

Ф4 J

М4

Рис. 2. Динамическая модель гидромеханической трансмиссии автомобиля БелАЗ-7555

луосей (суммарный), а также с5 - суммарный коэффициент окружной жесткости шин ведущих колес; ^ - коэффициенты демпфирования дисси-пативных элементов; ц^ п - параметры трансформаторных элементов (передаточные числа и КПД); М1 - момент двигателя; М2, М3 - моменты сопротивления качению заднего и переднего мостов автомобиля; М4 - момент сопротивления воздуха и подъема автомобиля; Фк - фрикционные элементы управления; ГДТ - гидродинамический трансформатор.

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

Таблица 1

Матрица инерционных элементов

Таблица 3 Матрица фрикционов ограничения

Инерци- Упругие Диссипативные

онные элементы элементы

элементы С1 с? Сз С4 С5 Ц1 Ц2 Цз Ц4 Ц5

0 0 0 0 0 0 0 0 0 0

/2 0 0 0 0 0 0 0 0 0 0

/з 0 0 0 0 0 0 0 0 0 0

/4 0 0 0 0 0 0 0 0 0 0

/5 0 0 0 0 0 0 0 0 0 0

Л 0 0 0 0 0 0 0 0 0 0

/7 0 0 0 0 0 0 0 0 0 0

/8 0 0 0 0 0 0 0 0 0 0

Л 0 0 0 0 1 0 0 0 0 1

Таблица 4

Матрица фрикционов переключения и гидротрансформаторов

Инерционные элементы Jl J2 J3 J4 J5 J6 J7 J8 J9

/1 -1 0 0 0 0 0 0 0 0

/2 0 -1 0 0 0 0 0 0 0

/з 0 0 -1 0 0 0 0 0 0

/4 0 0 0 -1 0 0 0 0 0

/5 0 0 0 0 -1 0 0 0 0

/б 0 0 0 0 0 -1 0 0 0

/7 0 0 0 0 0 0 -1 0 0

/8 0 0 0 0 0 0 0 -1 0

/9 0 0 0 0 0 0 0 0 -1

Таблица 2

Матрица внешних воздействий, упругих и диссипативных элементов

Инерцион- Моменты Упругие Диссипативные

ные воздействия элементы элементы

элементы М1 M2 Мз М4 Cl C2 Сз С4 С5 № № № И4 Ц5

/1 1 0 0 0 0 0 0 0 0 0 0 0 0 0

/2 0 0 0 0 -1 0 0 0 0 -1 0 0 0 0

/з 0 0 0 0 1 0 0 0 0 1 0 0 0 0

/4 0 0 0 0 0 -1 0 0 0 0 -1 0 0 0

/5 0 0 0 0 0 1 0 0 0 0 1 0 0 0

/б 0 0 0 0 0 0 -1 0 0 0 0 -1 0 0

/7 0 0 0 0 0 0 1 -1 0 0 0 1 -1 0

/8 0 -1 0 0 0 0 0 1 -1 0 0 0 1 -1

/9 0 0 -1 -1 0 0 0 0 1 0 0 0 0 1

Инерционные Фрикционные элементы

элементы Ф1 Ф2 Фз ГДТ1

/1 -1 0 0 -1

/2 1 0 0 1

/з 0 -1 0 0

/4 0 1 0 0

/5 0 0 -1 0

/б 0 0 1 0

/7 0 0 0 0

/8 0 0 0 0

/9 0 0 0 0

Инерци- Упругие Диссипативные

онные элементы элементы

элементы Cl С7 Сз С4 С5 Ц1 Ц2 Цз Ц4 Ц5

/1 0 0 0 0 0 0 0 0 0 0

/2 0 0 0 0 0 0 0 0 0 0

/з 1 0 0 0 0 1 0 0 0 0

/4 0 2 0 0 0 0 2 0 0 0

/5 0 0 0 0 0 0 0 0 0 0

/б 0 0 3 0 0 0 0 3 0 0

/7 0 0 0 4 0 0 0 0 4 0

/8 0 0 0 5 0 0 0 0 5 0

/9 0 0 0 0 0 0 0 0 0 0

Таблица 5

Матрица трансформаторных элементов типа «зубчатая передача»

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

М1 - мн - Мф1

йт2 Мт + Мф1 -(Му1 + Мд1) _

м = 32 '

аю3 (Му1 + М д1 )• -Л1- Мф2

м =

'3

(М + М

аю4 _ Мф2 (Му2 + Мд2

^ = J,

)/("2 • П2 )

аюг ( Му2 + Мд2 )- Мф3

аг J,

аю6 Мфз

а

(Му3 + Мд3 )/("з • Пз )

аю, ( Му3 + М дз )-( М у4 + М д4

аг = J7

аюо (Му4 + Мд4 )• "5 • П5 - М2

аг = Js

аю9 аг

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

У("4 • П4 )

М

ф4

М

ф4

М - М,

J0

(1)

^ = »„ 1 = 19, аг 1

где Ю! - угловые скорости сосредоточенных масс; Мн=". (ю19 ю2) - момент на насосном колесе гидротрансформатора; Мт=1". (юь ю2) - момент на турбинном колесе гидротрансформатора; ^ - параметры инерционных элементов; М^, Мд - моменты в упругих и диссипативных элементах; Мфк -моменты на фрикционных муфтах; ф1 - углы поворота сосредоточенных масс.

Моменты в упругих элементах определяются по выражениям

Му1 = С1 • (ф2 - Фз • "1)'

М.,

Ау2 = С2 •(Ф4/Ч - Ф5)'

М. М.

= С3 •(Фб/Ц3 - Ф7)'

уз

у4 = С4 •(Ф7/Ч - Ф8 • "5)'

(2)

Му5 = С5 •(Ф8 - Ф9)•

Моменты в диссипативных элементах вычисляются по уравнениям

(3)

- юз • "1)'

/"2 - ю5 )'

/"з - ю7 )'

/"4 - ю8 • "

Мд5 = •(Ю8 - Ю9 ) •

В качестве граничных условий для системы (1) выступают: минимальная (юхх „¡„) и максимальная (юхх тах) угловые скорости холостого хода двигателя (угловая скорость холостого хода двигателя зависит от положения педали акселератора у и может принимать значение из интервала Юхх тт^юхх<юхх тах); момент двигателя, описываемый функцией М^^Юдаиг., у); момент сцепления ведущих колес с дорогой, представленный в виде функции Мф4=^(ф), где ф - коэффициент сцепления ведущих колес с дорогой.

Преимущества предлагаемого алгоритма формирования структуры динамических моделей

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

Простота алгоритма заключается в том, что все связи ЭДМ должен указывать пользователь. Удобство состоит в том, что при указании пользователем полюсов ЭДМ, соединяемых между собой, осуществляется проверка правил формирования динамической схемы. Таким образом, в ПО SMM_Model исключена вероятность неправильного построения схем. Кроме того, предлагаемый алгоритм не требует от пользователя соблюдения правил очередности размещения ЭДМ. Они могут быть размещены на области построения динамических схем в любой последовательности независимо от типа.

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

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

В заключение можно сделать следующие выводы.

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

Предложенный алгоритм формирования матричного представления динамических моделей

J

1

Л

6

ю

ю

ю

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

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

описание нелинейных характеристик ЭДМ, представление структуры модели в матричной форме.

Литература

1. Тарасик В.П. Математическое моделирование технических систем: учебник для вузов. Минск: ДизайнПРО, 2004. 640 с.

2. Тарасик В.П., Евсеенко И.А. Прикладное программное обеспечение для моделирования объектов макроуровня // Автоматизация и современные технологии. 2007. № 4. С. 11-18.

3. Альгин В.Б. Динамика, надежность и ресурсное проектирование трансмиссий мобильных машин. Минск: Наука и техника, 1995. 256 с.

УДК 004.65: 004.052.42

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

М.Л. Глухарев; А.П. Косаренко; А.Д. Хомоненко, д.т.н.

(Петербургский государственный университет путей сообщения, mlgluharev@yandex.ru, ale.k@mail.ru, khomon@mail.ru)

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

Ключевые слова: БД, верификация, формальные методы, ограничения целостности, тестирование, контроль ограничений целостности.

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

Тестирование и проверка ограничений целостности при проектировании и сопровождении БД являются залогом сохранности данных. Механизмам работы ограничений целостности и способам их тестирования посвящено большое число работ. К примеру, в [1] делается обзор современных методов и программных средств верификации реляционных БД. В работе [2] представлена утилита для автоматической генерации тестовых данных. Она случайным образом генерирует тестовые записи согласно критериям, заданным инженером по тестированию, и особенностям тестируемой БД. Критерии составляют схема БД, логические взаимосвязи между столбцами в таблицах, ссылочная целостность БД, количество генерируемых записей и т.д. Главной задачей утилиты является наполнение БД записями для ее (БД) последующего тестирования. Это может быть полезно, например, при проведении нагрузочного тестирования БД.

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

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

i Надоели баннеры? Вы всегда можете отключить рекламу.