SlideShare une entreprise Scribd logo
1  sur  55
Télécharger pour lire hors ligne
© Groupe GENITECH 1
Les BRMS
Business Rules
Management System
© Groupe GENITECH
Présentations
2
►Emmanuel Bonnet
►ebonnet (at) genigraph.fr
►Responsable Dpt Conseil
►Consultant, Expert BRMS
►Formateur IBM/Ilog JRules / JBoss Rules
►Génigraph
►SSII 100% orienté Objet
►SSII –RM (Règles Métier) !
►www.genigraph.fr
© Groupe GENITECH 3
Les BRMS
…
© Groupe GENITECH
Les règles métiers
Les moteurs de règles
Le BRMS
4
© Groupe GENITECH 5
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%
© Groupe GENITECH
Un moteur d’inférence
6
Inférence
engine
© Groupe GENITECH
Un BRMS
►Gestion du cycle de vie
–Règles métier
►Ecriture -> Exécution
– Versioning
– Process : Validation, Test
7
© Groupe GENITECH 8
BRMS : what’s in it for me ?
►Externaliser
►Expliciter
►Gérer
► Des décisions métier
► Nichées dans un applicatif
© Groupe GENITECH
9
Logique technique
Décisions métiers
Externaliser ?
© Groupe GENITECH 10
BRMS : Externaliser
►Logique métier extérieure à
l’application
► Modifiable
► indépendant du code applicatif
► Cycles courts
►Existe-t-il un besoin ?
© Groupe GENITECH 11
Cycle de vie des règles
► Le cycle de vie des règles change plus
souvent que celui de l’application
Sans BRMS:
Avec BRMS:
Application
Règles
© Groupe GENITECH
12
Expliciter ?
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%
© Groupe GENITECH 13
BRMS : Expliciter
►Compréhensible
► Métier lisible / visible
►Modifiable
► Pas besoin des informaticiens
►Traçable
► On peut « relire » la séquence d’une décision
© Groupe GENITECH
14
Gérer ?
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%
Si
le conducteur n’a pas eu d’accident depuis 6 ans
Et
le bonus actuel du conducteur est 0.8
Alors
appliquer au conducteur une remise de 15%
Si
le conducteur n’a pas eu d’accident depuis 10 ans
Et
le bonus actuel du conducteur est 0.8
Alors
appliquer au conducteur une remise de 15%
© Groupe GENITECH 15
BRMS :Gérer
►Décisions Métier
► Stockée / Référencées
►Organisation des connaissances
► Searchable !!
► Exécutable !!!
© Groupe GENITECH 16
Projets : the Usual Suspects
►Le métier change souvent
► « encore un nouveau requirement ! »
►La connaissance est très pointue
► «SVP, pas d’informaticien !»
►Des décisions doivent être tracées
► « Pourquoi cette décision ? »
► Initialiser des données …..
© Groupe GENITECH
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
© Groupe GENITECH 18
Tout ce que vous voulez savoir sur …
Les règles
métiers
sans oser le demander
© Groupe GENITECH 19
Une règle, c’est quoi?
If
…
and/or
…
Then
…
(Else
…
)
© Groupe GENITECH 20
Le métier, c’est quoi?
La rédaction de spécifications ?
La présence à des réunions ?
La gestion des prestataires ?
« Le savoir du client »
© Groupe GENITECH 21
Les règles métier, c’est quoi
Du code ?
Une implémentation technique ?
Des Design patterns ?
Une application informatique ?
« Le savoir du client »
Sous la forme
IF
THEN
© Groupe GENITECH 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%
© Groupe GENITECH 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%
© Groupe GENITECH 24
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%
© Groupe GENITECH 25
Mapping
Grammaire / Langage usuel
+
Concept / Attributs / Traitements
=
Mapping entre langages
naturel  orienté objet
© Groupe GENITECH
JRules Mapping
26
© Groupe GENITECH
Règle métier : résumé
►Le savoir du client
►En langage naturel
– Structuré
• Formalisme : IF / THEN
• Grammaire
►Traduction informatique
– Mapping vers langages objets
– Sorte de « Compilation »
27
© Groupe GENITECH
Sous le capot ?
(JBoss Rules)
28
© Groupe GENITECH
Le Langage naturel
►Parlons en ….
► Les utilisateurs qui lisent des règles !!!!
– Ils peuvent écrire aussi ?
►N’est ce pas un mythe ?
» Java = grammaire + vocabulaire
» Sécurité, simplicité, lisibilité
29
© Groupe GENITECH 30
Tout ce que vous voulez savoir sur …
Les moteurs
de règles
sans oser le demander
© Groupe GENITECH
Moteur de règle
►Exécute
– les règles en regards de faits
►Optimise
(Volume)
►Garantit la cohérence
(Séquence / Contexte)
31
© Groupe GENITECH 32
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 «
© Groupe GENITECH
La structure (1/3)
33
Inférence
engine
© Groupe GENITECH
La structure (2/3)
34
Inférence
engine
© Groupe GENITECH
La structure (3/3)
35
Inférence
engine
© Groupe GENITECH 36
RETE
►Algorithme RETE (Charles Forgy – 1980)
►Rapide
►Gère
– Chaînage avant
– Un grand nombre de règles
– Un gros volume de données
– La validité d’un résultat au cours de l’exécution (règles inter-
dépendantes)
© Groupe GENITECH 37
Principe du RETE
►Cohérence garantie
– réévaluation constante
►Principe de « pattern matching »
► Données vérifiées « contre » les conditions des
règles
– Liste d’instances de règles candidates
– Réévaluation après chaque éxecution d’une règle
© Groupe GENITECH 38
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
© Groupe GENITECH 39
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
© Groupe GENITECH 40
Tout ce que vous voulez savoir sur …
Les BRMS
sans oser le demander
© Groupe GENITECH
Business Rules SystemBRMS
Rule GUIRules
Repository
L’architecture
41
Software
System GUI component
Model component
Persistency component
Rules component Rules Engine
Business User
IT Architect
Enter rules
Extract rules
Deploy rules
© Groupe GENITECH 42
Les composants
© Groupe GENITECH 43
Ruleflow
► Un workflow pour règles
© Groupe GENITECH 44
Différents types de règles
© Groupe GENITECH
BRMS : intégration
►Intégration Java / .NET
– Souvent simplissime
►Frameworks J2EE
– Déploiement à chaud
– Clustering / montée en charge
45
© Groupe GENITECH
BRMS : outils
►Gestion de configuration
– Edition
– Exécution
►Processus de déploiement
– Gestion des roles/droits
►Agilité
– Tests automatiques
46
© Groupe GENITECH 47
Exemple de Process
NEW
TEST
DEPLOYED
REJECTED
RETIRED
User, Developer
BA, Developer
BA, Developer
BA, Developer
User, Developer
© Groupe GENITECH 48
Les BRMS
retours d’experiences
© Groupe GENITECH 49
Les défis
►Identifier les décisions à externaliser
►Extraire / Organiser le métier
►Trouver le bon process
• Qui fait quoi ? BA, IT
• Comment on déploie ?
© Groupe GENITECH 50
Les faux problèmes
►Les performances
– Rarement un problème !!!!
►La mise en production rapide
– Attention !
► L’implication des utilisateurs
– Toujours un plus
© Groupe GENITECH 51
Les anti patterns
►Solution = Marteau
– problèmes = clous
►Cycle de vie court
– Bypassons les lourdeurs
• Gestion de conf, tests, validation ne sont pas a éliminer …
►Utilisateur, langage naturel
– C’est pas de l’informatique
• Allégeons les process pour la prod (test) … mais testons
© Groupe GENITECH 52
Impact sur le projet
►Ajout d’un nouvel axe de développement
– Axe règle
– Tâches/Rôles supplémentaires spécifiques aux règles
• Utilisateurs ….
– QA différente
• Tests unitaires ne sont pas des tests d’intégration
► Méthodologie liée aux règles
– Analyse/Capture
– Cycles itératifs
– Tests unitaires
– Travail main dans la main IT/BA
– Délégation progressive de responsabilité de IT vers BA
© Groupe GENITECH 53
BRMS du marché
►IBM / ILOG-JRules
►FICO Blaze Advisor
►Drools / RedHat JBoss Rules
►Corticon BRMS
► Pegasystems PegaRULES
etc…
► Non-BRMS
– Jess
© Groupe GENITECH 54
Les leaders
IBM / ILOG JRules
►Avantages:
– Historique  Outil complet et mature
– Beaucoup d’outils pour TOUT gérer
– Excellente intégration, surtout en J2EE (RES)
– Excellentes possibilités en langage naturel
– Excellents outils pour la délégation du pouvoir aux BAs
/ Policy Managers
– Moteur: intègre plusieurs algorithmes d’exécution
►Inconvénients:
– Ticket d’entrée ..
– Outil complet  Phase d’apprentissage plus longue
© Groupe GENITECH 55
Les leaders
Drools / RedHat JBoss Rules
►Avantages:
– Drools : Open source
– Wiki, mailing list
– Bons outils de gouvernance des règles
– Simple à intégrer
►Inconvénients:
– Edition en langage naturel moins puissante
– Outils de reporting limités
– Pas de framework d’intégration J2EE
– Tables de décision limitées

