Home ORDIX AG             Dienstleistung             Trainingsshop    Kunden / Referenzen Aktuelles    Kontakt
Home  Pfeil  ORDIX News  Pfeil  3/2003
suche: 

ORDIX News Archiv

Das IT-Magazin der ORDIX AG mit Fachbeiträgen zu Datenbanken, Unix und Java/XML.

Die eSelect Suite, Teil V:
“SCSI-Festplatte nur in Verbindung mit SCSI-Controller!“

Das Regelwerk der eSelect Suite

Mit der eSelect Suite können hochkomplexe Produkte und Prozesse abgebildet werden. Die Bearbeitung an der Benutzeroberfläche erfordert eine Menge an Regeln und Plausibilitäten. Im Hintergrund steuern und überwachen diese das Verhalten des Benutzers und lassen Fehlverhalten erst gar nicht zu.

Der fünfte Teil dieser Serie richtet seinen Blick auf das Regelwerk der eSelect Suite. Nach einem kurzen, theoretischen Überblick wird beispielhaft die benutzerfreundliche Regelerfassung mit dem eSelect Manager gezeigt.

Regelwerke gestatten nicht nur die Festlegung von Plausibilitätsbedingungen, sondern sie sind auch Grundlage dafür, dass die Verarbeitung von Komplexität nicht zwangsläufig zu komplizierten Datenbankstrukturen führen muss. Mögliche Endprodukte liegen nicht explizit in der Datenbank vor, sondern können regelbasiert vom Benutzer konfiguriert werden. Das interne Produktmodell bleibt dabei überschaubar und gut wartbar.

Regelwerke besitzen eine Theorie

Komplexitätsbewältigung

Stellen wir uns ein eCommerce-System zur Verwaltung komplexer, variantenreicher Angebotsprodukte vor, das keine Möglichkeiten zur Regelverarbeitung bietet. Alle konfigurierbaren Varianten eines Produkts müssen beim Erstellen des Produktkatalogs explizit erfasst und abgespeichert werden. Das Beispiel der Abb. 1 zeigt ein Produkt mit fünf verschiedenen Komponenten (Attributen) A bis E, die jeweils zwischen drei und fünf Varianten besitzen. Bei uneingeschränkter Kombinationsmöglichkeit ergibt dies beispielsweise 720 Datensätze zur Darstellung aller Endprodukte.

Die regelbasierte Lösung hingegen kommt mit einem Produkt und 19 Optionen aus. Alle weiteren Einschränkungen werden regelbasiert festgelegt.

Bei einem Produkt mit 20 Komponenten mit jeweils vier Ausprägungen müssten in der Datenbank 1.099.511.627.776 Endprodukte gespeichert werden. Das regelbasierte System kommt hingegen mit einem Produkt und 80 Optionen aus. Diese Berechnungen sind keine theoretischen Modelle. Sie wurden in der Praxis in Zusammenarbeit mit namhaften Anbietern von eCommerce-Systemen angewendet und führten zur Integration des nachfolgenden Regelwerkes in die eSelect Suite.

Konfigurationsregeln dienen der Einschränkung theoretisch wählbarer Kombinationen auf die tatsächlich möglichen, so dass der Benutzer kein Endprodukt außerhalb eines gültigen Angebots konfigurieren kann. Dabei unterscheiden wir in eSelect zwischen zwei Regeltypen, die bei Produkten, Attributen oder Attributwerten hinterlegt werden können:

Kombinationsregeln
z. B. “A nicht in Verbindung mit B”, “A nur in Verbindung mit B”, “A beinhaltet B”.

Freie Regeln
z. B. “A + B größer als 500”, “(A * B < 1000 and (C = D))“

Regelgestützte Kombination
Abb. 1: Regelgestützte Kombination.

Kombinationsregeln

Eine Regel besteht aus Funktionen und Operanden. Operanden können mit AND, OR und NOT verknüpft werden. Mögliche Funktionen sind:

Für die Definition der Bedingungen bei IF und REQUIRES sind folgende Ausdrücke definiert:

1.S(x) ist genau dann erfüllt, wenn die Option x gewählt wurde.

Sind e_1 bis e_n beliebige Ausdrücke, so sind die folgenden Ausdrücke genau dann erfüllt, wenn:

2. NOT (e_1) e_1 nicht erfüllt ist.
3. AND (e_1,...,e_n) alle Ausdrücke e_1 bis e_n erfüllt sind.
4. OR (e_1,...,e_n) mindestens ein Ausdruck von e_1 bis e_n erfüllt ist.
5. XOR (e_1,...,e_n) genau ein Ausdruck von e_1 bis e_n erfüllt ist.
6. (e_1) wenn e_1 erfüllt ist.

