Patterns of Knowledge in API Reference Documentation

Reading reference documentation is an important part of programming with application programming interfaces (APIs). Reference documentation complements the API by providing information not obvious from the API syntax. To improve the quality of reference documentation and the efficiency with which th...

Full description

Saved in:
Bibliographic Details
Published inIEEE transactions on software engineering Vol. 39; no. 9; pp. 1264 - 1282
Main Authors Maalej, W., Robillard, M. P.
Format Journal Article
LanguageEnglish
Published New York IEEE 01.09.2013
IEEE Computer Society
Subjects
Online AccessGet full text

Cover

Loading…
Abstract Reading reference documentation is an important part of programming with application programming interfaces (APIs). Reference documentation complements the API by providing information not obvious from the API syntax. To improve the quality of reference documentation and the efficiency with which the relevant information it contains can be accessed, we must first understand its content. We report on a study of the nature and organization of knowledge contained in the reference documentation of the hundreds of APIs provided as a part of two major technology platforms: Java SDK 6 and .NET 4.0. Our study involved the development of a taxonomy of knowledge types based on grounded methods and independent empirical validation. Seventeen trained coders used the taxonomy to rate a total of 5,574 randomly sampled documentation units to assess the knowledge they contain. Our results provide a comprehensive perspective on the patterns of knowledge in API documentation: observations about the types of knowledge it contains and how this knowledge is distributed throughout the documentation. The taxonomy and patterns of knowledge we present in this paper can be used to help practitioners evaluate the content of their API documentation, better organize their documentation, and limit the amount of low-value content. They also provide a vocabulary that can help structure and facilitate discussions about the content of APIs.
AbstractList Reading reference documentation is an important part of programming with application programming interfaces (APIs). Reference documentation complements the API by providing information not obvious from the API syntax. To improve the quality of reference documentation and the efficiency with which the relevant information it contains can be accessed, we must first understand its content. We report on a study of the nature and organization of knowledge contained in the reference documentation of the hundreds of APIs provided as a part of two major technology platforms: Java SDK 6 and .NET 4.0. Our study involved the development of a taxonomy of knowledge types based on grounded methods and independent empirical validation. Seventeen trained coders used the taxonomy to rate a total of 5,574 randomly sampled documentation units to assess the knowledge they contain. Our results provide a comprehensive perspective on the patterns of knowledge in API documentation: observations about the types of knowledge it contains and how this knowledge is distributed throughout the documentation. The taxonomy and patterns of knowledge we present in this paper can be used to help practitioners evaluate the content of their API documentation, better organize their documentation, and limit the amount of low-value content. They also provide a vocabulary that can help structure and facilitate discussions about the content of APIs.
Reading reference documentation is an important part of programming with application programming interfaces (APIs). Reference documentation complements the API by providing information not obvious from the API syntax. To improve the quality of reference documentation and the efficiency with which the relevant information it contains can be accessed, we must first understand its content. We report on a study of the nature and organization of knowledge contained in the reference documentation of the hundreds of APIs provided as a part of two major technology platforms: Java SDK 6 and .NET 4.0. Our study involved the development of a taxonomy of knowledge types based on grounded methods and independent empirical validation. Seventeen trained coders used the taxonomy to rate a total of 5,574 randomly sampled documentation units to assess the knowledge they contain. Our results provide a comprehensive perspective on the patterns of knowledge in API documentation: observations about the types of knowledge it contains and how this knowledge is distributed throughout the documentation. The taxonomy and patterns of knowledge we present in this paper can be used to help practitioners evaluate the content of their API documentation, better organize their documentation, and limit the amount of low-value content. They also provide a vocabulary that can help structure and facilitate discussions about the content of APIs. [PUBLICATION ABSTRACT]
Author Maalej, W.
Robillard, M. P.
Author_xml – sequence: 1
  givenname: W.
  surname: Maalej
  fullname: Maalej, W.
  email: maalej@informatik.uni-hamburg.de
  organization: Dept. of Inf., Univ. of Hamburg, Hamburg, Germany
