The harder you push, the harder the system pushes back.
SDLC (Software Development Lifecycle) – как раз такая система. Все верят в то, что вот сейчас модельки поумнеют, все разработчики начнут активно использовать AI, и разработка ускорится в разы. Но на самом деле значимого ускорения не произойдет, просто бутылочные горлышки появятся в других частях системы.
Когда фичи пишутся быстро, вопрос о том, продуктовые вопросы становятся еще более острыми – понять, что конкретно нужно пользователю и как задизайнить оптимальный UX. Мы и сейчас довольно плохо справляемся с тем, чтобы развивать продукт, не переусложняя его слишком сильно, и AI с этим не сильно поможет. Кстати, еще одна хорошая статья на тему – про то, что раньше идеи ничего не стоили, но теперь это поменяется.
Другой возможный сценарий – смешение бутылочных горлышек на этапы после написания кода. Если ваш пайплайн не готов к тому, что кода станет больше, а качество кго при этом существенно упадет – то общая производительность команды скорее всего только упадет.
Чтобы адаптировать SDLC под изменения, важно понимать их суть – помимо кода новым важным артефактом становятся промпты и спецификации, которые используются AI ассистентами и агентами. Из этого следует несколько практик, которые могут помочь:
👉Организовывать библиотеки промптов, которые с большой вероятностью дают хороший результат. Например, создают новый REST запрос с обработкой ошибок и валидацией входных значений. Эти промпты надо тестировать и версионировать.
👉Intent records. Это аналог Architecture Decisiob Records, который помогает сохранять контекст того, какую конкретно задачу решает определенный кусок кода, какие ограничения и требования на него накладываются.
👉Spec modules. Это подготовленные кем-то заранее универсальные спецификации, которые вы можете немного докрутить своими собственными бизнесовыми требованиями, и получить на выходе качественный модуль авторизации, личного профиля, кэширования или чего-то еще.