Концептуальная модель предметной области#

Общая#

@startuml
!pragma layout smetana
skinparam nodesep 50
skinparam ranksep 80
skinparam linetype ortho
hide circle

rectangle "**Модель**" as model {
}
rectangle "**Сущность**" as entity {
}
rectangle "**Действие**" as action {
}
rectangle "**Свойство**" as property {
}
rectangle "**Автогенератор**" as autogenerator {
}
rectangle "**Связь**" as link {
}
rectangle "**Генератор**" as generator {
}
rectangle "**Исполнитель**" as executor {
}
rectangle "**Стенд**" as stand {
}
rectangle "**Шаблон**" as template {
}
rectangle "**Набор**" as order {
}
rectangle "**Шаг**" as step {
}
rectangle "**Задача**" as task {
}

model ||--o{ entity : содержит
entity ||--o{ action : содержит
action ||--o{ property : "имеет              "
property ||--o| autogenerator : подключен
property ||-left-o{ link : "\n\nопределяет"
link ||--|| property : связывает входное \n свойство с выходным свойством \n другого действия
action ||-down-|{ generator : "использует                  "
action ||--|{ generator : "содержит             "
generator ||-down-|| executor : выполняется через
executor ||--|{ generator : "управляет             "
action ||--|{ step : "является экземпляром               "
action ||--|{ task : "является экземпляром               "
template ||--|{ step : содержит
order ||-up-|{ task : содержит
stand ||-left-|{ generator : "                    содержит         "

@enduml

Роли#

Роль

Описание

Архитектор

Создает модели, сущности, действия, шаблоны, а также настраивает генераторы и устанавливает связи между действиями

Тестировщик

Запускает наборы на генерацию, мониторит выполнение

Администратор

Управляет исполнителями (например, Jenkins), настраивает стенды

Ключевые сущности#

Сущность

Описание

Модель

Информационная единица

Сущность

Группа операций внутри системы (например, Платежи/Пользователи), объединенные каким-либо признакам, непосредственно связанные с наименованием модели

Действие

Атомарная операция (например, Смена пользователя)

Свойство

Параметр операции (входной: client_id, выходной: transaction_id)

Генератор

Конкретная реализация операции (например, REST-запрос)

Автогенератор

Алгоритм случайных значений (например, random UUID)

Связь

Правило: «выход transaction_id -> вход payment_id»

Исполнитель

Ресурс исполнения задач цепочки генерации (например, Jenkins)

Стенд

Окружение для генерации (DEV, TEST, PREPROD)

Набор

Одноразовый запуск цепочки генерации с фиксированными параметрами

Шаблон

Переиспользуемый сценарий с возможностью параметризации

Шаг и Задача

Конкретная реализация абстрактного Действия. Нет прямого наследования или ссылок — связь через параметры шаблона

Применение AI-инструментов#

Саммаризация по шаблону цепочки генерации тестовых данных и полям шагов, входящих в него#

../../_images/conceptual-model-summary.drawio.svg

Прогнозное моделирование, на основе которого система могла осуществить предгенерацию тестовых данных к моменту спроса пользователем#

../../_images/conceptual-model-predict.drawio.svg