Keywords

1 Introduction

The interest and relevance of the Internet of Things (IoT) has increased continuously in recent years [4, 8]. Sensors allow collecting data about the physical world and actuators are used to control it [1]. In turn, BPM enables the modeling, execution, monitoring, and analysis of business processes. Integrating IoT capabilities with BPM provides a more comprehensive view on business processes enhanced with data from the physical world [10]. In general, the collection of IoT data proceeds as follows: (i) sensing low-level data from the physical world, (ii) aggregating this low-level data into high-level information, and (iii) obtaining information that enables decision making in business processes [9, 16]. In this work, we focus on events in business processes that are triggered based on the processing and abstraction of low-level IoT data.

Using standard elements for modeling IoT-driven behavior in processes has its limitations, as process model complexity increases with the number of IoT devices and their relations [7]. Decision tables provide a partial remedy here, but they cannot be directly associated with events in processes [7]. Moreover, IoT devices are treated as any other data source without being highlighted as special entities. Many approaches use BPMN 2.0 with extensions for IoT-related sensing and actuation [17]. However, the explicit integration of logic related to deriving IoT-driven process events from low-level data in processes has only been considered to a limited degree. Alternative approaches use Complex Event Processing (CEP) techniques to aggregate IoT data into process-level events based on external formalisms and tooling [2, 15, 16, 19]. In this work, we present an approach for an integrated modeling of IoT-driven events in processes based on an extension of BPMN 2.0. This extension enables associating DMN concepts with events and allows for a seamless integration with business processes.

This paper is organized as follows: Sect. 2 introduces the problem statement and a motivating example. Section 3 discusses related work. Section 4 outlines the research method and requirements. Section 5 presents our proposal for modeling IoT-driven events in processes. Section 6 discusses our findings. Section 7 concludes the paper and presents future work.

2 Problem Statement and Motivating Example

The IoT introduces a plethora of new data sources that can be leveraged for real-time decision making in business processes [8]. Sensors and actuators produce streams of data at various levels of granularity. Using these new data sources inside a business process requires means for transforming IoT data into process-level events. These transformations should be made transparent to the process modeler. BPMN 2.0 provides various elements that may be used here, e.g., events or gateways [7]. These elements can be complemented by DMN models, which support the specification of decision tables that can be used for transformation of low-level input into high-level output [7]. To assess the suitability of BPMN 2.0 for modeling IoT-driven behavior, we have modeled a process from smart manufacturing that relies heavily on sensor events to derive process-level events. Figure 1 shows a combination of gateways, conditional events and a black box high-level event derived via CEP [15] to define IoT-driven behavior in a process.

Fig. 1.
figure 1

IoT-Driven behavior in a smart factory modeled using BPMN 2.0

Example: Smart Manufacturing. The state of a Smart Factory is derived from a combination of sensors (temperature, light barriers, limit switches, NFC readers) using gateways and conditional events. If the factory has entered state ready (rightmost branch), task Start production of workpiece is executed. Otherwise, either Start air condition or Notify staff in case of an error are executed. After production, the quality of the workpiece is checked using an external CEP system and a conditional event (Workpiece quality == ‘ok’) [15].

The example shows that using BPMN 2.0 for modeling IoT-driven behavior comes with several disadvantages. The complexity of conditions and the high number of involved sensors in typical IoT scenarios [8] make the process model hard to understand and error-prone. Adding new sensors and conditions increases model complexity [10]. DMN could be used as a mitigation [7]. However decision tables can only be associated with tasks and not with events. The CEP-based approaches (e.g., [2, 15]) are not integrated with the BPM systems. Moreover, both the BPMN+DMN and CEP approaches do not distinguish between IoT devices and other data sources [10]. This, however, is important for monitoring and error handling as the IoT devices are the links with the physical world [8].

3 Related Work

