エージェント型要求工学
AIエージェントは、要件の取り込みのようなエンジニアリング作業において、効率を大幅に高め、複雑で反復的なワークフローを自動化することで、大きな利点をもたらします。Requirements Portal の Engineering Assistant は、AI技術を活用して要件のための高速な自動レビュー ツールを提供します。これにより、現在のプロジェクト内の要件について、自由形式の自然言語で質問し、手動で要件を絞り込んだり検索したりすることなく、すばやく回答を得ることができます。たとえば次のようなものです。
-
How many requirements are not verified?
-
Are there any engineering gaps in these requirements?
-
Show me all requirements about the power supply.
-
Which requirements need to be taken into account for PCB design?
-
Do any requirements conflict with each other?
-
Give me an overview of all battery-related requirements.
Engineering Assistant は、要件の変更、作成、削除も行えます。新しい要件の作成、既存の要件の変更または削除を依頼すると、Engineering Assistant は適用予定の変更内容の要約を提示します。内容を確認したうえで、変更を適用するか破棄するかを選択できます。こうした依頼の例を以下に示します。
-
Generate requirements for a lightweight drone power supply that takes a 6S LiPo input, provides regulated 5 V / 5 A and 12 V / 3 A outputs, and weighs under 150 g. It should handle vibration and -10°C to +50°C operation, with protection for short circuit, reverse polarity, overtemperature, and low battery.
-
Change the required maximum operating temperature for all parts to 60°C.
-
Can you identify all requirements that affect the sizing of the power system and ensure they are verifiable?
-
In the new design, I've replaced the camera with an IR sensor. Remove all requirements that were related to the camera.
Engineering Assistant には、右上の
アイコンをクリックして Requirement Module 内で利用できる Engineering Assistant ペインからアクセスします。
現在のチャット コンテキストは、Engineering Assistant ペイン下部の
ボタンをクリックすると確認できます。Chat Context ポップアップが開き、次の情報が表示されます。
-
Project – 現在のプロジェクト名と、現在選択されているフォルダー、仕様、またはセクション名を表示します。
-
Filters – 現在テーブルに適用されているフィルター数と、フィルターが適用されている列の一覧を表示します。
-
Rows selected – 現在選択されている要件行数を表示します。
Engineering Assistant を使用するには、Engineering Assistant ペイン下部の Ask anything フィールドにクエリを入力し、
アイコンをクリックするか Enter を押します。Engineering Assistant が要件を分析し、関連する回答をペイン内に表示します。クエリの内容に応じて、Engineering Assistant は数値による回答、要件 ID の一覧、または簡潔な要約を返します。クエリに関連する要件は要件テーブル内で強調表示され、関連する要件数は対応する仕様、セクション、フォルダーの横にあるプロジェクト ツリーにも表示されます。
新しい要件の作成、既存の要件の変更または削除を Engineering Assistant に依頼すると、提案された変更が Engineering Assistant ペイン内の専用タイルに表示されます。そこで内容を確認し(Changes summary 折りたたみ可能領域を展開)、変更を適用するか破棄するかを選択できます。また、提案された変更は次のように要件テーブルにも表示されます。
-
新しい要件は緑色で強調表示され、Identifier 列に
アイコンが表示されます。
-
変更された要件は紫色で強調表示され、Identifier 列に
アイコンが表示されます。実際の変更箇所もテーブル内で強調表示されます。
-
削除候補の要件は赤色で強調表示され、Identifier 列に
アイコンが表示されます。
AIスキルの使用と管理
スキルとは、Engineering Assistant がより一貫して特定のタスクを実行できるようにする、再利用可能な命令セットです。スキルは、特定のエンジニアリング タスクをどのように実行すべきか、つまり意図、境界、必要な入力、従うべき手順をまとめたもので、誰が実行しても、いつ実行しても、また毎回同じ指示を各ユーザーが説明しなくても、一貫した結果が得られるようにします。
スキルは次のように捉えることができます。
-
繰り返し可能なエンジニアリング ワークフロー
-
実行可能な形にした組織標準
-
専門知識をパッケージ化して再利用可能にする方法
スキルは AI によって自動的に呼び出され、ユーザーの意図に基づいて自動選択・適用されます。 コマンドを覚えたり、スキルを手動で選択したりする必要はありません。 メッセージを送信すると、Engineering Assistant は次の処理を行います。
-
ユーザーの意図と現在のコンテキストを分析します。
-
Workspace で利用可能なスキルを確認します。
-
ユーザーのリクエストを各スキルの Short Description と比較し、どのスキルが関連するかを判断します。
-
最も適合するスキルを選択します。
-
スキルの Instructions に従ってタスクを実行します。
-
結果を返して、ユーザーが確認できるようにします。
たとえば、Rewrite these requirements using our company writing standard を送信すると、Engineering Assistant は意図(要件の標準化)を検出し、そのリクエストに最も一致する短い説明を持つスキルを特定し、そのスキルで定義された命令を実行して、改善された要件を返します。
Skill Use Examples
-
Break Down Complex Requirements – 選択した要件を分析し、元の意図を保持したまま、より小さく独立してテスト可能な要件に分割します。
プロンプト例:
Break down these requirements. -
Apply Requirement Writing Standards – 要件をレビューし、組織の要件記述ガイドラインに従って書き換えます。一般的なチェック項目には、曖昧さ、検証不能な表現、欠落しているアクター、不明確な受け入れ基準などがあります。
プロンプト例:
Rewrite these requirements according to our requirement quality standard. -
Translate Requirements – 技術的意味、用語、ID、トレーサビリティ参照を保持したまま、要件をある言語から別の言語へ翻訳します。
プロンプト例:
Translate these requirements to German. -
Classify Requirements – Electronics、Mechanical、Software、Safety、Security、またはその他の企業固有の分類法など、組織の分類スキームを要件に適用します。
プロンプト例:
Classify these requirements according to our applicability model. -
Generate Verification Criteria – 要件を分析し、常に同じ方法で適合性を実証するために使用できる検証方法、受け入れ基準、または試験条件を提案します。
プロンプト例:
Generate verification criteria for these requirements. -
Summarize a Specification/Section/Group of Requirements – 仕様、要件セクション、または要件セットの簡潔で構造化された要約を生成します。
プロンプト例:
Summarize the selected requirements.
利用可能なスキルのセットは、Engineering Assistant ペイン右上の
ボタンをクリックして開く AI Skills ウィンドウで管理します。このウィンドウから、新しいスキルの追加、既存スキルの変更、削除を行えます。
-
既存のスキルは、ウィンドウ左側の Workspace Skills 領域に一覧表示されます。エントリをクリックすると、選択したスキルの詳細が表示されます。
-
新しいスキルを追加するには、ウィンドウ左下の
ボタンをクリックします。新しいスキル用のエントリが一覧に表示されます。新しいスキルの Name、Short Description、Instructions を定義し、その後ウィンドウ右下の
ボタンをクリックします。
各フィールドの詳細については、以下の Best Practices for Formulating a Skill 折りたたみセクションを参照してください。
-
既存のスキルを編集するには、一覧でそのスキルを選択し、必要に応じて各フィールドを変更してから、右下の
ボタンをクリックします。
-
既存のスキルを削除するには、一覧でそのスキルを選択し、右下の
ボタンをクリックしてから、削除を確認します。
Best Practices for Formulating a Skill
優れたスキルは、AI が次の 2 点を理解するのに役立ちます。
-
そのスキルをいつ使うべきか
-
スキル実行時に AI が何をすべきか
スキルを定義する際、
これは 3 つのフィールドで表現され、それぞれのフィールドには異なる目的があります。
-
Name – ユーザーがスキルを識別しやすくします。
-
Short Description – AI がそのスキルが関連するかどうかを判断するのに役立ちます。
-
Instructions – スキルが選択された後に AI が従うべき動作を定義します。
各フィールドの詳細については、以下のセクションを参照してください。
名前
Name は短く、明確で、動作指向であるべきです。ユーザーがそのスキルの目的をすばやく理解できるようにする必要があります。良い名前は通常、そのスキルが実行するアクションと、対象とするエンジニアリング データの種類を表します。
優れたスキル名は、次の条件を満たす必要があります。
-
他のスキルと区別できる程度に具体的であること
-
スキル一覧で簡単に見渡せる程度に短いこと
-
そのスキルが実行する主なタスクに焦点が当たっていること
-
ユーザーが自然に理解できる言葉で書かれていること
広すぎたり一般的すぎたりする名前は避けてください。その名前が多くの異なるタスクに当てはまりそうなら、おそらく十分に具体的ではありません。
短い説明
Short Description は、AI がそのスキルの内容と、いつトリガーすべきかを理解するのに役立ちます。このフィールドは重要です。というのも、スキルを手動で選択する必要がないからです。アシスタントはユーザーのプロンプトを分析し、利用可能なスキルと比較して、スキルが関連するかどうかを判断します。
良い短い説明では、次の内容を説明する必要があります。
-
そのスキルが実行するタスク
-
適用対象となるエンジニアリング データの種類
-
そのスキルを使用すべきタイミング
-
そのスキルによって期待される結果
短い説明は簡潔であるべきですが、曖昧であってはなりません。AI が類似するスキルと区別できるよう、十分なコンテキストを含める必要があります。
不十分な短い説明は、そのスキルが属する分野しか示しません。優れた短い説明は、具体的なタスク、想定されるコンテキスト、トリガーとなる状況を説明します。たとえば、「要件を支援する」スキルだと説明するのではなく、要件品質をレビューするのか、複雑な要件を分解するのか、要件文を翻訳するのか、競合を検出するのか、検証基準を生成するのか、あるいは別の特定のアクションを実行するのかを説明すべきです。
短い説明がスキルの目的と使用コンテキストを適切に説明するほど、アシスタントはそれをいつ適用すべきかをより確実に判断できます。
命令
Instructions は、スキルが選択された後に AI が何をすべきかを定義します。これはスキルの動作を制御するうえで最も重要なフィールドです。短い説明は AI がそのスキルをいつ使うかの判断に役立ちますが、命令はそのスキルをどのように実行するかを定義します。
良い命令は、明確なステップごとのガイダンスとして記述されるべきです。最終出力だけでなく、その出力を生成する際に AI が従うべき推論や制約についても記述する必要があります。
命令では、次の内容を説明する必要があります。
-
What the AI should analyze first – アシスタントは通常、何かを変更または生成する前に、エンジニアリング上の意図、コンテキスト、構造、または関係性を理解する必要があります。
-
What steps the AI should perform – 出力が繰り返し可能で予測可能になるよう、動作は明示的なステップに分ける必要があります。
-
What the AI should preserve – これには、元の意図、要件 ID、技術用語、単位、値、制約、参照、適用範囲、階層、またはトレーサビリティ コンテキストが含まれる場合があります。
-
What the AI must not do – 優れたスキルは、不足しているエンジニアリング詳細を AI が作り出したり、意図を変更したり、新しい仮定を導入したり、ユーザーのレビューなしで変更を適用したりしないよう、明示的に防止します。
-
How the AI should handle uncertainty – 情報が不足している、曖昧である、または不十分である場合、推測するのではなく、その問題を明確に示すようスキルで指示すべきです。
-
What output format is expected – 結果を表、箇条書き、書き換え済みテキスト、要約、チェックリスト、または構造化レポートのどの形式で返すべきかをスキルで定義する必要があります。
優れた命令は、エンジニアリング作業において特に重要です。これは、アシスタントが仕様、検証、設計判断、または後続の実装に影響を与えるデータを扱う可能性があるためです。そのためスキルは、AI が過度に自信を持つことなく有用でいられるよう導く必要があります。
その他の注意事項
-
目的は長いプロンプトを書くことではありません。目的は、AI のための明確な運用手順を定義することです。
-
Keep Skills Focused
スキルは、1 つの繰り返し可能なタスクを適切に実行するようにすべきです。
1 つのスキルであまりに多くのことを行おうとすると、アシスタントにとって使用タイミングの判断が難しくなり、ユーザーにとっても出力を信頼しにくくなります。たとえば、要件の分解、翻訳、品質レビュー、トレーサビリティ分析、検証生成を、これらのアクションが意図的に 1 つの厳密に定義されたワークフローの一部になっているのでない限り、1 つのスキルにまとめるべきではありません。
スキルの目的に複数の無関係なアクションが必要な場合は、別々のスキルに分割してください。
-
Define Boundaries Clearly
優れたスキルは境界を明確にします。
これは、要件、仕様、エンジニアリング データを扱う場合に特に重要です。アシスタントは、何を変更してよいのか、何を提案のみにとどめるべきか、何を決して仮定してはならないのかを理解している必要があります。
有用な境界の例:
-
元のエンジニアリング上の意図を変更しない
-
値、制約、または設計判断を作り出さない
-
ID や参照を削除しない
-
不足している検証方法を仮定しない
-
ユーザーのレビューなしに変更を自動適用しない
-
不明確な情報を事実として扱わない
境界を明確にすることで、もっともらしいが誤ったエンジニアリング出力のリスクを低減できます。
-
-
Define the Output Format
スキルは、結果をどのように返すかを AI に指示する必要があります。
一貫した出力形式により、スキルのレビュー、比較、再利用がしやすくなります。
スキルに応じて、出力は次のような形式になります。
-
表
-
箇条書きリスト
-
書き換えた要件
-
構造化レポート
-
チェックリスト
-
要約
-
提案された変更の一覧
-
質問または未解決事項の一覧
出力形式はスキルの目的に合っている必要があります。たとえば、レビュー指向のスキルは、問題、説明、推奨事項の列を持つ表形式が適していることがよくあります。書き換え指向のスキルは、元のテキスト、提案出力、根拠を示す形式が適していることがよくあります。
-
。









)。現在選択されている仕様に要件が含まれていない場合は、最初に要件を作成するよう提案されます(
)。対応するボタンをクリックしてクエリ/アクションを適用します。
)が入力された Engineering Assistant ペインが開きます。
)が入力された Engineering Assistant ペインが開きます。