– sequence: 2
  givenname: M. P.
  surname: Robillard
  fullname: Robillard, M. P.
  email: martin@cs.mcgill.ca
  organization: Sch. of Comput. Sci., McGill Univ., Montreal, QC, Canada
BookMark eNp1kMFLwzAUxoNMcJuePHopeBGkMy9p2vQ45tThwKHzHLL4Ih1dMpMW8b-3c-Jh4Oldft_H934D0nPeISHnQEcAtLxZvkxHjAIfATsifSh5mXLBaI_0KS1lKoQsT8ggxjWlVBSF6JNsoZsGg4uJt8mj8581vr1jUrlkvJglz2gxoDOY3HrTbtA1uqm8OyXHVtcRz37vkLzeTZeTh3T-dD-bjOep4ZI2qcxXTHMtQANjDAVao1GsMp0zkzFDOZQSIRd0JcFKKoXIqMVcWGuY1QXlQ3K1790G_9FibNSmigbrWjv0bVSQF5CxMst4h14eoGvfBtetUzukKKT8KYQ9ZYKPMaBVptq_1ARd1Qqo2nlUnUe186iAdZnrg8w2VBsdvv6hL_Z0hYh_ZJ4VnRHg3wKne7s
CODEN IESEDJ
CitedBy_id crossref_primary_10_1016_j_jss_2016_06_101
crossref_primary_10_1109_TSE_2020_3047088
crossref_primary_10_1016_j_cola_2022_101189
crossref_primary_10_1016_j_infsof_2024_107425
crossref_primary_10_1145_3702976
crossref_primary_10_1080_0960085X_2020_1831834
crossref_primary_10_1007_s10664_025_10618_0
crossref_primary_10_1109_TSE_2015_2431680
crossref_primary_10_1002_widm_1369
crossref_primary_10_1109_TSE_2022_3216279
crossref_primary_10_1109_MS_2019_2919840
crossref_primary_10_1145_3489465
crossref_primary_10_1007_s10664_021_10072_8
crossref_primary_10_1007_s11390_021_0235_1
crossref_primary_10_1145_3546949
crossref_primary_10_1109_TSE_2020_3040935
crossref_primary_10_1007_s10515_023_00401_0
crossref_primary_10_1007_s11219_018_9428_4
crossref_primary_10_1007_s11219_019_09476_z
crossref_primary_10_1016_j_infsof_2025_107676
crossref_primary_10_1145_3708518
crossref_primary_10_1145_3468744_3468753
crossref_primary_10_1007_s10664_021_09962_8
crossref_primary_10_1007_s11390_020_0042_0
crossref_primary_10_1002_pra2_2018_14505501171
crossref_primary_10_3390_electronics11193053
crossref_primary_10_4018_IJEIS_2019070105
crossref_primary_10_1007_s00287_019_01185_y
crossref_primary_10_1007_s10664_019_09694_w
crossref_primary_10_1007_s00500_023_09054_3
crossref_primary_10_1016_j_jss_2022_111265
crossref_primary_10_1109_TSE_2019_2919304
crossref_primary_10_7717_peerj_cs_2115
crossref_primary_10_3390_fi11020052
crossref_primary_10_1007_s10664_023_10345_4
crossref_primary_10_1007_s00766_018_0293_2
crossref_primary_10_1016_j_cola_2023_101201
crossref_primary_10_1109_ACCESS_2024_3425830
crossref_primary_10_1007_s10515_024_00442_z
crossref_primary_10_1007_s10664_022_10280_w
crossref_primary_10_1145_3565799
crossref_primary_10_1016_j_infsof_2014_01_008
crossref_primary_10_1016_j_jss_2019_07_002
crossref_primary_10_1007_s10664_020_09857_0
crossref_primary_10_1145_3434280
crossref_primary_10_1007_s10664_014_9323_y
crossref_primary_10_1145_2622669
crossref_primary_10_1145_3447808
crossref_primary_10_3390_electronics13061112
crossref_primary_10_1016_j_eswa_2024_125524
crossref_primary_10_1109_TDSC_2022_3144697
crossref_primary_10_1007_s10664_015_9411_7
crossref_primary_10_1142_S0218194023500547
crossref_primary_10_1002_cpe_7990
crossref_primary_10_1007_s11432_019_1520_6
crossref_primary_10_1016_j_jss_2024_112296
crossref_primary_10_1109_TSE_2021_3120203
crossref_primary_10_1109_TSE_2019_2901459
crossref_primary_10_1109_TKDE_2022_3168611
crossref_primary_10_1109_TSE_2023_3332568
crossref_primary_10_1007_s10664_022_10235_1
crossref_primary_10_1109_TSE_2019_2900245
crossref_primary_10_1007_s10664_018_9660_3
crossref_primary_10_1109_TSE_2020_2981898
crossref_primary_10_1177_0047281617721853
Cites_doi 10.1145/1029894.1029925
10.1007/s10664-010-9150-8
10.1109/ASE.1998.732658
10.1007/s10664-006-9027-z
10.1109/WPC.1998.693322
10.1007/978-3-642-19811-3_29
10.1109/TSE.2008.26
10.1145/1984701.1984706
10.1145/1453101.1453117
10.1145/1806799.1806828
10.1109/VLHCC.2008.4639083
10.1109/52.476280
10.1145/584955.584976
10.1145/318372.318577
10.1109/ICSE.2007.85
10.1109/ICSE.2007.45
10.1109/APSEC.1998.733596
10.4135/9781071802878
10.18637/jss.v014.i15
10.4135/9781452230153
10.1023/A:1008627026003
10.1145/351936.351951
10.1109/MS.2009.193
10.1007/978-3-642-00427-8_6
10.1145/169059.169061
10.1109/KBSE.1995.490131
10.1109/MSR.2010.5463344
10.2307/2529310
10.1145/1882291.1882312
10.1007/s10664-011-9186-4
10.1109/WPC.2005.47
ContentType Journal Article
Copyright Copyright IEEE Computer Society Sep 2013
Copyright_xml – notice: Copyright IEEE Computer Society Sep 2013
DBID 97E
RIA
RIE
AAYXX
CITATION
JQ2
K9.
7SC
7SP
8FD
F28
FR3
L7M
L~C
L~D
DOI 10.1109/TSE.2013.12
DatabaseName IEEE All-Society Periodicals Package (ASPP) 2005–Present
IEEE All-Society Periodicals Package (ASPP) 1998–Present
IEEE Electronic Library (IEL)
CrossRef
ProQuest Computer Science Collection
ProQuest Health & Medical Complete (Alumni)
Computer and Information Systems Abstracts
Electronics & Communications Abstracts
Technology Research Database
ANTE: Abstracts in New Technology & Engineering
Engineering Research Database
Advanced Technologies Database with Aerospace
Computer and Information Systems Abstracts – Academic
Computer and Information Systems Abstracts Professional
DatabaseTitle CrossRef
ProQuest Health & Medical Complete (Alumni)
ProQuest Computer Science Collection
Technology Research Database
Computer and Information Systems Abstracts – Academic
Electronics & Communications Abstracts
Computer and Information Systems Abstracts
Engineering Research Database
Advanced Technologies Database with Aerospace
ANTE: Abstracts in New Technology & Engineering
Computer and Information Systems Abstracts Professional
DatabaseTitleList
ProQuest Health & Medical Complete (Alumni)
Technology Research Database
Database_xml – sequence: 1
  dbid: RIE
  name: IEEE Electronic Library (IEL)
  url: https://proxy.k.utb.cz/login?url=https://ieeexplore.ieee.org/
  sourceTypes: Publisher