Contenu connexe

En vedette

X-PRIME Groupe - Notre vision de Facebook
X-PRIME Groupe - Notre vision de FacebookX-PRIME Groupe - Notre vision de Facebook
X-PRIME Groupe - Notre vision de FacebookX-PRIME GROUPE
 
Kursergebnis: Handmade Shop Dokumentation
Kursergebnis: Handmade Shop DokumentationKursergebnis: Handmade Shop Dokumentation
Kursergebnis: Handmade Shop DokumentationFH Düsseldorf
 
Autoroute du Maroc - eis3 fr
Autoroute du Maroc - eis3 frAutoroute du Maroc - eis3 fr
Autoroute du Maroc - eis3 frTwilight Eagle
 
Introducción a la epidemiologia
Introducción a la epidemiologiaIntroducción a la epidemiologia
Introducción a la epidemiologiaAna Nadal Ponce
 
Chine_conférence_Cadenac_2010
Chine_conférence_Cadenac_2010Chine_conférence_Cadenac_2010
Chine_conférence_Cadenac_2010Jean-Paul Chéno
 
Praesentation Online Befragung 2006 Steuerungsgremium Maerz 2006
Praesentation Online Befragung 2006 Steuerungsgremium Maerz 2006Praesentation Online Befragung 2006 Steuerungsgremium Maerz 2006
Praesentation Online Befragung 2006 Steuerungsgremium Maerz 2006wolfplum
 
