Skip to main content

Showing 1–5 of 5 results for author: Laredo, J A

.
  1. arXiv:2108.11139  [pdf, other

    cs.SE cs.DB cs.LG cs.PL

    Learning GraphQL Query Costs (Extended Version)

    Authors: Georgios Mavroudeas, Guillaume Baudart, Alan Cha, Martin Hirzel, Jim A. Laredo, Malik Magdon-Ismail, Louis Mandel, Erik Wittern

    Abstract: GraphQL is a query language for APIs and a runtime for executing those queries, fetching the requested data from existing microservices, REST APIs, databases, or other sources. Its expressiveness and its flexibility have made it an attractive candidate for API providers in many industries, especially through the web. A major drawback to blindly servicing a client's query in GraphQL is that the cos… ▽ More

    Submitted 26 August, 2021; v1 submitted 25 August, 2021; originally announced August 2021.

  2. arXiv:2009.05632  [pdf, other

    cs.SE cs.PL

    A Principled Approach to GraphQL Query Cost Analysis

    Authors: Alan Cha, Erik Wittern, Guillaume Baudart, James C. Davis, Louis Mandel, Jim A. Laredo

    Abstract: The landscape of web APIs is evolving to meet new client requirements and to facilitate how providers fulfill them. A recent web API model is GraphQL, which is both a query language and a runtime. Using GraphQL, client queries express the data they want to retrieve or mutate, and servers respond with exactly those data or changes. GraphQL's expressiveness is risky for service providers because cli… ▽ More

    Submitted 11 September, 2020; originally announced September 2020.

    Comments: Published at the ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE) 2020

  3. Generating GraphQL-Wrappers for REST(-like) APIs

    Authors: Erik Wittern, Alan Cha, Jim A. Laredo

    Abstract: GraphQL is a query language and thereupon-based paradigm for implementing web Application Programming Interfaces (APIs) for client-server interactions. Using GraphQL, clients define precise, nested data-requirements in typed queries, which are resolved by servers against (possibly multiple) backend systems, like databases, object storages, or other APIs. Clients receive only the data they care abo… ▽ More

    Submitted 21 September, 2018; originally announced September 2018.

    Comments: Originally published at 18th International Conference on Web Engineering (ICWE '18)

    Journal ref: In: Mikkonen T., Klamma R., Hernández J. (eds) Web Engineering. ICWE 2018. Lecture Notes in Computer Science, vol 10845. Springer, Cham

  4. arXiv:1705.06586  [pdf, other

    cs.SE

    Opportunities in Software Engineering Research for Web API Consumption

    Authors: Erik Wittern, Annie Ying, Yunhui Zheng, Jim A. Laredo, Julian Dolby, Christopher C. Young, Aleksander A. Slominski

    Abstract: Nowadays, invoking third party code increasingly involves calling web services via their web APIs, as opposed to the more traditional scenario of downloading a library and invoking the library's API. However, there are also new challenges for developers calling these web APIs. In this paper, we highlight a broad set of these challenges and argue for resulting opportunities for software engineering… ▽ More

    Submitted 18 May, 2017; originally announced May 2017.

    Comments: Erik Wittern and Annie Ying are both first authors

  5. arXiv:1702.03906  [pdf, other

    cs.SE

    Statically Checking Web API Requests in JavaScript

    Authors: Erik Wittern, Annie T. T. Ying, Yunhui Zheng, Julian Dolby, Jim A. Laredo

    Abstract: Many JavaScript applications perform HTTP requests to web APIs, relying on the request URL, HTTP method, and request data to be constructed correctly by string operations. Traditional compile-time error checking, such as calling a non-existent method in Java, are not available for checking whether such requests comply with the requirements of a web API. In this paper, we propose an approach to sta… ▽ More

    Submitted 15 February, 2017; v1 submitted 13 February, 2017; originally announced February 2017.

    Comments: International Conference on Software Engineering, 2017