problem. No specific implementations exists for this
approach. (Xiang et al., 2021b) proposes a tool which
allows the detection of data inconsistency of work-
flow processes based on unfolding techniques simi-
lar to the ones in (Xiang et al., 2017). The authors
use the guard-driven reachability graph from (Xiang
and Liu, 2020) to apply model-checking techniques
for detecting deadlocks and proper-termination, but
no other data-flow errors are detected. Because the
configuration graph does not take into consideration
all the possible values of guards, incorrect results can
be obtained regarding the proper termination.
Our approach uses the WFD-net proposed in
(Tr
ˇ
cka et al., 2009), allowing read, write, delete op-
erations and guards for transitions. Instead of trans-
forming a model of the process into Petri nets in or-
der to apply model-checking techniques (as in (Tr
ˇ
cka
et al., 2009; von Stackelberg et al., 2014; M
¨
ulle et al.,
2019)), we provide a formalization of workflows with
data in Maude, by specifying WFD-nets as theories in
the rewriting logic. This approach permits the specifi-
cation of configurations as states of the Kripke struc-
ture that will be used by the LTL checker in Maude.
The proposed configuration embeds all the data infor-
mation needed to describe the data anti-patterns.
The existing approaches do not permit the specifi-
cation of data in the initial state of the process or the
specification of conditions on data when the workflow
terminates, as we propose in this paper.
7 CONCLUSIONS
In this paper we have proposed the specification of
workflow nets with data in Maude, providing a for-
mal semantics for WFD-nets. We have introduced
two notions of soundness to describe the correctness
of workflows with data. Unlike other notions of cor-
rectness defined for workflows with data, in which
the termination condition only requires that the final
marking (o) should be reached, these properties re-
quire that at least one data element or all data ele-
ments from a given set should be present when the
workflow terminates. We have formalized these cor-
rectness properties using the CTL temporal logic. We
have also formalized the data-flow errors (redundant
data, missing data, lost data and inconsistent data) us-
ing the LTL temporal logic. The verification of prop-
erties can be done using the LTL model checker from
Maude and the umaudemc utility for Maude.
In ongoing work, we plan to identify and formal-
ize other data flow errors, study soundness with other
types of termination requirements and also consider
the modelling of security constraints over data ele-
ments. We intend to develop a tool for editing WFD-
nets, that will also automate the transformation from
WFD-nets to Maude specifications and will permit the
verification of properties.
REFERENCES
Aalst, W. M. P. (1998). The application of Petri nets to
workflow management. Journal of Circuits, Systems
and Computers, 08(01):21–66.
Aalst, W. M. P., Hee, K. M., Hofstede, A. H. M., Sidorova,
N., Verbeek, H. M. W., Voorhoeve, M., and Wynn,
M. T. (2010). Soundness of workflow nets: classifi-
cation, decidability, and analysis. Formal Aspects of
Computing, 23(3):333–363.
Clarke, E. M., Grumberg, O., and Peled, D. A. (1999).
Model checking. MIT Press, London, Cambridge.
Eshuis, R. (2006). Symbolic model checking of UML ac-
tivity diagrams. ACM Trans. Softw. Eng. Methodol.,
15(1):1–38.
Fan, S., Dou, W., and Chen, J. (2007). Dual Workflow Nets:
Mixed control/data-flow representation for workflow
modeling and verification. In Advances in Web and
Network Technologies, and Information Management,
pages 433–444, Berlin, Heidelberg. Springer Berlin
Heidelberg.
He, Y., Liu, G., Xiang, D., Sun, J., Yan, C., and Jiang, C.
(2018). Verifying the correctness of workflow systems
based on workflow net with data constraints. IEEE
Access, 6:11412–11423.
Kheldoun, A., Barkaoui, K., and Ioualalen, M. (2017). For-
mal verification of complex business processes based
on high-level Petri nets. Information Sciences, 385-
386:39–54.
Liu, C., Zeng, Q., Duan, H., Wang, L., Tan, J., Ren, C.,
and Yu, W. (2020). Petri net based data-flow error de-
tection and correction strategy for business processes.
IEEE Access, 8:43265–43276.
Meda, H. S., Sen, A. K., and Bagchi, A. (2007). Detect-
ing data flow errors in workflows: A systematic graph
traversal approach. In Workshop on Information Tech-
nology & Systems (WITS-2007).
Meseguer, J. (1992). Conditional rewriting logic as a unified
model of concurrency. Theoretical Computer Science,
96(1):73–155.
M
¨
ulle, J., Tex, C., and B
¨
ohm, K. (2019). A practical data-
flow verification scheme for business processes. In-
formation Systems, 81:136–151.
Reisig, W. (1985). Petri Nets: An Introduction. Springer-
Verlag, Berlin, Heidelberg.
Rubio, R., Mart
´
ı-Oliet, N., Pita, I., and Verdejo, A. (2021).
Strategies, model checking and branching-time prop-
erties in Maude. Journal of Logical and Algebraic
Methods in Programming, 123:100700.
Sidorova, N., Stahl, C., and Tr
ˇ
cka, N. (2011). Soundness
verification for conceptual workflow nets with data:
Early detection of errors with the most precision pos-
sible. Information Systems, 36(7):1026–1043. Spe-
The Analysis of Data-Flow and Control-Flow in Workflow Processes Using Maude
383