450 research outputs found
Designing An Ajax-Based Web Application Restfully
The development of an AJAX-based web application involves several challenges as the webpage is updated by using the AJAX calls without reloading the entire page as in any traditional webpage. This prevents one from going back to the previous view of the page as the browser does not reload the entire page; instead it only updates the page. My hypothesis is that if an AJAX-based application is designed by using the software architecture style called the Representational State Transfer (REST), then it is possible to overcome these challenges, which cannot be handled by using web-services. In order to investigate this, the Material Properties Repository, an AJAX-based application was redesigned by using REST. The results support my initial hypothesis. In this process of designing MPR using REST, a generalized software engineering process was created for designing an AJAX-based application RESTfully
Conceptual development of custom, domain-specific mashup platforms
Despite the common claim by mashup platforms that they enable end-users to develop their own software, in practice end-users still don't develop their own mashups, as the highly technical or inexistent user bases of today's mashup platforms testify. The key shortcoming of current platforms is their general-purpose nature, that privileges expressive power over intuitiveness. In our prior work, we have demonstrated that a domainspecific mashup approach, which privileges intuitiveness over expressive power, has much more potential to enable end-user development (EUD). The problem is that developing mashup platforms - domain-specific or not - is complex and time consuming. In addition, domain-specific mashup platforms by their very nature target only a small user basis, that is, the experts of the target domain, which makes their development not sustainable if it is not adequately supported and automated. With this article, we aim to make the development of custom, domain-specific mashup platforms costeffective. We describe a mashup tool development kit (MDK) that is able to automatically generate a mashup platform (comprising custom mashup and component description languages and design-time and runtime environments) from a conceptual design and to provision it as a service. We equip the kit with a dedicated development methodology and demonstrate the applicability and viability of the approach with the help of two case studies. © 2014 ACM
Role-Based Enterprise Mashups with State Sharing, Preservation and Restoration Support for Multi-Instance Executions
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
Handling resource intensive hybrid cloud services from iOS devices
Pilvearvutuse ja mobiilse pilvearvutuse valdkonnad arenevad kiiresti ja paistavad palju- lubavate tehnoloogiatena tulevikuks. Mobiilsete seadmete arvu kasvades muutuvad neile loodud rakendused keerulisemaks ja "targemaks". Et töödelda varasemast su- uremaid andmehulki on arendajad pöördunud pilveteenuste poole. Pilveteenuste kasu- tamine muutub mobiilseteks kui seda kasutatakse mobiilirakenduse tarvis. Mobiilsed seadmed saavad kasutada pilveteenuste paindlikkust selleks, et kaugligipÀÀsu abil tĂ€ita töömahukaid ĂŒlesandeid, jĂ€tkates samas pehmes reaalajas toimimist. Et hĂ”lbustada pil- veteenuste kasutamist mobiilsetest seadmetest on Satish Srirama juhitavas uurimisrĂŒh- mas tegeletud MCM (Mobile Cloud Middleware) ehk eesti keeles mobiilse pilve vahevara loomisega. MCM eesmĂ€rgiks on lihtsustada erinevate pilveteenuste vahelist andmete liigutamist ja pakkuda neile ĂŒhtset liidest. Kui mobiilirakendus sĂ”ltub suurte andme- hulkade ja rohke protsessoriaja kasutamist nĂ”udva ĂŒlesande tĂ€itmisel pilveteenustest, siis ei tohiks ĂŒlesande tĂ€itmise ajaks telefon "lukustuda". Lahenduseks sellele probleemile pakub kĂ€esolev töö vĂ€lja asĂŒnkroonse teadete saatmise lahenduse MCM-s.Cloud computing and mobile computing domains have advanced rapidly and are promis- ing technologies for the future. As the number of mobile devices continues to grow the applications for them also become more sophisticated. To satisfy the need for process- ing large amounts of data, developers can benefit from using various cloud resources. Cloud computing becomes mobile when a mobile device tries to access the shared pool of computing resources provided by the cloud, on demand. Mobile applications take advantage of the elasticity of the cloud to remotely process the process intensive tasks at the same time maintaining a soft real time response behavior. To support accessing the cloud services from the mobile phones, Mobile Cloud Middleware (MCM) has been realized by Srirama et al. at UT. MCM mainly handles the interoperability issues for services accessed from multiple clouds. However, when a mobile application needs to perform a task which is expected to be time consuming, as it requires involving intensive data processing and depends on mobile cloud services, it cannot hang the mobile phone until the response arrives. As a solution to address these issues, the thesis incorporated asynchronous notification framework into the MCM, especially for iOS devices
Programming patterns and development guidelines for Semantic Sensor Grids (SemSorGrid4Env)
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
Orchestration of smart objects with MQTT for the Internet of Things
Internet is becoming a crucial network on the evolution of humanity. Many companies make available several web services to interact with, permitting users and developers to create custom applications. Meanwhile, devices permit users to remain connected everywhere and anytime. Not only smartphones, tablets and PCs but also washing machines and cars. In this thesis, we will describe a platform which permits the creation of composite services (aka mashups) that combine web services and devicesope
Itinerary planner: A mashup case study
The wide adoption of Web Services and the availability of web APIs are transforming the web into a programmatic environment for developing innovative web applications that combine information from various sources to provide a rich user experience. These mashup applications are characterized by rapid development using existing data sources and the use of new technologies such as AJAX, JSON, etc. Developers often focus on delivering rich functionality via the browser environment and pay little attention to the design and maintainability of the applications. In this paper we describe our experience in developing an Itinerary Planner travel application, and discuss the challenges associated with developing mashups. In the conclusion, we briefly discuss the lessons learned in addressing these challenges and how these lessons can be applied to future mashup projects. © 2009 Springer Berlin Heidelberg
Integrating open services for building educational environments
Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works.I. D. Carlos, R. Cobos, E. Guerra, J. de Lara, A. Pescador, and J. SĂĄnchez Cuadrado, âIntegrating Open Services for Building Educational Environmentsâ, in Global Engineering Education Conference, Berlin (Germany), 2013, pp. 1147-1156The increasing popularity of Massive Open Online Courses (MOOCs) has raised the need for highly scalable, customizable, open learning environments. At the same time, there is a growing trend to open the services that the companies offer on the web with open APIs and in the form of REST services, facilitating their integration in customized applications. The goal of this work is to show how such open services can be used for the support of on-line educational systems. These services were not created for an education context, so it is necessary to complement it with functionalities for supporting aspects such as evaluations, monitoring or collaboration. This article discusses on the strategies for integrating services for education and presents two cases studies: first, SMLearning, a collaborative learning environment supported by social media platforms Facebook and YouTube, and second, an application for project-based programming courses, customized through a generative architecture, making heavy use of Google services.This research was partly funded by the Spanish National Plan of R+D, project number TIN2011-24139; and by the Autonomous Community of Madrid, e-Madrid project, number
S2009/TIC-1650
Interactive Data Sharing Mechanism for Widget-based Microsites
TĂ€nasel veebimaastikul on kasvavaks trendiks veebilehtede vaheline sisu jagamine.
Staatilise sisu asemel kasutatakse ĂŒha enam vidinaid. Vidinad on taaskasutatavad
veebikomponendid, mis sisaldavad mingit konkreetset funktsionaalsust. Lihtsamad vidinad
on enamasti olekuta. Keerukamad vidinad oskavad veebirakenduses omavahel suhelda,
nĂ€iteks saates ĂŒksteisele sĂ”numeid. Nii saavad vidinad ĂŒksteist mĂ”jutada ja seelĂ€bi olla
mashupâi laadse veebirakenduse ehitusklotsideks, mÀÀratledes selle oleku. Kuna vidinad
on nÔrgalt sidestunud komponendid, ei ole nad vÔimelised veebirakenduse olekut
salvestama.
Antud magistritöö pakub vÀlja lahenduse veebirakenduse sees olevate vidinate vahetatud
sÔnumite jÀÀdvustamiseks ja taasesitamiseks, vÔimaldades seelÀbi veebirakenduse olekut
salvestada ja sÔpradega jagada. Lahendus baseerub jaoturipÔhisel sÔnumivahetusel,
kasutades tehnoloogiana OpenAjax Hub raamistikku. See tĂ€hendab, et kĂ”ik ĂŒhes
veebirakenduses olevad vidinad on jaoturiga ĂŒhenduses. SĂ”numite salvestamiseks
kasutatakse Wookie nimelist vidinamootorit, mis vÔimaldab luua olekuga vidinaid ja seda
olekut ka salvestada.
Magistritöö raames realiseeritakse iseseisev vidin, mis âsillanaâ ĂŒhendab neid kaht
tehnoloogiat. Sellest tulenevalt on realiseeritud vidina nimeks Wookie-OpenAjax Hub
Bridge. Loodud vidin kuulab kÔiki jaoturisse saadetud sÔnumeid ja salvestab need
andmebaasi. Kui sama vidina isend hiljem taaselustada, siis see vidin taasesitab kÔik
andmebaasi salvestatud sÔnumid jaoturisse. 39
Realiseeritud vidina kasutamiseks luuakse vÀike nÀidisportaal, mille sees olevad vidinad
omavahel sÔnumeid vahetavad. NÀidisportaal demonstreerib saadetud sÔnumite
salvestamist ja taasesitamist, ning ka oleku jagamist suhtlusvÔrgustikuga Facebook.Nowadays it is very common that modern web sites exchange content between each other
by means of syndication and aggregation. This is enabled through APIs, protocols, tools
and platforms. The recent trend in content processing is advancing towards more extensive
use of widgets along with static content. Although web sites usually use widgets to provide
added value to their users, simpler web sites like microsites can be built entirely from
widgets. Such kinds of widgets are usually stateless, but not necessarily autonomous. In
particular they may also be able to communicate with other components in the same web
application, including microsites, which are the key focus of this thesis. Because of the
loose coupling, the widgets themselves are not able to capture the state of the microsite,
whereas the microsite itself usually does not have a mechanism for storing its state.
However, messages exchanged during communication, determine the state of the
microsite.
This thesis describes a solution for storing and sharing the state of a microsite by record-
and-replay mechanism for messages exchanged by widgets of microsites. Furthermore, the
mechanism also allows sharing the stored state of a microsite between friends via social
networks. The latter enables user-initiated inter-application content delivery and state
exchange, which has been possible so far only between tightly integrated applications
- âŠ