Перевод и выжимка исследования Echoes of AI: Investigating the Downstream Effects of AI Assistants on Software MaintainabilityБолее визуально видео с обзором исПеревод и выжимка исследования Echoes of AI: Investigating the Downstream Effects of AI Assistants on Software MaintainabilityБолее визуально видео с обзором ис

[Перевод] Выжимка из исследования Echoes of AI: ИИ-ассистенты не ломают поддерживаемость кода. Но есть нюансы

2026/02/16 11:07
6м. чтение
  • Перевод и выжимка исследования Echoes of AI: Investigating the Downstream Effects of AI Assistants on Software Maintainability

  • Более визуально видео с обзором исследования можно посмотреть на канале Дейва Фарли - Continuous Delivery.

О чём речь

Большинство исследований влияния ИИ на разработку измеряют одно: скорость написания кода. «На сколько процентов быстрее закрыта задача?» «Сколько строк сгенерировано за час?» По сути, мы измеряем скорость набора текста и называем это продуктивностью.

Но любой, кто работал с production-системами дольше полугода, знает: начальная разработка — это 20–50% стоимости жизни системы. Остальное — поддержка, изменения, рефакторинг, устранение дефектов. Оценки варьируются, но, как правило, расходы на поддержку превышают стоимость первоначальной разработки в 3–4 раза.

Вопрос, который почти никто не задавал: что происходит, когда другой разработчик берёт код, написанный с ИИ-ассистентом, и пытается его развивать? Именно на него отвечает исследование «Echoes of AI», опубликованное на arXiv группой авторов во главе с Маркусом Боргом (Markus Borg) при участии Дейва Фарли (Dave Farley) — того самого, из канала на youtube Continuous Delivery.

Концептуально? отношение между поддерживаемостью (артефакты) и продуктивностью (разработчики)
Концептуально? отношение между поддерживаемостью (артефакты) и продуктивностью (разработчики)
Опыт респондентов и предпочтения при использовании AI ассистентов. 1 - совершенно не согласен, 5 - полностью согласен
Опыт респондентов и предпочтения при использовании AI ассистентов. 1 - совершенно не согласен, 5 - полностью согласен

Дизайн эксперимента

Исследование отличается от типичных экспериментов несколькими важными свойствами:

c6b8f18ee68250a711d0057f6a53185f.png
  • 151 участник, из них 95% — практикующие разработчики, а не студенты (именно на студентах обычно проводят исследования по AI Usage).

  • Предварительно зарегистрированный алгоритм исследования (зарегистрирован для ICSME 2025 с In-Principal Acceptance).

  • Две фазы, причём вторая — полноценное рандомизированное контролируемое исследование (РКИ)

b691e515c8b44389d93edd79f3c75d10.png

Фаза 1: разработка с ИИ и без

Участникам дали RecipeFinder — намеренно «грязное» Java/Spring Boot веб-приложение (~2 000 строк), содержащее code smells, внедрённый баг и неполные юнит-тесты. Задача: добавить фичу фильтрации рецептов по времени приготовления.

Географическое распределение участников, выполнявших первое задание
Географическое распределение участников, выполнявших первое задание

Участников разбили на две группы через стратифицированную случайную выборку:

  • AI-devs — работали с ИИ-ассистентами (Copilot, ChatGPT, Cursor и др.)

  • !AI-devs — работали без ИИ

Демографическое распределение выборки, выполнявшей первое задание
Демографическое распределение выборки, выполнявшей первое задание

Фаза 2: поддержка чужого кода (RCT)

Как распределялись задания из первой фазы в экспериментальную группу второй фазы. Экспериментальная группа поддерживает и развивает код, написанный с помощью AI-ассистентов (AI-dev), а контрольная - без их участия.
Как распределялись задания из первой фазы в экспериментальную группу второй фазы. Экспериментальная группа поддерживает и развивает код, написанный с помощью AI-ассистентов (AI-dev), а контрольная - без их участия.

75 новых участников получали код из Фазы 1 и должны были расширить его (добавить фильтрацию по стоимости порции). Ключевые условия:

  • Никакого ИИ во второй фазе.

  • Участники не знали, был ли код написан с ИИ или без.

  • Успешное завершение проверялось через acceptance-тесты в GitHub Actions.

Вопрос для исследования: «может ли кто-то другой работать с тем, что ты произвёл?»

Что измеряли

Для оценки поддерживаемости использовали четыре метрики:

Метрика

Что измеряет

Инструмент

Completion Time

Время выполнения задачи Фазы 2

Self-reported + контроль

CodeHealth (CH)

Качество кода, code smells, когнитивная нагрузка (шкала 1–10)

CodeScene

Test Coverage (TC)

Покрытие строк тестами

JaCoCo через CI

Perceived Productivity (PP)

Субъективная оценка по фреймворку SPACE

Опросник (шкала Ликерта)

CodeHealth от CodeScene — агрегированная метрика на основе 25+ факторов: вложенная сложность, «God Class», дублирование, примитивная одержимость, bumpy road и др. По данным CodeScene, это единственная метрика уровня кода с доказанной связью с бизнес-результатами: код с высоким CodeHealth позволяет итерировать до 2× быстрее, а риск дефектов снижается до 15× по сравнению с «красным» кодом.

