Дискавери с искусственным интеллектом
Мне удалось приспособить искусственный интеллект к выполнению фазы анализа и проектирования (дискавери). Результат превзошёл наши ожидания: время выполнения проектирования сократилось в 5 раз при высоком уровне качества результирующих артефактов.
На самом деле я ничего не изобрел. Мой опыт может повторить каждый. И каждый может получить качественный результат. Рассмотрим подход по шагам.
Дискавери
Сложность дискавери заключается в том, что аналитикам необходимо пройти путь от осознания потребностей в системе до ее спецификации на уровне пользовательских сценариев, когда однозначно определена функциональность решения и логика его применения.
Этот путь сопряжён с необходимостью разработки большой цепочки артефактов, назначением которых является развитие первоначальной постановки задачи в необходимые функциональные и технические спецификации системы.
Преимущества ИИ
ИИ обладает рядом возможностей, благодаря которым во многих задачах он превосходит человека:
- Способность отслеживать зависимости и определять цепочки каскадных изменений.
- Поиск зависимостей, систематизация и качественное структурирование информации.
- Быстрый поиск аналогичных решений и формирование предложений по аналогу.
- Знание огромного количества методологий, нотаций, подходов, предметных областей, типовых решений и всякого такого, что нужно для выполнения дискавери.
Но даже не это важно. Важно то, что ИИ вполне успешно решает задачи анализа и проектирования на уровне начинающего мидла. А это означает, что я могу отдавать ему задачи и не тратиться на всякие софт истории. Мне больше не надо объяснять, зачем мне этот результат, почему задачу надо сделать именно так, выслушивать истории о том, что кому-то показалось, что так будет правильнее, следить за тем, что кто-то что-то забыл или проигнорировал и т.д.
ИИ существенно снижает влияние человеческого фактора.
Проблемы ИИ
Использование ИИ «в лоб» сопряжено с рядом проблем, которые не позволяют полноценно решать задачи анализа:
- Ограниченные возможности удержания контекста — чем сложнее промпт и больше исходных данных прилагаешь к нему, тем больше шансов получить от ИИ абстрактный ответ, а не что-то похожее на необходимый результат.
- Дискавери подразумевает переработку и обогащение информации с целью синтеза решения. Т.е. в ходе выполнения работ контекст постоянно расширяется, детализируется и усложняется за счет множества перекрёстных зависимостей. Как следствие, одним промптом не получается сделать дискавери или хотя бы его значительную часть - ИИ уходит в избыточные обобщения и отвлекается от задачи.
- Неповторимость результата - на один и тот же промпт один и тот же GPT даст разные ответы. Точнее по смыслу они будут одинаковые (или близко к тому), а по содержанию и структуры могут вообще не иметь ничего общего. Поэтому при корректировке ранее подготовленных артефактов ИИ может дать непредсказуемый в части структуры и содержания результат.
- Постоянное стремление сделать что-то по-своему.
Получается интересная штука: у ИИ есть всё, чтобы качественно сделать дискавери, но его неспособность удержать большой контекст и быть последовательным в достижении стабильного результата создают подозрение, что он немного страдает синдромом дефицита внимания. Надо ему помочь с этим справиться.
Фреймворк
Основная проблема в использовании ИИ - сложность удержания контекста. Я попытался ее решить за счёт использования атомарных артефактов и определения дорожной карты выполнения дискавери.
Под атомарными артефактами имеются в виду документы, нацеленные на конкретную информацию: бизнес-требования, ожидания и потребности, модель данных, сценарии использования, событийные модели и т.п. Я отказался от больших документов со сложной структурой в пользу мелочёвки.
При таком подходе каждый артефакт имеет однозначную цель, он однороден по содержанию. Работа с ним не требует широкого контекста, что упрощает задачу ИИ.
Дорожная карта в нашем случае выполняет две функции:
- выстраивает зависимости между артефактами, выстраивает из них граф преобразования и обогащения информации в ходе проектирования;
- определяет последовательность работ, в том числе участие человека в проектировании.
Кроме того, дорожная карта определяет точки контроля результата (они же — точки отката в случаях, когда дальнейшая детализация решения пошла "не туда") и точки влияния человека на результат.
Человек
Даже в условиях фреймворка качественно выполнить дискавери чисто на ИИ не выйдет. Этому есть несколько причин:
- ИИ плохо синтезирует решения, особенно верхнеуровневые, его надо направлять (для этого в дорожной карте должны быть точки влияния человека);
- в ходе дискавери регулярно возникает необходимость учёта выявляемых в результате дискуссий фактов (это тоже точки влияния);
- достижение необходимого результата требует контроля промежуточных решений и их корректировки с целью получения продукта, который запрашивает клиент.
Т.е. выполнение проектирования с привлечением ИИ представляет собой плотное взаимодействие аналитика и ИИ, в котором аналитик играет роль ведущего, а ИИ — ведомого.
Отсюда вытекают требования к аналитикам, привлекаемым к дискавери на ИИ. Это должны быть люди, которые:
- Способны уверенно работать с методологиями проектирования и самостоятельно определить дорожную карту дискавери такую, которая определит последовательность артефактов, преобразующих и развивающих первоначальную идею в проект системы;
- Способны оценить качество промежуточных и финальных результатов в контексте выбранной дорожной карты;
- Способны синтезировать решения в контексте выбранной дорожной карты и таким образом влиять / определять результат проектирования.
Иными словами, это методически подкованные старшие аналитики/архитекторы с опытом проектирования информационных систем "с нуля".
Однозначность результата
Чтобы обеспечить однородность результата, я использую шаблоны артефактов, которые определяют:
- структуру артефакта;
- правила заполнения артефакта.
Это позволяет мне не писать в промпте, какой результат я хочу получить. Я прошу ИИ разработать, скажем, требования, и оформить их по шаблону в соответствии с правилами, изложенными в шаблоне. Т.е. промпт определяет, что я хочу и на основании чего, а оформительская часть - в шаблоне.
Выполнение дискавери с ИИ
В этом разделе кратко обобщу тот опыт, который наша команда уже получила.
Принцип «человек + машина»
ИИ выступает помощником, который:
- Ускоряет рутину: генерация документов, диаграмм, таблиц
- Улучшает анализ за счет качественного выявления связей и зависимостей
- Обеспечивает консистентность и единообразие артефактов
- Быстро обрабатывает большие объёмы данных
Человек:
- Ставит задачи
- Верифицирует и корректирует результаты
- Синтезирует ключевые идеи и концепции
- Принимает решения по рекомендациям и идеям, выдвигаемым ИИ
Инструменты
ИИ‑инструменты: Cursor IDE
Традиционные: интервью со стейкхолдерами, анализ текущих процессов, воркшопы/мозговые штурмы, инструменты моделирования
Роль Cursor IDE
Работа с множеством файлов:
- Промпты на обработку десятков артефактов одновременно
- Анализ зависимостей и каскадные изменения
- Учет связей между артефактами
Ревью и качество:
- Отображение изменений в артефактах с возможностью их акцепта или отклонения
- Выстраивание трассировок с отслеживанием влияния правок
- Автопроверка консистентности
- Сквозные валидации промежуточных и финальных результатов (например, обеспечит ли система с такой функциональной архитектурой и такими бизнес-функциями обеспечить автоматизацию целевых процессов и соответствие ожиданиям стейкхолдеров)
Интерактивность:
- Ручные правки с учётом рекомендаций ИИ, основанных на понимании проекта
- Итеративное улучшение с сохранением контекста
- Автоматическая синхронизация между связанными артефактами
Примеры использования:
- Одновременное обновление 8 документов при изменении требований
- Автосинхронизация ER‑диаграммы с бизнес‑функциями и бизнес‑процессами
- Каскадное обновление сценариев при изменении процессов
Процесс работы
Сбор и структурирование требований
Роль ИИ: анализ интервью, раскладка по шаблонам.
Роль человека: ревью результатов.
Результат: 73 ожидания стейкхолдеров (таблица), 30 бизнес‑требований с MoSCoW, матрица трассируемости.
Проектирование концептуальной архитектуры
Роль ИИ: генерация концептуальной архитектуры.
Роль человека: описание идеи ключевых сценариев использования, корректировка концептуальной архитектуры
Результат: диаграмма концептуальной архитектуры с 4 уровнями (пользователи, бизнес‑логика, интеграция, данные), 15 компонентов, матрица взаимодействий, описание ключевых сценариев (с учётом потребностей и бизнес-требований).
Определение to‑be процессов
Роль ИИ: описание процессов по итогам интервью, построение диаграммы бизнес-архитектуры доменной области проекта, определение бизнес-правил, которые должны быть реализованы в системе (верификации, сверки, калькуляции и т.п.).
Роль человека: ревью и корректировка результатов.
Результат: 10 бизнес‑процессов, 55 бизнес‑правил.
Определение функциональности
Роль ИИ: синтез 50+ бизнес‑функций с критериями приемки на основе бизнес-процессов и концептуального решения, сопоставление бизнес‑функций на бизнес-требования и концептуальную архитектуру.
Роль человека: ревью и корректировка результата.
Сильные стороны подхода
- Скорость и эффективность: автогенерация документации и диаграмм; например, ER‑диаграмма 50+ сущностей получена за ~2 часа вместо 2–3 дней.
- Качество и консистентность: единые стандарты, шаблоны и терминология; проверки полноты логической целостности.
- Cursor IDE: мультифайловая обработка, каскадные изменения, визуальное ревью, интерактивные правки, анализ зависимостей.
- Структурированный фреймворк: дорожная карта, шаблоны, трассируемость и встроенные проверки качества.
Слабые стороны и ограничения
- Зависимость от входных данных: при неполной/противоречивой информации результаты страдают. Решение: обязательная валидация входных данных и уточняющие итерации.
- Ограниченное понимание домена: ИИ может не учитывать специфику. Решение: привлечение предметных экспертов и детальный контекст через формирование дополнительных артефактов.
- Ограничения фреймворка: невозможно создать один рабочий фреймворк, эффективный для всего многообразия проекта. Решение: адаптация под проект, следовать здравому смыслу (для этого аналитик должен быть методически подкованным).
- Постоянное стремление ИИ налить воды: добавление в контент ненужных выводов, рассуждений, оценок качества полученного результата. Решение: запрет добавления подобных «резолюций» через промпты, использование шаблонов артефактов.
Заключение
Пробный опыт использования ИИ в дискавери показал существенный потенциал подхода, основанного на комбинации методологии проектирования и ИИ-агента, способного работать с большим пулом файлов.
Выступая в роли "рабочих рук", ИИ способен заменить мидл аналитиков, снизить человеческий фактор. При этом он усиливает ведущих специалистов, исключая из их работы человеческий фактор и рутину, существенно сокращая время на синтез контента и проработку альтернатив и позволяя больше сфокусироваться на проектируемом решении..
Cursor IDE обеспечивает мультифайловую работу и каскадные изменения, а структурированный фреймворк — качество и управляемость разрабатываемых артефактов.
Обсудить этот текст можно в комментариях под постом в VK
