Studying the Relation between Linguistic and Design Quality in RESTful APIs
Abstract: REST (REpresentational State Transfer) is commonly used for designing APIs. Two main categories of REST API quality have been identified in previous research: linguistic and design quality. Linguistic quality revolves around the design of the URIs. Design quality revolves around the metadata and body in HTTP requests and responses. For enabling and simplifying communications with REST, both linguistic and design quality are important, however, previous research has shown that even major APIs using REST are not always following best practices for linguistic and design quality. This study investigates if there is a statistical relation between linguistic and design quality. We selected 326 API endpoints from ten public APIs for this study. This study has reused and improved a Java-based tool in previous research for detecting aspects of linguistic quality in the APIs endpoints. For this study, we also developed a tool based on Node.js for detecting aspects of design quality in the API endpoints. These two tools are applied on the same API endpoints to be able to study the statistical relation. A Chi-Square test, implemented with R, showed that there is a significant statistical relation in our findings between linguistic and design quality. Pairwise phi-coefficient comparisons, implemented with Python, between each combination of the linguistic and design aspects used in this study identified eight weak and two moderate relations among the linguistic and design quality aspects. However, sample tests showed that the Java-based tool for detecting linguistic quality were not accurate, which made us fail to answer our problem formulation.
AT THIS PAGE YOU CAN DOWNLOAD THE WHOLE ESSAY. (follow the link to the next page)