Инспекция кода генерирует акт осмотра кода HTML для модели Simulink® и ее сгенерированного кода. Отчет обеспечивает детальный анализ структурной эквивалентности и двусторонней отслеживаемости между моделью и кодом, сгенерированным из модели.
Инспекция кода автоматически сравнивает сгенерированный код со своей исходной моделью, чтобы удовлетворить целям рассмотрения кода в DO - 178C и другие стандарты высокой целостности. Процесс инспекции кода создает представление в оперативной памяти модели, которая независима от процесса генерации кода. Simulink Code Inspector™ систематически исследует блоки, параметры и настройки в модели, чтобы определить, эквивалентны ли они структурно операциям, операторам и данным в сгенерированном коде, и генерирует отчеты, которые могут использоваться, чтобы поддержать сертификацию программного обеспечения.
Инспекция кода Simulink Code Inspector выполняет translation validation. Входные параметры к Simulink Code Inspector являются моделью Simulink и исходным кодом C, сгенерированным генератором кода Embedded Coder® для модели. Simulink Code Inspector обрабатывает эти два входных параметров во внутренние представления (IRS), названная model IR и code IR. Они IRS преобразовываются в нормированные представления, чтобы упростить последующий анализ. В этом процессе модель IR представляет ожидаемый шаблон и код, IR составляет фактический шаблон, который будет проверен. Чтобы проверить сгенерированный код, Simulink Code Inspector пытается совпадать с нормированной моделью IR нормированному коду IR.
Инспекция кода Simulink Code Inspector была реализована независимо от генерации кода Embedded Coder. В частности, IRS, используемая Simulink Code Inspector, отличается от IRS, используемой генератором кода.
Использование методов нормализации позволяет Simulink Code Inspector смотреть код, сгенерированный высоко оптимизирующим генератором кода. О результатах этого процесса соответствия сообщают пользователю посредством отчета верификации кода и отчета трассируемости. Когда инспекция кода завершается, отчетные документы верификации кода процесс валидации перевода, и отчет трассируемости обеспечивает двунаправленное отображение между элементами модели и их дубликатами в сгенерированном коде. Элементами модели являются блоки Simulink, графики Stateflow®, состояния Stateflow и переходы Stateflow.
Результаты инспекции кода представлены иерархическим способом. Сводный отчет перечисляет топ-модель и, если инспекция кода охватила модели, на которые ссылаются, каждую модель в иерархии модели - ссылки. Для каждой модели сводный отчет обеспечивает агрегированную информацию о статусе и ссылку на подробный отчет инспекции кода для модели.
Подробные отчеты инспекции кода предоставляют следующую информацию для каждой модели:
Полный Инспекционный Результат — пройден, Предупреждение, или Не пройдено — на основе агрегированного состояния верификации кода и результатов трассируемости
Результаты Верификации кода — Сводные и подробные отчеты о верификации структурной эквивалентности между элементами модели и кода
Результаты трассируемости — Сводные и подробные отчеты о двунаправленном отображении модели к коду