exponenta event banner

Метрики модели

Метрики модели

Метрики модели анализируют модель и помогают оценить ее размер, архитектуру, удобочитаемость и соответствие стандартам. Simulink ® Check™ предоставляет метрики для следующих типов показателей :

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

Для программного выполнения метрик модели и экспорта результатов в файл можно использовать API метрики модели. Дополнительные сведения см. в разделе Программный сбор метрик модели.

Для рекомендаций и стандартов компании можно также использовать API метрики модели для создания собственных метрик модели, вычисления этих метрик и экспорта данных метрики. Дополнительные сведения см. в разделе Создание пользовательской метрической метрики модели для невиртуального счетчика блоков.

Метрики размера

Для сбора метрических данных в модели или подсистеме выполните эти метрики.

МетрикаОписание
Метрика блока Simulink

Вычисляет количество блоков в модели.

Метрика подсистемы

Вычисляет количество подсистем в модели.

Метрика связи с библиотекой

Вычисляет количество связанных с библиотекой блоков в модели.

Эффективные строки метрики кода MATLAB

Вычисляет количество действующих строк кода MATLAB ®.

Метрика объектов диаграммы потока состояний

Вычисляет количество объектов Stateflow ®.

Строки кода для метрики блоков Stateflow

Вычисляет количество строк кода для следующих блоков Stateflow в модели:

  • Государства

  • Переходы

  • Таблицы правды

Метрика глубины подсистемы

Вычисляет глубину подсистемы модели.

Входная выходная метрика

Вычисляет количество входов и выходов в модели.

Явная входная выходная метрика

Вычисляет количество входов и выходов в модели.

Метрика файлаВычисляет количество файлов модели и библиотеки.
Метрика функции MATLABВычисляет количество функциональных блоков Matlab в модели.
Количество файлов моделиВычисляет количество файлов модели.
Метрика параметраВычисляет количество объектов данных, параметризующих поведение модели.
Метрика диаграммы статофлоуВычисляет количество диаграмм Stateflow в модели.

Дополнительные сведения о метриках модели см. в разделе Сбор метрик модели и тестирование.

Метрики архитектуры

Чтобы узнать больше об архитектуре модели или подсистемы, выполните эти метрики.

МетрикаОписание
Показатель цикломатической сложности

Вычисляет цикломатическую сложность модели.

Метрика содержимого клонированияВычисляет долю общего количества клонов подкомпонентов.
Метрика обнаружения клоновВычисляет количество клонов в компонентах в иерархии модели.
Метрика содержимого библиотекиВычисляет долю общего количества компонентов, являющихся связанными блоками библиотеки.

Дополнительные сведения о метриках модели см. в разделе Сбор метрик модели и тестирование.

Метрики соответствия

Чтобы определить, соответствует ли ваша модель или подсистема стандартам и рекомендациям, выполните одну или несколько из этих метрик.

МетрикаОписание
Предупреждения анализатора кода MATLAB

Определяет предупреждения для блоков кода MATLAB в модели.

Метрика диагностических предупреждений

Вычисляет количество диагностических предупреждений.

Модель Advisor проверяет соответствие для систем с высокой целостностью

Возвращает долю проверок, пройденных моделью из модуля Model Advisor DO-178C/DO-331 Standards.

Model Advisor проверяет соответствие стандартам моделирования для MAB

Возвращает долю проверок, пройденных моделью из стандарта MAB Model Advisor.

Проблемы проверки Model Advisor для систем с высокой целостностью

Сообщает о количестве проблем в приложении Model Advisor DO-178C/DO-331 Standards.

Проверка проблем со стандартами MAB с помощью Model Advisor

Сообщает о количестве проблем, связанных со стандартом MAAB Model Advisor.

Дополнительные сведения о метриках модели см. в разделе Сбор метрик модели и тестирование.

Показатели читаемости

Выполните эти метрики, чтобы определить удобочитаемость модели или подсистемы.

МетрикаОписание
Неописательная метрика имени блока

Определяет неописательные имена блоков Inport, Outport и Subsystem.

Метрика разделения уровней данных и структуры

Вычисляет разделение уровней данных и структуры.

Дополнительные сведения о метриках модели см. в разделе Сбор метрик модели и тестирование.

Метрика блока Simulink

Метрический тип: Размер

Метрический идентификатор: mathworks.metrics.SimulinkBlockCount

Код проверки помощника по модели: mathworks.metricchecks.SimulinkBlockCount

Расчет количества блоков Simulink в модели

Описание

Эта метрика используется для вычисления количества блоков в модели. Результаты предоставляют количество блоков на уровне модели и подсистемы. Эта метрика подсчитывает блоки на основе Simulink, но не включает нижележащие блоки, используемые для реализации блока. Эта метрика доступна в Simulink Check. Для сбора данных по этой метрике используйтеgetMetrics с идентификатором метрики, mathworks.metrics.SimulinkBlockCount.

slmetric.metric.AggregationMode параметр свойства имеет значение Sum.

Проверка помощника по модели

Чтобы собрать данные для этой метрики с помощью помощника по модели, выполните проверку метрики блока Simulink в меню «По задаче» > «Метрики модели» > «Метрики подсчета». При проверке помощника по модели отображается количество блоков в модели или подсистеме. Проверка не анализирует ссылочные модели и не возвращает агрегированные результаты.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • ValueКоличество блоков.

  • AggregatedValueКоличество блоков для компонента и его подкомпонентов.

  • Measures: Неприменимо.

Примечание

