Использование ИИ-инструментов в разработке ПО

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

В Европе существует несколько кардинально отличающихся точек зрения на ближайшее будущее в области развития инструментов искусственного интеллекта (ИИ), используемых в софтверной инженерии. Есть банки, которые запрещают своим разработчикам работать с Copilot и ChatGPT, есть образовательные учреждения, которые уже создали образовательные программы по AI-augmented Software Engineering, есть сотни компаний, внедряющих элементы ИИ в свои софтверные продукты и есть далекие от IT журналисты и псевдо-эксперты, которые кричат на страничках LinkedIn о последних днях «живых» разработчиков в профессии, которых вот-вот заменят Bing, Алиса и no-code платформы.

Консультанты SSC в июне-июле 2023 года провели научное исследование, чтобы изучить опыт и обобщить мнения тех, кто действительно отличает –push от Bash и создает работающее в реальном мире программное обеспечение. Исследование охватило 35 команд разработки ПО в софтверных вендорах, интеграторах, банках с сильным in-house development от Казахстана и России до Испании и Великобритании. Цель данного исследования - собрать мнения и опыт старших инженеров и менеджеров в единое видение использования ИИ-инструментов в 2023 году, что может помочь в будущем управлении практическим внедрением ИИ в ИТ-бизнесе и в производственных процессах. Основная гипотеза исследования: «Широкое освещение LLMs (больших лингвистических моделей, как ChatGPT) в СМИ со второй половине 2022 года серьезно популяризировало использование ИИ в разработке программного обеспечения. В настоящее время все больше европейских инженеров используют различные ИИ-инструменты для решения своих повседневных задач в софтверных проектах. ИТ-организации уже начали централизованную трансформацию производственных процессов, связанную с формализацией использования ИИ-инструментов». Другими словами, конкурентная гонка в получении преимуществ от использования ИИ-инструментов уже началась, а промедление (или запреты) организаций (вместо активного внедрения) снижают их конкурентные возможности по всем направлениям инженерной деятельности.

В июле 2023 года были подведены результаты данного исследования, основные моменты будут описаны в данной заметке. Начнем с раздела о текущем использовании (на середину 2023 года) ИИ-инструментов в софтверных проектах. Исследование показывает, что значительная доля (20%) команд и организаций уже приступила к внедрению ИИ-инструментов в производство программного обеспечения, а около 43% команд планируют начать этот процесс в ближайшее время. При этом около 23% экспертов лично используют ИИ-инструменты в своей повседневной деятельности, что оказывает сильное влияние на их задачи в софтверных проектах, а 20% экспертов оценили влияние ИИ-инструментов на свою профессиональную деятельность как среднее и важное для отдельных задач.

Эксперты выделили основные преимущества использования ИИ, включая LLMs, в практике софтверных проектов:

  • Автоматизация рутинных операций и экономия времени – 63% специалистов;

  • Ускорение выполнения операций в команде\организации – 43% специалистов;

  • Совершенствование программных продуктов, в т.ч. качества ПО, UX\UI и документации — 31% экспертов;   

К середине 2023 года ИИ-инструменты (такие, как Watson или ChatGPT) не востребованы в софтверных проектах для бизнес- и системного анализа. Более 70% экспертов вообще не используют их в задачах такого рода, а 14% экспертов подтвердили, что используют ИИ-инструменты только для задач бизнес-моделирования и анализа данных. Гораздо более востребованы ИИ-инструменты при проектировании и разработке ПО. Наиболее популярные типы задач для LLM:

  • создание программного кода (в т.ч. юнит-тесты, хранимые процедуры и т.п.) – 31% экспертов;

  • код-ревью (включая оптимизацию кода и рефакторинг) – 23% экспертов;

  • быстрое прототипирование ПО – 14% экспертов;

В области обеспечения качества ПО востребованность ИИ-инструментов ниже. Около 77% экспертов вообще не используют ИИ-инструменты в управлении качеством программного обеспечения. Наиболее популярные типы задач для LLM в области управления качеством программного обеспечения:

  • поиск ошибок и уязвимостей в коде – 11% экспертов;

  • написание авто-тестов – около 9% экспертов;

  • нефункциональное тестирование (интеграционное, нагрузочное, стрессовое и т.д.) – около 9% экспертов.

Также LLMs могут быть полезны в некоторых других проектных активностях:

  • создание документации по программному обеспечению (руководства, видео-инструкции и т.п.) – около 29% экспертов;

  • процессы поддержки эксплуатации программных продуктов (выдача тикетов, помощь пользователям и т.д.) – 11% экспертов;

  • около 9% команд используют ИИ-инструменты в управлении проектами. 

Также эксперты оценили ценность и роль LLMs в обучении и совершенствовании инженерных навыков в разработке программного обеспечения:

•         влияние использования LLM в профессиональном обучении очень велико – 34% экспертов;

•         это просто еще один полезный инструмент для обучения – 54% экспертов.

