Автор работы: Пользователь скрыл имя, 10 Января 2011 в 16:26, лабораторная работа
1. Модель Шумана основана на следующих допущениях:
•общее число команд в программе на машинном языке постоянно;
•в начале компоновочных испытаний число ошибок равно некоторой постоянной величине, и по мере исправления ошибок их становится меньше. В ходе испытаний программы новые ошибки не вносятся;
•ошибки изначально различимы, по суммарному числу исправленных ошибок можно судить об оставшихся;
•интенсивность отказов программы пропорциональна числу остаточных ошибок.
3. Простая интуитивная модель. Использование этой модели предполагает проведение тестирования двумя группами программистов (или двумя программистами в зависимости от величины программы) независимо друг от друга, использующими независимые тестовые наборы. В процессе тестирования каждая из групп фиксируют все найденные ею ошибки.
Пусть первая группа обнаружила n1 ошибок, вторая n2 , n12 - это число ошибок, обнаруженных как первой, так и второй группой.
Обозначим через N неизвестное количество ошибок, присутствующих в программе до начала тестирования. Тогда можно эффективность тестирования каждой из групп определить как
.
Эффективность тестирования можно интерпретировать как вероятность того, что ошибка будет обнаружена. Таким образом, можно считать, что первая группа обнаруживает ошибку в программе с вероятностью , вторая - с вероятностью . Тогда вероятность p12 того, что ошибка будет обнаружена обеими группами, можно принять равной . С другой стороны, так как группы действуют независимо друг от друга, то р12 = р1р2. Получаем:
Отсюда получаем оценку первоначального числа ошибок программы:
Пример 5.
В
процессе тестирования программы 1-я
группа нашла 15 ошибок,
2-я группа нашла 25 ошибок, общих
ошибок было 5. Определить надёжность
по простой интуитивной модели.
|
4. Модель Коркорэна
Применение модели предполагает знание следующих ее показателей:
Показатель уровня надежности R вычисляют по следующей формуле:
где N0 - число безотказных (или безуспешных) испытаний, выполненных в серии из N испытаний, k - известное число типов ошибок, ai — вероятность выявления при тестировании ошибки i-го типа,
Yi - вероятность появления ошибок, при Ni > 0, Yi = ai, при Ni = 0, Yi = 0.
Пример 6.
Было проведено 100 испытаний программы. 20 из 100 испытаний прошли безуспешно, а в остальных случаях получились следующие данные:
Тип ошибки | Вероятность появления ошибки ai | Число появления ошибок Ni при испытании | Yi | (Yi*(Ni-1))/N |
1. Ошибки вычисления | 0,09 | 5 | 0,09 | 0,0036 |
2. Логические ошибки | 0,26 | 25 | 0,26 | 0,0624 |
3. Ошибки ввода/вывода | 0,16 | 3 | 0,16 | 0,0032 |
4. Ошибки манипулирования данными | 0,18 | 0 | 0 | 0 |
5. Ошибки сопряжения | 0,17 | 11 | 0,17 | 0,017 |
6. Ошибки определения данных | 0,08 | 3 | 0,08 | 0,0016 |
7. Ошибки в БД | 0,06 | 4 | 0,06 | 0,0018 |
Оценить надёжность по модели Коркорэна.
Исходные данные: | |
N= | 100 |
N0= | 20 |
R= | 0,2896 |
Пример 7. Было проведено 100 испытаний программы. 20 из 100 испытаний прошли безуспешно, а в остальных случаях получились следующие данные:
Тип ошибки, i | Вероятность появления ошибки. ai | Число появления ошибок Ni при испытании | Yi | (Yi*(Ni-1))/N |
1 | 0,09 | 8 | 0,09 | 0,0063 |
2 | 0,26 | 0 | 0 | 0 |
3 | 0,17 | 4 | 0,17 | 0,0051 |
4 | 0,2 | 25 | 0,2 | 0,048 |
5 | 0,8 | 25 | 0,8 | 0,192 |
6 | 0,08 | 3 | 0,08 | 0,0016 |
7 | 0,16 | 5 | 0,16 | 0,0064 |
Оценить
надёжность программы по модели Коркорэна.
Исходные данные: | |
N= | 100 |
N0= | 20 |
R= | 0,4594 |
Информация о работе Модели надежности программного обеспечения