Drools

Drools - Silnik regul biznesowych. Implementuje on JSR-94 (Java Specification Request for a Java Rules Engine API - standard określający spójny interfejs do komunikacji z silnikiem reguł, mechanizm dostępu do poszczególnych faktów z poziomu programu, oraz wymagania, które muszą być spełnione przez silniki reguł jak i ograniczenia i limity stawiane kompilatorom). Drools wykorzystuje algorytm RETE, który na podstawie reguł buduje drzewo warunków w pamięci produkcyjnej i umożliwia przetwarzanie faktów umieszczonych w pamięci podręcznej.

BRMS (Business Rules Management System) czyli System do zarządzania regułami biznesowymi. BRMS jest aplikacja web’ową, dostęp do niej jest możliwy za pomocą cienkiego klienta czyli zwykłej przeglądarki internetowej, co daje możliwość dostępu dla wielu użytkowników równocześnie. Przeznaczona jest do użytkowników nie pracujących w żadnym IDE czy edytorze tekstowym. BRMS jest komponentem Jboss Rules, który umożliwia zarządzanie, składowanie, edycje reguł. BRMS - służy również do uruchamiania reguł tzn. jest RuleAgent'em do którego „wrzucamy” fakty, które on następnie przetwarza dostępnymi regułami. BRMS może być centralnym silnikiem regułowym dla wielu aplikacji.

Konfiguracja w IA

Na serwerze borg uruchomiony jest Jboss Aplication Server w wersji 4.2.2GA.

Jboss AS nasłuchuje na porcie 3729.

Przeglądarka MUSI!! mieć włączoną obsługe JAvaScript oraz Cookies

Dostęp

Dostęp do aplikacji BRMS po utworzeniu tunelu ssh z forwardowaniem portów

ssh -L localhost:3729:149.156.111.172:3729 borg.ia.agh.edu.pl

http://localhost:3729/drools-jbrms

Przykładowe aplikacje

Dostęp na borgu: http://localhost:3729/insurance/

Insurance Company Risk Factor and Policy price (BRMS)

(Dokumentacja drools Insurance example)

Przykładowa aplikacja do obliczania wysokości ubezpieczenia za samochód. Proszę pozmieniać parametry aby zobaczyć jak obliczana jest wysokość ubezpieczenia. Zmieniając reguły w BRMS zmieniamy sposób obliczania ubezpieczenia. Nie wymaga to żadnej ingerencji w aplikacji klienckiej.

Aby zmiany reguł zostały zaczytane przez aplikacje kliencka należy:

  1. Zalogować się do BRMS
  2. Przejście do Packages
  3. Wybieramy pakiet org.acme.insurance.base
  4. Przejście do Build, validate and deploy
  5. Build a package
  6. Create a snapshot for deployment.
  7. Choose or create snapshot name: wybieramy InsuranceDemo a następnie Create new snapshot, powinnien pojawić sie komunikat o powodzeniu przy budowaniu snapshota

Po wykonaniu tych kroków zmiany w regułach zostaną już odczytane przez aplikacje kliencką.

W sekcji Deployment - po wybraniu pakietu org.acme.insurance.base a następnie przy InsuranceDemo wybieramy Open. Ekran będzie zawierał podstawowe informacje na temat zbudowanego pakietu. Najważniejsze to adres pod jakim adresem dostępny jest zbudowany pakiet:

Package URI: http://149.156.111.172:3729/drools-jbrms/org.drools.brms.JBRMS/package/org.acme.insurance.base/InsuranceDemo

Dodawanie własnych przykładów

Import z pliku DRL

  1. Zalogowanie do BRMS
  2. Utworzenie nowej kategorii - Admin→Create new category np. DroolsHelloWorld
  3. Utworzenie nowego pakietu - Packages wybieramy z górnego meny ikonke dodania pakietu a następnie import z pliku drl.

(Przykładowy plik drl Plik DRL import utworzy pakiet com.sample) W kolejnych krokach można zbudowac pakiet i snapshot tak jak jest to opisane wyżej.

Aplikaja kliencka …

pl/miw/drools_uzycie.txt · ostatnio zmienione: 2019/06/27 15:50 (edycja zewnętrzna)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0