ИИ совершает революцию в разработке программного обеспечения, делая ее более эффективной, продуктивной и инновационной. В этой статье мы исследуем влияние искусственного интеллекта на разработку программного обеспечения, углубляясь в выводы, полученные в результате исследования GitHub Copilot, проведенного командой исследований и разработок ELEKS.
Поскольку мир разработки программного обеспечения продолжает развиваться, роль ИИ становится все более важной. Учитывая такие преимущества, как возможность сократить время и усилия, необходимые для кодирования, и многое другое, неудивительно, что ИИ в разработке программного обеспечения в настоящее время является горячей темой.
92% разработчиков в США уже используют инструменты ИИ-кодирования как на работе, так и за ее пределами. - Гитхаб
70% разработчиков считают, что инструменты ИИ-кодирования дадут им явное преимущество в профессиональных начинаниях, включая улучшение качества кода, сокращение времени выполнения и расширенные возможности разрешения инцидентов. - Гитхаб
4 из 5 разработчиков ожидают, что инструменты ИИ-кодирования сделают их команду более эффективной для совместной работы. - Гитхаб
Хотя ИИ еще не достиг той стадии, когда он может самостоятельно создавать, тестировать и запускать программные продукты без участия человека, по сравнению с прошлым, он значительно ускорил общее время выполнения работ.
Доступно множество инструментов на базе искусственного интеллекта, которые могут помочь в разработке пользовательских приложений путем генерации и автозаполнения кода, а также обнаружения и исправления ошибок. Команда исследований и разработок ELEKS тщательно изучила один из таких инструментов — GitHub Copilot — чтобы оценить его влияние на задачи разработчиков, продолжительность выполнения и стандарты качества предоставляемых рекомендаций. Давайте посмотрим поближе.
GitHub Copilot — инструмент для автодополнения и генерации кода. Он построен на основе OpenAI Codex и обучен в общедоступных репозиториях GitHub. В результате он предлагает код для любого языка программирования. Однако качество предложений зависит от количества публичных репозиториев, основанных на конкретном языке программирования и фреймворке.
GitHub Copilot работает с программным кодом с помощью плагинов интегрированной среды разработки (IDE). В настоящее время поддерживаются только следующие IDE:
Это исследование было направлено на изучение влияния использования Copilot как на скорость, так и на качество разработки.
Для проведения этого исследования был инициирован небольшой проект в качестве полигона для проверки различных предположений. С помощью команды, состоящей из четырех опытных разработчиков среднего звена, обладающих опытом работы с React, Redux, TypeScript, Jest, Vite, PHP, Symfony и Codeception, мы начали расследование и определили наши цели и подходы следующим образом.
Цель | Подход |
---|---|
Оцените зависимость между компетентностью разработчика и производительностью при использовании Copilot. | Для серверной разработки мы выбрали фреймворк Symfony. У серверной команды не было существенного опыта работы с этой структурой. |
Изучите влияние на типичные задачи разработчиков. | Перед началом проекта мы создали WBS, охватывающую типичную работу разработчика над коммерческим проектом. Также мы провели сеанс оценки задач. |
Изучите влияние на языки программирования и платформы по популярности. | Мы разработали веб-приложение с тестовым покрытием. |
Оцените влияние на время выполнения задачи | Мы произвели предварительную оценку отдельных задач по проекту. |
Повышайте эффективность исследований | Мы проводили сессии по обмену знаниями внутри команды во время ежедневных синхронизаций. |
Изучите качество предложений | Мы протестировали, как Copilot справляется с неклассической и более сложной структурой проекта. |
Исследование GitHub Copilot, проведенное ELEKS, позволило сделать несколько ключевых выводов, которые проливают свет на возможности и преимущества этого инструмента. Вот более подробное описание:
Обратите внимание, что результаты расследования основаны на субъективных отзывах команды, наблюдениях за их работой и проверках кода их решений.
5–10% средний прирост производительности членов команды. - Команда исследований и разработок ЭЛЕКС
Кстати, в ходе проекта команда обнаружила несколько ошибок в GitHub Copilot. Например, Copilot предлагал варианты кода на основе кода из другого проекта, открытого в другом окне IDE. Он предлагал синтаксически неверный код. Copilot конфликтует с функциями некоторых плагинов (встроенных или добавленных сторонними производителями), которые также имеют функцию автодополнения кода.
GitHub Copilot — мощный инструмент, который положительно влияет на скорость разработки и удовлетворенность работой разработчиков. Как и любой другой инструмент разработки, для его освоения требуется время.
На данный момент индивидуальная ежемесячная лицензия стоит всего 10 долларов США, а стоимость бизнес-плана — 19 долларов США в месяц. GitHub Copilot, несомненно, будет финансово выгоден для использования на проектах, особенно для специалистов среднего уровня компетенции и выше.
Команда прогнозирует, что с ростом опыта использования GitHub Copilot скорость разработки может вырасти на 5–25%, в зависимости от популярности технологии и уровня компетенции разработчика. GitHub Copilot гарантированно не замедлит разработку, поскольку разработчики постепенно приобретут опыт и понимание того, когда использовать этот инструмент выгодно, а когда нет.
В заключение отметим, что влияние ИИ на разработку программного обеспечения, примером которого являются такие инструменты, как GitHub Copilot, неоспоримо. В целом, такие инструменты, как GitHub Copilot, не могут заменить разработчика, но служат ценными инструментами для повышения комфорта и производительности разработчиков, способствуя развитию разработки программного обеспечения в мире, в котором все больше внимания уделяется искусственному интеллекту.
Откройте путь к эффективному процессу разработки программного обеспечения и успешным результатам, свяжитесь с экспертами ЭЛЕКС .
Также опубликовано здесь .