DeliveryMethod fulltext_linktorsrc
Discipline Computer Science
EISSN 1939-3520
EndPage 1282
ExternalDocumentID 3062536501
10_1109_TSE_2013_12
6473801
Genre orig-research
Feature
GroupedDBID --Z
-DZ
-~X
.4S
.DC
0R~
29I
3EH
4.4
5GY
5VS
6IK
7WY
7X7
85S
88E
88I
8FE
8FG
8FI
8FJ
8FL
8G5
8R4
8R5
97E
9M8
AAJGR
AARMG
AASAJ
AAWTH
ABAZT
ABFSI
ABJCF
ABPPZ
ABQJQ
ABUWG
ABVLG
ACGFO
ACGOD
ACIWK
ACNCT
ADBBV
AENEX
AETIX
AFKRA
AGQYO
AGSQL
AHBIQ
AI.
AIBXA
AKJIK
AKQYR
ALLEH
ALMA_UNASSIGNED_HOLDINGS
ARAPS
ARCSS
ASUFR
ATWAV
AZQEC
BEFXN
BENPR
BEZIV
BFFAM
BGLVJ
BGNUA
BKEBE
BKOMP
BPEOZ
BPHCQ
BVXVI
CCPQU
CS3
DU5
DWQXO
E.L
EBS
EDO
EJD
FRNLG
FYUFA
GNUQQ
GROUPED_ABI_INFORM_RESEARCH
GUQSH
HCIFZ
HMCUK
HZ~
H~9
I-F
IBMZZ
ICLAB
IEDLZ
IFIPE
IFJZH
IPLJI
ITG
ITH
JAVBF
K60
K6V
K6~
K7-
L6V
LAI
M0C
M1P
M1Q
M2O
M2P
M43
M7S
MS~
O9-
OCL
OHT
P2P
P62
PHGZM
PHGZT
PJZUB
PPXIY
PQBIZ
PQBZA
PQGLB
PQQKQ
PROAC
PSQYO
PTHSS
PUEGO
Q2X
RIA
RIE
RNI
RNS
RXW
RZB
S10
TAE
TN5
TWZ
UHB
UKHRP
UPT
UQL
VH1
WH7
XOL
YYP
YZZ
ZCG
AAYOK
AAYXX
ALIPV
CITATION
RIG
JQ2
K9.
7SC
7SP
8FD
F28
FR3
L7M
L~C
L~D
ID FETCH-LOGICAL-c380t-86b2a3a51a1222e5efcae5b4a62c42c03198e1650b81f8085540fe65ffc2fa703
IEDL.DBID RIE
ISSN 0098-5589
IngestDate Thu Jul 10 23:04:37 EDT 2025
Mon Jun 30 08:55:12 EDT 2025
Tue Jul 01 05:18:39 EDT 2025
Thu Apr 24 23:06:29 EDT 2025
Wed Aug 27 02:47:44 EDT 2025
IsPeerReviewed true
IsScholarly true
Issue 9
Language English
License https://ieeexplore.ieee.org/Xplorehelp/downloads/license-information/IEEE.html
LinkModel DirectLink
MergedId FETCHMERGED-LOGICAL-c380t-86b2a3a51a1222e5efcae5b4a62c42c03198e1650b81f8085540fe65ffc2fa703
Notes SourceType-Scholarly Journals-1
ObjectType-Feature-1
content type line 14
ObjectType-Article-1
ObjectType-Feature-2
content type line 23
PQID 1429778870
PQPubID 21418
PageCount 19
ParticipantIDs proquest_journals_1429778870
crossref_primary_10_1109_TSE_2013_12
crossref_citationtrail_10_1109_TSE_2013_12
proquest_miscellaneous_1671429443
ieee_primary_6473801
ProviderPackageCode CITATION
AAYXX
PublicationCentury 2000
PublicationDate 2013-09-01
PublicationDateYYYYMMDD 2013-09-01
PublicationDate_xml – month: 09
  year: 2013
  text: 2013-09-01
  day: 01
