<!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>November</journal-title>
      </journal-title-group>
      <issn pub-type="ppub">1613-0073</issn>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Towards Software Development for Maintainability Evaluation of Business Process Models Using Fuzzy Logic</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Andrii Kopp</string-name>
          <email>kopp93@gmail.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Dmytro Orlovskyi</string-name>
          <email>orlovskyi.dm@gmail.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Workshop</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="editor">
          <string-name>Business Process Modeling, Business Process Model Maintainability, Business Process Model</string-name>
        </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>
      <pub-date>
        <year>2023</year>
      </pub-date>
      <volume>2</volume>
      <fpage>0</fpage>
      <lpage>21</lpage>
      <abstract>
        <p>Business process modeling is a key tool in Business Process Management. Business process models are graphical representations of organizational activities used to depict ongoing tasks, events, and decision-making points to improve enterprise performance by gathering software requirements for workflow automation. Business process models facilitate the design of highquality enterprise architectures, therefore, the quality of models impacts the success of proper solutions communication and implementation. Hence, this study focuses on the maintainability as one of the crucial quality attributes of business process models. Using the existing metrics of business process model complexity, this paper proposes to automatically detect complexity levels of business process models using the algorithm based on fuzzy logic and the respective software tool implementing the proposed algorithm. The software tool assumes treatment of business process models as the software engineering assets via the version-control system and its usage demonstrates processing of the large repository of business process models.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>Business process modeling is the main tool of the Business Process Management (BPM) approach,
which is used to describe organizational activities in the form of graphical diagrams.</p>
      <p>
        In general, BPM is seen as a discipline that combines the best practices of Information Technology
