<!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>Context Aware Sensor Con guration Model for Internet of Things</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Charith Perera</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Arkady Zaslavsky</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Michael Compton</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Peter Christen</string-name>
          <email>peter.christeng@anu.edu.au</email>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Dimitrios Georgakopoulos</string-name>
          <email>dimitrios.georgakopoulosg@csiro.au</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>CSIRO ICT Center</institution>
          ,
          <addr-line>Canberra, ACT 2601</addr-line>
          ,
          <country country="AU">Australia</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Research School of Computer Science, The Australian National University</institution>
          ,
          <addr-line>Canberra, ACT 0200</addr-line>
          ,
          <country country="AU">Australia</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Total Processing</institution>
        </aff>
        <aff id="aff3">
          <label>3</label>
          <institution>Total Processing</institution>
          ,
          <addr-line>excluding Model Reading</addr-line>
        </aff>
      </contrib-group>
      <abstract>
        <p>We propose a Context Aware Sensor Con guration Model (CASCoM) to address the challenge of automated context-aware con guration of ltering, fusion, and reasoning mechanisms in IoT middleware according to the problems at hand. We incorporate semantic technologies in solving the above challenges.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1 Introduction</title>
      <p>
        Broadly, con guration in IoT paradigm can be categorized into two: sensor-level
