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

Тип публикации: статья из журнала

Год издания: 2017

Идентификатор DOI: 10.15514/ISPRAS-2017-29(6)-6

Ключевые слова: качество программного обеспечения, рекомендательные системы, машинное обучение, нейронные сети, OpenGL, software quality, recommender systems, machine learning, neural networks

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

Ссылки на полный текст

Издание

Журнал: Труды Института системного программирования РАН

Выпуск журнала: Т. 29, № -6

Номера страниц: 117-134

ISSN журнала: 20798156

Место издания: Москва

Издатель: Учреждение Российской академии наук Институт системного программирования РАН

Авторы

  • Якимов И.А. (Институт космических и информационных технологий, Сибирский федеральный университет)
  • Кузнецов А.С. (Институт космических и информационных технологий, Сибирский федеральный университет)

Вхождение в базы данных

Информация о публикациях загружается с сайта службы поддержки публикационной активности СФУ. Сообщите, если заметили неточности.

Вы можете отметить интересные фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.