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

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

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

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

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

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

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

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

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

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

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

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

Метрика библиотечной ссылки

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

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

Вычисляет количество эффективных линий MATLAB® код.

Метрика объектов диаграммы Stateflow

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

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

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

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

  • Переходы

  • Таблицы истинности

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

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

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

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

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

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

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

Для получения дополнительной информации о метриках модели см. Раздел «Сбор модели» и «Проверки».

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

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

МетрикаОписание
Цикломатическая метрика сложности

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

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

Для получения дополнительной информации о метриках модели см. Раздел «Сбор модели» и «Проверки».

Метрики податливости

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

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

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

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

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

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

Возвращает часть проверок, которые модель передает из Model Advisor DO-178C/DO-331 Standards.

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

Возвращает часть проверок, которые модель передает из Model Advisor MAB Standard.

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

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

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

Сообщает количество проблем из Model Advisor MAAB Standard.

Для получения дополнительной информации о метриках модели см. Раздел «Сбор модели» и «Проверки».

Метрики читаемости

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

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

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

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

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

Для получения дополнительной информации о метриках модели см. Раздел «Сбор модели» и «Проверки».

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

Тип метрики: Размер

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

Идентификатор проверки Model Advisor: mathworks.metricchecks.SimulinkBlockCount

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

Описание

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

The slmetric.metric.AggregationMode параметр свойства Sum.

Проверка Model Advisor

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

Результаты

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

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

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

  • Measures: Не применяется.

Примечание

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

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

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

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

  • Не включает скрытое содержимое в разделе Диаграммы Stateflow или блоки MATLAB Function.

  • Не содержит блоков требований.

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

Метрика:

  • Работает на библиотечных моделях.

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

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

См. также

Для получения дополнительной информации о метриках модели см. Раздел «Сбор модели» и «Проверки».

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

Тип метрики: Размер

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

Идентификатор проверки Model Advisor: mathworks.metricchecks.SubSystemCount

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

Описание

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

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

The slmetric.metric.AggregationMode параметр свойства Sum.

Проверка Model Advisor

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

Результаты

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

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

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

  • Measures: Не применяется.

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

Метрика:

  • Работает на библиотечных моделях.

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

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

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

См. также

Для получения дополнительной информации о метриках модели см. Раздел «Сбор модели» и «Проверки».

Метрика библиотечной ссылки

Тип метрики: Размер

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

Идентификатор проверки Model Advisor: mathworks.metricchecks.LibraryLinkCount

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

Описание

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

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

The slmetric.metric.AggregationMode параметр свойства Sum.

Проверка Model Advisor

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

Результаты

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

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

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

  • Measures: Не применяется.

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

Метрика:

  • Работает на библиотечных моделях.

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

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

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

См. также

Для получения дополнительной информации о метриках модели см. Раздел «Сбор модели» и «Проверки».

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

Тип метрики: Размер

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

Идентификатор проверки Model Advisor: mathworks.metricchecks.MatlabLOCCount

Отображение количества эффективных линий кода MATLAB

Описание

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

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

The slmetric.metric.AggregationMode параметр свойства Sum.

Проверка Model Advisor

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

Результаты

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

  • Value: Количество эффективных линий кода MATLAB.

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

  • Measures: Не применяется.

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

Метрика:

  • Работает на библиотечных моделях.

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

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

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

См. также

Для получения дополнительной информации о метриках модели см. Раздел «Сбор модели» и «Проверки».

Метрика объектов диаграммы Stateflow

Тип метрики: Размер

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

Идентификатор проверки Model Advisor: mathworks.metricchecks.StateflowChartObjectCount

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

Описание

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

  • Атомарные субдиаграммы

  • Коробки

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

  • События

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

  • Соединения

  • Связанные графики

  • Функции MATLAB

  • Примечания

  • Функции Simulink

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

  • Переходы

  • Таблицы истинности

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

The slmetric.metric.AggregationMode параметр свойства Sum.

Проверка Model Advisor

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

Результаты

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

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

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

  • Measures: Не применяется.

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

Метрика:

  • Работает на библиотечных моделях.

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

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

См. также

Для получения дополнительной информации о метриках модели см. Раздел «Сбор модели» и «Проверки».

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

Тип метрики: Размер

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

Идентификатор проверки Model Advisor: mathworks.metricchecks.StateflowLOCCount

Отобразите количество эффективных строк кода для блоков Stateflow

Описание

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

  • График, подсчет кода на переходах и внутренних состояниях

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

  • Блок Таблица

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

The slmetric.metric.AggregationMode параметр свойства Sum.

Проверка Model Advisor

