<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">mArtifact: an Artifact-driven Process Monitoring Platform</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Luciano</forename><surname>Baresi</surname></persName>
							<email>luciano.baresi@polimi.it</email>
							<affiliation key="aff0">
								<orgName type="department" key="dep1">Dipartimento di Elettronica</orgName>
								<orgName type="department" key="dep2">Informazione e Bioingegneria</orgName>
								<orgName type="institution">Politecnico di Milano</orgName>
								<address>
									<country key="IT">Italy</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Claudio</forename><forename type="middle">Di</forename><surname>Ciccio</surname></persName>
							<email>claudio.di.ciccio@wu.ac.at</email>
							<affiliation key="aff1">
								<orgName type="department">Institute for Information Business</orgName>
								<orgName type="institution">Vienna University of Economics and Business</orgName>
								<address>
									<country key="AT">Austria</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Jan</forename><surname>Mendling</surname></persName>
							<email>jan.mendling@wu.ac.at</email>
							<affiliation key="aff1">
								<orgName type="department">Institute for Information Business</orgName>
								<orgName type="institution">Vienna University of Economics and Business</orgName>
								<address>
									<country key="AT">Austria</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Giovanni</forename><surname>Meroni</surname></persName>
							<email>giovanni.meroni@polimi.it</email>
							<affiliation key="aff0">
								<orgName type="department" key="dep1">Dipartimento di Elettronica</orgName>
								<orgName type="department" key="dep2">Informazione e Bioingegneria</orgName>
								<orgName type="institution">Politecnico di Milano</orgName>
								<address>
									<country key="IT">Italy</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Pierluigi</forename><surname>Plebani</surname></persName>
							<email>pierluigi.plebani@polimi.it</email>
							<affiliation key="aff0">
								<orgName type="department" key="dep1">Dipartimento di Elettronica</orgName>
								<orgName type="department" key="dep2">Informazione e Bioingegneria</orgName>
								<orgName type="institution">Politecnico di Milano</orgName>
								<address>
									<country key="IT">Italy</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">mArtifact: an Artifact-driven Process Monitoring Platform</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">8E04AB27129B83FC5D2AECD0BA609FC1</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T18:41+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<textClass>
				<keywords>
					<term>Process monitoring</term>
					<term>artifact-centric processes</term>
					<term>GSM</term>
				</keywords>
			</textClass>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>Traditionally, human intervention is required to monitor a business process. Operators notify when manual activities are executed, and manually restart the monitoring whenever the process is not executed as expected. This paper presents mArtifact, an artifact-driven process monitoring platform. mArtifact uses the E-GSM artifact-centric language to represent the process. This way, when a violation occurs, it can flag the affected activities without halting the monitoring. By predicating on the conditions of the physical artifacts participating in a process, mArtifact autonomously detects when activities are executed and constraints are violated. The audience is expected to be familiar with business process monitoring and artifact-centric modeling languages.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">Contribution to the BPM field</head><p>Traditionally, organizations rely on a Business Process Management System (BPMS) to monitor their process. The tight integration between the process execution engine and the monitoring component allows a BPMS to both automate the execution of business activities composing the processes, and keep track of when activities are executed at the same time <ref type="bibr" target="#b4">[5]</ref>. This approach works particularly well for intra-organizational processes consisting of completely or semi-automated activities. In this case, the BPMS directly controls when activities are executed. However, when inter-organizational or humancentric processes have to be monitored, a BPMS may experience difficulties.</p><p>In inter-organizational processes, organizations directly control only a portion of the process. Consequently, their BPMS cannot enforce the whole process to be executed as defined in a model. Additionally, organizations have visibility of all the activities composing the process only if either a centralized BPMS is deployed, or their BPMSs are federated. Another shortcoming that comes when monitoring inter-organizational process with BPMSs is the way they deal with violations in the execution order of activities. When a violation occurs, the BPMS typically halts until an operator marks the violation as resolved. This behavior is fine for intra-organizational processes, since the BPMS controls both the execution and the monitoring of the process. In inter-organizational processes, on the other hand, this behavior may cause activities executed after the violation from other parties not to be tracked. This issue can be mitigated by forcing the BPMS to ignore violations, and resorting to post-mortem techniques, such as process mining, to detect them. However, mining techniques are meant to be applied after the process ends, thus not permitting organizations to promptly react to violations.</p><p>Human-centric processes are characterized by activities completely performed by human operators (e.g., loading a shipping container onto a truck). In these activities, the only interaction with a BPMS occurs to notify when such activities start or end. Consequently, operators can easily forget or postpone such notifications, thus negatively affecting the reliability of the monitoring.</p><p>These issues are addressed in mArtifact, a monitoring platform capable to continuously and autonomously monitor business processes. By predicating on the conditions of the physical artifacts interacting with the process, mArtifact can autonomously detect when activities are started and concluded. Also, mArtifact relies on the Extended-GSM (E-GSM) artifact-centric language <ref type="bibr" target="#b2">[3]</ref>, extension of Guard-Stage-Milestone (GSM) <ref type="bibr" target="#b5">[6]</ref>, to represent the dependencies among activities without enforcing them. This way, when activities are not executed as specified in the model, mArtifact can detect such a violation and continue monitoring the process without requiring any intervention.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">Usage of mArtifact on a Use Case</head><p>To demonstrate the capabilities of mArtifact, we will rely on a simplified example taken from the logistics domain, depicted in Fig. <ref type="figure" target="#fig_0">1</ref>. A manufacturer located in London relies on a shipping company to send a container to a customer in Amsterdam. First, the container of the manufacturer is loaded onto a truck of the shipping company (activity Load container). Then, the truck travels in the UK, takes the Channel tunnel, and travels in the European continent (activity Travel in EU) until it reaches the premises of the customer. Finally, the container is unloaded. Optionally, the truck can take a break while driving in the UK or in the European continent (Take break in UK, Take break in EU). The process will be henceforth indicated as Manufacturer-to-Customer (M-to-C) shipping process.</p><p>To monitor this process, mArtifact relies on two software tools: (i) the configuration tool, which automatically generates all the information required to monitor the process, and (ii) the artifact-driven process monitor.</p><p>Configuration Tool. To monitor a process, mArtifact relies on the E-GSM artifactcentric language <ref type="bibr" target="#b2">[3]</ref>. Information on the execution order of the activities composing the process is considered descriptive, and not prescriptive as in activity-centric languages. This allows mArtifact not to stop monitoring the process when activities are executed without respecting the defined execution order. Instead, such activities are either flagged as out of order, meaning they were executed when they should have not, or as skipped, meaning they were not executed while they should have. The configuration tool takes care of translating an input Business Process Model and Notation (BPMN) 2.0 diagram representing the process model in the E-GSM language. Data Objects are required to annotate the diagram to denote the involved artifacts as depicted in Fig.  <ref type="figure">------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</ref>  <ref type="figure">--------------------</ref> The link to start-and end-events in the diagram denotes when the process begins and stops interacting with a specific artifact. For instance, the Truck artifact is meant to be monitored along the execution of the whole M-to-C shipping process. Given the BPMN process model, the configuration tool automatically converts it to E-GSM by using ATLAS Transformation Language (ATL) <ref type="bibr" target="#b6">[7]</ref> rules.</p><p>Additionally, mArtifact requires to know which physical entities will participate in each specific process execution, e.g., the truck having plate number "AB123XY" representing the real-world instance of the Truck artifact. Since such an information is often known only after the process starts, mArtifact relies on binding criteria which allow for a dynamic association of artifact instances to running processes at run-time, i.e., during the monitoring itself. The configuration tool of mArtifact takes care of the automatic generation of those run-time bindings. Details on the transformations performed are described in <ref type="bibr" target="#b3">[4,</ref><ref type="bibr" target="#b7">8]</ref>.</p><p>Process Monitor. Once the E-GSM model of the process and the binding criteria have been defined, the artifact-driven process monitor comes into play. Fig. <ref type="figure" target="#fig_2">2</ref> shows the architecture of the process monitor. To make the monitoring completely automated, we assume that the physical artifacts can autonomously infer their conditions and submit such an information to the monitor. This is a feasible assumption in the context of a Fig. <ref type="figure">3</ref>: Screenshot of the process monitor showing an incorrect execution.</p><p>Wireless Sensor Network (WSN) <ref type="bibr" target="#b0">[1]</ref> or the Internet of Things (IoT) <ref type="bibr" target="#b1">[2]</ref>, where environmental data can be collected by the artifacts.</p><p>To allow the artifacts to communicate with the monitor, a Message Queue Telemetry Transport (MQTT) Broker is used. MQTT is a queue-based publish/subscribe protocol, which is particularly suited for applications where computing power and bandwidth are constrained. <ref type="foot" target="#foot_0">3</ref> The E-GSM Engine is the component responsible for monitoring the execution of the process. This component takes as input the E-GSM model, and (i) keeps track of which activities are ongoing, (ii) detects whether they follow the execution flow defined in the model and, if not, (iii) marks them as not compliant. To support late binding and unbinding among artifacts and running processes, the Events Router component is introduced. By receiving as input the binding criteria, the Events Router forwards to the E-GSM Engine only the events produced by the artifacts that effectively take part in that process execution. Finally, a REST API offers a service-oriented component for the organizations to interact with the process monitor. It is the software interface through which (i) the E-GSM Engine is provided with the E-GSM model, (ii) the Events Router is instructed with the binding criteria, and (iii) the organizations control that the processes are correctly executed. Fig. <ref type="figure">3</ref> shows a screenshot of the process monitor graphical interface, which displays an incorrect execution of the M-to-C shipping process. In this case, the truck took a ferry from Dover to Calais instead of taking the Channel tunnel. Therefore, the monitor marks Take channel tunnel as skipped (dark gray). On the other hand, Load container was executed according to the execution flow, and as such it is marked as on time (green). Since the truck has not yet taken a break in the European continent, Take break in EU is not executed yet (light gray). Finally, as the truck is still traveling in the European continent, Travel in EU is still being executed (yellow). Note that, even though a violation occurred, the monitoring is still running.</p><p>The accuracy of the mArtifact platform was validated by using real-world processes and data from a logistics company. 77 process executions were monitored based on the position and speed of the trucks participating to that process. mArtifact was capable of correctly determining the execution of such processes for 93.13% of all cases. For what the system requirements are concerned, mArtifact is capable of running on very modest hardware. We were able to successfully run mArtifact on different Single-board computers (SBCs), such as the Intel Galileo 4 and Raspberry Pi 5 boards, thus paving the path towards a distributed monitoring performed directly by the physical artifacts taking part in the process.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4">Additional resources</head><p>The source code of the mArtifact platform is available at https://bitbucket. org/account/user/polimiisgroup/projects/MARTiFACT. A screencast showing a usage demo can be watched at https://purl.org/polimi/martifact/ screencast.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Fig. 1 :</head><label>1</label><figDesc>Fig. 1: BPMN diagram of the M-to-C shipping process annotated with artifacts.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_2"><head>Fig. 2 :</head><label>2</label><figDesc>Fig. 2: Architecture of the process monitor.</figDesc></figure>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="3" xml:id="foot_0">See http://mqtt.org/</note>
		</body>
		<back>

			<div type="acknowledgement">
