メトリクス ダッシュボードを使用したメトリクス データの収集と確認
メモ
メトリクス ダッシュボードをモデルのサイズ、アーキテクチャ、複雑度の解析にのみ現在使用している場合は、代わりにモデル保守性ダッシュボードを使用できます。詳細については、Migrating from Metrics Dashboard to Model Maintainability Dashboardを参照してください。
メトリクス ダッシュボードでは、複数のモデルベース デザイン ツールから品質メトリクス データを収集して統合し、プロジェクトの品質ステータスを評価できます。ダッシュボードを開くには、次の手順を実行します。
アプリ ギャラリーで [メトリクス ダッシュボード] をクリックします。
コマンド ラインに
metricsdashboard(
と入力します。system
)system
は、モデル名、またはサブシステムへのブロック パスです。システムを Configurable Subsystem ブロックにすることはできません。
メトリクス データは、ダッシュボードを使用するか、slmetric.Engine
API を使用してプログラムによって収集できます。特定のモデルのメトリクス データを以前に収集したことがある場合は、ダッシュボードを開いたときに、データベース内の既存のデータが取り込まれます。
ダッシュボードを使用してメトリクス データを収集 (または再収集) する場合は、ツール バーで以下を行います。
[オプション] メニューを使用して、モデル参照およびモデル ライブラリをデータ収集に含めるかどうかを指定します。
[すべてのメトリクス] をクリックします。モデルのコンパイルが必要なメトリクスを収集しない場合は、[コンパイルなしのメトリクス] をクリックします。
メトリクス ダッシュボードには、システム名とデータ収集のタイムスタンプが表示されます。データ収集時に問題があった場合は、警告アイコンをクリックして警告を確認します。
モデルまたはサブシステムごとに、一度に 1 つのダッシュボードのみ開くことができます。また、あるモデルまたはサブシステムのダッシュボードが開いているときに、そのモデルまたはサブシステムのメトリクス データをプログラムにより収集すると、ダッシュボードは自動的に閉じます。
メトリクス ダッシュボードのウィジェット
メトリクス ダッシュボードにはウィジェットが含まれており、サイズ、モデリング ガイドラインの準拠、アーキテクチャの各カテゴリのメトリクス データが可視化されます。データを詳細に確認するには、個々のメトリクス ウィジェットをクリックします。選択したメトリクスに関して、モデルのコンポーネント レベルの値、集計値および測定値 (該当する場合) がテーブルに表示されます。ダッシュボードのこのテーブルから、データ ソースへのトレーサビリティとハイパーリンクを使用して、詳細な結果および問題のトラブルシューティングに推奨されるアクションを確認できます。詳細データを確認する場合は、次の点に注意してください。
メトリクス ダッシュボードはメトリクス データをコンポーネントごとに計算します。コンポーネントは、モデル、サブシステム、チャート、または MATLAB Function ブロックです。
[テーブル] ビューまたは [ツリー] ビューで結果を表示できます。[高信頼性] および [MAB] 準拠ウィジェットの場合は、[グリッド] ビューを選択することもできます。強調表示された結果を表示するには、グリッド ビューでセルをクリックします。
値または集計値を基準として結果を並べ替えるには、対応する値の列ヘッダーをクリックします。
[高信頼性] および [MAB] 準拠ウィジェット以外のメトリクスに関して、結果をフィルターできます。結果をフィルターするには、[テーブル] ビューで、[タイプ]、[コンポーネント]、[パス] の列ヘッダーの右側でコンテキスト メニューを選択します。[タイプ] メニューから、該当するコンポーネントを選択します。[コンポーネント] メニューと [パス] メニューから、コンポーネント名またはパスを検索バーに入力します。メトリクス ダッシュボードにウィジェットのフィルターが保存されるため、他のウィジェットのメトリクスの詳細を表示しても、フィルターされた結果に戻ることができます。
[テーブル] ビューと [ツリー] ビューでは、値または集計値が
n/a
の場合、そのコンポーネントについての結果が使用できないことを示します。値または集計値がn/a
の場合、[テーブル] ビューにはコンポーネントがリストされません。[ツリー] ビューには、そのようなコンポーネントがリストされます。収集されるメトリクス データは、同じモデルのインスタンスも含めて、システム全体を定量化します。集計値の場合、メトリクス エンジンによって、参照階層のモデルの各インスタンスからデータが集計されます。たとえば、システム階層で同じモデルが 2 回参照される場合、そのブロック数は、全体的なシステム ブロック数に 2 回寄与します。
サブシステム、チャートまたは MATLAB Function ブロックがパラメーターを使用する場合や、問題を示すフラグが付けられている場合は、親コンポーネントのパラメーター数または問題数が増加します。
メトリクス ダッシュボードはバリアントを解析します。
カスタム メトリクスの場合、ダッシュボードに追加するウィジェットを指定できます。ウィジェットを削除することもできます。メトリクス ダッシュボードのカスタマイズの詳細については、メトリクス ダッシュボードのレイアウトおよび機能のカスタマイズを参照してください。
サイズ
次の表は、システムのサイズの全体像を提供するメトリクス ダッシュボードのウィジェットのリストです。ウィジェットで詳細を調べると、この表には利用可能な詳細情報も表示されます。
ウィジェット | メトリクス | 詳細データ |
---|---|---|
ブロック | Simulink ブロックの個数 (mathworks.metrics.SimulinkBlockCount ) | コンポーネントごとのブロック数 |
モデル | モデル ファイル数 (mathworks.metrics.ModelFileCount ) | コンポーネントごとのモデル ファイル数 |
ファイル | ファイル数 (mathworks.metrics.FileCount ) | コンポーネントごとのモデル ファイルおよびライブラリ ファイル数 |
MATLAB LOC | MATLAB コードの有効行数 (mathworks.metrics.MatlabLOCCount ) | コンポーネントごとの、Stateflow の MATLAB Function ブロック関数および MATLAB 関数の有効行数 |
Stateflow LOC | Stateflow ブロックのコードの有効行数 (mathworks.metrics.StateflowLOCCount ) | コンポーネントごとの Stateflow ブロックのコードの有効行数 |
システム インターフェイス |
|
|
モデリング ガイドラインの準拠
この特定のシステムでは、モデルの準拠性に関するウィジェットが、業界標準およびガイドラインへの準拠のレベルを示します。次の表は、モデリング ガイドラインの準拠に関連するメトリクス ダッシュボードのウィジェットと、ウィジェットで詳細を調べたときに確認できる詳細情報のリストです。
ウィジェット | メトリクス | 詳細データ |
---|---|---|
[高信頼性] 準拠 | モデル アドバイザー標準チェックの準拠 - 高信頼性 (mathworks.metrics.ModelAdvisorCheckCompliance.hisl_do178 ) | コンポーネントごとの:
モデル アドバイザーとの統合による詳細な結果。 |
[MAB] 準拠 | モデル アドバイザー標準チェックの準拠 - MAB (mathworks.metrics.ModelAdvisorCheckCompliance.maab ) | コンポーネントごとの:
モデル アドバイザーとの統合による詳細な結果。 |
[高信頼性] チェックの問題 | モデル アドバイザー標準の問題 - 高信頼性 (mathworks.metrics.ModelAdvisorCheckIssues.hisl_do178 ) |
|
[MAB] チェックの問題 | モデル アドバイザー標準の問題 - MAB (mathworks.metrics.ModelAdvisorCheckIssues.maab ) |
|
コード アナライザーの警告 | MATLAB コード アナライザーからの警告 (mathworks.metrics.MatlabCodeAnalyzerWarnings ) | コンポーネントごとのコード アナライザーの警告数 |
診断の警告 | Simulink 診断警告数 (mathworks.metrics.DiagnosticWarningsCount ) |
|
メモ
コンフィギュレーション パラメーターを解析する準拠チェックの問題は、チェックに失敗したモデルの問題数に加算されます。
メトリクス ダッシュボードを使用して、モデル アドバイザーの独自のチェック グループに対して準拠性および問題がないかのチェックを行うことができます。詳細については、メトリクス ダッシュボードのレイアウトおよび機能のカスタマイズを参照してください。
アーキテクチャ
以下のウィジェットには、システム アーキテクチャが表示されます。
[可能な再利用]/[実際の再利用] ウィジェットには、クローンであるサブコンポーネントの合計数の割合と、ライブラリ ブロックにリンクされているコンポーネントの合計数の割合が表示されます。オレンジは再利用の可能性があることを示します。青は実際の再利用を示します。
その他のシステム アーキテクチャ ウィジェットでは値を尺度として使用します。メトリクスの値範囲ごとに、色分けされたバーが、該当する範囲に含まれるコンポーネントの数を示します。色が濃いほど、コンポーネントの数が多いことを示します。
次の表は、アーキテクチャに関連するメトリクス ダッシュボードのウィジェットと、ウィジェットを選択したときに確認できる詳細情報のリストです。
ウィジェット | メトリクス | 詳細データ |
---|---|---|
可能な再利用/実際の再利用 | [可能な再利用] ( | クローンであるサブコンポーネントの合計数のパーセンテージで表された割合 リンクされているライブラリ ブロックであるコンポーネントの合計数のパーセンテージで表された割合 [変換ツールを開く] ボタンをクリックして、モデリング クローンの特定ツールに統合します。 |
モデルの複雑度 | 循環的複雑度 (mathworks.metrics.CyclomaticComplexity ) | コンポーネントごとのモデルの複雑度 |
ブロック | Simulink ブロックの個数 (mathworks.metrics.SimulinkBlockCount ) | コンポーネントごとのブロック数 |
Stateflow LOC | Stateflow ブロックのコードの有効行数 (mathworks.metrics.StateflowLOCCount ) | コンポーネントごとの Stateflow ブロックのコードの有効行数 |
MATLAB LOC | MATLAB コードの有効行数 (mathworks.metrics.MatlabLOCCount ) | コンポーネントごとの、Stateflow の MATLAB Function ブロック関数および MATLAB 関数の有効行数 |
メトリクスのしきい値
モデルの複雑度、モデリング ガイドラインの準拠、および再利用の各ウィジェットについて、メトリクス ダッシュボードには既定のしきい値が含まれています。これらの値は、データが準拠か、または確認が必要か (警告) を示します。準拠データは、ウィジェットに緑で表示されます。警告データは、ウィジェットに黄色で表示されます。メトリクスのしきい値をもたないウィジェットの場合、青で表示されます。
モデリング ガイドラインの準拠のメトリクスでは、モデル アドバイザーの問題数のしきい値は 0 です。モデルに問題が存在する場合、ウィジェットには黄色で表示されます。問題が存在しない場合、ウィジェットには緑で表示されます。
モデルに警告が存在する場合、[コード アナライザー] ウィジェットおよび [診断] ウィジェットは黄色となります。警告が存在しない場合、ウィジェットには緑で表示されます。
[再利用] ウィジェットのメトリクスのしきい値は 0 です。モデルに潜在的クローンが存在する場合、ウィジェットには黄色で表示されます。潜在的なクローンが存在しない場合、ウィジェットには緑で表示されます。
[モデルの複雑度] ウィジェットのメトリクスのしきい値は 30 です。モデルの循環的複雑度が 30 より大きい場合、ウィジェットには黄色で表示されます。値が 30 以下の場合、ウィジェットには緑で表示されます。
メトリクス ダッシュボードのすべてのウィジェットについて、独自のメトリクスのしきい値を指定できます。非準拠範囲に対応する値を指定することもできます。詳細については、メトリクス ダッシュボードのレイアウトおよび機能のカスタマイズを参照してください。
ダッシュボードの制限
メトリクス ダッシュボードを使用するときは、以下の点を考慮してください。
メトリクス ダッシュボードの解析ルートを Configurable Subsystem ブロックにすることはできません。
メトリクス ダッシュボードがデータ収集に使用するツールであるモデル アドバイザーでは、モデル 1 つにつき複数のセッションを開くことはできません。このため、ダッシュボードでデータを収集するときは、モデル アドバイザーの既存のセッションが閉じられます。
sl_customization.m
ファイルを使用してモデル アドバイザー チェックをカスタマイズする場合、カスタマイズによってダッシュボードの結果が変わる可能性があります。たとえば、ダッシュボードがメトリクスの収集に使用するモデル アドバイザー チェックを非表示にすると、ダッシュボードでは該当するメトリクスの結果が収集されません。メトリクス ダッシュボードは、ブロックに関連しない MAB チェックを問題としてカウントしません。例として、フォント書式やファイル名に関して警告するチェックがあります。[モデル アドバイザー チェックの問題] ウィジェットでは、MAB 問題がゼロと報告される場合がありますが、MAB の [モデリング ガイドラインの準拠] ウィジェットでは問題が報告されます。これらの問題の詳細については、MAB の [モデリング ガイドラインの準拠] ウィジェットをクリックしてください。