Вайб-колдинг уже стал общим местом. Разработка на основе спецификаций — это то, что нас ждет дальше, если предприятия хотят получать сгенерированный искусственным интеллектом код, который они действительно смогут поддерживать, считают опрошенные порталом The New Stack эксперты.

«ИИ топит кодовые базы в машинном коде, но без стратегической структуры мы не столько внедряем инновации, сколько автоматизируем создание унаследованного хаоса», — утверждает один из лидеров в области корпоративного ПО.

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

По словам Маттиаса Штайнера, вице-президента по глобальным бизнес-инновациям в Syntax, принадлежащей SAP компании, которая занимается консалтингом и управляемыми сервисами, производительность без управления открывает двери для проблем. «Никому не платят за написание кода вместо получения результатов, — говорит он. — Кодирование — это только часть работы».

ИИ на каждом этапе жизненного цикла разработки ПО

Штайнер обращает особое внимание на концепцию разработки, основанной на спецификациях, — подхода, который применяет генеративный ИИ не только к генерации кода, но и на каждом этапе жизненного цикла разработки ПО — от анализа рынка и генерации идей до проектирования требований, реализации, тестирования и DevOps. По его словам, под «спецификациями» в данном контексте понимают функциональные спецификации, которые служит единым источником достоверной информации для агентов ИИ, позволяющей последовательно генерировать дизайн, код, тесты и документацию.

«Я рассматриваю разработку, основанную на спецификациях, как будущее развитие разработки ПО в эпоху агентов, — говорит Брэд Шиммин, аналитик Futurum Group. — В данном случае мы берем старые идеи — помните „грамотное программирование“? — и используем их для лучшего определения нашего „намерения“ по управлению рабочими процессами агентов».

Выход за рамки вайб-кодинга

Это следующий большой шаг за рамки вайб-кодинга с минимальной предварительной структурой.

«Код в свободном стиле может быть весьма опасен, потому что он разрушает кодовую базу, — говорит Штайнер. — Если вы хотите создать ПО корпоративного уровня со сроком службы 10-20 лет, то вам, вероятно, потребуется что-то более модульное и более управляемое».

Он не отвергает вайб-кодинг полностью. Он считает его полезным на ранних этапах жизненного цикла продукта, полезным для прототипирования и исследования. Но он проводит черту, когда речь идет о корпоративном ПО, рассчитанном на длительный срок службы. Вайб-кодинга недостаточно для создания сложного и управляемого корпоративного ПО.

«Более долговечная модель будет основана на спецификациях, когда структурированная спецификация становится единственным источником истины для системы, — считает Штайнер. — На основе этой спецификации ИИ может генерировать дизайн, создавать код, писать тесты, создавать документацию и последовательно организовывать рабочие процессы».

Он также отмечает, что открытые фреймворки, такие как SpecKit, OpenSpec и Claude Task Master, способствуют этому сдвигу, позволяя агентам ИИ интерпретировать и выполнять спецификации с гораздо большей надежностью.

«Такая модель снижает трение, улучшает согласованность действий и укрепляет связь между инженерной работой и результатами бизнеса», — отмечает Штайнер.

Потребность в управлении

Он утверждает, что проблема управления является следствием повышения производительности, обусловленного ИИ. Лидеры отрасли регулярно приводят данные, свидетельствующие о том, что ИИ будет писать от 60 до 90% производственного кода и делать это на 55% быстрее, чем люди.

Несмотря на эти достижения, Штайнер видит в этом парадокс Джевонса: повышение производительности означает создание большего количества ПО, а значит, и необходимость его поддержки. При этом, объясняет он, по мере того, как ИИ делает разработку ПО быстрее и дешевле, общий объем создаваемого ПО резко возрастает — а это означает, что общий спрос на инженерные работы (и бремя управления, связанное с поддержкой всего этого ПО) увеличивается.

«С повышением производительности количество приложений значительно вырастет, — говорит Штайнер. — И кто позаботится обо всем этом?».

Его ответ — архитектура. Он настаивает на том, что качественная разработка ПО всегда основывалась на компонентном подходе, повторном использовании и модульности. ИИ меняет скорость создания, а не основы ремесла.

Модель венчурного капитала

Команда из 30 инженеров Штайнера в настоящее время параллельно работает над 10 проектами, применяя модель портфеля венчурного капитала к разработке ПО. Предполагается, что половина продуктов не достигнет рыночной востребованности и будет выброшена. Сокращенный цикл от идеи до выхода на рынок, обеспечиваемый разработкой, основанной на спецификациях, делает такие параллельные эксперименты экономически целесообразными.

«Мы предполагаем, что половина продуктов, которые мы создаем, не добьется успеха, поэтому мы их просто выбросим, — говорит Штайнер. — Возможно, два или три будут успешными. А может быть, среди них окажется один „единорог“».

В качестве инструментов команда использует Anthropic Claude для кодирования и Task Master для управления рабочим процессом на основе спецификаций. TypeScript является основным языком команды, поскольку, по словам Штайнера, он занимает промежуточное положение между типизированными и нетипизированными языками для нынешнего поколения инженеров.

Разработка ПО остается актуальной

Штайнер подчеркивает, что он не считает, что разработка ПО как дисциплина становится менее актуальной по мере того, как ИИ берет на себя генерацию кода.

«Не стоит пока называть разработку ПО мертвой, — говорит он. — Я думаю, что все наоборот».

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