Тысяча полезных мелочей    

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

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

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

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

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

Опишем модель N-версионного программирования [2] (рис. 1) в виде ГЕРТ сети (рис. 2) и рассчитаем её основные хаpaктеристики, при условии, что количество мультиверсий N = 3, а остальные параметры описаны в табл. 1.

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

Таблица 1. Хаpaктеристика операций

Ветвь

Вероятность что операция будет выполнена (pi)

Тип распределения

Параметры (мс)

(1,4)

0,85

нормальное

m=0,5

σ=0,1

(2,4)

0,85

нормальное

m=0,5

σ=0,1

(3,4)

0,85

нормальное

m=0,5

σ=0,1

(4,выход)

0,99

нормальное

m=2

σ=0,5

Рис. 1. Модель N-версионного программирования

Рис. 2. Модель N-версионного программирования в виде ГЕРТ сети

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

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

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

Рассмотрим виды входных функций:

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

Рассмотрим виды выходных функций:

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

- EOR-вход,

- IOR-вход,

- AND-вход,

- стохастический выход,

- детерминированный выход.

 

Рис. 3. Графическое обозначение входных и выходных функций ГЕРТ-сети

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

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

Рассмотрим расчет сети содержащей IOR вход и детерминированный выход рис. 4, состоящей из нескольких подсетей рис. 5.

Рис. 4. IOR-вход

Рис. 5. Произвольная подсеть с начальным узлом l и конечным узлом m

Необходимо учитывать, что j - вычисляемый IOR-вход, имеющий стохастическое начало в узле i. {l1-m1}, {l2-m2}, ..., {lN-mN} - N непересекающихся подсетей.

Пусть pij - вероятность того, что операция (i, j) будет выполнена при условии, что узел i выполнен, тогда имеем:

   (1)

Учитывая что от входа до узла 4 находится 3 непересекающиеся подсети, в данном частном случае, используя выражение (1) получим:

    (2)

Итак, воспользовавшись правилом Мейсона для замкнутых потоковых графов получим эквивалентную W-функцию [3] для этой сети:

      (3)

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

 мс      (4)

И дисперсия

 мс2      (5)

Рис. 6. Зависимость между числом мультиверсионных модулей и надежностью системы

Следует заметить, что при расчет сети содержащей IOR вход и детерминированный выход, если все подсети рис.4 представляют собой мультиверсионный модули с одинаковой надежностью, то формула (1) может быть сведена к виду

     (6)

Зависимость между числом мультиверсионных модулей и надежностью системы демонстрирует рис. 6. На оси Х обозначено количество мультиверсий, на оси Y - надежность системы для разного количества модулей с разной надежностью каждого модуля (от 30 до 80%)

Таким образом, графоаналитический метод основанный на использовании ГЕРТ сетей является перспективным, так как позволяет аналитически оценить качественные хаpaктеристики мультиверсионного ПО любой сложности без построения громоздких имитационных сред и комплексов программ. Кроме того, расчеты показали, что с увеличением числа модулей надежность системы растет, что подтверждает перспективность использования мультиверсионного подхода для повышения надежности ПО.

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

  1. Ковалёв, П.В. Определение надежности мультиверсионного программного обеспечения с использованием методов анализа сетей / П.В. Ковалёв, А. Н. Лайков, С. Н. Гриценко // Вестник СибГАУ. 2009. № 1(22) в 2 частях. Часть 2.
    с. 55-60.
  2. Algirdas Avizienis, The Methodology of
    N-Version Programming, in R. Lyu, ed itor, Software Fault Tolerance, John Wiley & Sons, 1995.
  3. Филлипс, Д., Гарсиа-Диас, А. Методы анализа сетей / Д. Филлипс, А. Гарсиа-Диас. М.: Мир, 1984.


ФАКТОРЫ, ВЛИЯЮЩИЕ НА РЕПРОДУКТИВНОЕ ЗДОРОВЬЕ ДЕТЕЙ

ФАКТОРЫ, ВЛИЯЮЩИЕ НА РЕПРОДУКТИВНОЕ ЗДОРОВЬЕ ДЕТЕЙ Статья в формате PDF 123 KB...

25 07 2026 19:30:35

