SlideShare a Scribd company logo
 
                               
Drools5 Community Training
      Sponsored by Plugtree
Module 1: Drools BLiP
Theoretical Introduction
   Drools5 Community Training
      version: 1.0-SNAPSHOT
     Release Date: 03/16/2011
Under The Creative Common License
Module 1: Drools BLiP
Theoretical Introduction
 Drools5 Community Training Course
  by Mauricio "Salaboy" Salatino and
  Esteban Aliverti is licensed under a
  Creative Commons Attribution 3.0
            Unported License.
Based on a work at salaboy.wordpress.
                  com.
 Permissions beyond the scope of this
   license may be available at http:
       //salaboy.wordpress.com/.
Overview

Theoretical Background
Drools Business Logic Integration Platform Introduction
   Drools Expert
   jBPM5 / Drools Flow
   Drools Fusion
   Drools Guvnor
Theoretical Background

Artificial Intelligence
   Expert Systems
   Knowledge Engineering
   Inference Engines
   Rules Based Production Systems
Drools History
Artificial Intelligence (AI)

      "The study and design of intelligent agents."

An intelligent agent is a system that perceives its environment
and takes actions which maximize its chances of success.

The ability of a machine to perform tasks that require human
intelligence.
Expert Systems

"An expert system is software that attempts to provide an
answer to a problem where normally one or more human
experts would be consulted."

   In the begining was replace and now it's assist
   Software that knows about a specific domain
   It can solve/answer specific questions
Expert Systems

Common Uses of Expert Systems
+ Medicine
  -> Diagnosis based on patient symptoms
+ Field Analysis
  -> Evaluation of geographical regions (Petrol Prospecting)
+ Mortgages and Loans
  -> Used for risk evaluation (scoring)
Knowledge Engineering

"Knowledge engineering" is the art and science of
observing human experts to build models of their expertise that
they can validate.
Inference Engines
"An inference engine is a computer program that tries to
derive answers from a knowledge base. It is the "brain" that
expert systems use to reason to formulate new conclusions for a
certain situation."
Inference Engines
An inference engine will be in charge of using the formalized
knowledge from our expert to answer questions for a specific
situation.
Production Systems
A production system (or production rule system) are
software that are composed of a set of rules about behavior.

These rules are a simple and basic representation of
knowledge.

A production system provides the mechanism to execute
actions (behavior) in order to achieve some goal for the system.
Rule

If / When / Where / On
 Conditions

Then / Do
 Actions
Chaining Strategies

Methods of Reasoning in Inference Engines

  Backward Chaining:
     goal-driven -> Prolog
  Forward Chaining:
     data-driven -> Drools
Chaining Strategies Example

Scenario:
Pet (name == "Fritz", behavior =="croaks")
Question: What is the color of my Pet?

Rules / Knowledge:
1) When   Pet(behavior == "croaks") Then Pet.type = "Frog"
2) When   Pet(behavior == "sings") Then Pet.type = "Canary"
3) When   Pet(type == "Frog") Then Pet.color = "green"
4) When   Pet(type == "Canary") Then Pet.color = "yellow"
Backward Chaining
Forward Chaining
Full Picture
Some characteristics

Output answers will contain the justification
These kinds of systems are created to support large amounts
of knowledge to solve complex situations
The knowledge can be:
    Expressed by Domain Specific users
    Reused
    Iteratively improved
    Maintained decoupled from your application code
Drools History

The project was born in '03
Mark Proctor in the project leader
Born as an Inference Engine
It started using the LEAPS algorithm for pattern matching
In Drools 3.x they implemented RETE algorithm
In Drools 4.x the RETE algorithm was tuned for high
performance
Drools 5 BLiP

Named as Business Logic integration Platform (BLiP)
Modules:
    Drools Expert (leader Mark Proctor)
    jBPM5 / Drools Flow (leader Kris Verlaenen)
    Drools Fusion (leader Edson Tirelli)
    Drools Guvnor (leader Toni Rikkola)
* There are other experimental modules (Planner, Chance, Grid
etc.) that will be not covered here.
Drools Expert

The core of Drools
Contains the inference engine
Uses the RETE algorithm for pattern matching
Provides us with a way to create a knowledge base
Provides us with a simple API to interact with the inference
engine
Business Rule Structure

rule "My Rule"
    <attributes>
    when <LHS>
      Person(name == "John") <CEs>
    then <RHS>
      System.out.println("Hi John!");
      <Actions>
end
Drools Expert

Common use cases:
+ Validations
+ Decision Making
+ Scoring
+ Games
jBPM5

Focused on BPM
Implements the main stages of the discipline:
   Model/Design
   Execute
   Monitor
Pretty close to finish BPMN2 implementation
Uses the same APIs that we use in Drools Expert
Fully integrated with the inference engine
Business Process

Definition:

"A sequence of activities, performed by humans or systems to
                 complete a business goal."
Business Process Example
New Bank Account process:
Business Process Management

Iterative/continuous Discipline
Four main stages:
    Discover
    Design / Model
    Execution
    Monitoring / Improvements / Optimizations
jBPM5

Common use cases
  In every company Business Processes are used implicitly or
  explicitly
  In every business activity
  In every non-business situation that defines a logical set of
  activities that needs to be executed/performed
Drools Fusion

