Do RESTful API Design Rules Have an Impact on the Understandability of Web APIs? A Web-Based Experiment with API Descriptions
Justus Bogner, Sebastian Kotstein, Timo Pfaff

TL;DR
This study empirically investigates how adherence to RESTful API design rules affects the understandability of Web APIs, demonstrating that rule violations generally decrease comprehension and increase perceived difficulty.
Contribution
It provides the first empirical evidence on the impact of RESTful design rules on API understandability through a controlled web-based experiment.
Findings
Violations of 11 out of 12 rules significantly reduce comprehension.
Most violations are perceived as more difficult to understand.
Demographic attributes do not influence comprehension of rule violations.
Abstract
Context: Web APIs are one of the most used ways to expose application functionality on the Web, and their understandability is important for efficiently using the provided resources. While many API design rules exist, empirical evidence for the effectiveness of most rules is lacking. Objective: We therefore wanted to study 1) the impact of RESTful API design rules on understandability, 2) if rule violations are also perceived as more difficult to understand, and 3) if demographic attributes like REST-related experience have an influence on this. Method: We conducted a controlled Web-based experiment with 105 participants, from both industry and academia and with different levels of experience. Based on a hybrid between a crossover and a between-subjects design, we studied 12 design rules using API snippets in two complementary versions: one that adhered to a "rule" and one that was…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Web Application Security Vulnerabilities · Advanced Software Engineering Methodologies