Bhip global pleasur espanol
Bhip global pleasur espanolBhip global pleasur espanol
Bhip global pleasur espanolbhip
 
XING Produktoffensive im Herbst
XING Produktoffensive im HerbstXING Produktoffensive im Herbst
XING Produktoffensive im HerbstXING AG
 
Professions de foi 16 mai 2010
Professions de foi 16 mai 2010Professions de foi 16 mai 2010
Professions de foi 16 mai 2010Outremeuse
 
ESTRUCTURA DE LA TARJETA MADRE
ESTRUCTURA DE LA TARJETA MADREESTRUCTURA DE LA TARJETA MADRE
ESTRUCTURA DE LA TARJETA MADREdavid y chule
 

En vedette (20)

The magic cat_eye
The magic cat_eyeThe magic cat_eye
The magic cat_eye
 
Drugs
DrugsDrugs
Drugs
 
X-PRIME Groupe - Notre vision de Facebook
X-PRIME Groupe - Notre vision de FacebookX-PRIME Groupe - Notre vision de Facebook
X-PRIME Groupe - Notre vision de Facebook
 
Circunferencia ab
Circunferencia abCircunferencia ab
Circunferencia ab
 
Kursergebnis: Handmade Shop Dokumentation
Kursergebnis: Handmade Shop DokumentationKursergebnis: Handmade Shop Dokumentation
Kursergebnis: Handmade Shop Dokumentation
 
Autoroute du Maroc - eis3 fr
Autoroute du Maroc - eis3 frAutoroute du Maroc - eis3 fr
Autoroute du Maroc - eis3 fr
 
