<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-title-group>
        <journal-title>O. Yanholenko);</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Towards algorithmic and software solution for business process model analysis and correction</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Olha Yanholenko</string-name>
          <email>olha.yanholenko@khpi.edu.ua</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Andrii Kopp</string-name>
          <email>andrii.kopp@khpi.edu.ua</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Dmytro Orlovskyi</string-name>
          <email>dmytro.orlovskyi@khpi.edu.ua</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Uliya Litvinova</string-name>
          <email>uliya.litvinova@khpi.edu.ua</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>National Technical University “Kharkiv Polytechnic Institute”</institution>
          ,
          <addr-line>Kyrpychova str. 2, Kharkiv, 61002</addr-line>
          ,
          <country country="UA">Ukraine</country>
        </aff>
      </contrib-group>
      <volume>000</volume>
      <fpage>0</fpage>
      <lpage>0002</lpage>
      <abstract>
        <p>The Business Process Management (BPM) market is expected to grow by one-fifth over the next ten years due to the ongoing trend toward digitization. As a result, the number of critical BPM issues is also growing, including business process modeling and the problem of proper business process model design. In general, business process modeling is the key BPM technique used to capture, visualize, communicate, and analyze organizational workflows. With high-quality business process models, organizations will avoid problems with the understandability or maintainability of their workflows and related software applications. Therefore, this study aims to contribute to the BPM domain by proposing an algorithmic and software solution for analyzing and correcting business process models. This solution takes into account structural properties of Business Process Model and Notation (BPMN) diagrams, represented as graphs, evaluated against modeling rules and metrics, and modified to correct detected inefficiencies. The developed software tool is used to evaluate the performance of the proposed approach. The results are analyzed, conclusions are drawn, and future work is formulated.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Business Process Model</kwd>
        <kwd>Structural Analysis</kwd>
        <kwd>Process Model Correction</kwd>
        <kwd>Software Solution 1</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>Business Process Management (BPM) is a key approach to organizational management that
plays a very important role in operational activities and business performance
improvement. Business process modeling is the fundamental technique of BPM used to
visualize, analyze, and improve organizational activities. Throughout the history of BPM,
several notations, standards, and methodologies have been proposed, such as IDEF, DFD</p>
      <p>
        Quality assurance and correctness of designed BPMN models is extremely important to
