Anforderungs-Management: Paketanforderung

Der Paketanforderungsprozess stellt einen Prozess bereit, mit dem Anforderungen von Paketen abgearbeitet werden können, d. h. Sammlungen von Services in einer einzelnen Anforderung. Der Prozess wickelt die Autorisierung des Pakets ab und erstellt dann automatisch eine untergeordnete Anforderung für jeden Service, der in dem Paket enthalten ist. Wenn alle untergeordneten Anforderungen abgeschlossenen sind, kann auch die Paketanforderung abgeschlossen werden.

Die Autorisierungssequenz zu Beginn dieses Prozesses entspricht derjenigen des Prozesses „Generische Serviceanforderung“, der unter Anforderungs-Management: Generische Serviceanforderung beschrieben wird.

Wenn die Autorisierungen abgeschlossen sind, wird der Ersteller darüber benachrichtigt, dass die Anforderung autorisiert wurde. Es gibt zwei automatische Aktionen, mit denen die untergeordneten Anforderungen für die Services erstellt werden, die im Paket enthalten sind:

  1. Die erste Aktion füllt das Paket auf der übergeordneten Anforderung mit den Daten des Pakets, das als Serviceelement auf der übergeordneten Anforderung ausgewählt ist. Das Feld „Paket“ wird nicht zum Anforderungsfenster hinzugefügt..
    Dabei wird die folgende Berechnung verwendet:

import System
static def GetAttributeValue(Request):

 Value = null
 if Request._ConfigItemRequested != null:
  if Request._ConfigItemRequested.Class.Name == "Bundle":
   Value = Request._ConfigItemRequested
return Value

Zeile 3 und 4 in dieser Berechnung sind um eine Stelle eingerückt; Zeile 5 ist um 2 Stellen eingerückt; Zeile 6 ist um drei Stellen eingerückt und die letzte Zeile ist nicht eingerückt.

Diese Berechnung setzt den Wert des Felds Paket (Bundle) auf den im Anforderungsfenster im Feld Serviceelement ausgewählten Wert, wenn es sich beim ausgewählten Serviceelement um ein Paket handelt.

Bei dieser Berechnung wird der Wert des Felds Paket auf Null (leer) gesetzt. Wenn dann der Wert des Felds ConfigItemRequested (Angefordertes CI) auf der Anforderung nicht Null ist, wird geprüft, ob der Klassenname (Class.Name) für das Feld ConfigItemRequested auf Bundle gesetzt ist. Ist dies der Fall, handelt es sich bei dem ConfigItemRequested (angeforderten CI) um ein Paket (das ConfigItemRequested wird im Feld Serviceelement im Anforderungsfenster gespeichert).
Wird bei der Berechnung festgestellt, dass es sich bei dem ausgewählten ConfigItemRequested in der Tat um ein Paket handelt, dann setzt die Berechnung den Wert des Felds Paket auf den Wert, der im Anforderungsfenster im Feld Serviceelement gewählt wurde.

  1. Mit der zweiten automatischen Aktion werden die Felder Serviceelement, Anforderungstyp und Prozess auf den untergeordneten Anforderungen mit erforderlichen Werten für jedes der im Paket enthaltenen CIs befüllt.

Dies geschieht unter Verwendung eines Werttyps, der sich auf das Paket bezieht, das Sie in der ersten automatischen Aktion kopiert haben.

Die CIs in einem Paket werden in einer Sammlung namens Katalogelemente gespeichert, die eine Beziehung zum Verknüpfungsobjekt mit dem Namen CI-Paket darstellt. Dies bedeutet, dass Sie die folgenden Werttypen auswählen müssen:

Serviceelement_Bundle/CatalogueItems*/ConfigItem.
Anforderungstyp{_Bundle/CatalogueItems*/ConfigItem/CatalogueHierarchy}
Prozess {_Bundle/CatalogueItems*/ConfigItem/Lifecycle}

Die zweite automatische Aktion setzt ferner das boolesche Attribut Ist übergeordnetes Element ein Paket? für die untergeordneten Anforderungen auf True (Wahr). Dieses Attribut wird dann in den untergeordneten Anforderungen zur Umgehung der Autorisierungsschritte in den untergeordneten Anforderungen verwendet.

Wenn ein Paket ein CI enthält, für das kein Lifecycle festgelegt ist, erhalten Sie eine Fehlermeldung, die in etwa wie folgt lautet „Der Objektverweis ist nicht auf eine Objektinstanz festgelegt“. Stellen Sie sicher, dass alle Services, die über den Servicekatalog zur Verfügung gestellt werden, mit einem Lifecycle verbunden sind.

Nachdem die untergeordneten Anforderungen erstellt wurden, ist die Paketanforderung abgeschlossen und es bleiben die untergeordneten Anforderungen, um das Serviceprovisioning abzuschließen.

Prozessdiagramm

Die optionalen Aktionen Notiz hinzufügen und Weiterleitung hinzufügen stehen für jeden Status vom Typ „Warten auf Autorisierung“ zur Verfügung.