Научная статья на тему 'Вероятность связности сети с аддитивной структурой'

Вероятность связности сети с аддитивной структурой Текст научной статьи по специальности «Математика»

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

Аннотация научной статьи по математике, автор научной работы — Савельев Михаил Владимирович, Аликов Алан Юрьевич, Федосеев Сергей Владимирович

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

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

Похожие темы научных работ по математике , автор научной работы — Савельев Михаил Владимирович, Аликов Алан Юрьевич, Федосеев Сергей Владимирович

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

Networks with the additive structure constructed by iterative connection to its current border sub networks of addition are considered. The probabihty of connectivity of a network is found. Methods of calculation of connectivity of number of elements in sub networks additions are developed.

Текст научной работы на тему «Вероятность связности сети с аддитивной структурой»

3. Лукьянова Л. М. Программное средство "Анализ и синтез систем целедостижения". Свидетельство о государственной регистрации программы для ЭВМ № 2008614503 от 19.09.2008. М.: ФГУ ФИПС. 2008.

4. Лукьянова Л. М. Автоматизация опорных логических процедур системного анализа организационно-технических комплексов // Науч.-техн. ведомости СПбГПУ. 2008. №3. С. 86-91.

Савельев М. В., Аликов А. Ю., Федосеев С. В. Вероятность связности сети с аддитивной структурой

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

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

В общем случае решение возможно только численными методами. Точное вычисление характеристик связности имеет экспоненциальную зависимость трудоемкости от размера, и для сетей, включающих несколько десятков узлов. требуемый объем вычислений превосходит ресурсы современных ЭВМ. Поэтому определяются оценки, базирующиеся на имитационном моделировании либо на эвристических методах по формированию путей и сечений сети [1].

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

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

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

Изучение рекуррентных сетей (радиально-кольцевой, лестничного типа и др.) [2-4] привело к разработке конструктивных точных итеративных методов расчета характеристик связностей с линейной зависимостью трудоемкости от размера (ранга) сети. Методы основаны на специальном вероятностном анализе каждой из присоединяемых подсетей. Однако трудоемкость быстро увеличивается с ростом числа т узлов подсети, и прикладное использование результатов крайне затруднено.

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

этапе. Аддитивная сеть /1-го ранга («-размер сети) п определяется посредством итеративного процесса. Задается множество подсетей Аг-го дополнения, к = 2,я, с безотказными

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

