With the growing size of Application Programming Interfaces (APIs), both API usability and API learning become more challenging. API learning resources are often crucial for helping developers learn an API, but they are distributed across different documents, which makes finding the necessary information more challenging. This work focuses on discovering relevant sections of tutorials for a given API type. We approach this problem by identifying API types in an API tutorial, dividing the tutorial into small fragments and classifying them based on linguistic and structural features. The system we developed can ease information discovery for the developers who need information about a particular API type. Experiments conducted on five tutorials show that our approach is able to discover sections relevant to an API type with 0.79 average precision, 0.73 average recall, and 0.75 average F1 measure when trained and tested on the same tutorial. When trained on four tutorials and tested on a fifth tutorial the average precision is 0.84, average recall is 0.62, and the F1 measure is 0.71. / Avec la taille grandissante des interfaces de programmation (API), l'aptitude àl'utilisation ainsi que la facilité d'apprentissage deviennent des préoccupations de premier ordre. La disponibilité de ressources d'apprentissage des API est de grande importance pour parvenir à developer efficacement à partir de différentes sources de documentation. Ce mémoire est consacré au problème de découverte automatique de sections pertinentes contenues dans les tutoriels des API. Nous traitons ce problème en commençant par l'identification du type d'API d'un tutoriel pour ensuite le diviser en fragments qui seront classés d'après leurs propriétés structurelles et linguistiques. Le système que nous avons développé rend le processus de découverte de sections de tutoriel beaucoup plus facile. Une évaluation de notre système a été réalisée avec cinq tutoriels et montre que notre approche peut découvrir des sections pertinentes avec une précision moyenne de 0.79, 0.73 en moyenne de rappel, et 0.75 de mesure moyenne F1 lorsque entraîné ettesté pour le même tutoriel. Lorsqu'entraîné depuis quatre tutoriels et testé dans avec le cinquième, nous obtenons 0.84 de précision moyenne, 0.62 de moyenne de rappel, et finalement 0.71 de mesure F1
Identifer | oai:union.ndltd.org:LACETR/oai:collectionscanada.gc.ca:QMM.121537 |
Date | January 2014 |
Creators | Petrosyan, Gayane |
Contributors | Martin Robillard (Internal/Supervisor) |
Publisher | McGill University |
Source Sets | Library and Archives Canada ETDs Repository / Centre d'archives des thèses électroniques de Bibliothèque et Archives Canada |
Language | English |
Detected Language | French |
Type | Electronic Thesis or Dissertation |
Format | application/pdf |
Coverage | Master of Science (School of Computer Science) |
Rights | All items in eScholarship@McGill are protected by copyright with all rights reserved unless otherwise indicated. |
Relation | Electronically-submitted theses |
Page generated in 0.0019 seconds