プロジェクトによる影響分析の実行
この例では、依存関係アナライザーを使用してファイルレベルの影響分析を実行する方法を説明します。プロジェクト構造の可視化、プロジェクト依存関係の解析、必要なアドオンと製品の検索、問題の特定と修正、変更内容がその他のプロジェクト ファイルに与える影響の評価を行う方法を示します。
この例の手順を確認するには、ビデオをご覧ください。
依存関係の分析は、ワークフローのどの時点でも実行できます。共同作業の環境では、通常は次の場合に依存関係をチェックします。
プロジェクトを最初に設定または確認するとき
テストを実行して設計の変更を検証するとき
プロジェクトのバージョンをソース管理に送信する前
プロジェクトを共有またはパッケージ化する前
プロジェクト構造と依存関係の可視化
プロジェクトのすべてのファイルに対して依存関係の分析を実行します。[プロジェクト] タブで、下矢印をクリックして [ツール] セクションを展開します。[アプリ] で、[依存関係アナライザー] をクリックします。
依存関係グラフには次が表示されます。
モデル、ライブラリ、関数、データ ファイル、ソース ファイル、および派生ファイルなどのファイルが互いにどのように関係しているかを含む、プロジェクト構造とそのファイルの依存関係。グラフの各項目は 1 つのファイルを表し、各矢印は 1 つの依存関係を表します。
ソース ファイルと派生ファイルの関係 (.m ファイルと .p ファイル、.slx ファイルと .slxp ファイル、.c ファイルと .mex ファイルなど)、および C/C++ ソース ファイルとヘッダー ファイルの関係。
ファイルを選択していない場合は、[プロパティ] ペインに以下が表示されます。
プロジェクトの詳細
プロジェクト全体の必要な製品とアドオン
プロジェクト全体の問題のリスト (不足しているファイル、プロジェクトに存在しないファイル、未保存の変更があるファイル、期限の切れた派生ファイルなど)
問題の調査と解決
依存関係アナライザーにより、不足しているファイル、プロジェクトに存在しないファイル、未保存の変更、期限の切れた派生ファイルなどの問題が特定されます。依存関係グラフまたはファイル リストを使用して問題のあるファイルを調べることができます。
1. グラフを使用して、問題のあるファイルを調査します。[プロパティ] ペインの [問題] セクションで [ファイルがプロジェクト内にありません] にカーソルを合わせ、拡大鏡アイコン をクリックします。グラフで、選択した問題をもつファイルが強調表示されます。この例では、timesthree.mexw64
ファイルがプロジェクト内にありません。
2. 問題を修正します。timesthree.mexw64
を右クリックし、[プロジェクトに追加] を選択します。timesthree.mexw64
をプロジェクトに追加しないで問題リストから削除するには、ファイルを右クリックして [警告を非表示] を選択します。
修正ファイルの表示
1. vertical_channel.slx
モデルを開いて変更を加えます。
a. [プロジェクト] タブの [ファイル] ビューで、vertical_channel.slx
をダブルクリックして開きます。
b. vertical_channel.slx
内でブロックを移動し、モデルを保存します。
依存関係アナライザーで、[ビュー] ギャラリーを使用し、依存関係グラフで各ファイルのソース管理ステータスを表示します。
2. 依存関係アナライザーのツールストリップで、[ビュー] ギャラリーを展開し、[ソース管理] をクリックします。
グラフの各項目の色が、そのソース管理ステータスを表すようになります。変更を
vertical_channel.slx
に加えたため、そのソース管理ステータスが [変更されました] になっています。
変更による影響の確認
[影響分析] ツールを使用して次を検索できます。
ファイルへの変更によって影響を受けるファイル
正常に実行するためにファイルに必要なファイル
1. [影響分析] ツールを使用して、変更による他のファイルへの影響を評価します。
a. 依存関係グラフで、変更されたファイル vertical_channel.slx.
を選択します。
b. [影響分析] セクションで、[影響あり] をクリックします。
依存関係グラフではファイルがフィルター処理され、vertical_channel.slx
に加えた変更の影響を受けたファイルのみが表示されます。
2. vertical_channel.slx
への依存関係が f14_airframe.slx
で発生した場所を探します。
a. f14_airframe.slx
から vertical_channel.slx
へのリンクを作成する依存関係の矢印を選択します。
b. [プロパティ] ペインで、[影響あり] の下のリンクをクリックします。Simulink® でモデル f14_airframe.slx
が開き、Model ブロック vertical_channel
が強調表示されます。
実行するテストの特定
プロジェクトでは、各プロジェクト ファイルに "分類" ラベルが自動的に関連付けられます。分類ラベルには [設計]、[アーティファクト]、[簡易]、[派生]、および [テスト] のラベルが含まれます。[テスト] ラベルはテストのファイルを識別します。複数のテストを実行する必要がある場合は、ファイルへのラベルの追加を参照してください。
vertical_channel.slx
への変更を検証するために実行する必要があるテストを特定します。
1. 依存関係グラフで各ファイルに関連付けられている分類ラベルを表示するには、[ビュー] ギャラリーを展開し、[Classification] をクリックします。
vertical_channel.slx
への変更の影響を受けるファイルのみを表示する依存関係グラフが、ラベル [分類] で色分けされます。
2. 変更の影響を受けるテストを識別します。
グラフには、vertical_channel.slx
に加えた変更の影響を受ける 2 つの [設計] ファイルと 1 つの [テスト] ファイルが表示されます。f14_airframe_test.m
が、設計の変更を検証するために実行する必要があるテストです。
ヒント: すべてのフィルターをクリアしてプロジェクト内で解析済みのすべての依存関係を表示するようにグラフを復元するには、[既定値に戻す] をクリックします。あるいは、グラフの上部に表示されているすべてのフィルターを手動で削除します。
影響を受けるテストの実行
影響を受けるテストを実行し、設計の変更を検証します。
1. f14_airframe_test.m
テストを選択します。複数のテストを実行する必要がある場合は、代わりに [凡例] で [選択に追加] ボタンをクリックします。
2. 影響を受けるテストのパスを変数に保存します。依存関係アナライザー ツールストリップの [エクスポート] セクションで、[エクスポート]、[ワークスペースに保存] を選択します。[変数名] ("impactedtests" など) を選択し、[OK] をクリックします。
3. 関数runtests
を使用してテストを実行します。[コマンド ウィンドウ] で次のように入力します。
results = runtests(
impactedtests);