DocumentCode
652626
Title
An Empirical Study of API Usability
Author
Piccioni, Marco ; Furia, Carlo A. ; Meyer, Bertrand
Author_Institution
Dept. of Software Eng., ETH Zurich, Zurich, Switzerland
fYear
2013
fDate
10-11 Oct. 2013
Firstpage
5
Lastpage
14
Abstract
Modern software development extensively involves reusing library components accessed through their Application Programming Interfaces (APIs). Usability is therefore a fundamental goal of API design, but rigorous empirical studies of API usability are still relatively uncommon. In this paper, we present the design of an API usability study which combines interview questions based on the cognitive dimensions framework, with systematic observations of programmer behavior while solving programming tasks based on ``tokens´´. We also discuss the implementation of the study to assess the usability of a persistence library API (offering functionalities such as storing objects into relational databases). The study involved 25 programmers (including students, researchers, and professionals), and provided additional evidence to some critical features evidenced by related studies, such as the difficulty of finding good names for API features and of discovering relations between API types. It also discovered new issues relevant to API design, such as the impact of flexibility, and confirmed the crucial importance of accurate documentation for usability.
Keywords
application program interfaces; relational databases; software engineering; API usability; application programming interfaces; cognitive dimensions framework; library component reusability; programmer behavior; relational databases; software development; Documentation; Interviews; Libraries; Programming; Protocols; Relational databases; Usability; application programming interfaces;
fLanguage
English
Publisher
ieee
Conference_Titel
Empirical Software Engineering and Measurement, 2013 ACM / IEEE International Symposium on
Conference_Location
Baltimore, MD
ISSN
1938-6451
Print_ISBN
978-0-7695-5056-5
Type
conf
DOI
10.1109/ESEM.2013.14
Filename
6681333
Link To Document