ЭПИДЕМИЧЕСКАЯ БЕЗОПАСНОСТЬ ТУРИСТА

ЭПИДЕМИЧЕСКАЯ БЕЗОПАСНОСТЬ ТУРИСТА Статья в формате PDF 116 KB...

20 07 2026 13:42:24

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

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

18 07 2026 1:52:42

ЭТИКА НОВОГО ТЫСЯЧЕЛЕТИЯ

ЭТИКА НОВОГО ТЫСЯЧЕЛЕТИЯ Статья в формате PDF 211 KB...

14 07 2026 12:49:28

ПРОГНОЗИРОВАНИЕ ЭКОНОМИЧЕСКИХ ПРОЦЕССОВ

ПРОГНОЗИРОВАНИЕ ЭКОНОМИЧЕСКИХ ПРОЦЕССОВ Статья в формате PDF 124 KB...

04 07 2026 6:41:49

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

ИСЛЕДОВАНИЕ РАБОТЫ СИСТЕМЫ ПРЕДВАРИТЕЛЬНОГО ОХЛАЖДЕНИЯ ВОЗДУХА ВОЗДУХОРАЗДЕЛИТЕЛЬНОЙ УСТАНОВКИ КААР-30М В статье отражен анализ работы действующей системы предварительного охлаждения воздуха (СПОВ) воздухоразделительной установки (ВРУ) КААр-30М; выявлены основные проблемы действующей СПОВ; предложены технологические решения, которые способствуют преодолению существующих недостатков и проведен сравнительный анализ действующей и модернизированной систем по основным показателям. ...

02 07 2026 10:28:16

ИНЖЕНЕРНОЕ ОБРАЗОВАНИЕ И ТВОРЧЕСТВО

ИНЖЕНЕРНОЕ ОБРАЗОВАНИЕ И ТВОРЧЕСТВО Статья в формате PDF 112 KB...

30 06 2026 4:13:30

ТАНЦЕВАЛЬНОДВИГАТЕЛЬНАЯ ТЕРАПИЯ

ТАНЦЕВАЛЬНОДВИГАТЕЛЬНАЯ ТЕРАПИЯ В статье Жаворонковой И.А. и Некрасова А.С. «Танцевально-двигательная терапия» танец рассматривается не только как социокультурное, но и как социально-психологическое и психофизиологическое явление, как форма невер¬бальной коммуникации и самовыражения. Это приводит к возникновению нового психиатрического направления - танцевальной психотерапии, где танец используется как способ лечения. В статье анализируются основные этапы этого направления. ...

28 06 2026 10:48:33

ГАНСБУРГСКИЙ АНДРЕЙ НИКОЛАЕВИЧ

ГАНСБУРГСКИЙ АНДРЕЙ НИКОЛАЕВИЧ Статья в формате PDF 77 KB...

23 06 2026 2:42:12

ДИАЛОГ КУЛЬТУР В XXI ВЕКЕ

ДИАЛОГ КУЛЬТУР В XXI ВЕКЕ Статья в формате PDF 281 KB...

20 06 2026 13:41:24

Еще:
Поддержать себя -1 :: Поддержать себя -2 :: Поддержать себя -3 :: Поддержать себя -4 :: Поддержать себя -5 :: Поддержать себя -6 :: Поддержать себя -7 :: Поддержать себя -8 :: Поддержать себя -9 :: Поддержать себя -10 :: Поддержать себя -11 :: Поддержать себя -12 :: Поддержать себя -13 :: Поддержать себя -14 :: Поддержать себя -15 :: Поддержать себя -16 :: Поддержать себя -17 :: Поддержать себя -18 :: Поддержать себя -19 :: Поддержать себя -20 :: Поддержать себя -21 :: Поддержать себя -22 :: Поддержать себя -23 :: Поддержать себя -24 :: Поддержать себя -25 :: Поддержать себя -26 :: Поддержать себя -27 :: Поддержать себя -28 :: Поддержать себя -29 :: Поддержать себя -30 :: Поддержать себя -31 :: Поддержать себя -32 :: Поддержать себя -33 :: Поддержать себя -34 :: Поддержать себя -35 :: Поддержать себя -36 :: Поддержать себя -37 :: Поддержать себя -38 ::