Java Rules Engine Drools & ilog



Similar documents
A methodology for graphical modeling of business rules

Rule based programming with Drools

JRules 6.0. from ILOG

WHITE PAPER. Enabling predictive analysis in service oriented BPM solutions.

IBM Operational Decision Manager Version 8 Release 5. Getting Started with Business Rules

Analysis of the Specifics for a Business Rules Engine Based Projects

JBOSS ENTERPRISE SOA PLATFORM AND JBOSS ENTERPRISE DATA SERVICES PLATFORM VALUE PROPOSITION AND DIFFERENTIATION

SCA-based Enterprise Service Bus WebSphere ESB

BPEL + Business Rules

BUSINESS RULES MANAGEMENT AND BPM

The Challenges in Real Life ESB Deployments

How to make a good Software Requirement Specification(SRS)

Rules and Business Rules

Ce document a été téléchargé depuis le site de Precilog. - Services de test SOA, - Intégration de solutions de test.

JBOSS ENTERPRISE APPLICATION PLATFORM MIGRATION GUIDELINES

IBM WebSphere ILOG Rules for.net

MANDARAX + ORYX An Open-Source Rule Platform

JBoss EntErprisE ApplicAtion platform migration guidelines

A standards-based approach to application integration

Oracle WebLogic Foundation of Oracle Fusion Middleware. Lawrence Manickam Toyork Systems Inc

IBM Operational Decision Management v8

The Enterprise Service Bus

Business Rules make Business more flexible

TECH CHOICES. January 4, 2006 The Forrester Wave : Business Rules Platforms, Q by John R. Rymer. Helping Business Thrive On Technology Change

by John R. Rymer and Mike Gualtieri for Application Development & Program Management Professionals

IBM WebSphere ESB V6.0.1 Technical Product Overview

BUSINESS RULES CONCEPTS... 2 BUSINESS RULE ENGINE ARCHITECTURE By using the RETE Algorithm Benefits of RETE Algorithm...

Introduction to WebSphere Process Server and WebSphere Enterprise Service Bus

Enterprise Manager 12c for Middleware

Tomáš Müller IT Architekt 21/04/2010 ČVUT FEL: SOA & Enterprise Service Bus IBM Corporation

1 What Are Web Services?

Answers to Top BRMS Questions

Oracle Business Activity Monitoring 11g New Features

i-pro M anagem ent Software ASC970 system Explanation of new functions for Ver. 8.0

IBM WebSphere Operational Decision Management Improve business outcomes with real-time, intelligent decision automation

Part One Business Modeling Business Process Model

The Synergy of SOA, Event-Driven Architecture (EDA), and Complex Event Processing (CEP)

Enterprise Integration Architectures for the Financial Services and Insurance Industries

Achieve greater efficiency in asset management by managing all your asset types on a single platform.

Open Source Business Rules Management System Enables Active Decisions

Oracle SOA Suite Then and Now:

Business Process Execution Language for Web Services

1 What Are Web Services?

BONITA, The Open Source BPM Solution

The webmethods ESB. The Foundation of your SOA. Jean-Michel Ghyoot, Principal Solution Architect, March 28, 2013

Oracle Policy Automation (OPA) Making Policies Work For You..

Combine the advantages of up-to-date and in-depth knowledge with the convenience

Oracle SOA Suite: The Evaluation from 10g to 11g

Novell Access Manager

BUILDING FLEXIBLE ENTERPRISE PROCESSES USING ORACLE BUSINESS RULES AND BPEL PROCESS MANAGER. An Oracle White Paper Jan 2005

Blu Age Overview. It is not about changing the platform it is about business agility! HP Non Stop. Modernization Evolution Automation

What is a business rule?

2012 LABVANTAGE Solutions, Inc. All Rights Reserved.

Methods and tools for data and software integration Enterprise Service Bus

Workshop for WebLogic introduces new tools in support of Java EE 5.0 standards. The support for Java EE5 includes the following technologies:

Open source business rules management system

Flexible Decision Automation for Your zenterprise with Business Rules and Events

