46 research outputs found
An Unsupervised Approach for Discovering Relevant Tutorial Fragments for APIs
Developers increasingly rely on API tutorials to facilitate software
development. However, it remains a challenging task for them to discover
relevant API tutorial fragments explaining unfamiliar APIs. Existing supervised
approaches suffer from the heavy burden of manually preparing corpus-specific
annotated data and features. In this study, we propose a novel unsupervised
approach, namely Fragment Recommender for APIs with PageRank and Topic model
(FRAPT). FRAPT can well address two main challenges lying in the task and
effectively determine relevant tutorial fragments for APIs. In FRAPT, a
Fragment Parser is proposed to identify APIs in tutorial fragments and replace
ambiguous pronouns and variables with related ontologies and API names, so as
to address the pronoun and variable resolution challenge. Then, a Fragment
Filter employs a set of nonexplanatory detection rules to remove
non-explanatory fragments, thus address the non-explanatory fragment
identification challenge. Finally, two correlation scores are achieved and
aggregated to determine relevant fragments for APIs, by applying both topic
model and PageRank algorithm to the retained fragments. Extensive experiments
over two publicly open tutorial corpora show that, FRAPT improves the
state-of-the-art approach by 8.77% and 12.32% respectively in terms of
F-Measure. The effectiveness of key components of FRAPT is also validated.Comment: 11 pages, 8 figures, In Proc. of 39rd IEEE International Conference
on Software Engineering (ICSE'17