Anhand dieser Regeln überprüft der eSelect Compositor die Gültigkeit einer vom Anwender erstellten Konfiguration. Bei einer ungültigen Zusammenstellung können Alternativen berechnet werden, die möglichst “nahe“ an der gewählten Konfiguration liegen.

Freie Regeln

Regeln, die sich auf Attributwerte beziehen und bei der Konfiguration vom Benutzer frei eingegeben werden können (z. B. Maße, Länge, Farbwerte, etc.), werden als freie Regeln bezeichnet. Es können beliebige mathematische Funktionen verwendet werden, deren Ergebnis ein Wahrheitswert ist. Eine Formel besteht aus Funktionen (Summe, Subtraktion, Multiplikation, Division u. a.) und Operanden, wobei letztere entweder ein Festwert, der Wert eines anderen Attributs oder eine andere Funktion sein können.

Bei der Verletzung von freien Regeln werden keine Alternativen berechnet, sondern eine Fehlermeldung erzeugt, die die Regelverletzung in Textform erläutert.

Die praktische Anwendung ist einfach

Beispielanwendung

Als Beispiel wählen wir eine Konfigurationslösung für Personalcomputer. Prozessoren, Grafikkarten und Festplatten in den unterschiedlichsten Ausprägungen sind Komponenten von Personalcomputer. Voraussetzung für die Implementierung eines P roduktkonfigurators ist ein geeignetes Datenmodell für die Wissensbasis. Dieses enthält Produkte, Komponenten eines Produktes, konfigurierbare Attribute und Konfigurations- und Preisfindungsregeln.

Die Regelerfassung

Die Erfassung von Kombinationsregeln erfolgt über einen dialoggesteuerten Regeleditor des eSelect Managers. Mögliche Regeln für Personalcomputer sind:

Für unser Beispiel wird für die Konfiguration eines Individual-PC eine neue Regel erfasst: Die Festplattenvariante “IBM SCSI 30 GB“ soll nur in Verbindung mit einem ausgewählten SCSI-Controller gültig sein. In den Abbildungen 2-4 wird die Erfassung dieser Regel demonstriert.

Schritt 1: Auswahl einer Regelschablone

Nach Klick auf den Button öffnet sich der Regeleditor. Dieser bietet zunächst verschiedene Regelschablonen an. Für die Regel “IBM SCSI 30-GB“-Festplatte nur in Verbindung mit SCSI-Controller ist die Schablone “benötigt 1 aus n Objekten“ geeignet.

Abb. 2: Erster Schritt mit dem Regeleditor.

Schritt 2: Ersetzen des Platzhalters durch die gewünschte Option

Nach Klick auf “Weiter>“ erhält man die Auswahl aller für das Produkt Individual-PC verfügbaren Komponenten und deren Varianten. Der Benutzer wählt die Komponente, die den Platzhalter der Regelschablone ersetzen soll. In unserem Beispiel ist dies der verfügbare SCSI-Controller “Tekram DC 395U“. Bei Regelschablonen mit mehreren Platzhaltern werden diese in gleicher Weise Schritt für Schritt ersetzt.

Abb. 3: Zweiter Schritt mit dem Regeleditor.

Schritt 3: Ändern des Regeltextes und Zuweisung der Regel

Nach Ersetzen des Platzhalters durch den “SCSI-Controller” und Klick auf “Weiter>” gelangt man auf die letzte Seite des Regeleditors. Hier wird die erstellte Regel in Baumform und als Klartext angezeigt. Der Klartext der Regel kann vom Benutzer beliebig geändert werden.

Nach Klick auf “OK” wird die neue Regel für die SCSI-Festplatte übernommen und der Klartext der Regel erscheint im Regelfenster. Hier kann eine bestehende Regel zur Editierung geöffnet (Button ) aber auch gelöscht (Button ) werden.

Abb. 4: Dritter Schritt mit dem Regeleditor.

Die Bedingungen und Funktionen der freien Regeln werden im eSelect Manager mit Hilfe eines Formeleditors in einem Format formuliert, das der Excel-Formeleingabe ähnelt. Der Formeleditor dient in eSelect zur Erfassung und Editierung von Berechnungsformeln, die beliebig komplex sein können.

In der nächsten Ausgabe der ORDIX News werden wir uns weitere Anwendungen ansehen, die auf Basis der eSelect Suite realisiert sind.

Manfred Lingk, Object Systems GmbH (eselect@ordix.de).