Статья:

ЛЕГКОВЕСНЫЙ МОДЕЛЬНО-ОРИЕНТИРОВАННЫЙ ПОДХОД К АВТОМАТИЗАЦИИ БИЗНЕС-ПРОЦЕССОВ МАЛЫХ ТОРГОВЫХ ПРЕДПРИЯТИЙ: СКВОЗНАЯ ТРАНСФОРМАЦИЯ IDEF0 → BPMN → DFD → UML → КОД NESTJS

Конференция: XCVII Международная научно-практическая конференция «Научный форум: инновационная наука»

Секция: Технические науки

Выходные данные
Жолдыбекулы А. ЛЕГКОВЕСНЫЙ МОДЕЛЬНО-ОРИЕНТИРОВАННЫЙ ПОДХОД К АВТОМАТИЗАЦИИ БИЗНЕС-ПРОЦЕССОВ МАЛЫХ ТОРГОВЫХ ПРЕДПРИЯТИЙ: СКВОЗНАЯ ТРАНСФОРМАЦИЯ IDEF0 → BPMN → DFD → UML → КОД NESTJS // Научный форум: Инновационная наука: сб. ст. по материалам XCVII междунар. науч.-практ. конф. — № 6(97). — М., Изд. «МЦНО», 2026.
Конференция завершена
Мне нравится
на печатьскачать .pdfподелиться

ЛЕГКОВЕСНЫЙ МОДЕЛЬНО-ОРИЕНТИРОВАННЫЙ ПОДХОД К АВТОМАТИЗАЦИИ БИЗНЕС-ПРОЦЕССОВ МАЛЫХ ТОРГОВЫХ ПРЕДПРИЯТИЙ: СКВОЗНАЯ ТРАНСФОРМАЦИЯ IDEF0 → BPMN → DFD → UML → КОД NESTJS

Жолдыбекулы Али
магистрант 2 курса, Алматинский университет энергетики и связи имени Гумарбека Даукеева, Казахстан, г. Алматы
Калижанова Алия Уалиевна
научный руководитель, Phd, профессор-исследователь, Алматинский университет энергетики и связи имени Гумарбека Даукеева, Казахстан, г. Алматы

 

Аннотация. Представлена легковесная методология автоматизации бизнес-процессов малого торгового предприятия, основанная на последовательном применении нотаций IDEF0, BPMN, DFD и UML с последующей прямой трансформацией BPMN-моделей в сервисный код NestJS. Отказ от внешних BPMN-движков достигается за счёт формальных правил отображения элементов процесса в конструкции TypeScript. Предложен многокритериальный алгоритм резервирования запасов с коэффициентом приоритета αⱼ. Имитационное моделирование показывает преимущество алгоритма перед стратегиями FIFO и приоритетом по маржинальности. Нагрузочные испытания демонстрируют, что ручная трансформация обеспечивает выигрыш в пропускной способности в 2,8 раза и снижение потребления памяти в 3,4 раза по сравнению с эквивалентной реализацией на Camunda BPMN.

 

Ключевые слова: IDEF0, BPMN, DFD, UML, NestJS, модельно-ориентированная разработка, автоматизация бизнес-процессов, резервирование запасов, многокритериальный алгоритм, легковесный workflow.

 

Введение

Малые и средние торговые предприятия сталкиваются с фрагментацией информации, нечётким распределением ответственности и отсутствием оперативного мониторинга. Внедрение полнофункциональных ERP-систем для них часто экономически неоправданно. Модельно-ориентированная разработка (MDE) позволяет сократить разрыв между бизнес-требованиями и программным кодом [1, 3], однако типичные MDE-решения опираются на тяжелые BPMN-движки (Camunda, Activiti), избыточные для прототипов и небольших проектов [6, 4]. Цель данной работы разработать и экспериментально проверить легковесную методологию сквозной трансформации моделей бизнес-процессов в исполняемый код NestJS, обеспечивающую отказ от использования внешних BPMN-движков на этапе прототипирования для малых предприятий. 

2. Концептуальная модель сквозной трансформации Предложенная методология состоит из пяти шагов:

  1. IDEF0 функциональная декомпозиция процесса «Order‑to‑Cash» на три подфункции: приём и проверка заказа, обработка заказа, выполнение заказа.
  2. BPMN 2.0  детальное моделирование процесса с 21 задачей, 7 шлюзами и 4 дорожками. Все исключительные потоки явно отражены.
  3. DFD моделирование потоков данных, определяющее хранилища и внешние сущности.
  4. UML построение диаграмм классов, прецедентов и последовательностей. Установлено формальное отображение элементов BPMN в артефакты UML: дорожка → актор, группа задач → прецедент, хронологический поток → диаграмма последовательности.
  5. Прямая трансформация BPMN → код NestJS по формальным правилам (таблица 1). Аналогичные подходы рассматривались в [7, 8].

Таблица 1.

Правила трансформации BPMN → NestJS/TypeScript

BPMN элемент

Конструкция NestJS / TypeScript

Задача (Task)

Метод сервиса

Эксклюзивный шлюз (XOR)

if‑else

Параллельный шлюз (AND)

Promise.all

Пользовательская задача (User Task)

PATCH‑эндпоинт

Стартовое событие

POST‑эндпоинт

Данные (Data Object)

DTO / интерфейс

 

Данные правила позволяют вручную, но систематически переносить логику процесса в код без привлечения стороннего workflow-движка.