Исследование подтвердило, что внедрение AI-инструментов, включая LLMs, по-прежнему является потенциальной конкурентной возможностью для ИТ-компаний: немногие из них в Европе приступили к централизованному внедрению LLMs в производственные процессы. Только 15% экспертов отметили, что их компании выполняют корпоративный план по внедрению ИИ-инструментов в разработку программного обеспечения. И около 20% команд \ ИТ-организаций находятся в процессе обсуждения подходов к его централизованному внедрению.

Также в исследовании были проанализированы общие проблемы и сложности, сопутствующие внедрению ИИ-инструментов в реальную софтверную разработку. Очевидно, что внедрение LLMs и других ИИ-инструментов имеет свои особенности и риски. Эксперты в исследовании определили основные барьеры на пути внедрения ИИ-инструментов в разработку ПО в своих командах в 2023 году:

  • недостаток ресурсов (денег, времени, знаний, человеческого капитала) – 43% экспертов;

  • организационное сопротивление инженеров и руководителей – 34% экспертов.

Около 37% команд находятся в активном процессе внедрения ИИ-инструментов в практику разработки программного обеспечения, а около 20% команд не имеют практической необходимости внедрять его в 2023 году. Более того, в 9% команд наблюдается резкое негативное отношение к ИИ-инструментам разработки программного обеспечения (в том числе его официальный запрет в организации). С другой стороны, у 12% команд есть официальный план внедрения данной инновации и \ или корпоративная политика с официальными рекомендациями по использованию ИИ-инструментов в софтверных проектах. Более того, около 31% команд продолжают использование ИИ-инструментов в тестовом режиме.

В исследовании были собраны личные мнения экспертов об экономической целесообразности централизованных корпоративных инвестиций в улучшение использования ИИ \ LLM в 2023 году:

  • Инвестиции могут быть полезными, но требуется дополнительная подготовка (НИОКР, экономическая модель и т.д.) – 43% экспертов;

  • Инвестировать нужно прямо сейчас (обгоняя конкурентов) – 40% экспертов;

  • Инвестировать рано, лучше начинать с индивидуального и командного использования ИИ-инструментов перед централизованными инвестициями – 17% экспертов.

Перейдем к выводам и заключению по данному исследованию. Исследование подтвердило актуальность использования ИИ-инструментов в разработке программного обеспечения, что соответствует гипотезе исследования. Текущее использование ИИ-инструментов ориентировано на работу с программным кодом (в разных видах) и с документацией софтверного проекта\продукта. Выявлен большой потенциал использования LLMs в разработке программного обеспечения, а отсутствие централизованных усилий на корпоративном уровне может привести такие компании к потере конкурентного преимущества в производстве программного обеспечения. Интересным представляется наблюдение, что внедрение ИИ-инструментов в реальную практику производства программного обеспечения идет согласно классификации Эверетта Роджерса из известной теории «диффузии инноваций»:

  • сформированы категории с «инноваторами» и «ранними последователями»  по Э. Роджерсу и начата формализация использования ИИ-инструментов (проектные команды выполняют корпоративный план по внедрению ИИ в разработку ПО, создают и используют централизованные корпоративные политики и \ или рекомендации);

  • идет процесс формирования категории «раннее большинство» по Э. Роджерсу  – многие команды заинтересованы в дальнейшем изучении ИИ-инструментов разными способами (НИОКР, индивидуальный\командный эксперимент и т.п.).

Исследование подтвердило свою исходную гипотезу: все больше европейских инженеров используют различные ИИ-инструменты при решении своих задач в программных проектах, а инновационные IT-компании уже начали централизованную трансформацию производственных процессов, связанную с формализацией использования ИИ-инструментов.

Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
А вы начали использовать ИИ-инструменты в своих задачах в софтверном проекте?
66.67% Да, очень помогает! И будет еще круче! 2
33.33% Пробую, но пока в тестовом режиме 1
0% Нет / я дед / тимлид не разрешает 0
0% Пользуюсь, но втайне от команды \ IT-организации 0
Проголосовали 3 пользователя. Воздержавшихся нет.
Источник: https://habr.com/ru/articles/748846/


Интересные статьи

Интересные статьи

Всем привет. Сегодня поговорим про обнаружение границ с использованием градиентов.Мы рассмотрим, как найти границы между двумя объектами или двумя частями объекта на изображении с помощью OpenCV. Очен...
Серия статей Дмитрия Руднева (эта и др.) натолкнула меня на мысль написать заметку о построении простых схем (триггеров, дешифраторов и т. п.) в реальных отечественных вычислительных машинах начала 19...
В этой статье я рассказываю об использовании машинного обучения в Streamlit и о том, как оно может помочь бизнес-пользователям лучше понять, как работает наука о данных. Мы собираемся посмотреть, смож...
По отдельности хуки могут быть относительно понятны, но у многих возникают вопросы, как их использовать вместе. Особенно часто возникают подобные вопросы при переходе от классовых компонентов к функци...
Одним из лучших способов применения мощных процессоров для развлечений долгое время была Dwarf Fortress — игра, в которой весь мир состоит из символов ASCII, и которая с радостью съест гигабайт...