Чтобы собрать результаты для этой метрики с помощью Model Advisor, запустите проверку, Lines of code for Stateflow blocks metric в By Task > Model Metrics > Count Metrics. Проверка Model Advisor отображает количество линий кода для блоков Stateflow в модели. Проверка не анализирует ссылку на модели или возврат агрегированные результаты.

Результаты

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

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

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

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

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

Метрика:

  • Работает на библиотечных моделях.

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

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

См. также

Для получения дополнительной информации о метриках модели см. Раздел «Сбор модели» и «Проверки».

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

Тип метрики: Размер

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

Идентификатор проверки Model Advisor: mathworks.metricchecks.SubSystemDepth

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

Описание

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

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

The slmetric.metric.AggregationMode параметр свойства None.

Проверка Model Advisor

Чтобы собрать результаты для этой метрики с помощью Model Advisor, запустите проверку, Subsystem depth metric в By Task > Model Metrics > Count Metrics. Проверка Model Advisor отображает глубину подсистем в модели. Проверка не анализирует ссылку на модели или возврат агрегированные результаты.

Результаты

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

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

  • AggregatedValue: Не применяется.

  • Measures: Не применяется.

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

Метрика:

  • Работает на библиотечных моделях.

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

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

См. также

Для получения дополнительной информации о метриках модели см. Раздел «Сбор модели» и «Проверки».

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

Тип метрики: Размер

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

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

Описание

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

  • Входы: Inport блоки, Триггерные порты, Enable ports, графические входные данные и события.

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

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

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

The slmetric.metric.AggregationMode параметр свойства Max.

Результаты

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

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

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

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

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

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

Метрика:

  • Работает на библиотечных моделях.

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

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

См. также

Для получения дополнительной информации о метриках модели см. Раздел «Сбор модели» и «Проверки».

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

Тип метрики: Податливость

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

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

Описание

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

The slmetric.metric.AggregationMode параметр свойства Sum.

Результаты

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

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

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

  • Measure: Не применяется.

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

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

См. также

Для получения дополнительной информации о метриках модели см. Раздел «Сбор модели» и «Проверки».

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

Тип метрики: Размер

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

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

Описание

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

  • Входы: Inport блоки, Триггерные порты, Enable ports, графические входные данные и события.

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

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

The slmetric.metric.AggregationMode параметр свойства Max.

Результаты

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

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

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

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

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

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

Метрика:

  • Исключает From и Goto блоки.

  • Работает на библиотечных моделях.

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

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

См. также

Для получения дополнительной информации о метриках модели см. Раздел «Сбор модели» и «Проверки».

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

Тип метрики: Размер

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

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

Описание

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

The slmetric.metric.AggregationMode параметр свойства None.

Результаты

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

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

  • AggregatedValue: Не применяется.

  • Measures: Не применяется.

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

  • Работает на библиотечных моделях.

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

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

См. также

Для получения дополнительной информации о метриках модели см. Раздел «Сбор модели» и «Проверки».

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

Тип метрики: Размер

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

Вычисляет количество Matlab Function блоков в компоненте.

Описание

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

The slmetric.metric.AggregationMode параметр свойства Sum.

Результаты

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

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

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

  • Measures: Не применяется.

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

  • Работает на библиотечных моделях.

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

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

См. также

Для получения дополнительной информации о метриках модели см. Раздел «Сбор модели» и «Проверки».

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

Тип метрики: Размер

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

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

Описание

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

The 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.

The slmetric.metric.AggregationMode параметр свойства Sum.

Результаты

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

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

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

  • Measures: Не применяется.

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

Эта метрика:

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

  • Считает образцы параметров в компоненте, а не уникальные параметры.

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

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

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

См. также

Для получения дополнительной информации о метриках модели см. Раздел «Сбор модели» и «Проверки».

Метрика диаграммы Stateflow

Тип метрики: Размер

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

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

Описание

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

The slmetric.metric.AggregationMode параметр свойства Sum.

Результаты

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

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

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

  • Measures: Не применяется.

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

  • Работает на библиотечных моделях.

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

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

См. также

Для получения дополнительной информации о метриках модели см. Раздел «Сбор модели» и «Проверки».

Цикломатическая метрика сложности

Тип метрики: Архитектура

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

Идентификатор проверки Model Advisor: mathworks.metricchecks.CyclomaticComplexity

Отобразите цикломатическую сложность модели

Описание

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

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

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

  • Модель

  • Подсистемы

  • Чарты

  • Функции MATLAB

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

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

The slmetric.metric.AggregationMode параметр свойства Sum.

Проверка Model Advisor

Чтобы собрать данные для этой метрики с помощью 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.

The slmetric.metric.AggregationMode параметр свойства None.

Результаты

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

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

  • AggregatedValue: Не применяется.

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

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

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

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

См. также

Для получения дополнительной информации о метриках модели см. Раздел «Сбор модели» и «Проверки».

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