Introducción a la epidemiologia
Introducción a la epidemiologiaIntroducción a la epidemiologia
Introducción a la epidemiologia
 
Chine_conférence_Cadenac_2010
Chine_conférence_Cadenac_2010Chine_conférence_Cadenac_2010
Chine_conférence_Cadenac_2010
 
Praesentation Online Befragung 2006 Steuerungsgremium Maerz 2006
Praesentation Online Befragung 2006 Steuerungsgremium Maerz 2006Praesentation Online Befragung 2006 Steuerungsgremium Maerz 2006
Praesentation Online Befragung 2006 Steuerungsgremium Maerz 2006
 
Bhip global pleasur espanol
Bhip global pleasur espanolBhip global pleasur espanol
Bhip global pleasur espanol
 
XING Produktoffensive im Herbst
XING Produktoffensive im HerbstXING Produktoffensive im Herbst
XING Produktoffensive im Herbst
 
3 prueba historia tercero medio a
3 prueba historia tercero medio a3 prueba historia tercero medio a
3 prueba historia tercero medio a
 
China
ChinaChina
China
 
Paradojas
ParadojasParadojas
Paradojas
 
Ti cs
Ti csTi cs
Ti cs
 
T Iceberg
T  IcebergT  Iceberg
T Iceberg
 
Icare2
Icare2Icare2
Icare2
 
Coctel
CoctelCoctel
Coctel
 
Professions de foi 16 mai 2010
Professions de foi 16 mai 2010Professions de foi 16 mai 2010
Professions de foi 16 mai 2010
 
ESTRUCTURA DE LA TARJETA MADRE
ESTRUCTURA DE LA TARJETA MADREESTRUCTURA DE LA TARJETA MADRE
ESTRUCTURA DE LA TARJETA MADRE
 

Similaire à Introduction BRMS Paris JUG 20101109

BRMS JUG Toulouse 20100615
BRMS JUG Toulouse 20100615BRMS JUG Toulouse 20100615
BRMS JUG Toulouse 20100615JUG Toulouse
 
Presentation BRMS Toulouse JUG
Presentation BRMS Toulouse JUGPresentation BRMS Toulouse JUG
Presentation BRMS Toulouse JUGEmmanuel Bonnet
 
La puissance du machine learning et des algorithmes cart au service des métiers
La puissance du machine learning et des algorithmes cart au service des métiersLa puissance du machine learning et des algorithmes cart au service des métiers
La puissance du machine learning et des algorithmes cart au service des métiersMinitab, LLC
 
TDD où l’art de développer à l’endroit
TDD où l’art de développer à l’endroitTDD où l’art de développer à l’endroit
TDD où l’art de développer à l’endroitEspritAgile
 
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
 
jeu dispersion 6 sigma
jeu dispersion 6 sigmajeu dispersion 6 sigma
jeu dispersion 6 sigmaCIPE
 
Machine Learning, Intelligence Artificielle et Modélisation ARCHIMATE
Machine Learning, Intelligence Artificielle et Modélisation ARCHIMATEMachine Learning, Intelligence Artificielle et Modélisation ARCHIMATE
Machine Learning, Intelligence Artificielle et Modélisation ARCHIMATECOMPETENSIS
 
La Totale Productive Maintenance, TPM, Sa mise en place
La Totale Productive Maintenance, TPM, Sa mise en placeLa Totale Productive Maintenance, TPM, Sa mise en place
La Totale Productive Maintenance, TPM, Sa mise en placeJoel DUFLOT
 
L’analyticsOps est il le maillon faible de votre stratégie data ?
L’analyticsOps est il le maillon faible de votre stratégie data ?L’analyticsOps est il le maillon faible de votre stratégie data ?
L’analyticsOps est il le maillon faible de votre stratégie data ?Wiiisdom
 
Methodes_de_maintenance_TPM_Totale_Produ.pdf
Methodes_de_maintenance_TPM_Totale_Produ.pdfMethodes_de_maintenance_TPM_Totale_Produ.pdf
Methodes_de_maintenance_TPM_Totale_Produ.pdfTouhemiSyrina
 
