Automaatne reeglitel põhinev veebilehe struktuurimallide valimine ja rakendamine

Date

2013

Journal Title

Journal ISSN

Volume Title

Publisher

Tartu Ülikool

Abstract

Veebi avatud arhitektuuron loonud soodsa pinnase veebisolevate andmete kasutamiseks nii keerulisemates kui lihtsamates veebirakendustes. Andmete kogumise ja visualiseerimise lihtsustamiseks lihtsates veebirakendustes on loodud hulganisti tööriistu, mille seas on ka mashup'ide loomise tööriistad. Olemasolevate tööriistadega kõrge kasutatavusega mashup veebilehe loomine võib aga paraku olla keerukas, kuna nõuab erinevate tehnoloogiate ning programmeerimiskeelte tundmist, rääkimata kasutatavuse juhtnööridega kursisolemist. Kuigi osad mashup'ide platvormid, a'la OpenAjax Hub, lihtsustavad olemasolevate komponentide kombineerimist, on lahendamata probleemiks siiani nende rakenduste kasutatavus. Käesolev magistritöö kirjeldab reeglipõhist lahendust andmete visualiseerimise vidinate jaoks sobiva veebilehe malli automaatseks valimiseks vastavalt enimlevinud veebilehtede kasutatavuse juhtnööridele. Selleks laetakse vidinate ning struktuurimallide kirjeldused koos kasutatavuse juhtnööridest saadud reeglitega reeglimootorisse ning kasutatakse reeglimootorit ekspertsüsteemina, mis soovitab sobivamaid malle vastavalt etteantud vidinate komplektile. Lahenduse reeglipõhine ülesehitus võimaldab uute vidinate ning mallide lisandumisel või juhtnööride muutumisel operatiivselt reageerida nendele muutustele reeglibaasi täiendamise kaudu. Väljapakutud lahendus realiseeriti käesoleva töö raames Auto Microsite rakendusena, mis koosneb serveri- ning kliendipoolsest osast. Serveri poolel toimub reeglite abil vidinate komplekti visualiseerimiseks sobiva malli valimine kasutades OO jDREW RuleML reeglimootorit ning rakenduse paketeerimiseks koodi genereerimine. Kliendi poolel kasutatakse OpenAjax Hub raamistikkuvidinate turvaliseks eraldamiseks ning omavahel suhtlemapanemisel. Samuti on kliendi poolel lahendatud genereeritud veebilehe vastavusse viimine brauseri võimalustega. Katsetamaks Auto Microsite rakendust praktikas loodi seda kasutades realisatsioonid kahele lihtsale stsenaariumile. Esimesel juhul viusaliseeriti Euroopa 1997-2008 tööjõukulude (Hourly labour costs in Euros (European Union 1997-2008) ing. k.) andmeid kaardi, tabeli, kokkuvõtte ja menüü vidinatega. Teisel juhul kasutati lisaks andmete visualiseerimise vidinatele ka väliseid andmeallikaid, mis olid realiseeritud mittevisuaalsete vidinatena. Saadud andmed visualiseeriti kahe tabeli ning ühe kaardi vidinaga. Näidisveebilehtede loomise tulemusena järeldub, et rakendus sobib lihtsate veebilehtede loomiseks. Lisaks on võimalik lahendust täiendada keerukamate veebirakenduste automaatseks loomiseks läbi vastavate mallide ning reeglite lisamise.
This thesis proposes a rule-based widget and layout template matchmaking solution for widget-based microsites. The solution takes as an input a set of widget descriptions and a set of layout templates with widget placeholders and returns a microsite, where the most suitable template has been instantiated with corresponding widgets. Matchmaking is based on applying a rule engine to metadata of widgets and placeholders about their content categories and dimensions,. Additional usability rules are used to further improve the results with respect to commonly accepted usability guidelines. Such a solution makes it possible to modularly enhance the usability results in the future simply by adding new usability rules and layout templates. Furthermore, the solution can be applied in mashup creation tools for layout selection. The proposed solution has been implemented and is called Auto Microsite in this thesis. The system consists of a server-side and a client-side component. The server-side component matches widgets with layout template placeholders according to the given rules by using the OO jDREW RuleML engine. The client-side is responsible for presenting the mashup appropriately for the client device. The latter is based on OpenAjax Hub 2.0 framework, which enables secure sandboxing and communication of widgets in the generated microsite. Furthermore, OpenAjax Metadata 1.0 specification is used in this thesis to package the widgets such that they could be easily reused. In order to evaluate the Auto Microsite system in practice two proof of concept (PoC) scenarios were implemented. The first scenario visualized "Hourly labour costs in Euros (European Union 1997-2008)" data using widgets for a map, a table and a summary. In the second scenario, also data was queried through a SOAP service and a Web site. In the scenario data was visualized using two table widgets and a map widget. The SOAP service and queries to the Web site were packaged as non-visual widgets to fit the framework. The POCs demonstrate that the Auto Microsite system is able to construct widget-based microsites. Furthermore, the framework is capable of constructing also more complex Web applications, with several pages and more content widgets, by adding new rules and templates.

Description

Keywords

Citation