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

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

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

Аннотация научной статьи по экономике и бизнесу, автор научной работы — Полесский С. Н., Карапузов М. А.

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

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

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

Экспоненциальная модель прогнозирования надежности программных средств при проектировании

Полесский С.Н.*, Карапузов М.А.** *Кафедра «Информационные технологии и автоматизированные системы»,

МИЭМ

** Открытое акционерное общество «Научно-исследовательский институт точных приборов», Россия, Москва e-mail: snp1981@yandex.ru, pinv@bk.ru

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

Немаловажным является и то, что относительная стоимость ПС в настоящее время продолжает увеличиваться и в отдельных отраслях намного превышает стоимость технических средств.

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

Оценке надежности ПС посвящены государственные и международные стандарты, например, [1, 2, 7]. Согласно [2], оценка надежности ПС представляет собой совокупность операций, включающая выбор номенклатуры показателей надежности, определение значений этих показателей и сравнение их с базовыми значениями.

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

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

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

Приведем основные этапы оценки надежности, характерные для всех методик и подходов:

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

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

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

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

5. Вычисление факторов надежности путем расчета взвешенной свертки

и и т-\

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

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

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

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

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

1 = 1ТС ' КА + 1ПС , (1)

где: 1ТС - ИО технических средств (ТС), определяется для отечественных

электрорадиоизделий (ЭРИ) по [5], для иностранных ЭРИ по [1, 6]; КА - поправочный

коэффициент, учитывающий качество производства ТС, определяется по [1, 5]; ЛПС -

ИО ПС, определяется [1, 2].

Как видно из модели (1), ИО ТС и ПС находятся на одном уровне. Самым часто используемым методом оценки надежности ПС являются модели оценки количества отказов и ИО. В каждой из них есть начальные допущения о том, как отказ появился (был обнаружен) и как он был устранен (исправлен). Наиболее простым методом оценки количества отказов является использование экспоненциальной модели.

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

/ (г) = 1 ехр(-1 г), (2)

Тогда вероятность безотказной работы:

Я(г) = ехр(-1 г), (3)

Среднее время наработки на отказ:

Т = 1/1, (4)

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

Таблица 1. Описание параметров модели экспоненциального распределения

Параметр Описание

N Общее количество сбоев

п Количество обнаруженных сбоев к времени гр

с Количество устраненных сбоев к времени гр

Nп Количество необнаруженных сбоев

Nс Количество неустраненных сбоев

п Количество отказов, произошедших к моменту времени tf

Интенсивность отказов за время tf

Будущий момент времени

Пр Количество отказов, произошедших к моменту времени гр

1р Интенсивность отказов за время гр

Текущий момент времени

Количество отказов

Рисунок 1. График зависимости интенсивности отказов от количества отказов.

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

Все распространенные виды экспоненциальных моделей [3, 4, 7] приведены в табл. 2, также представлены основные параметры моделей и начальные условия применения этих моделей (описание части параметров приведено в табл. 1).

Таблица 2. Различные виды экспоненциальных моделей

Среднее

Модель время наработки на отказ Лп Л Примечание

Общая 1/[к(Ы - с)] к1Ар/А) к'11п (А/А) Отказы идентичны

экспоненциальная по сложности и вероятности обнаружения; Интенсивность отказов напрямую зависит от количества устраненных отказов.

Ллойда-Липова 1/[к(Ы - п)] к 1 Ар/А) к'11п (Ар/А)) Интенсивность отказов напрямую зависит от количества обнаруженных отказов.

Мусы (общая) - (^/Ао)(А0- (Ы/А0)1п(Ар- Начальная

1) 1 интенсивность отказов в момент начала функционирования ПО (начало тестирования системы)

Мусы (логарифмическая) /11п(А/Л)) г1 (1/1г1/1р) Обнаружение нескольких отказов; Интенсивность отказов убывает экспоненциально.

Шумана 1/[кЗЬОС- ((МБЮС)-(с/БЬОС))] к1 к'11п (Л/А) Возможность применения при изменении объема ПО; каждый параметр нормализован для строк программного кода.

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

Примечание. В таблице принято, что к - постоянная пропорциональности, N -количество скрытых в ПО отказов, с - количество устраненных отказов, п -количество обнаруженных отказов.

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

1 = к ■ (N - с), (5)

где к - постоянная пропорциональности, зачастую зависящая от угла наклона графика отношения интенсивности отказов к количеству устраненных отказов.

Количество отказов, необходимое для достижения конечной интенсивности отказов 1, определяется следующим образом:

дп=!А,

к

Время, необходимое для достижения определяется следующим образом:

1 ( 2 > дг = 1 ■ 1п I 1 к

V f У

(6)

конечной интенсивности отказов,

Основным недостатком данной модели является то, что сбои должны быть не только обнаружены, но устранены.

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

А = к ■ (Ы-п), (8)

Формулы для Лп и Л1 аналогичны формулам предыдущей модели.

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

Общая модель Мусы также является одним из видов общей экспоненциальной модели. В данной модели используется начальная интенсивность отказов (т.е. на момент начала тестирования), А0, полученная либо путем анализа имеющей статистики отказов, либо путем расчета: А0 = Ы/к .

В этой модели интенсивность отказов после наступления п отказов может быть представлена как часть первоначальной интенсивности отказов А0:

А = А • (1 - п), (9)

где п обычно представляют как ¡л, а V - как и.

Между тем, выражение для интенсивности отказов в определенный момент времени I, выглядит следующим образом:

А„ = Ао ■ ехР

и V

(10)

где:- и = Ы/В, здесь N - число независимых отказов, а В процент снижения интенсивности отказов и обычно принимается равным 95% (т.е., 95% невыявленных до начала тестирования ПС отказов выявляются в его процессе); т - время тестирования.

Необходимо определить ожидаемое число отказов, чтобы рассчитать конечную интенсивность отказов:

N ( \

Лп=А'(Лр-Л/), (11)

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

N / \

Л=А1п А-А/), (12)

Основным недостатком модели является чувствительность к отклонению от допущений.

Логарифмическая модель Мусы имеет следующие допущения:

- некоторые отказы обнаруживаются раньше других;

- интенсивность обнаружения отказов непостоянна и убывает экспоненциально.

В этой модели, интенсивность отказов после п отказов является функцией

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

первоначальной интенсивности отказов:

1п =1 • ехр (-f • г), (13)

Выражение для интенсивности отказов в момент времени г выглядит следующим образом:

1 — 1

(14)

(1 • f • г +1)'

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

(1 ^

(15)

Dn — — • ln f

p

1

V f J

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

Dt — — • ln f

V1 1J

(16)

Большим преимуществом данной модели является отсутствие необходимости оценивать N. Поскольку значение f может быть получено на ранних этапах жизненного цикла ПС, то и модель соответственно можно использовать также на этих этапах. Недостатком модели является, как и для большинства экспоненциальных моделей, что допущения должны быть адекватны полученным данным. На деле же получается, что интенсивность обнаружения отказов не убывает экспоненциально и это подтверждает полученная статистика. Также время работы ПС не является календарным временем, что затрудняет объединение интенсивности отказов ПС и технической составляющей ПТК.

Модель Шумана идентична общей экспоненциальной модели за тем лишь исключением, что отказы нормализованы относительно количества строк программного кода (SLOC - Source Lines of Code) в определенный момент времени. Таким образом, формула (5) будет выглядеть следующим образом:

1 — к • SLOC • \—---— |, (17)

V SLOC SLOC J v ;

В выражении для Т=1/1 используется 1 полученная в (17). Выражения для Dn и Dt аналогичны выражениям для общей экспоненциальной модели.

Преимуществом модели Шумана является возможность учета объема ПС. Недостатком выступает необходимость определения SLOC, что возможно лишь на поздних этапах разработки ПС.

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

1 — a • b • exp (_b • t), (18)

где a и b получены путем итераций из нижеследущих выражений:

n

- — 1 _ exp (_b • t), (19)

n

- — a • t • exp (_b • t) + ^ t,, (20)

где i = 1,...,n; N и к используются как начальные данные для решения обоих уравнений.

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

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

Литература

1. RIAC-HDBK-217Plus (Handbook of 217PlusTM Reliability Prediction Models). Reliability Information Analysis Center, 2006.-182.

2. ГОСТ 28195-89. Оценка качества программных средств. Общие положения.

3. Майерс, Г. Надежность программного обеспечения. - М.: Мир, 1980. - 360 с.

4. Липаев В.В. Выбор и оценивание характеристик качества программных средств. Методы и стандарты. - Синтег, 2001. - 228 с.

5. Справочник «Надежность электрорадизделий». МО РФ, - 2006. - 641.

6. MIL-HDBK-217F (Notice 1, Notice 2). Reliability prediction of electronic equipment.

7. ISO/IEC 9126:1991. Information technology - Software product evaluation - Quality characteristics and guidelines for their use.

8. Власов Е.П., Жаднов В.В., Жаднов И.В. и др. Расчёт надёжности компьютерных систем: Учебное издание - К.~: Изд-во «Корншчук», 2003. - 187 с.

9. Черкесов Г.Н. Надежность аппаратно-программных комплексов.Уч.пос. -СПб:Питер,2005.-479с.

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