4 RELATED WORK
Osterweil’s 1987 paper (Osterweil, 1987) highlighted
the importance of efficient software processes to de-
liver qualitative software and argued the idea of de-
veloping and using model processing languages that
are similar to programming languages. Just a few
years later, in 1993, a survey (Armenise et al., 1993)
found that by then, there were quite a number of pro-
cess modelling notations (the survey identifies Adele,
ALF, APPL/A, DesignNet, Entity, EPOS, FunSoft,
HFSP, Marvel, Merlin, MVP-L, Oikos and SPADE)
that exhibited syntax similar to program languages.
To date, many different treatments of process flex-
ibility have been proposed in the literature and recent
extensive reviews of the field can be found in (Rosa
et al., 2017) and (Cognini et al., 2018). Yet, many
issues that come with flexibility remain to be solved,
and of particular interest to us is the need for further
research in the verification (ensuring correctness) of
flexible business processes (Cognini et al., 2018).
To contextualize our approach we will refer to the
taxonomy proposed by (Reichert and Weber, 2012)
that identifies four types of process flexibility needs
: (1) Variability – defined as the ability of providing
different variants of the same process; (2) Adaptation
– defined as the ability to (temporarily) deviate the
execution path of a process; (3) Looseness – defined
as the ability to execute a process when the decisions
affecting the control flow are under-specified (and the
execution path can be different in different runs); and,
(4) Evolution – defined as a permanent modification
of the process.
In this taxonomy our approach maps both into
Variability and Looseness.
Additionally, of particular interest for us is the
treatment of process flexibility seen from the lens
of ‘equal enough’ processes by van der Aalst et al
(van der Aalst et al., 2006), where a Petri nets ap-
proach is used to distinguish between negligibly dif-
ferent and completely different processes.
In our approach, we support the reasoning about
flexible deployment by using the Unifying Theo-
rems of Programming (UTP) (Hoare and He, 1998)
framework for developing a range (which goes from
“weak” to “strong”) of formal semantics for PML.
5 CONCLUSIONS
In this paper, we discuss our insights into mod-
elling context-sensitive (business and software) pro-
cess flexibility. We developed formal semantics for
a lightweight and flexibility-friendly process model-
ing language called PML. Our semantics cover three
levels of interpretation for PML: strict, flexible and
weak interpretations. We are using Unifying Theories
of Programming (UTP) to model this range of seman-
tic interpretations and the paper presents a high-level
view of our formal approach. The added benefit of us-
ing the UTP framework is that we have semantically
interoperable levels of interpretation for a process de-
fined in PML. This can help to determine those sit-
uations where the interpretation level does not mat-
ter. Surprisingly this also gives us useful information
about the nature of the process being modelled, and
often guidance as to when flexibility is feasible or not.
The formal semantics have applications in regulated
domains, covering such areas as the certification pro-
cess for medical device software. In particular, we can
exploit the unification aspect of UTP to add in formal
models of resources themselves to extend the scope
of our analyses.
ACKNOWLEDGMENTS
This work was supported, in part, by Science Foun-
dation Ireland grants10/CE/I1855 and 13/RC/2094 to
Lero - the Irish Software Research Centre(www.lero.
ie).
REFERENCES
Aguilar-Saven, R. S. (2004). Business process modelling:
Review and framework. International Journal of pro-
duction economics, 90(2):129–149.
Armenise, P., Bandinelli, S., Ghezzi, C., and Morzenti, A.
(1993). A survey and assessment of software pro-
cess representation formalisms. International Journal
of Software Engineering and Knowledge Engineering,
3(3):401–426.
Atkinson, D. C., Weeks, D. C., and Noll, J. (2007). Tool
support for iterative software process modeling. In-
formation & Software Technology, 49(5):493–514.
Brookes, S. D. (1996). Full abstraction for a shared-variable
parallel language. Inf. Comput., 127(2):145–163.
Butterfield, A. (2017). UTCP: compositional semantics for
shared-variable concurrency. In da Costa Cavalheiro,
S. A. and Fiadeiro, J. L., editors, Formal Methods:
Foundations and Applications - 20th Brazilian Sym-
posium, SBMF 2017, Recife, Brazil, November 29 -
December 1, 2017, Proceedings, volume 10623 of
Lecture Notes in Computer Science, pages 253–270.
Springer.
Butterfield, A., Mjeda, A., and Noll, J. (2016). UTP Seman-
tics for Shared-State, Concurrent, Context-Sensitive
Process Models. In Bonsangue, M. and Deng, Y., ed-
itors, TASE2016. under review.
Business Process Modeling Flexibility: A Formal Interpretation
471