align business and information technology aspects, detect inefficiencies in workflows, train
new employees, guide process improvements [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. Using quality analysis techniques, it is
possible to detect errors in created BPMN models, improve workflow scenarios, and
improve the overall organizational performance. Therefore, a wide range of studies is
devoted to the development of methods and tools for BPMN model quality evaluation,
complexity assessment, correctness analysis and improvement, policy compliance analysis,
and other quality aspects of business process models that may affect the efficiency of BPM
practices [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ].
      </p>
      <p>The object of this study is the process of analysis and correction of BPMN diagrams. The
subject of this study is the algorithmic and software solution for analysis and correction of
business process models. This study aims to contribute to BPM practices by proposing the
tool for improving the correctness of business process models based on their structural
analysis.</p>
      <p>Section 2 outlines the state of the art, including related work in the area of business
process modeling and quality analysis of BPMN models, as well as the motivation and formal
problem statement; Section 3 describes the algorithmic foundations of the proposed
software solution, including the formal business process definition, modeling rules and
corresponding metrics, and the process graph modification algorithm; Section 4 presents
the results and discussion, including the dataset description, performance analysis,
efficiency evaluation of the proposed approach, and examples of its application to real
BPMN diagrams; finally, Section 5 presents conclusions were made and formulated future
work directions.</p>
    </sec>
    <sec id="sec-2">
      <title>2. State-of-the-Art Review</title>
      <sec id="sec-2-1">
        <title>2.1. Related W</title>
        <p>
          Business process modeling technique is used to visually describe and examine workflow
tasks and sub-processes (i.e. activities), collaboration between separate business processes,
and high-level process landscapes within organizations and enterprises. The main purpose
of business process models is to capture, understand and improve organizational activities
in order to eliminate possible problems, improve efficiency and effectiveness of business
processes [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ].
        </p>
        <p>
          According to [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ], BPMN is the most widely used business process modeling notation and
has been widely adopted in industry and academia due to its powerful capabilities for
graphical design and comprehensible description of complex workflows. BPMN provides a
common visual notation (or language, according to some sources) for both business
analysts and information technology professionals, bridging the communication gap
between these parties and allowing them to collaborate on business process design and
improvement activities [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ].
        </p>
        <p>
          The workflow design principles of BPMN are based on such elements (Fig. 1), as [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ]:


        </p>
        <p>Activities (Tasks and Sub-Processes);</p>
        <p>Gateways (i.e. logical connectors, inclusive – OR, exclusive – XOR, parallel – AND);




</p>
        <p>Events (Start, Intermediate, End);
Flows (Sequence Flows, Message Flows);
Pools (to separate workflows);
Lanes (to separate responsibility areas);</p>
        <p>Data Objects and connecting Associations.</p>
        <p>
          These elements (Fig.1) serve to clearly describe the workflow, including activities,
decision points (based on gateways), and collaborations, so that all stakeholders can clearly
understand the logic of a business process and its behavior in different scenarios [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ]. Using
the rich set of modeling primitives, business analysts can address all business process
modeling needs: tasks or sub-processes to represent workflow activities, gateways to model
decision points, events to initiate or terminate business process executions, and flows to
represent sequential scenarios and information exchanges within an organization [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ].
        </p>
        <p>
          Recent research has made significant contributions to the fields of BPM and business
process modeling, especially in the areas of business process model complexity assessment,
correctness analysis and verification, quality evaluation based on modeling guidelines, and
BPMN model redesign. In [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ], Fotoglou et al. proposed a method to assess the complexity of
business process models (especially BPMN models) based on cluster analysis techniques
(K-means algorithms) and three BPMN complexity metrics [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ]:



        </p>
        <p>NOAJS (Number of Activities, Joins, and Splits);
CFC (Control Flow Complexity);</p>
        <p>CNC (Coefficient of Network Connectivity).</p>
        <p>
          Other researchers Kbaier and Ghannouchi in their paper [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ] analyzed the quality of
BPMN business process models using data mining techniques. Their study focuses on
determining thresholds for BPMN quality metrics that will help modelers to evaluate the
created business process models [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ]. The most interesting finding is that thresholds vary in
different domains, so the authors of [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ] also used clustering techniques to determine
domain-specific thresholds for BPMN quality metrics. Corradini et al [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ] propose research
on BPMN models with sub-process correctness checking. In their study [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ], the authors
focus on the problem of providing the BPMN correctness checking framework, in particular
focusing on the collaboration business process models with message exchange or
subprocesses [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ].
        </p>
        <p>In their previous study [10] authors proposed a method for business process model
quality evaluation based on refined Seven Process Modeling Guidelines (7PMG ) [11], which
resulted in the set of BPMN modeling rules:




</p>
        <p>R1: Do not use more than 31 nodes or decompose a model with more than 31
elements if possible (merged G1 and G7);
R2: Avoid nodes with invalid inputs or outputs (refined G2);
R3: Avoid usage of multiple start or multiple end events or missing events (G3);
R4: Avoid gateways mismatch (G4);</p>
        <p>R5: Avoid inclusive (OR) gateways (G5).</p>
        <p>As well as the corresponding metrics, thresholds and integrated quality indicators [10]:






</p>
        <p>Total number of nodes (TNN);
Number of invalid elements (NIE);
Number of start events (NSE);
Number of end events (NEE);
Number of mismatched gateways (NMG);
Total number of gateways (TNG);</p>
        <p>Total number of inclusive (OR) gateways (TNI).</p>
        <p>Also, in [12], Beerepoot et al. considered the major BPM problems that should be
addressed in the future research. According to [12], authors review nine of the most
important research problems in the BPM domain, which require novel solutions and
approaches to the analysis, design, and management of business processes with the help of
information technologies [12].</p>
        <p>
          In general, considered studies demonstrate the benefits of modeling guidelines and rules
in improving the quality of business process models [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ], propose methods and frameworks
to evaluate BPMN models [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ], check their correctness [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ], and introduce the importance of
quality analysis of created business process models on a continuous basis [10].
        </p>
      </sec>
      <sec id="sec-2-2">
        <title>2.2. Motivation and Problem Statement</title>
        <p>Therefore, the increasing complexity of modern business processes in various
organizations requires the development of efficient algorithms and software tools capable
of analyzing and correcting error-prone business process models. This will help
organizations to achieve better operational performance and avoid errors in their activities
caused by incorrect and inefficient business process models of low quality. Especially for
critical industries, poor business process models can cause harmful consequences for
people, companies, institutions and even nature.</p>
        <p>According to Grand View Research [13], the global BPM market size was valued at USD
14.46 billion in 2022 and is expected to grow at a CAGR of 19.9% by 2030 [13], as the
international trend towards digitization is increasing day by day.</p>
        <p>
          Moreover, existing studies [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ], [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ] highlight the challenges of maintaining the correctness
of BPMN models, as well as the importance of using design rules to achieve high quality
business process models. The continuous quality improvement in business process
modeling activities, as well as the emergence of corresponding techniques and tools, is
underlined by the evolution of the BPM discipline [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ].
        </p>
        <p>Therefore, this paper aims to contribute to BPM practices by addressing the challenges
of business process modeling through the algorithmic and software solution for researchers
and practitioners to analyze and correct BPMN diagrams.</p>
        <p>The structure and functions of the proposed algorithmic and software solution for
business process model analysis and correction is demonstrated in Fig. 2.</p>
        <p>Let us formally describe the proposed algorithmic and software solution (Fig. 2) using
the following model [14]:
⊆  ×  },
(1)
  = { 1,  2,  3,  4} is the set of interacting software modules;
  is the set of control flows between the modules.</p>
        <p>1 is a module for creating graph-based structures from the processed BPMN
