25 research outputs found

    REST - Why it became the new norm on the web

    Get PDF
    REST became the go to approach when it comes to large scale distributed systems on, or outside the World Wide Web. This paper aims to give a brief overview of what REST is and what its main draws and benefits are. Secondly, I will showcase the implementation of REST using HTTP and why this approach became as popular as it is today. Based on my research I concluded that REST’s advantages in scalability, coupling, performance and its seamless integration with HTTP enabled it to rightfully overtake classic RPC based approaches

    A Framework For Transitioning Enterprise Web Services From XML-RPC to REST

    Get PDF
    Web Services are defined by the W3C as “a software system designed to support interoperable machine to machine interaction over a network . There are however, several alternatives as to how Web Services can be implemented: WS-* and Plain Old XML (POX) are popular approaches that markup their RPC (Remote Procedure Call) based payloads with eXtensible Markup Language (XML). Both approaches can use HyperText Transfer Protocol (HTTP) for transferring their messages. Representational State Transfer (REST) is an alternative approach that is gaining in popularity. This research-in-progress paper presents the issues of XML-RPC based Web Services (XML verbosity and message opacity) and why a RESTful approach solves these issues. We present results which show the improved performance. We present a framework that outlines a translation from XML-RPC to RESTful format for “read” style request messages. This framework is ideally suited to enable enterprises to gradually transition from XML-RPC to RESTful Web Services

    Web API Fragility: How Robust is Your Web API Client

    Full text link
    Web APIs provide a systematic and extensible approach for application-to-application interaction. A large number of mobile applications makes use of web APIs to integrate services into apps. Each Web API's evolution pace is determined by their respective developer and mobile application developers are forced to accompany the API providers in their software evolution tasks. In this paper we investigate whether mobile application developers understand and how they deal with the added distress of web APIs evolving. In particular, we studied how robust 48 high profile mobile applications are when dealing with mutated web API responses. Additionally, we interviewed three mobile application developers to better understand their choices and trade-offs regarding web API integration.Comment: Technical repor

    Are REST APIs for Cloud Computing Well-Designed? An Exploratory Study

    Get PDF
    International audienceCloud computing is currently the most popular model to offer and access computational resources and services. Many cloud providers use the REST architectural style (Representational State Transfer) for offering such computational resources. However, these cloud providers face challenges when designing and exposing REST APIs that are easy to handle by end-users and/or developers. Yet, they benefit from best practices to help them design understandable and reusable REST APIs. However, these best practices are scattered in the literature and they have not be studied systematically on real-world APIs. Consequently, we propose two contributions. In our first contribution, we survey the literature and compile a catalog of 73 best practices in the design of REST APIs making APIs more understandable and reusable. In our secondcontribution, we perform a study of three different and well-known REST APIs from three cloud providers to investigate how their APIs are offered and accessed. These cloud providers are Google Cloud Platform, OpenStack, and Open Cloud Computing Interface (OCCI). In particular, we evaluate the coverage of the features provided by the REST APIsof these cloud providers and their conformance with the best practices for REST APIs design. Our results show that Google Cloud follows 66% (48/73), OpenStack follows 62% (45/73), and OCCI 1.2 follows 56% (41/73) of the best practices. Second, although these numbers are not necessarily high, partly because of the strict and precise specification of best practices, we showed that cloud APIs reach an acceptable level of maturity

    IMPLEMENTASI DYNAMIC WEB APPLICATION KUESIONER TRACER STUDY MENGGUNAKAN NOSQL DAN GRAPHQL

    Get PDF
    Tracer Study merupakan suatu studi yang dilakukan oleh perguruan tinggi untuk menghasilkan informasi yang berguna dalam mengukur keberhasilan dan mengevaluasi program pendidikan untuk pengembangan kualitas program pendidikan di masa mendatang. Hasil dari tracer study dapat digunakan untuk penilaian diri terhadap penguasaan dan pemerolehan kompetensi perguruan tinggi, lalu kompilasi data tracer study nasional mengenai transisi dan posisi pekerja lulusan perguruan tinggi di Indonesia. Integrasi data merupakan suatu tantangan untuk pemerintah yang akan melakukan kolaborasi dan koordinasi data dari berbagai departemen pemerintahan. GraphQL merupakan suatu implementasi arsitektur web service dengan menggunakan bahasa query untuk mengakses data. dengan menggunakan GraphQL, aliran data pada kuesioner aplikasi tracer study dapat terintegrasi dengan baik sesuai kebutuhan pertanyaan yang berbentuk modul-modul yang dapat diisi dan diperbaharui sesuai keinginan pengguna dalam mengisi kuesioner Tracer Study is a study conducted by universities to produce useful information in measuring the success and evaluating of educational programs for the development of the quality of educational programs in the future. The results of the tracer study can be used for self-assessment of the mastery and acquisition of higher education competencies, then the compilation of national tracer study data regarding the transition and position of university graduate workers in Indonesia. Data integration is a challenge for the government to collaborate and coordinate data from various government departments. GraphQL is an implementation of web service architecture by using a query language to access data. by using GraphQL, the flow of data in the tracer study application questionnaire can be well integrated according to the needs of the questions in the form of modules that can be filled in and updated according to the user's wishes in filling out the questionnaire

    RESTful Discovery and Eventing for Service Provisioning in Assisted Living Environments

    Get PDF
    Service provisioning in assisted living environments faces distinct challenges due to the heterogeneity of networks, access technology, and sensing/actuation devices in such an environment. Existing solutions, such as SOAP-based web services, can interconnect heterogeneous devices and services, and can be published, discovered and invoked dynamically. However, it is considered heavier than what is required in the smart environment-like context and hence suffers from performance degradation. Alternatively, REpresentational State Transfer (REST) has gained much attention from the community and is considered as a lighter and cleaner technology compared to the SOAP-based web services. Since it is simple to publish and use a RESTful web service, more and more service providers are moving toward REST-based solutions, which promote a resource-centric conceptualization as opposed to a service-centric conceptualization. Despite such benefits of REST, the dynamic discovery and eventing of RESTful services are yet considered a major hurdle to utilization of the full potential of REST-based approaches. In this paper, we address this issue, by providing a RESTful discovery and eventing specification and demonstrate it in an assisted living healthcare scenario. We envisage that through this approach, the service provisioning in ambient assisted living or other smart environment settings will be more efficient, timely, and less resource-intensive.The authors extend their appreciation to the Deanship of Scientific Research at King Saud University for funding this work through the research group project No. RGP-VPP-049

    On the Modularization of ExplorViz towards Collaborative Open Source Development

    Get PDF
    Software systems evolve over their lifetime. Changing conditions such as requirements or customer requests make it inevitable for developers to perform adjustments to the underlying code base. Especially in the context of open source software where everybody can contribute, demands can change over time and new user groups may be addressed. In particular, research software is often not structured with a maintainable and extensible architecture. In combination with obsolescent technologies, this is a challenging task for developers, especially, when students are involved. In this paper, we report on the modularization process and architecture of our open source research project ExplorViz towards a microservice architecture, which facilitates a collaborative development process for both researchers and students. We describe the modularization measures and present how we solved occurring issues and enhanced our development process. Afterwards, we illustrate our modularization approach with our modernized, extensible software system architecture and highlight the improved collaborative development process. Finally, we present a proof-of-concept implementation featuring several developed extensions in terms of architecture and extensibility

    Evaluación de la usabilidad de APIs web

    Get PDF
    En los últimos años las APIs web se han convertido en componentes clave para agilizar el proceso de construcción de aplicaciones. Debido a esto, resulta importante que estas sean fáciles de aprender y utilizar para no reducir la productividad de los programadores ni obstaculizar el proceso de desarrollo. La usabilidad de las APIs es entonces considerada un factor fundamental para su correcta adopción, y si bien existen estudios que proponen soluciones para evaluarla y mejorarla, estos abarcan mayormente APls locales; están más centrados sobre la documentación; suelen contemplar una limitada cantidad de características de usabilidad y, además, los resultados de investigaciones sobre usabilidad de APIs en general aún son insuficientes. Por estas razones, a través del presente trabajo se propone resolver algunos de los problemas recién mencionados mediante el estudio de la especificación OpenAPI y la construcción de un framework de evaluación de la usabilidad de APIs web.XIX Workshop Ingeniería de Software (WIS)Red de Universidades con Carreras en Informátic
    corecore