Data-Flow Analysis of BPMN-based Process-Driven Applications: Detecting anomalies across model and code - Konrad Schneid; Sascha Di Bernardo; Herbert Kuchen; Sebastian Thöne (Westfälische Wilhelms-Universität Münster, European Research Center for Information Systems (ERCIS), 2021)
Process-Driven Applications (PDA) combine Business Process Management and less-code approaches. They are typically based on executable process models, human tasks, and adapter code to external software services. Process data is shared across these artifacts, managed by a process engine. Therefore process engineers and programmers must ensure the correct data flow within these components, but also in between. However, previous approaches have only considered the data-flow analysis of those components separately. This paper provides a concept for detecting data-flow anomalies in BPMN-based Process-Driven Applications across all artifacts. The main idea is to create a single Data-Flow Analysis (DFA) graph based on the process model's abstract syntax. Call graphs representing the internal flows of the referenced source code are transformed and merged into the DFA graph. Then, the resulting graph is extended by labels indicating data-object operations occurring at its nodes. Eventually, a combined forward and backward analysis is performed to uncover data-flow anomalies as indicators of potential errors. The analysis concept was implemented as a prototype designed for the Camunda BPM Framework, proving its practicality in several case studies.
Keywords: 650; Process-Driven Application; Data-Flow Anomalies; Control-Flow Graph Analysis; BPMN