Several approaches and (extensions of) notations were proposed for representing IoT devices and IoT-related behavior in process models using specific IoT-related tasks and pools for physical entities [4, 5, 11, 12, 18]. These works propose to use dedicated process elements to represent IoT sensors and their data. As shown in the example (cf. Sect. 2), this does not scale well and becomes confusing with increasing numbers of sensors and complexity of decisions and conditions related to events. In contrast to considering individual IoT devices, approaches exist that apply CEP for sensor event aggregation and abstraction in processes [2, 15, 16]). While CEP is very powerful here, it usually relies on a dedicated language and external tooling to specify event processing applications. These are then only represented as black boxes in business processes. Baumgraß et al. present in [2] an approach in which they annotate process models based on a BPMN 2.0 extension to relate to events from IoT devices and convert them into higher level events. However, neither the IoT involvement nor the composition of these events are apparent in the process model. In [6], a flow-based approach called BEMN for representing CEP-based events integrated with BPMN is presented. This work does not support IoT specifics such as varying levels of granularity of sensor data. In [7] the authors compare the modeling of IoT processes in BPMN 2.0 to using a combination of BPMN 2.0 and DMN. They found that BPMN+DMN offers advantages for context aggregation and decision logic, in particular due to the reusability and modular aggregation of IoT data. However, the highlighting of IoT devices and the possibility of linking IoT-based decisions directly with events in processes as part of an integrated modeling approach are not supported.

In [17] the authors introduce a framework for bridging IoT and BPM by integrating IoT devices into context ontologies with the goal of improving business process decision making. They use Business Rule Tasks in combination with Data Objects for representing the IoT devices. However, these tasks are not suitable for implementing event-driven behavior within processes. In a follow-up, the authors present an approach for modeling of 1) business processes, 2) IoT devices and 3) sensor processing using different languages [19]. They argue that this separation of concerns can be beneficial for the different roles of modelers. However, they also conclude that having three different types of languages introduces high workload for modelers due to the required language familiarity.

In summary, none of the discussed approaches provides a comprehensive approach to allow an integrated modeling of complex transformations associated with events derived from IoT in a business process. Existing work either relies on external tools and languages to specify the transformations; or it only supports rather simple decision logic inside business processes considering IoT devices as any other data source. The goal of our work is to address these weaknesses and propose an integrated modeling of IoT-driven events in business processes.

4 Research Method and Requirements

The integration of IoT-driven events into business processes is a rather complex task that is related to the entire BPM lifecycle. The goal of this paper is to focus on the modeling of IoT-driven process events based on following research question: How can IoT-driven events be represented in a business process model?

Our investigation of this question follows the DSRM [13]. The problem and requirements (R1R4) definition are based on literature (cf. Sect. 3, [8, 10]) and our hands-on experience with implementing event-driven behavior in IoT-aware processes [9, 14, 15]. The developed artifacts comprise an extension to a modeling language and a visual notation (cf. Sect. 5). These are discussed (cf. Sect. 6) and demonstrated in a tool based on real-world examples.

  • R1   It shall be possible to specify event-driven behavior based on IoT data at various points in a business process. Events triggered from an external source are common in processes. IoT shall also be considered here [8]. The potentially high number of IoT devices contributing to the event-driven behavior may result in complex event specifications. It shall be possible to reuse these specifications.

  • R2   It shall be possible to consider IoT data from different sources and of different abstraction levels. In the smart factory, data ranges from states of motors or switches to production states [15]. It shall be possible to raise abstraction levels and to combine with data from other sources to specify event-driven behavior.

  • R3   The IoT devices involved in the event-driven behavior shall be treated as special data sources since they represent the interactions with the physical world. This is for example important for monitoring and error localization [8].

  • R4   The event-driven aspects related to IoT in a process should be specified as part of the process. They are very likely specified by the same process engineer who is familiar with the process modeling language. Instead of relying on external formalisms [15, 19], IoT-driven events shall be modeled together with the process.

5 Modeling IoT-Driven Events in Processes

We use BPMN 2.0 for modeling IoT-driven process events since it is a widely adopted industry standard that supports a rich event concept, which we can base our extensions on. As BPMN 2.0 has several drawbacks for modeling complex transformations related to IoT data (cf. Sect. 2), we extend the language with new elements to model IoT-driven events addressing R1R3. We first describe the extensions of the meta-model (Abstract Syntax) and then provide a specific example model using our proposal for the Concrete Syntax addressing R4 [3].

5.1 Abstract Syntax: IoT-Driven Events in BPMN 2.0

Figure 2 shows our proposal of an extension of the Event class of the BPMN 2.0 meta-model. Since the low-level events from IoT are intended to drive the execution of processes based on specific conditions, we have extended the ConditionalEvent with a new subclass called IoTConditionalEvent (R1), which features similar new subclasses as the original Conditional Event class. Each IoT Conditional Event is associated with one IoTDecisionRootContainer that may contain subcontainers (R2). These containers include transformations in the form of Decisions referring to IoTSensors (R3) and other data objects.

Fig. 2.
figure 2

BPMN 2.0 extension with IoT-related classes for events in UML

