NLP алати за паметнији развој софтвера

Развој софтвера производи велике количине текстуалних информација и информација заснованих на коду: изворни код, коментаре, документацију, поновљене фрагменте кода и техничке описе. Разумевање односа између онога што код ради и начина на који је описан природним језиком представља важан изазов за савремено софтверско инжењерство, посебно имајући у виду да се алати засновани на вештачкој интелигенцији све више користе за подршку програмерима, унапређење претраге кода и аутоматизацију понављајућих задатака.

Пројекат „Advancing Novel Textual Similarity-based Solutions in Software Development“ (AVANTES) бавио се овим изазовом кроз развој метода обраде природног језика и метода заснованих на вештачкој интелигенцији за анализу софтверских пројеката. Кроз овај пројекат истраживано је на који начин је значење програмског кода повезано са коментарима написаним природним језиком и како се тај однос може искористити за развој паметнијих алата за развој софтвера.

У оквиру пројекта развијено је и тестирано више решења заснованих на обради природног језика, укључујући методе за класификацију коментара у коду, мерење сличности између коментара различите дужине, подршку семантичкој претрази кода и идентификацију различитих типова дуплираног кода. Ове теме су важне за унапређење разумевања кода, одржавања, квалитета документације и поновне употребе постојећих софтверских компоненти.

Пројекат је обухватио више програмских језика, укључујући C, C++, C#, Java, JavaScript, PHP, Python и SQL, као и природне језике, укључујући енглески и српски. На овај начин, AVANTES је допринео развоју алата за софтверско инжењерство подржаних вештачком интелигенцијом, који могу да функционишу у различитим техничким и језичким окружењима.

Учесници на пројекту били су Универзитет у Београду – Електротехнички факултет, Иновациони центар Електротехничког факултета у Београду и Универзитет у Београду – Филолошки факултет.

08/03/2018