Generative AI and the Transformation of Software Development Practices
Acharya
Generative AI is reshaping how software is designed, written, and maintained. Advances in large language models (LLMs) are enabling new development styles - from chat-oriented programming and 'vibe coding' to agentic programming - that can accelerate productivity and broaden access. This paper examines how AI-assisted techniques are changing software engineering practice, and the related issues of trust, accountability, and shifting skills. We survey iterative chat-based development, multi-agent systems, dynamic prompt orchestration, and integration via the Model Context Protocol (MCP). Using case studies and industry data, we outline both the opportunities (faster cycles, democratized coding) and the challenges (model reliability and cost) of applying generative AI to coding. We describe new roles, skills, and best practices for using AI in a responsible and effective way.
academic
Генеративный ИИ и трансформация практик разработки программного обеспечения
Генеративный ИИ переформатирует способы проектирования, написания и поддержки программного обеспечения. Достижения в области больших языковых моделей (LLM) открывают новые парадигмы разработки — от диалогового программирования (CHOP) и «программирования по атмосфере» до агентного программирования — которые ускоряют производительность и расширяют доступность. Данная статья исследует, как технологии с поддержкой ИИ изменяют практики инженерии программного обеспечения, а также связанные с этим вопросы доверия, ответственности и трансформации навыков. В статье рассматриваются итеративная диалоговая разработка, многоагентные системы, динамическая оркестровка подсказок и интеграция протокола контекста модели (MCP). На основе тематических исследований и данных отрасли описаны возможности (более быстрые циклы, демократизация программирования) и вызовы (надежность моделей и стоимость) применения генеративного ИИ к программированию. Описаны новые роли, навыки и лучшие практики ответственного и эффективного использования ИИ.
Данное исследование направлено на решение критического вопроса о том, как генеративный ИИ фундаментально изменяет практики разработки программного обеспечения. В частности:
Сдвиг парадигм разработки: переход от традиционного построчного ручного программирования к диалоговому программированию с поддержкой ИИ
Повышение производительности: как использовать инструменты ИИ для значительного ускорения цикла разработки программного обеспечения
Доверие и гарантия качества: как обеспечить качество и надежность программного обеспечения в среде с кодом, генерируемым ИИ
Эволюция навыков: какие новые навыки необходимы разработчикам для адаптации к эпохе ИИ
Огромное влияние на отрасль: по состоянию на конец 2023 года, по оценкам, 75% разработчиков используют какую-либо форму инструментов программирования на основе ИИ в своих рабочих процессах
Значительный прирост производительности: исследование McKinsey показывает, что разработчики, использующие генеративный ИИ, пишут новый код на 50% быстрее, а рефакторинг кода на 33% быстрее
Серьезные проблемы с затратами: опросы отрасли показывают, что с 2023 по 2025 год вычислительные затраты выросли почти на 89% из-за внедрения ИИ
Отсутствие систематической базы: существующие инструменты программирования на основе ИИ в основном представляют собой изолированные решения, лишенные единого интегрированного подхода
Несовершенные механизмы доверия: механизмы гарантии качества и ответственности за код, генерируемый ИИ, еще не установлены
Недостаточное руководство по трансформации навыков: отсутствует систематическое руководство по трансформации навыков разработчиков в эпоху ИИ
Основная задача данного исследования — систематический анализ и обобщение того, как генеративный ИИ изменяет практики разработки программного обеспечения, включая:
Входные данные: традиционные процессы разработки программного обеспечения и возможности новых инструментов ИИ
Выходные данные: новые парадигмы разработки, лучшие практики и база требований к навыкам
Ограничения: сохранение качества кода, безопасности и поддерживаемости
Основная идея: интуитивный стиль программирования, полностью полагающийся на предложения ИИ, где разработчик сосредоточен на выражении высокоуровневых намерений.
Способ реализации:
Использование инструкций на естественном языке или даже голосовых команд
Основная идея: развертывание полуавтономных агентов ИИ для выполнения сложных задач программирования с возможностью планирования, написания и адаптации кода.
Архитектура системы:
Уровень планирования (Planning) -> Управление памятью/состоянием (Memory/State) -> Использование инструментов (Tool Use) -> Оркестровка (Orchestration)
Ключевые компоненты:
Возможность планирования: декомпозиция задач и принятие решений о действиях
Механизм памяти: поддержание контекста и состояния
Интеграция инструментов: вызовы внешних API и системных команд
Координация многоагентных систем: распределенная обработка задач
Отсутствие количественных экспериментов: в основном основана на исследованиях и тематических исследованиях, не хватает строгих контролируемых экспериментов
Недостаточно технических деталей: описание технических деталей конкретных моделей и алгоритмов ИИ недостаточно
Ограниченные показатели оценки: в основном сосредоточена на производительности и затратах, количественная оценка качества кода недостаточна
Географические ограничения: в основном основана на практике в Северной Америке и Европе, не хватает глобальной перспективы
Трансформация ИИ на предприятиях: предоставляет справочную информацию для разработки стратегии ИИ в компаниях-разработчиках программного обеспечения
Повышение навыков разработчиков: помогает отдельным разработчикам планировать траекторию карьерного развития
Реформа образовательных учреждений: предоставляет направление для реформы образования в области компьютерных наук
Проектирование продуктов производителей инструментов: предоставляет руководство для проектирования и оптимизации инструментов программирования на основе ИИ
Отчеты исследований McKinsey о повышении производительности ИИ
Анализ отраслевых затрат IBM на вычисления ИИ
Техническую документацию Anthropic по Model Context Protocol
Практические примеры применения инструментов ИИ крупными технологическими компаниями
Классические теоретические работы в области инженерии программного обеспечения
Общая оценка: Это высококачественная обзорная статья, систематически анализирующая глубокое влияние генеративного ИИ на практики разработки программного обеспечения. Статья не только предлагает новую теоретическую базу, но и предоставляет практические рекомендации, имеющие важную ценность как для академических кругов, так и для промышленности. Хотя есть место для улучшения в экспериментальной проверке и технических деталях, ее перспективность и практическая ценность делают ее важным справочным материалом в этой области.