Поэтому сертификация программного обеспечения отдельно от системы, в состав которой она входит, не имеет смысла.
Исходя из возможных последствий сбоя, DO-178B определяет уровни опасности и соответствующие им уровни сертификации программного обеспечения (см. таблицу 4.3.1).
Таблица 4.3.1 Уровни сертификации программного обеспечения
Уровень |
Влияние на безопасность |
A |
Программное обеспечение, сбой которого может привести к возникновению или способствовать возникновению катастрофического сбоя самолета. |
B |
Программное обеспечение, сбой которого может создать условия или способствовать созданию условий для опасного сбоя |
C |
Программное обеспечение, сбой которого может создать условия или способствовать созданию условий для крупного сбоя |
D |
Программное обеспечение, сбой которого может создать условия или способствовать созданию условий для малозначительного сбоя |
E |
Программное обеспечение, сбой которого не может влиять на самолет или на нагрузку пилота |
DO-178B требует, чтобы каждая строка кода была выполнена в ходе тестирования.
Запрещается включение в состав приложения какого-либо дополнительного кода, не прошедшего тестирование. Для каждого уровня сертификации заданы свои требования к покрытию тестами проверяемого кода:
Покрытие операторов (Statement Coverage – SC) означает, что в ходе тестирования каждый оператор программы был вызван или использован не менее одного раза. Когда говорят о покрытии кода – «Code coverage» – обычно имеют ввиду именно SC.
Покрытие ветвей (Decision Coverage – DC) означает, что в ходе тестирования каждая точка входа в программу и выхода из нее была использована не менее одного раза так, что каждое возможное значение логических условий принималось не менее одного раза. По сути дела, это означает, что в ходе тестирования каждое логическое условие имело и значение «истина», и значение «ложь».
Покрытие условий и ветвей (Modified Condition/Decision Coverage – MC/DC) означает, что в ходе тестирования каждая точка входа в программу и выхода из нее была использована не менее одного раза так, что каждое решение в программе принимало все возможные значения, и при этом было показано, какое влияние оказывает на решение каждое условие независимо от остальных условий. Для сложных логических операций необходимо разрабатывать таблицы истинности, что бы определить все возможные комбинации значений «истина» и «ложь».
В таблице 3.4.2 показано, какие из требований к покрытию кода тестами предъявляются на разных уровнях сертификации:
Таблица 4.3.2 Требования к покрытию кода
Уровень |
Покрытие |
Требования к покрытию |
A |
MC/DC |
Уровень B + 100% MC/DC |
B |
DC |
Уровень C + 100% DC |
C |
SC |
Уровень D + 100% SC |
D |
100% покрытие требований | |
E |
Нет требований |
Похожие статьи:
Перспективы
развития железнодорожного транспорта
Несмотря на то, что нерешенным остается большое количество задач, в сфере железнодорожного транспорта достигнуто и немало успехов. К концу 2007 года мы имели следующие показатели: «Грузооборот был увеличен на 4,3%, что соответствует динамике промышленного роста в стране. Достигнут прирост пассажиро ...
Понятие экономической эффективности
Технологический процесс служит надёжной основой рационального, экономически эффективного ведения путевого хозяйства. Наряду с внедрением ресурсосберегающих технологий, строго соблюдения технологического процесса важнейшей задачей является повышение эффективность использования уже имеющихся техничес ...
Технико-эксплуатационная характеристика пассажирской и
пассажирской технической станций
Пассажирские и пассажирские технические станций (ПТС) – важная часть пассажирского комплекса города. ПТС предназначены для переформировании, ремонта очистки и экипировки пассажирских составов, т, е, их основной работой является комплексная подготовка пассажирских составов в рейс. В зависимости от о ...