Guide to Intel Rapid Storage

Next-Generation ESB. Kevin Conner SOA Platform Architect, Red Hat Keith Babo JBoss ESB Project Lead, Red Hat. June 23rd, 2010

Securely Managing and Exposing Web Services & Applications

Oracle Service Bus Examples and Tutorials

Worldwide Business Rules Management Systems 2011 Vendor Shares

ActiveMatrix Extending Virtualization benefits over Your Service Architecture. Joaquim F. Carvalho Senior Solution Consultant TIBCO Software Inc.

Part 3 - Performance: How to Fine-tune Your ODM Solution. An InformationWeek Webcast Sponsored by

Oracle Service Bus. Situation. Oracle Service Bus Primer. Product History and Evolution. Positioning. Usage Scenario

Enterprise Federation through Web Services based Contracts Architecture

Operational Decision Manager Worklight Integration

Request for Information (RFI) For providing An Information Technology Services Management Solution. RFI No. R25CD14213

Consuming and Producing Web Services with WST and JST. Christopher M. Judd. President/Consultant Judd Solutions, LLC

Patent Public Advisory Committee Meeting PE2E Status. David Landrith Patents Portfolio Manager July 14, 2011

ActiveVOS Server Architecture. March 2009

BRMS Integrated with ACCESS Florida Conceptual Illustration. Page 2 of 8

Beyond the SOA/BPM frontiers Towards a complete open cooperative environment

Deep TIBCO Monitoring: Broad Application Visibility. SL Corporation Corte Madera, CA October, 2012

Integration eines SOA Repositories mit Subversion zur Anbindung an den ESB

OpenSSO: Simplify Your Single-Sign-On Needs. Sang Shin Java Technology Architect Sun Microsystems, inc. javapassion.com

Business Activity Monitoring

ILOG JRules Performance Analysis and Capacity Planning

IBM Rational Rapid Developer Components & Web Services

Service Oriented Architecture

EVALUATION. WA1844 WebSphere Process Server 7.0 Programming Using WebSphere Integration COPY. Developer

Decisions in IBM Websphere ILOG BRMS

The Next Wave in BPM from Red Hat

Portals, Portlets & Liferay Platform

SAP NetWeaver BRM 7.3

How To Write A Rulebook In Anib Websphere Jrules

Transcription:

Java Rules Engine Drools & ilog Raed Haltam Architect wega Informatik 7340

AGENDA 2 > Mot ivat ion > What is Rules Engine and BRMS? (Business Rules Managem ent Syst ems) > Market place (Rules Engine Providers) > JBoss Drools and ilog Side- by- Side > Rules Engine and SOA > Rules Engine and CEP (Complex Event Processing) > Two Project s I implemented using Rules Engine Car Leasing Loan Origination at JPMorgan Chase (Using ilog) Shipment Routing at Union Pacific Railroad (CLIPS)

Techi Speak Technical Context 3 Business Rules Engine (BRE) Inference Engine (IE) Reasoning Engines (RE) Ex pert Systems (ES) Artificial Intelligence (AI) headache producing engine (HPE)

What I Want To Do is: Sella rentalupgrade w ith a ticket to Sales blue Cam m an paign (because I just got them at a very discounted price) Forw ard Joe s w orkflow item s to a review W orkflow er team. (Joe m isunderstood the guidelines) O iltanker accident in Alaska > sellstocks of Stock O ilcom panies based in Trading Alaska Reroute alltom atoes shipm ents to N ew O rleans Supply Chain (They are partying there with tom atoes throwing contest) Iw ant these changes online tom orrow m orning. Not again all these people, developers, QA, PM, deployment, administrators.. and.. and Please

Solution S.V.P Rules Engine For Exam p le

