Knowledge base: Warsaw University of Technology

Settings and your account

Back

Internet console for building and testing business rules management systems using JBoss Drools library

Piotr Komorowski

Abstract

JBoss Drools is one of the most popular libraries used for creating business rule management systems. Such products are often made by experts using an internet application named KIE (Knowledge Is Everything). Its graphic interface makes their work easier and minimizes required technical knowledge, however it is only checking if syntax is correct, while testing is limited. Non-technical users face many typical problems when writing systems. Those are infinite loops or wrong sequences of operations caused not by the unclear rule syntax, but because of the system’s engine itself. The target of my thesis was to create a console for building and testing business rules using the JBoss Drools library. It would not only have a convenient user graphic interface reducing required technical knowledge, but also have features that help avoid typical problems when writing such systems. The project was based on Spring platform, H2 database, Thymeleaf template engine, vis.js library and jQuery.js. The console enables creating projects and analyzing decision-making process of the engine, as well as studying the potential interdependences or conflicts of rules. The application helps the testing process by generating fact match tables, simplifying the work especially in case of complex conditions. In the end I present an example case study realized using the console to demonstrate its capacities and possibilities to prevent the aforementioned problems.
Diploma type
Engineer's / Bachelor of Science
Diploma type
Engineer's thesis
Author
Piotr Komorowski (FEIT/ICS) Piotr Komorowski,, The Institute of Computer Science (FEIT/ICS)Faculty of Electronics and Information Technology (FEIT)
Title in Polish
Internetowa konsola do budowy i testowania reguł biznesowych wykorzystująca bibliotekę programistyczną JBoss Drools
Supervisor
Jakub Janusz Koperwas (FEIT/ICS) Jakub Janusz Koperwas,, The Institute of Computer Science (FEIT/ICS)Faculty of Electronics and Information Technology (FEIT)
Certifying unit
Faculty of Electronics and Information Technology (FEIT)
Affiliation unit
The Institute of Computer Science (FEIT/ICS)
Study subject / specialization
, Informatyka (Computer Science)
Language
(pl) Polish
Status
Finished
Defense Date
14-02-2019
Issue date (year)
2019
Internal identifier
43/19 (2636)
Reviewers
Jakub Janusz Koperwas (FEIT/ICS) Jakub Janusz Koperwas,, The Institute of Computer Science (FEIT/ICS)Faculty of Electronics and Information Technology (FEIT) Marek Kozłowski (FEIT/ICS) Marek Kozłowski,, The Institute of Computer Science (FEIT/ICS)Faculty of Electronics and Information Technology (FEIT)
Keywords in Polish
JBoss Drools, silniki regułowe, aplikacja internetowa
Keywords in English
JBoss Drools, business rule management system, web application
Abstract in Polish
JBoss Drools jest jedną z najpopularniejszych bibliotek do tworzenia systemów opartych o silniki reguł biznesowych. Bardzo często projekty takie budowane są przez ekspertów dziedzinowych. Wykorzystają oni do tego internetową aplikację KIE, która dzięki interfejsowi graficznemu znacznie upraszcza im pracę oraz minimalizuje potrzebną do tego wiedzę techniczną. Jednakże narzędzie to zawęża swoje działanie do sprawdzania poprawności składniowej pisanych reguł, a możliwości ich testowania są ograniczone. Ponadto twórcy nietechniczni przy pisaniu systemów natrafiają na wiele typowych błędów, takich jak zapętlenia czy niepoprawna kolejność wykonywanych reguł, wynikających nie ze składni języka opisu reguł, a z zasad działania samego silnika. Celem mojej pracy inżynierskiej było stworzenie konsoli do budowy i testowania reguł biznesowych, wykorzystującej bibliotekę JBoss Drools, która oprócz wygodnego interfejsu graficznego redukującego potrzebną wiedzę techniczną, udostępniałaby funkcje pozwalające unikać typowych problemów pojawiających się przy pisaniu takich systemów. Projekt ten zrealizowałem w oparciu o platformę Spring, bazę danych H2, silnik szablonów Thymeleaf, bibliotekę vis.js oraz jQuery.js. Konsola daje możliwość tworzenia projektów oraz posiada w sobie funkcje służące analizie procesów decyzyjnych silnika, badaniu potencjalnych wzajemnych zależności oraz konfliktów reguł. Aplikacja wspiera również testowanie poprzez generację tabel dopasowania faktów, co znacznie ułatwia pracę, szczególnie w przypadku skomplikowanych warunków. Na koniec prezentuję przykładowy projekt zrealizowany za pomocą konsoli, aby zobrazować jej działanie i możliwości zapobiegania wyżej wspomnianym problemom.
File
  • File: 1
    thesis.pdf
Request a WCAG compliant version
Local fields
Identyfikator pracy APD: 31964

Uniform Resource Identifier
https://repo.pw.edu.pl/info/bachelor/WUTb0d22f3f33b24fc998484b0b01ee6310/
URN
urn:pw-repo:WUTb0d22f3f33b24fc998484b0b01ee6310

Confirmation
Are you sure?
Report incorrect data on this page