Main Content

割り当てと影響の評価

[トレーサビリティ ダイアグラム] ウィンドウを使用して、モデルベース デザイン項目間のリンクを可視化できます。ダイアグラムは 1 つの項目に対応する開始ノードから発生し、開始ノードから他のリンク可能な項目に対応する他のノードへのリンク (エッジとも呼ばれる) を表示します。詳細については、トレーサビリティ ダイアグラムを使用したリンクの可視化を参照してください。

トレーサビリティ ダイアグラムでは、要件セットの "要件割り当て" を視覚的に検査できます。要件割り当ては、要件を分解して、それらを実装および検証用に設計要素とテストにリンクするプロセスです。要件割り当てでは、各ユーザーのニーズを表す要件など、設計が上位レベルにおいて必要な動作を実装および検証しているか確認できます。

トレーサビリティ ダイアグラムを使用して、間接リンクを可視化し、特に複数のレベルで構成される要件階層内で要件が変更された場合の変更の影響とモデルベース デザイン項目間での変更の伝播を評価することもできます。

要件割り当ての評価

要件割り当てのプロセスでは、上位レベルで必要とされる機能が設計とテストそれぞれで実装され検証されているか確認できます。1 つの上位レベル要件を割り当てるには、以下を実行する必要があります。

  1. 上位レベル要件をより詳細な 1 つ以上の下位レベル要件に分解して、最終的な実装と検証を可能にします。下位レベル要件は、上位レベルで必要な機能を累積的に獲得するようにします。

  2. 上位レベル要件と分解された要件間のリンクを作成します。これによって、上位レベルで必要とされる機能から下位レベルの実装と検証までのトレーサビリティが作成されます。

  3. 下位レベル要件を設計項目とテスト項目にリンクしてそれらを実装および検証します。

要件を割り当てた後、トレーサビリティ ダイアグラムを使用して、その要件からダイアグラムを作成し、割り当てを視覚的に検査できます。下位レベル要件および、Simulink® ブロックやテスト ケースなどの実装および検証項目へのリンクを可視化できます。

要件の分解

要件割り当ての最初のステップは、上位レベル要件を分解することです。一部の要件は抽象的すぎるため、実装および検証できる下位レベルの機能要件に分解する必要があります。

上位レベル要件をより詳細な下位レベル要件に分解すると、必要な機能を明示的に実行する設計コンポーネントをもつ要件を実装できます。さらに、そのコンポーネントを含むシステムの一部のみを必要とするテストを作成できます。このコンポーネントレベルの実装と検証により、複数のコンポーネントが 1 つのシステムに統合されるときに要件は引き続き実装され検証された状態となります。

たとえば、CruiseRequirementsExample プロジェクト内のファイルはクルーズ コントロール システム設計を表します。MATLAB® コマンド プロンプトで以下のコマンドを入力して、プロジェクトを開きます。

openExample("slrequirements/CruiseRequirementsExample")

crs_req_func_spec 要件セットには、システムが機能仕様を満たしているか確認する要件が含まれます。Calculate Target Speed and Throttle Value 要件は、分解された上位レベル要件の例を示しています。

This image shows the third requirement in the crs_req_func_spec requirement set.

要件のリンク、実装、および検証

分解された上位レベル要件を割り当てるには、要件を対応する下位レベル要件にリンクしなければなりません。さらに、各下位レベルの機能要件には、実装用と検証用にそれぞれ 1 つ以上の外向きリンクが必要です。下位レベルの機能要件を意図的に実装または検証しなかった場合、正当化へのリンクを作成し、この要件が実装または検証から除外される理由に関する情報を追加できます。詳細については、要件の正当化を参照してください。

上位レベル要件を完全に割り当てて、[トレーサビリティ ダイアグラム] ウィンドウでデザイン項目を可視化する必要があります。たとえば、Calculate Target Speed and Throttle Value は分解されていますが、子要件にリンクされていません。以下の図は、要件に 1 つのリンクしかないことを示してます。

The Traceability Diagram for the Calculate Target Speed and Throttle Value requirement shows that the requirement is implemented by the TargetSpeedThrottle Simulink block.

要件エディター、要件パースペクティブ、またはトレーサビリティ マトリクスを使用してリンクを作成できます。詳細については、リンクの作成と保存を参照してください。

要件割り当ての可視化

要件を割り当てた後に、上位レベル要件からトレーサビリティ ダイアグラムを作成して、割り当てを可視化できます。詳細については、トレーサビリティ ダイアグラムの生成を参照してください。

たとえば、以下の図は Calculate Target Speed and Throttle Value 要件から発生し、Calculate Target Speed and Throttle Value 要件と子要件間に追加されたリンクを示しています。

The Traceability Diagram for the allocated Calculate Target Speed and Throttle Value requirement shows that the requirement now has other links to requirements that decompose it.

Each child requirement has at least one Implement type link to a model element. However, the child requirements do not have Verify type links to test items or to justifications, so the Calculate Target Speed and Throttle Value requirement is not considered fully allocated.

変更の伝播の可視化

Requirements Toolbox™ を使って、要件の変更を追跡できます。リンクされている要件が変更された場合、関連付けられているリンクには変更の問題があります。詳細については、要件リンクの変更の追跡を参照してください。

トレーサビリティ ダイアグラムでは、変更の問題をもつリンクが赤の破線で表示されます。変更の問題は、リンクした要件を変更した場合に直結のリンクにのみ適用されます。そのため、変更された要件に間接的にリンクしている変更の問題と項目をもつリンクに対する変更の伝播を評価するには、トレーサビリティ ダイアグラムを使用できます。

間接リンクの可視化

要件を変更すると、変更の問題はその直結のリンクにのみ適用されます。ただし、変更は間接的にリンクされた他の項目に影響する場合があります。"間接リンク" は、少なくとも 1 つの分離度をもつ項目間のリンクです。トレーサビリティ ダイアグラムを使用して間接リンクを可視化できます。

たとえば、以下の図は、Disabling cruise control 要件と Enumerated ConstantSimulink ブロック間の間接リンクを示しています。

Traceability Diagram originating from the Cancel Switch Detection requirement. The Disabling cruise control requirement and the Enumerated Constant block are both linked to the Cancel Switch Detection requirement, so they are indirectly linked.

変更の伝達の評価

変更は、変更されたノードからアップストリーム ノードまたはダウンストリーム ノードの複数の層に流れます。トレーサビリティ ダイアグラムを使用して変更が間接リンクに伝播される様子を可視化し、さらに変更がアップストリーム ノードまたはダウンストリーム ノードに与える可能性のある影響を評価できます。

たとえば、以下の図は Calculate Target Speed and Throttle Value 要件から発生し、子要件へのリンクを示しています。Calculate Target Speed and Throttle Value 要件に変更が行われています。この図には、Calculate Target Speed and Throttle Value 要件からの 4 つの外向きリンクに変更の問題があることが示されています。

The Traceability Diagram for the allocated Calculate Target Speed and Throttle Value requirement has red dashed edges to other requirements.

孫要件 Throttle Value Computation および Next Target Speed Computation へのリンクには変更の問題はありませんが、図には、これらの要件が変更された要件 Calculate Target Speed and Throttle Value に間接的にリンクされていることが示されています。

Calculate Target Speed and Throttle Value 要件の変更が孫要件に与える影響を評価するには、要件エディターでそれらの孫要件に移動します。詳細については、ノードまたはエッジからアーティファクトへの移動を参照してください。

参考

関連するトピック