Die
Configuration Engine
ist eine Kernkomponente von Business Solutions wie sie z. B. zur Unterstützung von Verkaufsprozessen mit interaktiver Produktkonfiguration eingesetzt werden. Die Komponente eignet sich insbesondere für solche Anwendungen, deren Schwerpunkt auf der Interaktion im Konfigurationsprozess liegt.
Die
Configuration Engine
wird gelegentlich auch als
Internet Pricing and Configurator
(IPC) oder als
Sales Configuration Engine
(SCE) bezeichnet.
Die Anwendung muss Laufzeitversionen von Wissensbasisobjekten zur Verfügung zu stellen können.
Die
Configuration Engine
ist ein Teil der Anwendungsplattform, die auf NetWeaver aufsetzt.
Als Komponente von Lösungen wie
SAP Internet Sales
kann die
Configuration Engine
im Rahmen von allen Anwendungen genutzt werden, die über entsprechende Schnittstellen zu ihrem Betrieb verfügen.
Die nachfolgende Übersicht zeigt die
Configuration Engine
eingebettet zwischen Wissensbasis und Anwendung bzw. der Benutzungsoberfläche für die interaktive Konfiguration.
Wie andere Komponenten weist die
Configuration Engine
eine Reihe von Schnittstellen auf. Für ihre bestimmungsgemäße Funktion ist die Kenntnis und entsprechende Bedienung der folgenden Schnittstellen erforderlich:
Im Wesentlichen setzt die
Configuration Engine
auf Laufzeitversionen von Wissensbasisobjekten auf. Die Wissensbasis, gesammelt in Wissensbasisobjekten, resultiert aus Modellen, die zur Beschreibung von konfigurierbaren Objekten, ihren Eigenschaften und deren Abhängigkeiten untereinander angelegt werden. Anlage und Aktualisierung solcher Modelle sind Aufgaben der Stammdatenpflege.
Die Pflege der Stammdaten ist Teil der Anwendung, in der die
Configuration Engine
arbeitet.
Gestartet wird die
Configuration Engine
durch den Aufruf einer Anwendung.
Der Anwender möchte eine neue Konfiguration zu einem bestimmten Objekttyp anlegen – zum Beispiel einen Computer im Kundenauftrag konfigurieren. Die
Configuration Engine
erhält diese Anforderung unter Nennung des Objekttyps; sie durchsucht die Wissensbasis und stellt nach Maßgabe aller enthaltenen Informationen und Regeln eine so genannte
Aktive Konfiguration
zusammen.
Die Anwendung kann ein Abbild der Aktiven Konfiguration anfordern – gewöhnlich zum Schluss, wenn der Computer unseres Beispiels in allen Ausstattungsmerkmalen bestimmt ist. Diese Abbild,
Externe Konfiguration
genannt, kann seitens der Anwendung auch gespeichert werden. Im Gegensatz dazu ist die Aktive Konfiguration flüchtig; die
Configuration Engine
speichert keine Ergebnisse.
Den Startpunkt einer Konfiguration kann auch eine bereits vorliegende Externe Konfiguration bilden, wenn beispielsweise der Auftrag auf Kundenwunsch geändert werden soll.
Die Wissensbasis – Grundlage der Konfiguration – kann Schlüssel enthalten, die bezogen auf die Ausprägung eines Merkmals preisrelevante Informationen darstellen, so genannte Variantenkonditionsschlüssel.
Beispiel
Wenn bei der Wahl eines bestimmten Prozessors für den Computer ein Aufpreis anfällt, so kann die
Configuration Engine
hierfür bei der Pricing Engine die Preisermittlung anstoßen.
Produktvarianten, Variantenfunktionen und Kontext stellen weitere Schnittstellen dar, die beim Betrieb der
Configuration Engine
von Bedeutung sind. Während Produktvarianten allgemein als Teil der Stammdaten zu verstehen sind, beinhalten Variantenfunktionen und Kontext zusätzliche Einflussgrößen, die von der
Configuration Engine
zu berücksichtigen sind.
Die
Configuration Engine
verarbeitet Daten, die typischerweise zur Konfiguration von Produkten im Verkauf benötigt werden; sie unterstützt damit interaktive Konfigurationsprozesse und stellt der Anwendung, in deren Rahmen sie arbeitet, ein Abbild des Ergebnisses zur weiteren Verwendung bereit.
Die Aufgabe jeder Konfiguration besteht in der Ausgestaltung eines Objekts nach Maßgabe bestimmter Möglichkeiten. Welche Ausprägungen im Prozess der Konfiguration möglich sind, bestimmt ein Modell, das der Konfiguration zugrunde gelegt wird. In diesem Modell sind die möglichen Eigenschaften des Objekts mit ihren gegenseitigen Abhängigkeiten beschrieben.
Die Lösung einer Konfigurationsaufgabe setzt also die Kenntnis des Objekttyps mit seinen Merkmalen und das Wissen um die Beziehungen dieser Merkmale untereinander voraus – Informationen, die der
Configuration Engine
in Form von Laufzeitversionen von Wissensbasisobjekten zur Verfügung zu stellen sind.
Beispiel
Beim Verkauf eines Computers ist die Ausstattung des Geräts im Kundenauftrag zu spezifizieren. Anders ausgedrückt: Eine Reihe von Merkmalen des Objekttyps Computer – wie etwa Prozessor- und Hauptspeichertyp – sind zu bestimmen. Aufgabe der
Configuration Engine
ist es hier, die passenden Kombinationen von Prozessor- und Hauptspeichertypen aufzuzeigen – ausgehend von dem Modell des Computers, das exakt die möglichen Kombinationen beschreibt.
Gewöhnlich werden Konfigurationsaufgaben im Verlauf einer Reihe von aufeinander folgenden Schritten bearbeitet. Zunächst stehen alle Möglichkeiten offen.
Beispiel
Ein erster Schritt in unserem Beispiel könnte sein, einen bestimmten Prozessor für den Computer festzulegen
Allgemein ausgedrückt: Ein erstes Merkmal des Objekts wird ausgeprägt, auch Bewertung des Merkmals genannt. Für die
Configuration Engine
lautet die Aufgabe nun: Prüfe, ob und welche Auswirkungen dies auf andere Merkmale hat und lege die resultierenden Konfigurationsmöglichkeiten vor. Dieser Prozess hat die Form eines Frage-Antwort-Spiels zwischen der Anwendung und der
Configuration Engine
.
Im Konfigurationsprozess folgen Schritt für Schritt weitere Merkmalsbewertungen, die jeweils auf ihre Konsistenz überprüft werden, bis die
Configuration Engine
in einer letzten Prüfung die Konfiguration als vollständig ausweist.
Beispiel
Um mit unserem Beispiel zu sprechen: Die Ausstattung des Computers wird Schritt für Schritt festgelegt, bis er als funktionstüchtig gelten kann und dem Kundenwunsch entspricht.
In eine solche Prüfung können auch weitere Gesichtspunkte einfließen wie zum Beispiel die Abfrage, ob im Verkaufsprozess bestimmte andere Artikel vorgeschlagen wurden, die häufig zusammen mit dem Computer dieses Typs gekauft werden.
Treten bei der Produktkonfiguration Widersprüche auf, so weist die
Configuration Engine
dies als Konfigurationskonflikt aus. Dabei unterscheidet die
Configuration Engine
verschiedene Typen von Konflikten und ermöglicht es, vertiefende Erklärungen und Vorschläge zur Konfliktlösung anzuzeigen. Um diese Möglichkeiten zu nutzen, müssen Sie Konfigurationskonflikte bei der Modellierung entsprechend berücksichtigen.