Результаты метрического анализа метрики блока Simulink могут отличаться от вызова sldiagnostics. Результат метрики блока Simulink:

  • Включает ссылочные модели.

  • Не включает базовые блоки, используемые для реализации блока MathWorks из обозревателя библиотеки Simulink.

  • Не включает ссылки в библиотеки MathWorks, что означает, что блоки библиотеки MathWorks, которые являются маскированными подсистемами, считаются одним блоком. Внутреннее содержимое этих блоков не учитывается.

  • Не включает скрытое содержимое в блоки Диаграммы потока состояний (Stateflow Charts) или Функциональные блоки MATLAB (MATLAB Function block).

  • Не включает блоки требований.

Возможности и ограничения

Метрика:

  • Выполняется для библиотечных моделей.

  • Анализирует содержимое в маскированных подсистемах.

  • Если указано, анализирует содержимое связанных с библиотекой блоков или ссылочных моделей.

См. также

Дополнительные сведения о метриках модели см. в разделе Сбор метрик модели и тестирование.

Метрика подсистемы

Метрический тип: Размер

Метрический идентификатор: mathworks.metrics.SubSystemCount

Код проверки помощника по модели: mathworks.metricchecks.SubSystemCount

Отображение количества подсистем в модели

Описание

Эта метрика используется для вычисления количества подсистем в модели. Результаты обеспечивают количество подсистем на уровне модели и подсистемы.

Эта метрика доступна в Simulink Check. Для сбора данных по этой метрике используйте getMetrics с идентификатором метрики, mathworks.metrics.SubSystemCount.

slmetric.metric.AggregationMode параметр свойства имеет значение Sum.

Проверка помощника по модели

Чтобы собрать данные для этой метрики с помощью Model Advisor, выполните проверку «Метрика подсистемы» в меню «По задаче» > «Метрики модели» > «Метрики подсчета». При проверке помощника по модели отображается количество подсистем в модели или подсистеме. Проверка не анализирует ссылочные модели и не возвращает агрегированные результаты.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • ValueКоличество подсистем.

  • AggregatedValueКоличество подсистем для компонента и его подкомпонента.

  • Measures: Неприменимо.

Возможности и ограничения

Метрика:

  • Выполняется для библиотечных моделей.

  • Анализирует содержимое в маскированных подсистемах.

  • Не подсчитывает подсистемы, связанные с библиотеками MathWorks ®.

  • Если указано, анализирует содержимое связанных с библиотекой блоков или ссылочных моделей.

См. также

Дополнительные сведения о метриках модели см. в разделе Сбор метрик модели и тестирование.

Метрика связи с библиотекой

Метрический тип: Размер

Метрический идентификатор: mathworks.metrics.LibraryLinkCount

Код проверки помощника по модели: mathworks.metricchecks.LibraryLinkCount

Отображение количества библиотечных связей в модели

Описание

Эта метрика используется для вычисления количества связанных с библиотекой блоков в модели. Результаты предоставляют количество связанных с библиотекой блоков на уровне модели и подсистемы.

Эта метрика доступна в Simulink Check. Для сбора данных по этой метрике используйте getMetrics с идентификатором метрики, mathworks.metrics.LibraryLinkCount.

slmetric.metric.AggregationMode параметр свойства имеет значение Sum.

Проверка помощника по модели

Чтобы собрать результаты для этой метрики с помощью Model Advisor, выполните проверку «Метрика связи с библиотекой» (Library link metric) в меню «По задаче» (By Task) > «Метрика модели» (Model Metrics) > «Счетчик метрик» (Count Metrics.The Model Advisor). Проверка не анализирует ссылочные модели и не возвращает агрегированные результаты.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • ValueКоличество связанных с библиотекой блоков.

  • AggregatedValueКоличество связанных с библиотекой блоков для компонента и его подкомпонентов.

  • Measures: Неприменимо.

Возможности и ограничения

Метрика:

  • Выполняется для библиотечных моделей.

  • Анализирует содержимое в маскированных подсистемах.

  • Не подсчитывает подсистемы, связанные с библиотеками MathWorks.

  • Если указано, анализирует содержимое связанных с библиотекой блоков или ссылочных моделей.

См. также

Дополнительные сведения о метриках модели см. в разделе Сбор метрик модели и тестирование.

Эффективные строки метрики кода MATLAB

Метрический тип: Размер

Метрический идентификатор: mathworks.metrics.MatlabLOCCount

Код проверки помощника по модели: mathworks.metricchecks.MatlabLOCCount

Просмотр количества действующих строк кода MATLAB

Описание

Эта метрика используется для вычисления количества действующих строк кода MATLAB. Действующие строки кода MATLAB являются строками исполняемого кода. Пустые линии, линии, которые содержат только комментарии и линии, которые содержат только заявление конца, не считают эффективными строками кода. Результаты предоставляют количество эффективных строк кода MATLAB для каждого функционального блока MATLAB и для функций MATLAB в диаграммах Stateflow.

Эта метрика доступна в Simulink Check. Для сбора данных по этой метрике используйте getMetrics с идентификатором метрики, mathworks.metrics.MatlabLOCCount.

slmetric.metric.AggregationMode параметр свойства имеет значение Sum.

Проверка помощника по модели