PublicationDecade 2010
PublicationPlace New York
PublicationPlace_xml – name: New York
PublicationTitle IEEE transactions on software engineering
PublicationTitleAbbrev TSE
PublicationYear 2013
Publisher IEEE
IEEE Computer Society
Publisher_xml – name: IEEE
– name: IEEE Computer Society
References ref13
ref35
ref12
ref34
ref15
ref14
ref30
ref33
ref32
ref2
ref1
ref17
ref16
ref19
ref18
Pagano (ref27) 2012
ref24
ref23
Gunderloy (ref11) 2002
ref26
Gravetter (ref10) 2005
ref25
ref20
ref22
ref21
Rosnow (ref31) 2007
ref28
ref29
ref8
ref7
ref9
ref4
ref3
ref6
ref5
References_xml – ident: ref5
  doi: 10.1145/1029894.1029925
– ident: ref30
  doi: 10.1007/s10664-010-9150-8
– ident: ref7
  doi: 10.1109/ASE.1998.732658
– ident: ref18
  doi: 10.1007/s10664-006-9027-z
– ident: ref8
  doi: 10.1109/WPC.1998.693322
– ident: ref32
  doi: 10.1007/978-3-642-19811-3_29
– ident: ref33
  doi: 10.1109/TSE.2008.26
