1,165 research outputs found

    Abmash: Mashing Up Legacy Web Applications by Automated Imitation of Human Actions

    Get PDF
    Many business web-based applications do not offer applications programming interfaces (APIs) to enable other applications to access their data and functions in a programmatic manner. This makes their composition difficult (for instance to synchronize data between two applications). To address this challenge, this paper presents Abmash, an approach to facilitate the integration of such legacy web applications by automatically imitating human interactions with them. By automatically interacting with the graphical user interface (GUI) of web applications, the system supports all forms of integrations including bi-directional interactions and is able to interact with AJAX-based applications. Furthermore, the integration programs are easy to write since they deal with end-user, visual user-interface elements. The integration code is simple enough to be called a "mashup".Comment: Software: Practice and Experience (2013)

    Programming patterns and development guidelines for Semantic Sensor Grids (SemSorGrid4Env)

    No full text
    The web of Linked Data holds great potential for the creation of semantic applications that can combine self-describing structured data from many sources including sensor networks. Such applications build upon the success of an earlier generation of 'rapidly developed' applications that utilised RESTful APIs. This deliverable details experience, best practice, and design patterns for developing high-level web-based APIs in support of semantic web applications and mashups for sensor grids. Its main contributions are a proposal for combining Linked Data with RESTful application development summarised through a set of design principles; and the application of these design principles to Semantic Sensor Grids through the development of a High-Level API for Observations. These are supported by implementations of the High-Level API for Observations in software, and example semantic mashups that utilise the API

    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

    End-user composition of interactive applications through actionable UI components

    Get PDF
    Developing interactive systems to access and manipulate data is a very tough task. In particular, the development of user interfaces (UIs) is one of the most time-consuming activities in the software lifecycle. This is even more demanding when data have to be retrieved by accessing flexibly different online resources. Indeed, software development is moving more and more toward composite applications that aggregate on the fly specific Web services and APIs. In this article, we present a mashup model that describes the integration, at the presentation layer, of UI components. The goal is to allow non-technical end users to visualize and manipulate (i.e., to perform actions on) the data displayed by the components, which thus become actionable UI components. This article shows how the model has guided the development of a mashup platform through which non-technical end users can create component-based interactive workspaces via the aggregation and manipulation of data fetched from distributed online resources. Due to the abundance of online data sources, facilitating the creation of such interactive workspaces is a very relevant need that emerges in different contexts. A utilization study has been performed in order to assess the benefits of the proposed model and of the Actionable UI Components; participants were required to perform real tasks using the mashup platform. The study results are reported and discussed

    Mapping for the Masses: Accessing Web 2.0 through Crowdsourcing

    Get PDF
    The authors describe how we are harnessing the power of web 2.0 technologies to create new approaches to collecting, mapping, and sharing geocoded data. The authors begin with GMapCreator that lets users fashion new maps using Google Maps as a base. The authors then describe MapTube that enables users to archive maps and demonstrate how it can be used in a variety of contexts to share map information, to put existing maps into a form that can be shared, and to create new maps from the bottom-up using a combination of crowdcasting, crowdsourcing, and traditional broadcasting. The authors conclude by arguing that such tools are helping to define a neogeography that is essentially "mapping for the masses,'' while noting that there are many issues of quality, accuracy, copyright, and trust that will influence the impact of these tools on map-based communication

    Modeling the dynamics of web-based service and resource-oriented digital ecosystems

    Get PDF
    The notion of digital species is broadened to include services and resources, special issues arise in modeling the dynamics and workflows with representations associated with these services and resources. To address these issues, this paper explores two different yet related approaches: the traditional BPEL-based workflow modeling approach and the Mashupbased Web approach. In this paper, we first demonstrate two examples of service-oriented and resource-oriented digital ecosystems on the Web. We then identify key issues pertinent to both types of DES. We discuss formal definition, specifications and issues of BPEL-based approach and Mashup-based modeling techniques with computational formalisms. Finally, we propose a hybrid approach to deal with modeling the dynamicsin processes associated with such Digital Ecosystems

    Personalizing the web: A tool for empowering end-users to customize the web through browser-side modification

    Get PDF
    167 p.Web applications delegate to the browser the final rendering of their pages. Thispermits browser-based transcoding (a.k.a. Web Augmentation) that can be ultimately singularized for eachbrowser installation. This creates an opportunity for Web consumers to customize their Web experiences.This vision requires provisioning adequate tooling that makes Web Augmentation affordable to laymen.We consider this a special class of End-User Development, integrating Web Augmentation paradigms.The dominant paradigm in End-User Development is scripting languages through visual languages.This thesis advocates for a Google Chrome browser extension for Web Augmentation. This is carried outthrough WebMakeup, a visual DSL programming tool for end-users to customize their own websites.WebMakeup removes, moves and adds web nodes from different web pages in order to avoid tabswitching, scrolling, the number of clicks and cutting and pasting. Moreover, Web Augmentationextensions has difficulties in finding web elements after a website updating. As a consequence, browserextensions give up working and users might stop using these extensions. This is why two differentlocators have been implemented with the aim of improving web locator robustness

    Supporting End-User Development through a New Composition Model: An Empirical Study

    Get PDF
    End-user development (EUD) is much hyped, and its impact has outstripped even the most optimistic forecasts. Even so, the vision of end users programming their own solutions has not yet materialized. This will continue to be so unless we in both industry and the research community set ourselves the ambitious challenge of devising end to end an end-user application development model for developing a new age of EUD tools. We have embarked on this venture, and this paper presents the main insights and outcomes of our research and development efforts as part of a number of successful EU research projects. Our proposal not only aims to reshape software engineering to meet the needs of EUD but also to refashion its components as solution building blocks instead of programs and software developments. This way, end users will really be empowered to build solutions based on artefacts akin to their expertise and understanding of ideal solution
    • 

    corecore