2,010 research outputs found

    Automated Rule-Based Selection and Instantiation of Layout Templates for Widget-Based Microsites

    Get PDF
    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

    Role-Based Enterprise Mashups with State Sharing, Preservation and Restoration Support for Multi-Instance Executions

    Get PDF
    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

    Introducing a Mashup-Based Approach for Design-Time Compliance Checking in Business Processes

    Get PDF
    Business process compliance tries to ensure the business processes used in an organization are designed and executed according to the rules that govern the company. However, the nature of rules (expressed in natural language) and the large amount of elements that can be involved in them make their materialization and automated checking quite difficult. That is why the existing support for compliance checking is generally restricted to specific kinds of rules (e.g. rules affecting the control flow of the process). in this paper, we introduce compliance mashups, and show how a mashup-based approach can help solve the problem of rule specification and checking at design time. Some advantages of such an approach are that: (i) any kind of rule can be specified, which implies that each user can specify a rule according to his/her interpretation of the rule; (ii) building the compliance mashup is transparent to the formalism(s) used to implement it, so different techniques can be used together; and (iv) mashup components or parts of them can be re-used. As an example we use this approach to build mashups to specify and check rules related to human resource management in business processes at design time

    ToMaTo: A Trustworthy Code Mashup Development Tool

    Get PDF
    Recent years have seen the emergence of a new programming paradigm for Web applications that emphasizes the reuse of external content, the mashup. Although the mashup paradigm enables the creation of innovative Web applications with emergent features, its openness introduces trust problems. These trust issues are particularly prominent in JavaScript code mashup - a type of mashup that integrated external Javascript libraries to achieve function and software reuse. With JavaScript code mashup, external libraries are usually given full privileges to manipulate data of the mashup application and executing arbitrary code. This imposes considerable risk on the mashup developers and the end users. One major causes for these trust problems is that the mashup developers tend to focus on the functional aspects of the application and implicitly trust the external code libraries to satisfy security, privacy and other non-functional requirements. In this paper, we present ToMaTo, a development tool that combines a novel trust policy language and a static code analysis engine to examine whether the external libraries satisfy the non-functional requirements. ToMaTo gives the mashup developers three essential capabilities for building trustworthy JavaScript code mashup: (1) to specify trust policy, (2) to assess policy adherence, and (3) to handle policy violation. The contributions of the paper are: (1) a description of JavaScript code mashup and its trust issues, and (2) a development tool (ToMaTo) for building trustworthy JavaScript code mashup

    Designing Effective Google Maps for Social Change: A Case Study of SmartChoices

    Get PDF
    This project focuses on the development of interactive, map-based websites created to benefit members of a community. Beginning with a loom at earlier examples of personalized maps and the start of the online mapping revolution, this project will explore the ways in which maps, specifically Google Maps, can be used in order to create informative and useful online tools for community members. This project will focus on the creation and development of the Hartford SmartChoices website, a collaborative effort of Trinity College and ConnCAN (Connecticut Coalition for Achievement Now). Each chapter addess a stage of development, from the need addressed by the website to its usefulness, accessibility, popularity, and aesthetic qualities. Originally downloaded from http://www.devlinhughes.com/SmartChoices

    A user-centric approach to service creation and delivery over next generation networks

    Get PDF
    Next Generation Networks (NGN) provide Telecommunications operators with the possibility to share their resources and infrastructure, facilitate the interoperability with other networks, and simplify and unify the management, operation and maintenance of service offerings, thus enabling the fast and cost-effective creation of new personal, broadband ubiquitous services. Unfortunately, service creation over NGN is far from the success of service creation in the Web, especially when it comes to Web 2.0. This paper presents a novel approach to service creation and delivery, with a platform that opens to non-technically skilled users the possibility to create, manage and share their own convergent (NGN-based and Web-based) services. To this end, the business approach to user-generated services is analyzed and the technological bases supporting the proposal are explained

    Towards automated composition of convergent services: a survey

    Get PDF
    A convergent service is defined as a service that exploits the convergence of communication networks and at the same time takes advantage of features of the Web. Nowadays, building up a convergent service is not trivial, because although there are significant approaches that aim to automate the service composition at different levels in the Web and Telecom domains, selecting the most appropriate approach for specific case studies is complex due to the big amount of involved information and the lack of technical considerations. Thus, in this paper, we identify the relevant phases for convergent service composition and explore the existing approaches and their associated technologies for automating each phase. For each technology, the maturity and results are analysed, as well as the elements that must be considered prior to their application in real scenarios. Furthermore, we provide research directions related to the convergent service composition phases

    The art of video MashUp: supporting creative users with an innovative and smart application

    Get PDF
    In this paper, we describe the development of a new and innovative tool of video mashup. This application is an easy to use tool of video editing integrated in a cross-media platform; it works taking the information from a repository of videos and puts into action a process of semi-automatic editing supporting users in the production of video mashup. Doing so it gives vent to their creative side without them being forced to learn how to use a complicated and unlikely new technology. The users will be further helped in building their own editing by the intelligent system working behind the tool: it combines semantic annotation (tags and comments by users), low level features (gradient of color, texture and movements) and high level features (general data distinguishing a movie: actors, director, year of production, etc.) to furnish a pre-elaborated editing users can modify in a very simple way
    corecore