Abstract-Ett grundläggande problem med att hitta programvara som är mycket relevanta för utvecklingsuppgifter är missmatchningen mellan högnivå intention återspeglas i beskrivningarna av dessa uppgifter och låg nivå genomförande detaljer för applikationer. För att minska denna obalans skapade vi ett tillvägagångssätt som kallas EXEcutable exaMPLes ARchive (Exempel) för att hitta mycket relevanta programvaruprojekt från stora arkiv av applikationer. Efter att en programmerare går in i en naturlig språkfråga som innehåller koncept på hög nivå (t.ex. MIME, datauppsättningar), hämtar Exemplar program som implementerar dessa begrepp. Exemplar rankar ansökningar på tre sätt. För det första tar vi hänsyn till beskrivningarna av ansökningar. För det andra undersöker vi de Application Programming Interface (API) samtal som används av applikationer. För det tredje analyserar vi dataflödet bland API-samtalen. Vi genomförde två fallstudier (med professionella och studentutvecklare) för att utvärdera hur dessa tre rankningar bidrar till kvaliteten på sökresultaten från Exemplar. Resultaten av våra studier visar att den kombinerade rangordningen av applikationsbeskrivningar och API-dokument ger de mest relevanta sökresultaten. Vi släppte Exemplar och våra fallstudier till allmänheten.
Exempel REF ] är ett tillvägagångssätt för att hitta mycket relevanta programvaruprojekt från stora arkiv av applikationer genom att använda informationssökning och programanalys tekniker.
Exemplar: A Source Code Search Engine for Finding Highly Relevant Applications
{'venue': 'IEEE Transactions on Software Engineering', 'journal': 'IEEE Transactions on Software Engineering', 'mag_field_of_study': ['Computer Science']}