RuleXpress

Komercyjny produkt firmy RuleArts przeznaczony dla systemu operacyjnego Windows, będący zgodny ze specyfikacją SBVR. Udało mi się zdobyć 30-dniową wersję ewaluacyjną tego produktu. Program posiada całkiem przejrzysty interfejs graficzny, wprowadzenie słowników oraz reguł jest dosyć proste i po krótkim czasie można biegle poruszać się po programie. Dokumentacja załączona do programu jest całkiem obszerna, jednakże jak zapewnił mnie pan z działu sprzedaży RuleXpress nie obsługuje żadnego eksportu słowników i reguł gdyż jeszcze żaden producent nie obsługuje importu takowych. Znamienne jest również zdanie z ulotki o produkcie mówiące, że w rozwoju programu nie będzie nacisku na publikowaniu danych w formacie zewnętrznym.

Społeczności

Program (po zalogowaniu się do niego) zgłasza się następującym oknem:

Okno powitalne RuleXpress

W oknie tym widać aktualnie dostępne społeczności semantyczne (semantic communities), czyli grupy ludzi współdzielących takie samo rozumienie specjalistycznych (biznesowych) pojęć. Do własności społeczności, poza należącymi do niej ludźmi, należą również słownictwo, reguły. Społeczność semantyczna może dzielić się na różne społeczności mowy (speech communities), czyli ludzi stosujących to samo słownictwo oraz język. Poniżej slajd, pokazujący społeczności po zdefiniowaniu języka polskiego oraz arabskiego (dialekt iracki):

Okno powitalne RuleXpress

Jak widać w ramach różnych języków mamy doczynienia z dwoma społecznościami semantycznymi (RuleXpress oraz Insurance Eligibility). RuleXpress English czy RuleXpress polski to już różne społeczności mowy w ramach jednej społeczności semantycznej. Program RuleXpress dobrze wspomaga zarządzanie społecznościami oraz językami. Przy tworzeniu nowej społeczności istnieje możliwość importu (adoptowania) słownictwa, reguł, tabel decyzyjnych z istniejących społeczności pod warunkiem, że elementy te zostały zdefiniowane jako publiczne. Koordynacja i zarządzanie społecznościami:

Koordynacja społeczności Zarządzenie społecznościami

Słownictwo i Reguły

Dla każdej społeczności (speech community) można zdefiniować słownictwo oraz reguły. Definiowanie słownictwa oraz faktów może odbyć się na dwa sposoby. Pierwszy z nich to wykorzystanie tego widoku:

Wprowadzanie termów

Termy wprowadza się do programu a następnie definiuje się za pomocą tekstu. Stworzono kilka narzędzi wspomagających jak np. External Lookup (podgląd innych termów) czy Vocabulary Lookup (rozróżnienie termów użytych do napisania definicji na zawarte w danym słowniku i te nieznane wewnątrz tego słownika) . Jest również okienko informujące o ewentualnych mankamentach wprowadzonej definicji (np o zapętleniu się dwóch definicji) i inne okno pokazujące ocenę obecnej definicji. Jakkolwiek dobrze wygląda ten sposób wprowadzania termów, niestety nie oferuje on specjalnej funkcjonalności przetwarzania wprowadzanych definicji a dołączone narzędzia nie ułatwiają specjalnie pracy z termami. Dodać należy, że demonstracyjny słownik dołączony do programu posiada wiele termów ocenionych przez program jak słabo zdefiniowane. Drugi sposób wprowadzania termów i kojarzenia ich w fakty oferuje następujący widok:

Wprowadzanie termów i modelowanie faktów

Jest to graficzny edytor powiązań między termami. Wygląda całkiem obiecująco, termy można łączyć ze sobą różnymi rodzajami zależności za pomocą technologii 'drag & drop'. Niestety zachowanie interfejsu pozostawia wiele do życzenia (upuszczane termy oraz połączenia samoczynnie zmieniają układ graficzny pozostałych elementów, czasami ciężko połączyć termy według zamierzonego schematu). Na podstawie połączeń tworzone są słowne reprezentacje faktów łączących koncepty (noun concepts) reprezentowanych przez termy. Widok ten jest bardzo pomocny podczas projektowania faktów, gdyż dobrze wizualizuje model. Firma RuleArts musi jednak jeszcze popracować nad interfejsem.

Poniżej widok, gdzie można zarządzać regułami:

Wprowadzanie i edycja reguł

Reguły wprowadza się w bardzo podobny sposób jak termy, czyli za pomocą wpisywania ich jako tekst. Jest to jedyny sposób tworzenia nowych reguł zawarty w programie RuleXpress. Dostępny jest identyczny zestaw narzędzi jak przy tworzeniu termów. Niestety reguły nie przechodzą rozbioru logicznego i jedyna dostępna ich reprezentacja to suchy tekst z wyszczególnionymi słowami zawartymi w słowniku. Ostatni wniosek z powyższego slajdu to słaba znajomość polskiej flagi wśród autorów programu.

Tabele dezyzyjne i grupy reguł

Istnieje jeszcze możliwość tworzenia tabel decyzyjnych. Nie ma w tym jednak nic odkrywczego, gdyż są to najzwyklejsze tabele w których podkreślane jest słownictwo pochodzące z aktualnego słownika. Kolejnym dodatkiem porządkującym nieco wprowadzone reguły jest możliwość grupowania reguł:

Grupowanie reguł

Jak widać grupowanie może być hierarchiczne - grupa może zawierać inne grupy. Poza funkcją porządkującą nie znalazłem żadnej dodatkowej funkcjonalności związanej z grupami reguł.

Generowanie raportów

Generowanie raportów pozwala na eksportowanie wszystkich powyżej wymienionych elementów składających się na społeczność (a raczej jej właściwości). Stąd też nazwa community report.

Generowanie raportuGenerowanie raportu

Wydawałoby się, że do utworzenia raportu (istnieje opcja by był w formacie XML, niestety ze względu na błąd odznaczenie tej opcji sprawia, że nie jest wygenerowany żaden raport) niezbędne będzie parsowanie reguł czy też ich rozbiór logiczny. Niestety raport taki zawiera jedynie nazwy reguł oraz ich treść z odróżnionymi od siebie termami zdefiniowanymi w słowniku oraz niezdefiniowanymi.

Podsumowanie

Program ten zapowiadał się obiecująco, jednak w miarę poznawania jego opcji i coraz dłuższej z nim pracy objawiało się raczej powierzchowne podejście do tematu reguł oraz masa błędów (nieobsłużonych wyjątków), o których program informował. RuleXpress nazwałbym raczej programem do zarządzania niż przetwarzania regułami ułatwiający użytkownikom biznesowym odnalezienie się w gąszczu reguł stanowiących o polityce jego przedsiębiorstwa. Niestety od strony programistycznej programowi należy się niska ocena ze względu na wszechobecne komunikaty o błędach oraz częste zawieszanie się. Obecne wydanie określiłbym mianem beta - do intensywnego przetestowania. Instrukcje do programu:

pl/miw/2009/miw09_prolog_sbvr/rulexpress.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