ビジネスプロセスの基盤の探索
ビジネスプロセス管理の概要
SAP Signavio Process Collaboration Hub の概要
SAP Signavio Process Manager の紹介
プロセスモデリングおよび設計
SAP Signavio Process Governance の概要
ビジネスプロセス管理向け SAP Signavio ソリューションの管理
DMN によるビジネス意思決定モデリングの概要
SAP Signavio カスタマージャーニーモデリング (CJM) の概要
SAP Signavio によるビジネスプロセスモデルコネクタの設定
SAP Signavio での AI 機能の概要

ヒットポリシーの説明

Objective

After completing this lesson, you will be able to ヒットポリシーについて説明します。

ヒットポリシー

ヒットポリシーを使用して入力を管理します。

ヒットポリシーは、デシジョンテーブルで複数のルールと一致する入力を管理する方法、またはどのルールにも一致しない入力を管理する方法を定義するために使用されます。

ヒットポリシーには、主に以下の 2 つのタイプがあります。1つ目はシングルヒットポリシー。このポリシーでは、1 つのルールのみが起動でき、決定の最終結果は 1 つの出力値になります。

2つ目はマルチヒットポリシー。このポリシーでは、明示的な順序なしでルールを起動することができます。複数のヒットテーブルは、値のセットを返すか、決定の最終結果を集計します。

単一ヒットポリシー - 一意

3 番目のヒットポリシー、つまり独自のヒットポリシーがあります。一意のヒットポリシーが使用される場合、入力の組合せに対して起動できるルールは 1 つのみです。すべての入力は、互いに独立して分割される (つまり、任意の組み合わせが実際に可能である) ものとみなされます。重複ルールは許可されません。

前のテキストで説明されているように、一意のヒットポリシーを含むデシジョンテーブル。

注記

U = 一意のヒットポリシー

'-' はワイルドカードを表し、任意の値に一致します。

ルールを確認します。

  • ルール 2 では、選択した配達タイプが緊急配送、顧客のタイプが小売業者、商品の種類がワイルドカードの場合、商品の種類が食料品か商品かに関係なく、値は問題ありません。ルールの出力は、常に出荷優先度高になります。 
  • ルール 3 では、選択した出荷タイプが標準出荷、商品の種類が食料品、得意先のタイプが卸売店である場合、シップメントの優先度は高になります。

単一ヒットポリシー - 最初

最初のポリシーを使用すると、ルールが重複する場合がありますが、起動されるルールは 1 つのみです。最初のヒットポリシーでは、ルールの順序を前提としており、上から下に評価されます。1 つのルールが起動するとすぐに、そのルールの出力が決定の結果になります。1 つのルールが起動されると、他のルールはチェックされません。

テキストで説明されている、最初の ヒットポリシーを示すデシジョンテーブル。

この例では、デシジョンテーブルによってチェックされる最初の規則は、選択された出荷タイプが緊急出荷であるかどうか、および得意先が卸売店であるかどうかです。その場合、このルールは起動されます。そうでない場合は、2 番目のルールがチェックされます。2 番目のルールが入力値と一致しない場合は、3 番目のルールがチェックされ、以下同様に続きます。

テーブルの最後のルールは 'catch all ルール' として機能することに注意してください。つまり、以前のルールのいずれも入力値と一致しない場合、このルールは起動されます。

すべてのルールをキャッチ

ルールの順序と Catch のすべてのルールの使用は、細心の注意を払って処理する必要があります。次の例を見てみましょう。ルールの順序付けにより、各個人顧客は、(ワイルドカードによる) 購入金額に関係なく 10% の割引を受けます。これは、このルールがデシジョンテーブルによってチェックされる最初のルールであり、最初のヒットポリシーではルールの使用および順序付けが行われるため、このデシジョンテーブルでは意味をなさないためです。

デシジョンテーブル (前のテキストで説明されています)。

単一ヒットポリシー - 任意

任意のヒットポリシーを使用することで、複数のルールで同じ入力値の組み合わせがカバーされます。ただし、この重複は、重複するルールの出力が同じである場合にのみ許可されます。