Présentation du Progiciel ProPlus.Net:La solution de suivi de production à co...
Présentation du Progiciel ProPlus.Net:La solution de suivi de production à co...Présentation du Progiciel ProPlus.Net:La solution de suivi de production à co...
Présentation du Progiciel ProPlus.Net:La solution de suivi de production à co...Link Software International
 
IPSO Mgmt Présentation 6 Sigma
IPSO Mgmt Présentation 6 SigmaIPSO Mgmt Présentation 6 Sigma
IPSO Mgmt Présentation 6 SigmaD_Dahmane
 
Retours d’expérience sur la conduite de projets BI sur les technologies...
Retours d’expérience sur la conduite de projets BI sur les technologies...Retours d’expérience sur la conduite de projets BI sur les technologies...
Retours d’expérience sur la conduite de projets BI sur les technologies...Guillaume Meyer
 
Web-conference | DDMRP et flux tirés
Web-conference | DDMRP et flux tirésWeb-conference | DDMRP et flux tirés
Web-conference | DDMRP et flux tirésXL Groupe
 
Resolution de probleme conduite de projet et analyse de donnees webinaire-min...
Resolution de probleme conduite de projet et analyse de donnees webinaire-min...Resolution de probleme conduite de projet et analyse de donnees webinaire-min...
Resolution de probleme conduite de projet et analyse de donnees webinaire-min...Minitab, LLC
 
Jeu de la maintenance stratégie
Jeu de la maintenance stratégieJeu de la maintenance stratégie
Jeu de la maintenance stratégieCIPE
 
Gouvernance du Système d'Information Conférence Jean-Antoine Moreau
Gouvernance du Système d'Information Conférence Jean-Antoine MoreauGouvernance du Système d'Information Conférence Jean-Antoine Moreau
Gouvernance du Système d'Information Conférence Jean-Antoine MoreauJean-Antoine Moreau
 
Gestion de projets agiles avec Scrum.pdf
Gestion de projets agiles avec Scrum.pdfGestion de projets agiles avec Scrum.pdf
Gestion de projets agiles avec Scrum.pdfbadrfathallah2
 
Maitrise Statistique des Procedes : Impact d'un afflux de donnees sur les car...
Maitrise Statistique des Procedes : Impact d'un afflux de donnees sur les car...Maitrise Statistique des Procedes : Impact d'un afflux de donnees sur les car...
Maitrise Statistique des Procedes : Impact d'un afflux de donnees sur les car...Minitab, LLC
 

Similaire à Introduction BRMS Paris JUG 20101109 (20)

BRMS JUG Toulouse 20100615
BRMS JUG Toulouse 20100615BRMS JUG Toulouse 20100615
BRMS JUG Toulouse 20100615
 
Presentation BRMS Toulouse JUG
Presentation BRMS Toulouse JUGPresentation BRMS Toulouse JUG
Presentation BRMS Toulouse JUG
 
La puissance du machine learning et des algorithmes cart au service des métiers
La puissance du machine learning et des algorithmes cart au service des métiersLa puissance du machine learning et des algorithmes cart au service des métiers
La puissance du machine learning et des algorithmes cart au service des métiers
 
TDD où l’art de développer à l’endroit
TDD où l’art de développer à l’endroitTDD où l’art de développer à l’endroit
TDD où l’art de développer à l’endroit
 
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?
 
jeu dispersion 6 sigma
jeu dispersion 6 sigmajeu dispersion 6 sigma
jeu dispersion 6 sigma
 
Machine Learning, Intelligence Artificielle et Modélisation ARCHIMATE
Machine Learning, Intelligence Artificielle et Modélisation ARCHIMATEMachine Learning, Intelligence Artificielle et Modélisation ARCHIMATE
Machine Learning, Intelligence Artificielle et Modélisation ARCHIMATE
 
La Totale Productive Maintenance, TPM, Sa mise en place
La Totale Productive Maintenance, TPM, Sa mise en placeLa Totale Productive Maintenance, TPM, Sa mise en place
La Totale Productive Maintenance, TPM, Sa mise en place
 