Тип метрики: Архитектура

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

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

Описание

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

The slmetric.metric.AggregationMode параметр свойства Sum.

Результаты

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

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

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

  • Measures: Не применяется.

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

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

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

См. также

Для получения дополнительной информации о метриках модели см. Раздел «Сбор модели» и «Проверки».

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

Тип метрики: Архитектура

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

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

Описание

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

The slmetric.metric.AggregationMode параметр свойства None.

Результаты

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

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

  • AggregatedValue: Не применяется.

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

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

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

См. также

Для получения дополнительной информации о метриках модели см. Раздел «Сбор модели» и «Проверки».

Метрика имени невосприимчивого блока

Тип метрики: Читаемость

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

Идентификатор проверки Model Advisor: mathworks.metricchecks.DescriptiveBlockNames

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

Описание

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

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

The slmetric.metric.AggregationMode параметр свойства Sum.

Проверка Model Advisor

Чтобы собрать результаты для этой метрики с помощью Model Advisor, запустите проверку, Nondescriptive block name metric в By Task > Model Metrics > Readability Metrics. Проверка Model Advisor отображает количество недескриптивных имен блоков Inport, Outport и Subsystem в модели или подсистеме. Проверка не отображает результат для каждого типа блока отдельно. Проверка не анализирует ссылку на модели или возврат агрегированные результаты.

Результаты

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

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

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

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

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

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

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

    • Количество блоков Outport с неразрывными именами

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

    • Количество блоков Subsystem с недискриминационными именами

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

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

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

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

    • Количество блоков Outport с неразрывными именами

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

    • Количество блоков Subsystem с недискриминационными именами

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

Метрика:

  • Не работает на библиотечных моделях.

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

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

См. также

Для получения дополнительной информации о метриках модели смотрите Сбор модели и метрики проверки

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

Тип метрики: Читаемость

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

Идентификатор проверки Model Advisor: mathworks.metricchecks.LayerSeparation

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

Описание

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

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

Для руководства по блокам на уровнях модели смотрите руководство MAB db_0143: Используемые типы блоков в иерархии модели.

The slmetric.metric.AggregationMode параметр свойства Sum.

Проверка Model Advisor

Чтобы собрать результаты для этой метрики с помощью Model Advisor, запустите проверку, Data and structure layer separation metric в By Task > Model Metrics > Readability Metrics. Проверка Model Advisor отображает разделение для модели или подсистемы. Проверка не анализирует ссылку на модели или возврат агрегированные результаты.

Результаты

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

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

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

  • Measures: Не применяется.

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

Метрика:

  • Не работает на библиотечных моделях.

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

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

См. также

Для получения дополнительной информации о метриках модели смотрите Сбор модели и метрики проверки

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

Тип метрики: Податливость

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

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

The slmetric.metric.AggregationMode параметр свойства Sum.

Результаты

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

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

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

  • Measures: Не применяется.

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

Метрика:

  • Анализирует код MATLAB в блоках MATLAB function

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

  • Работает на библиотечных моделях

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

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

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

См. также

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

Тип метрики: Податливость

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

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

The slmetric.metric.AggregationMode параметр свойства Percentile.

Результаты

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

  • Value: Доля общего количества проверок, пройденных в High-Integrity Systems подгруппах.

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

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

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

Подробнее о результатах

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

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

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

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

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

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

Метрика:

  • Работает на библиотечных моделях.

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

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

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

См. также

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

Тип метрики: Податливость

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

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

The 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 на High-Integrity Systems. Эта метрика отсчитывает каждую проверку Model Advisor, которая выдает предупреждение или отказ. Если проверка содержит ссылки на блоки, эта метрика учитывает одну проблему для каждого связанного блока. Проверки со ссылками на модель подсвечиваются в редакторе Simulink. Если проверка не содержит ссылок на блоки, эта метрика учитывает одну проблему. Эта метрика доступна с Simulink Check.

The slmetric.metric.AggregationMode параметр свойства Sum.

Результаты

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

  • ValueЧисло проблем, о которых сообщили High-Integrity Systems проверки

  • AggregatedValue:: Число проблем, о которых сообщили High-Integrity Systems проверки, агрегированные для компонента и всех его подкомпонентов.

  • Measures: Не применяется.

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

Метрика:

  • Работает на библиотечных моделях.

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

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

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

См. также

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

Тип метрики: Податливость

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

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

The slmetric.metric.AggregationMode параметр свойства Sum.

Результаты

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

  • Value: Количество проблем, о которых сообщил Model Advisor для проверок MAB.

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

  • Measures: Не применяется.

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

Метрика:

  • Работает на библиотечных моделях.

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

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

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

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

См. также

Похожие темы