RUS  ENG
Полная версия
ЖУРНАЛЫ // Труды института системного программирования РАН // Архив

Труды ИСП РАН, 2017, том 29, выпуск 6, страницы 117–134 (Mi tisp276)

Поиск недостающих вызовов библиотечных функций с использованием машинного обучения

И. А. Якимов, А. С. Кузнецов

Институт космических и информационных технологий, Сибирский федеральный университет

Аннотация: Разработка программного обеспечения является сложным и подверженным ошибкам процессом. В целях снижения сложности разработки ПО создаются сторонние библиотеки. Примеры исходных кодов для популярных библиотек доступны в литературе и интернет-ресурсах. В данной работе представлена гипотеза о том, что большинство подобных примеров содержат повторяющиеся шаблоны. Более того, данные шаблоны могут быть использованы для построения моделей, способных предсказать наличие (либо отсутствие) недостающих вызовов определенных библиотечных функций с использованием машинного обучения. В целях проверки данной гипотезы была реализована система, реализующая описанный функционал. Экспериментальные исследования, проведенные на примерах для библиотеки OpenGL, говорят в поддержку выдвинутой гипотезы. Точность результатов достигает 80%, при условии рассмотрения уже первых 4-х ответов, предлагаемых системой. Можно сделать вывод о том, что данная система при дальнейшем развитии может найти индустриальное применение.

Ключевые слова: OpenGL, качество программного обеспечения, рекомендательные системы, машинное обучение, нейронные сети.

DOI: 10.15514/ISPRAS-2017-29(6)-6



Реферативные базы данных:


© МИАН, 2024