L’analyticsOps est il le maillon faible de votre stratégie data ?
L’analyticsOps est il le maillon faible de votre stratégie data ?L’analyticsOps est il le maillon faible de votre stratégie data ?
L’analyticsOps est il le maillon faible de votre stratégie data ?
 
Methodes_de_maintenance_TPM_Totale_Produ.pdf
Methodes_de_maintenance_TPM_Totale_Produ.pdfMethodes_de_maintenance_TPM_Totale_Produ.pdf
Methodes_de_maintenance_TPM_Totale_Produ.pdf
 
Présentation du Progiciel ProPlus.Net:La solution de suivi de production à co...
Présentation du Progiciel ProPlus.Net:La solution de suivi de production à co...Présentation du Progiciel ProPlus.Net:La solution de suivi de production à co...
Présentation du Progiciel ProPlus.Net:La solution de suivi de production à co...
 
1305682.ppt
1305682.ppt1305682.ppt
1305682.ppt
 
IPSO Mgmt Présentation 6 Sigma
IPSO Mgmt Présentation 6 SigmaIPSO Mgmt Présentation 6 Sigma
IPSO Mgmt Présentation 6 Sigma
 
Retours d’expérience sur la conduite de projets BI sur les technologies...
Retours d’expérience sur la conduite de projets BI sur les technologies...Retours d’expérience sur la conduite de projets BI sur les technologies...
Retours d’expérience sur la conduite de projets BI sur les technologies...
 
Web-conference | DDMRP et flux tirés
Web-conference | DDMRP et flux tirésWeb-conference | DDMRP et flux tirés
Web-conference | DDMRP et flux tirés
 
Resolution de probleme conduite de projet et analyse de donnees webinaire-min...
Resolution de probleme conduite de projet et analyse de donnees webinaire-min...Resolution de probleme conduite de projet et analyse de donnees webinaire-min...
Resolution de probleme conduite de projet et analyse de donnees webinaire-min...
 
Jeu de la maintenance stratégie
Jeu de la maintenance stratégieJeu de la maintenance stratégie
Jeu de la maintenance stratégie
 
Gouvernance du Système d'Information Conférence Jean-Antoine Moreau
Gouvernance du Système d'Information Conférence Jean-Antoine MoreauGouvernance du Système d'Information Conférence Jean-Antoine Moreau
Gouvernance du Système d'Information Conférence Jean-Antoine Moreau
 
Gestion de projets agiles avec Scrum.pdf
Gestion de projets agiles avec Scrum.pdfGestion de projets agiles avec Scrum.pdf
Gestion de projets agiles avec Scrum.pdf
 
Maitrise Statistique des Procedes : Impact d'un afflux de donnees sur les car...
Maitrise Statistique des Procedes : Impact d'un afflux de donnees sur les car...Maitrise Statistique des Procedes : Impact d'un afflux de donnees sur les car...
Maitrise Statistique des Procedes : Impact d'un afflux de donnees sur les car...
 