Focused in Complex Event Processing
Temporal reasoning
13 temporal operators (before, after, during, and so on)
Enables us to detect complex events (event correlation
patterns)
Drools Fusion

Big Picture
Drools Fusion

Temporal Operators Table
Drools Fusion

Common use cases:
  Fraud Detection
  Stock Trading
  Hardware monitoring
  Transport and Logistics
  Everywhere we need to correlate or aggregate events
Drools Guvnor

Commonly tagged as a BRMS
Centralized Knowledge Repository (JCR)
Handles the Knowledge versioning and categorization
Now it includes more User Friendly features like:
   Guided Rules Authoring
   Test Cases Creation
   Rule Constraints Meta-Model
   Rule Validation and Verification
   Business Process Modeling
Drools Guvnor

Guided Editor:
Briefing Up

Covered Topics:
   Conceptual background of Drools Project
   Drools Main Modules Introduction
 
              
Questions?
Enjoy! Questions and Feedback are
always appreciated!
Stay Tuned!
 
                     
    Contact us at
www.plugtree.com

More Related Content

What's hot

Expert system
Expert systemExpert system
Expert system
Sayeed Far Ooqui
 
1010 chapter11
1010 chapter111010 chapter11
1010 chapter11
Kamisettykishorekumar
 
Expert system
Expert systemExpert system
Expert system
Tilakpoudel2
 
Expert system 21 sldes
Expert system 21 sldesExpert system 21 sldes
Expert system 21 sldes
Yasir Khan
 
Expert Systems
Expert SystemsExpert Systems
Expert Systems
Asli Yazagan
 
KBS Lecture Notes
KBS Lecture NotesKBS Lecture Notes
KBS Lecture Notes
butest
 
Expert System Seminar
Expert System SeminarExpert System Seminar
Expert System Seminar
Prof. Erwin Globio
 
Expert System
Expert SystemExpert System
Expert System
Saba Siddique
 
Expert System
Expert SystemExpert System
Expert System Full Details
Expert System Full DetailsExpert System Full Details
Expert System Full Details
ssbd6985
 
AI with expert system
AI with expert system AI with expert system
AI with expert system
peshawaqadr
 
Introduction to Expert Systems {Artificial Intelligence}
Introduction to Expert Systems {Artificial Intelligence}Introduction to Expert Systems {Artificial Intelligence}
Introduction to Expert Systems {Artificial Intelligence}
FellowBuddy.com
 
Expert System in Artificial Intelligence
Expert System in Artificial IntelligenceExpert System in Artificial Intelligence
Expert System in Artificial Intelligence
Chaudhry Abdullah
 
Ron's muri presentation
Ron's muri presentationRon's muri presentation
Ron's muri presentation
gowinraj
 
Lec 4 expert systems
Lec 4  expert systemsLec 4  expert systems
Lec 4 expert systems
Eyob Sisay
 
Unit 4(nlp _neural_network)
Unit 4(nlp _neural_network)Unit 4(nlp _neural_network)
Unit 4(nlp _neural_network)
Tribhuvan University
 
5 ai lecture-05 expert system
5  ai lecture-05 expert system5  ai lecture-05 expert system
5 ai lecture-05 expert system
Ahmad sohail Kakar
 
AI and Expert Systems
AI and Expert SystemsAI and Expert Systems
AI and Expert Systems
Akhil Kaushik
 
Expert system (unit 1 &amp; 2)
Expert system (unit 1 &amp; 2)Expert system (unit 1 &amp; 2)
Expert system (unit 1 &amp; 2)
Lakshya Gupta
 
Expert system
Expert systemExpert system
Expert system
deepak kumar
 

What's hot (20)

Expert system
Expert systemExpert system
Expert system
 
1010 chapter11
1010 chapter111010 chapter11
1010 chapter11
 
Expert system
Expert systemExpert system
Expert system
 
Expert system 21 sldes
Expert system 21 sldesExpert system 21 sldes
Expert system 21 sldes
 
Expert Systems
Expert SystemsExpert Systems
Expert Systems
 
KBS Lecture Notes
KBS Lecture NotesKBS Lecture Notes
KBS Lecture Notes
 
Expert System Seminar
Expert System SeminarExpert System Seminar
Expert System Seminar
 
Expert System
Expert SystemExpert System
Expert System
 
Expert System
Expert SystemExpert System
Expert System
 
Expert System Full Details
Expert System Full DetailsExpert System Full Details
Expert System Full Details
 
AI with expert system
AI with expert system AI with expert system
AI with expert system
 
Introduction to Expert Systems {Artificial Intelligence}
Introduction to Expert Systems {Artificial Intelligence}Introduction to Expert Systems {Artificial Intelligence}
Introduction to Expert Systems {Artificial Intelligence}
 
Expert System in Artificial Intelligence
Expert System in Artificial IntelligenceExpert System in Artificial Intelligence
Expert System in Artificial Intelligence
 
Ron's muri presentation
Ron's muri presentationRon's muri presentation
Ron's muri presentation
 
Lec 4 expert systems
Lec 4  expert systemsLec 4  expert systems
Lec 4 expert systems
 
Unit 4(nlp _neural_network)
Unit 4(nlp _neural_network)Unit 4(nlp _neural_network)
Unit 4(nlp _neural_network)
 