Чтобы собрать результаты для этой метрики с помощью Model Advisor, выполните проверку Эффективные строки метрики кода MATLAB (Effective lines of MATLAB code metric) в меню По задаче (By Task) > Метрики модели (Model Metrics) > Метрики подсчета (Count Metrics). Проверка помощника по модели показывает количество действующих строк кода MATLAB для каждого функционального блока MATLAB и для функций MATLAB в диаграммах потока состояний в модели. Проверка не анализирует ссылочные модели и не возвращает агрегированные результаты.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • ValueКоличество действующих строк кода MATLAB.

  • AggregatedValueКоличество действующих строк кода MATLAB для компонента и его подкомпонентов.

  • Measures: Неприменимо.

Возможности и ограничения

Метрика:

  • Выполняется для библиотечных моделей.

  • Анализирует содержимое в маскированных подсистемах.

  • Не анализирует содержимое кода MATLAB во внешних файлах.

  • Если указано, анализирует содержимое связанных с библиотекой блоков или ссылочных моделей.

См. также

Дополнительные сведения о метриках модели см. в разделе Сбор метрик модели и тестирование.

Метрика объектов диаграммы потока состояний

Метрический тип: Размер

Метрический идентификатор: mathworks.metrics.StateflowChartObjectCount

Код проверки помощника по модели: mathworks.metricchecks.StateflowChartObjectCount

Отображение количества объектов Stateflow в каждой диаграмме

Описание

Эта метрика используется для вычисления количества объектов Stateflow. Для каждой диаграммы в модели результаты предоставляют количество следующих объектов Stateflow:

  • Атомарные подшаблоны

  • Коробки

  • Объекты данных

  • События

  • Графические функции

  • Соединения

  • Связанные диаграммы

  • Функции MATLAB

  • Примечания

  • Функции симулятора

  • Государства

  • Переходы

  • Таблицы правды

Эта метрика доступна в Simulink Check. Для сбора данных по этой метрике используйте getMetrics с идентификатором метрики, mathworks.metrics.StateflowChartObjectCount.

slmetric.metric.AggregationMode параметр свойства имеет значение Sum.

Проверка помощника по модели

Чтобы собрать результаты для этой метрики с помощью помощника по модели, выполните проверку метрики объектов диаграммы Stateflow в меню «По задаче» > «Метрики модели» > «Метрики подсчета». При проверке помощника по модели отображается количество объектов Stateflow в каждой диаграмме модели. Проверка не анализирует диаграммы в ссылочных моделях и не возвращает агрегированные результаты.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • ValueКоличество объектов Stateflow.

  • AggregatedValueКоличество объектов Stateflow для компонента и его подкомпонентов.

  • Measures: Неприменимо.

Возможности и ограничения

Метрика:

  • Выполняется для библиотечных моделей.

  • Анализирует содержимое в маскированных подсистемах.

  • Если указано, анализирует содержимое связанных с библиотекой блоков или ссылочных моделей.

См. также

Дополнительные сведения о метриках модели см. в разделе Сбор метрик модели и тестирование.

Строки кода для метрики блоков Stateflow

Метрический тип: Размер

Метрический идентификатор: mathworks.metrics.StateflowLOCCount

Код проверки помощника по модели: mathworks.metricchecks.StateflowLOCCount

Отображение количества действующих строк кода для блоков Stateflow

Описание

Эта метрика используется для вычисления количества действующих строк кода в Stateflow. Действующие строки кода MATLAB являются строками исполняемого кода. Пустые линии, линии, которые содержат только комментарии и линии, которые содержат только заявление конца, не считают эффективными строками кода. Эта метрика вычисляет строки кода для следующих блоков Stateflow в модели:

  • Диаграмма, считая код для переходов и внутренних состояний

  • Блок таблицы перехода состояния

  • Блок таблицы истинности

Эта метрика доступна в Simulink Check. Для сбора данных по этой метрике используйте getMetrics с идентификатором метрики, mathworks.metrics.StateflowLOCCount.

slmetric.metric.AggregationMode параметр свойства имеет значение Sum.

Проверка помощника по модели

Чтобы собрать результаты для этой метрики с помощью Model Advisor, выполните проверку «Строки кода для метрики блоков Stateflow» в меню «По задаче» > «Метрики модели» > «Метрики подсчета». При проверке помощника по модели отображается количество кодовых строк для блоков потока состояний в модели. Проверка не анализирует ссылочные модели и не возвращает агрегированные результаты.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • ValueКоличество строк блочного кода Stateflow.

  • AggregatedValueКоличество строк блочного кода Stateflow для компонента и его подкомпонентов.

  • MeasuresВектор с двумя записями: количество действующих строк кода на языке действий MATLAB и число действующих строк кода на языке действий C.

Возможности и ограничения

Метрика:

  • Выполняется для библиотечных моделей.

  • Анализирует содержимое в маскированных подсистемах.

  • Если указано, анализирует содержимое связанных с библиотекой блоков или ссылочных моделей.

См. также

Дополнительные сведения о метриках модели см. в разделе Сбор метрик модели и тестирование.

Метрика глубины подсистемы

Метрический тип: Размер

Метрический идентификатор: mathworks.metrics.SubSystemDepth

Код проверки помощника по модели: mathworks.metricchecks.SubSystemDepth

Вычисляет глубину иерархических дочерних элементов подсистемы или модели

Описание

Эта метрика используется для подсчета относительной глубины всех иерархических нижестоящих элементов для данной подсистемы или модели, начиная с заданного компонента или корня анализа. Анализ прохождения глубины останавливается, когда он достигает ссылочной модели или библиотеки. Глубина перезапускается с 0 для каждого из этих компонентов.

Эта метрика доступна в Simulink Check. Для сбора данных по этой метрике используйте getMetrics с идентификатором метрики, mathworks.metrics.SubSystemDepth.

