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

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

Поможет ли искусственный интеллект (ИИ) перевести усилия DevOps из хрупкого состояния в гибкое? В отрасли существует мнение, что искусственный интеллект может значительно ускорить не только создание кода для программного обеспечения, но и все последующие детали, включая спецификации, документацию, тестирование, развертывание и многое другое.

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

Согласно анализу, опубликованному группой аналитиков Gartner под руководством Манджуната Бхата, в течение следующих трех лет число команд, занимающихся разработкой платформ, использующих ИИ для расширения жизненного цикла разработки ПО, увеличится с 5 до 40 %.

Во всей ИТ-индустрии наблюдается заметный оптимизм по поводу потенциального толчка, который ИИ дает DevOps и связанным с ним Agile-практикам. "Объединение областей DevOps и ИИ может быть взаимодополняющим, улучшая все этапы жизненного цикла разработки программного обеспечения и позволяя выводить его на рынок быстрее, надежнее и эффективнее", - заявил ZDNET Билли Дикерсон, главный инженер-программист SAS.

Вокруг генеративного ИИ и процесса DevOps ведется активная работа. Почти все (97 %) из 408 технологических менеджеров, принявших участие в опросе, проведенном компанией Stonebranch, специализирующейся на автоматизации, заявили, что они "заинтересованы во внедрении генеративного ИИ в свои программы автоматизации". Эти специалисты "рассматривают genAI как важнейший инструмент для объединения более разнообразных инструментов и расширения возможностей более широкого круга пользователей", отмечают авторы опроса.

ИИ способствует развитию DevOps, но DevOps также способствует развитию приложений ИИ, показал опрос Stonebranch. По меньшей мере 72 % респондентов используют конвейеры машинного обучения для реализации своих инициатив в области генеративного ИИ.

Хотя использованию генеративного ИИ для создания или модификации программного кода уделяется много внимания, это лишь часть процесса разработки. Пора обратить внимание на то, как ИИ может помочь ИТ-специалистам и менеджерам в других областях.

"Разработчики в среднем тратят от 10 до 25 % своего времени на написание кода", - пишут Бхат из Gartner и его соавторы. "Остальное время уходит на чтение спецификаций, написание документации, рецензирование кода, участие в совещаниях, помощь коллегам, отладку уже существующего кода, сотрудничество с другими командами, создание сред, устранение неполадок на производстве, изучение технических и бизнес-концепций - и это лишь некоторые моменты".

Интеграция ИИ "во все фазы цикла обратной связи DevOps - планирование, проверка и разработка кода, сборка, тестирование, развертывание, мониторинг, измерение - повышает уровень сотрудничества в командах и положительно сказывается на результатах", - отмечает Дикерсон из SAS. При планировании "ИИ может сделать процесс управления проектами более эффективным, автоматически генерируя требования на основе запросов пользователей, обнаруживая несовпадение сроков и даже выявляя неполные требования".

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

Тем не менее, руководителям и специалистам технологических подразделений следует проявлять осторожность и не заходить слишком далеко в использовании DevOps и других Agile-практик, основанных на искусственном интеллекте. "Чрезмерная зависимость создает риски", - сказал ZDNET Ян Фергюсон, старший директор компании SiFive, ранее занимавший пост вице-президента по маркетингу в Lynx Software Technologies.

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

Фергюсон призвал развивать "динамику сотрудничества между людьми и ИИ в DevOps. ИИ может справиться с кодированием, в то время как люди должны определить тщательный набор требований к системе и ее поведению", - пояснил он.

Дикерсон также советует проявлять осторожность при внедрении DevOps на базе ИИ: "Поскольку ИИ может автоматизировать многие задачи в контуре обратной связи DevOps, было бы идеально иметь человеческий надзор, чтобы убедиться, что ИИ принимает правильные автоматизированные решения. Лучшей практикой является одобрение человеком каждого важного бизнес-решения".

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

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

Кроме того, "благодаря своей способности анализировать огромные объемы данных и делать прогнозы, ИИ также может помочь в анализе результатов тестирования. Это поможет выявить закономерности наиболее результативных и ненадежных тестов, что поможет оптимизировать процесс тестирования".

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

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

Фергюсон отметил, что при наличии человеческого контроля "ИИ может усилить такие подходы, как DevOps и Agile". По его словам, эффективное сочетание ИИ и человека на всех этапах жизненного цикла программного обеспечения может повысить производительность и инновации: "Однако мы должны активно формировать это будущее с помощью прозрачности, укрепления доверия, реорганизации рабочих процессов и обучения навыкам".

Рутинная автоматизация - это уже прошлый год: ИИ привносит больше интеллекта в разработку программного обеспечения
Понравилась новость? Тогда не забудь оставить свой комментарий.
А так же, добавь наш сайт в закладки (нажми Ctrl+D), не теряй нас.
23 мая 2024 г.
34

Комментарии

Оставить комментарий:
* отправляя форму, я даю согласие на обработку персональных данных

Читайте еще