5 ai lecture-05 expert system
5  ai lecture-05 expert system5  ai lecture-05 expert system
5 ai lecture-05 expert system
 
AI and Expert Systems
AI and Expert SystemsAI and Expert Systems
AI and Expert Systems
 
Expert system (unit 1 &amp; 2)
Expert system (unit 1 &amp; 2)Expert system (unit 1 &amp; 2)
Expert system (unit 1 &amp; 2)
 
Expert system
Expert systemExpert system
Expert system
 

Similar to Drools5 Community Training Module#1: Drools5 BLiP Introduction

1010 chapter11
1010 chapter111010 chapter11
1010 chapter11
Kamisettykishorekumar
 
Artificial intelligance
Artificial intelliganceArtificial intelligance
Introduction
IntroductionIntroduction
Introduction
sarojbhavaraju5
 
Machine Learning AND Deep Learning for OpenPOWER
Machine Learning AND Deep Learning for OpenPOWERMachine Learning AND Deep Learning for OpenPOWER
Machine Learning AND Deep Learning for OpenPOWER
Ganesan Narayanasamy
 
software engineering
software engineeringsoftware engineering
software engineering
paramalways
 
Artificial Intelligence (AI) -> understanding what it is & how you can use it...
Artificial Intelligence (AI) -> understanding what it is & how you can use it...Artificial Intelligence (AI) -> understanding what it is & how you can use it...
Artificial Intelligence (AI) -> understanding what it is & how you can use it...
Adela VILLANUEVA
 
Intro to ai application emeritus uob-final
Intro to ai application emeritus uob-finalIntro to ai application emeritus uob-final
Intro to ai application emeritus uob-final
Luis Fernando Gonzalez Sanchez
 
Topic 8 expert system
Topic 8 expert systemTopic 8 expert system
Topic 8 expert system
Noreliana Md Sharif
 
Cloudera Data Science Challenge 3 Solution by Doug Needham
Cloudera Data Science Challenge 3 Solution by Doug NeedhamCloudera Data Science Challenge 3 Solution by Doug Needham
Cloudera Data Science Challenge 3 Solution by Doug Needham
Doug Needham
 
Expert system prepared by fikirte and hayat im assignment
Expert system prepared by fikirte and hayat im assignmentExpert system prepared by fikirte and hayat im assignment
Expert system prepared by fikirte and hayat im assignment
fikir getachew
 
IBM Paris Bluemix Meetup #12 - Ecole 42 - 9 décembre 2015
IBM Paris Bluemix Meetup #12 - Ecole 42 - 9 décembre 2015IBM Paris Bluemix Meetup #12 - Ecole 42 - 9 décembre 2015
IBM Paris Bluemix Meetup #12 - Ecole 42 - 9 décembre 2015
IBM France Lab
 
10-essential-capabilities-of-a-modern-soc1.pdf
10-essential-capabilities-of-a-modern-soc1.pdf10-essential-capabilities-of-a-modern-soc1.pdf
10-essential-capabilities-of-a-modern-soc1.pdf
reflandahartanto00
 
Artificial-Intelligence--AI And ES Nowledge Base Systems
Artificial-Intelligence--AI And ES Nowledge Base SystemsArtificial-Intelligence--AI And ES Nowledge Base Systems
Artificial-Intelligence--AI And ES Nowledge Base Systems
Jim Webb
 
ARTIFICIAL INTELLIGENCE AND EXPERT SYSTEMS KNOWLEDGE-BASED SYSTEMS TEACHING ...
ARTIFICIAL INTELLIGENCE AND EXPERT SYSTEMS  KNOWLEDGE-BASED SYSTEMS TEACHING ...ARTIFICIAL INTELLIGENCE AND EXPERT SYSTEMS  KNOWLEDGE-BASED SYSTEMS TEACHING ...
ARTIFICIAL INTELLIGENCE AND EXPERT SYSTEMS KNOWLEDGE-BASED SYSTEMS TEACHING ...
Arlene Smith
 
IEEE augmented reality learning experience model (ARLEM)
IEEE augmented reality learning experience model (ARLEM)IEEE augmented reality learning experience model (ARLEM)
IEEE augmented reality learning experience model (ARLEM)
fridolin.wild
 
TechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - Trivadis
TechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - TrivadisTechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - Trivadis
TechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - Trivadis
Trivadis
 
UCIAD - quick overview
UCIAD - quick overviewUCIAD - quick overview
UCIAD - quick overview
Mathieu d'Aquin
 
Operating System Structure Of A Single Large Executable...
Operating System Structure Of A Single Large Executable...Operating System Structure Of A Single Large Executable...
Operating System Structure Of A Single Large Executable...
Jennifer Lopez
 
Intelligent system by SHAHIN ELAHI BOX
Intelligent system by SHAHIN ELAHI BOXIntelligent system by SHAHIN ELAHI BOX
Intelligent system by SHAHIN ELAHI BOX
Shahin Alam
 
Drools & jBPM Info Sheet
Drools & jBPM Info SheetDrools & jBPM Info Sheet
Drools & jBPM Info Sheet
Mark Proctor
 

Similar to Drools5 Community Training Module#1: Drools5 BLiP Introduction (20)

1010 chapter11
1010 chapter111010 chapter11
1010 chapter11
 
