Проверка выходов Интегрирования процесса

Следующая таблица содержит сводные данные проверки выходов целей интегрирования процесса из DO-178C и DO-333, включая целевые, применимые разделы ссылки и уровни программного обеспечения, применимые к цели. Таблица также описывает доступные инструменты Модельно-ориентированное проектирование для достижения целей.

Таблица A-6: Проверка выходов Интегрирования процесса

 ЦельСправочные разделыСправочные разделы по действиямУровни программного обеспеченияДоступные продукты для Модельно-ориентированного проектирования
1Исполняемый объектный код соответствует требованиям высокого уровня.6.4.a6.4.2
6.4.2.1
6.4.3
6.5
A, B, C, DSimulink® Test™, Simulink Design Verifier™, Embedded Coder® - PIL Mode, DO Qualification Kit
2Исполняемый объектный код является надежным с требованиями высокого уровня.6.4.b
Из 6.7.b
Из 6.7.c
6.4.2
6.4.2.2
6.4.3
6.5
ИЗ 6.7
ИЗ 6.5
A, B, C, DSimulink Test, Simulink Design Verifier, Embedded Coder - PIL Mode, Polyspace® Code Prover™, Polyspace Code Prover Server™, DO Qualification Kit
3Исполняемый объектный код соответствует низкоуровневым требованиям.6.4.6.4.2
6.4.2.1
6.4.3
6.5
A, B, CSimulink Test, Simulink Design Verifier, Embedded Coder - PIL Mode, DO Qualification Kit
4Исполняемый объектный код является надежным с низкоуровневыми требованиями.6.4.d
Из 6.7.b
Из 6.7.c
6.4.2
6.4.2.2
6.4.3
6.5
ИЗ 6.7
ИЗ 6.5
A, B, CSimulink Test, Simulink Design Verifier, Embedded Coder - PIL Mode, Polyspace Code Prover, Polyspace Code Prover Server, DO Qualification Kit
5Исполняемый объектный код совместим с целевым компьютером.6.4.e6.4.1.a
6.4.3.a
A, B, C, DEmbedded Coder - режим PIL

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

Исполняемый объектный код соответствует Требованиям высокого уровня

Можно проверить исполняемый объектный код, повторно используя те же тесты, которые используются для проверки моделей. Во время выполнения тестов верификации модели, с помощью Simulink Test, входы и выходы каждой тестируемой модели могут быть записаны и сохранены для использования при проверке исполняемого объектного кода.

В случае, когда модель спецификации существует, Simulink Design Verifier может использоваться, чтобы сгенерировать тесты высокого уровня из модели спецификации. Эти тесты могут быть запущены на Модель Проекта и исполняемом объектном коде, а также результаты по сравнению с ожидаемыми результатами модели спецификации. Сравнение используется, чтобы продемонстрировать, что исполняемый объектный код соответствует требованиям высокого уровня.

Исполняемый объектный код может быть протестирован на целевом процессоре или DSP с помощью функции PIL Mode Embedded Coder. Simulink Test может использоваться, чтобы выполнить эти тесты и сравнить результаты тестирования с ожидаемыми результатами.

При использовании для определения прохождения и непрохождения, менеджер тестирования в Simulink Test может быть квалифицирован как инструмент верификации с помощью DO Qualification Kit.

Исполняемый объектный код робастен с Требованиями высокого уровня

Тесты робастности должны быть разработаны против моделей и могут быть проведены с помощью Simulink Test.Робастность исполняемого объектного кода может быть проверена путем переиспользования тех же тестовых примеров, которые используются для проверки робастности моделей. Во время выполнения тестов верификации модели, с помощью Simulink Test, входы и выходы каждой тестируемой модели могут быть записаны и сохранены для использования при проверке исполняемого объектного кода.

В случае, когда модель спецификации существует, Simulink Design Verifier может использоваться, чтобы сгенерировать тесты робастности из модели спецификации. Эти тесты могут быть запущены на Модель Проекта и исполняемом объектном коде, а также результаты по сравнению с ожидаемыми результатами модели спецификации. Сравнение демонстрирует, что исполняемый объектный код надежен с требованиями высокого уровня. Для тестов робастности могут использоваться блоки Test Condition и Цель Тестирования, чтобы помочь в определении тестов, которые выполняют объектный код за пределами нормальных граничных условий.

Исполняемый объектный код может быть протестирован на целевом процессоре или DSP с помощью функции PIL Mode Embedded Coder. Simulink Test может использоваться, чтобы выполнить эти тесты и сравнить результаты тестирования с ожидаемыми результатами.

При использовании для определения прохождения и непрохождения, менеджер тестов в Simulink Test может быть квалифицирован как инструмент верификации с помощью DO Qualification Kit.

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

В следующей таблице определены действия для случаев робастности и может ли Polyspace Code Prover или Polyspace Code Prover Server использоваться, чтобы продемонстрировать способность программного обеспечения реагировать на ненормальные входы и условия согласно целевым FM.6.7.b.

ДеятельностьПокрывается Polyspace Code Prover/Polyspace Code Prover Server
Следует учитывать вещественные и целочисленные переменные.Да
Инициализация системы должна учитываться в ненормальных условиях.Нет
Должны быть определены возможные типы отказа входящих данных, особенно сложных, цифровых строк данных от внешней системы.Нет
Для циклов, где количество циклов является вычисленным значением, должны быть разработаны формальные случаи анализа, чтобы попытаться вычислить значения количества циклов вне области допустимого, и, таким образом, продемонстрировать робастность кода, связанного с циклом.Да
Должна быть проведена проверка, чтобы убедиться, что механизмы защиты для превышенного времени системы координат реагируют правильно.Нет
Для связанных со временем функций, таких как фильтры, интеграторы и задержки, должен быть разработан формальный случай анализа для механизмов арифметического переполнения.Да
Для переходов в состоянии должны быть разработаны формальные случаи анализа, чтобы спровоцировать переходы, которые не допускаются требованиями программного обеспечения.Да

Что касается объективных FM.6.7.b, Polyspace Code Prover и Polyspace Code Prover Server помогают идентифицировать:

  • Обнаружение арифметических дефектов

  • Обнаружение нарушений пределов массива

  • Обнаружение переполнений

  • Обнаружение циклов, приводящих к ошибке времени выполнения

  • Обнаружение неправильного логического решения, приводящего к недоступному коду или ошибкам времени выполнения

Цель FM.6.7.c заключается в верификации целостности программного обеспечения, чтобы обеспечить правильное взаимодействие компонентов программного обеспечения друг с другом и удовлетворить требования к программному обеспечению и программной архитектуре. В следующей таблице определены типичные ошибки, и принимает ли их во факторе Polyspace Code Prover и Polyspace Code Prover Server.

ДеятельностьПокрывается Polyspace Code Prover/Polyspace Code Prover Server
Неправильная инициализация переменных и константДа
Ошибки при передаче параметра.Да
Повреждение данных, особенно глобальных данных.Да
Неадекватное сквозное числовое разрешение.Да
Неправильное секвенирование событий и операций.Да

Что касается объективных FM.6.7.c, Polyspace Code Prover и Polyspace Code Prover Server помогают идентифицировать:

  • Неинициализированные переменные

  • Ошибки передачи параметра

  • Повреждение данных, особенно глобальных данных

  • Неправильная инициализация переменных и констант

  • Неправильная инициализация переменных и констант, приводящих к недействию/переполнению

  • Глобальные данные общих переменных без механизма защиты

  • Неправильное секвенирование событий и операций

Polyspace Code Prover можно квалифицировать как инструмент верификации с помощью DO Qualification Kit.

Исполняемый объектный код соответствует низкоуровневым требованиям

Simulink Design Verifier может использоваться, чтобы сгенерировать низкоуровневые тесты из модели. Эти тесты могут быть запущены на модели и исполняемом объектном коде, и результаты сравнения. Сравнение используется, чтобы продемонстрировать, что исполняемый объектный код соответствует низкоуровневым требованиям.

Исполняемый объектный код может быть протестирован на целевом процессоре или DSP с помощью функции PIL Mode Embedded Coder. Simulink Test может использоваться, чтобы выполнить эти тесты и сравнить результаты тестирования с ожидаемыми результатами.

При использовании для определения прохождения и непрохождения, менеджер тестов в Simulink Test может быть квалифицирован как инструмент верификации с помощью DO Qualification Kit.

Кроме того, верификации с низкоуровневыми требованиями могут быть устранены, если основанные на требованиях покрытие и структурное покрытие достигаются с помощью основанных на высоких требованиях тестов (для примера, программного обеспечения интегрирования тестов). В разделе 6.4 DO-178C приведены следующие указания:

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

