Simulink® Coverage™ значением по умолчанию использует измененное условие и Decision Coverage маскирования (MCDC) определение для записи результатов покрытия MCDC. Несмотря на то, что можно изменить определение MCDC, что Simulink Coverage использует во время анализа для уникальной причины определение MCDC, существуют некоторые различия в том, как Simulink Coverage записывает покрытие для моделей, в зависимости от которого определения вы используете.
Различия между маскированием MCDC и Уникальной Причиной MCDC в анализе покрытия Simulink Coverage
Установка (MCDC) определение, используемое для анализа покрытия Simulink Coverage
Измененное условие и Decision Coverage в Simulink Design Verifier
Маскирование MCDC составляет маскирование условий в подвыражениях, допуская увеличенное число удовлетворенных целей MCDC по сравнению с определением уникальной причины MCDC. В результате некоторые модели Simulink, которые получают меньше, чем полное покрытие MCDC с помощью уникальной причины определение MCDC, получают увеличенное покрытие при использовании маскирования определение MCDC. Рассмотрите следующий пример, где два входных параметров к графику Stateflow®, условие A и условие C, не могут измениться независимо:
Эта входная зависимость результаты в зависимых условиях для выражения содержала в диаграмме Stateflow:
Для выражения (|| B) && (C || D), изменяя значение условия C также изменяет значение условия A. Из-за взаимозависимости условий A и C, уникальная причина MCDC для условия C не может быть достигнут:
Однако маскируя MCDC для условия C может быть достигнут, потому что маскирование, которое MCDC позволяет значению условия изменять в паре независимости для условия C, пока подвыражение (|| B) остается верным:
Команда Certification Authorities Software (CAST), в их меморандуме CAST 6, утверждает, что маскирование MCDC приемлемо для достижения цели MC/DC DO - 178B сертификация.
По умолчанию Simulink Coverage использует маскирование определение MCDC во время анализа покрытия. Существует два способа изменить определение MCDC, используемое для анализа покрытия Simulink Coverage:
Откройте диалоговое окно Configuration Parameters.
Установите параметр CovMcdcMode
на Masking
или Unique-Cause
.
cvtest
установить используемое определение MCDCСоздайте объект cvtest
для своей модели, чтобы установить mcdcMode
на 'Masking'
или 'UniqueCause'
:
cvt = cvtest(model) cvt.options.mcdcMode = 'UniqueCause' covdata = cvsim(cvt)
Установка CovMcdcMode
к 'UniqueCause'
может привести к различиям между MCDC, сообщающим в Simulink Coverage и генерацией тестов в Simulink Design Verifier™. Simulink Design Verifier всегда использует маскирование определение MCDC для генерации теста. Для получения дополнительной информации смотрите Измененное Условие и Decision Coverage в Simulink Design Verifier.