Artificial intelligance
Artificial intelliganceArtificial intelligance
Artificial intelligance
 
Introduction
IntroductionIntroduction
Introduction
 
Machine Learning AND Deep Learning for OpenPOWER
Machine Learning AND Deep Learning for OpenPOWERMachine Learning AND Deep Learning for OpenPOWER
Machine Learning AND Deep Learning for OpenPOWER
 
software engineering
software engineeringsoftware engineering
software engineering
 
Artificial Intelligence (AI) -> understanding what it is & how you can use it...
Artificial Intelligence (AI) -> understanding what it is & how you can use it...Artificial Intelligence (AI) -> understanding what it is & how you can use it...
Artificial Intelligence (AI) -> understanding what it is & how you can use it...
 
Intro to ai application emeritus uob-final
Intro to ai application emeritus uob-finalIntro to ai application emeritus uob-final
Intro to ai application emeritus uob-final
 
Topic 8 expert system
Topic 8 expert systemTopic 8 expert system
Topic 8 expert system
 
Cloudera Data Science Challenge 3 Solution by Doug Needham
Cloudera Data Science Challenge 3 Solution by Doug NeedhamCloudera Data Science Challenge 3 Solution by Doug Needham
Cloudera Data Science Challenge 3 Solution by Doug Needham
 
Expert system prepared by fikirte and hayat im assignment
Expert system prepared by fikirte and hayat im assignmentExpert system prepared by fikirte and hayat im assignment
Expert system prepared by fikirte and hayat im assignment
 
IBM Paris Bluemix Meetup #12 - Ecole 42 - 9 décembre 2015
IBM Paris Bluemix Meetup #12 - Ecole 42 - 9 décembre 2015IBM Paris Bluemix Meetup #12 - Ecole 42 - 9 décembre 2015
IBM Paris Bluemix Meetup #12 - Ecole 42 - 9 décembre 2015
 
10-essential-capabilities-of-a-modern-soc1.pdf
10-essential-capabilities-of-a-modern-soc1.pdf10-essential-capabilities-of-a-modern-soc1.pdf
10-essential-capabilities-of-a-modern-soc1.pdf
 
Artificial-Intelligence--AI And ES Nowledge Base Systems
Artificial-Intelligence--AI And ES Nowledge Base SystemsArtificial-Intelligence--AI And ES Nowledge Base Systems
Artificial-Intelligence--AI And ES Nowledge Base Systems
 
ARTIFICIAL INTELLIGENCE AND EXPERT SYSTEMS KNOWLEDGE-BASED SYSTEMS TEACHING ...
ARTIFICIAL INTELLIGENCE AND EXPERT SYSTEMS  KNOWLEDGE-BASED SYSTEMS TEACHING ...ARTIFICIAL INTELLIGENCE AND EXPERT SYSTEMS  KNOWLEDGE-BASED SYSTEMS TEACHING ...
ARTIFICIAL INTELLIGENCE AND EXPERT SYSTEMS KNOWLEDGE-BASED SYSTEMS TEACHING ...
 
IEEE augmented reality learning experience model (ARLEM)
IEEE augmented reality learning experience model (ARLEM)IEEE augmented reality learning experience model (ARLEM)
IEEE augmented reality learning experience model (ARLEM)
 
TechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - Trivadis
TechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - TrivadisTechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - Trivadis
TechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - Trivadis
 
UCIAD - quick overview
UCIAD - quick overviewUCIAD - quick overview
UCIAD - quick overview
 
Operating System Structure Of A Single Large Executable...
Operating System Structure Of A Single Large Executable...Operating System Structure Of A Single Large Executable...
Operating System Structure Of A Single Large Executable...
 
Intelligent system by SHAHIN ELAHI BOX
Intelligent system by SHAHIN ELAHI BOXIntelligent system by SHAHIN ELAHI BOX
Intelligent system by SHAHIN ELAHI BOX
 
Drools & jBPM Info Sheet
Drools & jBPM Info SheetDrools & jBPM Info Sheet
Drools & jBPM Info Sheet
 

More from Mauricio (Salaboy) Salatino

Devoxx UK - Platforms on top of K8s
Devoxx UK - Platforms on top of K8sDevoxx UK - Platforms on top of K8s
Devoxx UK - Platforms on top of K8s
Mauricio (Salaboy) Salatino
 
WTF_is_SRE_DeveloperEnabledPlatforms.pdf
WTF_is_SRE_DeveloperEnabledPlatforms.pdfWTF_is_SRE_DeveloperEnabledPlatforms.pdf
WTF_is_SRE_DeveloperEnabledPlatforms.pdf
Mauricio (Salaboy) Salatino
 
Lessons Learnt from creating platforms on Kubernetes @ Rejekts
Lessons Learnt from creating platforms on Kubernetes @ RejektsLessons Learnt from creating platforms on Kubernetes @ Rejekts
Lessons Learnt from creating platforms on Kubernetes @ Rejekts
Mauricio (Salaboy) Salatino
 
Building Developer Experiences for the Cloud .pdf
Building Developer Experiences for the Cloud .pdfBuilding Developer Experiences for the Cloud .pdf
Building Developer Experiences for the Cloud .pdf
Mauricio (Salaboy) Salatino
 
