business rule framework plus · 2011-02-23 · >business rules framework plus (brfplus) ist eine...
TRANSCRIPT
by CaRD / CaRD PLM 2010
Business Rule Framework plus
Eckhard Behr, Patrick Müller
> Business Rules Framework plus (BRFplus) ist eine Business Rule Engine, die in ABAP und für den Einsatz in ABAP entwickelt wurde.
> User Interface: WebDynpro
Business Rule Framework plus
1
Entscheidungs-tabellen
2
3
8
Entscheidungs-bäume
Transporte
BRFplus2Eckhard Behr, Patrick Müller
> User Interface: WebDynpro
> BRFplus wurde mit SAP EnhancementPackage 1 für SAP NetWeaver 7.0 ausgeliefert.
> Weiterentwicklungen erfolgten mit den Netweaver Enhancement Packages2 und 3
Traceund Simulation
5
3
4
6
7
If-then-Regeln
FormelnCode-
Generierung
XML Importund Export
BRFplus
> Reduzierung der Aufwände für Anpassungen der Software an neue Gegebenheiten
> Geplante Änderungen von Geschäftsregeln lassen sich tagesgenau scharf schalten
> Die Software-Lösung bleibt flexibel
> Regeln müssen zum Zeitpunkt der Software-Entwicklung noch nicht vollständig vorliegen
> Transparenz der Regeln statt Ablage der Regeln im Softwarecode
Motivation für Business Rules
BRFplus3Eckhard Behr, Patrick Müller
scharf schalten
> Deutliche Vereinfachung der Pflege der Regeln im Vergleich zum Codieren
> Simulationsmöglichkeiten vereinfachen Tests
der Regeln im Softwarecode
> Zentrale Verwaltung von Regeln
> Verlagerung der Modellierung der Geschäftsregeln vom Entwickler zum Geschäftsprozessadministrator
> Sehr schnelle Möglichkeit zur Anpassung der Regeln im Produktivbetrieb
> Einfacheres Auffinden von Regeln
> Auslösen von Business Workflows
> Entscheidungen von Workflows
> Ausnahmeregelungen in Workflows
> Rollenzuordnung in Workflows
> Auslösen von Benachrichtigungen
Anwendungsbeispiele: Prozesssteuerung
BRFplus4Eckhard Behr, Patrick Müller
> Auslösen von Benachrichtigungen
> Überprüfungen von Benutzereingaben mit Hilfe komplexere Checks
> Herleitungen von Werten mit Hilfe von Formeln
> Datumsberechnungen
> Ein- und Ausblenden von Merkmalen
> Musssteuerung von Attributen
> Merkmals-Werte lassen sich abhängig von anderen Merkmalswerten ein- bzw. ausblenden
Anwendungsbeispiele: Steuerung im Bereich Merkmalsbewertungenund Benutzereingaben
BRFplus5Eckhard Behr, Patrick Müller
> Herleitung von Merkmalswerten aus anderen Werten
> Automatisiertes Herleiten von Objektstatus
> Folge-Aktionen nach dem Setzen des Objektstatus
> Setzen von Objektstatus von verbundenen Objekten
Mögliche Anwendungsbeispiele im Bereich Statusmanagement
BRFplus6Eckhard Behr, Patrick Müller
verbundenen Objekten
> Berechnungen im Bereich Variantenkonfiguration (z.B. Reifen-, Federn- und Batterieberechnungen im Bereich Automotive)
> Online-Plausibilisierungen von Variantenkonfigurationsregelungen
Mögliche Anwendungsbeispiele im Bereich Variantenkonfiguration
BRFplus7Eckhard Behr, Patrick Müller
Variantenkonfigurationsregelungen
> Nachgelagerte Konsistenzprüfungen für Variantenkonfigurationsregeln
BRFplus Überblick
BRFplus
Decision Table
Amount Transaction CheckType
0$..100$ None
> 100$ Internal None
> 100$ External 4-Eye
Decision Tree Formula …
(Quantity * 1.19) + ServCharge
/
*
-
+
7 8 9
4 5 6
1 2 3
0 +/- ,
CustomerGroup
OpenItems OpenItems
A B,C
< 1000$ >= 1000$
BRFplus8Eckhard Behr, Patrick Müller
Customizing Tables
SystemTables
Rules Processor
Rules Repository
front-end
Back-end
Tools Services� Workbench
� Object Catalogs
� WebServiceGeneration
� XML Export/Import
� Query
� Trace and Simulation
� Transport
� Versioning and Historization
� Code Generation
� Extensibility
� DDIC Binding
� Unit/Currency conversion Master Data
Tables
Überblick
> Für Business Administratoren und IT-Experten
> Versions Kontrolle und Historie
> Code-Generierung, dadurch hohe Performance
> Simulationsmöglichkeiten
> Trace-Funktion (für gesetzliche Anforderungen und zur Erklärung von Ergebnissen)
> Transportwesen
BRFplus9Eckhard Behr, Patrick Müller
> Transportwesen
> XML Import & Export
> Einheiten und Wärungsumrechnungen
> Objektkatalog
> Volle Integration in den SAP Netweaver Application Server
Benutzeroberfläche
BRFplus10Eckhard Behr, Patrick Müller
Beispiele für die Art- und Weise, wie Regeln in BRFplus abgebildet werden können
BRFplus11Eckhard Behr, Patrick Müller
Funktionen
BRFplus12Eckhard Behr, Patrick Müller
> Die Funktion ist die Schnittstelle zwischen demCode der Anwendung und den Business Rules
> Die Anwendung muss sich nicht um dieBusiness Logik in den Regeln kümmern.
> Die Funktion nimmt die Daten gemäß derFunktionsdefinition entgegen und gibt dasErgebnis zurück.
> Vom Prinzip ist das ähnlich wie bei denFunktionen im Beziehungswissen
Ruleset: Zusammenfassung mehrerer Regeln
BRFplus13Eckhard Behr, Patrick Müller
Entscheidungstabelle
BRFplus14Eckhard Behr, Patrick Müller
> beliebige Anzahl an Bedingungen, Rückgabe des ersten oder aller Treffer
> Überprüfungen auf Lücken oder Übereinstimmungen
> Include/Exclude, Aufzählungen, viele Optionen (gleich, größer, kleiner, Muster, zwischen,…)
Entscheidungsbäume
BRFplus15Eckhard Behr, Patrick Müller
Formeln
BRFplus16Eckhard Behr, Patrick Müller
Action and Expression Types
Entscheidungs/Suchbaum
Analyse einer binären / nicht-binären Baums, bei dem Knoten die Bedingungen und die Enden die Ergebnisse sind
Entscheidungs-tabelle
Sequentialles Analysieren einer Tabelle mit Rückgabe des ersten Treffers/aller Treffer
Datenbank Zugriff
Datenbank-Zugriff um Werte für die weitere Auswertung zu ermitteln
Formel Definition komplexer Fomeln
Expression Types
� Expression Typesdefinieren eine in sich geschlossene Recheneinheit mit einer definierten Logik
� Ausdrücke verwenden Kontext -Daten oder
BRFplus23Eckhard Behr, Patrick Müller
Loop Führt Schleifenoperationen durch
Tabellen Operation
Tabellenoperationen um Aggregationen, Checks oder Zähloperationen durchzuführen
Funktions-aufruf
Aufruf einer ABAP Routine (Methode oder Funktionsbaustein)
Email Sendet eine Email
Message Log Schreibt Meldungen in den Message Log
Workflow Triggert den Business Workflow
Kontext -Daten oder beinhalten andere Ausdrücke, um das Ergebnis zu berechnen,
Action Types
� Anstatt einer Ergebnis zurückzugeben, lösen diese eine Aktion aus.
Simulation
BRFplus24Eckhard Behr, Patrick Müller
BRFplus (R)Evolution
� Architecture verification
� First customer and SAP pilots
� Web UI
� More customer and SAP usages
� Restricted release
� Applicable for simple use cases
BRFplus25Eckhard Behr, Patrick Müller
2006 2008 2010 2012
� Mass adoption
� Unrestricted release
� Applicable also for complex use cases
� Migration from various tools/engines to BRFplus
� Competitive differentiator
� Community with extensions and best practices
Quelle: SAP