diagrams;
 2 is a module for checking the compliance of process structures with modeling
rules;
 3 is a module for evaluating the correctness of process structures and calculating
the related metrics;
 4 is a module for modifying process structure elements according to modeling
rules and evaluating changes.</p>
        <p>The algorithmic foundations of the proposed software modules are discussed in the next
Section 3.</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>3. Materials and Methods</title>
      <sec id="sec-3-1">
        <title>3.1. Formal Business Process Model Representation</title>
        <p>Formally the structure of a business process given using the BPMN notation can be
described using the directed labeled graph [15]:</p>
        <p>The set of interacting software modules represented on the functional design diagram in
Fig. 2 should consist of:
(2)
(4)









 is the number of business process model elements;
Φ is the  ×  adjacency matrix [16] of a BPMN business process model, formally
represented as the directed labeled graph:</p>
        <p>= ( ,  ,  ),</p>
        <p>= 〈 , Φ,  〉,
 is the set of nodes that represent various business process elements (i.e. events,
activities, gateways, etc.);
 is the set of arcs that represent business process flows,  ⊆  ×  ;
 is the mapping that assigns textual labels to business process elements and flows:
 :  ∪  → { ,  ∈  },
(3)
where  is the set of textual labels assigned to business process elements and flows; for
example, some activity of the order receiving business process could be labeled as “Verify
order” to represent the task done by a manager and some flow can be labelled as “Out of
stock” to represent one of the scenarios of this business process.</p>
        <p>Therefore, let us formally describe a business process model given using the BPMN
notation as the following tuple:</p>
        <p>where   is the “source” business process element and   is the “target” business process