3. Многокритериальный алгоритм резервирования запасов

При дефиците запасов для каждого заказа j вычисляется коэффициент приоритета:

αⱼ = (mⱼ · pⱼ) / (1 + β · tⱼ),

где mⱼ – ожидаемая маржа, pⱼ – вероятность оплаты (0–1), tⱼ – время ожидания (дни), β – настраиваемый коэффициент. Заказы сортируются по убыванию αⱼ, доступные запасы распределяются соответственно. Это позволяет в одной целевой функции сбалансировать прибыльность, надёжность оплаты и время ожидания клиента. Подход развивает идеи классических работ по BPM [9, 2].

4. Имитационное моделирование алгоритма резервирования

Дискретно-событийное моделирование выполнено на Python. Параметры: 10 видов товаров, начальный запас 50 ед., пуассоновский поток заказов λ=20/день, пополнение каждые 3 дня, горизонт 30 дней. Сравнивались три стратегии (по 100 прогонов каждая). Методика расчёта показателей: общая прибыль — сумма маржи выполненных заказов; уровень выполнения — доля полностью выполненных заказов; среднее ожидание — среднее арифметическое времени от поступления заказа до полного резервирования. Результаты приведены в таблице 2.

Таблица 2.

Результаты имитационного моделирования

Стратегия

Общая прибыль (млн тг)

Уровень выполнения (%)

Среднее ожидание (дни)

FIFO

4,82

78,3

2,1

Только маржа

5,41

76,8

2,8

Многокритериальная (β=0,1)

5,28

82,5

1,7

 

Многокритериальный алгоритм увеличил общую прибыль примерно на 9,5 % по сравнению с FIFO, повысил уровень выполнения с 78,3 % до 82,5 % и сократил среднее время ожидания с 2,1 до 1,7 дня.

5. Сравнительные нагрузочные испытания

Один и тот же процесс «Приём и обработка заказа» реализован двумя способами на идентичных входных данных и одинаковой конфигурации СУБД (PostgreSQL 15), предлагаемая ручная трансформация в NestJS и с использованием движка Camunda BPMN 7.20. Измерения проводились на виртуальной машине Ubuntu 22.04 (4 vCPU, 8 ГБ RAM) с помощью инструмента k6 [5]. Результаты представлены в таблице 3.

Таблица 3.

Результаты нагрузочного тестирования (500 одновременных пользователей)

Показатель

NestJS (ручная трансф.)

Camunda

Пропускная способность, RPS

1185

412

Среднее время обработки, мс

85

320

Память для 100 одновр. заказов, МБ

180

620

Цикломатическая сложность

4,2

2,8

 

Ручной подход в 2,8 раза быстрее и потребляет в 3,4 раза меньше памяти. Это объясняется тем, что Camunda сохраняет состояние каждого экземпляра процесса в базе данных, тогда как ручная трансформация удерживает всю логику в оперативной памяти. Полученные результаты согласуются с выводами работ [7, 8].

6. Статистическая проверка

К данным о времени обработки заказов применён U-тест Манна‑Уитни. Полученное значение p < 0,001 подтверждает статистическую значимость различий.

7. Расширения с помощью искусственного интеллекта

Архитектура допускает интеграцию XGBoost (прогноз спроса) и Isolation Forest (аномалии) через REST API [5]. Оба микросервиса взаимодействуют с NestJS через REST API, сохраняя модульную структуру.

Заключение

Исследование демонстрирует полный легковесный конвейер от моделирования бизнес-функций до исполняемого кода без тяжелых BPMN-движков. Формальные правила трансформации обеспечивают прозрачность и проверяемость. Предложенный алгоритм резервирования превосходит традиционные стратегии при имитационном моделировании, а ручная кодовая трансформация показывает значительные преимущества в производительности перед Camunda. Методология непосредственно применима к малым предприятиям и может быть расширена компонентами искусственного интеллекта.

 

Список литературы:
1. Brambilla M., Cabot J., Wimmer M. Model-Driven Software Engineering in Practice. – 2nd ed. – Springer, 2021. – 320 p.
2. Davenport T.H. Process Innovation: Reengineering Work through Information Technology. – Harvard Business School Press, 1993. – 337 p.
3. Di Ruscio D., Kolovos D., Paige R. Low-code development and model-driven engineering: Two sides of the same coin? // Software and Systems Modeling. – 2022. – Vol. 21, № 3. – P. 833–846.
4. Dumas M., La Rosa M., Mendling J., Reijers H.A. Fundamentals of Business Process Management. – 2nd ed. – Springer, 2018. – 560 p.
5. Freund J., Rücker B. Real-Life BPMN: With introductions to CMMN and DMN. – 3rd ed. – CreateSpace Independent Publishing, 2019. – 454 p.
6. Harmon P. Business Process Change: A Guide for Business Managers and BPM and Six Sigma Professionals. – 4th ed. – Elsevier, 2019. – 534 p.
7. Khan A., Alam M. Lightweight workflow automation: A model-driven approach without traditional engines // Software and Systems Modeling. – 2024. – Vol. 23. – P. 311–328.
8. López F., Montoya F. Simplifying business process automation: A case for manual BPMN transformation // Journal of Systems and Software. – 2023. – Vol. 203. – Article 111753.
9. Silver B., Richardson P., Rymer J. BPMN Method and Style. – 2nd ed. – Cody-Cassidy Press, 2011. – 376 p.