<div xmlns="http://www.tei-c.org/ns/1.0"><p>Acknowledgments. This work has been partially funded by the Italian Project ITS Italy 2020 under the Technological National Clusters program, and the EU H2020 program under MSCA grant agreement 645751 (RISE BPM). The authors thank Marco Spelta for his help with the implementation of the E-GSM engine.</p></div>
			</div>

			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<analytic>
		<title level="a" type="main">Wireless sensor networks: a survey</title>
		<author>
			<persName><forename type="first">I</forename><surname>Akyildiz</surname></persName>
		</author>
		<author>
			<persName><forename type="first">W</forename><surname>Su</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Y</forename><surname>Sankarasubramaniam</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Cayirci</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Computer Networks</title>
		<imprint>
			<biblScope unit="volume">38</biblScope>
			<biblScope unit="issue">4</biblScope>
			<biblScope unit="page" from="393" to="422" />
			<date type="published" when="2002">2002</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">The internet of things: A survey</title>
		<author>
			<persName><forename type="first">L</forename><surname>Atzori</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Iera</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Morabito</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Computer Networks</title>
		<imprint>
			<biblScope unit="volume">54</biblScope>
			<biblScope unit="issue">15</biblScope>
			<biblScope unit="page" from="2787" to="2805" />
			<date type="published" when="2010">2010</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">A GSM-based Approach for Monitoring Cross-Organization Business Processes using Smart Objects</title>
		<author>
			<persName><forename type="first">L</forename><surname>Baresi</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Meroni</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Plebani</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">BPM 2015 Workshops</title>
				<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2016">2016</date>
			<biblScope unit="page" from="389" to="400" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">Using the guard-stage-milestone notation for monitoring bpmn-based processes</title>
		<author>
			<persName><forename type="first">L</forename><surname>Baresi</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Meroni</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Plebani</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">BPMDS EMMSAD</title>
				<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2016">2016. 2016</date>
			<biblScope unit="page" from="18" to="33" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<monogr>
		<title level="m" type="main">Fundamentals of Business Process Management</title>
		<author>
			<persName><forename type="first">M</forename><surname>Dumas</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>La Rosa</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Mendling</surname></persName>
		</author>
		<author>
			<persName><forename type="first">H</forename><forename type="middle">A</forename><surname>Reijers</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2013">2013</date>
			<publisher>Springer</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">Introducing the Guard-Stage-Milestone Approach for Specifying Business Entity Lifecycles</title>
		<author>
			<persName><forename type="first">R</forename><surname>Hull</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Damaggio</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Fournier</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Gupta</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Fenno</forename><forename type="middle">(</forename><surname>Heath</surname></persName>
		</author>
		<author>
			<persName><forename type="first">)</forename><surname>Terry</surname></persName>
		</author>
		<author>
			<persName><forename type="first">I</forename><surname>Hobson</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Linehan</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Maradugu</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Nigam</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Sukaviriya</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Vaculin</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">WS-FM</title>
				<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2010">2010. 2011</date>
			<biblScope unit="page" from="1" to="24" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">Atl: A qvt-like transformation language</title>
		<author>
			<persName><forename type="first">F</forename><surname>Jouault</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Allilaire</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Bézivin</surname></persName>
		</author>
		<author>
			<persName><forename type="first">I</forename><surname>Kurtev</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Valduriez</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">OOPSLA &apos;06 Companion</title>
				<imprint>
			<publisher>ACM</publisher>
			<date type="published" when="2006">2006</date>
			<biblScope unit="page" from="719" to="720" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<analytic>
		<title level="a" type="main">Artifact-driven process monitoring: Dynamically binding real-world objects to running processes</title>
		<author>
			<persName><forename type="first">G</forename><surname>Meroni</surname></persName>
		</author>
		<author>
			<persName><forename type="first">C</forename><surname>Di Ciccio</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Mendling</surname></persName>
		</author>
		<ptr target="CEUR-WS.org" />
	</analytic>
	<monogr>
		<title level="m">CAiSE &apos;17 Forum</title>
				<imprint>
			<date type="published" when="2017">2017</date>
			<biblScope unit="page" from="105" to="112" />
		</imprint>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
