Ou dit autrement : dans quels cas peut-on avoir besoin d’un moteur de règles métier (ou Business Rules Management System – BRMS) ? La réponse est : dans toutes les applications métiers nécessitant la mise en place de règles fonctionnelles, simples ou complexes, mais surtout pouvant potentiellement connaître des changements au cours du temps.
Prenons un exemple : un site d’E-commerce met souvent en place un système permettant de fidéliser la clientèle. Au bout de X commandes, ou après un certain montant dépensé, le client peut soit avoir des réductions, soit des cadeaux, etc …
Toutes les conditions permettant d’offrir un avantage au client, et la nature elle-même de cet avantage, évoluent au cours du temps, en même temps que les nouvelles offres, les périodes de promotions, ou de tout autre événement.
Si tous ces éléments sont codés « en dur » dans l’application, on obtient un cycle de développement, de test et de mise en production à chaque changement ! Avec une intervention des équipes fonctionnelles et techniques (de développement et de déploiement).
Avec un moteur de règles, un seul développement initial : toutes les données pouvant potentiellement jouer sur les avantages client sont transmises au moteur. Ce dernier, en fonction de sa configuration, choisit les données qui sont intéressantes, effectue les comparaisons et calculs nécessaires et au final fournit en résultat un avantage client à offrir.
Seule une modification de la configuration est nécessaire pour changer le comportement du système. Seule une intervention de l’équipe métier est nécessaire. On imagine aisément les gains en coût, mais surtout en délais de déploiement, que cela peut apporter.