Spis treści

View page as slide show

MIW 2009 Prolog SBVR

**Zrealizował: Patryk Łuczyński (4RI)

Cel projektu

Celem projektu było przeanalizowanie od niedawna rozwijanego standardu SBVR (Semantics of Business Vocabulary and Rules) służącego do opisu modeli niezależnie od platformy na której modele te będą implementowane. Specyfikacja SBVR tworzy formalne podstawy do tworzenia słowników, które mogą posłużyć do opisu dowolnego przedsięwzięcia, zjawiska za pomocą sformalizowanego języka naturalnego (np angielskiego,polskiego lub innego). Kolejnym celem projektu była próba stworzenia parsera analizującego reguły zgodne z SBVR na podstawie znanego słownika.

SBVR a Model Driven Architecture

Architektura oprogramowania wyróżniająca trzy warstwy:

SBVR umiejscowiony jest w warstwie CIM, czyli modelu najbardziej abstrahującego od sprzętu i oprogramowania.

SBVR a Model Driven Architecture c.d.

Oficjalna specyfikacja SBVR

Dostępna na stronie konsorcjum OMG http://www.omg.org/spec/SBVR/ zorganizowana w słowniki:

Do definiowania słowników i reguł bezpośrednio wykorzystuje się dwa ostatnie.

SBVR jako semantyka

Rozdzielenie znaczenia pojęcia od jego reprezentacji. SBVR jest standardem umożliwiającym powiązanie znaczenia i reprezentacji.

Pociąga to za sobą brak standardowej notacji SBVR. Równouprawnione są wszystkie notacje zgodne ze specyfikacją (np Structured English, język polski - odpowiednio sformalizowany, język diagramów), które można dodefiniować.

Specyfikacja SBVR napisana za pomocą Structured English.

SBVR Structured English

Przykładowa notacja słowników i reguł biznesowych. Definiuje 4 czcionki przenoszące meta-dane:

SBVR Structured English c.d.

Reguły w SBVR

Tworzenie reguł według specyfikacji SBVR:

Reguły w SBVR c.d.

Reguły strukturalne oraz operatywne (wymagające poziomu przestrzegania).

Istniejące narzędzie zgodne z SBVR

Żadne z tych narzędzi nie posiada funkcji parsowania reguł i ich rozbioru logicznego. Istnieją jeszcze inne narzędzia o których wspominają autorzy SBVR, aczkolwiek posiadają one cząstkowe nawiązania do standardu.

Kolorowanie reguł

W ramach projektu udało się stworzyć program w języku Prolog, który na wejściu otrzymuje słownik (w znaczeniu term –> czcionka) oraz napis do przetworzenia, a na wyjściu produkuje plik html zawierający napis z wejścia opatrzony odpowiednimi tagami tak, by po otwarciu przez przeglądarkę wyglądał jak Structured English.