22 research outputs found

    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

    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

    Why and How Java Developers Break APIs

    Full text link
    Modern software development depends on APIs to reuse code and increase productivity. As most software systems, these libraries and frameworks also evolve, which may break existing clients. However, the main reasons to introduce breaking changes in APIs are unclear. Therefore, in this paper, we report the results of an almost 4-month long field study with the developers of 400 popular Java libraries and frameworks. We configured an infrastructure to observe all changes in these libraries and to detect breaking changes shortly after their introduction in the code. After identifying breaking changes, we asked the developers to explain the reasons behind their decision to change the APIs. During the study, we identified 59 breaking changes, confirmed by the developers of 19 projects. By analyzing the developers' answers, we report that breaking changes are mostly motivated by the need to implement new features, by the desire to make the APIs simpler and with fewer elements, and to improve maintainability. We conclude by providing suggestions to language designers, tool builders, software engineering researchers and API developers.Comment: Accepted at International Conference on Software Analysis, Evolution and Reengineering, SANER 2018; 11 page
    corecore