– ident: ref28
  doi: 10.1145/1984701.1984706
– start-page: 1
  year: 2012
  ident: ref27
  article-title: How Do Open Source Communities Blog?
  publication-title: Empirical Software Eng.
– ident: ref35
  doi: 10.1145/1453101.1453117
– ident: ref9
  doi: 10.1145/1806799.1806828
– ident: ref34
  doi: 10.1109/VLHCC.2008.4639083
– volume-title: Understanding and Using Assemblies and Namespaces in .NET, Microsoft Corp.
  year: 2002
  ident: ref11
– ident: ref17
  doi: 10.1109/52.476280
– ident: ref26
  doi: 10.1145/584955.584976
– ident: ref20
  doi: 10.1145/318372.318577
– ident: ref6
  doi: 10.1109/ICSE.2007.85
– ident: ref19
  doi: 10.1109/ICSE.2007.45
– ident: ref1
  doi: 10.1109/APSEC.1998.733596
– ident: ref25
  doi: 10.4135/9781071802878
– ident: ref12
  doi: 10.18637/jss.v014.i15
– ident: ref3
  doi: 10.4135/9781452230153
– volume-title: Essentials of Statistics for the Behavioral Sciences
  year: 2005
  ident: ref10
– ident: ref24
  doi: 10.1023/A:1008627026003
– ident: ref2
  doi: 10.1145/351936.351951
– ident: ref29
  doi: 10.1109/MS.2009.193
– ident: ref15
  doi: 10.1007/978-3-642-00427-8_6
– ident: ref13
  doi: 10.1145/169059.169061
– ident: ref16
  doi: 10.1109/KBSE.1995.490131
– ident: ref22
  doi: 10.1109/MSR.2010.5463344
– ident: ref21
  doi: 10.2307/2529310
– volume-title: Beginning Behavioral Research: A Conceptual Primer
  year: 2007
  ident: ref31
– ident: ref4
  doi: 10.1145/1882291.1882312
– ident: ref23
  doi: 10.1007/s10664-011-9186-4
– ident: ref14
  doi: 10.1109/WPC.2005.47