KUBEDAY - JAPAN 2022 - Building FaaS Platforms.pdf
KUBEDAY - JAPAN  2022 - Building FaaS Platforms.pdfKUBEDAY - JAPAN  2022 - Building FaaS Platforms.pdf
KUBEDAY - JAPAN 2022 - Building FaaS Platforms.pdf
Mauricio (Salaboy) Salatino
 
The Challenges of building Cloud Native Platforms
The Challenges of building Cloud Native PlatformsThe Challenges of building Cloud Native Platforms
The Challenges of building Cloud Native Platforms
Mauricio (Salaboy) Salatino
 
Functions Working Group Update - August 2022.pdf
Functions Working Group Update - August 2022.pdfFunctions Working Group Update - August 2022.pdf
Functions Working Group Update - August 2022.pdf
Mauricio (Salaboy) Salatino
 
JBCNConf 2022: Go vs Java (Kubernetes)
JBCNConf 2022: Go vs Java (Kubernetes)JBCNConf 2022: Go vs Java (Kubernetes)
JBCNConf 2022: Go vs Java (Kubernetes)
Mauricio (Salaboy) Salatino
 
Expanding Interoperability in the CD ecosystem - CDCon - Austin, TX - 2022
Expanding Interoperability in the CD ecosystem - CDCon - Austin, TX -  2022 Expanding Interoperability in the CD ecosystem - CDCon - Austin, TX -  2022
Expanding Interoperability in the CD ecosystem - CDCon - Austin, TX - 2022
Mauricio (Salaboy) Salatino
 
Spring I/O 2022: Knative and Spring - Bringing back the `func`
Spring I/O 2022: Knative and Spring - Bringing back the `func`Spring I/O 2022: Knative and Spring - Bringing back the `func`
Spring I/O 2022: Knative and Spring - Bringing back the `func`
Mauricio (Salaboy) Salatino
 
KnativeCon 2022 - Knative Functions
KnativeCon 2022 - Knative FunctionsKnativeCon 2022 - Knative Functions
KnativeCon 2022 - Knative Functions
Mauricio (Salaboy) Salatino
 
Knative Maintainers KubeConEU 22 Knative Overview and Update
Knative Maintainers KubeConEU 22 Knative Overview and UpdateKnative Maintainers KubeConEU 22 Knative Overview and Update
Knative Maintainers KubeConEU 22 Knative Overview and Update
Mauricio (Salaboy) Salatino
 
CDEventsCon Expanding Interoperability in the CD ecosystem
CDEventsCon Expanding Interoperability in the CD ecosystemCDEventsCon Expanding Interoperability in the CD ecosystem
CDEventsCon Expanding Interoperability in the CD ecosystem
Mauricio (Salaboy) Salatino
 
A Polyglot Developer Experience on Kubernetes - KubeCon EU Valencia
A Polyglot Developer Experience on Kubernetes - KubeCon EU ValenciaA Polyglot Developer Experience on Kubernetes - KubeCon EU Valencia
A Polyglot Developer Experience on Kubernetes - KubeCon EU Valencia
Mauricio (Salaboy) Salatino
 
Pave the Golden Path On Your Internal Platform
Pave the Golden Path On Your Internal PlatformPave the Golden Path On Your Internal Platform
Pave the Golden Path On Your Internal Platform
Mauricio (Salaboy) Salatino
 
Knative and Spring - Bringing back the func.pdf
Knative and Spring - Bringing back the func.pdfKnative and Spring - Bringing back the func.pdf
Knative and Spring - Bringing back the func.pdf
Mauricio (Salaboy) Salatino
 
KCD Guatemala - Abstracciones sobre Abstracciones
KCD Guatemala - Abstracciones sobre AbstraccionesKCD Guatemala - Abstracciones sobre Abstracciones
KCD Guatemala - Abstracciones sobre Abstracciones
Mauricio (Salaboy) Salatino
 
KubeCon NA - 2021 Tools That I Wish Existed 3 Years Ago To Build a SaaS Offering
KubeCon NA - 2021 Tools That I Wish Existed 3 Years Ago To Build a SaaS OfferingKubeCon NA - 2021 Tools That I Wish Existed 3 Years Ago To Build a SaaS Offering
KubeCon NA - 2021 Tools That I Wish Existed 3 Years Ago To Build a SaaS Offering
Mauricio (Salaboy) Salatino
 
Cloud Native Islamabad - Getting Closer to Continuous Delivery with Knative
Cloud Native Islamabad - Getting Closer to Continuous Delivery with KnativeCloud Native Islamabad - Getting Closer to Continuous Delivery with Knative
Cloud Native Islamabad - Getting Closer to Continuous Delivery with Knative
Mauricio (Salaboy) Salatino
 
Intro to the Cloud with Knative (Spanish)
Intro to the Cloud with Knative (Spanish) Intro to the Cloud with Knative (Spanish)
Intro to the Cloud with Knative (Spanish)
Mauricio (Salaboy) Salatino
 

More from Mauricio (Salaboy) Salatino (20)

Devoxx UK - Platforms on top of K8s
Devoxx UK - Platforms on top of K8sDevoxx UK - Platforms on top of K8s
Devoxx UK - Platforms on top of K8s
 
