Main Content

要件エディターでの要件の処理

Requirements Toolbox™ を使用すると、要件エディターで要件を作成、整理、編集できます。Simulink® モデルでの作業時に、要件パースペクティブを使用して、要件とモデルの要素の間のリンクを可視化できます。統合環境を使用することにより、実装先のモデルの要素への要件のリンクが簡略化されます。

この統合環境にはその他の利点もあります。詳細については、Requirements Toolbox の紹介を参照してください。

MATLAB での要件の作成

Requirements Toolbox では、要件を要件セットというグループに整理します。要件セットごとに、要件の詳細を説明しなければならない場合、追加の階層レベルを作成できます。

このチュートリアルでは、要件エディターを使用して要件セットを作成し、関連する要件を整理して、セットに要件を追加します。

自動車のクルーズ コントロール システムのコントローラー モデルの要件を作成すると仮定します。要件の番号付けに関する会社標準 (R1、R2 など) を使用して、これらの要件を開発します。

ID と説明根拠
R1: 最大入力スロットルは 100%アクセル ペダルからのスロットルの最大値が 100% を超えることはありません。
R2: クルーズ コントロールに運転速度範囲があるクルーズ コントロールには最小、最大の運転速度があります。
R2.1: 車両速度は 40 km/h 以上でなければならないクルーズ コントロール システムが作動するためには、車両の速度は 40 km/h 以上でなければなりません。
R2.2: 車両速度は 100 km/h を超えてはならない車両のクルーズ コントロール システムの最大運転速度は 100 km/h です。

