<!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>Transforming Platform Independent CPN into Code for the TinyOS Platform: A Case Study of the RPL Protocol Models</article-title>
      </title-group>
      <contrib-group>
        <aff id="aff0">
          <label>0</label>
          <institution>Department of Computing, Bergen University College</institution>
        </aff>
      </contrib-group>
      <fpage>259</fpage>
      <lpage>268</lpage>
      <abstract>
        <p>TinyOS is a widely used platform for the development of networked embedded systems offering a programming model targeting resource constrained devices. We present a software engineering approach where Coloured Petri Net (CPNs) models are used as a starting point for developing protocol software for the TinyOS platform. The approach consists of five refinement steps where a platform-independent CPN model is gradually transformed into a platform-specific model that enables automatic code generation. To evaluate our approach, we use it to obtain an implementation of the IETF RPL routing protocol for sensor networks.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>PNSE’13 – Petri Nets and Software Engineering</title>
      <p>Step 1: Component Architecture consists of annotating CPN submodules
and substitution transitions corresponding to TinyOS components, and make
explicit the interfaces used and provided by components.</p>
      <p>Step 2: Resolving Interface Conflicts resolves interface conflicts allowing
components to use multiple instances of an interface. This is done by
annotating CPN arcs with information providing locally unique names.</p>
      <sec id="sec-1-1">
        <title>Step 3: Component and Interface Signature adds type signatures to com</title>
        <p>ponents and interfaces by creating explicit submodules for command and
events, and by refining colour sets to reflect the interface signatures.
Step 4: Component Classification further refines the components by
classifying them into four main types: timed, external, boot, and generic.</p>
      </sec>
      <sec id="sec-1-2">
        <title>Step 5: Internal Component Behaviour consists of refining the modelling</title>
        <p>
          of the individual commands and events such that control flow and data
manipulation become explicit and organised into atomic statement blocks.
After the fifth refinement step has been performed, the CPN model includes
sufficient detail to be used as a basis for automated code generation.
The RPL Protocol and Code Generation. To evaluate our approach on
an industrial-sized example, we have conducted a case study based on the RPL
routing protocol [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ] developed by the Internet Engineering Task Force. The RPL
protocol allows a set of sensor nodes to construct a destination-oriented directed
acyclic graph which can be used for multi-hop communication between sensor
nodes. To support the automatic code generation for TinyOS, we have developed
a software prototype in Java that performs a template-based model-to-text
transformation on the models resulting from the fifth refinement step. The software
prototype relies on the Access/CPN framework [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ] to load CPN models created
with CPN Tools. The code generator performs a top-down traversal of the CPN
model where code templates are selected according to the pragmatic annotations
on the CPN model elements encountered.
        </p>
        <p>Editor: Daniel Moldt
Proceedings of the
International Workshop on</p>
        <p>Mod eling and
B usiness
E nvironments
ModBE’13</p>
      </sec>
    </sec>
    <sec id="sec-2">
      <title>These proceedings are published online by the editor as Volume 989 at</title>
    </sec>
    <sec id="sec-3">
      <title>CEUR Workshop Proceedings ISSN 1613-0073</title>
      <p>http://ceur-ws.org/Vol-989</p>
    </sec>
    <sec id="sec-4">
      <title>Copyright for the individual papers is held by the papers’ authors. Copying is permitted only for private and academic purposes. This volume is published and copyrighted by its editors.</title>
      <p>These are the proceedings of the International Workshop on Modeling and
Business Environments (ModBE’13) in Milano, Italy, June 24, 2013. It is
a co-located event of Petri Nets 2013, the 34th international conference on
Applications and Theory of Petri Nets and Concurrency.</p>
      <p>More information about the workshop can be found at
Business environments are a central application domain for modeling
approaches. Basic paradigms of these approaches correspond to their central
concepts, such as processes, objects, components, agents, services or
organizations. Their inherent properties allow an adequate Business/IT-Alignment.
Within the models and systems of this alignment several principle notions
need to be incorporated, such as distribution, concurrency, correctness and
adaptability. In this workshop modeling approaches will be discussed from
various perspectives with several means.</p>
      <p>While ModBE’13 (Modeling and Business Environments) will take place
as a satellite event of Petri Nets 2013 other modeling techniques than Petri
nets and their means are explicitly welcome. Furthermore, experts from the
application domain will challenge the technical and conceptual solutions.
ModBE’13 shall provide a forum for researchers from interested communities
to investigate, experience, compare, contrast and discuss solutions for
modeling in business environments. During the workshop a part of the available
time is reserved for a group wise discussion of challenging questions.
The program committee consists of:</p>
    </sec>
    <sec id="sec-5">
      <title>ModBE’13 – Modeling and Business Environments</title>
      <sec id="sec-5-1">
        <title>Florian Matthes (Germany)</title>
        <p>Jan Mendling (Austria)
Daniel Moldt (Germany) (Chair)
Ambra Molesini (Italy)
Berndt Müller (United Kingdom)
Andreas Oberweis (Germany)
Andrea Omicini (Italy)
Sietse Overbeek (Germany)
Alexei Sharpanskykh (The Netherlands)
Christophe Sibertin-Blanc (France)
Carla Simone (Italy)
Ingo Timm (Germany)
Ferucio Laurentiu Tiplea (Rumania)
Adelinde Uhrmacher (Germany)
Ulrich Ultes-Nitsche (Switzerland)
Wamberto Vasconcelos (United Kingdom)
Jan Martijn van der Werf (The Netherlands)
Mathias Weske (Germany)</p>
        <p>Manuel Wimmer (Austria)
