Визначення можливостей систем генеративного штучного інтелекту для підвищення ефективності процесу рефакторингу

Автор(и)

  • Андрій Віталійович Ткачук Національний технічний університет України «Київський політехнічний інститут ім. І. Сікорського», Україна https://orcid.org/0000-0002-9127-6381

DOI:

https://doi.org/10.15587/2706-5448.2025.326899

Ключові слова:

рефакторинг на основі ШІ, покращення якості коду, автоматичне виявлення проблем у коді, інструменти генеративного ШІ, оптимізація програмного забезпечення

Анотація

Об'єктом дослідження є рефакторинг початкового коду, полегшений та контрольований інструментами генеративного штучного інтелекту (ШІ). Робота направлена на оцінку його впливу на якість рефакторингу, а також визначення його практичної застосовності для покращення супроводжуваності та ефективності програмного забезпечення.

Проблема, яка розглядається в цьому дослідженні, полягає в обмеженості традиційних інструментів рефакторингу на основі правил, які вимагають заздалегідь визначених правил і часто є специфічними для певної мови програмування. Генеративний ШІ з його вдосконаленими можливостями розпізнавання шаблонів та адаптивного навчання пропонує альтернативний підхід. Однак його ефективність у вирішенні різних завдань рефакторингу та надійність залишаються нерозкритими.

Дослідження включало кілька експериментів, в яких чотири інструменти ШІ – ChatGPT, Copilot, Gemini та Claude – були протестовані на різних завданнях рефакторингу, включаючи виявлення антипатернів у коді, підвищення ефективності, видалення надмірних зв’язків та масштабний рефакторинг.

Результати показали, що Claude досяг найвищого показника успішності (78,8%), за ним йдуть ChatGPT (76,6%), Copilot (72,8%) і Gemini (61,8%). Хоча всі інструменти продемонстрували принаймні базове розуміння принципів рефакторингу, їхня ефективність суттєво відрізнялася залежно від складності завдання. Ці результати можна пояснити відмінностями у підготовці моделей, спеціалізації та архітектурі, що лежить в їх основі. Моделі, оптимізовані для задач програмування, краще справлялися зі структурованим аналізом коду, тоді як більш універсальним моделям не вистачало глибини у специфічних задачах, пов'язаних з програмуванням.

Практичне значення цього дослідження полягає в тому, що хоча інструменти генеративного ШІ можуть суттєво допомогти в рефакторингу, людський нагляд все ще потрібен. Рефакторинг за допомогою ШІ може підвищити продуктивність розробників, спростити обслуговування програмного забезпечення та зменшити технічний борг, що робить його цінним доповненням до сучасних робочих процесів розробки програмного забезпечення.

Біографія автора

Андрій Віталійович Ткачук, Національний технічний університет України «Київський політехнічний інститут ім. І. Сікорського»

PhD, асистент

Кафедра системного проектування

Посилання

  1. Fowler, M. (2019). Refactoring: Improving the Design of Existing Code. Addison-Wesley Professional.
  2. Mens, T., Tourwé, T., Demeyer, S. (2019). Software Evolution. Springer.
  3. Tkachuk, A., Bulakh, B. (2023). Describing the Knowledge About the Source Code Using an Ontology. Infocommunication and computer systems, 1 (5), 123–133. https://doi.org/10.36994/2788-5518-2023-01-05-14
  4. Tkachuk, A. V. (2024). Automated code refactoring using a knowledge base and logical rules. Scientific Bulletin of UNFU, 34 (2), 87–93. https://doi.org/10.36930/40340211
  5. Põld, J., Robal, T., Kalja, A. (2013). On Proving the Concept of an Ontology Aided Software Refactoring Tool. Frontiers in Artificial Intelligence and Applications, 249, 84–94. https://doi.org/10.3233/978-1-61499-161-8-84
  6. Bommasani, R., Hudson, D., Adeli, E., Altman, R., Arora, S., Arx, S. et al. (2021). On the opportunities and risks of foundation models. arXiv. https://doi.org/10.48550/arXiv.2108.07258
  7. Russell, S., Norvig, P. (2020). Artificial Intelligence: A Modern Approach. Pearson.
  8. Poldrack, R., Lu, T., Begus, G. (2023). AI-assisted coding: Experiments with GPT-4. arXiv. https://doi.org/10.48550/arXiv.2304.13187
  9. Dhruv, A., Dubey, A. (2024). Leveraging Large Language Models for Code Translation and Software Development in Scientific Computing. https://doi.org/10.48550/arXiv.2410.24119
  10. Sajja, A., Thakur, D., Mehra, A. (2024). Integrating Generative AI into the Software Development Lifecycle: Impacts on Code Quality and Maintenance. International Journal of Science and Research Archive, 13 (1), 1952–1960. https://doi.org/10.30574/ijsra.2024.13.1.1837
Determining the capabilities of generative artificial intelligence tools to increase the efficiency of refactoring process

##submission.downloads##

Опубліковано

2025-04-17

Як цитувати

Ткачук, А. В. (2025). Визначення можливостей систем генеративного штучного інтелекту для підвищення ефективності процесу рефакторингу. Technology Audit and Production Reserves, 3(2(83), 6–11. https://doi.org/10.15587/2706-5448.2025.326899

Номер

Розділ

Інформаційні технології