WTF_is_SRE_DeveloperEnabledPlatforms.pdf
WTF_is_SRE_DeveloperEnabledPlatforms.pdfWTF_is_SRE_DeveloperEnabledPlatforms.pdf
WTF_is_SRE_DeveloperEnabledPlatforms.pdf
 
Lessons Learnt from creating platforms on Kubernetes @ Rejekts
Lessons Learnt from creating platforms on Kubernetes @ RejektsLessons Learnt from creating platforms on Kubernetes @ Rejekts
Lessons Learnt from creating platforms on Kubernetes @ Rejekts
 
Building Developer Experiences for the Cloud .pdf
Building Developer Experiences for the Cloud .pdfBuilding Developer Experiences for the Cloud .pdf
Building Developer Experiences for the Cloud .pdf
 
KUBEDAY - JAPAN 2022 - Building FaaS Platforms.pdf
KUBEDAY - JAPAN  2022 - Building FaaS Platforms.pdfKUBEDAY - JAPAN  2022 - Building FaaS Platforms.pdf
KUBEDAY - JAPAN 2022 - Building FaaS Platforms.pdf
 
The Challenges of building Cloud Native Platforms
The Challenges of building Cloud Native PlatformsThe Challenges of building Cloud Native Platforms
The Challenges of building Cloud Native Platforms
 
Functions Working Group Update - August 2022.pdf
Functions Working Group Update - August 2022.pdfFunctions Working Group Update - August 2022.pdf
Functions Working Group Update - August 2022.pdf
 
JBCNConf 2022: Go vs Java (Kubernetes)
JBCNConf 2022: Go vs Java (Kubernetes)JBCNConf 2022: Go vs Java (Kubernetes)
JBCNConf 2022: Go vs Java (Kubernetes)
 
Expanding Interoperability in the CD ecosystem - CDCon - Austin, TX - 2022
Expanding Interoperability in the CD ecosystem - CDCon - Austin, TX -  2022 Expanding Interoperability in the CD ecosystem - CDCon - Austin, TX -  2022
Expanding Interoperability in the CD ecosystem - CDCon - Austin, TX - 2022
 
Spring I/O 2022: Knative and Spring - Bringing back the `func`
Spring I/O 2022: Knative and Spring - Bringing back the `func`Spring I/O 2022: Knative and Spring - Bringing back the `func`
Spring I/O 2022: Knative and Spring - Bringing back the `func`
 
KnativeCon 2022 - Knative Functions
KnativeCon 2022 - Knative FunctionsKnativeCon 2022 - Knative Functions
KnativeCon 2022 - Knative Functions
 
Knative Maintainers KubeConEU 22 Knative Overview and Update
Knative Maintainers KubeConEU 22 Knative Overview and UpdateKnative Maintainers KubeConEU 22 Knative Overview and Update
Knative Maintainers KubeConEU 22 Knative Overview and Update
 
CDEventsCon Expanding Interoperability in the CD ecosystem
CDEventsCon Expanding Interoperability in the CD ecosystemCDEventsCon Expanding Interoperability in the CD ecosystem
CDEventsCon Expanding Interoperability in the CD ecosystem
 
A Polyglot Developer Experience on Kubernetes - KubeCon EU Valencia
A Polyglot Developer Experience on Kubernetes - KubeCon EU ValenciaA Polyglot Developer Experience on Kubernetes - KubeCon EU Valencia
A Polyglot Developer Experience on Kubernetes - KubeCon EU Valencia
 
Pave the Golden Path On Your Internal Platform
Pave the Golden Path On Your Internal PlatformPave the Golden Path On Your Internal Platform
Pave the Golden Path On Your Internal Platform
 
Knative and Spring - Bringing back the func.pdf
Knative and Spring - Bringing back the func.pdfKnative and Spring - Bringing back the func.pdf
Knative and Spring - Bringing back the func.pdf
 
KCD Guatemala - Abstracciones sobre Abstracciones
KCD Guatemala - Abstracciones sobre AbstraccionesKCD Guatemala - Abstracciones sobre Abstracciones
KCD Guatemala - Abstracciones sobre Abstracciones
 
KubeCon NA - 2021 Tools That I Wish Existed 3 Years Ago To Build a SaaS Offering
KubeCon NA - 2021 Tools That I Wish Existed 3 Years Ago To Build a SaaS OfferingKubeCon NA - 2021 Tools That I Wish Existed 3 Years Ago To Build a SaaS Offering
KubeCon NA - 2021 Tools That I Wish Existed 3 Years Ago To Build a SaaS Offering
 
Cloud Native Islamabad - Getting Closer to Continuous Delivery with Knative
Cloud Native Islamabad - Getting Closer to Continuous Delivery with KnativeCloud Native Islamabad - Getting Closer to Continuous Delivery with Knative
Cloud Native Islamabad - Getting Closer to Continuous Delivery with Knative
 
Intro to the Cloud with Knative (Spanish)
Intro to the Cloud with Knative (Spanish) Intro to the Cloud with Knative (Spanish)
Intro to the Cloud with Knative (Spanish)
 

Recently uploaded

Christine's Product Research Presentation.pptx
Christine's Product Research Presentation.pptxChristine's Product Research Presentation.pptx
Christine's Product Research Presentation.pptx
christinelarrosa
 
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
Fwdays
 
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
DanBrown980551
 
