このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
モデル保守性ダッシュボードを使用した設計の複雑度の監視
モデル保守性ダッシュボードでは、設計のサイズ、アーキテクチャおよび複雑度を評価するのに役立つよう、プロジェクト内のモデル設計アーティファクトからメトリクス データを収集します。
ダッシュボードは、Simulink® モデル、Stateflow® チャート、MATLAB® コードなどのモデル設計アーティファクトからモデルの保守性のさまざまな側面を解析します。モデル保守性メトリクスは、設計の一部が複雑すぎてリファクタリングが必要であるかどうかを判定するのに役立ちます。設計の複雑度が下がると、読みやすく、保守とテストも容易になります。
この例では、プロジェクトの保守性メトリクス データを収集して確認する方法について説明します。設計アーティファクトを更新して開発する際に、ダッシュボードを使用して複雑度と保守性に与える影響を評価します。
プロジェクトのモデル保守性ダッシュボードを開く
1.設計アーティファクトを含むプロジェクトを開きます。この例では、MATLAB コマンド ウィンドウで次のように入力します。
openProject("cc_CruiseControl");
プロジェクトにはいくつかのモデル、テスト、要件ファイルが含まれています。詳細については、モデル設計ダッシュボードとモデル テスト ダッシュボードを使用するためのプロジェクトの作成を参照してください。
2.モデル保守性ダッシュボードは、保守性メトリクスを表示するモデル設計ダッシュボードです。モデル保守性ダッシュボードを開くには、以下のいずれかの方法を使用します。
[プロジェクト] タブの [ツール] セクションで、[モデル設計ダッシュボード] をクリックします。
プロジェクトでモデルを開き、[アプリ] ギャラリーで [モデル設計ダッシュボード] をクリックします。
コマンド ウィンドウで次を入力します。
modelDesignDashboard
ダッシュボード アプリが起動し、ソフトウェア ユニット cc_ControlMode
のための新しい [モデルの保守性] タブが開きます。モデル保守性ダッシュボードに、ユニットのサイズ、アーキテクチャ、複雑度のメトリクス結果が表示されます。
アーティファクトの確認
ダッシュボード アプリの左側にある [プロジェクト] パネルに、現在選択されているダッシュボードと互換性があるプロジェクト内のアーティファクトが表示されます。[プロジェクト] パネルを使用して、プロジェクト内のさまざまなアーティファクト用のダッシュボードを開くことができます。モデル保守性ダッシュボードでは、プロジェクト内のユニットとコンポーネントのメトリクス結果を収集できます。ダッシュボードで何をユニットまたはコンポーネントとして分類するかを制御するには、階層内のモデルをコンポーネントまたはユニットとして分類を参照してください。
[プロジェクト] パネルでアーティファクトを選択すると、[アーティファクト] パネルに、そのアーティファクトまでトレースする関連アーティファクトが表示されます。たとえば、[プロジェクト] パネルで [cc_ControlMode] を選択すると、[アーティファクト] パネルに、ユニット cc_ControlMode
までトレースするアーティファクトが表示されます。[機能要件] フォルダー、[設計] フォルダー、[テスト] フォルダー、および [テスト結果] フォルダーには、現在のアーティファクトまでダッシュボードがトレースしたアーティファクトが含まれています。
3.[アーティファクト] パネルで [設計] フォルダーを展開します。ユニット cc_ControlMode
について、[設計] フォルダーには関連付けられているデータ ディクショナリ、モデル、サブシステム参照が表示されます。
保守性メトリクスの確認
モデル保守性ダッシュボードを開くと、ダッシュボードは自動的にメトリクス データを収集して、結果をダッシュボードの 6 つのメイン セクションに表示します。
コンポーネントの構造
コンポーネント インターフェイス
設計の循環的複雑度の内訳
Halstead 難易度の内訳
Simulink アーキテクチャ
Stateflow アーキテクチャ
MATLAB アーキテクチャ
ダッシュボードの各セクションには、メトリクス データを操作するのに役立つウィジェットが含まれています。
4.ダッシュボードの [コンポーネントの構造] セクションで、[複雑度] ウィジェットにカーソルを合わせます。ウィジェットの右上隅に 3 つのドットが表示されます。
3 つのドットにカーソルを合わせてヘルプ アイコン をクリックし、メトリクスについての詳細情報と、ダッシュボードでメトリクスの値がどのように計算されるかを表示します。
5.[Simulink アーキテクチャ] セクションの [信号線] 行の [分布] 列に、メトリクス結果として信号線の分布の外れ値が表示されます。
ダッシュボードは、ほとんどのメトリクス データを左側の 3 つの分布ビンに分類しました。最も右側の分布ビンには、範囲外のメトリクス データが含まれています。
6.最も右側の分布ビンにカーソルを合わせます。モデルの階層構造の 1 つの層に、60 ~ 69 の Simulink 信号が含まれていることがツールヒントに示されます。
モデルの他の層は、含まれている信号線はより少ないです。たとえば、最も左側の分布ビンには、9 つのモデル層に 10 未満の Simulink 信号が含まれていることが示されます。
7.最も右側の分布ビンをクリックして、メトリクス データをさらに詳細に確認します。
ダッシュボードでそのウィジェットの [Metric Details] が開き、メトリクス値と関連する各アーティファクトへのハイパーリンクの表が示されます。この表には、アーティファクト [Control_Mode_StateMachine] に 60 の信号線が含まれていることが示されています。
[Metric Details] から [cc_ControlMode] のメインの [Model Maintainability] の結果に戻る階層リンクがあることに注意してください。
8.[アーティファクト] 列で、[Control_Mode_StateMachine] をクリックして Simulink のアーティファクトを開きます。
この例では、アーティファクト Control_Mode_StateMachine
はモデル cc_ControlMode
内のサブシステムです。サブシステムの最上層にある 60 の信号線によって設計が読みにくくなっているようであれば、モデル層をリファクタリングして可読性を向上させます。
9.モデル保守性メトリクス結果のレポートを生成するには、ツールストリップの [レポート] ボタンを使用できます。