Архитектурные диаграммы с помощью LLMs (ChatGPT)
Ревьювил на выходных внутренние архитектурные документы и наткнулся на инструкцию о том как правильно писать RFC/ADR а также как можно визуализировать архитектурные диаграммы при помощи чатботов. Сама инструкция была дельной и выглядела так
Нарисуй на plantuml диаграмму
Есть postgres база. В ней есть таблица под названием XXX. Данные в эту табличку XXX пишет фронтенд YYY посредством обращения к бэкенду ZZZ, работающему с этой базой. Есть ETL процесс который перекладывает эту таблицу в clickhouse WWW, в таблицу VVV. При помощи Jupyter мы подключаемся к DWH и анализируем эту таблицу VVV
В принципе, таким макаром можно попросить LLM сгенерировать
- диаграммму классов, компонентную диаграмму, sequence или activity, если нам нужны UML диаграммы
- все виды диаграмм из C4 Model: Context, Containers, Components, and Code
- любые другие диаграммы: ER, DFD, IDEF, BPMN, ...
Правда, в этой инструкции авторы забыли, что на выходе из LLM иногда получается треш, а значит надо знать эти нотации самостоятельно и уметь их читать, а также желательно моделировать. В итоге, визуализировать с помощью ChatGPT конечно весело, но визуализация должна помогать + быть достаточно точной. А для того, чтобы проверить насколько она хороша, я бы рекомендовал не просто командовать чатботу, но еще изучить документацию пл моделированию, например, такую
- Стандарт по UML
- Документацию по platuml
- Документацию по C4 Model
- И любая другая документация по нужной вам нотации моделирования
Без таких базовых знаний сложно отвалидировать то, что выдала LLMка
#Software #SoftwareArchitecture #Architecture #Engineering #SoftwareDevelopment