Application Programming Interface Documentation: What Do Software Developers Want?

Michael Meng Merseburg University of Applied Sciences ; Stephanie Steinhardt Merseburg University of Applied Sciences ; Andreas Schubert Merseburg University of Applied Sciences

Abstract

The success of an application programming interface (API) crucially depends on how well its documentation meets the information needs of software developers. Previous research suggests that these information needs have not been sufficiently understood. This article presents the results of a series of semistructured interviews and a follow-up questionnaire conducted to explore the learning goals and learning strategies of software developers, the information resources they turn to and the quality criteria they apply to API documentation. Our results show that developers initially try to form a global understanding regarding the overall purpose and main features of an API, but then adopt either a concepts-oriented or a code-oriented learning strategy that API documentation both needs to address. Our results also show that general quality criteria such as completeness and clarity are relevant to API documentation as well. Developing and maintaining API documentation therefore need to involve the expertise of communication professionals.

Journal
Journal of Technical Writing and Communication
Published
2018-07-01
DOI
10.1177/0047281617721853
CompPile
Search in CompPile ↗
Open Access
Closed
Export

Citation Context

Cited by in this index (1)

  1. Communication Design Quarterly

References (45) · 3 in this index

  1. Technical Communication Quarterly
  2. 10.1057/9780230244276
  3. Dr. Dobb’s Journal
  4. Clarke, S. (2007). What is an end user software engineer? In Dagstuhl Seminar Proceedin…
  5. Dagenais, B. & Robillard, M. P. (2010). Creating and evolving developer documentation: Understanding the deci…
Show all 45 →
  1. 10.1016/j.infsof.2014.08.003
  2. IEEE Transactions on Professional Communication
  3. Hou, D. & Li, L. (2011). Obstacles in using frameworks and APIs: An exploratory study of programmers’ newsgro…
  4. Hove, S. E. & Anda, B. (2005). Experiences from conducting semi-structured interviews in empirical software e…
  5. Jeong, S. Y., Xie, Y., Beaton, J., Myers, B. A., Stylos, J., Ehret, R. & Busse, D. K. (2009). Improving docum…
  6. Kim, M., Bergman, L., Lau, T. & Notkin, D. (2004). An ethnographic study of copy and paste programming practi…
  7. Self-directed learning: A guide for learners and teachers
  8. Ko, A. J., DeLine, R. & Venolia, G. (2007). Information needs in collocated software development teams. In …
  9. Ko, A. J. & Riche, Y. (2011). The role of conceptual knowledge in API usability. In Pro…
  10. 10.4135/9781446288719
  11. 10.1007/s10664-005-1290-x
  12. 10.1109/MS.2003.1241364
  13. 10.1016/j.infsof.2007.02.013
  14. 10.1109/TSE.2013.12
  15. 10.1145/2622669
  16. Mayring, P. (2014). Qualitative content analysis: Theoretical foundation, basic procedu…
  17. Qualitative Inhaltsanalyse: Grundlagen und Techniken [Qualitative content analysis: Found…
  18. 10.1109/52.676963
  19. Mihaly, F. (2011). Writing helpful API documentation [Blog post]. Retrieved from http://theamiableapi.com/201…
  20. 10.1145/2896587
  21. Nykaza, J., Messinger, R., Boehme, F., Norman, C. L., Mace, M. & Gordon, M. (2002). What programmers really w…
  22. Parnin, C. (2013). API documentation–Why it sucks [Blog post]. Retrieved from http://blog.ninlabs.com/2013/03…
  23. R: A language and environment for statistical computing
  24. Technical Communication
  25. IEEE Transactions on Professional Communication
  26. 10.1109/MS.2009.193
  27. 10.1007/s10664-010-9150-8
  28. Dynamics in document design
  29. Seaman, C. B. (2002). The information gathering strategies of software maintainers. In …
  30. 10.1109/32.881720
  31. Sillito, J. & Begel, A. (2013). App-directed learning: An exploratory study. Proceeding…
  32. Steinmacher, I., Chaves, A. P., Conte, T. U. & Gerosa, M. A. (2014). Preliminary empirical identification of …
  33. Stylos, J. (2009). Making APIs more usable with improved API design, documentation and tools (Doctoral disser…
  34. Stylos, J. & Clarke, S. (2007). Usability implications of requiring parameters in objects' constructors. In …
  35. Stylos, J., Faulring, A., Yang, Z. & Myers, B. A. (2009). Improving API documentation using API usage informa…
  36. Stylos, J. & Myers, B. A. (2006). Mica: A web-search tool for finding API components and examples. In …
  37. Treude, C., Barzilay, O. & Storey, M. A. (2011, May). How do programmers ask and answer questions on the web?…
  38. 10.1109/MS.2014.80
  39. Watson, R. B. (2015). The effect of visual design and information content on readers’ a…
  40. International Journal of Computer Science and Network Security