Главная страница
Навигация по странице:

  • "МИРЭА - Российский технологический университет" РТУ МИРЭА

  • "Московский технологический университет" МИРЭА

  • ОТЧЕТ ПО ПРАКТИЧЕСКОЙ РАБОТЕ № 4 по дисциплине

  • Модели надежности программного обеспечения

  • Простая интуитивная модель.

  • Тип ошибки Вероятность выявления ошибки a

  • Исходные данные – таблица 2

  • Пример решения

  • 5. Выводы 6 Сделать список источников

  • Модели надежности программного обеспечения_4 (1). Отчет по практической работе 4 по дисциплине Качество, стандартизация ппиС Модели надежности программного обеспечения


    Скачать 178.5 Kb.
    НазваниеОтчет по практической работе 4 по дисциплине Качество, стандартизация ппиС Модели надежности программного обеспечения
    Дата08.12.2021
    Размер178.5 Kb.
    Формат файлаdoc
    Имя файлаМодели надежности программного обеспечения_4 (1).doc
    ТипОтчет
    #296833








    МИНОБРНАУКИ РОССИИ

    МИНОБРНАУКИ РОССИИ

    Федеральное государственное бюджетное образовательное учреждение

    высшего образования

    "МИРЭА - Российский технологический университет"

    РТУ МИРЭА


    Федеральное государственное бюджетное образовательное учреждение

    высшего образования

    "Московский технологический университет"

    МИРЭА


    Институт информационных технологий (ИТ)

    Институт информационных технологий (ИТ)

    Кафедра инструментального и прикладного программного обеспечения (ИиППО)

    Кафедра инструментального и прикладного программного обеспечения (ИППО)


    ОТЧЕТ ПО ПРАКТИЧЕСКОЙ РАБОТЕ № 4

    по дисциплине

    Качество, стандартизация ППиС
    «Модели надежности программного обеспечения»




























    Выполнил студент группы

    Ф.И.О.



    Принял



    Чехарин Е.Е., старший преподаватель




    Работа выполнена

    «___» ________ 2021 г.













    «Зачтено»


    «___»_________2021 г.





    Содержание (сделать)



    1. Введение


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

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

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

    Функция надежности P(t), определяется как вероятность того, что ошибки программы не проявляются на интервале времени от 0 до t, т.е временя ее безотказной работы будет больше.

    Функция надежности Q(t) – вероятность того, что в течение времени t произойдет отказ программы как результат проявления действия ошибки в программе. Таким образом:

     

    Q(t) = 1P(t)

     

    Интенсивность отказов λ(t) – условная плотность вероятности времени от возникновения отказа программы при условии, что до момента t отказа не было.



     

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

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

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

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



    1. Простая интуитивная модель.


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

    Пусть первая группа обнаружила n1 ошибок, вторая n2 , n12 - это число ошибок, обнаруженных как первой, так и второй группой.

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

    .

    Эффективность тестирования можно интерпретировать как вероятность того, что ошибка будет обнаружена. Таким образом, можно считать, что первая группа обнаруживает ошибку в программе с вероятностью , вторая - с вероятностью . Тогда вероятность p12 того, что ошибка будет обнаружена обеими группами, можно принять равной . С другой стороны, так как группы действуют независимо друг от друга, то р12 = р1р2. Получаем:

    Отсюда получаем оценку первоначального числа ошибок программы:

    .

    Задание 1: выбрать (самостоятельно) количество ошибок 1 и 2 группы, количество общих ошибок и заполнить таблицу 1.

    В процессе тестирования программы 1-я группа нашла ___ ошибок, 2-я группа нашла ____ ошибок, общих ошибок было ___. Определить надёжность по простой интуитивной модели.

    Таблица 1

    n1=

    n2=

    общ.ош=




    N=

    p1=

    p2=

    p12=



    3. Модель Коркорэна
    Применение модели предполагает знание следующих ее показателей:

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

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

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

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



    где N0 - число безотказных (или безуспешных) испытаний, выполненных в серии из N испытаний, k - известное число типов ошибок, ai — вероятность выявления при тестировании ошибки i-го типа,

    Yi - вероятность появления ошибок, при Ni > 0, Yi = ai, при Ni = 0, Yi = 0.
    Задание 2: Было проведено 100 испытаний программы, ___ (сами укажите число) из 100 испытаний прошли безуспешно (безотказно), а в остальных случаях получились следующие данные (Таблица 2). В таблицу вместо выделенных желтым чисел вставить свои (помните, что все значения вероятностей меньше 1). Принимаем, что этой модели вероятность ai должна оцениваться на основе априорной информации или данных предшествующего периода функционирования однотипных программных средств.

    Таблица 2

    Тип ошибки

    Вероятность выявления ошибки ai (i-го типа)

    Число появления ошибок Ni при испытании

    Yi

    (Yi*(Ni-1))/N

    1. Ошибки вычисления

    0,09

    4







    2. Логические ошибки

    0,26

    8







    3. Ошибки ввода/вывода

    0,16

    7







    4. Ошибки манипулирования данными

    0,05

    0







    5. Ошибки сопряжения

    0,17

    6







    6. Ошибки определения данных

    0,08

    3







    7. Ошибки в БД

    0,06

    0









    Оценить надёжность по модели Коркорэна, вычислив R и заполнить таблицу 3.


    Таблица 3


    Исходные данные – таблица 2

    N=

    100

    N0=




    R=







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

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

    Предполагается, что до начала тестирования в ПС имеется ЕT ошибок. В течение времени тестирования τ обнаруживается εс ошибок в расчете на команду в машинном языке.

    Таким образом, удельное число ошибок на одну машинную команду, оставшихся в системе после τ времени тестирования, равно:



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

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



    Нам необходимо найти начальное значение ошибок ЕT и коэффициент пропорциональности С. Эти неизвестные оцениваются путем пропуска функционального теста в двух точках переменной оси отладки А и В (выделены зеленым в таблице 4), выбранных так, что εс(A)< εс(b).

    где







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

    Задание (и пример):

    Данные для расчета, выделенные желтым, заменить на свои (выбрать самостоятельно).

    В тестируемой программе 1000 операторов (машинных команд, командных строк). В процессе последовательных тестовых прогонов получаем данные, приведенные в таблице 4:

    Таблица 4 – Тестовые данные

    № прогона

    11

    22

    33А

    34


    5


    6


    7


    8


    9


    10В

    Количество ошибок


    5


    4


    2


    5


    7


    2


    3


    3


    2


    3

    Время прогона (с)


    4


    4


    3


    4


    6


    4


    4


    5


    3


    2

    Решение. Нужно выбрать две точки (два момента времени) так, чтобы число ошибок, найденных на интервале А ÷ В, было больше, чем на интервале от О ÷ А.

    Пример решения:

    εс(A)=11/1000=0,011 - ошибка, найденная соответственно на этапе тестирования 0 ÷ А; εс(b)=0,025 - то же на этапе А ÷ В.

    τA=11 - время от начала тестирования до А.

    τb =28 - время на интервале А ÷ В.

    Суммарное время – τ=39 с.

    τA =11/11=1 - интенсивность появления ошибок на 1-м интервале.

    τb =25/28=0.89 интенсивность появления ошибок на 2-м интервале.

    ошибок.



    Подставляя различные t (время) при τ=39, можно рассчитать по формуле вероятность безотказной работы в течение соответствующего времени. Выберите t=1000, 10000 ч. Получите вероятность безотказной работы для соответствующего времени в часах.

    5. Выводы

    6 Сделать список источников


    написать администратору сайта