Rollipõhine dekompositsioon vidinail baseeruvate oleku jagamise, salvestamise ja taastamise toega ärirakenduste mitme eksemplariga käivitamiseks

Date

2013

Journal Title

Journal ISSN

Volume Title

Publisher

Tartu Ülikool

Abstract

Veebimaastikul suurt populaarsust kogunud tavatarbijatele suunatud vidinapõhised veebi-rakendused on loonud soodsa pinnase üldotstarbeliste mashup’ite loomise raamistike ning tööriistade tekkeks. Need tööriistad on eelkõige suunatud tava-Interneti kasutajatele, et luua lihtsaid mashup-tüüpi rakendusi. Samal ajal oleks vidinapõhistest veebirakendustest kasu ka ärirakendustena. Peamiseks takistuseks ärirakenduste loomisel veebipõhiste raken-dustena on keerulisest äriloogikast tulenevad keerukad nõuded ning protsessid. Antud magistritöö uurib, kuidas teostada veebividinatel põhinevate mashup-tüüpi ärirakenduste arendamist nii, et säiluks mashup’ite loomisega seotud peamised eelised, lihtsus ja kiirus. Käesolev magistritöö pakub välja laienduse olemasolevale mashup-tüüpi raamistikule, et toetada mashup’i dekompositsiooni rollipõhisteks vaadeteks. Selleks jagatakse mashup väiksemateks vidinate komplektideks, tagades igale kasutajarollile komplekt just temale vajaminevatest vidinatest. Kuigi igal kasutajarollil võib olla erinev vaade kogu ärirakendusest, tagab käesolevas magistritöös pakutud lahendus suhtluse nende erinevate vaadete vahel. See on vajalik tagamaks mashup’i eksemplari ühtsust kõikide mashup’i vaadete vahel, olenemata sellest, millistest vidinatest antud kasutaja vaade koosneb. Lisaks pakub käesolev magistritöö välja lahenduse toetamaks mitut eksemplari samast vidinapõhisest ärirakendusest ning toetamaks ärirakenduse oleku salvestamist ning taastamist. Kuna ärirakendused on suunatud lahendamaks kasutajate igapäevaseid ülesandeid, on vajalik, et kasutaja saaks valida olemasolevate mashup’i eksemplaride hulgast või alustada uut eksemplari. Lisaks on vajalik, et kasutaja saaks igal ajahetkel rakenduse kasutamise lõpetada selliselt, et hiljem rakenduse kasutamist jätkates oleks tagatud sama rakenduse olek, millest kasutamine katkestati. Väljapakutud lahenduse toimimist testitakse näidisrakendusega, mis realiseerib krediidihalduse protsessi.
Recent hype on consumer web mashups has resulted in many general-purpose mashup frameworks and tools. These tools aim at simplifying the creation of mashups targeted to mainstream Internet users. At the same time, mashups are also used for solving specific business-related tasks. Such mashups are called enterprise mashups and more sophisticated frameworks and tools have been developed to support their creation. However, similarly to traditional web application development tools, the complexity of these frameworks is hindering the main benefits associated with mashup development – agility and simplicity. This thesis aims at extending a general-purpose mashup framework to support develop-ment of enterprise mashups while still preserving the simplicity and agility of develop-ment. More specifically, this thesis describes a solution for role-based decomposition of mashups for multi-instance executions with state sharing, preservation and restoration. In this thesis, a general-purpose mashup framework is extended with the concept of roles to support multi-user interaction and decomposing complex enterprise mashups with rich interactions into role-based views. In the context of this thesis, a view is defined as a subset of widgets a mashup is made of. Hence, through views an effective mechanism is provided for decomposing enterprise mashups to mashups as simple as general-purpose mashups. Additionally, this thesis proposes a generic solution for multi-instance mashup executions. In this thesis, each workflow instance is associated with an instance of a mashup. Since situational applications target at solving users day-to-day tasks, it is necessary to support multiple instances of a mashup. Furthermore, support for multiple mashup instances leverages users’ ability to participate in multiple workflow instances and to initialize new ones. Such mashup instances are in this thesis also referred to as mashup sessions. Finally, a solution is proposed for supporting mashup state sharing, preservation and restoration. Sharing states with other users is the key mechanism for facilitating interaction and collaboration between multiple users. State preservation and restoration are needed to allow a user to stop using the mashup and to resume to the same state at a later time. The proposed solution is also validated through a proof of concept application.

Description

Keywords

Citation