exponenta event banner

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

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

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

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

После проверки модели исходный код можно создать с помощью встроенного кодера и проверить с помощью 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 имеют общую функцию синтаксического анализа для кода C, но Embedded Coder не содержит этой функции. Инспектор кода Simulink использует API Simulink в качестве источника входных данных для информации о модели. Это тот же API, который используется в Model Advisor и Generator™ отчетов Simulink. Этот 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 Qualification Kit можно определить следующие инструменты проверки модели в соответствии с DO-178C инструкциями:

  • Генератор отчетов Simulink - Отчет по описанию конструкции системы (SDD)

  • Simulink - отчет о сравнении моделей

  • Simulink Check™ - Проверки DO-178C/DO-331 Model Advisor

  • Покрытие Simulink - покрытие

  • Simulink Test - Диспетчер тестов

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

  • Инспектор кода Simulink - отчет по проверке кода

  • Поиск ошибок Polyspace

  • Сервер поиска ошибок Polyspace

  • Проверка кода Polyspace

  • Сервер проверки кода Polyspace

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