動的スケジューリングの設定
動的スケジューリングでは、事前定義されたルールと構成に基づいてフィールドエージェントにタスクを自動的にアサインできます。この機能は、適切なタスクが最適なエージェントにアサインされていることを確認し、移動時間、スキルマッチング、およびタスクの優先度を最適化することで、タスク分散を簡素化するのに役立ちます。
始める前に
- 優先タスク割り当て方法として動的スケジューリングを選択します。これにより、事前定義された基準とルールに基づいてタスクがフィールドエージェントに自動的にアサインされていることが確認されます。詳細については、「 タスクのアサイン方法」を参照してください。
- 動的スケジューリングが最適なタスク割り当てを体系的に検証するように、エージェントスケジュールを設定します。詳細については、「動的スケジューリングのエージェントスケジュールの設定」を参照してください。
- 動的スケジューリングに関連するプロパティとインストールされている他のコンポーネントを確認します。組織固有の要件に合わせて設定をカスタマイズします。詳細については、「 動的スケジューリングのシステムプロパティとコンポーネントのレビュー」を参照してください。
- エージェントのタスクの場所までの推定移動時間と距離の計算方法を決定するために、移動時間と距離の計算を設定することを確認します。Google Maps API を使用して、リアルタイムの移動距離の見積もりを行うか、位置情報プロパティの設定に基づく直線距離の見積もりを行うかを選択できます。
- [
移動時間の推定に Google Maps API を使用する] 位置情報管理プロパティが有効になっている場合は、Google Maps API を使用するか、直線距離で推定するかを選択します。 - [
移動時間の推定に Google Maps API を使用する]位置情報管理プロパティがオフになっている場合、システムは作業指示タスクの [予定移動期間] フィールドの値を考慮します。
- [
必要なロール:admin
このタスクについて
作業指示構成の動的スケジューリング構成 は動的スケジューリングプラグインで使用できます。必要に応じて構成を変更したり、テンプレートとして使用してカスタム構成を作成したりできます。手順
タスクの結果
動的スケジューリングでは、定義されたルールとスケジュールに基づいて、フィールドエージェントにタスクが自動的にアサインされます。
動的スケジューリングのタスクフィルターの作成
タスクフィルターを使用すると、動的スケジューリングを使用してタスクを選択し、最適なエージェントにアサインするための基準を定義できます。
始める前に
必要なロール:admin
このタスクについて
タスクフィルターは、タスクを最適なエージェントにアサインする方法を絞り込むのに役立ちます。動的スケジューリングプラグインによって提供されるデフォルトのフィルターを使用することも、組織固有のニーズに合わせたカスタムフィルターを作成することもできます。
動的スケジューリングを自動アサインおよび即時アサインと組み合わせると、タスク割り当てに柔軟性がもたらされます。タスクは、構成に応じて即座にアサインすることも、スケジュールされた間隔でアサインすることもできます。
| 自動アサイン | 即時アサイン | 結果 |
|---|---|---|
| 有効 | 有効 | 動的スケジューリングはすぐに実行され、フィールドエージェントにタスクが自動的にアサインされます。 |
| 有効 | 無効 | 動的スケジューリングが実行され、スケジュール済みバッチにタスクが追加されます。タスクは定期的にエージェントにアサインされます。 |
| 無効 | 無効 | ディスパッチャーは動的スケジューリングを手動でトリガーし、タスクはアサイン前に確認のために送り返されます。 |
手順
タスクの結果
(Criteria_1_rating * Criteria_1_weight) / total_criterion_weight +
(Criteria_2_rating * Criteria_2_weight) / total_criterion_weight +
(Criteria_3_rating * Criteria_3_weight) / total_criterion_weight = agent_rank/score次のタスク
タスクをアサインするための一致基準
動的スケジューリングでは、スキルや可用性などの構成可能な一致基準を使用して、選択したグループ内のエージェントを評価し、総合ランキングを提示できます。
- 簡易一致:エージェントのタイムゾーンとタスク場所のタイムゾーンの一致など、1 対 1 の一致を作成します。
- アグリゲート:シンプルなクエリーを使用し、アグリゲート結果を返します。アグリゲートタイプでは、テーブルを選択してフィルターを作成し、[担当者] フィールドなどのアグリゲートフィールドを選択します。このタイプのクエリーは、一連のユーザーを返します。
- スクリプト化:ユーザーのリストを返すスクリプト化されたクエリーを使用します。
| クライテリア | 説明 | タイプ | 適用先 [テーブル] |
|---|---|---|---|
| ほとんどの部品を持つエージェント | 動的スケジューリングを使用して、必要な部品の数が最も多いエージェントを特定します。 | スクリプト化済み | タスク |
| アサイン済みケース | アサインされたすべてのケース (すべての優先度 P1、P2、P3 など) に基づいて作業負荷を計算します。アサインされたケースが増えると、エージェントの全体的なランクは低下します。アサインされているケースが多いほど、エージェントの総合ランクへの貢献度は低くなります。 | アグリゲート | sn_customerservice_case |
| 今日の空き状況 | スケジュール、重複するタイムゾーン、および現在の時刻に基づいて可用性を判断します。可用性は、エージェントの作業スケジュール、アサインされた作業、および個人の休暇に基づいて計算されます。エージェントの可用性が高いほど、エージェントの総合ランクへの貢献度が高くなります。 | スクリプト化済み | タスク |
| SM タスクの一貫したアサイン | 同じ親作業指示書を持つ作業指示書タスクを同じエージェントにアサインします。一致するすべてのエージェント間でアサインの一貫性を確保します。 | スクリプト化済み | sm_task |
| タスクからの現時点での距離 | タスク場所からのエージェントの距離を考慮します。 | スクリプト化済み | タスク |
| タスクからの距離 | タスクの場所からのエージェントの距離を評価します。 | スクリプト化済み | タスク |
| 半径を除外したタスクからの距離 | 定義された半径外のエージェントを除き、ジョブを実行する最も近い場所に基づいてエージェントをランク付けします。 | スクリプト化済み | タスク |
| シフト外のエージェントを除外 | スケジュールに基づいて、または休暇イベントがあるために対応できないエージェントを除外します。 | スクリプト化済み | wm_task |
| 除外された技術者を無視 | 除外された技術者が特定のアカウントに関連付けられた作業指示タスクに自動的にアサインされないようにします。技術者が除外されたアカウントに作業指示タスクが関連付けられている場合、除外された技術者はアサインされません。 | スクリプト化済み | wm_task |
| 却下された技術者を無視 | 最近同じタスクを却下した技術者にタスクが再アサインされないようにします。システムプロパティ work.management.rejected.technician.duration は、技術者がタスクを却下してから、そのタスクを同じ技術者に自動的に再アサインできるまでの期間を決定します。 | スクリプト化済み | wm_task |
| 前回アサイン日 | 作業負荷のバランスを取るために、直近にアサインされた作業に基づいてエージェントに優先順位を付けます。アサインされた作業のバランスを取るために、最後にアサインされた作業に基づいてエージェントを優先順位付けしました。 | スクリプト化済み | タスク |
| 動的スケジューリングの一致する必須部品 | 必須部分を持つエージェントのみをアサインします。ジョブに必要な必須部品の在庫状況に基づいてエージェントをランク付けします。 | スクリプト化済み | タスク |
| 動的スケジューリングの一致する必須スキル | タスクに必要なタスクスキルで定義された必須スキルとオプションスキルの可用性に基づいて、エージェントをランク付けします。一致するスキルが多いほど、エージェントの総合ランクへの貢献度が高くなります。 注: 必須スキル機能を使用する場合は、[一致するスキル - 必須スキルサポート] 基準を使用して、ケースに対して特定された必須スキルを持つエージェントを一致させます。 |
スクリプト化済み | タスク |
| 合致するスキル | タスク要件に一致するスキルに基づいて可用性を評価します。一致するスキルが増えると、エージェントのランクが上がります。 | スクリプト化済み | タスク |
| 動的スケジューリングに合致するスキルレベルギャップ | 「少ないほど良い」方法を使用して、スキルの数とスキルレベルに基づいてエージェントをランク付けします。タスクに対する過剰なスキルを持つエージェントよりも、十分なスキルレベルを持つエージェントを優先します。 | スクリプト化済み | タスク |
| 希望する技術者を優先 | 顧客アカウントでの作業に最も適した技術者に基づいてタスクをアサインします。 | スクリプト化済み | wm_task |
| 半径の除外 | 定義された半径に基づいてエージェントをランク付けします (半径外のエージェントを除く)。 | スクリプト化済み | タスク |
| 希望する技術者をランク付け | 動的スケジューリングを使用した顧客アカウントの作業に最も適した技術者を特定します。 | スクリプト化済み | タスク |
| タイムゾーンの重複 | タスクの場所との重複するタイムゾーンに基づいてエージェントをランク付けします。 | スクリプト化済み | タスク |
| 動的スケジューリングの一致するクルー必須スキル 注: フィールドサービスクルーオペレーションプラグイン (com.snc.fsm_crew_scheduling) をアクティブ化する必要があります。 |
クルータスクの必須スキルを、そのスキルを持つエージェントを持つクルーに一致させます。 | スクリプト化済み | wm_crew |
| 動的スケジューリングに対するクルーのスキルレベルギャップ 注: フィールドサービスクルーオペレーションプラグイン (com.snc.fsm_crew_scheduling) をアクティブ化する必要があります。 |
クルータスクの必須スキルレベルを、必要なレベルのスキルを持つエージェントを持つクルーと一致させます。 | スクリプト化済み | wm_crew |
| Crew Matching Skills 注: フィールドサービスクルーオペレーションプラグイン (com.snc.fsm_crew_scheduling) をアクティブ化する必要があります。 |
作業指示タスクにリストされているスキルを持つクルーをマッチングし、そのクルーにタスクをアサインします。 | スクリプト化済み | wm_crew |
| タスクリソース要件に一致するクルースキル 注: フィールドサービスクルーオペレーションプラグイン (com.snc.fsm_crew_scheduling) をアクティブ化する必要があります。 |
リソース要件に記載されているスキルを持つクルーをマッチングし、それらのリソース要件を持つタスクをそのクルーにアサインします。 | スクリプト化済み | wm_crew |
| タスクからのクルーの距離 注: フィールドサービスクルーオペレーションプラグイン (com.snc.fsm_crew_scheduling) をアクティブ化する必要があります。 |
タスクの場所からのクルーの距離を評価します。 | スクリプト化済み | wm_crew |
| 動的スケジューリングのエージェント効率クライテリアに一致する 注: フィールドサービス エージェント効率プラグイン (com.snc.fsm_agent_efficiency) を有効にする必要があります。 |
作業指示タスクで指定された エージェント効率 基準をエージェントの効率基準と照合することにより、作業指示タスクをエージェントにアサインします。 | スクリプト化済み | wm_task |
- ランキングと表示使用率
- ランキング方法
- ランキングの重み付け
- しきい値
- アクティブ/非アクティブ
ランキングと表示使用率
- ランキングと表示:基準を使用してエージェントのランキングを決定し、ワークベンチの列に表示します。
- 表示専用:ワークベンチの列に基準を表示しますが、エージェントのランキングを決定するためには使用しません。
- ランキングのみ:基準を使用してエージェントランキングを決定しますが、ワークベンチには表示されません。
ランキング方法
- 多いほど良い:たとえば、エージェントのランキングを決定するときに、可用性が高いほどランキングが高くなります。
- 少ないほど良い:たとえば、エージェントのランキングを決定するときに、アサインされたケース数が少ないほどランキングが高くなります。
重み付け
一致基準ごとにアサインされた重み付けがあります。デフォルトでは、[ケースアサインの推奨事項] 一致ルールの一致基準にアサインされる重み付けは 10 です。より重要な基準により高い重み付けをアサインすることができます。
しきい値
しきい値は、基準の最小要件を設定します。たとえば、タスクに必要なスキルのうち 3 つ以上を持つエージェントのみを表示する場合は、一致するスキル基準のしきい値を 3 に設定します。可用性については、しきい値を目的の時間数に設定して、利用可能な作業時間がこの最小値以上であるエージェントのみを表示します。一致ルールフォームの [基準を選択] 関連リストでしきい値を設定することができます。必要に応じて、リストをパーソナライズして、[しきい値] 列を追加します。
アクティブ/非アクティブ
アサインワークベンチ構成を決定する一致ルールに関連付けられた一致基準が複数存在する場合があります。個々の基準をそれぞれ、アクティブまたは非アクティブに設定できます。この設定を変更すると、エージェントのランキングにすぐに影響します。この変更は、一致ルールフォームの [基準を選択] 関連リストで行うことができます。必要に応じて、リストをパーソナライズして、[アクティブ] 列を追加します。
エージェントのランキングの計算
- 各基準の数値を計算します。
- その数値に基準の重み付けを乗算します。
- 結果をすべての基準の合計で除算します。
- 各基準に対して繰り返し、結果を追加します。
- スキルと必須スキルサポートの一致:5/6
- 今日の可用性:7 時間
- アサインされたケース:2
- 一致するスキル:
2/3 = 0.666(3 がスキルの最大数) - 現在の可用性:
7 / 8 = 0.875(最大時間数は 8) - アサインされたケース:
2 / 26 = 0.0769(テーブル内のタスクの合計数は 26) - 重み付け:各一致基準の均等の重み付けは 10 です
((0.666 x 10) / Total of criterion weight (10+10+10)) + ((0.875 x 10) / Total of criterion weight (10+10+10)) + ((0.0769 x 10) / Total of criterion weight (10+10+10))(6.66 / 30) + (8.75 / 30) + (0.769 / 30)0.222 + 0.291 + 0.0256 = 0.53この計算は、アサイン先グループ内の各エージェントに対して実行されます。エージェントは、この計算の値に基づいてランク付けされ、最高点のエージェントが最高のランキングを獲得します。
タスク順序付けルールを作成する
動的スケジューリングでは、タスクの順序付けルールを使用して、タスクの優先順位付けと効果的な配置を行います。これらのルールにより、タスクが適切な順序で処理され、フィールドサービスオペレーションの簡素化に役立ちます。
始める前に
必要なロール:admin
このタスクについて
タスク順序付けルールを使用すると、スケジューリング中にタスクに優先順位を付ける方法を制御できます。ルールを定義することで、最も重要なタスクが最初に処理され、組織固有のニーズに基づいてタスクが順序付けされるようにすることができます。複数のルールを作成して実行順序に基づいて順番に適用できるため、柔軟性と精度を最大限に高めることができます。
- 実行順序:ルールは順番に評価され、実行値が最小のルールが優先されます。
- たとえば、緊急度 (P1、P2、P3) でタスクに優先順位を付けるルールを作成できます。
- 別のルールを適用して、同じ優先度のタスクを SLA 期日別に整理することができます。
- タスクの依存関係:タスクの依存関係は、適切なタスクフローを確保するために、タスク順序付けルールを上書きできます。
- 先行タスクが再アサインされ、後続タスクがアサインされた場合、先行タスクは後続タスクが開始する前にスケジュールされます。
- 先行タスクが未アサインの場合、後続タスクは未アサインのままになります。
- 先行タスクがアサインされている場合、後続タスクは先行タスクが完了するまで待機します。
- 先行タスクの優先度が低い場合、後続タスクは先行タスクが割り当てられるまで待機します。
注:動的スケジューリングでは、[終了 - 開始] の高度なタスク依存関係のみがサポートされています。遅延時間の最大値または最小値は指定されていません。他のタイプのタスク依存関係は無視されます。
- シンプルルール
- タスクテーブルから選択した 1 つのフィールドに基づいてタスクをソートします。
- 昇順または降順のソート順を選択します。
- 詳細ルール
- 関連のない 2 つのテーブルの選択に基づいてタスクをソートします。
- タスクテーブルと別のテーブルを接続するための参照フィールドが必要です。たとえば、タスク SLA テーブルに格納されている SLA に基づいて作業指示タスクをソートできます。
- 作業指示タスクの優先度:タスクの優先度を使用してタスクの順序を決定します。デフォルトの実行順序は 100 です。
- 作業指示の優先度:作業指示の全体的な優先度を使用してタスクの順序を決定します。デフォルトの実行順序は 200 です。
- ヘルスケア:医療機器の重要度に基づいて機器のメンテナンスタスクに優先順位を付けます。
- 製造:1時間あたりのマシンのダウンタイムのコストでタスクをソートし、生産への影響を軽減します。
- 小売業:高度なルールを使用して、来店者数ごとにタスクに優先順位を付け、トラフィックの多い店舗が最初にサービスを提供するようにします。
- ユーティリティ:シンプルなルールでは、重要なインフラストラクチャに影響を与える停電などの緊急タスクを優先できます。
手順
タスクの結果
動的スケジューリングでは、このルールを使用して、定義した基準に基づいてタスクに優先順位を付け、優先度の高いタスクが適切にスケジュールされるようにします。
次のタスク
タスクのアサイン解除制約を作成する
動的スケジューリングでは、優先度が低い場合でも特定のタスクがアサイン解除されないようにする未アサイン制約を定義できます。この機能により、依存関係や緊急性に基づいて重要なタスクのアサインが維持されます。
始める前に
必要なロール:admin
このタスクについて
アサイン解除制約は、タスクをいつアサイン解除できるか、またはできないかを制御するのに役立ち、重要なタスクをアサインされたままにしておくことができます。これにより、特にタスクに依存関係がある場合や時間的制約がある場合に、中断を防ぐことができます。たとえば、SLA 違反が近いタスクや調達部品を必要とするタスクは、タスク順序付けルールでの相対的な優先度に関係なく、アサインを解除することはできません。
- 下流のタスク:タスクに依存する下流タスクがある場合、アサイン解除を防止します。
- 5 時間以内に SLA 違反:タスクのサービスレベルアグリーメント (SLA) が 5 時間以内に期限切れになる場合に、アサイン解除を防止します。
- 部品調達済み:タスクに必要な 1 つ以上の部品がすでに調達されている場合、アサイン解除を防止します。
動的スケジューリング構成でアサイン解除オプションを有効にすると、タスクのアサインを解除して、より重要なタスク (タスク順序付けルールによって決定される) を優先させることができます。ただし、アサイン解除制約により、タスクの優先度が低い場合でも、特定のタスクのアサインを解除できない場合があります。タスクが未アサインでダウンストリームタスクがある場合、ダウンストリームタスクもアサイン解除され、ディスパッチ待ちキューに追加されます。
- ヘルスケア:SLA 違反が近づいている重大な医療機器メンテナンスタスクのアサイン解除を防止します。
- 製造:部品を調達したタスクのアサイン解除をブロックし、リソースが効率的に使用されるようにします。
- ユーティリティ:下流の依存関係が関係する場合は、緊急修理タスクを割り当てたままにします。
手順
タスクの結果
この制約により、指定された条件に基づくタスクのアサイン解除が防止され、タスクの順序付けルールに従ってタスクの重要度が低くても、タスクのアサイン解除がなくなります。