Потенциальные ошибки инструмента и обнаружение

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

Ошибочный источникОшибочный ударОбнаруженныйСмягчение факторов
Ввод данных пользователем (модель, MATLAB®, или данные о файле MAT)Отказ выполнить требованияСлучаи симуляции и анализ Описания Разработки системыSimulink® Test™ и проверка Report Generator
 Отказ соответствовать стандартамModel Advisor и анализ Описания Разработки системыModel Advisor и проверка Report Generator
 Непреднамеренная функцияАнализ описания разработки системы, случаев симуляции и покрытияSimulink Test и проверка покрытия
Engine SimulinkОтказ выполнить требованияСлучаи симуляции и анализ Описания Разработки системыSimulink Test и проверка Report Generator
 Отказ соответствовать стандартамModel Advisor и анализ Описания Разработки системыModel Advisor и проверка Report Generator
 Непреднамеренная функцияАнализ описания разработки системы, случаев симуляции и покрытияSimulink Test и проверка покрытия
Механизм выполнения SimulinkОтказ выполнить требованияСлучаи симуляции Проверка Simulink Test
 Непреднамеренная функцияСлучаи симуляции и покрытиеSimulink Test и проверка покрытия
Simulink APIНеправильный вход к Model Advisor, приводящему к отказу, о котором сообщают,Анализ Отчета Model Advisor и действия разрешенияПроверка Model Advisor
 Неправильный вход к Описанию Разработки системыАнализ Описания Разработки системы и действия разрешенияПроверка Report Generator
 Неправильный вход к Сравнению МоделиАнализ Сравнения Модели и действия разрешенияПроверка сравнения модели Simulink
 Неправильный вход к Simulink Code Inspector™, приводящему к отказу, о котором сообщают,Анализ Отчета Simulink Code Inspector и действия разрешенияПроверка Simulink Code Inspector
Simulink Test Неправильная оценка ожидаемых результатов, приводящая к отказу, о котором сообщают,Анализ отчета результатов симуляции и действия разрешенияПроверка Simulink Test
Покрытие моделиНеправильное создание отчетов покрытия моделиАнализ покрытия сообщает и дополнительное требование для оценки покрытия моделиПроверка покрытия модели Simulink Coverage™
Покрытие кодаНеправильное создание отчетов покрытия кодаАнализ покрытия сообщает и дополнительное требование для оценки покрытия кодаПроверка покрытия кода Simulink Coverage
Model AdvisorНеправильное создание отчетов стандартов моделиНарушение стандартов модели, приводящее к соответствующему нарушению стандартов кода, обнаруживаемо Polyspace® Bug Finder™ и Polyspace Bug Finder Server™Model Advisor, Polyspace Bug Finder и проверка Polyspace Bug Finder Server
Simulink Design Verifier™ Неправильные ошибки проектирования модели при создании отчетовОшибки проектирования обнаруживаемы симуляцией и проверкой сгенерированного исходного кода с помощью Polyspace Code Prover™, Polyspace Code Prover Server, Polyspace Bug Finder и Polyspace Bug Finder ServerПроверка Simulink Design Verifier
Report GeneratorНеправильное описание разработки системыАнализ Описания Разработки системы и действия разрешенияПроверка Report Generator
Simulink Неправильное сравнение моделиАнализ Сравнения Модели и действия разрешенияПроверка сравнения модели Simulink
Embedded Coder® Неправильный исходный кодАнализ отчета Simulink Code InspectorПроверка Simulink Code Inspector
Simulink Code Inspector Неправильный отказ, о котором сообщают, исходного кодаАнализ Отчета Simulink Code Inspector и действия разрешенияПроверка Simulink Code Inspector
Polyspace Code Prover и Polyspace Code Prover ServerНеправильный отказ, о котором сообщают, исходного кодаАнализ Polyspace Code Prover и Отчета Polyspace Code Prover Server и действия разрешенияPolyspace Code Prover и проверка Polyspace Code Prover Server
Polyspace Bug Finder и Polyspace Bug Finder ServerНеправильный отказ, о котором сообщают, исходного кодаАнализ Polyspace Bug Finder и Отчета Polyspace Bug Finder Server и действия разрешенияPolyspace Bug Finder и проверка Polyspace Bug Finder Server

Единственные ошибки, которые могут непосредственно влиять и на модель и на исходный код, являются ошибками ввода данных пользователем или ошибками Engine Simulink. В любом из этих случаев результатом являются неправильные низкоуровневые требования к программному обеспечению. Неправильные низкоуровневые требования к программному обеспечению обнаруживаемы на уровне модели через комбинацию анализа проекта, симуляции, оценки покрытия и соответствия к проверке стандартов. Поскольку эти действия делаются на скомпилированном в модели памяти, обнаружение является эффективным, основана ли ошибка на вводе данных пользователем или Engine Simulink. Кроме того, если программный уровень является A или B, случаи симуляции, используемые, чтобы проверить поведение, должен быть разработан человеком кроме разработчика модели для того, чтобы достигнуть требований независимости.

Если модель была проверена, исходный код может быть сгенерирован Embedded Coder и проверен Simulink Code Inspector, Polyspace Bug Finder, Polyspace Bug Finder Server, Polyspace Code Prover и Polyspace Code Prover Server. Инструменты Simulink Code Inspector и Polyspace разрабатываются двумя независимыми группами в MathWorks® и имейте независимые требования и код. Одно исключение - то, что Simulink Code Inspector, Polyspace Bug Finder, Polyspace Bug Finder Server, Polyspace Code Prover и Polyspace Code Prover Server действительно совместно используют общую функцию синтаксического анализатора для кода С, но Embedded Coder не содержит эту функциональность. Simulink Code Inspector использует Simulink API в качестве входного источника для получения информации модели. Это - тот же API, используемый Model Advisor и Simulink Report Generator™. Этот API проверяется во время процесса тестирования квалификации инструмента для каждого из этих инструментов. Вход Simulink Code Inspector из модели основан на скомпилированном для симуляции в представлении памяти и не имеет доступа к скомпилированному для получения дополнительной информации генерации кода. Simulink Code Inspector, Polyspace Bug Finder, Polyspace Bug Finder Server, Polyspace Code Prover и Polyspace Code Prover Server читают файлы кода и заголовочные файлы, которые выводятся от Embedded Coder непосредственно как текстовые ASCII-файлы.

Следующие инструменты верификации модели могут быть квалифицированы, на DO - 178C инструкции, с помощью DO Qualification Kit:

  • Simulink Report Generator – отчет Описания разработки системы (SDD)

  • Simulink – Отчет Сравнения модели

  • Simulink Check™ – Model Advisor DO-178C/DO-331 проверяет

  • Simulink Coverage – покрытие

  • Simulink Test – Протестируйте менеджера

Кроме того, следующие инструменты верификации кода могут быть квалифицированы, на DO - 178C инструкции, с помощью DO Qualification Kit:

  • Simulink Code Inspector – отчет Инспекции кода

  • Polyspace Bug Finder

  • Polyspace Bug Finder Server

  • Polyspace Code Prover

  • Polyspace Code Prover Server

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