Следующая таблица содержит сводные данные тестирования выходных параметров целей процесса интеграции от DO - 178C и DO-333, включая объективные, применимые ссылочные разделы и программные уровни, применимые к цели. Таблица также описывает доступные инструменты Model-Based Design для удовлетворения целям.
Таблица a-6: тестирование Выходных параметров процесса интеграции
Цель | Касательно разделов | Действие касательно разделов | Программные уровни | Доступные продукты для модельно-ориентированного проектирования | |
---|---|---|---|---|---|
1 | Исполняемый объектный код выполняет требования высокого уровня. | 6.4.a | 6.4.2 6.4.2.1 6.4.3 6.5 | A, B, C, D | Simulink® Test™, Simulink Design Verifier™, Embedded Coder® — Режим PIL, 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, D | Simulink Test, Simulink Design Verifier, Embedded Coder — режим PIL, 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, C | Simulink Test, Simulink Design Verifier, Embedded Coder — режим PIL, 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, C | Simulink Test, Simulink Design Verifier, Embedded Coder — режим PIL, Polyspace Code Prover, Polyspace Code Prover Server, DO Qualification Kit |
5 | Исполняемый объектный код совместим с целевым компьютером. | 6.4.e | 6.4.1.a 6.4.3.a | A, B, C, D | Embedded Coder — режим PIL |
Следующие разделы описывают более подробно потенциальные удары для каждого тестирования выходных параметров цели процесса интеграции при использовании Модельно-ориентированного проектирования, если применимо, по сравнению с традиционной разработкой.
Исполняемый объектный код может быть проверен путем многократного использования тех же тестов, которые используются, чтобы проверить модели. Во время выполнения тестов верификации модели, с помощью Simulink Test, вводы и выводы каждой модели под тестом могут регистрироваться и сохранены для использования в проверке исполняемого объектного кода.
В случае, где Модель Спецификации существует, Simulink Design Verifier может использоваться, чтобы сгенерировать высокоуровневые тесты из Модели Спецификации. Эти тесты могут быть запущены на Модели проекта и исполняемом объектном коде и результатах по сравнению с ожидаемыми результатами из Модели Спецификации. Сравнение используется, чтобы продемонстрировать, что исполняемый объектный код выполняет требования высокого уровня.
Исполняемый объектный код может быть протестирован на целевом процессоре или DSP с помощью возможности Режима PIL Embedded Coder. Simulink Test может использоваться, чтобы выполнить эти тесты и сравнить результаты испытаний с ожидаемыми результатами.
Когда используется в передаче и определении сбоя, менеджер по Тесту в Simulink Test может быть квалифицирован как инструмент верификации с помощью DO Qualification Kit.
Тесты робастности должны быть разработаны против моделей и могут быть сделаны с помощью Simulink Test. Робастность исполняемого объектного кода может быть проверена путем многократного использования тех же тестов, которые используются, чтобы проверить робастность моделей. Во время выполнения тестов верификации модели, с помощью Simulink Test, вводы и выводы каждой модели под тестом могут регистрироваться и сохранены для использования в проверке исполняемого объектного кода.
В случае, где Модель Спецификации существует, Simulink Design Verifier может использоваться, чтобы сгенерировать тесты робастности из Модели Спецификации. Эти тесты могут быть запущены на Модели проекта и исполняемом объектном коде и результатах по сравнению с ожидаемыми результатами из Модели Спецификации. Сравнение демонстрирует, что исполняемый объектный код устойчив с требованиями высокого уровня. Для тестов робастности Условие испытания и блоки Цели тестирования могут использоваться, чтобы помочь в определении тестов, которые осуществляют объектный код за пределами нормальных граничных условий.
Исполняемый объектный код может быть протестирован на целевом процессоре или DSP с помощью возможности Режима PIL Embedded Coder. Simulink Test может использоваться, чтобы выполнить эти тесты и сравнить результаты испытаний с ожидаемыми результатами.
Когда используется в передаче и определении сбоя, менеджер по Тесту в Simulink Test может быть квалифицирован как инструмент верификации с помощью DO Qualification Kit.
Вы можете также usePolyspace Программа автоматического доказательства Кода и Polyspace Code Prover Server, чтобы удовлетворить этой цели путем проверки исходного кода с помощью абстрактной интерпретации. Некоторые ошибки, обнаруженные Polyspace Code Prover или Polyspace Code Prover Server, не могут быть обнаружены во время традиционного динамического тестирования.
Следующая таблица идентифицировала действия для случаев робастности и или Polyspace Code Prover, или Polyspace Code Prover Server может использоваться, чтобы продемонстрировать способность программного обеспечения ответить на аварийные входные параметры и условия согласно цели Из 6.7.b.
Действие | Покрытый Polyspace Code Prover / Polyspace Code Prover Server |
---|---|
Действительные и целочисленные переменные должны быть рассмотрены. | Да |
Системная инициализация должна быть рассмотрена во время ненормальных условий. | Нет |
Возможные типы отказа входящих данных должны быть определены, особенно комплексные строки цифровых данных от внешней системы. | Нет |
Циклы for, где количество цикла является вычисленным значением, формальные аналитические случаи, должны быть разработаны, чтобы попытаться вычислить значения количества цикла из области значений, и таким образом продемонстрировать робастность связанного с циклом кода. | Да |
Проверка должна быть осуществлена, чтобы гарантировать, что механизмы защиты в течение превышенных времен системы координат отвечают правильно. | Нет |
Для связанных со временем функций, таких как фильтры, интеграторы и задержки, формальный аналитический случай должен быть разработан для механизмов арифметического переполнения. | Да |
Для изменений состояния формальные аналитические случаи должны быть разработаны, чтобы вызвать переходы, которые не позволены требованиями к программному обеспечению. | Да |
Относительно цели Из 6.7.b, Polyspace Code Prover и Polyspace Code Prover Server помогает идентифицировать:
Обнаружение арифметических отказов
Обнаружение нарушения пределов массивов
Обнаружение переполнения
Обнаружение продвижения циклов к ошибке времени выполнения
Обнаружение неправильного логического продвижения решения к недостижимому коду или ошибкам времени выполнения
Цель Из 6.7.c адресов верификация целостности программного обеспечения к ensurethat компонентам программного обеспечения взаимодействует правильно друг с другом и удовлетворяет требованиям к программному обеспечению и программной архитектуре. Следующая таблица идентифицировала типичные ошибки и принимают ли Polyspace Code Prover и Polyspace Code Prover Server их во внимание.
Действие | Покрытый Polyspace Code Prover / Polyspace Code Prover Server |
---|---|
Неправильная инициализация переменных и констант | Да |
Ошибки передачи параметров. | Да |
Повреждение данных, особенно глобальные данные. | Да |
Несоответствующее сквозное числовое разрешение. | Да |
Неправильное секвенирование событий и операции. | Да |
Относительно цели Из 6.7.c, Polyspace Code Prover и Polyspace Code Prover Server помогает идентифицировать:
Неинициализированные переменные
Ошибки передачи параметров
Повреждение данных, особенно глобальные данные
Неправильная инициализация переменных и констант
Неправильная инициализация продвижения переменных и констант к потере значимости/переполнению
Повреждение глобальных данных совместно используемых переменных без механизма защиты
Неправильное секвенирование событий и операции
Polyspace Code Prover может быть квалифицирован как инструмент верификации с помощью DO Qualification Kit.
Simulink Design Verifier может использоваться, чтобы сгенерировать низкоуровневые тесты из модели. Эти тесты могут быть запущены на модели и исполняемом объектном коде и сравненных результатах. Сравнение используется, чтобы продемонстрировать, что исполняемый объектный код выполняет низкоуровневые требования.
Исполняемый объектный код может быть протестирован на целевом процессоре или DSP с помощью возможности Режима PIL Embedded Coder. Simulink Test может использоваться, чтобы выполнить эти тесты и сравнить результаты испытаний с ожидаемыми результатами.
Когда используется в передаче и определении сбоя, менеджер по Тесту в Simulink Test может быть квалифицирован как инструмент верификации с помощью DO Qualification Kit.
В качестве альтернативы верификация против низкоуровневых требований может быть устранена, если основанное на требованиях покрытие и структурное покрытие достигаются с помощью основанных на требованиях высокого уровня тестов (например, тестов интеграции программного обеспечения). Следующее руководство обеспечивается в разделе 6.4 из DO - 178C:
Если тест и его соответствующая процедура тестирования разрабатываются и выполняются для тестирования тестирования или интеграции программного обеспечения оборудования/интеграции программного обеспечения и удовлетворяют основанному на требованиях покрытию и структурному покрытию, не необходимо скопировать тест для низкоуровневого тестирования. Заменение номинально эквивалентными низкоуровневыми тестами для высокоуровневых тестов может быть менее эффективным из-за уменьшаемой суммы полной протестированной функциональности. |
Simulink Design Verifier может использоваться, чтобы сгенерировать тесты робастности из модели. Эти тесты могут быть запущены на модели и исполняемом объектном коде и сравненных результатах. Сравнение демонстрирует, что исполняемый объектный код устойчив с низкоуровневыми требованиями. Для тестов робастности Test Condition и блоки Test Objective могут использоваться, чтобы помочь в определении тестов, которые осуществляют объектный код за пределами нормальных граничных условий.
Исполняемый объектный код может быть протестирован на целевом процессоре или DSP с помощью возможности Режима PIL 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 использоваться, чтобы продемонстрировать способность программного обеспечения ответить на аварийные входные параметры и условия согласно цели Из 6.7.b.
Действие | Покрытый Polyspace Code Prover / Polyspace Code Prover Server |
---|---|
Действительные и целочисленные переменные должны быть рассмотрены. | Да |
Системная инициализация должна быть рассмотрена во время ненормальных условий. | Нет |
Возможные типы отказа входящих данных должны быть определены, особенно комплексные строки цифровых данных от внешней системы. | Нет |
Циклы for, где количество цикла является вычисленным значением, формальные аналитические случаи, должны быть разработаны, чтобы попытаться вычислить значения количества цикла из области значений, и таким образом продемонстрировать робастность связанного с циклом кода. | Да |
Проверка должна быть осуществлена, чтобы гарантировать, что механизмы защиты в течение превышенных времен системы координат отвечают правильно. | Нет |
Для связанных со временем функций, таких как фильтры, интеграторы и задержки, формальный аналитический случай должен быть разработан для механизмов арифметического переполнения. | Да |
Для изменений состояния формальные аналитические случаи должны быть разработаны, чтобы вызвать переходы, которые не позволены требованиями к программному обеспечению. | Да |
Относительно цели Из 6.7.b, Polyspace Code Prover и Polyspace Code Prover Server помогает идентифицировать:
Обнаружение арифметических отказов
Обнаружение нарушения пределов массивов
Обнаружение переполнения
Обнаружение продвижения циклов к ошибке времени выполнения
Обнаружение неправильного логического продвижения решения к недостижимому коду или ошибкам времени выполнения
Цель Из 6.7.c адресов верификация целостности программного обеспечения, чтобы гарантировать, что компоненты программного обеспечения взаимодействуют правильно друг с другом и удовлетворяют требованиям к программному обеспечению и программной архитектуре. Следующая таблица идентифицировала типичные ошибки и принимают ли Polyspace Code Prover и Polyspace Code Prover Server их во внимание.
Действие | Покрытый Polyspace Code Prover / Polyspace Code Prover Server |
---|---|
Неправильная инициализация переменных и констант | Да |
Ошибки передачи параметров. | Да |
Повреждение данных, особенно глобальные данные. | Да |
Несоответствующее сквозное числовое разрешение. | Да |
Неправильное секвенирование событий и операции. | Да |
Относительно цели Из 6.7.c Polyspace Code Prover помогает идентифицировать:
Неинициализированные переменные
Ошибки передачи параметров
Повреждение данных, особенно глобальные данные
Неправильная инициализация переменных и констант
Неправильная инициализация продвижения переменных и констант к потере значимости/переполнению
Повреждение глобальных данных совместно используемых переменных без механизма защиты
Неправильное секвенирование событий и операции
Polyspace Code Prover может быть квалифицирован как инструмент верификации с помощью DO Qualification Kit.
Исполняемый объектный код может быть оценен для использования стека, использования памяти, и время выполнения на целевом процессоре или DSP с помощью возможности Режима PIL Embedded Coder.
Другие аспекты аппаратной совместимости, такие как обработка прерываний, конкуренция ресурса, аппаратные интерфейсы, разделение, и т.д., должны быть проверены с помощью традиционных методов.