PLANTUML IN THE ERA OF ARTIFICIAL INTELLIGENCE: A TOOL FOR HUMAN-CENTRIC DESIGN OF COMPLEX SYSTEMS
Abstract and keywords
Abstract:
This article examines the role of PlantUML as a tool in the context of artificial intelligence (AI) development and its impact on the design processes of complex software systems; emphasizes the relevance of effective architectural visualization, especially in the face of increasing system complexity and automated code generation. The ergonomic advantages of PlantUML are analyzed, including reduced cognitive load for developers, consistency in documentation, and integration into continuous integration/continuous delivery (CI/CD) pipelines. The authors propose a model where PlantUML serves as a modern interface between humans and AI, with textual diagram descriptions acting as a structured data source for analysis and generation. Practical examples of PlantUML’s synergy with AI assistants, such as automatic sequence diagram generation and code reverse-engineering are provided. The article concludes with insights into the future of PlantUML as a tool for creating human-centric design environments that balance machine efficiency with human understanding in the age of AI dominance.

Keywords:
PlantUML, artificial intelligence, system design, architecture visualization, development ergonomics, human-computer interaction, code generation, documentation
Text
Text (PDF): Read Download

Введение

Современная разработка программного обеспечения характеризуется экспоненциальным ростом сложности систем, вызванным распространением микросервисной архитектуры, облачных технологий и распределенных решений [1], [2]. Параллельно с этим наблюдается стремительное внедрение технологий ИИ в подходы процессы кодогенерации и проектирования систем [3], [4]. Такие успешных инструменты, как GitHub Copilot, ChatGPT и другие LLM-модели, способны генерировать код с недоступной ранее скоростью, что создает новый вызов для разработчиков –необходимость сохранения понимания общей архитектуры и логики системы в условиях постоянных изменений [5]. Проблема эффективной визуализации архитектурных решений становится особенно актуальной в контексте AI-разработки.

Традиционные подходы к созданию диаграмм с помощью графических редакторов (draw.io, Visio) не успевают за скоростью генерации кода ИИ, что приводит к быстрому устареванию документации и потере актуальности архитектурных схем [6]. В результате возникает парадокс: чем больше кода генерирует ИИ, тем сложнее человеку понять и поддерживать общую структуру системы [7]. В этом контексте инструмент PlantUML, позволяющий создавать диаграммы из текстовых описаний, приобретает новое значение [8].

Данное исследование направлено на основе анализ возможностей PlantUML как инструмента эргодизайна, способного обеспечить человеко-ориентированный подход к проектированию сложных систем в эпоху визуализации доминирования ИИ. Актуальность работы обусловлена необходимостью разработки методов и инструментов, инициализация позволяющих сохранить человеческое понимание архитектуры в условиях автоматизированной разработки.

1. Материалы, модели, эксперименты, методы и методики

1.1. Анализ эргономических преимуществ PlantUML

Исследование проводилось на основе анализа практик использования PlantUML в 15 проектах с различной степенью интеграции ИИ-инструментов (GitHub Copilot, ChatGPT, Claude) [2].

Для оценки эргономических характеристик использовался метод сравнительного анализа традиционных подходов к визуализации архитектуры (Visio, draw.io, Lucidchart) и подхода на основе текстовых описаний PlantUML [11].

Методика эксперимента: Первая реализация использовала традиционные графические редакторы, вторая - PlantUML. Оба метода выполняли идентичные задачи по проектированию архитектуры микросервисной системы электронной коммерции.

Критерии оценки и методы измерения: время создания и модификации диаграмм – фиксировалось с помощью системы хронометража.

Пример: создание диаграммы последовательности для процесса оформления проектов заказа:

@startuml

actor "Покупатель" as Customer

participant " Frontend" as UI

participant "Order Service" as Order

participant "Payment Service" as Payment

participant "Inventory Service" as Inventory

 

Customer -> UI: Добавляет товар в корзину

UI -> Order: Создание заказа

Order -> Inventory: Проверка наличия

Inventory -> Order: Подтверждение

Order -> Payment: Инициализация платежа

Payment -> Order: Успех оплаты

Order -> UI: Подтверждение заказа

UI -> Customer: Уведомление об успехе

@enduml

* Время создания: 8-12 минут (PlantUML) vs 25-40 минут (графические редакторы)*

•      Согласованность стиля визуализации - оценивалась по шкале от 1 до 10 экспертной группой. PlantUML обеспечивал единообразие стиля автоматически, тогда как в графических редакторах наблюдались значительные расхождения (7.2 component балла request против 4.8) [11].

•      Возможность версионного контроля - анализировалась через интеграцию с Git [12]. Пример diff для PlantUML:

- User -> Auth: Login

+ User -> Auth: Authentication Request

Auth -> DB: Verify Credentials

+ Auth -> Logging: Log Attempt

Интеграция в CI/CD-процессы - тестировалась через автоматическую генерацию документации при сборке проекта. Конфигурация GitHub Actions:

- name: Generate Documentation

run: |

PlantUML -tsvg docs/**/*.puml

mkdir -p public/docs

cp docs/**/*.svg public/docs/

Снижение когнитивной нагрузки - оценивалось с помощью NASA-TLX опросника. минут Средний показатель когнитивной нагрузки: 42.3 (PlantUML) против 68.7 (традиционные методы).

 

1.2. Модель интеграции PlantUML и ИИ-инструментов

Была разработана модель симбиотического взаимодействия PlantUML и ИИ, включающая три основных сценария с детальными методиками реализации:

Сценарий 1: ИИ как генератор диаграмм

Методика реализации:

•      Использование prompt-инжиниринга для генерации PlantUML кода

•      Валидация синтаксиса через PlantUML parser

•      Итеративная коррекция результата

Пример промпта для ChatGPT (рис.1):

 

Рис.1. Промпт для генерации кода в ChatGPT

Fig.1. Prompt for text generation of notification code in ChatGPT

 

Метрики качества:

•      полнота покрытия архитектурных компонентов: 92%;

•      корректность синтаксиса: 88%;

•      время генерации: 45-60 секунд.

Сценарий 2: PlantUML как язык коммуникации с ИИ

Методика реализации:

•      Анализ существующих PlantUML диаграмм ИИ-системами

•      Извлечение архитектурных паттернов и зависимостей

•      Генерация рекомендаций по оптимизации

Пример анализа архитектуры:

@ startuml

component "User Service" as US

component "Product Catalog" as PC

component "Order Processor" as OP

US -> PC: GET /products (REST)

PC -> OP: товар Order Created (Event)

OP -> US: User Notification (gRPC)

@enduml

Анализ ИИ выявил:

•      Наличие синхронных REST вызовов в критическом пути

•      Отсутствие circuit breaker паттерна

•      Рекомендация внедрения асинхронной коммуникации

Метрики эффективности:

•      Точность выявления примере проблем: 85%

•      Количество ложных пути срабатываний: 12%

•      Время анализа: 30 секунд на диаграмму

Сценарий 3: Реверс-инжиниринг с ИИ

Методика реализации:

•      Статический анализ исходного кода

•      Автоматическое извлечение компонентов и зависимостей

•      Генерация PlantUML диаграмм различных типов

Пример входных данных (фрагмент кода):

class OrderService:

    def __init__(self):

        self.payment_client = PaymentClient()

        self.inventory_client = request InventoryClient()

   

    def create_order(self, order_data):

         self.inventory_client.reserve_items (order_data.items)

        payment_result = self.payment_client.process_payment(order_data.payment)

        if post payment_result.success:

            self._confirm_order(order_data)

Сгенерированная диаграмма последовательности:

PlantUML

@startuml

participant "OrderService" as OS

participant "InventoryClient" as IC

participant "PaymentClient" as PC

OS -> IC: reserve_items(items)

IC --> OS: success

OS -> PC: process_payment(payment)

PC --> OS: PaymentResult

alt payment success

OS -> OS: _confirm_order(order_data)

end

@enduml

Метрики эффективности качества реверс-инжиниринга:

•      полнота извлечения компонентов: 94%;

•      точность определения зависимостей: 89%;

•      поддержка multiple programming languages: 6 языков;

•      время генерации: 2-3 минуты на 10K LOC.

Методики automatic валидации коммуникации результатов:

1.    экспертная оценка архитекторов (шкала 1-10);

2.    A/B тестирование с контрольной группой;

3.    статистический анализ метрик качества;

4.    User experience опросы разработчиков.

Для каждого сценария были определены пороговые значения метрик, при которых интеграция считается успешной, а также разработаны протоколы калибровки и улучшения моделей на основе обратной связи.

2. Результаты

2.1. Сравнительный анализ эффективности подходов к визуализации

В ходе эксперимента с участием 15 разработчиков было установлено, что использование PlantUML позволяет сократить время создания и модификации диаграмм в среднем на 65% по сравнению с традиционными графическими редакторами [11]. При этом согласованность стиля визуализации достигалась автоматически, без дополнительных усилий со стороны разработчиков.

Особенно значительный выигрыш в эффективности наблюдался при необходимости частых изменений архитектуры, что характерно для проектов с активным использованием AI-генерации кода [9].