1. В каждой подсети gk выделены подмножества: {Ук[} — входных узлов, {С/,} — выходных узлов, причем |{С/А.}| = |{ Ук)|.

2. Любые два входных узла не являются смежными, то есть между ними связь отсутствует.

3. Между выходными узлами {IIк\ подсети gk и входными узлами {Ук} подсети установлено взаимно однозначное соответствие.

Начальная подсеть gt включает только подмножество выходных узлов {} и соединяющие их связи и в дальнейшем рассматривается как сеть первого ранга С, г Для построения сети к-го ранга (7, я входные узлы { Ук ,} подсети совмещаются с выходными узлами {ик1} сети {к- 1)-го ранга (7и_,. Совмещение производится согласно соответствию между подмножествами {Ук1} и {1/к]}. Выходные узлы {С/*}, присоединенные к подсети, становятся выходными узлами сети С1 к и идентифицируются как узлы к-го ранга. Надежности элементов сети С,, такие же, как у соответствующих элементов сети <7и , или подсети gk.

Сеть С, п рекуррентна, если структура всех подсетей дополнения, кроме начальной, постоянна. Подсеть (к, т) сети <71л я-го ранга, 1 < к < т < я аддитивной сети (¡к^ включает все элементы подсетей gk+v gk+2, .... £т и связи, соединяющие выходные узлы {1/к} подсети £г В соответствии с построением входными узлами подсети Окт будут узлы {Ук} (или {ик}), выходными - узлы {Ь'т\. Фактически из сети <3^ вырезается участок, начинающийся узлами к-го и заканчивающийся узлами т-го ранга.

Сеть или подсеть деформирована по входу (выходу), если она отличается от исходной номенклатурой или параметрами надежности соединений, связывающих входные (выходные) узлы. Деформированная подсеть СА(м будет замкнутой по входу (выходу) и обозначается Скт(.чк — 0) (С^ т (.уш = 0)), если любая пара входных (выходных) узлов соединяется безотказным каналом связи. Иначе исходная сеть Сд т разомкнута. Вероятность связности

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

Необходимо определить Р, л — вероятности безотказной работы (связности) аддитивной сети произвольного ранга <5, .

Для рекуррентных одномерных сетей разработан метод [2-4] для точного вычисления характеристик связности с линейной зависимостью трудоемкости от ранга я. Идея метода — замена анализа всей сети на последовательный анализ каждой из подсетей рекуррентности. Поскольку рекуррентные сети есть частные случаи сетей с аддитивной структурой, то можно сравнительно просто применить метод к аддитивным сетям.

Метод иллюстрируется на примере нахождения вероятности связности Рп рекуррентной сети С, п п-го ранга второй степени со структурой лестничного типа. Построение сети достаточно очевидно: две расположенные одна под другой "стоки" узлов, нумеруемых от 1 до л и от 1 до я соответственно, соседние узлы соединяются каналами. Обозначим: ^ = 1 - гк — вероятность отказа "вертикального" (к,к) между выходными узлами к и к подсети рекуррентности gk; цк = 1 - рк, ¿¡к =1-рк — вероятность отказа соответственно "горизонтальных" связей (к - 1 .к), (к -1,£), соединяющих входные

и выходные узлы подсети gk, к = 2, я.

Этап 1. Множество состояний сети б1л разбивается на подмножества в соответствии с разложением искомой характеристики по формуле полной вероятности по параметрам надежности каналов подсети рекуррентности Подмножества отличаются друг от друга фиксированной связью узлов /1-го и (я - 11-го ранга между собой.

Подмножества, в которых хотя бы один из узлов я-го ранга не связан с хотя бы одним узлом (я - 1 )-го ранга, априорно не удовлетворяют требованиям связности сети, и для них вероятность безотказной работы сети равна нулю. В дальнейшем такие подмножества состояний сети С, п можно не рассматривать.

В силу транзитивности понятия пути каждое из остальных подмножеств эквивалентно множеству состояний некоторой сети (п - 1 )-го ранга (/,„ ,(*). в которой между определенными выходными узлами (и - 1 )-го ранга обеспечивается дополнительная безотказная связь по пути из безотказных, согласно разложению элементов подсети gn. При этом связность сети С1л , (*) автоматически влечет связность исходной сети Обозначив через Пя, вероятность связности сети (п - 1 )-го ранга, в которой между выходными узлами существует безотказный путь, получим

Р (5 =0) = (<7 р +р д )Р .

пу п ' ^пгп гп'п л-1

Р =(5 р р +Г <7 Р +Г р <7 )Р + л ппп я^л*л пгп^п л-1

+г р р П

ппп л-1

(1)

Р=(5рр+гдр+грд)Р .+

л х ппп л7лгл пгп^п л-1

+Г Р Р Р =0).

ппп л-1 л-1

(2)

Этап 3. Существенно, что деформация затрагивает только элементы подсети gn. Поэтому для рекуррентной структуры каждой из деформированных подсетей (и - 1 )-го дополнения можно поставить в соответствие таким же образом деформированную подсеть, но уже »-го дополнения £„(*). После этого строится деформированная сеть О^ (*), то есть полученная присоединением деформированной подсети #„(*) к сети <71яНад сетями (7, (*) выполняются процедуры, описанные на этапах 1, 2. причем разложение осуществляется по параметрам надежности подсетей gn(*). Процесс заканчивается, когда новые типы деформированных сетей перестают появляться:

(3)

Этап 2. Рассматривается каждая из построенных выше сетей (л-1)-го ранга, между отдельными выходными узлами которых существует дополнительный безотказный путь, включающий узлы {£/,}. Такой путь заменяется безотказным соединением, связывающим соответствующий выходные узлы сетей (л - 1)-го ранга. Введенное соединение рассматривается в дальнейшем как элемент сети (п - 1 )-го ранга, и если он оказывается параллелен ранее сущест-вовавшему соединению, то оба соединения заменяются на безотказный.

Полученные сети (п - 1 )-го ранга являются деформированными и обозначаются С, „ ,(*). где в скобках указаны отличающиеся от исходных параметров. Искомая характеристика записывается как соответствующая линейная комбинация характеристик деформированных сетей СпА (*):

+ р р Р .(5 . =0). гпгп л-1 л-1

Этап 4. В итоге устанавливается совокупность линейных соотношений (2) и (3) между характеристиками связности одинаковым образом организованных множеств деформированных сетей соседних рангов, л-го и (п - 1)-го рангов.

Математически полученные соотношения записываются в матричной форме. Вводится вектор-столбец Рп, координатами которого являются характеристики связности деформированных сетей и-го ранга. Рп = Рп(*), ...|г, где Т—индекс транспонирования. Коэффициенты установленных на этапах 2 и 3 линейных соотношений в соответствии с упорядочностью координат вектора Рп записываются в виде матрицы перехода А\

Р =А + Р

л-Г

(4)

где Рп = \Рл, />„(*„ = 0)Г,

5„РпРп + ГпЯпРп + ÄЄ߄ Гпр„рп ЯпРп + РпЯп РпРп

л =

Этап 5. Соотношение (4) справедливо для любого п. В силу рекуррентности исходной сети элементы матриц Ак, к = 2, .... п- 1, определяются на основе матриц Ап простой заменой индексов при параметрах надежности каналов связи. Тогда

Р = АпА ,Р , = ... = АпА ,...А,РГ (5)

п п-1 п-2 п-1 2 1 ^ 7

Этап 6. Координаты начального вектора /'¡есть характеристики деформированных начальных сетей 1-го ранга, то есть подсети Их вычисления проще, чем для исходной сети и возможно непосредственно. В большом числе случаев удается еще более упростить задачу, вводя в структуру соответствующие фиктивные элементы нулевого ранга и рассматривая в качестве начальной сеть С0. Достаточно ввести в подсеть,?, связи, вероятности отказа которых будут: 50 = 1,<7|,<?| —произвольные. Итак,

1=1- 1

0,

1

Р\Р\

Обобщение метода на общий случай аддитивных сетей достаточно очевидно.

Этапы 1а, 2а. Дословно совпадают с соответствующими этапами анализа рекуррентных

сетей. В результате анализ исходной сети сводится к исследованию некоторого множества деформированных сетей (и - 1 )-го ранга.

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

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

Можно показать, что С(т) определяется из мнемонической формулы, в которой О заменяется на С(к), и О = С(1) = 1:

С(т) = (С + \)т, О = С(к), О = С(1) = 1.(6)

При т =2, 3. 4. 5.6 мощность С\т) множества всех различных деформированных сетей будет равна соответственно 2, 5, 15, 52, 203. Значения являются оценкой сверху, так как для конкретных структур сетей некоторые из типов деформаций не возникают либо не участвуют в дальнейшем анализе.

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

Этап 5а. В силу аддитивности сети операции согласно, этапам За. 4а, проводятся итеративно для сетей (п - 2)-го, (п - 3)-го,..., 2-го рангов, пока не приходим к исследованию начальной сети первого ранга.

Трудоемкость метода определяется следующим образом. Пусть к — среднее число соединений в подсетях дополнения. С(т) —средняя мощность множеств деформированных сетей. Тогда трудоемкость точного вычисления

характеристик аддитивной сети //-го ранга на основе предлагаемого метода пропорциональна произведению п*С(т)*2к. Последний

сомножитель отражает трудоемкость анализа подсети дополнения.

Если не учитывать структурных особенностей сети, то точное вычисление характеристик потребовало бы порядка 2"* операций. Использование предлагаемого метода для точного вычисления характеристик связности сетей высокого ранга позволяет уменьшить трудоем-

кость в —рг—- раз. Так как деформированные пС(т)

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

Вычисления осуществляются известными [5] методами. Для матрицы А определяются собственные значения, X,, X,,.... Хг, корни характеристического уравнения А(Х) = \кЕ- А \ = = 0 . Здесь \А\ — определитель матрицы А. Е -единичная матрица. Из построения следует, что матрица перехода А = |а | неотрицательная. а. > Оявляется минором стохастической матрицы. Для неотрицательных матриц, А > 0, справедливо [5] следующее утверждение: существует число X. > 0, которое является простым корнем неотрицательной матрицы, большее всех ее других корней. Это число является максимальным корнем матрицы и лежит в интервале, ограниченном минимальной и максимальной суммой элементов строк матрицы А.

Любая координата вектора характеристик Рп представляется в виде линейной комбинации и-х степеней корней (собственных значений) матрицы А. Коэффициенты разложения определяются из начальных условий либо по формуле Перрона [5].

Сети второй степени со структурой лестничного типа содержат условие изотропности: ^ = .у = 1 - г, <7Л = <7 = 1-/7, ^ = ? = 1 - р. Характеристические числа матрицы А есгь корни. X,, X, квадратного уравнения: X2 - (Брр + рр + грс{ + гдр)Х + яр2р2 - 0.(7)

Вероятность связности сети представляется в конечном виде:

X, -Х2

рр(к\ -А.2)

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

В случае надежных каналов. <7 << 1, .у << 1, максимальный корень близок к единице, тогда как остальные собственные числа близки к нулю. Для нашего примера с точностью порядка (5 + <7 + <7)4

X, 21 - до - 2я7<7 - 5<72 -5<72,

(8)

Х2 =5(1-2</-2<7 + <72 +<72 +5<де).

При надежных соединениях значимость максимального собственного значения в соотношениях для вычисления надежности изотропной сети быстро возрастает с увеличением ранга, тогда как остальными корнями можно пренебречь уже при ранге сети п > (5-6). Слагаемые в приближенном выражении (8) для максимального корня по сути являются вероятностями простейших сечений, нарушающих связность сети. При этом изолируются отдельные узлы или группы узлов.

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

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

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

Рекуррентная изотропная сеть п-го ранга строится из подсетей дополнения, имеющих одинаковую структуру и параметры отказа идентичных по назначению каналов связи при п > к > 1. В этом случае существенно лишь значение ранга, поэтому используются более компактные обозначения: б, = <7п, = g, Р м = = Рк+Г П_ 1+к = П4+1. Примером рекуррентной сети н-го ранга т-й степени является сеть со структурой в виде правильной решетки с квадратными ячейками размером т х п. Для такой сети подсеть g{ представляет собой последовательное соединение т узлов.

Для рекуррентной изотропной сети неравенства записываются в виде:

\п-к ( п \п-к

П;

<р,< р

Рк

' к-1

(9)

Относительная погрешность 5 есть отношение максимальной оценки к минимальной минус единица. Для надежных сетей, 1 - Рп << 1, относительная погрешность близка к абсолютной

Д = 6 =

гул

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

Рк ,п,

-1 =

(10)

= (п-к\

п.-Л-П-.п,

Упорядочим корни (собственные числа) матрицы перехода изотропной рекуррентной сети так, чтобы их величина убывала с ростом номера (Я., максимальное. второе по величине и так далее). Так как Рп, Пп есть различные координаты одного и того же вектора характеристик Рп, то они представляются в виде:

Р„ =а{к.'{ -а2Г2 +0(Ц), П„ =Ь]ХЧ +ОД).

Коэффициенты а , Ь неотрицательны. Подстановкой (11) в выражении (10) найдем, что погрешность оценок (10) будет порядка к-й степени второго корня:

А = 8 = (п-к)

ч /

(П)

•(а,62 +а2Ь\)-0

ч2А-

Ч У

Из соотношений (11) и (12) следует, что для изотропных рекуррентных сетей найденные оценки (10) вероятности связности фактически эквивалентны оценке максимального, первого, корня матрицы перехода с погрешностью Так как анализируются сети, максимальный ранг которых равен к, то получим оценки первого уровня А-го порядка.

Коэффициенты a., ¿ и корни X в формуле типа (11) не зависят от ранга сети, их значения можно оценить, исходя из вероятности связности сетей меньшего ранга. Поэтому для изотропных сетей можно повысить уровень оценки, включив в рассмотрение несколько наибольших корней матрицы перехода. Погрешность оценки /-го уровня А-го порядка в этом случае будет 0(Xf+"¡'), при малых к рост уровня оценки

не всегда ведет к увеличению точности.

Ограничимся вторым уровнем. С погрешностью 0(к3к~1) соотношения (11), записанные для характеристик сетей (к - 2)-го. (к - 1 )-го, А'-го рангов дают шесть уровней, позволяющих однозначно определить необходимые компоненты формул (11) через значения вероятностей связности сетей. Для этого достаточно перейти к эквивалентной системе соответствующих конечно-разностных уравнений второго порядка. после чего нахождение оценочной матрицы перехода А представляет чисто техническую задачу. Сохраняя принятые обозначения, получим

А=-

р р - р р

к-\ к-\ к-2 к - Рк-^к

(12)

V —

П П

-х+

Р - Р П

к-\гк ^t-l11* _q

(18)

Вероятность связности сети оценивается в конечном виде:

X, — Я-2

(19)

Я., — К-)

Собственные значения А.,. X, матрицы А есть корни уравнения:

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

Численный эксперимент был проведен в широком спектре значений 5 и ц, изменяющихся от нуля до 0,8-0.9. Ранг п и степень т сети варьировались от 5 до 100. Так как во всем диапазоне надежностей элементов зависимость Рпт от п и т при т, п >20 вырождается в чистую экспоненту с показателем, пропорциональным произведению тхп, то в качестве базового значения принято п = т- 20.

При .V« «у точность оценок очень хорошая, при л- > ц точность плохая. Многое, конечно, зависит от конкретных значений параметров надежности каналов, ранга и степени сети. Это согласуется с физическими соображениями: каждый столбец узлов играет роль фильтра, блокирующего влияние удаленных каналов на связь между данной парой узлов. В предельных случаях: когда 5 = 0 в установлении связи участвуют только узлы соседних рангов и оценка уже второго порядка дает точное значение: когда .V близко к единице, в связи участвуют узлы удаленных рангов и необходим высокий порядок оценки.

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

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

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

1. Филин Б.П. О методе экспресс-оценки

надежности и коэффициенте потенциальной

структурной неуязвимости связей в сложных системах // АиТ. № 5. С. 158-182. 1994.

2. Гадаемн В.А. Ушаков И.А. Надежность сложных информационно-управляющих систем. М.: Сов.радио, 1975.

3. Гадасин В.Л. Интерполяционный метод оценки характеристик надежности ретрансляционных сетей с однородной структурой // АиТ. 1979.№8. С. 172-179.

4. Гадасин В.А. Методы расчета структурной надежности сетей сложной конфигурации. М.: "Знание", 1984. С. 3-53.

5. Романовский В.И. Дискретные цепи Маркова. М.-Л.: Гостехиздат, 1949.

Тихомиров В.А., Котляров В.П.

Верификация программного обеспечения при интеграции

новой функциональности в существующую систему

Введение

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

Использование при интеграционном тестировании проверки на моделях (model checking) — известного подхода к верификации и тестированию программных систем — затруднено по причине отсутствия средств настройки на локальную задачу — тестирование "стыка" система / новая компонента. Если формальной модели системы нет. то ради тестирования стыка нужно потратить много усилий для их создания. Если модели системы и новой компоненты есть, то из них нужно выделить часть, которая необходима в рамках данной задачи. При этом предполагается, что система и компонента протестированы по отдельности. Это можно делать путем изменения процесса верификации, а можно создать новую модель.

Рассмотрим, каким образом можно изменить процесс верификации. При верификации компоненты отдельно от системы вызов системных функций (то есть функций, внешних для компоненты) не может быть проверен. Но если системе

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

Рассмотрим другой подход к тестированию "стыка" —создание модели. В нее необходимо включить спецификации только тех участков кода системы и интегрируемой компоненты, которые отвечают за взаимодействие и создавая таким образом частичные модели (partial specifications) системы и компоненты. Последний вариант более выигрышный, потому что не требует наличия полных моделей системы и компоненты. Именно такой подход предлагается в данной статье. Несмотря на большое количество исследований в области частичных спецификаций (обзоры можно найти в работах [1,2, 3]), до сих пор эта идея не использовалась для интеграционного тестирования ПО.

Наш подход использует в качестве языка построения моделей базовые протоколы Летичевского [4]. Этот формализм создан в Институте Кибернетики НАН Украины и предназначен для формализации поведенческих аспектов программных систем. В качестве формы записи базовых протоколов мы вслед за [5] используем MSC-диаграммы [4]. Эти диаграммы являются языком описания поведения системы в виде последовательности событий и хорошо согласуются с парадигмой базовых

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