Будущее работы специалистов в области разработки и доставки приложений (application development and delivery, AD&D) должно измениться благодаря искусственному интеллекту, прогнозирует в корпоративном блоге вице-президент и главный аналитик Forrester Research Диего Ло Джудиче.

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

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

TuringBot на предприятии: с далеким прицелом на будущее

Ответственность за эти задачи ложится на TuringBots, или SW-ботов, которые помогают создавать корпоративное ПО. Свое название они получили в честь гениального Алана Тьюринга, а придумали его специалисты Forrester. Эксперты прогнозируют, что тьюрингботы буду созданы несколькими вендорами в ближайшие 5-10 лет или даже раньше, основываясь на новаторских инновациях в области ИИ, таких как ИИ 2.0. Они смогут кодировать приложения быстрее и лучше человека, причем делать это безошибочно. Бизнес-платформы для пакетированных приложений, среды типа Low-code, инструменты профессиональной разработки и тестирования — все они будет задействовать TuringBots и уже начинают это делать.

Тьюрингботы будут использовать ИИ и машинное обучение для создания моделей, которые «учатся» на существующем коде и определяют, какой генератор кода может соответствовать требованиям бизнес-приложений и инфраструктуры для создания и доставки исходного и исполняемого кода. Наиболее вероятной базовой технологией для них может стать обучение с подкреплением, но к числу кандидатов можно отнести и другие мощные технологии ИИ, начиная с моделей глубокого обучения и GPT-3 и заканчивая нейросимволическим ИИ (neuro-symbolic reasoning). Не исключено, что базой для ботов нового поколения станет сочетание всех этих технологий.

Тьюрингботы должны будут работать на основе следующих основных принципов:

  • артефакты дизайна должны отображаться в стандартизированном формате;
  • при делегировании полномочий на написание целевых систем сгенерированный код не должен быть удобочитаемым для человека, как это было в прошлом. Почему? Потому что боты могут регенерировать код в любое время и с высокой скоростью. Итак, все, что нужно будет сделать, это изменить требования и ограничения;
  • тем не менее, сгенерированный код может быть читаем, если боты пишут его совместно с разработчиками (пример: GitHub Copilot);
  • тьюрингботы должны будут соответствовать нескольким заранее выбранным соглашениям об уровне обслуживания и ограничениям;
  • если потребуется написание специального кода, точки расширения будут определены как службы в артефактах проектирования;
  • отталкиваясь от требований к дизайну, набору технологий реализации и желаемых архитектурных качеств, боты будут создавать несколько версий бизнес-приложений.

Тьюрингоботы навсегда изменят методы создания приложений для предприятий

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

  • разработчики будут использовать инструменты для разработки сквозных артефактов приложений, что станет отправной точкой для разработки требований. Нужно пояснить, что речь здесь не о традиционной генерации на основе моделей UML или BPMN;
  • архитекторы корпоративных приложений будут определять базовые стеки приложений и инфраструктурных технологий (например, фреймворки пользовательского интерфейса, API, микросервисы, Kubernetes, базы данных, цепочки инструментов непрерывной интеграции/непрерывной доставки и т. д.). Надежной отправной точкой для помощи может стать IBM AI for Code, предлагающий инструменты на базе ИИ.
  • архитекторы решений будут определять качества архитектуры приложений (т. е. нефункциональные требования) в отношении доступности, эффективности, безопасности, надежности, нагрузки, доступности и т. д.;
  • тьюрингботы будут «читать» и «изучать» все вышеперечисленные артефакты сквозного проектирования приложений и требования к качеству, включая эталонные стеки приложений и инфраструктурных технологий;
  • AD&D-профессионалы и программные боты будут вместе создавать, изменять и делать рефакторинг приложений и масштабировать их на порядки быстрее, чем это делается сегодня, значительно снижая затраты — и все это будет максимально приближено к гибкости нажатия кнопок.