Introduction BRMS Paris JUG 20101109

  • 1. © Groupe GENITECH 1 Les BRMS Business Rules Management System
  • 2. © Groupe GENITECH Présentations 2 ►Emmanuel Bonnet ►ebonnet (at) genigraph.fr ►Responsable Dpt Conseil ►Consultant, Expert BRMS ►Formateur IBM/Ilog JRules / JBoss Rules ►Génigraph ►SSII 100% orienté Objet ►SSII –RM (Règles Métier) ! ►www.genigraph.fr
  • 3. © Groupe GENITECH 3 Les BRMS …
  • 4. © Groupe GENITECH Les règles métiers Les moteurs de règles Le BRMS 4
  • 5. © Groupe GENITECH 5 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%
  • 6. © Groupe GENITECH Un moteur d’inférence 6 Inférence engine
  • 7. © Groupe GENITECH Un BRMS ►Gestion du cycle de vie –Règles métier ►Ecriture -> Exécution – Versioning – Process : Validation, Test 7
  • 8. © Groupe GENITECH 8 BRMS : what’s in it for me ? ►Externaliser ►Expliciter ►Gérer ► Des décisions métier ► Nichées dans un applicatif
  • 9. © Groupe GENITECH 9 Logique technique Décisions métiers Externaliser ?
  • 10. © Groupe GENITECH 10 BRMS : Externaliser ►Logique métier extérieure à l’application ► Modifiable ► indépendant du code applicatif ► Cycles courts ►Existe-t-il un besoin ?
  • 11. © Groupe GENITECH 11 Cycle de vie des règles ► Le cycle de vie des règles change plus souvent que celui de l’application Sans BRMS: Avec BRMS: Application Règles
  • 12. © Groupe GENITECH 12 Expliciter ? 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%
  • 13. © Groupe GENITECH 13 BRMS : Expliciter ►Compréhensible ► Métier lisible / visible ►Modifiable ► Pas besoin des informaticiens ►Traçable ► On peut « relire » la séquence d’une décision
  • 14. © Groupe GENITECH 14 Gérer ? 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% Si le conducteur n’a pas eu d’accident depuis 6 ans Et le bonus actuel du conducteur est 0.8 Alors appliquer au conducteur une remise de 15% Si le conducteur n’a pas eu d’accident depuis 10 ans Et le bonus actuel du conducteur est 0.8 Alors appliquer au conducteur une remise de 15%
  • 15. © Groupe GENITECH 15 BRMS :Gérer ►Décisions Métier ► Stockée / Référencées ►Organisation des connaissances ► Searchable !! ► Exécutable !!!
  • 16. © Groupe GENITECH 16 Projets : the Usual Suspects ►Le métier change souvent ► « encore un nouveau requirement ! » ►La connaissance est très pointue ► «SVP, pas d’informaticien !» ►Des décisions doivent être tracées ► « Pourquoi cette décision ? » ► Initialiser des données …..
  • 17. © Groupe GENITECH 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
  • 18. © Groupe GENITECH 18 Tout ce que vous voulez savoir sur … Les règles métiers sans oser le demander
  • 19. © Groupe GENITECH 19 Une règle, c’est quoi? If … and/or … Then … (Else … )
  • 20. © Groupe GENITECH 20 Le métier, c’est quoi? La rédaction de spécifications ? La présence à des réunions ? La gestion des prestataires ? « Le savoir du client »
  • 21. © Groupe GENITECH 21 Les règles métier, c’est quoi Du code ? Une implémentation technique ? Des Design patterns ? Une application informatique ? « Le savoir du client » Sous la forme IF THEN
  • 22. © Groupe GENITECH 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%
  • 23. © Groupe GENITECH 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%
  • 24. © Groupe GENITECH 24 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%
  • 25. © Groupe GENITECH 25 Mapping Grammaire / Langage usuel + Concept / Attributs / Traitements = Mapping entre langages naturel  orienté objet
  • 27. © Groupe GENITECH Règle métier : résumé ►Le savoir du client ►En langage naturel – Structuré • Formalisme : IF / THEN • Grammaire ►Traduction informatique – Mapping vers langages objets – Sorte de « Compilation » 27
  • 28. © Groupe GENITECH Sous le capot ? (JBoss Rules) 28
  • 29. © Groupe GENITECH Le Langage naturel ►Parlons en …. ► Les utilisateurs qui lisent des règles !!!! – Ils peuvent écrire aussi ? ►N’est ce pas un mythe ? » Java = grammaire + vocabulaire » Sécurité, simplicité, lisibilité 29
  • 30. © Groupe GENITECH 30 Tout ce que vous voulez savoir sur … Les moteurs de règles sans oser le demander
  • 31. © Groupe GENITECH Moteur de règle ►Exécute – les règles en regards de faits ►Optimise (Volume) ►Garantit la cohérence (Séquence / Contexte) 31
  • 32. © Groupe GENITECH 32 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 «
  • 33. © Groupe GENITECH La structure (1/3) 33 Inférence engine
  • 34. © Groupe GENITECH La structure (2/3) 34 Inférence engine
  • 35. © Groupe GENITECH La structure (3/3) 35 Inférence engine
  • 36. © Groupe GENITECH 36 RETE ►Algorithme RETE (Charles Forgy – 1980) ►Rapide ►Gère – Chaînage avant – Un grand nombre de règles – Un gros volume de données – La validité d’un résultat au cours de l’exécution (règles inter- dépendantes)
  • 37. © Groupe GENITECH 37 Principe du RETE ►Cohérence garantie – réévaluation constante ►Principe de « pattern matching » ► Données vérifiées « contre » les conditions des règles – Liste d’instances de règles candidates – Réévaluation après chaque éxecution d’une règle
  • 38. © Groupe GENITECH 38 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
  • 39. © Groupe GENITECH 39 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
  • 40. © Groupe GENITECH 40 Tout ce que vous voulez savoir sur … Les BRMS sans oser le demander
  • 41. © Groupe GENITECH Business Rules SystemBRMS Rule GUIRules Repository L’architecture 41 Software System GUI component Model component Persistency component Rules component Rules Engine Business User IT Architect Enter rules Extract rules Deploy rules
  • 42. © Groupe GENITECH 42 Les composants
  • 43. © Groupe GENITECH 43 Ruleflow ► Un workflow pour règles
  • 44. © Groupe GENITECH 44 Différents types de règles
  • 45. © Groupe GENITECH BRMS : intégration ►Intégration Java / .NET – Souvent simplissime ►Frameworks J2EE – Déploiement à chaud – Clustering / montée en charge 45
  • 46. © Groupe GENITECH BRMS : outils ►Gestion de configuration – Edition – Exécution ►Processus de déploiement – Gestion des roles/droits ►Agilité – Tests automatiques 46
  • 47. © Groupe GENITECH 47 Exemple de Process NEW TEST DEPLOYED REJECTED RETIRED User, Developer BA, Developer BA, Developer BA, Developer User, Developer
  • 48. © Groupe GENITECH 48 Les BRMS retours d’experiences
  • 49. © Groupe GENITECH 49 Les défis ►Identifier les décisions à externaliser ►Extraire / Organiser le métier ►Trouver le bon process • Qui fait quoi ? BA, IT • Comment on déploie ?
  • 50. © Groupe GENITECH 50 Les faux problèmes ►Les performances – Rarement un problème !!!! ►La mise en production rapide – Attention ! ► L’implication des utilisateurs – Toujours un plus
  • 51. © Groupe GENITECH 51 Les anti patterns ►Solution = Marteau – problèmes = clous ►Cycle de vie court – Bypassons les lourdeurs • Gestion de conf, tests, validation ne sont pas a éliminer … ►Utilisateur, langage naturel – C’est pas de l’informatique • Allégeons les process pour la prod (test) … mais testons
  • 52. © Groupe GENITECH 52 Impact sur le projet ►Ajout d’un nouvel axe de développement – Axe règle – Tâches/Rôles supplémentaires spécifiques aux règles • Utilisateurs …. – QA différente • Tests unitaires ne sont pas des tests d’intégration ► Méthodologie liée aux règles – Analyse/Capture – Cycles itératifs – Tests unitaires – Travail main dans la main IT/BA – Délégation progressive de responsabilité de IT vers BA
  • 53. © Groupe GENITECH 53 BRMS du marché ►IBM / ILOG-JRules ►FICO Blaze Advisor ►Drools / RedHat JBoss Rules ►Corticon BRMS ► Pegasystems PegaRULES etc… ► Non-BRMS – Jess
  • 54. © Groupe GENITECH 54 Les leaders IBM / ILOG JRules ►Avantages: – Historique  Outil complet et mature – Beaucoup d’outils pour TOUT gérer – Excellente intégration, surtout en J2EE (RES) – Excellentes possibilités en langage naturel – Excellents outils pour la délégation du pouvoir aux BAs / Policy Managers – Moteur: intègre plusieurs algorithmes d’exécution ►Inconvénients: – Ticket d’entrée .. – Outil complet  Phase d’apprentissage plus longue
  • 55. © Groupe GENITECH 55 Les leaders Drools / RedHat JBoss Rules ►Avantages: – Drools : Open source – Wiki, mailing list – Bons outils de gouvernance des règles – Simple à intégrer ►Inconvénients: – Edition en langage naturel moins puissante – Outils de reporting limités – Pas de framework d’intégration J2EE – Tables de décision limitées