slmetric.metric.AggregationMode параметр свойства имеет значение None.

Проверка помощника по модели

Чтобы собрать результаты для этой метрики с помощью помощника по модели, выполните проверку «Метрика глубины подсистемы» в меню «По задаче» > «Метрики модели» > «Метрики подсчета». При проверке помощника по модели отображается глубина подсистем в модели. Проверка не анализирует ссылочные модели и не возвращает агрегированные результаты.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • Value: глубина подсистемы для каждого компонента иерархии.

  • AggregatedValue: Неприменимо.

  • Measures: Неприменимо.

Возможности и ограничения

Метрика:

  • Выполняется для библиотечных моделей.

  • Анализирует содержимое в маскированных подсистемах.

  • Если указано, анализирует содержимое связанных с библиотекой блоков или ссылочных моделей.

См. также

Дополнительные сведения о метриках модели см. в разделе Сбор метрик модели и тестирование.

Входная выходная метрика

Метрический тип: Размер

Метрический идентификатор: mathworks.metrics.IOCount

Отображение количества входов и выходов в модели

Описание

Используйте эту метрику для вычисления количества входов и выходов в модели, которые включают:

  • Входные данные: блоки ввода, порты триггера, порты включения, входные данные диаграммы и события.

  • Выходные данные: выходные блоки, выходные данные диаграммы и события.

  • Неявные входы: из блока, где соответствующий блок Goto находится вне компонента.

  • Неявные выходы: блок «Перейти к», где соответствующий блок «От» находится вне компонента.

slmetric.metric.AggregationMode параметр свойства имеет значение Max.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • Value: общий размер интерфейса или сумма элементов Measures.

  • AggregatedValueКоличество входов и выходов для компонента и его подкомпонентов.

  • MeasuresМассив состоит из количества входов, количества выходов, количества неявных входов и количества неявных выходов, которые являются локальными для компонента.

  • AggregatedMeasuresМаксимальное количество входов, выходов, неявных входов и неявных выходов для компонента и подкомпонентов.

Возможности и ограничения

Метрика:

  • Выполняется для библиотечных моделей.

  • Анализирует содержимое в маскированных подсистемах.

  • Если указано, анализирует содержимое связанных с библиотекой блоков или ссылочных моделей.

См. также

Дополнительные сведения о метриках модели см. в разделе Сбор метрик модели и тестирование.

Метрика диагностических предупреждений

Метрический тип: соответствие

Метрический идентификатор: mathworks.metrics.DiagnosticWarningsCount

Вычислите количество диагностических предупреждений, сообщенных при обновлении модели для моделирования.

Описание

Эта метрика используется для вычисления количества диагностических предупреждений Simulink, сообщаемых при обновлении модели для моделирования. Эта метрика доступна в Simulink Check. Для сбора данных по этой метрике используйте getMetrics с идентификатором метрики, mathworks.metrics.DiagnosticWarningsCount.

slmetric.metric.AggregationMode параметр свойства имеет значение Sum.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • ValueКоличество диагностических предупреждений.

  • AggregatedValueКоличество диагностических предупреждений для компонента и его подкомпонентов.

  • Measure: Неприменимо.

Возможности и ограничения

  • Если указано, анализирует содержимое связанных с библиотекой блоков или ссылочных моделей.

См. также

Дополнительные сведения о метриках модели см. в разделе Сбор метрик модели и тестирование.

Явная входная выходная метрика

Метрический тип: Размер

Метрический идентификатор: mathworks.metrics.ExplicitIOCount

Отображение количества входов и выходов в модели, исключая блоки From и Goto.

Описание

Используйте эту метрику для вычисления количества входов и выходов в модели, которые включают:

  • Входные данные: блоки ввода, порты триггера, порты включения, входные данные диаграммы и события.

  • Выходные данные: выходные блоки, выходные данные диаграммы и события.

Эта метрика доступна в Simulink Check. Для сбора данных по этой метрике используйте getMetrics с идентификатором метрики, mathworks.metrics.ExplicitIOCount.

slmetric.metric.AggregationMode параметр свойства имеет значение Max.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • ValueОбщий размер интерфейса или сумма элементов Measures.

  • AggregatedValueКоличество входов и выходов для компонента и его подкомпонентов.

  • MeasuresМассив, состоящий из количества входов и количества выходов, которые являются локальными для компонента.

  • AggregatedMeasuresМаксимальное количество входов и выходов для компонента и подкомпонентов.

Возможности и ограничения

Метрика:

  • Исключение блоков «Из» и «Перейти к».

  • Выполняется для библиотечных моделей.

  • Анализирует содержимое в маскированных подсистемах.

  • Если указано, анализирует содержимое связанных с библиотекой блоков или ссылочных моделей.

См. также

Дополнительные сведения о метриках модели см. в разделе Сбор метрик модели и тестирование.

Метрика файла

Метрический тип: Размер

Метрический идентификатор: mathworks.metrics.FileCount

Вычисляет количество файлов модели и библиотеки, используемых определенным компонентом и его подкомпонентами.

Описание

Эта метрика используется для подсчета количества файлов модели и библиотеки, используемых определенным компонентом и его подкомпонентами. Эта метрика доступна в Simulink Check. Для сбора данных по этой метрике используйте getMetrics с идентификатором метрики, mathworks.metrics.FileCount.

slmetric.metric.AggregationMode параметр свойства имеет значение None.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • ValueКоличество файлов модели и библиотеки.

  • AggregatedValue: Неприменимо.

  • Measures: Неприменимо.

