Berechnungs-Engine-Übersicht
In der folgenden Liste wird der Engine-Workflow veranschaulicht:
bsi835de
In der folgenden Liste wird der Engine-Workflow veranschaulicht:
- Kunden-Events gelangen durch Adapter in das System.
- Adapter-Listener erfassen Events. Die Daten werden normalisiert und sind leicht zu verarbeiten. Adapter-Listener tragen normalisierte Daten in die T_RAW_DATA-Tabelle ein.
- Der Prozess zur Berechnung der Daten basiert auf einem Event-gesteuerten System, das mit einer Business-Logik ausgeführt wird, die vom Client im VBS-Skript erstellt wurde. Berechnungswerte werden in globalen Variablen in der Business-Logik verwaltet; dabei handelt es sich um Aktualisierungen für jedes Event, das sich im System ereignet. Beispiele für solche Events sind Rohdateneinträge ebenso wie Anfang und Ende von Zeiträumen, Ressourcenstrukturänderungen und Anfang und Ende von Zeitfenstern. Das Ergebnis für die einzelnen berechneten Zeiträume wird in der speziellen Funktion "Ergebnis" definiert.
- (Optional) Das System berechnet Rohdaten und wandelt sie in Zwischendaten um, die in die Tabelle "T_INTERMEDIATE_DATA" eingetragen werden. Zwischendaten können für die Berechnung anderer Metriken verwendet werden. Auf diese Weise werden nur die Berechnungen ausgeführt. Alle anderen Metriken, die dieselben Daten benötigen, verwenden die Ergebnisse, anstatt überflüssige Berechnungen auszuführen.
Kontinuierliche Berechnung zwischen Vertragsversionen bedeutet, dass Daten, die von der Business-Logik zur Berechnung von Service Levels verwendet werden, automatisch für nachfolgende Vertragsversionen zugänglich sind. Diese Funktion ermöglicht es dem SLA-Manager, neue Vertragsversionen mit neuen Wirksamkeitsdaten zu erstellen. Diese Funktion aktiviert die Aufbewahrung der Inhalte von globalen Variablen. Diese Funktion ermöglicht, dass die Berechnung fortgesetzt wird, und macht frühere Werte von globalen Variablen für neue Vertragsversionen zugreifbar.
Die Engine verarbeitet Events in der Reihenfolge, in der sie ankommen. Die Engine kann die Verarbeitung von Events nicht rückgängig machen, um auf frühere Berechnungen zurückzugreifen. Die Engine übernimmt nur die Situation, wie sie jetzt ist, und verarbeitet neue Events, wenn sie ankommen. In Fällen, in denen eine Änderung an einem bereits berechneten Zeitstempel vorliegt, startet die Engine eine erneute Berechnung. Die Engine bewahrt Snapshots der Berechnungsstatus periodisch auf, wie in der Systemkonfiguration festgelegt. Diese Snapshots beseitigen die Notwendigkeit, vom Anfang der Vertragsversion an eine neue Berechnung vorzunehmen. Die Berechnung startet bei einem bekannten Berechnungszustand. Der einfachste Ausgangspunkt ist der Anfang. Diese Snapshots werden "Zustände" genannt. Muss die Engine eine erneute Berechnung vornehmen, so startet sie diese an dem Zeitpunkt eines Zustands, der möglichst nahe am Änderungszeitpunkt liegt.
Wenn eine Metrik neu berechnet werden muss, sucht die Engine nach dem letzten Status vor dem Änderungszeitpunkt und führt ab diesem Zustand eine vorwärtsgerichtete Berechnung durch. Zum Beispiel gibt es ein Szenario, in dem eine Änderung vor zwei Wochen stattgefunden hat, und der nächste Zustand davor drei Wochen zurückliegt. In diesem Fall berechnet die Engine ab dem Zustand von vor drei Wochen. Wenn kein solcher Zustand gefunden wird, startet die Engine die Neuberechnung am Beginn der Vertragsversion.