720 likes | 973 Views
1. Analiza silników reguł biznesowych. Autor: Jan Waloch nr indeksu: 4374. Promotor : dr hab. prof. WWSI Michał Grabowski. WARSZAWA 2012. Analiza silników reguł biznesowych.
E N D
Analiza silników reguł biznesowych Autor: Jan Walochnr indeksu: 4374 Promotor: dr hab. prof. WWSI Michał Grabowski WARSZAWA 2012
Analiza silników reguł biznesowych Osiągnięcie celu pracy wymagało rozwiązania następującego głównego problemu badawczego:Jakimi atrybutami cechują się wybrane silniki reguł biznesowych?
Analiza silników reguł biznesowych Pozytywne rozwiązanie problemu badawczego wymagało sformułowania i odpowiedzi następujących problemów szczegółowych: Jakimi atrybutami cechuje się powstający system informatyczny? Jaki poziom wiedzy cechuje środowisko, w jakim powstaje system informatyczny? Jakie można prognozować tendencje rozwoju silników reguł biznesowych w tworzeniu systemów informatycznych?
Analiza silników reguł biznesowych Proces badań wymaga zweryfikowania hipotezy roboczej:Użycie środowiska reguł biznesowych do implementacji logiki biznesowej ułatwia konserwację i modyfikację w systemach informatycznych.
Analiza silników reguł biznesowych Osiągnięcie założonego celu pracy oraz rozwiązanie szczegółowych problemów badawczych wymagało zastosowania następujących metod badawczych:Metoda analizy, którą zastosowano do analizy literatury przedmiotu i wyników uzyskanych podczas częściowej implementacji logiki biznesowej systemu informatycznego.Metoda syntezy, którą zastosowano do zebrania wniosków uzyskanych z analizy literatury przedmiotu badanego zjawiska i wyników uzyskanych podczas częściowej implementacji logiki biznesowej systemu informatycznego.
Analiza silników reguł biznesowych Osiągnięcie założonego celu pracy oraz rozwiązanie szczegółowych problemów badawczych wymagało zastosowania następujących metod badawczych:Metoda analogii, która posłużyła do przeniesienia ogólnych trendów w rozwoju oprogramowania, na implementację logiki biznesowej. Taksonomia numeryczna, która posłużyła do oceny atrybutów silników reguł biznesowych.
Analiza silników reguł biznesowych Otoczenie systemu informatycznego. • Analiza systemu informatycznego. • Wymagania. • Modelowanie. • Architektury projektowe systemów informatycznych.
Analiza silników reguł biznesowych Rodzaje metod implementacji systemu informatycznego • Sekwencyjne. • Strukturalne. • Proceduralne. • Modułowe. • Obiektowe.
Analiza silników reguł biznesowych Narzędzia i środowiska wspierające proces wytwarzania systemu informatycznego. • Metodyki. • Wzorce projektowe.
Analiza silników reguł biznesowych Obszary biznesowe i ich integracja w systemach informatycznych. • Pożądane cechy systemów informatycznych • Precyzyjny interfejs danych wejściowych. • Elastyczny moduł przetwarzania.
Analiza silników reguł biznesowych Sposoby implementacji logiki biznesowej w systemach informatycznych • Funkcje i Modularność. • Biblioteki funkcji, Biblioteki podłączane dynamicznie (DLL) • Klasy • Technologia COM i DCOM • Logika biznesowa w bazie danych. • Deklaratywny język opisu. • Oszczędność zasobów. • Wielodostępność.
Analiza silników reguł biznesowych Sposoby implementacji logiki biznesowej w systemach informatycznych • Silniki reguł biznesowych - Przegląd cech • Architektura: Otwarta, Zamknięta, Częściowa, Całkowita • Wsparcie edukacyjne: Gotowe scenariusze użycia, Pomoc on-line. • Środowisko uruchomieniowe: Zależne od platformy systemu informatycznego, • Interfejs użytkownika: Graficzny interfejs użytkownika, Język obsługi reguł biznesowych, Wersjonowanie
Analiza silników reguł biznesowych Sposoby implementacji logiki biznesowej w systemach informatycznych • Silniki reguł biznesowych - Przegląd cech • Koszty drożenia: Oprogramowanie „open source”, Oprogramowanie komercyjne • Obsługiwane standardy implementacji reguł: Maszyna stanowa, Model sekwencyjny • Skalowalność: Autoryzacja użytkowników, Podział funkcji ze względu na role użytkowników, • Rodzaj dystrybucji: Aplikacja, Usługa
Analiza silników reguł biznesowych Sposoby implementacji logiki biznesowej w systemach informatycznych • Silniki reguł biznesowych - Przegląd cech • Migracja i integracja: Zapewniające narzędzie wspierające migrację danych, Nie zapewniające narzędzia wspierającego migrację danych. • Dostosowanie: Biblioteki API, Dynamiczna konfiguracja, Kreatory interfejsu użytkownika, Lokalizacja • Modele wykonawcze: Synchroniczny, Asynchroniczny
Analiza silników reguł biznesowych Przykładowe wymagania wobec logiki biznesowej Sekwencyjne – Algorytm wyliczenia WIG’u • N – liczba spółek uwzględnionych w indeksie (wszystkie spółki rynku podstawowego) • – wartość WIG w chwili t • – liczba akcji i-tej spółki w okresie t • – kurs akcji i-tej spółki w okresie t • - liczba akcji i-tej spółki w okresie podstawowym • – kurs akcji i-tej spółki w okresie podstawowym • – współczynnik korygujący, którego uwzględnienie pozwala na wyliczenie indeksu
Analiza silników reguł biznesowych Przykładowe wymagania wobec logiki biznesowej Stanowe – Proces akceptacji faktury
Analiza silników reguł biznesowych Silniki reguł biznesowych – przykładowe implementacje • Bonita • JBoss Drools • Microsoft Workflow Fundation
Główne menu Diagram przepływu Analiza silników reguł biznesowych • Bonita Silniki reguł biznesowych – przykładowe implementacje Pasek narzędziowy Właściwości zaznaczonego obiektu
Komponenty aktywności Komponenty sterowania przepływem Komponenty procesowe Analiza silników reguł biznesowych • Bonita Silniki reguł biznesowych – przykładowe implementacje Komponenty zaawansowanego dopasowania Komponenty stanów inicjalnych i terminalnych
Analiza silników reguł biznesowych • Bonita Silniki reguł biznesowych – przykładowe implementacje Bramka OR - Wyjście Bramka OR - Wejście Bramka AND - Wyjście Bramka AND - Wejście
Analiza silników reguł biznesowych • Bonita Silniki reguł biznesowych – przykładowe implementacje Bramka inkluzji
Analiza silników reguł biznesowych • Bonita – Łączniki Silniki reguł biznesowych – przykładowe implementacje Zasada działania łącznika - konfiguracja zamiast kodu w celu wymiany danych z zewnętrznym systemem Łączniki do innych systemów.
Analiza silników reguł biznesowych • Bonita – Kreatory formularzy Silniki reguł biznesowych – przykładowe implementacje Edytor formularza wprowadzania danych. Formularz tworzenia widoku - wybór zmiennych, prezentowanych dla użytkownika ludzkiego
Miejsce wpisania wyrażenia Analiza silników reguł biznesowych • Bonita – Wprowadzanie reguły biznesowej Silniki reguł biznesowych – przykładowe implementacje Formularz edycyjny przejścia z miejscem określenia reguły biznesowej Określanie reguły biznesowej przy pomocy edytora.
Analiza silników reguł biznesowych • Bonita – Przykład implementacji ścieżki akceptacji dokumentu faktury. Silniki reguł biznesowych – przykładowe implementacje
Analiza silników reguł biznesowych • Bonita – Przykład implementacji ścieżki akceptacji dokumentu faktury. Silniki reguł biznesowych – przykładowe implementacje Określenie zmiennych procesu obsługi faktury Przykład wykorzystania zmiennej.
Analiza silników reguł biznesowych • Bonita – Przykład implementacji algorytmu wyliczenia WIG’u Silniki reguł biznesowych – przykładowe implementacje
Analiza silników reguł biznesowych • Bonita – Przykład implementacji algorytmu wyliczenia WIG’u Silniki reguł biznesowych – przykładowe implementacje
Analiza silników reguł biznesowych • Bonita – Podsumowanie Silniki reguł biznesowych – przykładowe implementacje • Szybka implementacja systemów, opartych o przepływ stanowy • Intuicyjny diagram przepływu (oparty na BPMN) • Bogaty zbiór kreatorów. • Bogata dokumentacja techniczna • Architektura niezależna od Systemu Operacyjnego.
Analiza silników reguł biznesowych Bonita – przegląd cech
Analiza silników reguł biznesowych Bonita – przegląd cech
Analiza silników reguł biznesowych Bonita – przegląd cech
Analiza silników reguł biznesowych Bonita – przegląd cech
Analiza silników reguł biznesowych • JBoss Drools - Składniki Silniki reguł biznesowych – przykładowe implementacje • Guvnor • Expert • Fusion • jBPM • Planner
Analiza silników reguł biznesowych • JBoss Drools – Przykład zapisu reguły biznesowej Silniki reguł biznesowych – przykładowe implementacje rule when Ser( $czedar : nazwa == "cheddar" ) $osoba : Osoba( ulubionySer == $czedar ) then System.out.println( $osoba.getImie() + " lubi cheddar" ); end
Analiza silników reguł biznesowych • JBoss Drools – Zastosowanie Silniki reguł biznesowych – przykładowe implementacje • Nieokreśloność rozwiązania. • Brak widocznego algorytmu rozwiązania. • Zmienność logiki. • Wiedza ekspercka.
Analiza silników reguł biznesowych • JBoss Drools – Wybór cech Silniki reguł biznesowych – przykładowe implementacje • Tekstowy język opisu reguł biznesowych. • Stanowe i bezstanowe podejście.
Analiza silników reguł biznesowych • JBoss Drools – Przykład implementacji ścieżki akceptacji dokumentu faktury Silniki reguł biznesowych – przykładowe implementacje packagefaktura importimpl.Faktura; rule "Walidacja daty i kwot faktury" when $f : Faktura (dataFaktury == null || kwotaNetto <0 || kwotaBrutto <0) then $f.setPoprawna(false); $f.setZaakceptowana(false); $f.setKomentarz("Niepoprawne dane faktury, data faktury nie może być pusta, kwoty nie mogą być ujemne."); end
Analiza silników reguł biznesowych • JBoss Drools – Przykład implementacji ścieżki akceptacji dokumentu faktury – c.d. Silniki reguł biznesowych – przykładowe implementacje rule"Walidacja numeru przypisanego zamówienia do faktury" when $f : Faktura (nrPrzypisanegoZamowienia == null) then $f.setPoprawna(false); $f.setKomentarz("Faktura musi mieć przypisany numer zamówienia"); end
Analiza silników reguł biznesowych • JBoss Drools – Przykład implementacji ścieżki akceptacji dokumentu faktury – c.d. Silniki reguł biznesowych – przykładowe implementacje rule"Automatyczna akceptacja faktury o kwocie niższej niż 200" when $f : Faktura (kwotaBrutto < 200, poprawna) then $f.setZaakceptowana(true); end rule "Jeżeli faktura jest na 200 i więcej złotych musi być zaakceptowana przez kierownika pionu" when $f : Faktura (kwotaBrutto >= 200) then $f.setWymagaAkceptacjiKierownikaPionu(true); end
Analiza silników reguł biznesowych • JBoss Drools – Przykład implementacji algorytmu wyliczenia WIG’u. Silniki reguł biznesowych – przykładowe implementacje package wig importwig.WigConstans; importjava.util.Date; importwig.WigWyliczenie; globalwig.WigWyliczeniewigWyliczenie; rule "Akcja należy do rynku pierwotnego" no-loop dialect "java" when $a : Akcja(dataPublikacji == WigConstans.DATA_RYNKU_PIERWOTNEGO) then wigWyliczenie.setSumaPierwotna(wigWyliczenie.getSumaPierwotna()+((double)$a.getIlosc() * $a.getKurs())); end
Analiza silników reguł biznesowych • JBoss Drools – Przykład implementacji algorytmu wyliczenia WIG’u. Silniki reguł biznesowych – przykładowe implementacje rule "Akcja należy do rynku obecnego" no-loop dialect "java" when $a : Akcja(dataPublikacji != WigConstans.DATA_RYNKU_PIERWOTNEGO) then wigWyliczenie.setSumaObecna(wigWyliczenie.getSumaObecna()+((double)$a.getIlosc() * $a.getKurs())); end
Analiza silników reguł biznesowych • JBoss Drools – Podsumowanie Silniki reguł biznesowych – przykładowe implementacje • Cechy: • Elastyczne środowisko • Łatwe wprowadzanie reguł • Przejrzysta składnia • Możliwość określania tabel decyzyjnych w arkuszach MsExcel • Nieintuicyjne powiadamianie o błędach.
Analiza silników reguł biznesowych • JBoss Drools – przegląd cech Silniki reguł biznesowych – przykładowe implementacje
Analiza silników reguł biznesowych • JBoss Drools – przegląd cech Silniki reguł biznesowych – przykładowe implementacje
Analiza silników reguł biznesowych • JBoss Drools – przegląd cech Silniki reguł biznesowych – przykładowe implementacje
Analiza silników reguł biznesowych • Microsoft Workflow Fundation Silniki reguł biznesowych – przykładowe implementacje Microsoft Visual Studio 2010 z uruchomionym diagramem przepływu w Workflow Fundation
Analiza silników reguł biznesowych • Microsoft Workflow Fundation Silniki reguł biznesowych – przykładowe implementacje Aktywność na diagramie przepływu Aktywność – widok na pasku narzędziowym
Analiza silników reguł biznesowych • Microsoft Workflow Fundation Silniki reguł biznesowych – przykładowe implementacje Aktywność na diagramie przepływu Aktywność – widok na pasku narzędziowym