Developer Perspectives on REST API Usability: A Study of REST API Guidelines
REST is today’s most widely used architectural style for providing web-based services. In the age of service-orientation—a.k.a. Software as a Service (SaaS)—APIs have become core business assets and can easily expose hundreds of operations. While well-designed APIs contribute to the commercial success of a service, poorly designed APIs can threaten entire organizations. Recognizing their relevance and value, many guidelines have been proposed for designing usable APIs, similar to design patterns and coding standards. For example, Zalando and Microsoft provide popular REST API guidelines. However, they are often considered as too large and inapplicable, so many companies create and maintain their own guidelines, which is a challenge in itself. In practice, however, developers still struggle to design effective REST APIs. To improve the situation, we need to improve our empirical understanding of adopting, using, and creating REST API guidelines.
We present an interview study with 16 REST API experts from industry. We determine the notion of API usability, guideline effectiveness factors, challenges of adopting and designing guidelines, and best practices. We identified eight factors influencing REST API usability, among which the adherence to conventions is the most important one. While guidelines can in fact be an effective means to improve API usability, there is significant resistance from developers against strict guidelines. Guideline size and how it fits with organizational needs are two important factors to consider. REST guidelines also have to grow with the organization, while all stakeholders need to be involved in their development and maintenance. Automated linting provides an opportunity to not only embed compliance enforcement into processes, but also to justify guideline rules with educational explanations.
Wed 8 JulDisplayed time zone: Eastern Time (US & Canada) change
10:30 - 12:30 | Comprehension and MaintenanceIndustry Papers / Research Papers / Tool Demonstrations / Journal-First Paper at MB 5.215 Chair(s): Tushar Sharma Dalhousie University | ||
10:30 20mTalk | GAER: Graph Auto-Encoders for Unsupervised Software Architecture Recovery Research Papers Rakhshanda Jabeen Electrolux Professional, Morgan Ericsson Linnaeus University, Jonas Nordqvist Linnaeus University, Anna Wingkvist Linnaeus University | ||
10:50 20mTalk | Developer Perspectives on REST API Usability: A Study of REST API Guidelines Industry Papers Sven Peldszus Chalmers | University of Gothenburg, Jan Rutenkolk Ruhr University Bochum, Marcel Heide Ruhr University Bochum, Jan Sollmann Ruhr University Bochum, Benjamin Klatt viadee AG, Frank Köhne viadee AG, Thorsten Berger Ruhr University Bochum DOI Pre-print | ||
11:10 20mTalk | An Exploratory Eye Tracking Study on How Developers Classify and Debug Python Code in Different Paradigms Journal-First Paper Samuel W. Flint Dakota State University, Jigyasa Chauhan University of Nebraska-Lincoln, Niloofar Mansoor University of Nebraska-Lincoln, Bonita Sharif University of Nebraska-Lincoln, USA, Robert Dyer University of Nebraska-Lincoln DOI | ||
11:30 20mTalk | On the Structure and Semantics of Identifier Names Containing Closed Syntactic Category Words Journal-First Paper Christian D. Newman Rochester Institute of Technology, Anthony Peruma University of Hawai‘i at Mānoa, Eman Abdullah AlOmar Stevens Institute of Technology, USA, Mahie Crabbe University of Hawai‘i at Mānoa, Syreen Banabilah Kent State University, Reem Alsuhaibani Prince Sultan University, Michael J. Decker Bowling Green State University, Farhad Akhbardeh Briar Cliff University, Marcos Zampieri George mason University, Mohamed Wiem Mkaouer University of Michigan-Flint, Jonathan I. Maletic Kent State University Link to publication DOI | ||
11:50 10mTalk | Supporting the Comprehension of Data Analysis Scripts Tool Demonstrations Florian Sihler Ulm University, Oliver Gerstl Ulm University, Lars Pfrenger Ulm University, Julian Schubert Ulm University, Matthias Tichy Ulm University DOI Pre-print | ||
12:00 10mTalk | ZION: System Exploration With Class Contours Tool Demonstrations Mattia Giannaccari REVEAL @ Software Institute – USI, Lugano, Switzerland, Marco Raglianti REVEAL @ Software Institute – USI, Lugano, Switzerland, Michele Lanza Software Institute - USI, Lugano | ||
12:10 20mTalk | Evaluating Explanatory Artefacts of DSAR-Recovered Software Architectures from Industrial Codebases Industry Papers Satrio Adi Rukmono Institut Teknologi Bandung, Lina Ochoa Eindhoven University of Technology, Thijs Bressers ASML, Jacob Krüger Eindhoven University of Technology, Michel Chaudron Eindhoven University of Technology, The Netherlands | ||