Integrating IoT and IoS with a Component-Based Approach

There is a growing interest in leveraging Service Oriented Architectures (SOA) in domains such as home automation, automotive, mobile phones or e-Health. With the basic idea (supported in e.g. OSGi) that components provide services, it makes it possible to smoothly integrate the Internet of Things (IoT) with the Internet of Services (IoS). The paradigm of the IoS indeed offers interesting capabilities in terms of dynamicity and interoperability. However in domains that involve “things” (e.g. appliances), there is still a strong need for loose coupling and a proper separation between types and instances that are well-known in Component-Based approaches but that typical SOA fail to provide. This paper presents how we can still get the best of both worlds by augmenting SOA with a Component-Based approach. We illustrate our approach with a case study from the domain of home automation.

[1]  Richard S. Hall,et al.  iPOJO: an Extensible Service-Oriented Component Framework , 2007, IEEE International Conference on Services Computing (SCC 2007).

[2]  Vicente Pelechano,et al.  Autonomic Computing through Reuse of Variability Models at Runtime: The Case of Smart Homes , 2009, Computer.

[3]  Richard S. Hall,et al.  Autonomous adaptation to dynamic availability using a service-oriented component model , 2004, Proceedings. 26th International Conference on Software Engineering.

[4]  Ji Zhang,et al.  Enabling Safe Dynamic Component-Based Software Adaptation , 2004, WADS.

[5]  Kiev Gama,et al.  Developing Adaptable Components Using Dynamic Languages , 2009, 2009 35th Euromicro Conference on Software Engineering and Advanced Applications.

[6]  Thierry Coupaye,et al.  The FRACTAL component model and its support in Java , 2006, Softw. Pract. Exp..

[7]  Olivier Barais,et al.  Using MDE to Build a Schizophrenic Middleware for Home/Building Automation , 2008, ServiceWave.

[8]  D. Donsez,et al.  An Architecture Description Language for Dynamic Sensor-Based Applications , 2008, 2008 5th IEEE Consumer Communications and Networking Conference.

[9]  Kevin Lee,et al.  OpenCOM v2: A Component Model for Building Systems Software , 2004 .

[10]  Sooyong Park,et al.  Dynamic Software Product Lines , 2008, Computer.

[11]  Brice Morin,et al.  Models@ Run.time to Support Dynamic Adaptation , 2009, Computer.

[12]  Jean-Marc Jézéquel,et al.  Weaving executability into object-oriented meta-languages , 2005, MoDELS'05.

[13]  Jean-Marc Jézéquel,et al.  Dynamic Software Product Lines for Service-Based Systems , 2009, 2009 Ninth IEEE International Conference on Computer and Information Technology.

[14]  Thomas Ledoux,et al.  Reliable dynamic reconfigurations in the fractal component model , 2007, ARM '07.

[15]  Jeff Magee,et al.  The Evolving Philosophers Problem: Dynamic Change Management , 1990, IEEE Trans. Software Eng..

[16]  Gordon S. Blair,et al.  A component model for building systems software , 2004, IASTED Conf. on Software Engineering and Applications.