ICSA 2024
Tue 4 - Sat 8 June 2024 Hyderabad, Telangana, India

RESTful APIs based on HTTP are one of the most important ways to make data and functionality available to applications and software services. However, the quality of the API design strongly impacts API understandability and usability, and many rules have been specified for this. While we have evidence for the effectiveness of many design rules, it is still difficult for practitioners to identify rule violations in their design. We therefore present RESTRuler, a Java-based open-source tool that uses static analysis to detect design rule violations in OpenAPI descriptions. The current prototype supports 14 rules that go beyond simple syntactic checks and partly rely on natural language processing. The modular architecture also makes it easy to implement new rules. To evaluate RESTRuler, we conducted a benchmark with over 2,300 public OpenAPI descriptions and asked 7 API experts to construct 111 complicated rule violations. For robustness, RESTRuler successfully analyzed 99% of the used real-world OpenAPI definitions, with some failing due to excessive size. For performance efficiency, the tool performed well for the majority of files and could analyze 84% in less than 23 seconds with low CPU and RAM usage. Lastly, for effectiveness, RESTRuler achieved a precision of 91% (ranging from 60% to 100% per rule) and recall of 68% (ranging from 46% to 100%). Based on these variations between rule implementations, we identified several opportunities for improvements. While RESTRuler is still a research prototype, the evaluation suggests that the tool is quite robust to errors, resource-efficient for most APIs, and shows good precision and decent recall. Practitioners can use it to improve the quality of their API design.

Fri 7 Jun

Displayed time zone: Chennai, Kolkata, Mumbai, New Delhi change

14:00 - 15:30
Session 6B: Conformance Checking & Empirical Analysis 1Research Papers / Journal First

Session Chair: Elisa Yumi Nakagawa, University of São Paulo
Room: D-101, D-Block, Himalaya Building

14:00
25m
Research paper
We're Drifting Apart: Architectural Drift from the Developers' PerspectiveResearch Paper
Research Papers
A: Emilie Anthony Chalmers | University of Gothenburg, A: Astrid Berntsson Chalmers | University of Gothenburg, A: Tiziano Santilli Gran Sasso Science Institute (GSSI), A: Rebekka Wohlrab Chalmers University of Technology
14:25
25m
Research paper
Continuous conformance of software architecturesResearch Paper
Research Papers
A: Alessio Bucaioni Mälardalen University, A: Amleto Di Salle Gran Sasso Science Institute (GSSI), A: Ludovico Iovino Gran Sasso Science Institute, L'Aquila, Italy, A: Leonardo Mariani University of Milano-Bicocca, A: Patrizio Pelliccione Gran Sasso Science Institute, L'Aquila, Italy
14:50
25m
Research paper
RESTRuler: Towards Automatically Identifying Violations of RESTful Design Rules in Web APIsDistinguish Best Artifact AwardResearch Paper
Research Papers
A: Justus Bogner Vrije Universiteit Amsterdam, A: Sebastian Kotstein Reutlingen University, A: Daniel Abajirov University of Stuttgart, A: Timothy Ernst , A: Manuel Merkel University of Stuttgart
Pre-print
15:15
20m
Paper
What is Continuous Compliance?Journal First
Journal First
A: Tiziano Santilli Gran Sasso Science Institute (GSSI), A: Patrizio Pelliccione Gran Sasso Science Institute, L'Aquila, Italy, A: Rebekka Wohlrab Chalmers University of Technology, A: Ali Shahrokni Systemite