Возможности и ограничения

  • Выполняется для библиотечных моделей.

  • Анализирует содержимое в маскированных подсистемах.

  • Если указано, анализирует содержимое связанных с библиотекой блоков или ссылочных моделей.

См. также

Дополнительные сведения о метриках модели см. в разделе Сбор метрик модели и тестирование.

Метрика функции MATLAB

Метрический тип: Размер

Метрический идентификатор: mathworks.metrics.MatlabFunctionCount

Вычисляет количество функциональных блоков Matlab внутри компонента.

Описание

Эта метрика используется для подсчета количества функциональных блоков Matlab внутри компонента. Эта метрика доступна в Simulink Check. Для сбора данных по этой метрике используйте getMetrics с идентификатором метрики, mathworks.metrics.MatlabFunctionCount.

slmetric.metric.AggregationMode параметр свойства имеет значение Sum.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • ValueКоличество функциональных блоков Matlab.

  • AggregatedValueКоличество функциональных блоков Matlab для компонента и его подкомпонентов.

  • Measures: Неприменимо.

Возможности и ограничения

  • Выполняется для библиотечных моделей.

  • Анализирует содержимое в маскированных подсистемах.

  • Если указано, анализирует содержимое связанных с библиотекой блоков или ссылочных моделей.

См. также

Дополнительные сведения о метриках модели см. в разделе Сбор метрик модели и тестирование.

Количество файлов модели

Метрический тип: Размер

Метрический идентификатор: mathworks.metrics.ModelFileCount

Вычислите количество файлов модели.

Описание

Эта метрика используется для подсчета количества файлов модели. Эта метрика доступна в Simulink Check. Для сбора данных по этой метрике используйте getMetrics с идентификатором метрики, mathworks.metrics.ModelFileCount.

slmetric.metric.AggregationMode параметр свойства имеет значение None.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • ValueКоличество файлов, на которые ссылается компонент и его подкомпоненты.

  • AggregatedValue: Неприменимо.

  • Measures: Неприменимо.

Возможности и ограничения

  • Выполняется для библиотечных моделей.

  • Анализирует содержимое в маскированных подсистемах.

  • Если указано, анализирует содержимое связанных с библиотекой блоков или ссылочных моделей.

См. также

Дополнительные сведения о метриках модели см. в разделе Сбор метрик модели и тестирование.

Метрика параметра

Метрический тип: Размер

Метрический идентификатор: mathworks.metrics.ParameterCount

Вычислите количество параметров.

Описание

Используйте эту метрику для вычисления количества управляемых пользователем данных параметризации в системе Simulink. Параметр - это переменная, используемая блоком Simulink или объектом базового типа (single, double, uint8, uint16, uint32, int8, int16, int32, boolean, logical, struct, char, cell), Simulink.Parameter, Simulink.Variant, или enum значение. Параметр может храниться либо в базовой рабочей области, либо в рабочей области модели, либо в словаре данных.

Эта метрика доступна в Simulink Check. Для сбора данных по этой метрике используйте getMetrics с идентификатором метрики, mathworks.metrics.ParameterCount.

slmetric.metric.AggregationMode параметр свойства имеет значение Sum.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • ValueКоличество параметров, используемых внутри компонента.

  • AggregatedValueКоличество параметров компонента и его подкомпонентов.

  • Measures: Неприменимо.

Возможности и ограничения

Эта метрика:

  • Использует Simulink.findVars и наследует ограничения этой функции.

  • Подсчитывает экземпляры параметров в компоненте, а не уникальные параметры.

  • Не включает параметры в маскированные рабочие области.

  • Не включает в себя тип данных и сигнальные объекты.

  • Если указано, анализирует содержимое связанных с библиотекой блоков или ссылочных моделей.

См. также

Дополнительные сведения о метриках модели см. в разделе Сбор метрик модели и тестирование.

Метрика диаграммы статофлоу

Метрический тип: Размер

Метрический идентификатор: mathworks.metrics.StateflowChartCount

Вычислите количество диаграмм Stateflow на любом уровне компонента.

Описание

Эта метрика используется для подсчета количества диаграмм Stateflow на любом уровне компонента. Эта метрика доступна в Simulink Check. Для сбора данных по этой метрике используйте getMetrics с идентификатором метрики, mathworks.metrics.StateflowChartCount.

slmetric.metric.AggregationMode параметр свойства имеет значение Sum.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • ValueКоличество диаграмм Stateflow на уровне модели.

  • AggregatedValueКоличество диаграмм для компонента и его подкомпонентов.

  • Measures: Неприменимо.

Возможности и ограничения

  • Выполняется для библиотечных моделей.

  • Анализирует содержимое в маскированных подсистемах.

  • Если указано, анализирует содержимое связанных с библиотекой блоков или ссылочных моделей.

См. также

Дополнительные сведения о метриках модели см. в разделе Сбор метрик модели и тестирование.

Показатель цикломатической сложности

Метрический тип: Архитектура

Метрический идентификатор: mathworks.metrics.CyclomaticComplexity

Код проверки помощника по модели: mathworks.metricchecks.CyclomaticComplexity

Отображение цикломатической сложности модели

Описание

Эта метрика используется для вычисления цикломатической сложности модели. Цикломатическая сложность является мерой структурной сложности модели. Измерение сложности может отличаться для сгенерированного кода, чем для модели, из-за функций кода, которые не учитываются в этом анализе, таких как консолидированная логика и проверка ошибок. Для вычисления цикломатической сложности объекта (например, блока, диаграммы или состояния) Simulink Check использует следующую формулу:

N - количество точек решения, которые представляет объект, и количество результатов для n-й точки решения. Вычисление рассматривает векторизированную операцию или блок многопортового коммутатора в качестве одной точки решения. Инструмент добавляет 1 к номеру сложности для моделей, атомных подсистем и диаграмм Stateflow.

Результаты обеспечивают локальную и агрегированную цикломатическую сложность для:

  • Модель

  • Подсистемы

  • Чарты

  • Функции MATLAB

Локальная сложность - это цикломатическая сложность для объектов на их иерархическом уровне. Агрегированная цикломатическая сложность - цикломатическая сложность объекта и его потомков

Эта метрика доступна в Simulink Check. Для сбора данных по этой метрике используйте getMetrics с идентификатором метрики, mathworks.metrics.CyclomaticComplexity.

slmetric.metric.AggregationMode параметр свойства имеет значение Sum.

Проверка помощника по модели

Чтобы собрать данные для этой метрики с помощью Model Advisor, выполните проверку Cyclomatic Complexity metric в разделе By Task > Model Metrics > Complexity Metrics. Проверка Model Advisor показывает локальную цикломатическую сложность для корневой модели и для объектов Simulink и Stateflow в системе. Проверка не анализирует ссылочные модели и не возвращает агрегированные результаты.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • ValueЛокальная цикломатическая сложность.

  • AggregatedValueАгрегированная цикломатическая сложность.

  • Measures: Неприменимо.

Возможности и ограничения

Метрика:

  • Не выполняется для библиотечных моделей.

  • Анализирует содержимое в маскированных подсистемах.

  • Не анализирует неактивные варианты.

  • Если указано, анализирует содержимое связанных с библиотекой блоков или ссылочных моделей.

  • Не анализирует ссылочные модели в ускоренном режиме.

См. также

Метрика содержимого клонирования

Метрический тип: Архитектура

Метрический идентификатор: mathworks.metrics.CloneContent

Вычисляет долю общего количества клонов подкомпонентов.

Описание

Эта метрика используется для вычисления доли общего количества клонов подкомпонентов. Клоны должны иметь одинаковые типы блоков и соединения, но они могут иметь различные значения параметров. Дополнительные сведения об обнаружении клонов см. в разделе Включение повторного использования компонентов с помощью обнаружения клонов.

Эта метрика доступна в Simulink Check. Для сбора данных по этой метрике используйте getMetrics с идентификатором метрики, mathworks.metrics.CloneContent.

slmetric.metric.AggregationMode параметр свойства имеет значение None.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • ValueДоля от общего числа компонентов, являющихся клонами

  • AggregatedValue: Неприменимо.

  • MeasuresВектор, содержащий количество клонов, общее количество компонентов и номер группы клонов.

Возможности и ограничения

  • Анализирует содержимое в маскированных подсистемах.

  • Если указано, анализирует содержимое связанных с библиотекой блоков или ссылочных моделей.

См. также

Дополнительные сведения о метриках модели см. в разделе Сбор метрик модели и тестирование.

Метрика обнаружения клонов

Метрический тип: Архитектура

Метрический идентификатор: mathworks.metrics.CloneDetection

Вычислите количество клонов в модели.

Описание

Эта метрика используется для подсчета количества клонов в модели. Клоны должны иметь одинаковые типы блоков и соединения, но они могут иметь различные значения параметров. Эта метрика доступна в Simulink Check. Для сбора данных по этой метрике используйте getMetrics с идентификатором метрики, mathworks.metrics.CloneDetection.

slmetric.metric.AggregationMode параметр свойства имеет значение Sum.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • ValueКоличество клонов.

  • AggregatedValueКоличество клонов для компонента и его подкомпонентов.

  • Measures: Неприменимо.

Возможности и ограничения

  • Анализирует содержимое в маскированных подсистемах.

  • Если указано, анализирует содержимое связанных с библиотекой блоков или ссылочных моделей.

См. также

Дополнительные сведения о метриках модели см. в разделе Сбор метрик модели и тестирование.

Метрика содержимого библиотеки

Метрический тип: Архитектура

Метрический идентификатор: mathworks.metrics.LibraryContent

Вычисляет долю общего количества компонентов, являющихся связанными блоками библиотеки.

Описание

Эта метрика используется для вычисления доли общего количества компонентов, являющихся связанными блоками библиотеки. Эта метрика доступна в Simulink Check. Для сбора данных по этой метрике используйте getMetrics с идентификатором метрики, mathworks.metrics.LibraryContent.

slmetric.metric.AggregationMode параметр свойства имеет значение None.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • Value: Доля от общего числа подкомпонентов, которые являются связанными блоками библиотеки.

  • AggregatedValue: Неприменимо.

  • MeasuresВектор, содержащий количество связанных библиотечных блоков и общее количество компонентов

Возможности и ограничения

  • Если указано, анализирует содержимое связанных с библиотекой блоков или ссылочных моделей.

См. также

Дополнительные сведения о метриках модели см. в разделе Сбор метрик модели и тестирование.

Неописательная метрика имени блока

Метрический тип: читаемость

Метрический идентификатор: mathworks.metrics.DescriptiveBlockNames

Код проверки помощника по модели: mathworks.metricchecks.DescriptiveBlockNames

Отображение неописательных имен блоков Inport, Outport и Subsystem

Описание

