Die zweite Strategie innerhalb der While-Schleife ist die Routing-Strategie.
Hier wird festgelegt, welche Routing-Strategie angewendet werden soll, um den Vorgang zur
Bearbeitung in die einzelnen Queues zu routen.
Die voreingestellte Routing-Strategie ist das sogenannte Direct Routing. Dies
bedeutet, dass Sie konkret festlegen, in welche Warteschlangen und auf welche Infotische
der Vorgang gelegt werden soll.
Erfolgt ein Direct Routing in die Warteschlange eines Agenten, bedeutet dies automatisch,
dass der Vorgang vom Agenten editierbar ist. Erfolgt ein Direct Routing auf den
Infotisch eines Agenten, kann auf die so gerouteten Vorgänge nur lesend zugegriffen
werden kann.
WARNUNG: Wenn das Administratorkonto
umbenannt wird, werden Workflows unterbrochen!
Für das Direct Routing finden
Sie im Eigenschaftsbereich die Eigenschaften
WaitingQueue (Warteschlange) und
ControlQueue (Infotisch), über die Sie die Auswahldialoge öffnen und somit
die Rollen bzw. Agenten auswählen können.
Anmerkung: Wie
Sie sehen, sind die Eigenschaften WaitingQueue (Warteschlange) und
ControlQueue (Infotisch) durch den roten Punkt als Pflichtfelder
markiert. Dennoch können Sie in obigem Dialog auch KEINEN Agenten (also eine leere
Liste) auswählen und durch Assign bestätigen.
Anmerkung: Eine leere Auswahl bei der WaitingQueue Eigenschaften
bedeutet, dass der Vorgang in keine Warteschlange geroutet wird und somit in der
Stage Activity verbleibt und von keinem Agenten zu bearbeiten ist. Diese Variante
ist daher nur dann zu verwenden, wenn an anderer Stelle im Workflow der Vorgang
verändert wird, um die Break-Condition jemals zu erreichen!
Folgenden Routing-Strategien stehen zur Auswahl.
- AgentRouting
- Der Vorgang wird auf den Arbeitstisch EINES Agenten geroutet und ist daher
dort schon reserviert. Hierfür wird der Parameter Agent als
Pflichtfeld im Eigenschaftsbereich verwendet, in dem die eingerichteten
Agenten in einer Liste angeboten werden.
- AutomaticSkillBasedRouting
- Skills können frei definiert werden und Mitarbeitern können diese Skills mit
unterschiedlichen Gewichtungen zugewiesen werden (Mitarbeiter XY hat beispielsweise
den Skill Hardware mit der Gewichtung 80 %, Mitarbeit Z
Software zu 90 %, usw.). Auch in Vorgangsdialogen kann ein
Skill-Control eingebaut sein, womit zum Ausdruck gebracht werden kann: Um
diesen Vorgang zu bearbeiten, braucht der entsprechende Mitarbeiter die
Fähigkeit X zu mindestens Y Prozent.
- Ziel dieser Routing-Strategie ist zudem, die Vorgänge bestmöglich zu
verteilen, indem nach geeigneten Agenten gesucht wird, die z. Z. keine
Vorgänge reserviert haben, also potentiell Arbeit übernehmen können.
- Sind keine Skills für die Agenten und Vorgänge eingerichtet, kann diese
Strategie nicht verwendet werden.
- Für die Strategie AutomaticSkillBasedRouting gibt es drei
Propertys:
-
Possible Workers sind Sie alle potentiellen Bearbeiter des
Vorgangs. Potentiell bedeutet in diesem Zusammenhang,
dass vor dem Routing zusätzlich geprüft wird, ob der im Vorgang
angegebene Skill auch von den Agenten erfüllt ist.
Zudem wird versucht, diesen Vorgang genau EINEM Agenten aus der
Possible Workers-Liste auf den Arbeitstisch zu
routen. Der Vorgang wird also nur dann zu dem Agenten geroutet,
wenn dieser
- angemeldet ist,
- (mindestens) den entsprechend im Vorgang angegebenen Skill
hat und
- zur Zeit KEINEN Vorgang im Zustand Offen reserviert,
also auf dem Arbeitstisch hat. Offen bezieht sich dabei auf
den Status des CASEINFO.INTERNALSTATE, d. h. Vorgänge im
Zustand Warte auf oder Zu prüfen werden hier
ignoriert.
Hat der Agent mindestens einen Vorgang reserviert, wird der
Arbeitstisch des nächsten, übernächsten usw. Agenten aus der
Possible Workers-Liste geprüft, bis ein Agent
gefunden ist, der keinen Vorgang reserviert hat.
-
Agent ist ein Agent, auf dessen Arbeitstisch die Vorgänge
solange bleiben, bis sie entsprechend der Skills und
angemeldeten Agenten geroutet werden können. Der Agent
(in obigem Beispiel PoolAgent) ist ein explizit für
dieses Routing angelegter Agent. Er sollte NUR als Pool für
dieses Routing verwendet werden, also KEINE anderen Vorgänge
erhalten und bearbeiten!
Sollte über diesen Mechanismus kein freier Arbeitstisch gefunden
werden, wird der Vorgang zu dem unter Agent angegebenen
Arbeitstisch geroutet und nach 90 Sekunden wird durch eine
Re-Analyse erneut versucht, den Vorgang an einen qualifizierten
Agenten zu verteilen.
-
AgentRestriction
- True sucht nur unter den Agenten aus der Liste
der Possible Workers nach potentiellen
Bearbeitern.
- False bedeutet, dass die Possible
Workers-Liste ignoriert wird und alle im System
befindlichen Agenten auf Anwesenheit und Skills
untersucht werden, um u. U. den Vorgang auf den
Arbeitstisch geroutet zu bekommen.
- ConditionalRouting
-
Beim Conditional Routing werden die Warteschlangen und Infotische anhand
von Bedingungen/Conditions auf dem Vorgangsobjekt berechnet. Hierfür
werden die beiden Properties
WaitingQueueRoutingInfos und
ControlQueueRoutingInfos zur Verfügung gestellt.
Eine Bedingung, die Sie über den bekannten Condition-Dialog entweder
direkt auswählen oder neu anlegen, wird den Agenten/Rollen (den
Principals) zugeordnet.
Wie Sie in obigem
Beispiel sehen, soll das Routing abhängig von der Priorität sein. Achten
Sie in diesem Fall darauf, dass für JEDEN Prioritätswert auch ein
Routing-Ziel (Agent/Rolle) angegeben ist.
Bei Überschneidung der Bedingungen wird der zugehörige Vorgang in alle
Warteschlangen bzw. Infotische geroutet, die eine der angegebenen
Bedingungen erfüllen (ODER-Verknüpfung der Bedingungen).
Sie können an dieser Stelle einen Vorgang auch in Abhängigkeit von
prozentual verstrichener oder verbleibender Reaktions- oder Lösungszeit
routen. Natürlich können Sie diese zeitlichen Prozentabfragen auch in
anderen Aktivitäten verwenden wie der Evaluate Activity.
Hier zwei
Beispiele:
this.CASEINFO.ReactionTime.RemainingPercent <= 20
dient zur Abfrage, ob die verbleibende Reaktionszeit kleiner oder gleich
20 Prozent
ist.
this.CASEINFO.PromisedSolutionTime.ElapsedPercent > 50
dient zur Abfrage, ob von der versprochenen Lösungszeit bereits mehr als
50 Prozent verstrichen sind.
- DirectRouting
- Standard-Routing-Strategie
- Die Queues werden durch die Eigenschaften WaitingQueue und
ControlQueue festgelegt.
- DirectRoutingWithResponsible
- In der Service-Level-Management-Komponente können für einen angebotenen
Service ein Verantwortlicher (Responsible) und ein stellvertretender
Verantwortlicher (Agent oder Rolle) eingetragen werden. Für jedes SLA kann
zudem ein weiterer Agent (oder Rolle) eingetragen sein.
- Diese Strategie kann nur dann sinnvoll verwendet werden, wenn die
Workflowdefinition mit der Option Service Level Management 5.x und
Anfrager und Vertrag erforderlich gespeichert wird, und somit
auch in einem Service mit Agreements verwendet wird.
- Die Queues des DirectRoutingWithResponsible werden können sodann durch
mehrere Properties belegt werden.
- ControlQueue: Agenten und Rollen werden für das Routing auf
Infotisch oder Warteschlange eingetragen.
- Waiting Queue: Agenten und Rollen werden für das Routing auf
Infotisch oder Warteschlange eingetragen.
- RouteToCaseOwner bietet die Möglichkeit, an den Besitzer des
Vorgangs zu routen. Gleiche Auswahlen werden auch bei den Service-
und SLA-Beteiligten getroffen.
- None: Vorgang wird nicht an den Besitzer
geroutet.
- WaitingQueue: Vorgang wird in die Warteschlange des
Besitzers geroutet.
- InfoQueue: Vorgang wird auf den Infotisch des
Besitzers gelegt.
- Both: Vorgang wird sowohl in die Warteschlange als
auch auf den Infotisch des Besitzers geroutet.
- RouteToServiceManager
- Auswahl der Queue für den Verantwortlichen, der im Service eingetragen
ist.
- RouteToServiceAssistant
- Routing an den Stellvertreter des Services.
- RouteToSLAOwner
- Routing an den auf dem SLA angegeben Agenten.
- DirectWQRouting
- Während in der Strategie DirectRouting auch immer die Belegung für
den Infotisch eingetragen werden muss, bietet die Strategie
DirectWQRouting nun nur die Wartschlange als Property an.
- FilterRouting
- Die Queues werden anhand der bestehenden Filter (definiert im Administrator)
bestimmt.
- LastSUOwnerRouting
- Der Vorgang wird auf den Arbeitstisch des Owners der letzten ServiceUnit
(SU) geroutet; dabei ist er natürlich schon reserviert.
- NoRouting
- Für den Fall, dass der Vorgang nur intern bearbeitet werden, also in keiner
Queue auftauchen soll (Connectivity).
- OwnerRouting
- Der Vorgang wird auf den Arbeitstisch des Owners geroutet; dabei ist
er natürlich schon reserviert.
- Beachten Sie, dass mit der Auswahl OwnerRouting schon festgelegt ist,
wohin der Vorgang geroutet werden soll, trotzdem aber die Eigenschaften
WaitingQueue und ControlQueue eingeblendet werden. Damit
soll der Fall abfangen werden, dass der Owner beispielsweise der
Workflow selbst ist, und somit nirgendwo hin geroutet wird.
- Sie müssen in diesen beiden Propertys ein geeignetes Instruction Set für die
Warteschlange und den Infotisch eines Agenten eintragen, da ansonsten später
die Kompilierung des Workflows fehlschlägt. Die Instruction Sets selbst
können Sie bei Bedarf leer lassen.
- Eine weitere Routing-Strategie, das Prozessrollen-Routing, wird im
Zusammenhang mit Service Level Management am Ende dieses Handbuchs im Teil
Workflow und Service Level Management beschrieben.
- TeamRoutingStrategy
- Der Vorgang wird an das Team bzw. die Person geroutet, die über die
Vorgangszuweisung im Dialog ausgewählt und in der ODE
HLCASEASSIGNMENT gespeichert ist.
-
Beachten Sie, dass die Aktivierung der Funktion Vorgangszuweisung
aktivieren im Dialog Vorgangszuweisung konfigurieren für
die erfolgreiche Verwendung der Team Routing Strategie zwingend
notwendig ist.
Lesen Sie auch: Konfigurieren des Team-Routings,
Anwenderhandbuch ClassicDesk
und Zugriffsverwaltung.
-
Entsprechend der gewählten Assoziationsdefinition kann ein Vorgang, der
per Team Routing Strategie einem Agenten zugeordnet wird, auch auf den
Infotisch der anderen Teammitglieder geroutet werden. Eine Änderung an
dieser Assoziation erfordert eine manuelle Reanalyse der
Prozess-Instanz. Genauere Informationen hierzu erhalten Sie im Abschnitt
Ausnahmen
für Reservierung: Administrative Vorgangszuweisung und
Reservieren durch den Besitzer.
Für diese Routing-Strategie müssen folgende Eigenschaften angegeben
werden:
- AddToControlQueueOfProcessManager
- True: Vorgänge auf dem Infotisch des Managers, der im
Designer im Dialog
Vorgangszuweisung konfigurieren im Feld
Manager >> Team über die entsprechende
Assoziation ausgewählt wurde, werden anzeigt.
- False: Die Vorgänge werden nicht angezeigt
- AddToControlQueueOfServiceDesk
- True: Vorgänge auf dem Infotisch von Agenten des Service Desk, die im Designer im Dialog Vorgangszuweisung konfigurieren im Feld
Service Desk über die entsprechende
Assoziation ausgewählt wurden, werden angezeigt.
- False: Die Vorgänge werden nicht angezeigt.
- AddToControlQueueOfTeamMember
- True: Vorgänge auf dem Infotisch anderer
Teammitglieder, die im Designer im Dialog
Vorgangszuweisung konfigurieren im Feld
Teammitglied >> Team über die entsprechende
Assoziation ausgewählt wurden, werden angezeigt.
- False: Die Vorgänge werden nicht angezeigt.
- ControlQueue
- Wählen Sie hier die Agenten, Gruppen und Rollen aus, auf
deren Infotisch der Vorgang geroutet werden sollen.
- RouteToOtherTeamMember
- Über diese Eigenschaft können Sie definieren, ob der Vorgang
in der Warteschlange der anderen Teammitglieder verbleiben
soll, auch wenn er bereits einer Person zugewiesen
wurde.
True: Der Vorgang bleibt auch bei
einer persönlichen Zuweisung in der Warteschlange der
anderen Teammitglieder.
False: Der Vorgang
verschwindet aus der Warteschlange der anderen
Teammitglieder, sobald er einer Person persönlich zugewiesen
wurde.
- WaitingQueueFallback
- Hier können Sie eine Fallback-Warteschlange konfigurieren,
in die der Vorgang geroutet wird, falls beispielsweise das
Team, dem der Vorgang zugewiesen ist, keine Mitglieder hat
oder die Teammitglieder keinen Agenten zugewiesen sind.
Erstellen benutzerdefinierter Routing-Strategien
Wenn Sie an Mitglieder einer bestimmten Organisationseinheit routen möchten, können
Sie dies über eine benutzerdefinierte Routing-Strategie tun. Dazu steht Ihnen bei
der Erstellung eigener Strategien im Activity Designer die Klasse
PrincipalSupport zur Verfügung.
Die in dieser Klasse enthaltene Methode GetPrincipalsOfOrganization(ICodeContext,
HLObjectIdentity, Type) liefert eine Liste von Agenten, deren zugewiesene
Personen über Assoziation, die durch den Parameter associationType definiert
wird, mit der Organisationseinheit, die durch den Paramater orgUnitIdentity
definiert wird, assoziiert sind.
Informationen zum Erstellen eigener Strategien finden Sie im Abschnitt Erstellen von
Strategien.
Ausnahmen für Reservierung: Administrative Vorgangszuweisung und Reservieren
durch den Besitzer
In Workflows wird durch die gewählte Routing-Strategie sehr genau festgelegt, wer den
Vorgang in der Warteschlange und dem Infotisch hat. Hierbei gilt: Nur wer einen
Vorgang in der Warteschlange hat, darf ihn auch reservieren.
Da dieses Verhalten in einigen Fällen zu restriktiv ist, gibt es zwei Strategien, um
hierfür Ausnahmen definieren zu können.
Diese können Sie innerhalb der helpLine Stage Activity innerhalb der Wait Handlers
unter Reserve auswählen:
- StratrategyStageHandlerOwnerCanReserve
-
Ist diese Strategie gewählt, kann innerhalb dieser Stage auch der
Owner (Besitzer) den Vorgang reservieren und bearbeiten.
- StrategyStageHandlerRoleCanReserve
-
Ist diese Strategie gewählt, können über die zusätzliche Property
AdditionalRoles Agenten und Rollen angegeben werden, die den
Vorgang reservieren können oder die den Vorgang durch Administrative
Vorgangsreservierung per Drag and Drop (im ClassicDesk auf den Agenten in Verwaltung)
zugewiesen bekommen können.