Технологическая сингулярность
Точку достижения человечеством технологической сингулярности мы видели много раз в научно-фантастических фильмах: создатель технологии перестает понимать, как она устроена и будет развиваться. Безусловно, схожие процессы происходят и в области разработки программного обеспечения. С середины 2023 года концепция AI-augmented software development продолжает становиться все более востребованной.
Интересным представляется кейс разработки приложения Alter Ego для умных часов, в рамках которого рассмотрен вариант использования искусственного интеллекта в парадигме AI-augmented software development. Alter Ego - это инструмент искусственного интеллекта (персональный помощник с 100+ функциями и "интеллектом" 25-летнего европейского человека), который был создан командой инженеров с помощью других инструментов ИИ.
Android продукт: AI пишет AI
Проект разработки проводился с июля 2023 года по март 2024, в нем была задействована распределенная производственная команда ИТ-компании Slavasoft. Программный продукт представляет собою англоязычное Android-приложение для смартчасов «Alter Ego» (Альтер Эго), реализующее функции «умного» ассистента \ цифрового компаньона. Релизное развитие происходило в два этапа: MVP и Major. Программный продукт Alter Ego для ОС Google Wear доступен для скачивания из магазина Google.Market бесплатно и без географических ограничений.
Особенная ирония проекта заключалась в том, что сгенерированные инструментом ИИ артефакты и кодовая база для приложения стали основой искусственного интеллекта Alter Ego - фактически это как раз элемент технологической сингулярности: "машины" делают другие и более сложные "машины".
AI-augmented software development: будущее наступило?
Полученные результаты применения инструментов ИИ позволяют сделать выводы о практиках AI-augmented software development.
1) Генеративные LLMs позволяют в короткие сроки создавать масштабные программные продукты: приложение Alter Ego обладает 100+ функциями и говорит, как 25-летний взрослый человек.
2) Генерация кода является итерационным процессом. Решающее значение имеют настойчивость инженера в повторении промп-запросов и значительная детализация системных требований.
3) Весь контент приложения, документация, авто-тесты и тест-кейсы легко полностью выполняются в инструменте LLMs.
Заключение
Приведенный кейс подтверждает принципиальную возможность успешного использования инструментов ИИ в создании артефактов софтверного проекта на всех стадиях его жизненного цикла – от ТЗ и кода до документации, что позволило прийти к высочайшей для команды скорости разработки ПО.
И хотя машины пока не могут создавать новые машины (и запускать апокалипсис), но практические примеры создания программных решений ИИ с помощью раннее созданных инструментов ИИ мы видим очень эффективными.