これらの要件により、crs_controller というモデルでモデル化された機能を獲得します。

  1. モデルとサポート ファイルが含まれるプロジェクトを開きます。MATLAB® コマンド プロンプトで、次のように入力します。

    slreqCCProjectStart
  2. 要件セット crs_req を読み込みます。コマンド プロンプトで、次を入力します。

    slreq.load("crs_req")
  3. 要件エディターを開きます。[アプリ] タブで、[要件エディター] をクリックします。

    要件エディターに、要件セットごとに並べられた要件が要件ブラウザーで表示されます。crs_controller モデルには crs_req_func_speccrs_req の 2 つの要件セットがあります。

    Requirements Editor with Show Requirements selected. The crs_req_func_spec and crs_req requirement sets are collapsed.

  4. 要件ブラウザーで要件セットを追加します。要件エディターのツール バーから、[新しい要件セット] をクリックします。

  5. 要件セットを外部ファイルに保存します。要件セットを書き込み可能な場所に保存して、cruise_control_reqset.slreqx という名前を付けます。

  6. 要件セットを選択して [要件の追加] をクリックし、要件セットに要件を追加します。

  7. [詳細] ペインの [プロパティ] に、要件の詳細を入力します。要件の詳細を入力します。

    • カスタム ID: R1

    • 概要: 最大入力スロットル (%)

    • 説明: 最大入力スロットルは 100%。

    カスタム ID を指定しない場合は、要件エディターによって要件に順番に番号が付けられます。カスタム ID を使用すると、要件のラベル付けに関する会社標準を使用して数値順を設定できます (カスタム ID に # 記号を含めることはできません)。検索時に要件を特定しやすいように ID を使用することもできます。要件の検索には、キーワードが役立ちます。

  8. 要件 R2 を作成します。[要件の追加] をクリックします。要件の詳細を入力します。

    • カスタム ID: R2

    • 概要: クルーズ コントロールの運転速度範囲

    • 説明: クルーズ コントロールには最小、最大の運転速度があります。

  9. R2 を選択して [要件の追加][子要件の追加] をクリックし、R2 の子要件を作成します。要件の詳細を入力します。

    • カスタム ID: R2.1

    • 概要: 車両の最小速度

    • 説明: クルーズ コントロール システムが作動するためには、車両の速度は 40 km/h 以上でなければなりません。

    Open requirement sets in the Requirements Editor. The cruise_control_reqset is expanded and includes three requirements.

    このステップを繰り返して、他の子要件を R2 に追加します。

[要件の昇格] または [要件の降格] を使用することにより、階層を再配列できます。

Microsoft Word を使用した要件コンテンツの作成および編集

要件の [説明] フィールドおよび [根拠] フィールドを作成および編集するには、要件エディターまたは要件パースペクティブ ビュー内から Microsoft® Word を開きます。

メモ

この機能は、Microsoft Windows® プラットフォーム上でのみ使用可能です。

Microsoft Word を使用したリッチ テキストの要件の編集では、次のことが可能になります。

  • 要件コンテンツのスペルチェック。

  • イメージのリサイズ。

  • 式の挿入および編集。

  • 表の挿入および編集。

[編集] フィールドのツール バーで、[説明] または [根拠] のいずれかのフィールドの アイコンをクリックします。要件コンテンツに加えた変更を Microsoft Word に保存し、それらが Requirements Toolbox に反映されていることを確認します。

Microsoft Word を使用して要件コンテンツを編集している場合、組み込みエディターでの要件の編集はできません。

要件ブラウザー ビューのカスタマイズ

[列][属性の選択] をクリックすると、要件エディターの列の表示と非表示を切り替えることができます。[列セレクター] で、属性列の追加、削除、並べ替えを行います。表示設定は複数のセッション間で保存されます。関数 slreq.exportViewSettings を使用して、表示設定を MAT ファイルにエクスポートできます。また、関数 slreq.importViewSettings を使用してそれらをインポートできます。関数 slreq.resetViewSettings を使用して、表示設定をリセットできます。

要件コンテンツのフィルター

[検索] をクリックすることにより、要件のコンテンツを検索できます。要件の属性と説明に基づいて、読み込まれた要件セット内で特定の要件を見つけることができます。

フィルター文字列の指定[検索] テキスト ボックスにテキストを入力すると、要件ブラウザーは動的検索を行い、結果を表示します。検索操作は要件ブラウザーに表示することを選択した属性のみに適用されます。

入力するテキスト文字列は次の節で説明されているガイドラインに従った形式でなければなりません。

大文字小文字の区別 — 既定の設定では、要件ブラウザーのフィルター処理に大文字小文字の区別は適用されません。

要件ブラウザーで大文字小文字の区別を有効にするには、そのテキスト文字列を引用符で囲みます。

属性および属性値の指定 — 特定の属性をもつ要件にフィルター処理を制限するには、属性名に続けてコロンを入力します。要件ブラウザーにその属性をもつ要件のみが表示されます。

特定の属性が特定の値をもつ要件にフィルターを適用するには、属性名を入力し、それに続けてコロン (:) と値を入力します。たとえば、Summary 属性の値に Aircraft が含まれる要件のみが表示されるようにコンテンツにフィルターを適用するには、「Summary: Aircraft」と入力します (または、この文字列全体を引用符で囲むと大文字小文字の区別を指定できます)。

ワイルドカードおよび MATLAB 式はサポートされない — 要件ブラウザーは * などのワイルドカード文字を認識しません。たとえば、要件にテキスト文字列 fuel が含まれている場合でも、fuel* を検索しても結果は返されません。

また、MATLAB 式を [検索] テキスト ボックスで指定すると、要件ブラウザーはその文字列を MATLAB 式ではなくリテラル テキストとして解釈します。

ブロックと要件のリンク

要件を実装したモデル要素に対してその要件をリンクすることで、要件の実装を追跡できます。このリンク設定によって変更通知も有効になるため、要件またはモデルに対する変更を確認し、対処することができます。

このチュートリアルでは、モデル要件パースペクティブを使用して要件をモデルにリンクします。視覚要素によって要件とブロック間のリンクが強調表示されます。

  1. クルーズ コントロール モデルの要件定義のプロジェクトを開きます。MATLAB コマンド プロンプトで、次のように入力します。

    slreqCCProjectStart

  2. models フォルダーから crs_controller を開きます。MATLAB コマンド プロンプトで、次のように入力します。

    open_system('models/crs_controller')
  3. モデル キャンバスで、右下隅にあるパースペクティブ コントロールをクリックします。

    Close up of the lower-right corner of the Simulink canvas. The mouse points to the perspectives button, and the tooltip is displayed.

  4. [要件] アイコンをクリックして要件パースペクティブを開きます。

    Close up of the lower-right corner of the Simulink canvas, showin the mouse pointing to the Show Perspectives view button

    モデル キャンバスの下部に要件ブラウザーが表示されます。要件を選択すると、プロパティ インスペクターに要件のプロパティが表示されます。

  5. 要件をモデル要素にリンクします。

    1. 要件ブラウザーで Enable Switch Detection を検索します。

    2. 要件をクリックしてブロックにドラッグすることで、enbl Inport ブロックにリンクします。注釈のテンプレートが表示されます。

    3. キャンバス上をクリックすることで要件の注釈を配置します。キャンバスの外側をクリックすることで、注釈のないリンクを作成します。

    Close up of a Simulink block with an Implements link to a requirement named Enable Switch Detection

  6. ブロックにリンク バッジが表示されます。要件に関する情報を表示するには、バッジをクリックして [表示] を選択します。

    Simulink block after the requirements badge was clicked, showing the requirement and the Show button

    [表示] をクリックすると、要件 ID、要件の概要、およびリンク タイプが表示されます。リンク タイプの詳細については、要件リンクを参照してください。

    Simulink showing the annotation on the canvas

    • 要件の説明を確認するには、注釈をダブルクリックします。

    • 要件を編集するには、注釈を右クリックして [要件ブラウザーで選択] を選択します。プロパティ インスペクターで要件のプロパティを編集します。

  7. 要件パースペクティブを終了します。パースペクティブ コントロールをクリックして要件のアイコンをクリックします。

    Lower-right corner of the canvas showing the mouse pointing to the Requirements Perspective to exit the perspective

Simulink の注釈の処理

Simulink の注釈を要件に変換-  要件パースペクティブ ビューのコンテキスト メニューを使用したり、API を使用することにより、Simulink モデル内の注釈を要件に変換できます。API を使用して注釈を要件に変換する方法の詳細については、slreq.convertAnnotation を参照してください。

要件パースペクティブ ビューのコンテキスト メニューを使用して注釈を要件に変換するには、次を行います。

  1. Simulink モデルを開いて要件パースペクティブ ビューを開始します。

  2. 要件ブラウザーから要件セットを選択します。これは、新しい要件の宛先の要件セットです。

  3. 要件に変換する注釈を右クリックして、[要件への変換] をクリックします。

  4. 注釈が要件に変換され、注釈が存在していたシステムまたはサブシステムにリンクされます。

Simulink の注釈への要件のリンク-  要件パースペクティブ ビューを使用して、Simulink エディター上のテキストおよび領域の注釈に要件をリンクします。リンクを作成するには、要件を選択し、注釈までドラッグします。領域の注釈に要件をリンクする場合は、リンクが作成されたことを示すバッジが注釈上に表示されます。バッジは要件パースペクティブ ビューのみに表示されます。要件の詳細を確認するには、バッジをクリックして [表示] を選択します。

参考

関連するトピック