"Scaling RAG Applications to serve millions of users", Kevin Goedecke
"Scaling RAG Applications to serve millions of users",  Kevin Goedecke"Scaling RAG Applications to serve millions of users",  Kevin Goedecke
"Scaling RAG Applications to serve millions of users", Kevin Goedecke
Fwdays
 
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham HillinQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
LizaNolte
 
From Natural Language to Structured Solr Queries using LLMs
From Natural Language to Structured Solr Queries using LLMsFrom Natural Language to Structured Solr Queries using LLMs
From Natural Language to Structured Solr Queries using LLMs
Sease
 
GNSS spoofing via SDR (Criptored Talks 2024)
GNSS spoofing via SDR (Criptored Talks 2024)GNSS spoofing via SDR (Criptored Talks 2024)
GNSS spoofing via SDR (Criptored Talks 2024)
Javier Junquera
 
Introducing BoxLang : A new JVM language for productivity and modularity!
Introducing BoxLang : A new JVM language for productivity and modularity!Introducing BoxLang : A new JVM language for productivity and modularity!
Introducing BoxLang : A new JVM language for productivity and modularity!
Ortus Solutions, Corp
 
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
AlexanderRichford
 
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance PanelsNorthern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving
 
A Deep Dive into ScyllaDB's Architecture
A Deep Dive into ScyllaDB's ArchitectureA Deep Dive into ScyllaDB's Architecture
A Deep Dive into ScyllaDB's Architecture
ScyllaDB
 
Containers & AI - Beauty and the Beast!?!
Containers & AI - Beauty and the Beast!?!Containers & AI - Beauty and the Beast!?!
Containers & AI - Beauty and the Beast!?!
Tobias Schneck
 
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptxPRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
christinelarrosa
 
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
Jason Yip
 
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdfLee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
leebarnesutopia
 
Session 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdfSession 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdf
UiPathCommunity
 
Must Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during MigrationMust Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during Migration
Mydbops
 
What is an RPA CoE? Session 2 – CoE Roles
What is an RPA CoE?  Session 2 – CoE RolesWhat is an RPA CoE?  Session 2 – CoE Roles
What is an RPA CoE? Session 2 – CoE Roles
DianaGray10
 
Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Biomedical Knowledge Graphs for Data Scientists and BioinformaticiansBiomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Neo4j
 
Demystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through StorytellingDemystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through Storytelling
Enterprise Knowledge
 

Recently uploaded (20)

Christine's Product Research Presentation.pptx
Christine's Product Research Presentation.pptxChristine's Product Research Presentation.pptx
Christine's Product Research Presentation.pptx
 
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
 
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
 
"Scaling RAG Applications to serve millions of users", Kevin Goedecke
"Scaling RAG Applications to serve millions of users",  Kevin Goedecke"Scaling RAG Applications to serve millions of users",  Kevin Goedecke
"Scaling RAG Applications to serve millions of users", Kevin Goedecke
 
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham HillinQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
 
From Natural Language to Structured Solr Queries using LLMs
From Natural Language to Structured Solr Queries using LLMsFrom Natural Language to Structured Solr Queries using LLMs
From Natural Language to Structured Solr Queries using LLMs
 
GNSS spoofing via SDR (Criptored Talks 2024)
GNSS spoofing via SDR (Criptored Talks 2024)GNSS spoofing via SDR (Criptored Talks 2024)
GNSS spoofing via SDR (Criptored Talks 2024)
 
Introducing BoxLang : A new JVM language for productivity and modularity!
Introducing BoxLang : A new JVM language for productivity and modularity!Introducing BoxLang : A new JVM language for productivity and modularity!
Introducing BoxLang : A new JVM language for productivity and modularity!
 
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
 
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance PanelsNorthern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
 
A Deep Dive into ScyllaDB's Architecture
A Deep Dive into ScyllaDB's ArchitectureA Deep Dive into ScyllaDB's Architecture
A Deep Dive into ScyllaDB's Architecture
 
Containers & AI - Beauty and the Beast!?!
Containers & AI - Beauty and the Beast!?!Containers & AI - Beauty and the Beast!?!
Containers & AI - Beauty and the Beast!?!
 
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptxPRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
 
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
 
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdfLee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
 
Session 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdfSession 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdf
 
Must Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during MigrationMust Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during Migration
 
What is an RPA CoE? Session 2 – CoE Roles
What is an RPA CoE?  Session 2 – CoE RolesWhat is an RPA CoE?  Session 2 – CoE Roles
What is an RPA CoE? Session 2 – CoE Roles
 
Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Biomedical Knowledge Graphs for Data Scientists and BioinformaticiansBiomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
 
Demystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through StorytellingDemystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through Storytelling
 

