
- •Сертификация и надежность программного обеспечения Преподаватель: Чуканов Всеволод Озирисович Список литературы
- •Проблемы надежности по
- •Направления исследований в вопросе надежности по
- •Основные типы комплексов программ
- •Факторы, позволяющие анализировать показатели надежности программ 2-го и 3-го типов
- •Взаимосвязь надежностных характеристик по и аппаратуры
- •Факторы надежности аппаратных средств
- •Проблемы эталонов
- •Основные этапы разработки по
- •Модель перевода входной информации в выходную
- •Количественные характеристики надежности
- •Структурно-логические модели надежности по
- •Критерии надежности
- •Характеристики по
- •Испытания
- •Основные параметры персонала
- •Цель анализа программных ошибок при сертификации и оценке надежности по
- •Модели надежности по Классификация моделей надежности по
- •Экспоненциальная модель (модель Шумана)
- •Модель Джелинского-Моранда
- •Статистическая модель Миллса
- •Простейшие интуитивные (эвристические) модели
- •Имитационные модели
- •Тестирование по. Испытания по при сертификации Детерминированное тестирование при проектировании. Детерминированное испытание при сертификации Принципы и задачи детерминированного тестирования
- •Методы тестирования
- •Восходящее тестирование
- •Нисходящее тестирование (нисходящая разработка)
- •Модифицированный нисходящий метод
- •Метод большого скачка
- •Метод «сэндвича»
- •Модифицированные метод «сэндвича»
Основные этапы разработки по
Единственно важная причина ошибок в ПО – это неправильный перевод из одного представления в другое.
Разработка описания реальной задачи в виде перечня требований пользователя (который в некоторых случаях пользователь составляет сам). Здесь имеются обширные возможности для появления ошибок. Например, пользователь не сумеет адекватно выразить свои потребности, они могут быть неверно поняты либо учтены не в полном объеме. Ошибки этого уровня обходятся чрезвычайно дорого.
Перевод требований пользователя в цели программы. Ошибки на этом этапе возникают, когда неверно определяются требования.
Шаг связан с преобразованием цели программы в ее внешние спецификации, т.е. поведение всей системы с точки зрения пользователей. По объему перевода это самый значительный этап, он больше всего подвержен ошибкам.
Этот этап представляет собой несколько переводов от внешнего описания готового продукта до получения готового проекта, описывающего многие составляющие проекта-предложения, выполнение которых должно обеспечить поведение системы, соответствующее внешним спецификациям:
перевод внешнего описания в структуру программы (например, модуль);
перевод каждой из этих компонент в описание процедурных шагов (например, блок-схему).
Т.к. приходится иметь дело со все большим объемом информации шансы внесения ошибок очень высоки.
Перевод описания логики программы в предложения языка программирования. На этом этапе Делается много ошибок, но они легко обнаруживаются и корректируются. На этом этапе есть еще один перевод – перевод текста программы на языке программирования в объектный код (выполняется компиляторами и трансляторами).
В результате работы над программным проектом возникает как само ПО так и документы, описывающие его использование в виде руководств в бумажном или электронном виде. Если возникают ошибки при подготовке документации, то она не будет точно описывать поведение программы (если только на шагах 4 и 6 не сделаны идентичные ошибки). Прочитав руководство пользователь начнет работать с программой и обнаружит, что она ведет себя не так, как он ожидал – это и является, по определению, ошибкой в программе.
Например разработчик операционной системы опирается на описание процессора (набор команд, прерывания, средства защиты и т.д.) и периферийного оборудования. Разработчики должны знать характеристики линий связи и т.д. Неправильное толкование этих данных может привести к ошибкам в программе.
Прикладные программы взаимодействуют с базовым ПО (таким, например, как ОС). Неправильное понимание документации по базовому ПО – еще один источник ошибок.
Готовая программа состоит из предложений хотя бы одного языка программирования. Непонимание синтаксиса и семантики языка – также причина ошибок.
Есть две формы связи между пользователем и готовой программой – это руководство, описывающее использование и непосредственно работа с ним. Этот шаг представляет собой изучение пользователем руководств и перевод их содержания в его понимание того, как он желает применять программу.