con guration and system-level con guration. Sensor-level con guration focuses
on changing a sensor's behaviour by con guring its embedded software
parameters such as sensing schedule, sampling rate, data communication frequency,
communication patterns and protocols. In this paper, we are focused on
developing a system-level con guration model for IoT midddleware platforms.
Specifically, our proposed model identi es, composes, and con gures both sensors and
data processing components according to the user requirements. In existing IoT
middleware (e.g. GSN), many con guration les and programming codes need
to be manually de ned by the users (without any help from GSN). An ideal IoT
middleware con guration model should address all the above mentioned
challenges. The con guration model we propose in this paper is applicable towards
several other emerging paradigms, such as sensing as a service [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
Our research question is `How to develop a model that allows non-IT experts
to con gure sensors and data processing mechanisms in an IoT middleware
according to the user requirements?'. Extended explanations are provided in [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ].
Research challenges are highlighted in Figure 1. Context-Aware Sensor Con
guration Model (CASCoM) simpli es the IoT middleware con guration process
signi cantly. Figure 2 compares the execution- ow of sensor con guration in
the current GSN approach and the CASCoM approach. The proposed solution
CASCoM is illustrated in Figure 3.
      </p>
      <sec id="sec-1-1">
        <title>A user wants to monitor / detect / discover a phenomenon</title>
      </sec>
      <sec id="sec-1-2">
        <title>User does not know which sensors to use to retrieve data</title>
      </sec>
      <sec id="sec-1-3">
        <title>User does not know how to configure the IoT middleware</title>
      </sec>
      <sec id="sec-1-4">
        <title>User does not know which data processing components to use</title>
      </sec>
      <sec id="sec-1-5">
        <title>Our objective is to help the user to overcome these challenges</title>
        <p>
          In phase 1, users are facilitated with a graphical user interface, which is based on
a question-answer (QA) approach, that allows to express the user requirements.
Users can answer as many question as possible. CASCoM searches and lters the
tasks that the user may want to perform. From the ltered list, users can select
the desired task. The details of the QA approach are presented later in this
section. In phase 2, CASCoM searches for di erent programming components
that allow to generate the data stream required. In phase 3, CASCoM tries to nd
the sensors that can be used to produce the inputs required by the selected data
processing components. If CASCoM fails to produce the data streams required
by the users due to insu cient resources (i.e. unavailability of the sensors),
it will provide advice and recommendations on future sensor deployments in
phase 4. Phase 5 allows the users to capture additional context information.
The additional context information that can be derived using available resources
and knowledge are listed to be selected. In phase 6, users are provided with one
or more solutions3. CASCoM calculates the costs for each solution in using
technique disucced in [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ]. By default, CASCoM will select the solution with
lowest cost. However, users can select the cost models as they required. Finally,
CASCoM generates all the con guration les and program codes which we listed
in Figure 2(a). Data starts streaming soon after.
3 Solution is a combination of sensors and data processing components that can be
composed together in order to satisfy the user requirements.
        </p>
        <p>(a) Current GSN Work-flow</p>
        <sec id="sec-1-5-1">
          <title>Configuration Begins</title>
        </sec>
        <sec id="sec-1-5-2">
          <title>Find what type (kind) sensors need to be configured in order to solve the problems at hand</title>
        </sec>
        <sec id="sec-1-5-3">
          <title>Manually find whether required types of sensors are available to be used</title>
        </sec>
        <sec id="sec-1-5-4">
          <title>Find out the low level details of those sensors such as data types and measurements</title>
        </sec>
        <sec id="sec-1-5-5">
          <title>Find wrapper details of those selected sensors</title>
        </sec>
        <sec id="sec-1-5-6">
          <title>Manually search for appropriate data processing components</title>
        </sec>
        <sec id="sec-1-5-7">
          <title>Write the Virtual Sensor (VS), a java class, manually by composing different data processing components and compile the class</title>
        </sec>
        <sec id="sec-1-5-8">
          <title>Write a new Virtual Sensor Definition (VSD), a XML file, manually by referring to correct wrappers and data types (b) CASCoM Work-flow</title>
        </sec>
        <sec id="sec-1-5-9">
          <title>Configuration Begins</title>
        </sec>
        <sec id="sec-1-5-10">
          <title>Search the task and click configure (optional) Discover additional context (optional) Receive advice on future improvements (optional) Optimize the configuration</title>
        </sec>
        <sec id="sec-1-5-11">
          <title>Configuration Completes</title>
        </sec>
        <sec id="sec-1-5-12">
          <title>Configuration Completes</title>
          <p>Fig. 2. Con guration Execution- ow Comparison: (a) Current GSN (b) CASCoM</p>
        </sec>
        <sec id="sec-1-5-13">
          <title>Users</title>
          <p>Phase 1:</p>
        </sec>
        <sec id="sec-1-5-14">
          <title>Understand User</title>
        </sec>
        <sec id="sec-1-5-15">
          <title>Requirements</title>
          <p>Phase 2:</p>
        </sec>
        <sec id="sec-1-5-16">
          <title>Select Data Processing</title>
        </sec>
        <sec id="sec-1-5-17">
          <title>Components</title>
          <p>Phase 6 Phase 5 Phase 4</p>
          <p>Applications Con(OOteppxttit-miboiaznsaeatidlo)nC:ost Dis(cOovpCetorinoAtnedxdatilt)io:nal PRreo(cOvoidmpetmiaoednnvdaicale)ti:oannsd
Fig. 3. The Context-Aware Sensor Con guration Model (CASCoM)
4 Evaluation, Discussion and Lessons Learned
Results: Figure 5(a) shows that CASCoM allows to considerably reduce the
time required for con guration of data processing mechanism in IoT middleware.
Speci cally, CASCoM allowed the three types of users to complete the given task
50, 80 and 250 times faster (respectively) in comparison to the existing approach.
According to Figure 5(b), the Java re ection approach takes slightly more time
to specially when initializing. Though the Java re ection approach can add more
exibility to our model, the additional overhead increases when the number of
components and operation involved gets increased. The overheads can grow up
to unacceptable level very quickly when GSN scales up (e.g. more user requests).</p>
          <p>According to Figure 5(c), even IT experts who know GSN can save time by
using CASCoM up to 88%. Specially, time taken for de ning the VSD and VS
class have been signi cantly reduced. Both les can be generated by CASCoM
autonomously within a second even for complex scenarios. However, the time
taken to nd data processing components and sensors (and wrappers) depends on
the size of the semantic data model. Figure 5(d) shows how total processing time
would vary depending on the size of the semantic data model. Approximately,
a semantic model with 10,000 sensor descriptions and 10,000 data processing
components can be processed in order to nd solutions for a given user request
in less than a minute. However, most of the time is taken to read the data model.
)
c
e
s
(
n
o
itr
a
u
g
if
n
o
c
e
h
t
ltpee l)cae
mS
o ic
c m
to itrh
e ag
iTm(Lo</p>
          <p>Usecase (1) Different Scenarios</p>
        </sec>
        <sec id="sec-1-5-18">
          <title>Usecase (2) Usecase (3)</title>
          <p>15%
14%
20%
51%</p>
          <p>7% 1% 3%
1%
88%
(c)
Non-IT Expert without GSN Skills (without CASCoM)(a)</p>
        </sec>
        <sec id="sec-1-5-19">
          <title>IT Expert without GSN Skills (without CASCoM)</title>
        </sec>
        <sec id="sec-1-5-20">
          <title>IT Expert with GSN Skills (without CASCoM)</title>
        </sec>
        <sec id="sec-1-5-21">
          <title>Everyone with CASCoM (Average)</title>
        </sec>
        <sec id="sec-1-5-22">
          <title>Execution (Native)</title>
        </sec>
        <sec id="sec-1-5-23">
          <title>Execution (Reflection)</title>
        </sec>
        <sec id="sec-1-5-24">
          <title>Component Initiation (Native)</title>
        </sec>
        <sec id="sec-1-5-25">
          <title>Component Initiation (Reflection)</title>
          <p>(1)
(5)</p>
        </sec>
        <sec id="sec-1-5-26">
          <title>Number of Components</title>
          <p>(10)
Search Wrappers
Search Programming Components
Time Saved</p>
          <p>Define VSD
Write VS Class</p>
          <p>0 250N0umber of 5re0c0o0rds mode7lle5d00
Fig. 5. Evaluation of CASCoM
10000
The actual con guration process other than reading the data model takes only
4 seconds and it slightly increases when the model size increases.
5</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-2">
      <title>Conclusion</title>
      <p>We have shown that it is possible to o er a sophisticated con guration model to
support non-IT experts. Semantic technologies are used extensively to support
this model. Using our proof of concept implementation, both IT and non-IT
experts were able to con gure the GSN in signi cantly less time. In future,
we plan to extend our con guration model into sensor-level. To achieve this, we
will develop a model that can be used to con gure sensors autonomously without
human intervention in highly dynamic smart environments in the IoT paradigm.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>F. E.</given-names>
            <surname>Castillo-Barrera</surname>
          </string-name>
          ,
          <string-name>
            <surname>R. C. M.</surname>
          </string-name>
          <article-title>Ram rez, and</article-title>
          <string-name>
            <given-names>H. A.</given-names>
            <surname>Duran-Limon</surname>
          </string-name>
          .
          <article-title>Knowledge capitalization in a component-based software factory: a semantic viewpoint</article-title>
          .
          <source>In LA-NMR</source>
          , pages
          <volume>105</volume>
          {
          <fpage>114</fpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>C.</given-names>
            <surname>Perera</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Zaslavsky</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Christen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Compton</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>Georgakopoulos</surname>
          </string-name>
          .
          <article-title>Contextaware sensor search, selection and ranking model for internet of things middleware</article-title>
          .
          <source>In IEEE 14th International Conference on Mobile Data Management (MDM)</source>
          , Milan, Italy,
          <year>June 2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>C.</given-names>
            <surname>Perera</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Zaslavsky</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Christen</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>Georgakopoulos</surname>
          </string-name>
          . Ca4iot:
          <article-title>Context awareness for internet of things</article-title>
          .
          <source>In IEEE International Conference on Conference on Internet of Things (iThing)</source>
          , pages
          <fpage>775</fpage>
          {
          <fpage>782</fpage>
          ,
          <string-name>
            <surname>Besanon</surname>
          </string-name>
          , France,
          <year>November 2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>A.</given-names>
            <surname>Zaslavsky</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Perera</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>Georgakopoulos</surname>
          </string-name>
          .
          <article-title>Sensing as a service and big data</article-title>
          .
          <source>In International Conference on Advances in Cloud Computing (ACC-2012)</source>
          , pages
          <fpage>21</fpage>
          {
          <fpage>29</fpage>
          ,
          <string-name>
            <surname>Bangalore</surname>
          </string-name>
          , India,
          <year>July 2012</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>