SlideShare a Scribd company logo
1 of 54
 
Les BRMS Business Rules  Management System   Emmanuel Bonnet 15 Juin 2010   JUG Toulouse
Pub
[object Object],[object Object],[object Object],[object Object]
Les BRMS en 5 minutes chrono …
Les règles métiers Les moteurs de règles Le BRMS
Une règle métier Si le conducteur n’a pas eu d’accident depuis 3 ans Et le bonus actuel du conducteur est 0.5 Alors appliquer au conducteur une remise de 15% arval.fr>
Le moteur d’inférence Fact DB Rules DB if then if then if then R1 R2 R3 Inférence engine Execute rules with agenda Modify objects BR engine
BRMS ,[object Object],[object Object],[object Object],[object Object],[object Object]
BRMS : what’s in it for me ?
BRMS : Externaliser ,[object Object],[object Object],[object Object],[object Object],[object Object]
Cycle de vie des règles ,[object Object],[object Object],[object Object],Application Règles
BRMS : Expliciter ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
BRMS :Gérer ,[object Object],[object Object],[object Object],[object Object],[object Object]
Projets : the Usual Suspects ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Tout ce que vous voulez savoir sur  Les règles métiers Les moteurs de règles Les BRMS sans jamais avoir osé le demander …
Tout ce que vous voulez savoir sur … Les règles métiers sans oser le demander
Une règle, c’est quoi? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Le métier, c’est quoi? ,[object Object],[object Object],[object Object],[object Object]
Les règles métier, c’est quoi ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Exemple Si le conducteur n’a pas eu d’accident depuis 3 ans Et le bonus actuel du conducteur est 0.5 Alors appliquer au conducteur une remise de 15% arval.fr>
Exemple Si le conducteur n’a pas eu d’accident depuis 3 ans Et le bonus actuel du conducteur est 0.5 Alors appliquer au conducteur une remise de 15% arval.fr>
Exemple Si le conducteur n’a pas eu d’accident depuis 3 ans Et le bonus actuel du conducteur est 0.5 Alors appliquer au conducteur une remise de 15% arval.fr>
Mapping ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],arval.fr>
Exemple : JRules Mapping
Règle métier : résumé ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Sous le capot ?  (Exemple : Drools)
Le Langage naturel ,[object Object],[object Object],[object Object],[object Object]
Tout ce que vous voulez savoir sur … Les moteurs de règles sans oser le demander
Moteur de règle ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Moteur d’inférence L’ algo  ‘ Red is dead’  Il vaut mieux exécuter  une  fois  une  règle    Il vaut mieux exécuter  mille  fois  une  règle    Il vaut mieux exécuter  une  fois  mille  règles    Il vaut mieux exécuter  mille  fois  mille  règles « Attention, ca va couper « 
La structure (1/3) Fact DB Rules DB if then if then if then R1 R2 R3 Inférence engine BR engine
La structure (2/3) Fact DB Rules DB if then if then if then R1 R2 R3 Inférence engine Execute rules with agenda Modify objects BR engine
La structure (3/3) Fact DB Rules DB if then if then if then R1 R2 R3 Inférence engine BR engine
RETE ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Principe du RETE ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
IF  A.a1 = 1  B.b2 = 2 A.a2 = B.b3 Then R1 (A,B). IF  B.b1 = 2 C.c1 = B.b2 Then R2 (B,C). A a1 a2  B b1 b2  b3  C c1
A B C a1=1 b1=2 a2=b3 R1 (A,B) c1=b2 R2(B,C) B b1 = 2 b2 = 3 b3 = 4 C c1 = 3 A a1 = 1 a2 = 4 B b1 = 2 b2 = 3 b3 = 4
Tout ce que vous voulez savoir sur … Les BRMS sans oser le demander
L’architecture Rules Engine Enter rules Extract rules Deploy rules Software System GUI component Model component Persistency component Rules component Business User IT Architect
Ruleflows (ex : JRules + Drools) ,[object Object]
Différents types de règles (ex : JRules + Drools)
BRMS : intégration ,[object Object],[object Object],[object Object],[object Object],[object Object]
BRMS : outils ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Exemple de Process
Les BRMS retours d’experiences
Les défis ,[object Object],[object Object],[object Object],[object Object],[object Object]
Les faux problèmes ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Les anti patterns ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Impact sur le projet ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
BRMS du marché ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
2 Leaders (1/2) IBM / ILOG JRules ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
2 Leaders (2/2) Drools / RedHat JBoss Rules ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object]

More Related Content

Viewers also liked

Affinity Engine - Recommandations personnalisées - Offre Affinity Items
Affinity Engine - Recommandations personnalisées - Offre Affinity ItemsAffinity Engine - Recommandations personnalisées - Offre Affinity Items
Affinity Engine - Recommandations personnalisées - Offre Affinity ItemsStéphane Roy
 
Affinity Engine - Recommandations personnalisées - Offre Affinity Items
Affinity Engine - Recommandations personnalisées - Offre Affinity ItemsAffinity Engine - Recommandations personnalisées - Offre Affinity Items
Affinity Engine - Recommandations personnalisées - Offre Affinity ItemsAffinity Engine
 
Economie du développement soutenable
Economie du développement soutenableEconomie du développement soutenable
Economie du développement soutenablePierre Taillant
 
Recommandations avec Neo4j et le GraphAware Recommendation Engine
Recommandations avec Neo4j et le GraphAware Recommendation EngineRecommandations avec Neo4j et le GraphAware Recommendation Engine
Recommandations avec Neo4j et le GraphAware Recommendation EngineChristophe Willemsen
 
Smart City - Le rôle stratégique des acteurs publics
Smart City - Le rôle stratégique des acteurs publicsSmart City - Le rôle stratégique des acteurs publics
Smart City - Le rôle stratégique des acteurs publicsJérémie34
 
Introduction au cloud computing
Introduction au cloud computingIntroduction au cloud computing
Introduction au cloud computingStéphane Traumat
 
Search Engine Optimization
Search Engine Optimization Search Engine Optimization
Search Engine Optimization ch.ch
 
LNG FUEL & DUAL FUEL ENGINE
LNG FUEL & DUAL FUEL ENGINELNG FUEL & DUAL FUEL ENGINE
LNG FUEL & DUAL FUEL ENGINENguyen Tri
 
Network Meeting - Integration von Camunda mit Liferay
Network Meeting - Integration von Camunda mit LiferayNetwork Meeting - Integration von Camunda mit Liferay
Network Meeting - Integration von Camunda mit Liferaycamunda services GmbH
 
JUG Luzern: Open Source BPM mit BPMN 2.0 und Java
JUG Luzern: Open Source BPM mit BPMN 2.0 und JavaJUG Luzern: Open Source BPM mit BPMN 2.0 und Java
JUG Luzern: Open Source BPM mit BPMN 2.0 und Javacamunda services GmbH
 
Introduction to Oracle Grid Engine
Introduction to Oracle Grid Engine Introduction to Oracle Grid Engine
Introduction to Oracle Grid Engine Morteza Zakeri
 
Slidedeck Datenanalysen auf Speed - Oracle R Enterprise (ORE) Demo - DOAG Big...
Slidedeck Datenanalysen auf Speed - Oracle R Enterprise (ORE) Demo - DOAG Big...Slidedeck Datenanalysen auf Speed - Oracle R Enterprise (ORE) Demo - DOAG Big...
Slidedeck Datenanalysen auf Speed - Oracle R Enterprise (ORE) Demo - DOAG Big...Nadine Schoene
 
Testgetriebene Geschäftsprozessmodellierung
Testgetriebene GeschäftsprozessmodellierungTestgetriebene Geschäftsprozessmodellierung
Testgetriebene GeschäftsprozessmodellierungZambrovski Simon
 
WJAX 2012: Dreamteam "BPM + Java EE"
WJAX 2012: Dreamteam "BPM + Java EE"WJAX 2012: Dreamteam "BPM + Java EE"
WJAX 2012: Dreamteam "BPM + Java EE"camunda services GmbH
 
Ein Prozess lernt laufen: LEGO Mindstorms Steuerung mit BPMN
Ein Prozess lernt laufen: LEGO Mindstorms Steuerung mit BPMNEin Prozess lernt laufen: LEGO Mindstorms Steuerung mit BPMN
Ein Prozess lernt laufen: LEGO Mindstorms Steuerung mit BPMNComsysto Reply GmbH
 

Viewers also liked (15)

Affinity Engine - Recommandations personnalisées - Offre Affinity Items
Affinity Engine - Recommandations personnalisées - Offre Affinity ItemsAffinity Engine - Recommandations personnalisées - Offre Affinity Items
Affinity Engine - Recommandations personnalisées - Offre Affinity Items
 
Affinity Engine - Recommandations personnalisées - Offre Affinity Items
Affinity Engine - Recommandations personnalisées - Offre Affinity ItemsAffinity Engine - Recommandations personnalisées - Offre Affinity Items
Affinity Engine - Recommandations personnalisées - Offre Affinity Items
 
Economie du développement soutenable
Economie du développement soutenableEconomie du développement soutenable
Economie du développement soutenable
 
Recommandations avec Neo4j et le GraphAware Recommendation Engine
Recommandations avec Neo4j et le GraphAware Recommendation EngineRecommandations avec Neo4j et le GraphAware Recommendation Engine
Recommandations avec Neo4j et le GraphAware Recommendation Engine
 
Smart City - Le rôle stratégique des acteurs publics
Smart City - Le rôle stratégique des acteurs publicsSmart City - Le rôle stratégique des acteurs publics
Smart City - Le rôle stratégique des acteurs publics
 
Introduction au cloud computing
Introduction au cloud computingIntroduction au cloud computing
Introduction au cloud computing
 
Search Engine Optimization
Search Engine Optimization Search Engine Optimization
Search Engine Optimization
 
LNG FUEL & DUAL FUEL ENGINE
LNG FUEL & DUAL FUEL ENGINELNG FUEL & DUAL FUEL ENGINE
LNG FUEL & DUAL FUEL ENGINE
 
Network Meeting - Integration von Camunda mit Liferay
Network Meeting - Integration von Camunda mit LiferayNetwork Meeting - Integration von Camunda mit Liferay
Network Meeting - Integration von Camunda mit Liferay
 
JUG Luzern: Open Source BPM mit BPMN 2.0 und Java
JUG Luzern: Open Source BPM mit BPMN 2.0 und JavaJUG Luzern: Open Source BPM mit BPMN 2.0 und Java
JUG Luzern: Open Source BPM mit BPMN 2.0 und Java
 
Introduction to Oracle Grid Engine
Introduction to Oracle Grid Engine Introduction to Oracle Grid Engine
Introduction to Oracle Grid Engine
 
Slidedeck Datenanalysen auf Speed - Oracle R Enterprise (ORE) Demo - DOAG Big...
Slidedeck Datenanalysen auf Speed - Oracle R Enterprise (ORE) Demo - DOAG Big...Slidedeck Datenanalysen auf Speed - Oracle R Enterprise (ORE) Demo - DOAG Big...
Slidedeck Datenanalysen auf Speed - Oracle R Enterprise (ORE) Demo - DOAG Big...
 
Testgetriebene Geschäftsprozessmodellierung
Testgetriebene GeschäftsprozessmodellierungTestgetriebene Geschäftsprozessmodellierung
Testgetriebene Geschäftsprozessmodellierung
 
WJAX 2012: Dreamteam "BPM + Java EE"
WJAX 2012: Dreamteam "BPM + Java EE"WJAX 2012: Dreamteam "BPM + Java EE"
WJAX 2012: Dreamteam "BPM + Java EE"
 
Ein Prozess lernt laufen: LEGO Mindstorms Steuerung mit BPMN
Ein Prozess lernt laufen: LEGO Mindstorms Steuerung mit BPMNEin Prozess lernt laufen: LEGO Mindstorms Steuerung mit BPMN
Ein Prozess lernt laufen: LEGO Mindstorms Steuerung mit BPMN
 

Similar to BRMS JUG Toulouse 20100615

Introduction BRMS Paris JUG 20101109
Introduction BRMS Paris JUG 20101109Introduction BRMS Paris JUG 20101109
Introduction BRMS Paris JUG 20101109Emmanuel Bonnet
 
Core web vitals pour unifier UX et SEO - Stephane Rios - SEO Camp'us paris 2020
Core web vitals pour unifier UX et SEO - Stephane Rios - SEO Camp'us paris 2020Core web vitals pour unifier UX et SEO - Stephane Rios - SEO Camp'us paris 2020
Core web vitals pour unifier UX et SEO - Stephane Rios - SEO Camp'us paris 2020SEO CAMP
 
Core Web Vitals, les indicateurs de vitesse qui réconcilient UX et SEO
Core Web Vitals, les indicateurs de vitesse qui réconcilient UX et SEOCore Web Vitals, les indicateurs de vitesse qui réconcilient UX et SEO
Core Web Vitals, les indicateurs de vitesse qui réconcilient UX et SEOWeLoveSEO
 
MasterClass SQL : Comment avoir de bonnes performances avec SQL Server ?
MasterClass SQL : Comment avoir de bonnes performances avec SQL Server ?MasterClass SQL : Comment avoir de bonnes performances avec SQL Server ?
MasterClass SQL : Comment avoir de bonnes performances avec SQL Server ?Benoit Fillon
 
Comment accélérer le DevOps avec l’ATDD/BDD?
Comment accélérer le DevOps avec l’ATDD/BDD?Comment accélérer le DevOps avec l’ATDD/BDD?
Comment accélérer le DevOps avec l’ATDD/BDD?Danka Zindovic-Dana
 
Modelisation agile 03122011
Modelisation agile  03122011Modelisation agile  03122011
Modelisation agile 03122011agnes_crepet
 
JBoss clustering et tuning (lab 3/3)
JBoss clustering et tuning (lab 3/3)JBoss clustering et tuning (lab 3/3)
JBoss clustering et tuning (lab 3/3)Fourat Zouari
 
Développement agile de logiciel avec la méthode SCRUM
Développement agile de logiciel avec la méthode SCRUMDéveloppement agile de logiciel avec la méthode SCRUM
Développement agile de logiciel avec la méthode SCRUMsenejug
 
20100608 01 - Points de fonctions (Renault)
20100608 01 - Points de fonctions (Renault)20100608 01 - Points de fonctions (Renault)
20100608 01 - Points de fonctions (Renault)LeClubQualiteLogicielle
 
[TNT19] Hands on: Objectif Top Architecte!
[TNT19] Hands on: Objectif Top Architecte![TNT19] Hands on: Objectif Top Architecte!
[TNT19] Hands on: Objectif Top Architecte!Alexandre Touret
 
devops REX 2018 - Comment la qualité reflète-t-elle nos organisations ?
devops REX 2018 - Comment la qualité reflète-t-elle nos organisations ?devops REX 2018 - Comment la qualité reflète-t-elle nos organisations ?
devops REX 2018 - Comment la qualité reflète-t-elle nos organisations ?devops REX
 
Industrialisation Du Logiciel - Introduction Et Bonnes Pratiques
Industrialisation Du Logiciel  - Introduction Et Bonnes PratiquesIndustrialisation Du Logiciel  - Introduction Et Bonnes Pratiques
Industrialisation Du Logiciel - Introduction Et Bonnes PratiquesEmmanuel Hugonnet
 
Industrialisation Du Logiciel Introduction Et Bonnes Pratiques V1.4
Industrialisation Du Logiciel   Introduction Et Bonnes Pratiques   V1.4Industrialisation Du Logiciel   Introduction Et Bonnes Pratiques   V1.4
Industrialisation Du Logiciel Introduction Et Bonnes Pratiques V1.4Emmanuel Hugonnet
 
IBM Bluemix Paris Meetup #24 2017-06-26 - Société Générale testimony Decis...
IBM Bluemix Paris Meetup #24   2017-06-26 - Société Générale testimony  Decis...IBM Bluemix Paris Meetup #24   2017-06-26 - Société Générale testimony  Decis...
IBM Bluemix Paris Meetup #24 2017-06-26 - Société Générale testimony Decis...IBM France Lab
 
Soirée du Test Logiciel - Intelligence Artificielle dans le test - J. VAN QUA...
Soirée du Test Logiciel - Intelligence Artificielle dans le test - J. VAN QUA...Soirée du Test Logiciel - Intelligence Artificielle dans le test - J. VAN QUA...
Soirée du Test Logiciel - Intelligence Artificielle dans le test - J. VAN QUA...TelecomValley
 
2.presentation merise
2.presentation merise2.presentation merise
2.presentation meriseshaheenyaar
 
Meetup IA Open Source On Premise
Meetup  IA Open Source On Premise Meetup  IA Open Source On Premise
Meetup IA Open Source On Premise Clément Marianne
 
APPLICATIONS MOBILES : QUELLES EXIGENCES NON FONCTIONNELLES ET COMMENT LES TE...
APPLICATIONS MOBILES : QUELLES EXIGENCES NON FONCTIONNELLES ET COMMENT LES TE...APPLICATIONS MOBILES : QUELLES EXIGENCES NON FONCTIONNELLES ET COMMENT LES TE...
APPLICATIONS MOBILES : QUELLES EXIGENCES NON FONCTIONNELLES ET COMMENT LES TE...TelecomValley
 

Similar to BRMS JUG Toulouse 20100615 (20)

Introduction BRMS Paris JUG 20101109
Introduction BRMS Paris JUG 20101109Introduction BRMS Paris JUG 20101109
Introduction BRMS Paris JUG 20101109
 
Core web vitals pour unifier UX et SEO - Stephane Rios - SEO Camp'us paris 2020
Core web vitals pour unifier UX et SEO - Stephane Rios - SEO Camp'us paris 2020Core web vitals pour unifier UX et SEO - Stephane Rios - SEO Camp'us paris 2020
Core web vitals pour unifier UX et SEO - Stephane Rios - SEO Camp'us paris 2020
 
Core Web Vitals, les indicateurs de vitesse qui réconcilient UX et SEO
Core Web Vitals, les indicateurs de vitesse qui réconcilient UX et SEOCore Web Vitals, les indicateurs de vitesse qui réconcilient UX et SEO
Core Web Vitals, les indicateurs de vitesse qui réconcilient UX et SEO
 
X-Rules - FR
X-Rules - FRX-Rules - FR
X-Rules - FR
 
MasterClass SQL : Comment avoir de bonnes performances avec SQL Server ?
MasterClass SQL : Comment avoir de bonnes performances avec SQL Server ?MasterClass SQL : Comment avoir de bonnes performances avec SQL Server ?
MasterClass SQL : Comment avoir de bonnes performances avec SQL Server ?
 
Comment accélérer le DevOps avec l’ATDD/BDD?
Comment accélérer le DevOps avec l’ATDD/BDD?Comment accélérer le DevOps avec l’ATDD/BDD?
Comment accélérer le DevOps avec l’ATDD/BDD?
 
Modelisation agile 03122011
Modelisation agile  03122011Modelisation agile  03122011
Modelisation agile 03122011
 
JBoss clustering et tuning (lab 3/3)
JBoss clustering et tuning (lab 3/3)JBoss clustering et tuning (lab 3/3)
JBoss clustering et tuning (lab 3/3)
 
Développement agile de logiciel avec la méthode SCRUM
Développement agile de logiciel avec la méthode SCRUMDéveloppement agile de logiciel avec la méthode SCRUM
Développement agile de logiciel avec la méthode SCRUM
 
20100608 01 - Points de fonctions (Renault)
20100608 01 - Points de fonctions (Renault)20100608 01 - Points de fonctions (Renault)
20100608 01 - Points de fonctions (Renault)
 
[TNT19] Hands on: Objectif Top Architecte!
[TNT19] Hands on: Objectif Top Architecte![TNT19] Hands on: Objectif Top Architecte!
[TNT19] Hands on: Objectif Top Architecte!
 
devops REX 2018 - Comment la qualité reflète-t-elle nos organisations ?
devops REX 2018 - Comment la qualité reflète-t-elle nos organisations ?devops REX 2018 - Comment la qualité reflète-t-elle nos organisations ?
devops REX 2018 - Comment la qualité reflète-t-elle nos organisations ?
 
Industrialisation Du Logiciel - Introduction Et Bonnes Pratiques
Industrialisation Du Logiciel  - Introduction Et Bonnes PratiquesIndustrialisation Du Logiciel  - Introduction Et Bonnes Pratiques
Industrialisation Du Logiciel - Introduction Et Bonnes Pratiques
 
Industrialisation Du Logiciel Introduction Et Bonnes Pratiques V1.4
Industrialisation Du Logiciel   Introduction Et Bonnes Pratiques   V1.4Industrialisation Du Logiciel   Introduction Et Bonnes Pratiques   V1.4
Industrialisation Du Logiciel Introduction Et Bonnes Pratiques V1.4
 
IBM Bluemix Paris Meetup #24 2017-06-26 - Société Générale testimony Decis...
IBM Bluemix Paris Meetup #24   2017-06-26 - Société Générale testimony  Decis...IBM Bluemix Paris Meetup #24   2017-06-26 - Société Générale testimony  Decis...
IBM Bluemix Paris Meetup #24 2017-06-26 - Société Générale testimony Decis...
 
BPM Concepts de base
BPM Concepts de baseBPM Concepts de base
BPM Concepts de base
 
Soirée du Test Logiciel - Intelligence Artificielle dans le test - J. VAN QUA...
Soirée du Test Logiciel - Intelligence Artificielle dans le test - J. VAN QUA...Soirée du Test Logiciel - Intelligence Artificielle dans le test - J. VAN QUA...
Soirée du Test Logiciel - Intelligence Artificielle dans le test - J. VAN QUA...
 
2.presentation merise
2.presentation merise2.presentation merise
2.presentation merise
 
Meetup IA Open Source On Premise
Meetup  IA Open Source On Premise Meetup  IA Open Source On Premise
Meetup IA Open Source On Premise
 
APPLICATIONS MOBILES : QUELLES EXIGENCES NON FONCTIONNELLES ET COMMENT LES TE...
APPLICATIONS MOBILES : QUELLES EXIGENCES NON FONCTIONNELLES ET COMMENT LES TE...APPLICATIONS MOBILES : QUELLES EXIGENCES NON FONCTIONNELLES ET COMMENT LES TE...
APPLICATIONS MOBILES : QUELLES EXIGENCES NON FONCTIONNELLES ET COMMENT LES TE...
 

BRMS JUG Toulouse 20100615

  • 1.  
  • 2. Les BRMS Business Rules Management System Emmanuel Bonnet 15 Juin 2010 JUG Toulouse
  • 3. Pub
  • 4.
  • 5. Les BRMS en 5 minutes chrono …
  • 6. Les règles métiers Les moteurs de règles Le BRMS
  • 7. Une règle métier Si le conducteur n’a pas eu d’accident depuis 3 ans Et le bonus actuel du conducteur est 0.5 Alors appliquer au conducteur une remise de 15% arval.fr>
  • 8. Le moteur d’inférence Fact DB Rules DB if then if then if then R1 R2 R3 Inférence engine Execute rules with agenda Modify objects BR engine
  • 9.
  • 10. BRMS : what’s in it for me ?
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16. Tout ce que vous voulez savoir sur Les règles métiers Les moteurs de règles Les BRMS sans jamais avoir osé le demander …
  • 17. Tout ce que vous voulez savoir sur … Les règles métiers sans oser le demander
  • 18.
  • 19.
  • 20.
  • 21. Exemple Si le conducteur n’a pas eu d’accident depuis 3 ans Et le bonus actuel du conducteur est 0.5 Alors appliquer au conducteur une remise de 15% arval.fr>
  • 22. Exemple Si le conducteur n’a pas eu d’accident depuis 3 ans Et le bonus actuel du conducteur est 0.5 Alors appliquer au conducteur une remise de 15% arval.fr>
  • 23. Exemple Si le conducteur n’a pas eu d’accident depuis 3 ans Et le bonus actuel du conducteur est 0.5 Alors appliquer au conducteur une remise de 15% arval.fr>
  • 24.
  • 25. Exemple : JRules Mapping
  • 26.
  • 27. Sous le capot ? (Exemple : Drools)
  • 28.
  • 29. Tout ce que vous voulez savoir sur … Les moteurs de règles sans oser le demander
  • 30.
  • 31. Moteur d’inférence L’ algo ‘ Red is dead’  Il vaut mieux exécuter une fois une règle  Il vaut mieux exécuter mille fois une règle  Il vaut mieux exécuter une fois mille règles  Il vaut mieux exécuter mille fois mille règles « Attention, ca va couper « 
  • 32. La structure (1/3) Fact DB Rules DB if then if then if then R1 R2 R3 Inférence engine BR engine
  • 33. La structure (2/3) Fact DB Rules DB if then if then if then R1 R2 R3 Inférence engine Execute rules with agenda Modify objects BR engine
  • 34. La structure (3/3) Fact DB Rules DB if then if then if then R1 R2 R3 Inférence engine BR engine
  • 35.
  • 36.
  • 37. IF A.a1 = 1 B.b2 = 2 A.a2 = B.b3 Then R1 (A,B). IF B.b1 = 2 C.c1 = B.b2 Then R2 (B,C). A a1 a2 B b1 b2 b3 C c1
  • 38. A B C a1=1 b1=2 a2=b3 R1 (A,B) c1=b2 R2(B,C) B b1 = 2 b2 = 3 b3 = 4 C c1 = 3 A a1 = 1 a2 = 4 B b1 = 2 b2 = 3 b3 = 4
  • 39. Tout ce que vous voulez savoir sur … Les BRMS sans oser le demander
  • 40. L’architecture Rules Engine Enter rules Extract rules Deploy rules Software System GUI component Model component Persistency component Rules component Business User IT Architect
  • 41.
  • 42. Différents types de règles (ex : JRules + Drools)
  • 43.
  • 44.
  • 46. Les BRMS retours d’experiences
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.