Reguły do wymiany

Stosowanie motorów reguł ma doprowadzić do ujednolicenia definicji procesów biznesowych w skali firmy.

Stosowanie motorów reguł ma doprowadzić do ujednolicenia definicji procesów biznesowych w skali firmy.

Technologia reguł biznesowych powstała jeszcze w latach 70. jako jeden z efektów badań naukowych nad sztuczną inteligencją. Pierwsze produkty wykorzystujące tę koncepcję - dodatki do aplikacji dla systemów mainframe - pojawiły się na rynku na początku lat 80.

Początkowo rozwiązania takie, jak prowadzony pod auspicjami IBM projekt San Francisco były tak skomplikowane, trudne w użyciu i kosztowne, że nie spotkały się z zainteresowaniem przedsiębiorstw. Ostatnio jednak, dzięki możliwościom jakie stwarza technologia usług sieciowych (web services), koncepcja przetwarzania opartego na regułach zyskuje zupełnie nowy wymiar.

Zmiany niemile widziane

Reguły biznesowe to zdania logiczne opisujące działalność firmy - od ogólnych wizji i strategii, aż po szczegółowe procedury dotyczące np. polityki cenowej czy obsługi klienta. Reguły nie zawsze przyjmują formę pisemną. Wiele z nich mieści się w pojęciu kultury firmy, codziennej praktyce czy wiedzy zawodowej pracowników (know-how). Reguła biznesowa ma zwykle charakter zdania warunkowego: JEŻELI (warunek), TO (czynność do wykonania). Przykładowo:

JEŻELI suma zakupów klienta w tym miesiącu ma wartość większą niż 1000 złotych; TO daj 5% upustu od wartości aktualnego wózka.

Istnieje zgoda co do tego, że starannie uchwycone, wyrażone formalnie i systematycznie zarządzane reguły biznesowe mogą stać się potężnym narzędziem wspomagającym zarządzanie przedsiębiorstwem. Między teorią a praktyką istnieje jednak przepaść.

We współczesnej praktyce inżynierii oprogramowania reguły biznesowe są umieszczane bezpośrednio w kodzie aplikacji lub w środowisku bazy danych - w formie tzw. wyzwalaczy (triggers) i procedur składowanych (stored procedures). Typowa aplikacja biznesowa zawiera przeciętnie kilka tysięcy reguł, a więc od kilkudziesięciu do kilkuset stron kodu w języku 3GL lub 4GL. Osadzanie reguł w kodzie zwiększa ryzyko powstawania błędów i utrudnia migrację do kolejnych wersji. Co więcej, gdy te same reguły muszą być zapisane w kilku współpracujących ze sobą aplikacjach, zachowanie spójności reguł staje się zadaniem niezwykle trudnym.

Użytkownik systemu informatycznego zwykle nie ma narzędzi umożliwiających korygowanie reguł zgodnie ze zmieniającymi się potrzebami biznesu. Można by wprawdzie uznać za nie niektóre narzędzia konfiguracyjne, jednak wzrost ich możliwości i elastyczności zawsze idzie w parze ze zwiększeniem poziomu trudności ich obsługi. W praktyce przeniesienie zmian w regułach biznesowych do systemu informatycznego wymaga zatrudnienia programistów, co jest czasochłonne i kosztowne. Z tych właśnie powodów wiele firm ogranicza się do wprowadzania do systemu tylko niezbędnych zmian, np. wynikających ze zmian przepisów.

Narzędzia na nowe czasy

Próbą przezwyciężenia tego impasu jest nowa generacja narzędzi informatycznych, zwanych motorami reguł. Zamiast języka programowania, użytkownik ma do dyspozycji łatwy do zrozumienia język pojęć biznesowych. Reguły zdefiniowane na wysokim poziomie abstrakcji są następnie automatycznie przekształcane w kod wykonywalny, co znacznie upraszcza i skraca ścieżkę od pomysłu do realizacji, a ponadto umożliwia wydzielenie reguł biznesowych jako części wspólnej wszystkich aplikacji.

Technologia reguł biznesowych ma pozwolić na to, aby użytkownik mógł samodzielnie - bez udziału programisty - tworzyć i dowolnie modyfikować kompilowalne i wykonywalne specyfikacje reguł biznesowych. Z punktu widzenia architektury aplikacji motor reguł stanowi wydzieloną warstwę logiczną, która przechowuje reguły umieszczane dotychczas w innych warstwach: kodzie aplikacji klienckich, procedurach składowanych itp.

Działanie motoru reguł przypomina działanie serwera baz danych: za pośrednictwem zestawu interfejsów API udostępniana jest innym warstwom i aplikacjom zawartość repozytorium reguł. Technologia usług sieciowych pozwala ponadto na stworzenie centralnego zbioru reguł biznesowych, dostępnego nie tylko dla wszystkich wykorzystywanych w firmie aplikacji, ale także dla aplikacji klientów i partnerów biznesowych.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200