Эта метрика используется для определения неописательных имен блоков Inport, Outport и Subsystem. Имена по умолчанию, добавленные целым числом, не являются описательными именами блоков. Результаты предоставляют неописательные имена блоков на уровнях модели и подсистемы.

Эта метрика доступна в Simulink Check. Для сбора данных по этой метрике используйте getMetrics с идентификатором метрики, mathworks.metrics.DescriptiveBlockNames.

slmetric.metric.AggregationMode параметр свойства имеет значение Sum.

Проверка помощника по модели

Чтобы собрать результаты для этой метрики с помощью Model Advisor, выполните проверку метрики имени блока без описания в меню «По задаче» > «Метрики модели» > «Метрики читаемости». При проверке Model Advisor в модели или подсистеме отображается число неописательных имен блоков Inport, Outport и Subsystem. Проверка не отображает результат для каждого типа блока отдельно. Проверка не анализирует ссылочные модели и не возвращает агрегированные результаты.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • Value: Количество неописательных имен блоков Inport, Outport и Subsystem.

  • AggregatedValue: Количество неописательных имен блоков Inport, Outport и Subsystem для компонента и его подкомпонентов.

  • Measures: 1-D вектор, содержащий:

    • Общее количество блоков ввода

    • Количество блоков ввода с неописательными именами

    • Общее количество блоков исходящего порта

    • Количество блоков исходящего порта с неописательными именами

    • Общее количество блоков подсистемы

    • Количество блоков подсистемы с неописательными именами

  • AggregatedMeasuresВектор 1-D, содержащий сумму:

    • Общее количество блоков ввода

    • Количество блоков ввода с неописательными именами

    • Общее количество блоков исходящего порта

    • Количество блоков исходящего порта с неописательными именами

    • Общее количество блоков подсистемы

    • Количество блоков подсистемы с неописательными именами

Возможности и ограничения

Метрика:

  • Не выполняется для библиотечных моделей.

  • Анализирует содержимое в маскированных подсистемах.

  • Если указано, анализирует содержимое связанных с библиотекой блоков или ссылочных моделей.

См. также

Дополнительные сведения о метриках модели см. в разделе Сбор метрик модели и тестирование

Метрика разделения уровней данных и структуры

Метрический тип: читаемость

Метрический идентификатор: mathworks.metrics.LayerSeparation

Код проверки помощника по модели: mathworks.metricchecks.LayerSeparation

Отображение данных и разделение слоев структуры

Описание

Выполните эту метрику для вычисления разделения слоев данных и структуры. Результаты обеспечивают разделение на уровне модели и подсистемы.

Эта метрика доступна в Simulink Check. Для сбора данных по этой метрике используйте getMetrics с идентификатором метрики, mathworks.metrics.LayerSeparation.

Инструкции о блоках на уровнях модели см. в руководстве MAB db_0143: Usable block types in model hierarchy.

slmetric.metric.AggregationMode параметр свойства имеет значение Sum.

Проверка помощника по модели

Чтобы собрать результаты для этой метрики с помощью Model Advisor, выполните проверку, метрику разделения слоев данных и структуры в меню «По задаче» > «Метрики модели» > «Метрики читаемости». При проверке помощника по модели отображается разделение для модели или подсистемы. Проверка не анализирует ссылочные модели и не возвращает агрегированные результаты.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • ValueКоличество основных блоков на несущем уровне.

  • AggregatedValueКоличество основных блоков на структурном уровне для компонента и его подкомпонентов.

  • Measures: Неприменимо.

Возможности и ограничения

Метрика:

  • Не выполняется для библиотечных моделей.

  • Анализирует содержимое в маскированных подсистемах.

  • Если указано, анализирует содержимое связанных с библиотекой блоков или ссылочных моделей.

См. также

Дополнительные сведения о метриках модели см. в разделе Сбор метрик модели и тестирование

Предупреждения анализатора кода MATLAB

Метрический тип: соответствие

Метрический идентификатор: mathworks.metrics.MatlabCodeAnalyzerWarnings

Эта метрика используется для вычисления количества предупреждений анализатора кода MATLAB из кода MATLAB в модели. Эта метрика доступна в Simulink Check.

slmetric.metric.AggregationMode параметр свойства имеет значение Sum.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • ValueКоличество предупреждений анализатора кода MATLAB

  • AggregatedValueКоличество предупреждений анализатора кода MATLAB, агрегированных для компонента и подкомпонентов.

  • Measures: Неприменимо.

Возможности и ограничения

Метрика:

  • Анализ кода MATLAB в функциональных блоках MATLAB

  • Анализ функций MATLAB в диаграммах Stateflow

  • Выполняется для библиотечных моделей

  • Анализ содержимого в маскированных подсистемах

  • Если указано, анализирует содержимое связанных с библиотекой блоков и ссылочных моделей.

  • Не анализирует внешние файлы кода MATLAB

См. также

Модель Advisor проверяет соответствие для систем с высокой целостностью

Метрический тип: соответствие

Метрический идентификатор: mathworks.metrics.ModelAdvisorCheckCompliance.hisl_do178

Используйте эту метрику для вычисления доли проверок Model Advisor, которые проходят для подгрупп систем высокой целостности. Эта метрика доступна в Simulink Check.

slmetric.metric.AggregationMode параметр свойства имеет значение Percentile.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • ValueДоля от общего числа проверок, пройденных в подгруппах систем высокой целостности.

  • AggregatedValue: Доля общего количества проверок, переданных в подгруппах систем высокой целостности, агрегированных для компонента и всех его подкомпонентов.

  • MeasuresВектор, содержащий число проверок, переданных в подгруппах, и число проверок в подгруппах.

  • AggregatedMeasuresВектор, содержащий число проверок, переданных в подгруппах, и число проверок в подгруппе для компонента и всех его подкомпонентов.