Анализ данных проводился двумя методами параллельно: частотным (Wilcoxon, Welch's t-test, бутстрэп) и байесовый (линейная регрессия для CH, дробная логистическая для TC, ординальная логистическая с латентной переменной для PP).

Результаты

Оценка схожести задачи с реальным опытом разработки (Вопрос 2-5: от 1 — "совсем не похоже" до 5 — "очень похоже)
Оценка схожести задачи с реальным опытом разработки (Вопрос 2-5: от 1 — "совсем не похоже" до 5 — "очень похоже)

Фаза 1: ИИ ускоряет начальную разработку

Здесь результаты подтверждают то, что уже многократно показано в литературе:

  • Все AI-devs: медианное ускорение 30,7%

  • Привычные пользователи ИИ (habitual AI users): средний speedup 55,9%

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

Фаза 2: поддерживаемость — главные результаты

А вот здесь начинается самое интересное:

Метрика

Разница AI vs !AI

Статистическая значимость (частотный анализ)

Байесовый анализ

Completion Time

Небольшое ускорение (~13%) при работе с AI-кодом

Не значимо

Умеренные свидетельства против нулевой гипотезы

CodeHealth

Слегка выше для AI-кода (+~0,3 балла)

Не значимо в целом, значимо для habitual AI users

Умеренные свидетельства положительного эффекта

Test Coverage

Нет заметной разницы

Не значимо

Слабые свидетельства

Perceived Productivity

Нет заметной разницы

Не значимо

Умеренные свидетельства небольшого положительного эффекта

Время выполнения (фаза 2)
Время выполнения (фаза 2)

Ключевой вывод: код, написанный с ИИ-ассистентом, не оказался сложнее в поддержке, чем код, написанный без ИИ. ИИ ничего не сломал. С учётом количества страхов вокруг «AI-slop» — это сильный и новый результат.

Покрытие тестами (фаза 2)
Покрытие тестами (фаза 2)

Более того, для кода от привычных пользователей ИИ обнаружено статистически значимое улучшение CodeHealth. Одно из объяснений: ИИ склонен генерировать «скучный», идиоматический, предсказуемый код. А скучный код — это хороший код с точки зрения поддерживаемости, потому что «сюрприз — враг maintainability».

Предупреждения: code bloat и когнитивный долг

Авторы исследования сами подчёркивают два риска, которые их метрики не полностью захватывают:

Code bloat (раздувание кода)

Когда генерация кода становится почти бесплатной, велик соблазн генерировать слишком много. Объём сам по себе — мощный драйвер сложности. ИИ делает проще, чем когда-либо, утонуть в собственной кодовой базе.

Cognitive debt (когнитивный долг)

Если разработчики перестают по-настоящему думать о коде, который создают, со временем понимание размывается, навыки атрофируются, а инновации замедляются. Это именно тот тип долгосрочного риска, который не виден в метриках спринта.

Джейсон Горман (Jason Gorman) из Codemanship описывает это через эффект амнезии Гелл-Манна: «Я часто слышу: "Ну, ИИ плохо работает с языком, который я хорошо знаю, зато отлично — с тем, который знаю плохо". Чем меньше мы понимаем вывод, тем меньше замечаем проблемы».

ИИ как усилитель: связь с DORA и практиками

Результаты исследования хорошо ложатся на данные DORA State of AI-Assisted Software Development 2025. Ключевой тезис отчёта DORA: ИИ — это усилитель. Он усиливает сильные стороны высокопроизводительных организаций и дисфункции — слабых.

По данным DORA:

  • 90% респондентов используют ИИ в ежедневной работе

  • 80% считают, что ИИ повысил их продуктивность

  • При этом стабильность доставки продолжает падать — команды ускорились, но их системы не справляются с возросшим темпом

  • Подход «fail fast, fix fast» не работает как компенсация нестабильности

Команды, которые реально выигрывают от ИИ, по данным DORA, уже практиковали:

  • Малые батчи — одна проблема за раз

  • Быстрые итерации с непрерывным тестированием, ревью, рефакторингом и интеграцией

  • Высокомодульные архитектуры с локализованным «радиусом поражения» изменений

  • Организацию вокруг end-to-end результатов, а не ролевых или технологических силосов

  • Высокую автономию с принятием решений на месте

Горман: «Далеко не "изменив правила игры", вероятностные ИИ-ассистенты просто добавили ещё один слой неопределённости. Та же игра, другие кости».

Больше подобных обзоров, практики внедрения ИИ и менеджменте в командах разработки в моем ТГ-канале.

Источник

Отказ от ответственности: Статьи, размещенные на этом веб-сайте, взяты из общедоступных источников и предоставляются исключительно в информационных целях. Они не обязательно отражают точку зрения MEXC. Все права принадлежат первоисточникам. Если вы считаете, что какой-либо контент нарушает права третьих лиц, пожалуйста, обратитесь по адресу [email protected] для его удаления. MEXC не дает никаких гарантий в отношении точности, полноты или своевременности контента и не несет ответственности за любые действия, предпринятые на основе предоставленной информации. Контент не является финансовой, юридической или иной профессиональной консультацией и не должен рассматриваться как рекомендация или одобрение со стороны MEXC.