Graph Theory Method for Optimizing IT-Project Time
- Authors: Dvoretsky A.G.1, Golovanov S.O.1
-
Affiliations:
- MIREA – Russian Technological University
- Issue: Vol 11, No 5 (2024)
- Pages: 87-95
- Section: MANAGEMENT IN ORGANIZATIONAL SYSTEMS
- URL: https://journals.eco-vector.com/2313-223X/article/view/657485
- DOI: https://doi.org/10.33693/2313-223X-2024-11-5-87-95
- EDN: https://elibrary.ru/BVYASV
- ID: 657485
Cite item
Full Text
Abstract
The research paper is devoted to the study of graph approach application in the context of testing and optimization of IT projects execution. Graph structures are a powerful tool for modeling complex systems and processes, which makes them applicable in various areas of information technology. The article discusses the basic principles of graph models for project analysis and management, as well as methods of their application in testing and optimization of IT project execution processes. Implementation of graph methodology at each stage of testing in the project life cycle can lead to improvement of efficiency and quality of the testing process, as well as to increase the quality and competitiveness of the developed product.
Keywords
Full Text
ВВЕДЕНИЕ
В современном информационном обществе, где роль информационных технологий становится все более преобладающей в различных сферах деятельности, растет важность эффективного управления качеством разработки и внедрения программных продуктов. IT-проекты, являющиеся ключевыми компонентами цифровой трансформации и обеспечения конкурентоспособности предприятий, подвержены различным рискам и вызовам, особенно в контексте обеспечения качества и надежности разрабатываемых решений.
Переход к цифровому предприятию предполагает не только внедрение передовых производственных технологий и развитие информационных систем [1], но и изменения в самой экономике предприятия, модернизацию структуры проектной работы [2] и кадрового обеспечения [3], а также разработку современных стратегий управления.
Одной из основных проблем, с которыми сталкиваются IT-проекты, является недостаточное внимание к процессам тестирования и контроля качества. Достижения в разработке программного обеспечения достигли значительных высот, что способствовало появлению таких методов разработки, как Agile и DevOps, но возникающие ошибки или недостаточное качество продукта, по-прежнему остаются одними из серьезных проблем, которые могут привести к потери финансовой прибыли, а также к ухудшению репутации и негативных отзывов использования от потребителей и пользователей.
К другим проблемным аспектам жизненного цикла проекта на этапе тестирования и контроля качества в ИТ-проектах можно отнести сохранение высокого уровня качества при постоянной адаптации к меняющимся требованиям, технологиям рынка и потребностям пользователей, а также возрастающая сложность и масштаб разрабатываемых программных продуктов.
Помимо этого, существует проблема объединения внедрения с другими процессами разработки, такими как управление проектами, разработка и выпуск продукта. Неэффективная связь и отсутствие синхронизации между внешними участниками проекта могут стать причиной недостаточного понимания требований, увеличения времени и ресурсов, затрачиваемых на исправление ошибок. Все это может привести к снижению общего качества выпускаемой продукции
Принимая во внимание вышеупомянутые проблемы и задачи, становится очевидным, что необходимы дополнительные исследования и разработки в области тестирования и контроля качества ИТ-проектов. Успешное решение этих проблем имеет большое значение для обеспечения надежности компаний и эффективного использования информационных технологий в различных сферах бизнеса.
Одним из популярных методов при тестировании и оценки эффективности ИТ-проектов является графовый подход. Он основан на представлении проекта в виде графов, где задачи представлены узлами, а зависимости между ними представлены ребрами.
Методология графов позволяет наблюдать связи и зависимости между задачами, а также их порядок при реализации проекта. Этот визуальный метод обеспечивает лучшее понимание структуры проекта, описывает основные задачи и определяет основные пути, необходимые для эффективного тестирования и оптимизации выполняемых задач.
За прошедшие годы был разработан широкий спектр графовых вычислений и алгоритмов. Основные концепции и алгоритмы теории графов широко применяются при моделировании как различных производственных процессов [4], включая стадии проектирования и дизайна [5; 6], управления производством [7], так и деятельности предприятия в целом [8], с учетом его способности к внедрению цифровых технологий [9].
Тестирование программного обеспечения в рамках разработки – это систематический процесс, направленный на анализ, оценку и проверку продуктов с целью выявления ошибок, дефектов и несоответствий заявленным требованиям. Тестирование является неотъемлемой частью разработки программных продуктов, от качества которого зависит качество разрабатываемого продукта [10]. Задача тестирования – определение условий, при которых проявляются дефекты системы и протоколирование этих условий [11].
Тестирование выполняется как на ранних этапах разработки, так и на более поздних этапах, включая тестирование перед выпуском и после выпуска продукта.
Контроль качества – это систематическая процедура, обеспечивающая соответствие разработанной продукции к требованиям заказчика, пользователя и исполнителя. Контроль качества включает в себя внедрение и сопровождение программного обеспечения, чтобы способствовать предотвращению появления дефектов, а также их своевременное выявлению и устранению.
В области информационных технологий существует множество различных подходов и методов разработки программного обеспечения, которые используются в зависимости от характера проекта, его целей и контекста разработки (табл. 1). Разнообразие подходов позволяет охватить самые разные аспекты качества продукции и добиться надежности и функциональности. Крайне важно понимать, что эти методы могут использоваться как совместно, так и по отдельности друг от друга, в зависимости от задач, специфики проекта и требований разработчиков.
Таблица 1. Сравнительный анализ характеристик различных методов и подходов к тестированию [Comparative analysis of the characteristics of various methods and approaches to testing]
Метод [Method] | Описание [Description] | Особенности [Peculiarities] |
Модульное тестирование [Unit testing] | Тестирование отдельных компонентов (модулей) программного обеспечения [Testing of individual software components (modules)] | · Используются моки и заглушки для изоляции модулей [Mocks and plugs are used to isolate the modules] · Часто автоматизируется [Often automated] |
Интеграционное тестирование [Integration testing] | Тестирование взаимодействия между различными компонентами или модулями системы [Testing the interaction between various components or modules of the system] | · Может требовать создания специальной тестовой среды [May require the creation of a special test environment] · Подразумевает интеграцию с другими методами тестирования [Involves integration with other testing methods] |
Тестирование системы [System testing] | Тестирование функциональности системы [System functionality testing] | · Требует полного функционального обзора системы [Requires a complete functional overview of the system] · Включает тестирование производительности и безопасности [Includes performance and security testing] |
Приемочное тестирование [Acceptance testing] | Тестирование с целью подтверждения соответствия разработанного продукта ожиданиям заказчика или конечного пользователя [Testing to confirm that the developed product meets the expectations of the customer or end user] | · Часто основано на сценариях использования, определенных заказчиком [Often based on use cases defined by the customer] · Может включать альфа- и бета-тестирование [May include alpha and beta testing] |
Регрессионное тестирование [Regression testing] | Тестирование с целью обнаружения дефектов, возникших после внесения изменений в программное обеспечение или его окружение [Testing to detect defects that arise after changes are made to the software or its environment] | · Часто автоматизируется для ускорения процесса тестирования [Often automated to speed up the testing process] · Требует внимания к связанным с изменениями участкам кода [Requires attention to areas of code associated with changes] |
Функциональное тестирование [Functional testing] | Тестирование функциональных возможностей программного продукта согласно спецификации требований [Testing the functionality of a software product according to the requirements specification] | · Часто включает тестирование входных и выходных данных [Often involves testing input and output data] · Может включать тестирование с различными конфигурациями [May include testing with different configurations] |
Нагрузочное тестирование [Load testing] | Тестирование производительности и устойчивости системы при работе в условиях высокой нагрузки [Testing system performance and stability under high load conditions] | · Требует специфических инструментов и ресурсов для создания высоких нагрузок [Requires specific tools and resources to create high loads] · Позволяет предотвратить отказы системы [Helps prevent system failures] |
Методы, представленные в табл. 1 обладают своими уникальными свойствами и особенностями и используются для решения конкретизированных задач при тестировании программного обеспечения. Комбинация различных методов и их правильное использование содействуют обеспечению высокого уровня качества разрабатываемого продукта.
В жизненном цикле этап контроля качества имеет одно из весомых значений для развития проекта в IT-сфере. В динамичной бизнес-среде контроль качества играет решающую роль в обеспечении независимости, удовлетворенности клиентов и конкурентоспособности, что позволит устойчиво закрепиться на рынке.
Основное значение контроля качества заключается в поставке созданных ИТ-продуктов, отвечающих требованиям клиентов и ожиданиям пользователей. Качество продукта напрямую связано с уровнем удовлетворенности клиентов, их приверженностью бренду и надежной конкурентоспособностью компании.
Кроме того, контроль качества играет решающую роль в снижении рисков и выполнении проекта в рамках бюджета и в установленные сроки. Низкое качество продукта может привести к дополнительным затратам, задержкам в разработке и нарушению доверия со стороны заказчика.
Помимо этого, контроль качества способствует оптимизации процессов разработки и повышает продуктивность команды. Систематически анализируя и оптимизируя процессы контроля качества, можно выявить и исправить недостатки, что повысит эффективность работы команды и качество продукта.
В результате контроль качества играет значительную роль в успешной реализации цифрового проекта, обеспечивая соответствие требованиям заказчика, устойчивости к рискам и повышению производительности команды разработчиков.
Жизненный цикл проекта – это последовательность этапов, необходимых для реализации проекта от начала до завершения [11]. Эти этапы включают в себя инициацию, планирование, выполнение, мониторинг и контроль, а также завершение проекта.
Чтобы наглядно представить эту последовательность, на рис. 1 приведена графическая схема жизненного цикла проекта. Дальнейшая детализация каждого из этапов позволяет получить граф, соответствующий конкретной интерпретации процессов и взаимосвязей между ними, степень которой зависит от выбора набора отслеживаемых параметров этапа.
Рис. 1. Ориентированный граф, отображающий связи между этапами жизненного цикла проекта
Fig. 1. Directed graph showing relationships between stages of the project life cycle
Тестирование информационных технологий (IT) представляет собой сложный и многоуровневый процесс, сопряженный с рядом проблем и вызовов, которые могут повлиять на успешность выполнения проекта.
Одной из основных проблем в тестировании IT-проектов можно выделить нехватку времени на выполнение тестов. В условиях быстрого развития технологий и рынка, ускоренные сроки разработки становятся стандартом, что оставляет ограниченное количество времени на проведение тестирования.
Для решения этой проблемы можно внедрить методы теории графов на каждом этапе жизненного цикла проекта (см. рис. 1), где:
- 1 – инициация проекта: использование графов для анализа требований и определения приоритетов тестирования. Это позволит выделить основные функциональные и нефункциональные требования, которые требуют наибольшего внимания в первую очередь;
- 2 – планирование проекта: использование графов для создания детального плана тестирования, который учитывает все зависимости между различными компонентами и функциями проекта. Это поможет оптимизировать распределение времени и ресурсов для тестирования;
- 3 – выполнение проекта: использование графов для автоматизации процесса тестирования. Создание графа выполнения программы позволит выявить ключевые участки кода, которые требуют тестирования, и оптимизировать процесс написания и запуска тестов;
- 4 – мониторинг и контроль: использование графов для отслеживания прогресса тестирования и идентификации возможных задержек или проблем;
- 5 – завершение проекта: использование графов для анализа результатов тестирования и выявления областей, требующих дополнительной работы или исправлений;
- 6 – тестирование: проводится на каждом этапе жизненного цикла, с целью повышения качества продукта и оптимизации времени при исправлении ошибок.
Внедрение тестирования на каждом этапе жизненного цикла проекта позволит оптимизировать процесс подготовки проекта, ускорить выполнение тестов и обеспечить высокое качество разрабатываемого программного обеспечения, даже при ограниченных сроках.
Эффективные методы в тестировании и контроле качества могут включать в себя применение методов теории графов для решения различных задач. Для использования на этапе 4 – «мониторинг и контроль» методы теории графов могут использоваться для выполнения следующих задач: алгоритмы теории графов могут использоваться для анализа структуры кода ПО. Например, они могут помочь в идентификации зависимостей между модулями, классами или функциями, что может помочь выявить потенциальные проблемы интеграции и улучшить взаимосвязи системы; поиск путей выполнения: алгоритмы на графах могут использоваться для анализа всех возможных путей выполнения программы. Это помогает тестировщикам выявить различные пути выполнения кода и убедиться, что все они корректно обрабатываются; выявление дефектов: методы обработки графов могут помочь выявить потенциальные дефекты в программном коде, такие как циклы зависимостей, недостижимые участки кода или потенциальные точки отказа; оценка кода, путем проведения тестов: методы теории графов могут использоваться для анализа кода тестами. Они могут помочь выявить участки кода, которые не были протестированы, что позволяет улучшить качество выполнения тестов.
Автоматизация процесса тестирования находит все большее применение в различных отраслях разработки программного обеспечения. И вот здесь на помощь могут прийти методов теории графов, которые позволяют значительно улучшить этот процесс. Они могут быть использованы для создания тестовых сценариев и генерации тестовых данных, основываясь на структуре программного кода.
Таким образом, методов теории графов могут быть полезны при использовании в жизненном цикле проекта, а именно в автоматизации тестирования. Методология графов вносит важный вклад в область разработки программного обеспечения, что может помочь обеспечить повышения качества разрабатываемой продукции. В свою очередь это может повлиять на удовлетворенность пользователей, что позволит устойчиво закрепиться на рынке.
Детализируем этап 4 «Мониторинг и контроль», так как в него входит наибольшее количество узлов. Поэтому декомпозируем данный шаг.
Рис. 2. Выделение в ориентированном графе этапа мониторинга и контроля жизненного цикла проекта
Fig. 2. Highlighting the stage of monitoring and control of the project life cycle in a oriented graph
Рассмотрим граф задач на этапе мониторинга и контроля качества в жизненном цикле ИТ-проекта. Предположим, у нас есть следующие задачи (рис. 3):
- 1 – анализ требований к качеству (проведение интервью с заказчиком для выявления ожиданий по качеству продукта, анализ документации проекта на предмет требований к качеству, идентификация ключевых метрик качества, таких как надежность, производительность и безопасность);
- 2 – планирование:
- 1 – проведение интервью с заказчиком;
- 2 – анализ документации проекта (определение стратегии тестирования: модульное, интеграционное, системное и т.п.);
- 3 – идентификация ключевых метрик качества (разработка плана тестирования, включающего в себя расписание, ресурсы и инструменты);
- 4 – планирование тестирования (установка необходимых компонентов и подготовка материалов для проведения тестирования);
- 3 – разработка стратегий и окружения для тестирования:
- 1 – определение стратегии тестирования (создание набора тестовых кейсов для покрытия функциональности продукта);
- 2 – разработка плана тестирования (разработка тестовых сценариев для проверки требований к производительности, безопасности и других аспектов качества);
- 3 – подготовка тестовых данных для проведения тестирования;
- 4 – подготовка к тестированию:
- 1 – создание тестовых кейсов;
- 2 – разработка тестовых сценариев;
- 3 – подготовка тестовых данных;
- 5 – проведение тестирования (выполнение тестовых сценариев в соответствии с планом тестирования, запись результатов тестирования, включая обнаруженные дефекты и отклонения от требований);
- 6 – анализ результатов тестирования (оценка результатов тестирования и выявление паттернов дефектов, определение приоритетов дефектов на основе их влияния на функциональность и критичности для проекта, составление отчета о результатах тестирования для заинтересованных сторон);
- 7 – исправление дефектов (анализ и исправление обнаруженных дефектов в коде или дизайне продукта, повторное тестирование исправленных компонентов для проверки их работоспособности);
- 8 – повторное тестирование после исправлений (повторное выполнение тестовых сценариев для проверки исправленных компонентов, проверка наличия новых дефектов или отклонений после внесенных изменений);
- 9 – мониторинг и анализ процесса тестирования (отслеживание метрик процесса тестирования, таких как количество найденных дефектов, процент покрытия тестами и т.д., анализ эффективности тестирования и выявление областей для улучшения или оптимизации).
При использовании такого подхода можно выделить следующие закономерности между задачами: планирование тестирования будет завесить от качества проведенного анализа требований к разрабатываемому продукту, учитывая анализ документации к проекту на предмет необходимых требований. Разработка плана тестирования будет проводиться после этапа планирования. Этап проведение тестирования будет проводиться в зависимости от результатов разработки плана тестирования и готовности тестовых сценариев. После проведения тестирования будет проведен анализ результатов, с целью выявления дефектов и программных сбоев. В заключении, после анализа результатов тестирования будет выполнено исправление выявленных ошибок и дефектов.
Повторное тестирование после исправлений зависит от исправления дефектов. Мониторинг и анализ процесса тестирования могут начаться параллельно с выполнением других задач и продолжаться на протяжении всего процесса.
Теперь построим граф задач этапа мониторинга и контроля жизненного цикла проекта и изобразим его на рис. 3.
Оптимизируем данный граф, реализовав исправления дефектов с помощью параллельного выполнения и улучшения процессов. При его использовании исправление дефектов (7) и повторное тестирование после исправлений (8) могут выполняться параллельно с анализом результатов тестирования (6). Это позволит ускорить процесс обнаружения и исправления дефектов, а также сократить время выполнения цикла тестирования.
Таким образом, на рис. 4 продемонстрируем оптимизированный ориентированный граф задач этапа мониторинга и контроля жизненного цикла проекта.
Рис. 3. Ориентированный граф задач этапа мониторинга и контроля жизненного цикла проекта
Fig. 3. Oriented graph of tasks for the monitoring and control stage of the project life cycle
Рис. 4. Оптимизированный ориентированный граф задач этапа мониторинга и контроля жизненного цикла проекта
Fig. 4. Optimized oriented graph of tasks for the monitoring and control stage of the project life cycle
В этом оптимизированном графе задач стратегии параллельного выполнения и улучшения процессов учтены, что позволит более эффективно и быстро выполнять процесс мониторинга и контроля качества в ИТ-проектах.
Сегодня производство программного обеспечения обязательно должно оцениваться не только по качеству [12; 13] и ряду других важных характеристик [14], но и по стоимости производства и времени его выполнения.
Математическое моделирование сроков выполнения IT-проекта может включать в себя использование методов оценки времени и ресурсов. Воспользуемся методом оценки трудозатрат на основе метода COCOMO.
Запишем общую формулу для оценки времени выполнения проекта на основе COCOMO:
TDEV = A(Size)BПiEMi, (1)
где TDEV – прогнозируемое время разработки в часах или неделях;
Size – размер проекта, обычно измеряемый в тысячах строк кода (KLOC) или других единицах;
A и B – коэффициенты модели, зависящие от типа проекта и его характеристик;
EMi – множитель трудозатрат для каждой из i категорий среды разработки.
Множители трудозатрат EMi могут включать в себя такие факторы, как опыт команды, сложность проекта, требования к надежности и т.д.
Для проведения расчета методом COCOMO, нам нужно знать размер проекта (обычно в тысячах строк кода, KLOC), тип проекта (органический, полуразделенный или встроенный) и степень опыта команды разработчиков (высокий, средний или низкий). Нам также нужно определить некоторые коэффициенты модели COCOMO для выбранного типа проекта и опыта команды.
Предположим, у нас есть следующие данные для проекта:
- размер проекта (Size): 200 KLOC;
- тип проекта (Type): Полуразделенный;
- степень опыта команды (Experience): Средний.
Для полуразделенного проекта с командой среднего уровня опыта используются следующие значения коэффициентов:
A = 3,0; B = 1,12, (2)
Также укажем значение для модуля трудозатрат EMi = 1 для всех категорий среды разработки i.
Теперь мы можем использовать формулу COCOMO для вычисления прогнозируемого времени разработки (TDEV). Подставим наши значения:
TDEV = 3,0 (200)1,12; (3)
TDEV ≈ 437,16 часа. (4)
Таким образом, прогнозируемое время разработки для полуразделенного проекта с командой среднего уровня опыта составляет примерно 437,16 часа. Средний рабочий день составляет 8 часов, тогда реализация проекта представляет:
437,16 часов/8 (часов/день) ≈ 54,645 дней. (5)
В таком случае прогнозируемое время разработки 437,16 часов составляет примерно 54,645 рабочих дня.
В COCOMO тестирование включается в категорию «прочих затрат» или «прочих активностей», которая учитывается в конечной оценке трудозатрат. Следовательно, COCOMO учитывает не только фазы разработки, но и другие аспекты жизненного цикла проекта.
Способ параллельного исправления дефектов представляет собой стратегию, при которой процесс исправления дефектов выполняется параллельно с другими этапами проекта, а именно в период, когда проводится анализ результатов тестирования. Данный подход приводит к сокращению времени выполнения проекта за счет:
- устранения задержек: параллельное исправление дефектов позволяет начать процесс устранения проблем немедленно после их обнаружения, минимизируя временные задержки, связанные с ожиданием завершения предыдущих этапов проекта;
- ускорения обратной связи: проведение исправлений параллельно с анализом результатов тестирования позволяет оперативно получать обратную связь о качестве продукта и эффективности внесенных изменений, что позволяет быстро реагировать и корректировать стратегию разработки;
- оптимизации ресурсов: использование ресурсов, таких как члены команды и инструменты разработки, для одновременного выполнения нескольких задач позволяет оптимизировать их эффективное использование, что в свою очередь способствует уменьшению времени, затраченного на проект;
- сокращения общего времени выполнения: параллельное исправление дефектов позволяет сократить общее время выполнения проекта путем сокращения времени, необходимого для обнаружения и исправления дефектов, что в конечном итоге способствует более быстрой доставке продукта заказчику или окончанию проекта в срок.
Следовательно, способ параллельного исправления дефектов оптимизирует процесс выполнения проекта путем эффективного использования ресурсов, сокращения временных задержек и обеспечения оперативной обратной связи, что в итоге приводит к уменьшению времени, затраченного на выполнение проекта. На рис. 5 продемонстрируем оптимизированный ориентированный граф задач этапа мониторинга и контроля жизненного цикла проекта с выделением этапа оптимизации.
Рис. 5. Оптимизированный ориентированный граф задач этапа мониторинга и контроля жизненного цикла проекта с выделением этапа оптимизации
Fig. 5. Optimized oriented graph of tasks for the monitoring and control stage of the project life cycle, highlighting the optimization stage
Путем внедрения параллельного исправления дефектов мы можем в нашем ориентированном графе исключить вершины 7 (исправление дефектов) и 8 (повторное тестирование после исправлений), так как при параллельном исправлении дефектов мы уже на предыдущих этапах вывели возможные дефекты и исправили их. Таким образом, мы можем из вершины 6 (Анализ результатов тестирования) перейти в вершину 9 (мониторинг и анализ) исключая две вершины, которые при последовательном выполнении мы пропустить бы не могли. Следовательно, мы смогли добиться оптимизации времени выполнения, путем внедрения метода параллельного тестирования в этапе «Мониторинг и контроль» в жизненном цикле проекта.
ВЫВОДЫ
Использование графов позволило оптимизировать распределение времени и ресурсов на этапе мониторинга и контроля в жизненном цикле проекта. Анализ структуры проекта и зависимостей между его компонентами помог установить приоритеты и эффективно распределить задачи, что привело к ускорению процесса тестирования.
Применение методов обработки графов в тестировании и контроле качества может помочь повысить эффективность тестирования, обнаружить скрытые дефекты и улучшить качество разрабатываемого программного обеспечения. Таким образом, графовые методы демонстрируют свою ценность в автоматизации тестирования и вносят важный вклад в область разработки программного обеспечения.
Внедрение методологии графов позволило более эффективно управлять проектом и контролировать его прогресс. Отслеживание зависимостей между компонентами проекта и анализ структуры кода с помощью методов теории графов позволило оперативно реагировать на изменения и проблемы, что способствовало соблюдению сроков и бюджета проекта.
Таким образом, внедрение методов теории графов на каждом этапе тестирования в жизненном цикле проекта привело к улучшению эффективности и качества процесса тестирования, а также к повышению качества и конкурентоспособности разрабатываемого продукта.
About the authors
Artur G. Dvoretsky
MIREA – Russian Technological University
Author for correspondence.
Email: dvoretsky@sumirea.ru
ORCID iD: 0009-0001-5437-1371
postgraduate student, Department of Industrial Programming, Institute of Advanced Technologies and Industrial Programming
Russian Federation, MoscowStanislav O. Golovanov
MIREA – Russian Technological University
Email: golovanov@mirea.ru
postgraduate student, Department of Industrial Programming, Institute of Advanced Technologies and Industrial Programming
Russian Federation, MoscowReferences
- Kharlamova T.L., Gerasimov A.O. Innovative approaches to managing the development of enterprises during the period of digital transformation. In: Fundamental and applied research in the field of management, economics and trade. Collection proceedings of the All-Russian scientific and educational-practical conference. St. Petersburg, 2021. Pp. 103–107.
- Koop V.K., Dubolazov V.A. Modern methods of managing industrial construction projects. In: Fundamental and applied research in the field of management, economics and trade. Collection proceedings of the All-Russian scientific and educational-practical conference. In 3 vols. (St. Petersburg, May 27–29, 2020). St. Petersburg, 2020. Pp. 204–210.
- Smolkin V.P., Svetunkov M.G. Conditions for innovative development of an organization as a socio-economic system in ensuring human capital management. Bulletin of Samara University. Economics and Management. 2021. Vol. 12. No. 4. Pp. 136–144. (In Rus.)
- Han Z., Cheng L., Xing L. et al. A graph theory-based optimization design for complex manufacturing processes. IEEE Access. 2020. Vol. 8. Pp. 95547–95558.
- Gaikwad A., Yavari R., Montazeri M. et al. Toward the digital twin of additive manufacturing: Integrating thermal simulations, sensing, and analytics to detect process faults. IISE Transactions. Toward the Digital Twin of Additive Manufacturing. 2020. Vol. 52. No. 11. Pp. 1204–1217.
- Chen B., Hu J., Qi J. et al. Concurrent multi-process graph-based design component synthesis: Framework and algorithm. Engineering Applications of Artificial Intelligence. Concurrent Multi-Process Graph-Based Design Component Synthesis. 2021. Vol. 97. P. 104051.
- Marsavin V.V. Application of graph theory for modeling management systems (using the example of a metrological support model for production). In: Current problems of quality management, standardization and metrology. Collection report VIII All-Russian Scientific and Practical Internet Conference (Belgorod State Technological University named after V.G. Shukhova). Belgorod, 2021. Pp. 117–121.
- Blanc-Serrier S., Ducq Y., Vallespir B. Organisational interoperability characterisation and evaluation using enterprise modelling and graph theory. Computers in Industry. 2018. Vol. 101. Pp. 67–80.
- Morozov R.V., Belyasov I.S. A methodological approach to assessing the potential of light industry enterprises as a prerequisite for the introduction of convergent technologies. Journal of Management Research. 2021. Vol. 7. No. 3. Pp. 56–69. (In Rus.)
- Sokolova E.S., Zholobov D.M. Application of artificial intelligence for generating test data when automating software testing. Mathematical Methods in Technologies and Engineering. 2023. No. 6. Pp. 88–91. (In Rus.). doi: 10.52348/2712-8873_MMTT_2023_6_88.
- Dvoryankin A.M., Erofeev A.A., Anikin A.V. Basic methods of software testing. Textbook. Volgograd: Volgograd State Technical University, 2015. 120 p. ISBN: 978-5-9948-1853-4. EDN: UHZJFD.
- Bystrov V.V., Masloboev A.V., Putilov V.A. Application of project management in regional security management problems: Approach and formal apparatus. Reliability and Quality of Complex Systems. 2017. No. 4 (20). Pp. 73–84. (In Rus.). doi: 10.21685/2307-4205-2017-4-10.
- Evdokimov I.V. Problem and indicators of software quality. Proceedings of the Bratsk State University. Series: Economics and Management. 2009. Vol. 1. Pp. 121–124. (In Rus.)
- Evdokimov I.V. Quality management and development management of the expert analytics processing system. Proceedings of the Bratsk State University. Series: Economics and Management. 2015. Vol. 1. Pp. 212–219. (In Rus.)
- Evdokimov I.V. Methodology for studying enterprise management systems for informatization purposes. Proceedings of the Bratsk State University. Series: Economics and Management. 2007. Vol. 1. Pp. 284–288. (In Rus.)
Supplementary files





