Оценка качества и надежности системы по результатам ее исследования. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Оценка качества и надежности системы по результатам ее исследования.



 

Оценка качественных показателей программного средства

 

Методика оценки качественных показателей ПС основана на составлении метрики ПС.

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

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

 

Таблица 1

Показатели качества Сущность показателя Экспертная оценка (вес) wi Оценка, установленная экспериментом ri
       

2. Установить веса показателей wi    

3. Для каждого показателя установить конкретную численную оценку ri от 0 до 1, исходя из следующего:

0- свойство в ПС присутствует, но качество его неприемлемо;

0.5 - 1 - свойство в ПС присутствует и обладает приемлемым качеством;

1- свойство в ПС присутствует и обладает очень высоким качеством.

Возможно присвоение промежуточных значений в соответствии с мнением оценивающего лица относительно полезности того или иного свойства ПС.

4. Определить качество ПС как иерархическую взвешенную сумму весов отдельных показателей. Качество показателя = w ri i .

5. Определить среднее значение оценки качества ПС по формуле (1).

w ri i

                 ПК = i                       (1)

Общееколичество показателей

6. Представить выходные данные:

 перечень всех показателей с оценкой 0 с указанием причин такой оценки;

- гистограмму, показывающую распределение показателей по интервалам оценок;

- какие дефекты ПС обнаружены в результате анализа показателей качества.

 

Оценка надежности программного средства

 

Одной из важнейших характеристик качества программного средства является надежность.

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

Работоспособным называется такое состояние программного средства, при котором оно способно выполнять заданные функции с параметрами, установленными требованиями технического задания. С переходом в неработоспособное состояние связано событие отказа.

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

Для оценки надежности используются три группы показателей: качественные, порядковые и количественные.

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

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

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

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

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

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

Рассмотрим аналитические и эмпирические модели надежности.

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

Аналитическое моделирование надежности программного средства включает четыре шага:

¾ определение предложений, связанных с процедурой тестирования программного средства;

¾ разработка или выбор аналитической модели, базирующейся на предположениях о процедуре тестирования;

¾ выбор параметров моделей с использованием полученных данных;

¾ применение модели - расчет количественных показателей надежности по модели.

Аналитические модели представлены двумя группами: динамические и статические модели. В динамических моделях надежности программного средства поведение программы (появление отказов) рассматривается во времени. В статических моделях по явление отказов не связывают со временем, а учитывают только зависимость количества ошибок от числа тестовых прогонов (по области ошибок) или зависимость количества ошибок от характеристики входных данных (по области данных). Для использования динамических моделей необходимо иметь данные о появлении отказов во времени. Статические модели принципиально отличаются от динамических тем, что в них не учитывается время появления ошибок в процессе тестирования и не используется никаких предположений о поведении функции риска λ(t). Эти модели строятся на твердом статистическом фундаменте.

 

Модель Коркорэна

Применение модели предполагает знание следующих ее показателей:

¾ модель содержит изменяющуюся вероятность отказов для различных источников ошибок и соответственно разную вероятность их исправления;

¾ в модели используются такие параметры, как результат только N испытаний, в которых наблюдается Ni ошибок - i го типа;

¾ выявление в ходе N испытаний ошибки - i го типа появляются с вероятностью ai .

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

 

                         N 0   k Y Ni ⋅(i −1)

                  R = + i =1  N      ,                                (9)

N

где N 0 - число безотказных (или безуспешных) испытаний, выполнен-

ных в серии из N испытаний; k - известное число типов ошибок;

Yi - вероятность появления ошибок; при Ni > 0,     Yi = ai , при Ni = 0,   Yi = 0.

 

Модель Шумана

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

Предполагается, что до начала тестирования имеется Et ошибок. В течение времени тестирования τобнаруживается ε c ошибок в расчете на одну команду в машинном языке. Таким образом, удельное число ошибок на одну машинную команду, оставшихся в системе после τ времени тестирования, равно:

                 ε r = E Itt ⋅ε τ c (),                                        (10)

где It - общее число машинных команд, которое предполагается постоянным в рамках этапа тестирования.

Предполагается, что значение функции частоты отказов Z (t) пропорционально числу ошибок, оставшихся в программе после израсходованного на тестирование времени τ.

Z t () = C ⋅ε r (τ)

  где C – некоторая постоянная;

t - время работы программы без отказов.

Тогда, если время работы программы без отказа t отсчитывается от точки t =0, а τостается фиксированным, функция надежности, или вероятность безотказной работы на интервале от 0 до t, равна:

                R t (,τ) = exp{ C E [ t / It −ε c (τ)]⋅ t },                       (11)

1

                               tcp =.                                                   (12)

                       C E I t t −ε c ()τ ⎤

Нам необходимо найти начальное значение ошибок Et и коэффициент пропорциональности - C. В процессе тестирования собирается информация о времени и количестве ошибок на каждом прогоне, т.е. общее время тестирования τскладывается из времени каждого прогона

                              τ=τ τ τ1 + 2 + 3 +...+τ n .               (13)

Предполагая, что интенсивность появления ошибок постоянна и равна λ, можно вычислить ее как число ошибок в единицу времени

k

Ai

                                     ,                (14)

где Ai - количество ошибок на i -м прогоне.

Проведем расчеты применительно к учебной программе.

Например, в программе имеется It = 4381 оператор. В процессе последовательных тестовых прогонов были получены следующие данные:

 

 Выберем две точки, исходя из требования, чтобы число ошибок, найденных на интервале А ÷ В, было больше, чем на интервале 0 ÷ А За точку А возьмем 2 прогон, а за точку В - 8 прогон. Тогда ошибки, найденные на этапах тестирования на интервалах 0 ÷ А и А ÷ В, будут равны соответственно:

ε τ c (A )= 3/4381= 0,0007 ε τ c (B )= 7/4381= 0,0015.

Время тестирования на интервалах равно: τ A =13, τ B =12.

Рассчитаем интенсивности появления ошибок на двух интервалах:

λ(τ A) = 3/13 = 0,23, λ(τ B) = 7/12 = 0,58.

 

Тогда число имеющихся до начала тестирования ошибок равно:

Et 0,763 1 ошибка.

C .

Рассчитаем вероятность безотказной работы в течение времени t при

τ=35 мин. Возьмем t =60 мин

R (60,35) = exp 0,301 0,0002{     ⋅[  −0,0027 60]⋅ }≈ 0,955,

R t (,35) = exp 0,301 0,763/4381{    ⋅[ −ε c (35)]⋅ t }.

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

 

Задание на практическую работу

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

 

Практическая работа №5



Поделиться:


Последнее изменение этой страницы: 2021-09-26; просмотров: 404; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.21.34.0 (0.031 с.)