(IT) and business management to help organizations identify, analyze, design, implement, and control
business processes [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
      <p>
        The capabilities of the BPM approach are used by organizations to deliver high quality products and
services to customers and to find ways to improve organizational performance. Business processes are
scenarios of activities driven by events and decisions. Business processes are also considered as “chains
of events, actions, and decisions” according to [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
      </p>
      <p>
        Business process models are business process descriptions, most often graphical in the form of
diagrams and charts, that help design and analyze information systems and serve as communication
mechanisms between stakeholders [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ].
      </p>
      <p>
        Thus, business process model quality is, no doubt, vital for the successful implementation of BPM
projects, or at least for collecting requirements to develop or improve enterprise information systems.
Maintainability is one of the quality attributes particularly interesting for facilitating the evolution and
execution of operations to support business process models in a highly dynamic environment [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
      </p>
      <p>The research object of this study is the procedure of maintainability evaluation of business process
models. The research subject of this study is the software tool for maintainability evolution of business
process models. This study aims to improve the maintainability of business process models by using
complexity metrics similar to software metrics.</p>
      <p>2023 Copyright for this paper by its authors.
CEUR</p>
      <p>ceur-ws.org
Therefore, this study should answer the following research questions:
 How to assess the maintainability of a business process model using software-like metrics?
 How to improve and automate the evaluation of business process model maintainability?</p>
    </sec>
    <sec id="sec-2">
      <title>2. Business Process Modeling</title>
      <p>
        Business process modeling aims to represent organizational activities so that current operations can
be analyzed and improved. Business process modeling is not only a requirement for ISO 9001 quality
standards or BPM maturity models, but also plays an important role in the implementation of business
process management [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
      </p>
      <p>
        Business process modeling helps to visualize important stages of a business process, how they relate
to each other, which entities and information systems are involved in performing various tasks, and
where communication with external parties takes place. Business process models are typically described
visually using graphical diagrams that are linked together and supported by text annotations [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
      </p>
      <p>
        There are numerous studies in the field of business process model quality [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]:
 SEQUAL Framework;
 The Guidelines of Modeling (GoM);
 Quality Framework for conceptual modeling;
 Seven Process Modeling Guidelines (7PMG);
 Business process model quality metrics etc.
      </p>
      <p>
        Thus, the quality of business process models can be considered as the degree to which the process
model meets the requirements of the process modeling guidelines related to ISO 9001 standards, which
declare quality as “the degree to which a set of inherent characteristics meets the requirements” [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ].
      </p>
      <p>
        Several business process modeling notations are used today, among which the most common are
EPC (Event-driven Process Chain) and BPMN (Business Process Model and Notation), both graphical
modeling languages used to describe business processes. However, the BPMN notation has almost
replaced EPC as the most widely used standard for business process modeling due to its growing
popularity in recent years [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ].
      </p>
      <p>
        Basically, BPMN business process diagrams describe workflows in terms of events and activities
linked through control flows, which indicate the existing sequences in the process. Gateways are special
elements connected through control flows that indicate whether branched steps of a business process
are performed in parallel (AND), alternatively (XOR), or optionally (OR). The beginning of a business
process is marked by a start event, and its completion is marked by one or more end events. Each pool
represents a business process, while each lane represents a person involved in the activity [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ].
      </p>
      <p>The key elements of the BPMN business process modeling notation are shown in Fig. 1.</p>
    </sec>
    <sec id="sec-3">
      <title>3. Business Process Model Maintainability Evaluation</title>
      <p>
        According to [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], the complexity of business process models has an undesirable impact on their
maintainability. Therefore, the simpler the model, the easier it is to modify and the less money and time
it will take to make changes to the business process [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. In this paper, we propose to use complexity
metrics based on software metrics to evaluate the suitability of BPMN business process models for use.
      </p>
      <p>
        The business process model in BPMN notation is proposed to be represented as a directed graph
[
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], where:
      </p>
      <p>= ( ,  ,  ),
where:
  =  ∪  ∪  is the set of nodes representing different business process elements: tasks and
sub-processes  , events  , and gateways  ;
  =  ∪  is the subset of gateways, which in turn also consists of splits  and joins  ;
  :  → { ,  ,  } is the mapping that defines the types of AND, OR, and XOR gateways;
  ⊆  ×  is the binary relationship that represents the arcs (control flows) of the business
process model.</p>
      <p>
        Vanderfeesten et al. introduced several complexity metrics adapted from software engineering [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ].
Based on the simple LOC (Lines of Code) metric, which involves counting the number of lines of
program code, the authors of [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] proposed the NOA (Number of Activities) metric to count the number
of activities in a business process and NOAJS (Number of Activities, Joins, and Splits) to count the
number of activities, split gateways, and join gateways in a business process.
      </p>
      <p>Thus, formally, the NOA and NOAJS metrics can be defined based on the following expressions:
(2)</p>
      <p>= | |,
= | | + | | + | |.</p>
      <p>
        The CFC (Control Flow Complexity) metric, proposed by Cardoso [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] to measure the complexity
of the control flow within a business process model, allows to assess the complexity of a business
process based on the analysis of such gateways as XOR-Split, OR-Split, and AND-Split [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]:
      </p>
      <p>( ) =  −  ( ) is the gateway complexity metric of the XOR-Split type;
   ( ) = 2 − ( ) − 1 is the gateway complexity metric of the OR-Split type;
   ( ) = 1 is the gateway complexity metric of the AND-Split type;
  ∈  is the split gateway;
  −  ( ) is the number of outgoing control flows from the gateway.</p>
      <p>
        According to [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], the CFC metric can be used as a maintainability and quality metric, as it allows
to assess the relative complexity of business process models and is quite easy to apply [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
      </p>
      <p>
        To assess the duration, scope, and complexity of a process, Vanderfeesten et al. proposed the HPC
(Halsted-based Process Complexity) metric [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. This metric allows predicting the number of errors
and maintenance efforts of a business process. It can be used for most process modeling languages
(BPMN, EPC, etc.):
where:




    =  1 log2( 1) +  2 log2( 2),
   = ( 1 +  2) log2( 1 +  2),
   =
 1  2
2  2
      </p>
      <p>,
   is the process length;
   is the process volume;
   is the process complexity;
 1 is the number of unique elements of the control flow (tasks, gateways, events);
(1)
(3)
(4)
(5)
(6)
(7)
  2 is the number of unique variables manipulated by the process and its activities (tasks,
gateways, events);
  1 is the number of all elements of the control flow (tasks, gateways, events);
  2 is the number of all variables manipulated by the process and its activities (tasks, gateways,
events).</p>
      <p>
        The IC (Interface Complexity) is another metric proposed by Vanderfeesten et al. [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], which is
used to assess the complexity of business processes. The IC value is obtained by calculating the IC
value for each activity and then summing it for all activities of the business process:
2
(8)
where:
  ℎ is the coefficient equal to 1 for tasks and 3 for sub-processes;
  ∈  is the business process activity;
  −  ( ) is the number of incoming control flows of the activity;
  −  ( ) is the number of outgoing control flows of the activity.
      </p>
      <p>
        Therefore, it is proposed to evaluate business process models based on the CFC metric, which can
be used as a metric of maintainability and quality [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ].
      </p>
      <p>
        For this purpose, the following thresholds of the CFC metric and the following linguistic estimates
were determined in [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]:
   ≤ 3 for the low complexity and high maintainability;
 3 &lt;  ≤ 9 for the moderate complexity and moderate maintainability;
  &gt; 9 for the high complexity and low maintainability.
      </p>
      <p>The following set describes the levels of maintainability of business process models for the linguistic
variable “CFC Level”:</p>
      <p>( ) = { ,  , ℎ ℎ}. (9)</p>
      <p>
        The following trapezoidal membership functions, built using the thresholds of the CFC metric ± 1
to smooth the boundaries of the complexity and maintainability levels [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ], describe the corresponding
linguistic values of the “CFC Level” linguistic variable:
 low maintainability,
 
(
) = {
,
2 &lt; 
 ∈
,
,
4−
2
0,
{
2
1,
10 − 
2
1,
0,
− 8
≤ 2
≥ 4
      </p>
      <p>&lt; 4;
&lt; 10.


moderate maintainability,
 
(</p>
      <p>) =
high maintainability,
 ℎ ℎ (
) = {
,</p>
      <p>8 &lt; 
2
1,  ≥ 10</p>
      <p>
        The parameters of the proposed membership functions were determined based on the thresholds of
the CFC metric [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ].
      </p>
      <p>The universal set of the CFC variable is [0, +∞].</p>
      <p>Syntactic and semantic rules are not defined for the proposed linguistic variable “CFC Level”.</p>
      <p>Fig. 2 below demonstrates the appearance of the proposed membership functions.</p>
      <p>Finally, the maximum value of the membership functions allows to evaluate the maintainability level
of the business process model:
where 
∈ 
 ( ) = arg max   ( ),</p>
      <p>∈
is the level of maintainability of the business process model.</p>
    </sec>
    <sec id="sec-4">
      <title>4. Software Requirements Elicitation</title>
      <p>(13)</p>
      <p>
        Functional requirements for software define what functions a system (or its individual components)
should have. Thus, functional requirements define what the software should do. If these requirements
are not met, the software cannot be considered to be designed to meet the needs of the users [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ].
      </p>
      <p>
        The most common examples of functional requirements are [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]:
 use cases;
 specification documents.
      </p>
      <p>Thus, the requirements for a software solution for assessing the maintainability of business process
models are presented as the UML (Unified Modeling Language) use case diagram (Fig. 3).</p>
      <p>The formulated Functional Requirements (FR) are presented in Table 1.</p>
      <p>
        Non-functional requirements define how the software fulfills its functional goals (not what the
system will do, but how the system will do it). These requirements define the criteria used to evaluate
the performance, reliability, and maintainability of the system. They define and impose external
constraints on the software to be developed and on the development process [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ].
      </p>
      <p>
        The formulated Non-Functional Requirements (NFR) are presented in Table 2.
The software must be a cross-platform application
The software should work and look the same in different
web browsers
The software should work with business process models
presented in the BPMN 2.0 format
The language of the software user interface must be English
Passwords to software user accounts must be stored in
encrypted form
The software interface should not be overloaded, providing
the user with up to 7 controls at the same time
In addition, certain system requirements for the software tool are outlined:
 architecture – the software should be created as a web application based on a three-tier
clientserver architecture [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ];
 data storage – the software should use a relational database management system (DBMS) to
implement the database of business process models and a distributed version control system (VCS)
Git to implement the workflows for BPMN models similar to other software engineering artifacts;
 technologies – the system should use PostgreSQL DBMS [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ], Git VCS [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ], Python language
[
        <xref ref-type="bibr" rid="ref18">18</xref>
        ], Flask [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ], React [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ] and Bootstrap [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ] frameworks, HTML, CSS, and JavaScript.
      </p>
    </sec>
    <sec id="sec-5">
      <title>5. Software Design and Development</title>
      <p>
        Let us demonstrate the key components of the software tool, their purpose and allocation using the
UML deployment diagram [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ] (Fig. 4).
      </p>
      <p>According to the deployment diagram (Fig. 4), BPMN models are added to the local Git repository
by users, then sent to a remote Git repository, processed by a software solution created in Python, the
processing results are stored in a database based on the PostgreSQL database, and then displayed on a
web page to the user.</p>
      <p>
        Let us present the internal structure of the software tool for assessing the maintainability of business
process models using the UML class diagram [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ] (Fig. 5).
      </p>
      <p>
        The ProcessModel, Metric, and Author classes provide the object-relational mapping [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ] between
objects and database entities. In addition, these classes have getter methods for accessing fields.
      </p>
      <p>The ModelAnalysisResult class, shown in the UML diagram (Fig. 5), is an object-oriented mapping
of a fact table with information about the business process model, author, and calculated metrics.</p>
      <p>The DatabaseUtil class acts as an access point to the database and implements the operations of
creating, updating, deleting, and reading data (CRUD).</p>
      <p>The BPMNUtil class provides capabilities for accessing a collection of BPMN 2.0 documents,
reading files, and converting them to JSON objects.</p>
      <p>The APIEndpoint class implements a web application and processes client requests.</p>
      <p>
        The interaction between the software tool components is demonstrated using the UML sequence
diagram [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ] (Fig. 6).
      </p>
      <p>Let us consider interactions between the software components depicted in more detail (Fig. 6):
1. The user (the author of BPMN model) performs a commit operation and adds the BPMN 2.0
file to the local Git repository.
2. The user performs a push operation and sends the BPMN 2.0 file to the remote Git repository.
3. The user opens the software in a web browser and starts updating the models.
4. The web browser sends an HTTP (Hyper Text Transfer Protocol) request to the web application
to update the business process models.
5. The web application requests access to the BPMN models stored in the remote Git repository.
6. The web application retrieves BPMN 2.0 files from the remote Git repository.
7. The web application processes the BPMN 2.0 files to extract data about the business process
structure and makes necessary calculations.
8. The web application saves the results of business process models maintainability analysis for
future use in the repository.
9. The user opens the main page of the software solution in a web browser.
10. The web browser sends an HTTP request to the web application to get data from the repository.
11. The web application queries the repository to obtain the results of the business process model
maintainability analysis.
12. The web application retrieves the data from the repository.
13. The web application displays the results of the business process model maintainability analysis
retrieved from the repository, which the user will view in a web browser on the main page of the
software tool.</p>
      <p>
        Thus, the detailed structure of the software tool components designed to evaluate the maintainability
of business process models is depicted using the UML component diagram [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ] (Fig. 7).
      </p>
    </sec>
    <sec id="sec-6">
      <title>6. Experimental Results</title>
      <p>
        To test the performance of the software tool for assessing the maintainability of business process
models, which can be used on practice to refine described workflows, we used the GitHub repository
“bpmn-for-research”, which contains 3729 business process models in BPMN 2.0 notation [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ].
      </p>
      <p>The main page of the developed software tool is shown in Fig. 7.</p>
      <p>The main page contains the name of the software tool “BPMN-CFC Analysis Tool” and aggregated
indicators that show the number of BPMN 2.0 models in the working directory (Git repository), the
average, minimum, and maximum values of the CFC metric, as well as the number (in percent) of
models with low, medium, and high usability.</p>
      <p>
        As can be seen from Fig. 7, the analyzed set of 3729 business process models [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ] has the following
CFC metric indicators:
 average value – 5.03;
 minimum value – 0.00;
 maximum value – 24.
      </p>
      <p>
        Therefore, it is possible to make assumptions about different levels of BPMN models maintainability
from the analyzed data set [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ]:
 8.45% of BPMN models have low maintainability (i.e., complex to work with);
 60.58% of BPMN models have moderate maintainability (i.e., comfortable to work with);
 30.97% of BPMN models have high maintainability (i.e., easy to work with).
      </p>
      <p>The specific results of the BPMN 2.0 business process models maintainability analysis are displayed
in the form of cards with the file name, a visual mark on the model’s maintainability (Fig. 7), the value
of the CFC metric, the complexity and level of maintainability of the model.</p>
      <p>Two BPMN models representing the business process of goods dispatch were used to perform
control calculations. The first model is shown in Fig. 8.</p>
      <p>The results of the analysis of this model (Fig. 8) indicate an average complexity (
accordingly, an average level of modifiability of this model (Fig. 10a).</p>
      <p>The second model of the goods dispatch business process is shown in Fig. 9.</p>
      <p>This model (Fig. 9) is complex ( = 10) and has a low modifiability (Fig. 10b).</p>
      <p>The maintainability evaluation results of the first and second BPMN models of the goods dispatch
business process are shown in Fig. 10.</p>
      <p>It can be seen from Fig. 8 and Fig. 9 that the software tool assumes both split and joins gateways to
calculate the maintainability level in compare to the original CFC metric (Fig. 11).</p>
      <p>While the use of the original CFC metric results in lower complexity values (i.e., both considered
BPMN models are assessed as “moderate” to maintain), the software tool assuming both split and join
gateways results in more realistic estimates since join gateways provide additional complexity to the
BPMN model and impact the model’s structuredness (i.e. when join gateways must correspond split
gateways and vice versa).</p>
      <p>Therefore, analyzed BPMN models are assessed as “moderate” and “high” to maintain (Fig. 12).</p>
      <p>The use of fuzzy logic similar to human reasoning makes it easier for business process model authors
to analyze the complexity and maintainability of BPMN models, and, consequently, design high-quality
workflow diagrams to continuously improve enterprise solutions, and avoid errors and related costs.</p>
    </sec>
    <sec id="sec-7">
      <title>7. Conclusions and Future Work</title>
      <p>The maintainability of business process models plays a key role in obtaining a model that can be
easily improved, modified, and adapted in accordance with changes in the organization and in the
external environment. Thus, this study addresses the relevant problem of increasing the maintainability
of business process models, which will allow avoiding the cost of correcting errors by identifying
problems at the stage of domain analysis.</p>
      <p>Thus, the following results were obtained in this study:
 the business process modeling domain and the existing metrics of business process models are
reviewed – the CFC metric is chosen to build the fuzzy logic-based approach for BPMN analysis;
 the novel approach to the control-flow complexity measurement of business process models
based on fuzzy logic is proposed – it resembles human reasoning to make the analysis results more
understandable by BPMN model designers;
 the architecture of the software tool for assessing the maintainability of business process models
based on the proposed approach is proposed – it assumes the idea of treating BPMN 2.0 models in
the same way as other software engineering assets (i.e., source code files, configuration files, etc.)
using the version-control system, this study assumes the use of Git;
 the software tool is developed using the Python programming language, the Flask and React
web frameworks, the Bootstrap framework for building web interfaces, as well as the HTML, CSS,
and JavaScript web development tools – using the proposed technology stack allows to rapidly build
an initial prototype and perform the experiments;
 the solution of the business process model maintainability evaluation problem is demonstrated
– the large collection of BPMN models from the Camunda GitHub repository is evaluated;
 the results are analyzed and discussed based on the CFC metric values obtained for the test set
of BPMN 2.0 models – considering both split and join gateways allows to obtain a clearer picture
regarding the complexity and maintainability of business process models.</p>
      <p>Future work in this field includes elaboration of the proposed software solution and its application
to the relevant cases of BPMN models in different domains. Also, it is planned to improve the proposed
approach by introducing the elements of automatic business process model correction depending on the
desired level of its complexity and maintainability.
8. References</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>N.</given-names>
            <surname>Ahrend</surname>
          </string-name>
          ,
          <article-title>Opportunities and limitations of BPM initiatives in public administrations across levels and institutions</article-title>
          , Humboldt University of Berlin, Berlin,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>M.</given-names>
            <surname>Dumas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. La</given-names>
            <surname>Rosa</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Mendling</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H. A.</given-names>
            <surname>Reijers</surname>
          </string-name>
          , Introduction to Business Process Management, in: Fundamentals of Business Process Management, Springer, Berlin, Heidelberg,
          <year>2018</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>33</lpage>
          . doi:
          <volume>10</volume>
          .1007/978-3-
          <fpage>662</fpage>
          -56509-
          <issue>4</issue>
          _
          <fpage>1</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>F.</given-names>
            <surname>Kahloun</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. A.</given-names>
            <surname>Ghannouchi</surname>
          </string-name>
          ,
          <article-title>A Classification Algorithm for Assessing the Quality Criteria for Business Process Models</article-title>
          ,
          <source>in: International Conference on Hybrid Intelligent Systems</source>
          , vol.
          <volume>734</volume>
          , Springer, Cham,
          <year>2017</year>
          , pp.
          <fpage>71</fpage>
          -
          <lpage>81</lpage>
          . doi:
          <volume>10</volume>
          .1007/978-3-
          <fpage>319</fpage>
          -76351-
          <issue>4</issue>
          _
          <fpage>8</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>H. 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="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>H. A.</given-names>
            <surname>Reijers</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Mendling</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Recker</surname>
          </string-name>
          , Business Process Quality Management,
          <source>in: Handbook on Business Process Management</source>
          <volume>1</volume>
          ,
          <string-name>
            <surname>International</surname>
            <given-names>Handbooks</given-names>
          </string-name>
          <source>on Information Systems</source>
          , Springer, Berlin, Heidelberg,
          <year>2015</year>
          , pp.
          <fpage>167</fpage>
          -
          <lpage>185</lpage>
          . doi:
          <volume>10</volume>
          .1007/978-3-
          <fpage>642</fpage>
          -45100-
          <issue>3</issue>
          _
          <fpage>8</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>J.</given-names>
            <surname>Pavlicek</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Hronza</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Pavlickova</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Jelinkova</surname>
          </string-name>
          ,
          <article-title>The Business Process Model Quality Metrics</article-title>
          ,
          <source>in: Enterprise and Organizational Modeling and Simulation</source>
          , vol.
          <volume>298</volume>
          , Springer, Cham,
          <year>2017</year>
          , pp.
          <fpage>134</fpage>
          -
          <lpage>148</lpage>
          . doi:
          <volume>10</volume>
          .1007/978-3-
          <fpage>319</fpage>
          -68185-6_
          <fpage>10</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>R.</given-names>
            <surname>Tricker</surname>
          </string-name>
          , ISO
          <volume>9001</volume>
          :
          <article-title>2015 for Small Business</article-title>
          , Taylor &amp; Francis,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>A.</given-names>
            <surname>Khudori</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T. A.</given-names>
            <surname>Kurniawan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Ramdani</surname>
          </string-name>
          ,
          <article-title>Quality Evaluation of EPC to BPMN Business Process Model Transformation</article-title>
          ,
          <source>Journal of Information Technology and Computer Science</source>
          <volume>5</volume>
          (
          <issue>2</issue>
          ) (
          <year>2020</year>
          )
          <fpage>207</fpage>
          -
          <lpage>220</lpage>
          . doi:
          <volume>10</volume>
          .25126/jitecs.202052176.
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>H. G.</given-names>
            <surname>Ceballos</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Flores-Solorio</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. P.</given-names>
            <surname>Garcia</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A Probabilistic</given-names>
            <surname>BPMN</surname>
          </string-name>
          <article-title>Normal Form to Model and Advise Human Activities, in: Engineering Multi-Agent Systems</article-title>
          , vol.
          <volume>9318</volume>
          , Springer, Cham,
          <year>2015</year>
          , pp.
          <fpage>51</fpage>
          -
          <lpage>69</lpage>
          . doi:
          <volume>10</volume>
          .1007/978-3-
          <fpage>319</fpage>
          -26184-
          <issue>3</issue>
          _
          <fpage>4</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>C.</given-names>
            <surname>Zhou</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Zhang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Chen</surname>
          </string-name>
          , C. Liu, Business Process Complexity Measurement:
          <string-name>
            <given-names>A Systematic</given-names>
            <surname>Literature</surname>
          </string-name>
          <string-name>
            <surname>Review</surname>
          </string-name>
          ,
          <source>IEEE Access 11</source>
          (
          <year>2023</year>
          )
          <fpage>47940</fpage>
          -
          <lpage>47955</lpage>
          . doi:
          <volume>10</volume>
          .1109/ACCESS.
          <year>2023</year>
          .
          <volume>3275764</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>F.</given-names>
            <surname>Kahloun</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. A.</given-names>
            <surname>Ghannouchi</surname>
          </string-name>
          ,
          <article-title>Quality Criteria and Metrics for Business Process Models in Higher Education Domain: Case of a Tracking of Curriculum Offers Process</article-title>
          ,
          <source>Procedia Computer Science</source>
          <volume>100</volume>
          (
          <year>2016</year>
          )
          <fpage>1016</fpage>
          -
          <lpage>1023</lpage>
          . doi:
          <volume>10</volume>
          .1016/j.procs.
          <year>2016</year>
          .
          <volume>09</volume>
          .274.
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>F.</given-names>
            <surname>Corradini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Ferrari</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Fornari</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Gnesi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Polini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Re</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G. O.</given-names>
            <surname>Spagnolo</surname>
          </string-name>
          ,
          <article-title>A Guidelines framework for understandable BPMN models</article-title>
          ,
          <source>Data &amp; Knowledge Engineering</source>
          <volume>113</volume>
          (
          <year>2018</year>
          )
          <fpage>129</fpage>
          -
          <lpage>154</lpage>
          . doi:
          <volume>10</volume>
          .1016/j.datak.
          <year>2017</year>
          .
          <volume>11</volume>
          .003.
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <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>
          ,
          <source>Determining The Threshold Values Of Quality Metrics In BPMN Process Models Using Data Mining Techniques, 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="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <surname>J.-L. Boulanger</surname>
          </string-name>
          ,
          <article-title>Requirements Specification of a Software Application</article-title>
          ,
          <source>in: Certifiable Software Applications</source>
          ,
          <year>2018</year>
          , pp.
          <fpage>43</fpage>
          -
          <lpage>73</lpage>
          . doi:
          <volume>10</volume>
          .1016/B978-1
          <source>-78548-119-2</source>
          .
          <fpage>50004</fpage>
          -
          <lpage>2</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>M. E.</given-names>
            <surname>Rana</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O. S.</given-names>
            <surname>Saleh</surname>
          </string-name>
          ,
          <article-title>High assurance software architecture and design</article-title>
          ,
          <source>in: System Assurances</source>
          ,
          <year>2022</year>
          , pp.
          <fpage>271</fpage>
          -
          <lpage>285</lpage>
          . doi:
          <volume>10</volume>
          .1016/B978-0
          <source>-323-90240-3</source>
          .
          <fpage>00015</fpage>
          -
          <lpage>1</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <article-title>PostgreSQL</article-title>
          . URL: https://www.postgresql.org/.
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <surname>Git</surname>
          </string-name>
          . URL: https://git-scm.com/.
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <surname>Python</surname>
          </string-name>
          . URL: https://www.python.org/.
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <surname>Flask</surname>
          </string-name>
          . URL: https://flask.palletsprojects.com/.
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <surname>React</surname>
          </string-name>
          . URL: https://react.dev/.
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <surname>Bootstrap</surname>
          </string-name>
          . URL: https://getbootstrap.com/.
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>J.</given-names>
            <surname>Osis</surname>
          </string-name>
          , U. Donins,
          <article-title>Unified Modeling Language: A Standard for Designing a Software</article-title>
          ,
          <source>in: Topological UML Modeling</source>
          ,
          <year>2017</year>
          , pp.
          <fpage>3</fpage>
          -
          <lpage>51</lpage>
          . doi:
          <volume>10</volume>
          .1016/B978-0
          <source>-12-805476-5</source>
          .
          <fpage>00001</fpage>
          -
          <lpage>0</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>A.</given-names>
            <surname>Torres</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Galante</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. S.</given-names>
            <surname>Pimenta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. J. B.</given-names>
            <surname>Martins</surname>
          </string-name>
          ,
          <article-title>Twenty years of object-relational mapping: A survey on patterns, solutions, and their implications on application design</article-title>
          ,
          <year>2017</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>18</lpage>
          . doi:
          <volume>10</volume>
          .1016/j.infsof.
          <year>2016</year>
          .
          <volume>09</volume>
          .009.
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <article-title>BPMN for research</article-title>
          . URL: https://github.com/camunda/bpmn-for-research/.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>