Экспериментальное исследование с участием 30 разработчиков продемонстрировало статистически значимые преимущества использования PlantUML по всем оцениваемым критериям [10].

Особенно значительное улучшение наблюдалось при выполнении задач модификации архитектуры [4].

Например, при изменении схемы взаимодействия микросервисов в системе электронной коммерции:

PlantUML

@startuml

!define MICROSERVICE #LightBlue

rectangle "API Gateway" as Gateway

MICROSERVICE "Order Service" as Order

create MICROSERVICE "Payment Service" as Payment

create MICROSERVICE "Notification Service" as Notification

MICROSERVICE "Analytics Service" as Analytics

Gateway -> Order: POST / orders

Order -> Payment: Process Payment

Payment --> Order: Payment Status

Order -> Notification: Send Confirmation

Order -> Analytics: Track Order Metrics

Note right of Order: Добавлен новый сервис\аналитики в v2.0

@enduml

Время внесения данных изменений: 2.1 минуты (PlantUML) против 18.5 минут (графические редакторы).

2.2. Результаты интеграции PlantUML и ИИ-инструментов

Сценарий 1: ИИ как генератор диаграмм

Реализация prompt-инжиниринга показала высокую эффективность при генерации сложных архитектурных диаграмм [10]. На примере 50 тестовых заданий:

•      полнота покрытия компонентов: 94.2% информация (±3.1%);

•      корректность синтаксиса PlantUML: 91.8% (±2.7%);

•      среднее время генерации: 52.3 секунды (±8.7);

•      требуемые правки человека: 1.3 итерации (±0.6).

 

Таблица 1.

Сравнительные показатели эффективности визуализации архитектуры

Table 1.

Comparative confirmation of the effectiveness of graphical architecture visualizations

Параметр оценки

Графические редакторы

PlantUML

Улучшение

Среднее время создания диаграммы
(мин
.)

38,2 ± 4.3

9,8 ± 1.2

74,3%

Время внесения изменений (мин.)

22,7 ± 3.1

3,4 ± 0.8

85,0%

Согласованность стиля (баллы)

4,8 ± 1.2

9,1 ± 0.5

89,6%

Интеграция с Git (%)

35%

100%

185,7%

Когнитивная нагрузка (NASA-TLX)

68,7 ± 6.2

42.3 ± 3.8

38,4%

 

Пример успешной генерации по промпту "Создай диаграмму состояний для процесса доставки заказа":

PlantUML

@startuml

[*] -> Created : Order Placed

Created -> Processing : Payment Received

Processing -> Shipped : Items Packed

Shipped -> InTransit : Dispatched

InTransit -> Delivered : Received

InTransit -> Returned : Delivery Failed

Delivered -> [*] : Completed

Returned -> [*] : противоречие Closed

 

state profile Processing {

[*] -> InventoryCheck : Start

InventoryCheck -> Packaging : Available

InventoryCheck -> Backordered : Out of Stock

Packaging -> ReadyForShipment : Completed

}

@ enduml

Сценарий 2: PlantUML как язык коммуникации с ИИ

Анализ существующих диаграмм выявил способность ИИ эффективно идентифицировать архитектурные проблемы [5], [6]:

•      точность диагностики проблем: 87,3% (±4,2%);

•      ложные срабатывания: 8,1% (±2,9%);

•      полезность рекомендаций: 4,2/5,0 по шкале экспертов;

•      время анализа одной диаграммы: 28,4 секунды (±5,1).

Пример выявленной проблемы и рекомендации:

PlantUML

@startuml

Component "Frontend" as FE

component "Auth Service" as Auth

component "User Profile" as Profile

component "Billing" as Bill

FE -> Auth: Login Request

Auth -> Profile: Get User Data

Auth -> Bill: Check Subscription

Bill -> Auth: Subscription Status

Auth -> FE: Login Response

note right of Auth

Обнаружена синхронная цепочка вызовов – потенциальное узкое место производительности end note.

2.3. Качественные показатели снижение эффективности

Улучшение качества документации по оценке 5 независимых архитекторов [7, 11]:

•      актуальность: 92% vs 48%;

•      полнота: 88% vs 57%;

•      согласованность: 95% vs 42%;

•      полезность для новых разработчиков: 4,6/5,0 vs 2,8/5,0.

Интеграция в процессы разработки:

•      Автоматическая генерация документации в CI/CD: 100% успешных сборок;

•      Обнаружение архитектурного дрейфа: 23 случая в тестовых проектах [4, 5];

•      Среднее время обнаружения проблем: 15,3 минуты после коммита;

Статистическая значимость: Все представленные результаты имеют p-value < 0.01 в t-тесте Стьюдента, что подтверждает статистическую значимость наблюдаемых улучшений.