Исполняемый объектный код является робастным с низкоуровневыми требованиями

Simulink Design Verifier может использоваться, чтобы сгенерировать тесты робастности из модели. Эти тесты могут быть запущены на модели и исполняемом объектном коде, и результаты сравнения. Сравнение показывает, что исполняемый объектный код является устойчивым с низкоуровневыми требованиями. Для тестов робастности Test Condition и Test Objective блоки могут использоваться, чтобы помочь в определении тестов, которые используют объектный код вне нормальных граничных условий.

Исполняемый объектный код может быть протестирован на целевом процессоре или DSP с помощью функции PIL Mode Embedded Coder. Simulink Test может использоваться, чтобы выполнить эти тесты и сравнить результаты тестирования с ожидаемыми результатами.

При использовании для определения прохождения и непрохождения, менеджер тестов в Simulink Test может быть квалифицирован как инструмент верификации с помощью DO Qualification Kit.

Polyspace Code Prover также может использоваться, чтобы удовлетворить этой цели, проверяя исходный код с помощью абстрактной интерпретации. Некоторые ошибки, обнаруженные Polyspace Code Prover и Polyspace Code Prover Server, могут не быть обнаружены во время традиционной динамической проверки.

В следующей таблице определены действия для случаев робастности и может ли Polyspace Code Prover и Polyspace Code Prover Server использоваться, чтобы продемонстрировать способность программного обеспечения реагировать на ненормальные входы и условия согласно целевым FM.6.7.b.

ДеятельностьПокрывается Polyspace Code Prover/Polyspace Code Prover Server
Следует учитывать вещественные и целочисленные переменные.Да
Инициализация системы должна учитываться в ненормальных условиях.Нет
Должны быть определены возможные типы отказа входящих данных, особенно сложных, цифровых строк данных от внешней системы.Нет
Для циклов, где количество циклов является вычисленным значением, должны быть разработаны формальные случаи анализа, чтобы попытаться вычислить значения количества циклов вне области допустимого, и, таким образом, продемонстрировать робастность кода, связанного с циклом.Да
Должна быть проведена проверка, чтобы убедиться, что механизмы защиты для превышенного времени системы координат реагируют правильно.Нет
Для связанных со временем функций, таких как фильтры, интеграторы и задержки, должен быть разработан формальный случай анализа для механизмов арифметического переполнения.Да
Для переходов в состоянии должны быть разработаны формальные случаи анализа, чтобы спровоцировать переходы, которые не допускаются требованиями программного обеспечения.Да

Что касается объективных FM.6.7.b, Polyspace Code Prover и Polyspace Code Prover Server помогают идентифицировать:

  • Обнаружение арифметических дефектов

  • Обнаружение нарушений пределов массива

  • Обнаружение переполнений

  • Обнаружение циклов, приводящих к ошибке времени выполнения

  • Обнаружение неправильного логического решения, приводящего к недоступному коду или ошибкам времени выполнения

Цель FM.6.7.c заключается в верификации целостности программного обеспечения, чтобы обеспечить правильное взаимодействие компонентов программного обеспечения друг с другом и соответствие требованиям к программному обеспечению и программной архитектуре. В следующей таблице определены типичные ошибки, и принимает ли их во факторе Polyspace Code Prover и Polyspace Code Prover Server.

ДеятельностьПокрывается Polyspace Code Prover/Polyspace Code Prover Server
Неправильная инициализация переменных и константДа
Ошибки при передаче параметра.Да
Повреждение данных, особенно глобальных данных.Да
Неадекватное сквозное числовое разрешение.Да
Неправильное секвенирование событий и операций.Да

Что касается объективных FM.6.7.c, Polyspace Code Prover помогает идентифицировать:

  • Неинициализированные переменные

  • Ошибки передачи параметра

  • Повреждение данных, особенно глобальных данных

  • Неправильная инициализация переменных и констант

  • Неправильная инициализация переменных и констант, приводящих к недействию/переполнению

  • Глобальные данные общих переменных без механизма защиты

  • Неправильное секвенирование событий и операций

Polyspace Code Prover можно квалифицировать как инструмент верификации с помощью DO Qualification Kit.

Исполняемый объектный код совместим с целевым компьютером

Можно оценить исполняемый объектный код на использование стека, использование памяти и время выполнения на целевом процессоре или DSP, используя возможность Embedded Coder PIL Mode.

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