Модели поведения ошибок функционирующего по

Принятое в эксплуатацию ПО содержит случайное число N(0) скрытых ошибок (дефектов), которые впоследствии проявляют себя в случайные моменты процессорного времени , j = 1, 2, …(наработки до отказов) и вызывают отказы отдельных программ и всего комплекса (рис. 4.4).

Рис. 4.4 – Схема функционирования ПО на стадии эксплуатации: — процессорное время, — астрономическое время; Р – работа; В — восстановление

Каждый отказ полностью восстанавливается за случайное время 1, 2,…программистом-«ремонтником», который находит ошибку и устраняет ее путем исправления алгоритма и/или текста ПО. После подобного полного «ремонта» ПО проходит статическое и/или динамическое тестирование и считается сертифицированным программным продуктом, вводимым как бы заново в условный момент времени t=0 в эксплуатацию .

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

4.3 и рис. 4.5.

Рис. 4.5 – Модели поведения числа ошибок на этапе эксплуатации ПО: — процессорное время

Первая модель базируется на оптимистической гипотезе о том, что программист-«ремонтник» при каждом восстановлении программы полностьюудаляет появившуюся ошибку и при этом не вносит новых дефектов. Тогда рано или поздно ПО станет свободным от ошибок при некотором t0, t0 ³ 0 и абсолютно надежнымв асимптотике

.

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

Указанное свойство ПО рано или поздно становиться (в рамках модели ) безошибочным и, тем самым абсолютно надежным, характерно только для программных объектов и не наблюдается у технических элементов и систем. Действительно, для технических элементов надежность всегда снижается при увеличении срока их эксплуатации, т.е. Р(t) ® 0 при t ® ¥.

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

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

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

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

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

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

Рандомно подобранные статьи с сайта:

МОДЕЛИ ПОВЕДЕНИЯ ЖЕНЩИН


Похожие статьи:

  • Понятие ошибки программы

    Введенное определение надежности ПО базируется на понятии «отказ» программы, трактуемом как наблюдаемое экспертами случайное событие (не принадлежность y…

  • Модель роста надежности

    Вероятно, самой известной моделью надежности является модель, разработанная Джелински и Морандой [7] и Шуманом [8]. Она опирается на теорию надежности…

  • Модели надежности программных комплексов

    Для прогнозирования надёжности используемого программного комплекса могут применяться различные модели надёжности. В моделях надёжности программного…

admin