Файл: Лабораторная работа 8 определение надежности программного обеспечения по результатам тестирования и испытаний.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 05.12.2023
Просмотров: 516
Скачиваний: 14
-
тестирование проводится в несколько этапов, выявленные на конкретном этапе ошибки регистрируются, но не исправляются; -
в конце этапа рассчитываются количественные показатели надежности, исправляются найденные ошибки, корректируются тестовые наборы и проводится следующий этап тестирования; -
число ошибок в программе постоянно и в процессе корректировки новые ошибки не вносятся; -
до начала тестирования имеется
ошибок. В течение времени тестирования τобнаруживается
ошибок в расчете на одну команду в машинном языке; -
общее число машинных команд
постоянно в рамках этапа тестирования.
и коэффициент пропорциональности C. Для определения этих величин в процессе тестирования собирается информация о времени и количестве ошибок на каждом прогоне, т.е. общее время тестирования τ складывается из времени каждого прогона: . Предполагая, что интенсивность появления ошибок постоянна и равна λ, можно вычислить ее как число ошибок в единицу времени: , где количество ошибок на i-ом прогоне.Имея данные для двух различных моментов тестирования и , которые выбираются так, чтобы , можно записатьЗначения начального количества ошибок и коэффициент пропорциональности C вычисляются как .Модель Миллса (модель предсказания числа ошибок). Относится к классу аналитических статических моделей. Использование этой модели предполагает необходимость перед началом тестирования искусственно вносить в программу («засорять») некоторое количество известных ошибок.Тестируя программу в течение некоторого времени, собирают статистику об ошибках. Соотношение дает возможность оценить N – первоначальное число ошибок в программе. В данном соотношении, которое называется формулой Миллса, S– количество искусственно внесенных ошибок, n – число найденных собственных ошибок, V– число обнаруженных к моменту оценки искусственных ошибок.Мерой доверия к модели является величина C:,где K количество собственных ошибок в программе.Простая интуитивная модель.
Использование этой модели предполагает проведение тестирования двумя группами программистов (или двумя программистами в зависимости от величины программы) независимо друг от друга и использующими независимые тестовые наборы. В процессе тестирования каждая из групп фиксирует все найденные ею ошибки. При оценке числа оставшихся в программе ошибок результаты тестирования обеих групп собираются и сравниваются.
Пусть N неизвестное количество ошибок в программе и первая группа в процессе тестирования обнаружила
ошибок, вторая –
, a
– это ошибки, обнаруженные обеими группами (рис. 8.1).
Эффективность тестирования каждой из групп определяется как
Рис. 8.1. Множество ошибок в программе
Предполагая, что возможность обнаружения всех ошибок одинакова для обеих групп, можно допустить, что если первая группа обнаружила определенное количество всех ошибок, она могла бы определить то же количество любого случайным образом выбранного подмножества. В частности, можно допустить:
.
Модель Коркорэна.
Модель Коркорэна относится к статическим моделям надежности ПО, так как в ней не используются параметры времени тестирования. В отличие от двух рассмотренных выше статических моделей, по модели Коркорэна оценивается вероятность безотказного выполнения программы на момент оценки.
Применение модели предполагает знание следующих ее показателей:
-
изменяющуюся вероятность отказов для различных источников ошибок и соответственно разную вероятность их исправления; -
результаты N испытаний, в которых наблюдается
ошибок i-го типа; -
вероятности
появления ошибок i-го типа.
– число безотказных выполнений программы; N – общее число прогонов; K – априори известное число типов ошибок.
Величина вероятности выявления при тестировании ошибки i-го типа
должна быть получена на основании данных предшествующего периода функционирования однотипных программных средств.
Контрольные вопросы и задания
1. Приведите классификацию моделей надежности программных средств.
2. Как выполнить оценку надежности программного обеспечения при использовании аналитических моделей?
3. На каких предположениях построена модель «дискретно-понижающая интенсивность проявления ошибок»?
4. На каких допущениях построена модель Шумана?
5. Каким образом определяется надежность программного обеспечения по модели Джелинского-Моранды?
6. В чем заключается различие между статическими и динамическими моделями надежности программных средств?
7. В чем сущность модели Миллса?
8. Каким образом выполняется расчет надежности программного средства с помощью простой интуитивной модели?
9. Каким образом определяется надежность программного обеспечения по модели Коркорэна?
10. В чем сущность интуитивной модели фирмы IBM?
11. Какую модель надежности программы следует применять, если предпринято две попытки тестирования?
Варианты заданий к лабораторной работе
1. Предположим в программе есть три собственные ошибки, внесём ещё шесть случайным образом. В процессе тестирования было найдено пять внесенных ошибок и две собственные. Найти надёжность программы по модели Миллса.
2. В программе есть две собственные ошибки, внесём ещё три случайным образом. В процессе тестирования было найдено две внесенные ошибок и три собственные. Найти надёжность программы по модели Миллса.
3. Предположим в программе есть десять собственных ошибок, внесём ещё пять случайным образом. В процессе тестирования было найдено восемь внесенных ошибок и трисобственные. Найти надёжность программы по модели Миллса.
4. Пусть в программе есть двенадцать собственных ошибок, внесём ещё шесть случайным образом. В процессе тестирования было найдено семь внесенных ошибок и пять собственных. Найти надёжность программы по модели Миллса.