DocumentCode
3600179
Title
Searching the State Space: A Qualitative Study of API Protocol Usability
Author
Sushine, Joshua ; Herbsleb, James D. ; Aldrich, Jonathan
fYear
2015
Firstpage
82
Lastpage
93
Abstract
Application Programming Interfaces (APIs) often define protocols -- restrictions on the order of client calls to API methods. API protocols are common and difficult to use, which has generated tremendous research effort in alternative specification, implementation, and verification techniques. However, little is understood about the barriers programmers face when using these APIs, and therefore the research effort may be misdirected. To understand these barriers better, we perform a two-part qualitative study. First, we study developer forums to identify problems that developers have with protocols. Second, we perform a think-aloud observational study, in which we systematically observe professional programmers struggle with these same problems to get more detail on the nature of their struggles and how they use available resources. In our observations, programmer time was spent primarily on four types of searches of the protocol state space. These observations suggest protocol-targeted tools, languages, and verification techniques will be most effective if they enable programmers to efficiently perform state search.
Keywords
Documentation; Java; Libraries; Programming; Protocols; Sockets; Usability; APIs; protocols; qualitative research; typestate;
fLanguage
English
Publisher
ieee
Conference_Titel
Program Comprehension (ICPC), 2015 IEEE 23rd International Conference on
Type
conf
DOI
10.1109/ICPC.2015.17
Filename
7181435
Link To Document