Many More Rule Engines s of im plem entations:vendors,o pen Source,Research,Java,etc. ILOG http:/ / www.ilog.com/ Haley Systems http:/ / haley.com/ Blaze Advisor http:/ / www.fairisaac.com/ ficx/ Jess http:/ / www.jessrules.com/ jess PegaRules http:/ / www.pega.com/ Versata http:/ / www.versata.com/ InRule Technology http:/ / www.inrule.com/ BizTalk (Microsoft) http:/ / www.microsoft.com/ biztalk Gensym Corporation http:/ / www.gensym.com/ Artemis Alliance Inc. http:/ / www.artemisalliance.com/ NxBRE http:/ / nxbre.org/ Drools JBoss http:/ / www.jboss.org/ drools Witmate http:/ / witmate.com Simple Rule Engine http:/ / sourceforge.net/ projects/ sdsre/ Idiom : Business rules engine http:/ / www.idiomsoftware.com Jaxlab Rules Engine http:/ / www.jaxlab.com/ rulesengine QuickRules BRMS http:/ / www.yasutech.com/ RuleBurst http:/ / www.ruleburst.com/ JLisa A Rule Engine for Java http:/ / jlisa.sourceforge.net/ The Java Business Rules Community http:/ / javarules.org/ OpenRules http:/ / openrules.com/ Visual Rules http:/ / www.visual- rules.de/ OFBiz Rule Engine Mandarax Algernon TyRuBa JTP Java Theorem Prover. JEOPS InfoSapient RDFExpert Jena 2 Euler Pellet OWL Reasoner. Prova SweetRules JShop2 OpenLexicon Hammurapi Rules MINS Reasoner Zilonis JCHR Esper mprolog OpenL Tablets Jamoch Termware Take

