Skip to main content

デシジョンルールの競合

デシジョンテーブルとデシジョンツリーの単体テストは、他のルールタイプと同じ機能を使用して実行できます。 デシジョンテーブルとデシジョンツリーのルールフォームには、競合と完全性をテストするための機能が備わっています。 これらのテストは、欠落している条件、または実行時にテストされない可能性のある条件を特定して、デシジョンルールの実行時に発生し得るギャップの特定に役立ちます。

競合テスト

競合の確認では、デシジョンルールが1つ以上の行またはブランチの使用を常に妨げているかどうかが特定されます。 「Show conflicts」では、不正な条件を確認します。 競合の原因となる行に警告が表示され、評価されない条件が示されます。 たとえば、デシジョンテーブルに300ドルを超える購入リクエストをテストする行が含まれているとします。 次の行は、500ドルを超える購入リクエストをテストします。 この場合、2番目の行は、条件が上の行に含まれているため、評価されることはありません。 競合のないデシジョンルールは一貫性があると言えます。

補足: デシジョンテーブルで「Evaluate all rows」が選択されている場合は、すべての条件が評価されるため、このテストで競合が表示されることはありません。

以下の画像は、デシジョンテーブルとデシジョンツリーの競合のテストを示しています。 このデシジョンテーブルでは、「Credit Score >1000」という条件は、先に評価される「900」という条件より大きいため、評価されないことが示されています。 このデシジョンツリーでは、「UnitPrice < USD25」は、条件「UnitPrice < USD50」が先に評価され、前の条件が含まれるため、到達されないことが示されています。

ヒント: 競合は、フォームを保存する際に警告メッセージとして報告され、ガードレールのランディングページに表示されます。

以下の画像の中央にある垂直線をスライドすると、デシジョンテーブルとデシジョンツリーの競合テストの比較を表示できます。

完全性テスト

Show completeness」により、条件が欠落しているデシジョンテーブルや分岐が足りないデシジョンツリーが特定されます。 このシステムは、元のデシジョンルールで欠落しているテストを示す行を追加します。 デシジョンルールで値のより詳細な評価が必要とされる場合は、返された結果を追加の行として追加できます。

補足: 「Show completeness」は、テスト対象の値の組み合わせが多数ある場合に、大量の行を生成します。

以下の画像は、デシジョンテーブルとデシジョンツリーに対して、顧客レベルと顧客収益の2つのプロパティ値をテストする完全性テストを示しています。 顧客レベルプロパティは、ローカルリストとして設定され、ブロンズ、シルバー、ゴールドの3つの値が使用できます。 デシジョンテーブルとデシジョンツリーは両方とも、ブロンズ顧客レベルと3つの異なる収益しきい値をベースにした特定の割引率を適用するように設定されます。 Show completeness機能は、以下を確認するための行を追加します。

  • 10000以下の収益しきい値。
  • シルバーおよびゴールドの顧客レベル。

ユーザーは、提案された条件が必要かどうかを判断します。 以下の画像の中央にある垂直線をスライドすると、デシジョンテーブルとデシジョンツリーの完全性テストの比較を表示できます。

以下のインタラクションで理解度をチェックしてください。


このトピックは、下記のモジュールにも含まれています。

If you are having problems with your training, please review the Pega Academy Support FAQs.

このコンテンツは役に立ちましたか?

改善できるところはありますか?

We'd prefer it if you saw us at our best.

Pega Academy has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice