<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>An architectural approach for digital factories (Extended abstract)?</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Nicola Bicocchi</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Giacomo Cabri</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Francesco Leotta</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Federica Mandreoli</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Massimo Mecella</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Francesco Sapio</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Sapienza Universita di Roma</institution>
          ,
          <country country="IT">Italy</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Universita degli Studi di Modena e Reggio Emilia</institution>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Digital factories comprise a multi-layered integration of various activities along the factories and product life-cycles. A central aspect of a digital factory is that of enabling the product lifecycle stakeholders to collaborate through the use of software solutions. The digital factory expands outside the company boundaries and allows to collaborate on business processes over the whole supply chain. This extended abstract, based on a recently published paper, discusses an interoperability architecture for digital factories. It analyses the key requirements for enabling a scalable factory architecture characterized by access to services, aggregation of data, and orchestration of production processes.</p>
      </abstract>
      <kwd-group>
        <kwd>digital factories</kwd>
        <kwd>data sharing and interoperability</kwd>
        <kwd>service oriented architectures</kwd>
        <kwd>dynamic supply chains</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Production processes are fragmented across di erent companies and organised
in global multi-tier supply chains. This is the result of the rst wave of
globalisation, which was partly enabled by the di usion of Internet-based Information
and Communication Technologies (ICTs)in the early 2000s. A recent wave in
technology, has led to the fourth industrial revolution - or Industry 4.0, whose
goal is to increase opportunities for rms, including small and medium
enterprises (SMEs) by being able to access global customers. However, this requires
the ability to adapt to di erent requirements and conditions, volatile demand
patterns, and fast changing technologies. Therefore, supply chains need to
increase their agility by adapting to evolving and uncertain business contexts.</p>
      <p>
        Digital factory is a key paradigm to this end because it uses digital
technologies to promote the integration of product design processes, manufacturing
processes, and general collaborative business processes across factories and
enterprises [
        <xref ref-type="bibr" rid="ref2 ref6">2, 6</xref>
        ]. An important aspect of this integration is to ensure interoperability
between machines, products, processes, and services, as well as any descriptions
of those. As a result, a digital factory consists of a multi-layered integration of the
information related to various activities along the factory and related resources.
      </p>
      <p>
        The main contribution of this paper is to provide methodological and
technological support to agile supply chains in the Industry 4.0 context. It sets forth
an architectural framework that the leverages Reference Architectural Model
Industrie - RAMI 4.0 [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] and addresses the methodological issue of making RAMI
4.0 capable of enabling agility in supply chains. To address this aim, we propose
an architectural framework that enables interoperability via a three-layered
architecture where business processes and goal descriptions trigger the discovery of
the needed services and data, and their composition in a dynamic, autonomous
and adaptive fashion. Lastly, the rest of the paper is organised as follows: Section
2 presents the RAMI 4.0-based architectural framework, and Section 3 concludes
the paper and discusses future work.
2
      </p>
    </sec>
    <sec id="sec-2">
      <title>Enabling interoperability</title>
      <p>The approach undertaken in this work is based on RAMI 4.0. RAMI is a
layered reference architectural framework in the manufacturing industry domain
developed in Germany by leveraging EU initiatives and guidelines 3.</p>
      <p>RAMI 4.0 consists of six di erent layers. As shown in Fig. 1, we propose a
correspondence between these layers and established technologies, i.e., polystores,
dynamic services and multi-party agile processes.</p>
      <p>According to RAMI 4.0, data is the bridge towards digitalization and is
described in the integration, communication and information layers. In global
multi-tier supply chains, data characteristics are: largeness, distribution, and
3 See https://ec.europa.eu/futurium/en/system/files/ged/
a2-schweichhart-reference_architectural_model_industrie_4.0_rami_4.
0.pdf
heterogeneity. For instance, machines equipped with IoT sensors continuously
produce data streams, Online transaction processing - OLTP data are available
in DBMSs, Online analytical processing - OLAP data are available in data
warehouses, digital manuals are stored in repositories, and so on. To deal with these
information, data sources are organised as a dataspace where they can
communicate through mappings. The dataspace adhere to the polystore model supporting
dynamic con gurations (i.e., data sources going in and out the system).</p>
      <p>At the functional level, di erent kinds of services are provided to get
information and to perform actions on the manufacturing parts of system (e.g.,
producing and assembling machines) as well as to enable interoperability with di erent
actors of the supply chain (e.g., order management, warehouse management).
Open APIs are exposed by services to control, discover, and compose them in a
dynamic way. Rich semantic descriptions of the services should be available to
support both the discovery of the services and their execution/invocation. This
service layer allows to achieve higher-level goals de ned at the business level.</p>
      <p>
        At the business level, business process speci cations need to capture not only
orchestrated processes but also choreographed processes across di erent
organizations, as a supply chain de nition requires. By de ning several goals, with
di erent degrees of completeness, the business process model is able to support
a resilient and responsive environment, as the involved parties can tune their
e orts to reach one of the goals, that is not necessarily the best one. Decisions
on the goal to be achieved are driven by the available data [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
      </p>
      <p>In order to describe our approach we refer to the following scenario.</p>
      <p>MyMu n is a ( ctitious) company operating within the EU producing
mu ns and is expanding its business to allow customers to buy mu ns online
(in boxes of 4). Clients can customise their mu ns by choosing among di erent
combinations of ingredients (e.g., chocolate chips), toppings (icing sugar), and
additions to the dough (e.g., honey, yoghurt). The client can also customise the
colors of the mu n liners (e.g., pink, yellow) as well as the colors of the box.
The mu ns are then delivered to a speci ed location.4</p>
      <p>The mu n factory collects orders and organises batches of mu n doughs for
production. For example, if a client orders 3 boxes of carrot mu ns with yoghurt,
icing sugar on top, and pink baking paper, whereas another client orders 2 boxes
of carrot mu ns with yoghurt, nothing on top, and yellow baking paper, the
same dough can be used for both orders. Once an order is received, the mu n
liners are set-up as in parallel to the dough preparation. In addition, a QR-code
is printed on the baking paper to serve as a unique identi er for a speci c order.
After the dough has been prepared, the mu ns are placed in mu n liners and
sent to the oven (connected to a QR code reader) for cooking. Mu ns are cooked
in batches of 1000 mu ns. Once the mu ns are cooked, toppings are placed,
the cart is operated to route the di erent mu ns to the right boxes where they
are then ready for delivery. Considering the steps involved here, agility is needed
during each stage of process, (e.g., the baking step may overcook some mu ns,
which therefore are not ready for delivery and should be prepared again).
4 MyMu n is a fantasy company, but there are real successful examples of mass
customization applied to food likewise Mymuesli, a German company - https://
en.wikipedia.org/wiki/Mymuesli.</p>
      <sec id="sec-2-1">
        <title>Process space layer - goal-oriented process speci cation</title>
        <p>The top layer of the proposed architecture deals with the goals and the
processes able to achieve such goals. Figure 2 shows the process behind MyMu n
represented using Business Process Model and Notation (BPMN) 5.</p>
        <p>In the MyMu n example, some goals of the process may be:
[G1] for each order, evade it within 36 hours;
[G2] for each order, the nal delivery to the customer should be within 72 hours.
5 See http://www.bpmn.org/</p>
        <p>The MyMu n company adopts a process in which sub-goals might have been
de ned for speci c parts (i.e., goals can in turn be decomposed in sub-goals),
e.g., to achieve G1, it should be [G1.1] mu ns should not be overcooked.</p>
        <p>
          Notably, MyMu n would like to de ne, on the basis of such goals, speci c
KPIs (Key Performance Indicators) that are de ned over many aspects (e.g.,
interactions with external companies being part of the process, maintain a total
of less than 24 hours from pick-up to delivery of orders, and to keep a KPI of
95% respected over the week). We can imagine that in a given day, some mu ns
get overcooked due to an error in the oven. This means that the goal [G1.1] is
not achieved. Through automated planning techniques, like the one adopted in
SmartPM [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ], the process can be modi ed. In particular, as shown in Figure 3,
after the original activities Prepare mu n(s) and Cook mu n(s), new activities
are introduced, to Select alternative cooking service, as a local bakery nearby
MyMu n that o ers the availability of the oven; then, analogously to the original
process, Prepare dough and Prepare cooking paper are performed, the mu ns are
moved and nally are received freshly cooked (see Move mu n(s) and Receive
freshly cooked mu n(s) tasks). Finally, the process continues as the original one.
Notably, this is only one of the possible adaptations.
2.2
        </p>
      </sec>
      <sec id="sec-2-2">
        <title>Service space layer - service discovery and composition</title>
        <p>Starting from the goals and processes de ned in the process layer, services must
be dynamically composed to achieve goal(s). In our example, we have di
erent machines that can expose operations such as setting/increasing/decreasing
the oven temperature, starting/stopping the dough mixer and providing related
data by means of OpenAPIs. Rich semantic descriptions of the services should
be available to support both discovery and service execution. The descriptions
should include keywords identifying the context of the service (e.g., \food",
\cooking"), the equipment (e.g., \oven", \mixer"), the operation (e.g.,
\turnon", \speedup"), and the parameters (e.g., \temperature", \speed").</p>
        <p>In regards to the discovery phase, semantic descriptions are exploited to
search for speci c services without knowing their exact names and their syntax
a priori. Semantic techniques can be exploited to nd synonyms and keywords
related to the words searched for in this phase. Searches can be performed either
automatically by the process layer or by human operators which may be involved
when needed (such as the adaptation techniques realised in the process layer fail,
and a human intervention is needed to make the process progress).</p>
        <p>
          Semantic descriptions can be used in the composition phase as well. Being the
composition dynamic, the platform must not only nd, but also use, the needed
service or eventually provide support to human operators. To this purpose, the
description of the service parameters is needed to exploit the functionalities of
the data layer to adapt the client service invocation to the server syntax. Some
proposals and examples of semantic service descriptions are proposed in [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ].
        </p>
        <p>As an example, consider a scenario where the oven does not reach the required
temperature due to di erent reasons (e.g., a cold winter day, bad isolation,
broken door). The oven service provides the slowdown():delay operation, which
outputs the delay in percentage (see Fig. 4a); for instance, if the oven was
expected to reach the correct temperature in 30 minutes, but it actually needs 45
(a) Adapting to oven performance
(b) Adapting to overcooked mu ns
minutes, a delay of 33% is returned. The operation is then composed with all
the services available for reducing the speed of the machines.</p>
        <p>As a second example, consider the case where some mu ns are overcooked
(see Fig. 4b). In this case, the shipping courier must be noti ed to modify the
shipment, and a new set of mu ns must be produced starting from the list
of ingredients. To this aim, the overcook():(QRCode,type,num) overation is
available and can be activated either by a monitoring facilities or by human
intervention. This operation outputs the type type and number num of the
overcooked mu ns and the corresponding order (identi ed by its QRCode), and can be
composed with two discovered services: one interacting with the shipping courier
(i.e., shipment(URL) with the courier service as input) and one activating the
dosing machine (i.e., dosing machine(setOfIngredients,setOfQuantities)
with ingredients and quantities as input). Essentially, the composition connects
the discovered services by making explicit the relationships between the involved
service parameters. ?x, ?y, ?z, ?h are variables and the corresponding values
must be discovered in the data space as they represent the input to the two
services for shipment and the dosing machine.
2.3</p>
      </sec>
      <sec id="sec-2-3">
        <title>Data space layer - service-oriented mapping discovery</title>
        <p>Data are managed and accessed in a data space. The data space must be able
to deal with a huge volume of heterogeneous data from autonomous sources and
support the di erent information access needs of the service level. In particular, a
large variety of data types should be managed at the data space level. Data can be
static such as those available in traditional DBMSs but also highly dynamic like
sensor data. Moreover, the data space should accommodate data with di erent
degrees of structure, from tabular to fully textual data. Finally, the data space
should cope with the very diversi ed data access modalities sources o er, from
low level streaming access to high level data analytics.</p>
        <p>To this extent, the data space is a collection of heterogeneous data sources
that can be involved in the processes, both in-factory and out-factory, and that
can exchange data through mappings, i.e. declarative speci cations describing
the relationship between a target data instance and possibly more than one
source data instances. Each data source has its data access model that describes
the kind of managed data, e.g., streaming data vs. static data, and the supported
operators. As an example, Fig. 5a shows a small portion of the MyMu n data
space that can be used in case of overcooking where data are modelled as triples.
Batches is a data stream that reports the cooking status over time; Orders is the
(a) An excerpt of the MyMu n data space.</p>
        <p>(b) Mapping discovery process
set of records storing the orders made by clients online and the corresponding
QR-codes; Recipes is a semi-structured data set recording the recipes of the
di erent kinds of mu ns; Yellow pages is a web-based data source about the
couriers and the related Web services.</p>
        <p>
          In this large scale deeply heterogeneous and dynamic integration scenario,
unlike traditional approaches, mappings are interactively created and re ned
according to the needs of service ows and the exclusive role of mappings is to
contribute to execute service compositions [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ]. Hence, we start from a chain of
services with their information needs expressed as inputs and outputs that we
attempt to satisfy in the dataspace. For instance the data ow of Fig. 4b indicates
that from each QRCode returned by the overcook service, (i) it should be derived
the Web service to interact with the delivery agent/courier, whereas (ii) from
the type of the overcooked mu n it should be derived the list of ingredients
together with the required quantities as input to the dosing machine. Therefore,
mapping discovery leads to two mappings whose targets are (QRCode, call,
?z) and (type, has ingredient, ?h), (?h, name, ?x), (?h, qty, num*?y).
A plausible output to the mapping discovery for the second mapping is shown in
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Conclusion</title>
      <p>In this paper, we have outlined an architectural framework for RAMI 4.0-based
digital factories. The framework supports agile supply-chains through innovative
technological approaches aiming at the dynamic discovery of service and data
ows that best t the requirements expressed in business process speci cations
and their evolution. The proposed approach relies on a three-level architecture
whose aims are to enable the interoperability among the di erent parts of the real
factory and to ease the involvement of humans in the agile management of factory
processes. Moreover, the proposed approach leverages the interactions with other
actors of the supply chain, making them easier and overcoming the obstacles
deriving from the possible di erent data formats and process management.</p>
      <p>Our future work and next steps will mainly consist in the implementation of
the proposed architectural framework and proof-of-concept of such an
architecture, to be validated in agile supply-chain application scenarios.</p>
      <p>Finally, we would like to remark the impact of our research. At the business
level, the potential impact of our research can facilitate the information exchange
and ability for companies to increase their agility by adapting to changes
occurring in the supply chains. As a result, they can o er more customised products
and services to the customer. Moreover, agility considers security aws among
the potential risks against which supply chains need to be responsive. Therefore,
the adoption of the proposed solution has a fundamental value today as security
and privacy of data are one of the most important issues for the public.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>G.</given-names>
            <surname>Castelli</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Mamei</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Rosi</surname>
          </string-name>
          , and
          <string-name>
            <given-names>F.</given-names>
            <surname>Zambonelli</surname>
          </string-name>
          .
          <article-title>Engineering pervasive service ecosystems: The sapere approach</article-title>
          .
          <source>ACM Trans. Auton</source>
          . Adapt. Syst.,
          <volume>10</volume>
          (
          <issue>1</issue>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>N.</given-names>
            <surname>Chungoora</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R. I.</given-names>
            <surname>Young</surname>
          </string-name>
          , G. Gunendran,
          <string-name>
            <given-names>C.</given-names>
            <surname>Palmer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Z.</given-names>
            <surname>Usman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N. A.</given-names>
            <surname>Anjum</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.- F.</given-names>
            <surname>Cutting-Decelle</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. A.</given-names>
            <surname>Harding</surname>
          </string-name>
          , and
          <string-name>
            <given-names>K.</given-names>
            <surname>Case</surname>
          </string-name>
          .
          <article-title>A model-driven ontology approach for manufacturing system interoperability and knowledge sharing</article-title>
          .
          <source>Computers in Industry</source>
          ,
          <volume>64</volume>
          (
          <issue>4</issue>
          ):
          <volume>392</volume>
          {
          <fpage>401</fpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>F.</given-names>
            <surname>Mandreoli</surname>
          </string-name>
          .
          <article-title>A framework for user-driven mapping discovery in rich spaces of heterogeneous data</article-title>
          .
          <source>In OTM Conf.</source>
          , pages
          <volume>399</volume>
          {
          <fpage>417</fpage>
          ,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>A.</given-names>
            <surname>Marrella</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Mecella</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Pernici</surname>
          </string-name>
          , and
          <string-name>
            <given-names>P.</given-names>
            <surname>Plebani</surname>
          </string-name>
          .
          <article-title>A design-time data-centric maturity model for assessing resilience in multi-party business processes</article-title>
          .
          <source>Information Systems</source>
          ,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>A.</given-names>
            <surname>Marrella</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Mecella</surname>
          </string-name>
          , and
          <string-name>
            <surname>S.</surname>
          </string-name>
          <article-title>Sardin~a. Supporting adaptiveness of cyber-physical processes through action-based formalisms</article-title>
          .
          <source>AI Commun</source>
          .,
          <volume>31</volume>
          (
          <issue>1</issue>
          ):
          <volume>47</volume>
          {
          <fpage>74</fpage>
          ,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>M. P.</given-names>
            <surname>Papazoglou</surname>
          </string-name>
          .
          <article-title>Smart connected digital factories - unleashing the power of industry 4.0 and the industrial internet</article-title>
          .
          <source>In Proc. of CLOSER</source>
          , pages
          <volume>260</volume>
          {
          <fpage>271</fpage>
          ,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>F.</given-names>
            <surname>Zezulka</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Marcon</surname>
          </string-name>
          ,
          <string-name>
            <surname>I. Vesely</surname>
          </string-name>
          , and
          <string-name>
            <given-names>O.</given-names>
            <surname>Sajdl</surname>
          </string-name>
          .
          <article-title>Industry 4.0{an introduction in the phenomenon</article-title>
          .
          <source>IFAC-PapersOnLine</source>
          ,
          <volume>49</volume>
          (
          <issue>25</issue>
          ):
          <volume>8</volume>
          {
          <fpage>12</fpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>