SSID ssj0005775
ssib053395008
Score 2.4574304
Snippet Reading reference documentation is an important part of programming with application programming interfaces (APIs). Reference documentation complements the API...
SourceID proquest
crossref
ieee
SourceType Aggregation Database
Enrichment Source
Index Database
Publisher
StartPage 1264
SubjectTerms API
API documentation
Application programming interface
Complement
content analysis
data mining
Documentation
empirical study
Encoding
grounded method
Java
Java (programming language)
Knowledge
NET
pattern mining
Platforms
Programming
Programming languages
Reliability
Sociology
Software
software documentation
Studies
Syntax
Taxonomy
Vocabularies & taxonomies
Title Patterns of Knowledge in API Reference Documentation
URI https://ieeexplore.ieee.org/document/6473801
https://www.proquest.com/docview/1429778870
https://www.proquest.com/docview/1671429443
Volume 39
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
link http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwjV3fS8MwED7mnnxx6hTnLyLsSezWtEnaPYo6pqIIbrC3kqQXEKUTt73415tkbUXdg2-FHknI5ZK75LvvALomSSUmiQxQcRMwkQtrUg4mprUROSYyVB5t8ShGE3Y35dMGXNS5MIjowWfYc5_-LT-f6aW7KusLlsSpS9basIHbKlfrG86RJLzix-Q8HZS5eDQc9MfPNw7DFfdo9OP08eVU_uzB_mAZtuChGtIKT_LaWy5UT3_-Ymv875i3Yav0MMnlaknsQAOLXWhV1RtIacxtYE-eWrOYk5kh99XVGnkpyOXTLakJaMl12YdX4R5Mhjfjq1FQ1lAItO12EaRCRTKWnEpqPQHkaLRErpgUkWaRdjlMKVLrpqmUmtSD1kKDghujIyPtdrAPzWJW4AEQlQ8EzRVjxh7pNqhOpRSSGcrQEQQZ2oHzam4zXRKMuzoXb5kPNMJBZhWROUVkNOpAtxZ-X_FqrBdruymtRcrZ7MBxpbSstLm5DWIi68zaTTPswFn921qLewKRBc6WVkYkToyx-HB9y0ewGfmCFw5FdgzNxccST6zbsVCnfr19AS300-U
linkProvider IEEE
linkToHtml http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwzV3BbtQwEB2VcoALBQrqlgJGKhekbGOv7SQHDhVttcuWqhJbqbdgO2MJgbKI3VUF38Kv8G-MvU4Q0GslbpEyshLPeGZsv3kDsO-L0mBRmAyt8pnUjaYlFWBiznndYGFyG9EWZ3p8Id9eqssN-NHXwiBiBJ_hMDzGu_xm7lbhqOxAy2JEHjVBKKf47Yo2aIvXkyPS5kshTo5nb8ZZ6iGQORJdZqW2woyM4oZTJESF3hlUVhotnBQu1PCUyClNsSX3ZQRt5R618t4Jb2g50Li34DblGUqsq8N-A0iKQnWMnEqVVar-43l1MHt_HFBjoyEXf8S72MDlH68fQ9nJFvzsJmGNYPk0XC3t0H3_ix_yf52l-3Av5dDscG30D2AD24ew1fWnYMldbYM8j-Sh7YLNPZt2h4fsY8sOzyesp9hlR-mfopE-gosb-fbHsNnOW9wBZptK88ZK6Slp0VVeGqON9FxioEDyfACvOl3WLlGoh04en-u4lcqrmhRfB8XXXAxgvxf-smYOuV5sO6iwF0naG8BeZyR18ioL2qYJStcpLOQDeNG_Jn8QLnlMi_MVyegiiEk52r1-5OdwZzx7d1qfTs6mT-CuiO09AmZuDzaXX1f4lJKspX0WbZ3Bh5s2m18u4jDU
openUrl ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=Patterns+of+Knowledge+in+API+Reference+Documentation&rft.jtitle=IEEE+transactions+on+software+engineering&rft.au=Maalej%2C+Walid&rft.au=Robillard%2C+Martin+P&rft.date=2013-09-01&rft.pub=IEEE+Computer+Society&rft.issn=0098-5589&rft.eissn=1939-3520&rft.volume=39&rft.issue=9&rft.spage=1264&rft_id=info:doi/10.1109%2Ftse.2013.12&rft.externalDBID=NO_FULL_TEXT&rft.externalDocID=3062536501
thumbnail_l http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=0098-5589&client=summon
thumbnail_m http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=0098-5589&client=summon
thumbnail_s http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=0098-5589&client=summon