Drools5 Community Training Module#1: Drools5 BLiP Introduction

  • 1.     Drools5 Community Training Sponsored by Plugtree
  • 2. Module 1: Drools BLiP Theoretical Introduction Drools5 Community Training version: 1.0-SNAPSHOT Release Date: 03/16/2011 Under The Creative Common License
  • 3. Module 1: Drools BLiP Theoretical Introduction Drools5 Community Training Course by Mauricio "Salaboy" Salatino and Esteban Aliverti is licensed under a Creative Commons Attribution 3.0 Unported License. Based on a work at salaboy.wordpress. com. Permissions beyond the scope of this license may be available at http: //salaboy.wordpress.com/.
  • 4. Overview Theoretical Background Drools Business Logic Integration Platform Introduction Drools Expert jBPM5 / Drools Flow Drools Fusion Drools Guvnor
  • 5. Theoretical Background Artificial Intelligence Expert Systems Knowledge Engineering Inference Engines Rules Based Production Systems Drools History
  • 6. Artificial Intelligence (AI) "The study and design of intelligent agents." An intelligent agent is a system that perceives its environment and takes actions which maximize its chances of success. The ability of a machine to perform tasks that require human intelligence.
  • 7. Expert Systems "An expert system is software that attempts to provide an answer to a problem where normally one or more human experts would be consulted." In the begining was replace and now it's assist Software that knows about a specific domain It can solve/answer specific questions
  • 8. Expert Systems Common Uses of Expert Systems + Medicine -> Diagnosis based on patient symptoms + Field Analysis -> Evaluation of geographical regions (Petrol Prospecting) + Mortgages and Loans -> Used for risk evaluation (scoring)
  • 9. Knowledge Engineering "Knowledge engineering" is the art and science of observing human experts to build models of their expertise that they can validate.
  • 10. Inference Engines "An inference engine is a computer program that tries to derive answers from a knowledge base. It is the "brain" that expert systems use to reason to formulate new conclusions for a certain situation."
  • 11. Inference Engines An inference engine will be in charge of using the formalized knowledge from our expert to answer questions for a specific situation.
  • 12. Production Systems A production system (or production rule system) are software that are composed of a set of rules about behavior. These rules are a simple and basic representation of knowledge. A production system provides the mechanism to execute actions (behavior) in order to achieve some goal for the system.
  • 13. Rule If / When / Where / On Conditions Then / Do Actions
  • 14. Chaining Strategies Methods of Reasoning in Inference Engines Backward Chaining: goal-driven -> Prolog Forward Chaining: data-driven -> Drools
  • 15. Chaining Strategies Example Scenario: Pet (name == "Fritz", behavior =="croaks") Question: What is the color of my Pet? Rules / Knowledge: 1) When Pet(behavior == "croaks") Then Pet.type = "Frog" 2) When Pet(behavior == "sings") Then Pet.type = "Canary" 3) When Pet(type == "Frog") Then Pet.color = "green" 4) When Pet(type == "Canary") Then Pet.color = "yellow"
  • 19. Some characteristics Output answers will contain the justification These kinds of systems are created to support large amounts of knowledge to solve complex situations The knowledge can be: Expressed by Domain Specific users Reused Iteratively improved Maintained decoupled from your application code
  • 20. Drools History The project was born in '03 Mark Proctor in the project leader Born as an Inference Engine It started using the LEAPS algorithm for pattern matching In Drools 3.x they implemented RETE algorithm In Drools 4.x the RETE algorithm was tuned for high performance
  • 21. Drools 5 BLiP Named as Business Logic integration Platform (BLiP) Modules: Drools Expert (leader Mark Proctor) jBPM5 / Drools Flow (leader Kris Verlaenen) Drools Fusion (leader Edson Tirelli) Drools Guvnor (leader Toni Rikkola) * There are other experimental modules (Planner, Chance, Grid etc.) that will be not covered here.
  • 22. Drools Expert The core of Drools Contains the inference engine Uses the RETE algorithm for pattern matching Provides us with a way to create a knowledge base Provides us with a simple API to interact with the inference engine
  • 23. Business Rule Structure rule "My Rule" <attributes> when <LHS> Person(name == "John") <CEs> then <RHS> System.out.println("Hi John!"); <Actions> end
  • 24. Drools Expert Common use cases: + Validations + Decision Making + Scoring + Games
  • 25. jBPM5 Focused on BPM Implements the main stages of the discipline: Model/Design Execute Monitor Pretty close to finish BPMN2 implementation Uses the same APIs that we use in Drools Expert Fully integrated with the inference engine
  • 26. Business Process Definition: "A sequence of activities, performed by humans or systems to complete a business goal."
  • 27. Business Process Example New Bank Account process:
  • 28. Business Process Management Iterative/continuous Discipline Four main stages: Discover Design / Model Execution Monitoring / Improvements / Optimizations
  • 29. jBPM5 Common use cases In every company Business Processes are used implicitly or explicitly In every business activity In every non-business situation that defines a logical set of activities that needs to be executed/performed
  • 30. Drools Fusion Focused in Complex Event Processing Temporal reasoning 13 temporal operators (before, after, during, and so on) Enables us to detect complex events (event correlation patterns)
  • 33. Drools Fusion Common use cases: Fraud Detection Stock Trading Hardware monitoring Transport and Logistics Everywhere we need to correlate or aggregate events
  • 34. Drools Guvnor Commonly tagged as a BRMS Centralized Knowledge Repository (JCR) Handles the Knowledge versioning and categorization Now it includes more User Friendly features like: Guided Rules Authoring Test Cases Creation Rule Constraints Meta-Model Rule Validation and Verification Business Process Modeling
  • 36. Briefing Up Covered Topics: Conceptual background of Drools Project Drools Main Modules Introduction
  • 37.     Questions?
  • 38. Enjoy! Questions and Feedback are always appreciated! Stay Tuned!
  • 39.     Contact us at www.plugtree.com