W ciągu 10 lat doświadczeń z silnikiem reguł biznesowych Drools, bazując zarówno na własnych projektach, jak i doświadczeniach klientów, dla których prowadziłem konsultacje lub szkolenia, wyrobiłem sobie pogląd, iż wdrożenie silnika reguł biznesowych, czy szerzej rozwiązania klasy BRMS (business rules management system), nie jest rzeczą łatwą. Powiem więcej, odnoszę wrażenie że dla sporej część klientów przyjęcie tego podejścia wniosło więcej problemów niż rozwiązało. Pojawia się wiele zagadnień w kontekście technologii Drools (czy wogóle rozwiązań tej klasy), które powinny być dobrze przemyślane.
Na przykład:
- jakie są faktyczne wskazania do użycia tej technologii, jakie są przeciwskazania i alternatywy,
- jak poprawnie zaprojektować model danych oraz rozwiązanie regułowe,
- jak zintegrować rozwiązanie regułowe z aplikacją,
- jak tak naprawdę działa silnik Drools, jakie są pułapki i zagrożenia,
- czy i kiedy osoba nietechniczna może zmieniać reguły,
- jak zapewnić jakość,
- jakie są dobre praktyki --- programistyczne i organizacyjne.
Omówienie wszystkich zagadnień wymagać będzie co najmniej kilku artykułów.
Pierwszy z nich chciałbym poświęcić na wyjaśnienie na czym polega rozwiązanie oparte na regułach biznesowych oraz procesach biznesowych, jakie są główne obietnice jakie składają dostawcy tych rozwiązań oraz jakie są wspólne płaszczyzny między nimi. Czym jest silnik reguł a czym system BRMS. Wreszcie, chciałbym przekazać intuicję w jakich scenariuszach użycie silnika reguł będzie sensownym rozwiązaniem, a w jakich przyniesie to więcej kłopotów niż korzyści i jakie są alternatywne rozwiązania.