Definition: Rules Engine siness rules engine is a softw are system that helps m anage business ru re Idea:Treat business logic as business data. The business rules m ay com e from : legalregulation ("An em ployee can be fired for any reason or no reason but not for an illegalreason ) com pany policy ("Allcustom ers that buy m ore than $100 at one tim e w illreceive a 10% discount") or other sources.

Rules Engine Explained Rule Engine provides more than an Engine to execute rules it stores, versions, secures, etc therefore it is a Business Rules Management System (BRMS) Business Object Model (BOM) Execution Object Model (XOM) Trigger (W eb A pplication, Tibco M sg, JM S, ESB ) B usiness M anager D evelo per B usiness M anager R ules D eveloper Rules Team Server Rules Scenario Manager W eb S ervice Java A PI Policy Server Collaborative W eb based W Environm ent eclipse Testing Environm ent Rules Engine Rules Editor Scenario Manager W eblogic, JB O SS, etc Rules Repository Contains R ules Text O racle, SQ L Server etc.

BOM vs. XOM 9 BOM = Business Object Model Account, customer, shipment, order, lineitem etc XOM = Execution Object Model It is the Runtime representation of BOM. Java Value Object, EJB, XML Document Account, customer, shipment, order, lineitem etc

Overview Diagram: ilog From Vendor

Side- by- Side: JBoss Drools & IBM ilog Core Capabilities ilog Drools Algorithm RETE RETE Java Yes Yes Eclipse Plug- In Yes Yes BRMS Yes Yes Web Editor Team Server Guvnor Test Server Scenario Manager Guvnor Rule Templates Yes Yes Java XOM (Execution Object Model) Yes Yes Custom/ Business Language Rule Verbalization Pluggeable Dialects

Business Rules Format 12 when then < conditions> < actions> Most Business Rule Engines (BRE) are based on Charles Forgy's Rete algorithm Examples: when then when then an honest Politician exists logically assert Hope Hope exists print "Hurrah!!! Democracy Lives" when then account.balance higher withdraw amount dispense cash Execution Object Model (XOM) when then Hope does not exist print "Democracy is Doomed"

Web- based BRMS (Drools) 13

Web- based BRMS - ilog Editor

Rule set, Package, BOM and Rule Flow Rule set 1 Rule set 2 Rule set 3 Rule Package 1 Rule Package 2 Rule set 4 Rule set 5 Sam ple R ule Flow Rule Flow Custome r BOM Package 1 Order Custome r EJB XOM Package 1 Order XML- Doc

Advanced Features - 1 Custom, Higher Level or Business Language > The ability to define higher level (business- specific) language JPMorganChase verbiage The positive portfolio value under runs asset provision request Citibank verbiage Balance request offsets secured value What is meant Loan request > account balance

Advanced Features - 2 Rule Security > Rule editing can be secured on statement level Branch Manager Can add a new branch Car Loans Program Manager Can add/ remove condition Customer Account Manager Can only modify ratio value

How to Invoke ilog from Java // (1) prepare the connection to the Rules Engine String sessiontype = IlrRuleSessionProviderFactory.SIMPLE_RULESESSION_PROVIDER; IlrRuleSessionProvider provider = new IlrRuleSessionProviderFactory.Builder(sessionType).build(); IlrStatelessRuleSession session = provider.createstatelessrulesession(); // (2) prepare a new request String rulesetpath = "/miniloanruleapp/miniloanrules"; IlrSessionRequest request = new IlrSessionRequest(rulesetPath); request.getsessiondescriptor().enabletrace(); // (3) set the ruleset parameters in the request HashMap map = new HashMap(); map.put("loan", loan); map.put("borrower", borrower); request.getexecutionsettings().setparameters(map); // (4) execute the rulesession and get the response for this request IlrSessionResponse response = session.executerules(request); // (5) transfer the information from the response back to the JSF Bean retrieve output parameter state loan = (Loan) response.getexecutionresult().getoutputparameters().getobjectvalue("loan");

Rules Engine and SOA 19 > Monitoring of SLAs (Service Level Agreements). Compliance and Non- compliance > Enforcement of contract terms by denying business or reward compliance by increasing work order to specific provider > Business Process Routing. Decision steps can invoke a web service and let Rules Engine make the decision. More capable than attribute- based routing.

Rules Engine and CEP 20 > CEP = Complex Event Processing > Almost all vendors, I know, have a CEP Engine (IBM, TIBCO, BEA/ Oracle, Jboss, Webmet hods, etc. > CEP detects the occurrence of events based on a defined event patterns by correlating events by time, existence and/ or attributes > JBoss utilizes its Drools Rules Engine to define patterns and detect them at runtime > I know TIBCO uses a Rules Engine in CEP Engine > One can assume/ deduct that Oracle/ Weblogic, IBM, etc use Rule Engine in their CEP Platforms.

Projects I implemented using Rules Engine 21 > Autoleasing Loan Origination at JPMorganChase Using ilog > Shipment routing Union Pacific Railroad Using (CLIPS)

Car Leasing Loan Origination at JPMorgan Chase > Business Case Banks don t quote or approve loans on Saturdays. 60% of cars in US are sold on Saturdays. Car dealerships have their own programs. Solution is be used by 200 Banks and over 12000 car dealerships. Need a quote engine to quote on behalf of banks 22 > Solution ilog Rules Engine. 12 Rules Templates, 200 Rules Sets, EJB, Value Object New Rules are entered on 8PM, deployed midnight, ready for business 8AM Wrong quotes JPMorgan Chase will pay difference. Penalty for wrong quotes Car Buyers are guarantied minimum 10 financing options to choose from.

Shipment Routing at Union Pacific Railroad 23 > Business Case ConAgra Foods wants to reduce loss perishable food (fruits, fresh dairy etc) wants to better supply goods to stores based on demand (Nebraska is running low on Watermelons. There lots of melons going to California) > Solution Union Pacific wants to increase their profit and increase use of intermodal (Rail and Truck). Union Pacific wants to respond better to flash floods in Arizona. CLIPS Rules Engine. 8 Rules Templates, 80+ Rules Sets, Value Object, XML- Castor Web Frontend provided to ConAgra. Rules dialect to provide business language.

Want to Hear More about Rule Engines 24 > Google for ilog or JBoss Drools > Download ilog and do the Quick Start thingy. > Talk to me (Raed Haltam) raed.haltam@wega- informatik.ch

Mini Loan App ilog get started

Raed Haltam raed.haltam@wega- wega Informatik AG informatik.ch www.wega- informatik.ch