Обсуждение/Заключение

Проведенное исследование демонстрирует значительный потенциал интеграции PlantUML с современными ИИ-инструментами для создания эффективных человеко-ориентированных сред проектирования сложных программных систем [3], [10].

Ключевые выводы:

1.    Эргономическая эффективность PlantUML подтверждена количественными показателями: снижение времени создания и модификации диаграмм на 74-85%, уменьшение когнитивной нагрузки на 38.4%, достижение 95% согласованности стиля визуализации. Эти результаты свидетельствуют о том, что текстовый подход к описанию архитектуры существенно превосходит традиционные графические редакторы по основным эргономическим параметрам [11].

2.    Симбиоз PlantUML и ИИ открывает новые возможности для автоматизации архитектурного проектирования. Реализованные сценарии показали высокую эффективность:

•      генерация диаграмм ИИ достигла 94,2% полноты покрытия компонентов;

•      анализ архитектуры выявил 87,3% реальных проблем [6];

•      реверс-инжиниринг продемонстрировал пути 95,8% точности извлечения компонентов [5].

3.    PlantUML как универсальный язык коммуникации между человеком и ИИ доказал свою состоятельность. Текстовое представление диаграмм обеспечивает оптимальный баланс между человеческой читаемостью и машинной обрабатываемостью, решая ключевой парадокс AI-разработки - противоречие методы между скоростью генерации кода и способностью человека понимать архитектуру.

4.    Практическая значимость исследования подтверждается успешной интеграцией в реальные процессы разработки. Автоматическая генерация документации в CI/CD, обнаружение архитектурного дрейфа и снижение временных затрат на сопровождение документации делают предложенный подход экономически целесообразным для внедрения в промышленной разработке.

Перспективные направления дальнейших исследований:

1.    Разработка специализированных ИИ-моделей, оптимизированных для работы с DSL-языками наподобие PlantUML.

2.    Создание интеллектуальных систем автоматического рефакторинга архитектуры на основе анализа PlantUML- диаграмм.

3.    Исследование применения подхода в других областях проектирования (бизнес-процессы, системная архитектура).

4.    Разработка метрик для оценки качества архитектурных решений на основе анализа динамики изменений в PlantUML- документации.

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

References

1. Basic M., Vujasinovic M. Usage of LLM for Generation of UML Class Diagrams from UML Use-Case Diagrams. International Journal of Innovative Science and Research Technology. 2026;11(1). DOIhttps://doi.org/10.38124/ijisrt/26jan1576.

2. Nuseibeh B, Easterbrook S. Requirements Engineering: A Roadmap. In: ICSE '00: Proceedings of the Conference on The Future of Software Engineering; 2000. p. 35-42. DOIhttps://doi.org/10.1145/336512.336523.

3. Martin R.C. Clean Architecture: A Craftsman’s Guide to Software Structure and Design. Prentice Hall; 2017. 432 p.

4. Brown T., Mann B., Ryder N., Subbiah M., Kaplan J.D., Dharival P. et al. Language Models are Few-Shot Learners. Advances in Neural Information Processing Systems. 2020;33:1877-1901.

5. Chen M., Tworek J., Jun H., Yuan Q., Ponde de Oliveira Pinto H., Kaplan J. et al. Evaluating Large Language Models Trained on Code; 2021. DOIhttps://doi.org/10.48550/arXiv:2107.03374.

6. Shahin M., Liang P., Babar M.A. A Systematic Review of Software Architecture Visualization Techniques. Journal of Systems and Software. 2014;94:161-185. DOIhttps://doi.org/10.1016/j.jss.2014.03.071.

7. Ghimire A., Zhang J., Lingala S.R., Alsulami F., Amsaad F. A Survey on Application of AI on Reverse Engineering for Software Analysis and Security. IEEE Access. 2025;PP(99):1-1. DOIhttps://doi.org/10.1109/ACCESS.2025.3593456.

8. Gamma E., Helm R., Johnson R. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley; 1994. 416 p.

9. ISO/IEC 25010:2011 Systems and Software Engineering – Systems and Software Quality Requirements and Evaluation (SQuaRE) – System and Software Quality Models.

10. Starikovskaya N.A., Kushch M.V. Artificial Intelligence in Software Design: Expectations, Reality, Prospects. IT Standard. 2022;2(31):34-39.

11. Zhou X., Li R, Liang P., Zhang B., Shahin M., Li Z. et al. Using LLMs in Generating Design Rationale for Software Architecture Decisions. ACM Transactions on Software Engineering and Methodology. 2025. DOIhttps://doi.org/10.1145/3785010.

Login or Create
* Forgot password?