element in terms of BPMN flows [17],  ,  = 1,  ;
  is the mapping between business process elements and BPMN element types:
  = {
0, (  ,   ) ∉  ,
(5)
(6)
 :  → { ,  ,  ,  ,  , 
},
  is a start event;
  is an end event;
   is a boundary event;
  is an intermediate event;
  is a task or activity (i.e. a sub-process);
  is a gateway.</p>
        <p>Using the proposed formal representation of a business process model, it is possible then
to validate its elements similarly to graph nodes, evaluate the model’s correctness, and
provide recommendations for its improvement by searching for corrections in a business
process flows matrix Φ.</p>
      </sec>
      <sec id="sec-3-2">
        <title>3.2. Correctness Evaluation of Business Process Models</title>
        <p>Most business process modeling software tools follow the BPMN meta-model [17] and
prevent connection of elements that should not be connected in a certain way. However,
business process model authors still have a freedom to make mistakes when inconsistently
modeling events, activities, and gateways making business process models less
understandable and, therefore, less efficient.</p>
        <p>Therefore, let us formulate the following rules to check whether an element and, hence,
a business process model, is correctly modeled or not:
1. If the element is an activity (i.e., a task or a sub-process), it should have one incoming
and one outgoing flow.
2. If the element is an intermediate event, it should have one incoming and one
outgoing flows.
3. If the element is a gateway, it should have either one incoming and two outgoing
flows, or two incoming and one outgoing flow.
4. If the element is a start event, it should not have incoming flows and should have one
outgoing flow.
5. If the element is an end event, it should have one incoming flow and should not have
outgoing flows.
6. If the element is a boundary event, it should not have incoming flows and should
have one outgoing flow.
1. Activity rule:
2. Intermediate event rule:
1,  +(  ) = 1 ∧  −(  ) = 1,
1,  +(  ) = 1 ∧  −(  ) = 1,</p>
        <p>These rules are based on process modeling “anti-patterns” [18], which include activities
that trigger or terminate a workflow instead of start or end events, intermediate events that
do the same instead of using the appropriate event types, and gateways that reflect neither
splits nor joins.</p>
        <p>Hence, let us formally describe rules 1 – 6 given above:
1, ( +(  ) = 1 ∧  −(  ) = 2) ∨ ( +(  ) = 2 ∧  −(  ) = 1),
1,  +(  ) = 0 ∧  −(  ) = 1,
1,  +(  ) = 1 ∧  −(  ) = 0,
1,  +(  ) = 0 ∧  −(  ) = 1,
3. Gateway rule:</p>
        <p>0,
4. Start event rule:
5. End event rule:
6. Boundary event rule:
0,
0,

 =1</p>
        <p>In the formulas above,  +(  ) and  −(  ) denote numbers of incoming flows and
outgoing flows respectively for the business process element   ,  = 1,  :
.
.
.
.
.</p>
        <p>=1
(7)
(8)
(9)
(10)
(11)
(12)
(13)
 +(  ) = ∑   ,  −(  ) = ∑   .</p>
        <p>Therefore, the following formula is used to check if the business process model element
is correct or not:</p>
        <p>Then, we can use the proposed metrics ρ( ) and σ( ) as criteria in the algorithm for
business process model correction. This algorithm is expected to provide a new business
process flows matrix Φ∗ that reveals a new structure of a business process in which all the
formulated modeling rules 1 – 6 are followed, such models will be considered as “fixed”, i.e.
ρ( ) = 1. Otherwise, in case the algorithm results in a matrix Φ∗, which allows to satisfy
only several modeling rules, such models will be considered as “improved”, i.e. ρ( ) = 0
but σ( ) is increased.</p>
      </sec>
      <sec id="sec-3-3">
        <title>3.3. Business Process Model Correction</title>
        <p>(14)
(15)
(16)
(17)</p>
        <p>Finally, we can now introduce general ρ( ) and relative σ( ) correctness metrics to
estimate the future business process model correction:
 =  − Σ( ).</p>
        <p>∗ = |1 −   |;
Let us propose the algorithm for business process model correction based on the business
process flows matrix Φ analysis and correction.</p>
        <p>Input: A set of business process elements  , a business process flows matrix Φ.</p>
        <p>Output: A modified general correctness metric ρ∗( ), a modified relative correctness
metric σ∗( ), a modified business process flows matrix Φ∗.</p>
        <p>1. Find the initial value of relative correctness metric σ( ).</p>
        <p>Set the iterations counter variable to  = 0.
3. Set the maximum number of iterations to the number of invalid elements detected
in a BPMN model:
 (  ) =</p>
        <p>,
ρ( ) = ∏  (  ) , σ( ) = ∑  (  ).</p>
        <p>4. Update the iterations counter variable to  =  + 1.
5. For each element   ,  ,  = 1,  of the matrix Φ check if  (  ) = 0 or  (  ) = 0, and
 ≠  then:
modify the business process flows matrix element:


re-calculate the value of relative correctness metric σ′( ) taking into account the
modified business process flows matrix element  ∗ ;



otherwise – set σ( ) = σ′( ).</p>
        <p>if σ′( ) ≤ σ( ) return to the previous value of the business process flows matrix
element:
  = |1 −  ∗ |,
(18)
If  =  stop the algorithm, otherwise – continue to step 4.</p>
        <p>Use the finally obtained modified business process flows matrix Φ∗ to find values of
modified general correctness metric ρ∗( ) and relative correctness metric σ∗( ).</p>
        <p>The main idea of the proposed algorithm, is to sequentially verify invalid elements
detected in a BPMN model and propose to fix their inefficiencies by adding missing flows
between elements. If a certain modification improves the relative correctness metric σ( ),
i.e., the number of correct nodes is increased to σ′( ), the proposed modification  ∗ is
applied to the modified business process flows matrix Φ∗. Otherwise, the modification is
cancelled and the next “weak spot” is checked. However, the number of iterations  equal
to the number of invalid elements in a BPMN model allows to check again “weak spots” for
which modifications were cancelled since with the already modified matrix Φ∗ such changes
can be appropriate and may now improve the correctness of a business process model.</p>
        <p>After the matrix Φ∗ is produced by the proposed algorithm, it is possible to use it for
modifying a BPMN model itself, by adding missing flows between elements. Having the
matrix Φ and the modified matrix Φ∗, a flow should be added from the element   to the
element   if  ∗ &gt;   ,  ,  = 1,  .</p>
        <p>Using the proposed algorithmic foundations, the software tool is designed and developed
to perform experiments. The proposed software solution (Fig. 3) is developed using the
Python programming language [19] and Python packages to process XML files (“xml” [20]),
perform computations (“numpy” [21]), visualize (“matplotlib” [22]), and save research
results (“csv” [23]).</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4. Results and Discussion</title>
      <p>Let us describe the results obtained after applying the developed software tool to
experiment with the proposed algorithm for business process model correction. To perform
the experiment, we used the public GitHub repository of Camunda [24], which includes
3729 BPMN files:</p>
      <p>{  ,  = 1,  }, (19)
where  is the index of a business process model from the collection [24] of  BPMN files
in total,  = 3729.</p>
      <p>These models contain business process definitions from different domains: goods
dispatch, credit scoring, insurance recourse, and self-service restaurant. There are multiple
BPMN models created in these four domains by different people participated in BPMN
training sessions [24].</p>
      <p>According to Table 1, only a small part of the initial collection of BPMN models [24] was
rejected by the software tool as not processable (15 models, 0.40%). This may be related to
the presence of syntactic errors in BPMN files. The remaining models (3714 models,
99.60%) were successfully processed by the developed software tool. The total processing
time is 245.74 sec. (or only about 4 min.), which is quite a good result for such a large
collection of thousands of BPMN models. The average time for processing a BPMN model is
0.15 sec. and the standard deviation of the processing time is 0.23 sec., which means that
the proposed algorithm can be used to provide corrections of BPMN models “on the fly”.</p>
      <p>Fig. 4 below demonstrates measurements of time required to process each of BPMN
models.</p>
      <p>The exploratory analysis [25] of performance measures results in the following insights:



the processing time of only 31 BPMN models has exceeded 1 sec. – the processing of
28 models took more than 1 sec., 2 models – more than 2 sec., and 1 model – more
than 3 sec.;
the processing time of 25% of BPMN models is below 0.05 sec., of 50% – below 0.09
sec., and of 75% – below 0.14 sec.;
the minimum processing time of is 0.004 sec. and the maximum processing time is
3.18 sec.</p>
      <p>Table 2 below demonstrates the hardware and software environment used to perform
the experiment.</p>
      <p>The total number of invalid BPMN models is 1641 (44.01%). The number of fixed
business process models is 1157 (70.63% of all models detected as invalid), which means
that all the violations of rules 1 – 6 were corrected by the proposed algorithm and the new
values of general correctness metrics ρ∗( ) for these models were increased to 1, i.e.
ρ∗( ) &gt; ρ( ). The number of improved business process models is 1293 (78.79%), which
means that some of the violations of rules 1 – 6 were corrected by the proposed algorithm
and the new values of relative correctness metrics for these models were increased, i.e.
σ∗( ) &gt; σ( ).</p>
      <p>Fig. 5 demonstrates the box plot created using the scaled values of the relative
correctness metric obtained before correction σ( )⁄ , after correction σ∗( )⁄ , and the
difference between the metric values before and after correction σ∗( )⁄ − σ( )⁄ .</p>
      <p>The exploratory analysis [25] of the scaled values of the relative correctness metric
results in the following insights demonstrated in Table 4.</p>
      <p>Using the results given in Table 4, the following conclusions can be made:


the mean σ( )⁄ of analyzed BPMN models is increased by 14% (from 0.85 to
0.99), and the mean of σ∗( )⁄ − σ( )⁄ is 0.14 respectively;
the standard deviation of σ( )⁄ is decreased by 14% (from 0.16 to 0.02), while
the standard deviation of σ∗( )⁄ − σ( )⁄ is 0.16 since initially models varied in
quality;







</p>
      <sec id="sec-4-1">
        <title>Statistics</title>
      </sec>
      <sec id="sec-4-2">
        <title>Mean</title>
        <p>Standard deviation</p>
        <p>Min
25%
50%
75%
Max
σ( )⁄
the minimum of σ( )⁄ is increased by 62% (from 0.08 to 0.70), however, the
minimum of σ∗( )⁄ − σ( )⁄ is 0.00 since some BPMN models were neither
fixed nor improved;
the lower quartile of σ( )⁄ is increased by 16% (from 0.81 to 0.97), while the
quality of 25% of analyzed BPMN models was improved by 4% (0.04) or less;
the median of σ( )⁄ is increased by 9% (from 0.91 to 1.00), while the quality of
50% of analyzed BPMN models was improved by 8% (0.08) or less;
the upper quartile of σ( )⁄ is increased by 5% (from 0.95 to 1.00), while the
quality of 75% of analyzed BPMN models was improved by 19% (0.19) or less;
the maximum of σ( )⁄ is increased by 2% (from 0.98 to 1.00), however, the
maximum of σ∗( )⁄ − σ( )⁄ is 0.89 for the “worst” analyzed BPMN model
improved.</p>
        <p>Let us consider the example of a BPMN business process model processing and
correction using the proposed algorithmic and software solution. The original BPMN model
describes the goods dispatch business process of a small hardware store. It belongs to the
Camunda GitHub collection of BPMN files [24].</p>
        <p>The graph built using this adjacency matrix Φ and the corresponding BPMN model with
the node labels are demonstrated in Fig. 6 below. Red-labelled elements violate rules 1 – 6
and should be fixed.</p>
        <p>Fig. 7 demonstrates the corrected business process graph built according to the obtained
modified adjacency matrix Φ∗ and the corresponding BPMN model with the proposed
changes. Green-labelled elements now satisfy business process modeling rule 1 – 6.</p>
        <p>As the result, the following BPMN elements were modified to satisfy modeling rules:
the outgoing flow is added to the start event “Order Received” (SE#01) to connect it
with the task “Shipping Clarification” (A#1),  1∗,2 = 1;
the outgoing flow is added to the task “Shipping Clarification” (A#1) to connect it
with the XOR-gateway (GW#4),  2∗,5 = 1;
the outgoing flow is added to the task “Prepare Package to be pick up” (A#12) to
connect it with the end event (EE#15),  1∗3,16 = 1.</p>
        <p>
          According to Table 5, the formal complexity of the example BPMN model is increased
from 17.65% to 48.16% by different complexity metrics [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ]. However, this does not mean
the understandability of the modified model (Fig. 7) is decreased. In contrast, the missing
flows were restored and events, tasks, and a gateway are now properly connected, and
demonstrate the consistent workflow. This is confirmed by increased metrics ρ( ) = 1,
σ( ) = 11, and σ( )⁄ = 1.00.
        </p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>5. Conclusions and Future Work</title>
      <p>In this study, we have addressed the relevant problem of analyzing and correcting the
quality of business process models in order to contribute to the BPM discipline and to face
the major challenges in this area, related to the design of understandable and maintainable
business process models. In fact, the design of high quality business process models,
especially BPMN models as the most widely used workflow diagrams, is one of the success
factors for efficient and effective organizational activities. Business process models, which
are used to capture, visualize, communicate, and analyze business and information
workflows, should be of high quality to avoid errors and mistakes due to their low
comprehensibility by both business and information technology professionals in different
domains.</p>
      <p>Therefore, in this study we analyzed the existing research in the BPM field related to
quality analysis of BPMN models and formulated the problem of developing an algorithmic
and software solution to ensure continuous quality analysis and correction of the developed
business process models. The proposed approach is based on graph-based process
description, modeling anti-patterns (i.e. modeling rule violations) detection, and automated
correction using the corrections in an adjacency matrix representing the BPMN structure.</p>
      <p>The proposed algorithmic foundations were implemented using the Python
programming language and additional third-party packages. The software implementation
was used to verify the proposed approach. As a test dataset, the collection of 3729 BPMN
models was used, in which the maximum processing time of a single BPMN model was 3.18
seconds, indicating the reasonable performance of the proposed solution. In total, the used
collection consists of 1641 invalid BPMN models (44.01%), of which 1293 (78.79%) were
improved, with 1157 (70.63%) fully corrected to comply with all introduced business
process modeling rules 1 - 6.</p>
      <p>Future work in this field includes the use of evolutionary optimization algorithms to
increase the proportion of fixed business process models and software customization for
end users.
[10] A. Kopp, D. Orlovskyi, Towards the Method and Information Technology for Evaluation
of Business Process Model Quality, in: ICTERI 2020: Information and Communication
Technologies in Education, Research, and Industrial Applications, Springer, Cham,
2021, pp. 93–118. doi:10.1007/978-3-030-77592-6_5.
[11] D. T. Avila, R. I. dos Santos, J. Mendling, L. H. Thom, A systematic literature review of
process modeling guidelines and their empirical support, Business Process
Management Journal 27(1) (2020) 1–23. doi:10.1108/BPMJ-10-2019-0407.
[12] I. Beerepoot et al., The biggest business process management problems to solve before
we die, Computers in Industry 146 (2023) 103837.
doi:10.1016/j.compind.2022.103837.
[13] Business Process Management Market Size, Share &amp; Trends Analysis Report By
Solution (Automation, Process Modelling), By Application, By Deployment, By
Enduser, By Region, And Segment Forecasts, 2023 - 2030. URL:
https://www.grandviewresearch.com/industry-analysis/business-processmanagement-bpm-market.
[14] V. L. Lysytskyi, Y. Y. Morhun, Development of software for effective enterprise product
policy creation, Bulletin of National Technical University KhPI Series System Analysis
Control and Information Technologies 21 (2018) 59–64.
doi:10.20998/20790023.2018.21.11.
[15] F. Corradini et al., BPMN 2.0 OR-Join Semantics: Global and local characterisation,</p>
      <p>Information Systems 105 (2022) 101934. doi:10.1016/j.is.2021.101934.
[16] S. Qin, Z. Zhao, J. Su, Z. Yang, The Segmentation and Reconstruction Method of Business
Process BPMN under Constraint Conditions, In: 2021 International Conference on
Service Science (ICSS), Xi'an, China, 2021, pp. 45–50.
doi:10.1109/ICSS53362.2021.00015.
[17] Business Process Model and Notation (BPMN). Version 2.0. URL:
https://www.omg.org/spec/BPMN/2.0/PDF.
[18] B. D. Lehmann, P. Alexander, H. Lichter, S. Hacks, Towards the identification of process
anti-patterns in enterprise architecture models, In: 8th International Workshop on
Quantitative Approaches to Software Quality (QuASoQ), 2020, pp. 47-54. URL:
https://ceur-ws.org/Vol-2767/06-QuASoQ-2020.pdf.
[19] Python. URL: https://www.python.org/.
[20] XML Processing Modules. URL: https://docs.python.org/3/library/xml.html.
[21] NumPy. URL: https://numpy.org/.
[22] Matplotlib. URL: https://matplotlib.org/.
[23] CSV File Reading and Writing. URL: https://docs.python.org/3/library/csv.html.
[24] BPMN for research. URL: https://github.com/camunda/bpmn-for-research/.
[25] T. H. Sheikh, P. S. Aithal, Visualization and Explorative Data Analysis, International
Journal of Enhanced Research in Science, Technology &amp; Engineering 12(3) 11–21.
doi:10.2139/ssrn.4400256.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>A.</given-names>
            <surname>Correia</surname>
          </string-name>
          ,
          <string-name>
            <surname>F.</surname>
          </string-name>
          <article-title>Brito e Abreu, Enhancing the correctness of BPMN models</article-title>
          , In: Information Resources Management Association (Ed.),
          <source>Hershey: IGI Global</source>
          ,
          <year>2020</year>
          , pp.
          <fpage>373</fpage>
          -
          <lpage>394</lpage>
          . doi:
          <volume>110</volume>
          .4018/978-1-
          <fpage>5225</fpage>
          -9615-8.
          <year>ch017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>A.</given-names>
            <surname>Kopp</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Orlovskyi</surname>
          </string-name>
          ,
          <article-title>Towards Intelligent Technology for Error Detection and Quality Evaluation of Business Process Models</article-title>
          , in: IntelITSIS'
          <year>2023</year>
          : 4th
          <source>International Workshop on Intelligent Information Technologies and Systems of Information Security</source>
          , Khmelnytskyi, Ukraine,
          <year>2023</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>14</lpage>
          . URL: https://ceur-ws.org/Vol3373/keynote1.pdf.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>N. A.</given-names>
            <surname>Panayiotou</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K. E.</given-names>
            <surname>Stergiou</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V. P.</given-names>
            <surname>Stavrou</surname>
          </string-name>
          ,
          <article-title>Development of a Modeling Architecture Incorporating the Industry 4.0 View for a Company in the Gas Sector</article-title>
          ,
          <source>In: Advances in Production Management Systems Towards Smart Production Management Systems: IFIP WG 5</source>
          .7 International Conference,
          <source>APMS 2019</source>
          , Springer International Publishing,
          <year>2019</year>
          , pp.
          <fpage>397</fpage>
          -
          <lpage>404</lpage>
          . doi:
          <volume>10</volume>
          .1007/978-3-
          <fpage>030</fpage>
          -29996-5_
          <fpage>46</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>H. A.</given-names>
            <surname>Reijers</surname>
          </string-name>
          , Business Process Management:
          <article-title>The evolution of a discipline, Computers in Industry 126 (</article-title>
          <year>2021</year>
          )
          <article-title>103404</article-title>
          . doi:
          <volume>10</volume>
          .1016/j.compind.
          <year>2021</year>
          .
          <volume>103404</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>B.</given-names>
            <surname>Haj Ayech</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. A.</given-names>
            <surname>Ghannouchi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E. A.</given-names>
            <surname>El Hadj</surname>
          </string-name>
          <string-name>
            <surname>Amor</surname>
          </string-name>
          ,
          <article-title>Extension of the BPM lifecycle to promote the maintainability of BPMN models</article-title>
          ,
          <source>Procedia Computer Science</source>
          <volume>181</volume>
          (
          <year>2021</year>
          )
          <fpage>852</fpage>
          -
          <lpage>860</lpage>
          . doi:
          <volume>10</volume>
          .1016/j.procs.
          <year>2021</year>
          .
          <volume>01</volume>
          .239.
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>G.</given-names>
            <surname>Rivera</surname>
          </string-name>
          <string-name>
            <surname>Lazo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Ñanculef</surname>
          </string-name>
          <article-title>, Multi-attribute Transformers for Sequence Prediction in Business Process Management</article-title>
          ,
          <source>In: Discovery Science: 25th International Conference, DS</source>
          <year>2022</year>
          , Cham, Springer Nature Switzerland,
          <year>2022</year>
          , pp.
          <fpage>184</fpage>
          -
          <lpage>194</lpage>
          . doi:
          <volume>10</volume>
          .1007/978-3-
          <fpage>031</fpage>
          -18840-4_
          <fpage>14</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>C.</given-names>
            <surname>Fotoglou</surname>
          </string-name>
          et al.,
          <article-title>Complexity clustering of BPMN models: initial experiments with the K-means algorithm, In: Decision Support Systems X: Cognitive Decision Support Systems and Technologies: 6th International Conference on Decision Support System Technology</article-title>
          ,
          <source>ICDSST 2020</source>
          , Springer International Publishing, pp.
          <fpage>57</fpage>
          -
          <lpage>69</lpage>
          . doi:
          <volume>10</volume>
          .1007/978-3-
          <fpage>030</fpage>
          -46224-
          <issue>6</issue>
          _
          <fpage>5</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>W.</given-names>
            <surname>Kbaier</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. A.</given-names>
            <surname>Ghannouchi</surname>
          </string-name>
          ,
          <article-title>Determining the threshold values of quality metrics in BPMN process models using data mining techniques</article-title>
          ,
          <source>Procedia Computer Science</source>
          <volume>164</volume>
          (
          <year>2019</year>
          )
          <fpage>113</fpage>
          -
          <lpage>119</lpage>
          . doi:
          <volume>10</volume>
          .1016/j.procs.
          <year>2019</year>
          .
          <volume>12</volume>
          .161.
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>F.</given-names>
            <surname>Corradini</surname>
          </string-name>
          et al.,
          <article-title>Correctness checking for BPMN collaborations with sub-processes</article-title>
          ,
          <source>Journal of Systems and Software</source>
          <volume>166</volume>
          (
          <year>2020</year>
          )
          <article-title>110594</article-title>
          . doi:
          <volume>10</volume>
          .1016/j.jss.
          <year>2020</year>
          .
          <volume>110594</volume>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>