We received five high-quality contributions for which at least four reviews
were made. In addition we received two posters. The program committee
has accepted three of them for full presentation. Furthermore the
committee accepted one papers as short presentations. Two more contributions were
accepted as posters.</p>
        <p>Furthermore, we would like to thank our colleagues in the local organization
team at the University of Milano, Italy, for their support.</p>
        <p>Without the enormous efforts of authors, reviewers, PC members and the
organizational team this workshop wouldn’t provide such an interesting booklet.</p>
      </sec>
      <sec id="sec-5-2">
        <title>Thanks!</title>
        <p>Daniel Moldt</p>
      </sec>
      <sec id="sec-5-3">
        <title>Hamburg, June 2013</title>
        <p>ModBE’13 Proceedings</p>
        <sec id="sec-5-3-1">
          <title>Part VI ModBE’13: Invited Talk</title>
        </sec>
        <sec id="sec-5-3-2">
          <title>Knowledge and Business Intelligence Technologies in Cross</title>
        </sec>
        <sec id="sec-5-3-3">
          <title>Enterprise Environments for Italian Advanced Mechanical</title>
        </sec>
        <sec id="sec-5-3-4">
          <title>Industry</title>
          <p>Ernesto Damiani and Paolo Ceravolo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271</p>
        </sec>
        <sec id="sec-5-3-5">
          <title>Part VII ModBE’13: Long Presentations</title>
        </sec>
        <sec id="sec-5-3-6">
          <title>Optimizing Algebraic Petri Net Model Checking by Slicing</title>
          <p>Yasir Imtiaz Khan and Matteo Risoldi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275</p>
        </sec>
        <sec id="sec-5-3-7">
          <title>A Proposal for the Modeling of Organizational Structures and Agent Knowledge in MAS</title>
          <p>Lawrence Cabac, David Mosteller, Matthias Wester-Ebbinghaus . . . . . . . . 295</p>
        </sec>
        <sec id="sec-5-3-8">
          <title>Mining Declarative Models Using Time Intervals</title>
          <p>Jan Martijn van der Werf, Ronny Mans and Wil van der Aalst . . . . . . . . 313</p>
        </sec>
        <sec id="sec-5-3-9">
          <title>Part VIII ModBE’13: Short Presentation</title>
        </sec>
        <sec id="sec-5-3-10">
          <title>Improving Emergency Department Processes Using Coloured</title>
        </sec>
        <sec id="sec-5-3-11">
          <title>Petri Nets</title>
          <p>Khodakaram Salimifard, Seyed Yaghoub Hosseini and Mohammad
Sadegh Moradi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335</p>
        </sec>
        <sec id="sec-5-3-12">
          <title>Part IX ModBE’13: Poster Abstracts</title>
        </sec>
        <sec id="sec-5-3-13">
          <title>Advantages of a Full Integration between Agents and</title>
        </sec>
        <sec id="sec-5-3-14">
          <title>Workflows</title>
          <p>Thomas Wagner and Lawrence Cabac . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353</p>
        </sec>
        <sec id="sec-5-3-15">
          <title>Cloud Transition for QoS Modeling of Inter-Organizational</title>
        </sec>
        <sec id="sec-5-3-16">
          <title>Workflows</title>
          <p>Sofiane Bendoukha and Lawrence Cabac . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355</p>
        </sec>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>T.</surname>
          </string-name>
          Winter et. al. RPL:
          <article-title>IPv6 Routing Protocol for Low-Power and Lossy Networks</article-title>
          .
          <source>RFC 6550</source>
          ,
          <year>2012</year>
          . Internet Engineering Task Force.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>K.</given-names>
            <surname>Jensen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.M.</given-names>
            <surname>Kristensen</surname>
          </string-name>
          , and
          <string-name>
            <given-names>L.</given-names>
            <surname>Wells</surname>
          </string-name>
          .
          <article-title>Coloured Petri Nets and CPN Tools for Modelling and Validation of Concurrent Systems</article-title>
          .
          <source>International Journal on Software Tools for Technology Transfer</source>
          ,
          <volume>9</volume>
          (
          <issue>3</issue>
          -4):
          <fpage>213</fpage>
          -
          <lpage>254</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>P.</given-names>
            <surname>Levis</surname>
          </string-name>
          .
          <source>TinyOS Programming</source>
          . Cambridge University Press,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>K.</given-names>
            <surname>Simonsen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.M.</given-names>
            <surname>Kristensen</surname>
          </string-name>
          , and
          <string-name>
            <given-names>E.</given-names>
            <surname>Kindler</surname>
          </string-name>
          .
          <article-title>Code Generation for Protocols from CPN Models Annotated with Pragmatics</article-title>
          .
          <source>In Proc. of NWPT'12</source>
          , volume
          <volume>403</volume>
          of Report in Informatics, pages
          <fpage>46</fpage>
          -
          <lpage>48</lpage>
          . University of Bergen,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>V.</given-names>
            <surname>Veiset</surname>
          </string-name>
          .
          <article-title>An Approach to Semi-Automatic Code Generation for the TinyOS Platform using Coloured Petri Nets</article-title>
          .
          <source>Master's thesis</source>
          , Bergen University College,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>M.</given-names>
            <surname>Westergaard</surname>
          </string-name>
          .
          <source>Access/CPN 2</source>
          .
          <article-title>0: A High-Level Interface to CPN Models</article-title>
          .
          <source>In Proc. of ICATPN'11</source>
          , volume
          <volume>6709</volume>
          <source>of LNCS</source>
          , pages
          <fpage>328</fpage>
          -
          <lpage>337</lpage>
          . Springer,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>