
- •2. Основные характеристики программного модуля по г. Майерсу: размер, прочность, сцепление, рутинность
- •3. Общие принципы моделирования жизненного цикла программных средств…
- •5. Внешнее описание программного средства и процесс его разработки…
- •6. Структурное программирование и основные конструкции структурного программирования
- •7. Метод таблиц решений
- •8. Метод пошаговой детализации н. Вирта и понятие о псевдокоде
- •9. Пользовательский интерфейс с точки зрения разработчика и пользователя...
- •10. Методология функционального моделирования idef0. Основные элементы и понятия idef0. Принципы ограничения сложности idef0-диаграмм. Дисциплина групповой работы над разработкой idef0-модели
- •11. Основные принципы тестирования программных средств…
- •12. Основы методологии idef1x…
- •13. Основы методологии idef3. Назначение и два типа диаграмм в idef3
- •14. Оценка показателей качества программных средств в соответствии гост 28195-89
- •15. Диаграммы потоков данных. Нотации Йордона-Де Марко и Гейна-Сарсона. Понятие о мини-спецификациях и словарях данных
- •16. Надежность программных средств. Количественные показатели надежности. Оценка показателей надежности на основе различных моделей
- •17. Оценка размеров программных средств на начальных стадиях проектирования. Метрики количества строк исходного кода и функциональных точек. Метод функциональных точек
- •19. Оценка трудоемкости и сроков реализации программных проектов с помощью модели cocomo
- •20. Модель зрелости процессов разработки программных средств (смм). Уровни зрелости в соответствии с моделью смм. Сертификация на основе модели смм
- •Дополнение к 15 Мини-спецификация и словари данных
16. Надежность программных средств. Количественные показатели надежности. Оценка показателей надежности на основе различных моделей
Количественная оценка надежности ПО
Н
адежность
программного обеспечения – это
вероятность безотказного выполнения
всех прогонов программ. Для количественной
оценки показателей надежности программного
обеспечения используют модели надежности,
под которыми понимаются математические
модели, построенные для оценки зависимости
надежности от заранее известных или
определенных в ходе выполнения задания
параметров. Существует необходимость
определять надежность программного
обеспечения на всех стадиях его жизненного
цикла.
Приведем классификацию моделей оценки надежности ПО:
К динамическим
непрерывным моделям
относится например МОДЕЛЬ
ДЖЕЛИНСКИ – МОРАНДЫ.
Модель основана на допущениях, что время
до следующего отказа распределено
экспоненциально, а интенсивность отказов
программы пропорциональна количеству
оставшихся в программе ошибок. Согласно
этим допущениям вероятность безотказной
работы ПО как функция времени ti
равна
, где
интенсивность отказов
.
Здесь CD – коэффициент пропорциональности; N – первоначальное количество ошибок.
Преимущества и недостатки модели. Осн преимуществом модели является простота расчетов. Недостаток этой модели состоит в том, что при неточном определении величины N интенсивность отказов программы может стать отриц, что приводит к бессмысл рез-ту. Кроме того, предполаг, что при исправлении обнаруженных ошибок не вносятся новые ошибки, что тоже не всегда выполняется.
Дискретные динамические модели В дискретных моделях предполагается, что сначала проводится тестирование программного обеспечения (возможно, в несколько этапов). В случае появления отказов ищутся и исправляются все ошибки, из-за которых произошли отказы. После этого начинается период эксплуатации программного обеспечения.
МОДЕЛЬ ШУМАНА. В этой модели предполагается, что тестирование проводится в несколько этапов. Каждый этап представляет собой выполнение программы по набору тестовых данных. Выявленные в течение этапа тестирования ошибки регистрируются, но не исправляются. По завершении этапа исправляются все обнаруженные на этом этапе ошибки, корректируются тестовые наборы и проводится новый этап тестирования.Предполагается, что при корректировке новые ошибки не вносятся, и что интенсивность обнаружения ошибок пропорциональна числу оставшихся ошибок.
Преимущества и недостатки модели. К преимущ можно отнести то, что по ней можно опред все неизвестные параметры, то есть нет необход обращ к др моделям, что сокращ t расчета надежности. К недостаткам относится предположение, что при корректировке не вносятся новые ошибки, а это не всегда имеет место в реальных программах. Кроме того, в процессе тестирования необходимо регистрировать большое количество данных, необходимых для расчета по формулам этой модели.
Статические модели Статические модели отличаются от динамических прежде всего тем, что в них не учитывается время появления ошибок.
МОДЕЛЬ МИЛЛСА. Использование этой модели предполагает необходимость перед началом тестирования искусственно вносить в программу некоторое количество известных ошибок. Ошибки вносятся случайным образом и фиксируются в протоколе искусственных ошибок. Специалист, проводящий тестирование, не знает ни количества, ни характера внесенных ошибок. Предполагается, что все ошибки (как естественные, так и искусственные) имеют равную вероятность быть найденными в процессе тестирования.
Эмпирические модели основаны на анализе накопленной информации о функционировании ранее разработанных программ. Наиболее простая эмпирическая модель связывает число ошибок в программном обеспечении с его объемом.