Programvaruprojekt är ofta beroende av bibliotek från tredje part som görs tillgängliga via programprogrammeringsgränssnitt (API). Vi har observerat många fall där API används på sätt som inte är de mest effektiva. Vi utvecklade en teknik och verktygsstöd för att automatiskt upptäcka sådana mönster av API-användning i programvaruprojekt. Den viktigaste hypotesen bakom vår teknik är att klientkoden imiterar beteendet hos en API-metod utan att ringa den kanske inte använder API effektivt eftersom den istället kan kalla den metod den imiterar. Vår teknik innebär att analysera mjukvarusystem för att upptäcka fall av API-metoden imitationer. Förutom att varna utvecklare av potentiellt återinförda API-metoder, anger vi också hur man kan förbättra användningen av API. Att tillämpa vår strategi på 10 Java system avslöjade över 400 faktiska fall av potentiellt suboptimal API-användning, vilket leder till många förbättringar av kvaliteten på den kod vi studerade.
Kawrykow och Robillard REF rapporterar en teknik och verktyg stöd för att automatiskt upptäcka mönster av dålig API-användning i programvaruprojekt genom att identifiera klientkod onödigt återinföra beteendet hos en API-metod.
Improving API Usage through Automatic Detection of Redundant Code
{'venue': '2009 IEEE/ACM International Conference on Automated Software Engineering', 'journal': '2009 IEEE/ACM International Conference on Automated Software Engineering', 'mag_field_of_study': ['Computer Science']}