IoT Decision Containers contain the transformation logic represented as IoT-driven decisions [7] to derive higher level events from low-level IoT data. Thereby, the container hierarchy represents the increasing abstraction levels from lower to higher level events (R2). The root container triggers the IoT Conditional Event it is associated with upon the evaluation of the root container’s output in the event’s condition (cf. Fig. 3). Since DMN already provides means for modeling decisions in processes in the context of IoT [7], we base the meta-model within an IoT Decision Container on DMN. This allows us to define multiple IoT driven decisions inside decision tables for deriving higher level events as outputs from combinations of low-level IoT events as input. The output can serve as inputs in other decision containers or in the process (R1). For defining conditions we currently support standard comparison operators for single sensor values and logical operators (AND/OR) to combine conditions in one decision rule (R2).

5.2 Concrete Syntax: Visual Representation of IoT-Driven Events

Figure 3 shows the visual representation of a business process related to the smart manufacturing example. The process model created with our toolFootnote 1 contains two IoT Conditional Intermediate Catch Events to check the smart factory status and decide the next steps based on the specified event conditions (Factory Status == ’ready’ or Factory Status == ’error’). These IoT-driven events represent decisions that depend on multiple IoT sensors (R3). They are connected with one IoT Decision Root Container that has Factory Status as specified output. We decided to adopt a flow-based approach [6] to model the contents of a decision container instead of using classical decision tables as we aim at the integration of modeling decisions and processes (R4). However, a translation of a decision container to a DMN table is possible. The example also shows the nesting of containers (R2) and the reuse of subcontainer outputs (R1). Subcontainers can be expanded to show details (Heating Status) or collapsed (Robot Status).

Fig. 3.
figure 3

Example of two IoT-driven events with an attached decision container.

6 Discussion

The research question guiding this work is referring to the representation of IoT-driven events in business process (cf. Sect. 4). From this question, we derived a first set of requirements R1R4 that a modeling approach for IoT-driven events integrated with business processes should address. With the proposed extension of the Conditonal Event of BPMN 2.0 we are able to specify event-driven behavior at various points in a business process (R1). The event conditions are evaluated based on the outcome of the novel concept of IoT Decision Containers associated with the event. By nesting of decision containers, the process modeler is able to represent transformations of available IoT data to higher level container outputs on different abstraction levels and to reuse these outputs in other containers (R2). The expressiveness of rules and transformations inside a container is based on DMN [7]. The support for CEP-based queries in the meta-model can be achieved based on [2]. The visual modeling can be partially adapted from [6]. With R3 we identified the need to demarcate IoT-based data sources from other process inputs for monitoring and error handling [8]. The IoT sensors are represented as first class citizens in both the proposed abstract syntax and concrete syntax. This should make their involvement in transformations and decisions related to process events clear to the end-users. We will investigate this aspect in a follow-up user study where we will also compare different approaches regarding the modeling of IoT-driven events in processes (R4) using our flow-based approach, BPMN+DMN [7], and query languages [2, 19]. With our flow-based approach, we expect that process modelers that are already familiar with the graphical BPMN syntax should have a relatively low taskload when modeling IoT-driven events. Our modeling tool supports the collapsing/expansion of IoT decision containers, which should facilitate the modeling and understanding of IoT-driven events even with a high number of IoT devices and decisions involved.

7 Summary and Outlook

We presented an approach for modeling IoT-driven events in business processes, which allows for representing decision making based on data from the physical world. The potentially high number of IoT devices and complexity of decisions lead to either process models becoming hard to understand and error-prone, or to the externalization of decisions as black boxes in the process models. Related research suggests using DMN to represent IoT-based decision making in processes. However, this is currently not supported for events and not well integrated with process modeling. We propose an extension of BPMN 2.0 with a new Conditional Event subclass that allows for specifying hierarchical IoT Decision Containers. These contain IoT-driven decisions based on data from IoT sensors that transform data into higher level output, which can be flexibly combined and reused in other containers. The proposal for visually modeling these containers is based on a flow-oriented approach that uses similar concepts as the business process to facilitate a more seamless and improved modeling experience. We used an example process from smart manufacturing to demonstrate the applicability of the approach for modeling IoT-driven events in business processes.

In future work, we will conduct case studies in various IoT domains to validate the broad applicability of the modeling approach. Furthermore, we will conduct a user study with domain experts to evaluate the usability of the modeling concepts and tool. We will further investigate the integration of CEP to enable advanced real-time streaming data analysis for IoT-driven events and we will also consider other phases of the BPM lifecycle (e.g., implementation and monitoring).