Сведения о результатах

Для этой метрики экземпляры slmetric.metric.ResultDetail Value свойство обеспечивает следующие результаты:

  • Значение 0 указывает на то, что проверка не была выполнена.

  • Значение 1 указывает, что проверка пройдена.

  • Значение 2 указывает на предупреждение о проверке.

  • Значение 3 указывает на сбой.

Возможности и ограничения

Метрика:

  • Выполняется для библиотечных моделей.

  • Анализирует содержимое в маскированных подсистемах.

  • Если указано, анализирует содержимое связанных с библиотекой блоков или ссылочных моделей.

  • Анализирует содержимое в объектах Stateflow.

См. также

Model Advisor проверяет соответствие стандартам моделирования для MAB

Метрический тип: соответствие

Метрический идентификатор: mathworks.metrics.ModelAdvisorCheckCompliance.maab

Эта метрика используется для вычисления доли проверок Model Advisor, которые проходят для группы Стандарты моделирования для MAB. Эта метрика доступна в Simulink Check.

slmetric.metric.AggregationMode параметр свойства имеет значение Percentile.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • ValueДоля от общего числа проверок, переданных в MAB.

  • AggregatedValueДоля общего количества проверок, переданных в MAB, агрегированных для компонента и всех его подкомпонентов.

  • MeasuresВектор, содержащий: количество проверок, переданных в группе, и количество проверок в группе.

  • AggregatedMeasuresВектор, содержащий: количество проверок, переданных в группе, и количество проверок в группе для компонента и всех его подкомпонентов.

Сведения о результатах

Для этой метрики экземпляры slmetric.metric.ResultDetail Value свойство обеспечивает следующие результаты:

  • Значение 0 указывает на то, что проверка не была выполнена.

  • Значение 1 указывает, что проверка пройдена.

  • Значение 2 указывает на предупреждение о проверке.

  • Значение 3 указывает на сбой.

Возможности и ограничения

Метрика:

  • Выполняется для библиотечных моделей.

  • Анализирует содержимое в маскированных подсистемах.

  • Если указано, анализирует содержимое связанных с библиотекой блоков или ссылочных моделей.

  • Анализирует содержимое в объектах Stateflow.

См. также

Проблемы проверки Model Advisor для систем с высокой целостностью

Метрический тип: соответствие

Метрический идентификатор: mathworks.metrics.ModelAdvisorCheckIssues.hisl_do178

Используйте эту метрику для вычисления количества проблем, о которых сообщают подгруппы проверки систем высокой целостности в Model Advisor. Эта метрика подсчитывает каждую проверку Model Advisor, которая выдает предупреждение или сбой. Если проверка содержит ссылки на блоки, эта метрика подсчитывает один выпуск для каждого связанного блока. Проверки со ссылками на модель подсвечиваются в редакторе Simulink. Если проверка не содержит ссылок на блоки, эта метрика подсчитывает одну проблему. Эта метрика доступна в Simulink Check.

slmetric.metric.AggregationMode параметр свойства имеет значение Sum.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • ValueКоличество проблем, о которых сообщалось в ходе проверок систем с высокой степенью целостности

  • AggregatedValueКоличество проблем, о которых сообщили в ходе проверок систем высокой целостности, агрегированных для компонента и всех его подкомпонентов.

  • Measures: Неприменимо.

Возможности и ограничения

Метрика:

  • Выполняется для библиотечных моделей.

  • Анализирует содержимое в маскированных подсистемах.

  • Если указано, анализирует содержимое связанных с библиотекой блоков или ссылочных моделей.

  • Анализирует содержимое в объектах Stateflow.

См. также

Проверка проблем со стандартами MAB с помощью Model Advisor

Метрический тип: соответствие

Метрический идентификатор: mathworks.metrics.ModelAdvisorCheckIssues.maab

Эта метрика используется для вычисления количества проблем, о которых сообщила группа проверок Model Advisor для стандартов моделирования для MAB. Эта метрика подсчитывает каждую проверку Model Advisor, которая выдает предупреждение или сбой. Если проверка содержит ссылки на блоки, эта метрика подсчитывает один выпуск для каждого связанного блока. Проверки со ссылками на модель подсвечиваются в редакторе Simulink. Если проверка не содержит ссылок на блоки, эта метрика подсчитывает одну проблему. Эта метрика доступна в Simulink Check.

slmetric.metric.AggregationMode параметр свойства имеет значение Sum.

Результаты

Для этой метрики экземпляры slmetric.metric.Result обеспечивают следующие результаты:

  • ValueКоличество проблем, о которых сообщил консультант по модели для проверок MAB.

  • AggregatedValueКоличество проблем, о которых сообщил консультант по модели для проверок MAB, агрегированных для компонента и его подкомпонентов.

  • Measures: Неприменимо.

Возможности и ограничения

Метрика:

  • Выполняется для библиотечных моделей.

  • Анализирует содержимое в маскированных подсистемах.

  • Если указано, анализирует содержимое связанных с библиотекой блоков или ссылочных моделей.

  • Анализирует содержимое в объектах Stateflow.

  • Добавляет проблемы проверки в наборе конфигурации или проблемы с объектами данных к числу проблем на корневом уровне модели.

См. также

Связанные темы