入力値の組合せが非有効な契約に関連付けられている場合、年間手数料は支払われませんが、最小取引高に達すると、最初の 2 つのルールが発動します。どちらも同じ出力を生成し、VIP 要件が満たされていません。

前のテキストで説明されているサンプルのデシジョンテーブル。

単一ヒットポリシー - 優先度

優先度ヒットポリシーの使用時に、特定の入力に対して複数のルールが一致する可能性があります。出力は、優先度に従って順序付けられます。優先度が最も高い出力が返されます (たとえば、最も高い割引が優先されます)。

出力列にコールアウトがあるデシジョンテーブル: これは、出力値の順序付けです。低 の優先度が最も高く、その後に 中 と 高 が続きます。

上記の例では、Age が 70 で、Medical history が Bad の場合、ルール 3 と 4 の両方が適用されます。優先度ポリシーでは、出力媒体のみが返されます。これは、媒体が出力一覧に高の前に表示されるため、優先度が高くなるためです。

複数ヒットポリシー - 収集

以下の場合に購買発注が受け入れられるとします。

  • 有効な見積番号が参照されます。
  • 価格設定は見積と一致します。
  • 必要なすべての明細が受注に含まれます。 
  • 見積の有効期限が切れていません。

すべての条件が満たされている場合、購買発注は受け入れられます。少なくとも 1 つの条件が満たされていない場合、購買発注は受け入れられません。

以下の 3 つのデシジョンテーブルは、異なるヒットポリシーを使用して構築されているため、外観が異なります。ただし、テーブルでは同じ意思決定ロジックが実装されるため、指定された入力データに対して同じ結果が生成されます。

前のテキストで説明されているように、それぞれヒットポリシーが異なる 3 つのデシジョンテーブルのスクリーンショット。

複数ヒットポリシー - 収集

マルチヒットポリシーでは、明示的な順序なしで複数のルールを起動することができます。DMN のデフォルトでは、結果として括弧で囲まれた出力値のセットが提供されます。このようにして、複数のルールが起動した場合、出力は値の一覧になります。

一方、複数のルールが起動し、出力が集計されると、結果は 1 つの出力値になります。この集計は、出力値に関する関数によって実行されます。

  • Sum - 個別の出力の合計を返します。
  • Min - 最小の出力値を返します。
  • Max - 最大出力値を返します。
  • Count - 個別の出力の数を返します。

複数ヒットポリシーは、ユニットの一致に蓄積されるスコアカードに最適です。たとえば、検査済明細の条件は、さまざまな不良の累積ポイントを含む複数のチェックに基づく場合があります。

複数ヒットポリシーの例

以下の例を参照してください。

組織における休暇日数の合計は、2 つの入力値 (従業員の年齢と勤続年数) の合計によって異なります。

  • すべての従業員は、年齢や勤続年数に関係なく、標準休暇日数が 20 日である。
  • 従業員の年齢が 55 歳を超える場合は、さらに 5 日かかります。
  • 8 年間の勤続後、従業員は 5 日間の追加休暇を取得します。
  • 社員に 20 年の勤続期間がある場合は、最終的な 5 日間が追加されます。

スコアカードを構築するには、最初に複数ヒットポリシー収集を選択します。合計休暇日数が合計されるため、集計関数は合計です。

デシジョンテーブル設定ダイアログで、収集 (複数) がヒットポリシーとして選択されます。集計として合計が選択されます。

社員が 20 歳で、会社に 1 年間しか在籍していない場合、取得できる標準休暇日数は 20 日のみです。

会社に 9 年間在籍している 30 歳従業員は、勤続期間が 8 年を超えているため、標準日数が 20 日 + 5 日余分になります。

社員が 60 歳で 32 年間在籍している場合、勤続期間が 20 年を超えているため、55 歳以上 + 5 日を超えているため、標準日 20 日 + 5 日になります。これにより、合計で 35 の休暇日数になります。

前のテキストで説明されているように、勤続年数および勤続年数を示すサンプルデシジョンツリー。