A model-driven development framework for developing sense-compute-control applications

A Sense-Compute-Control(SCC) application involves interactions among a large number of heterogeneous devices that can sense the physical world by obtaining information from sensors, compute the captured information, and control the physical world by triggering actions using actuators. SCC applications are pervasive and found in many application domains, including industrial control, robotics systems or building automation. Developing a SCC application is challenging because it implies a wide range of related issues such as lack of separation of concerns, and lack of high-level of abstractions to address heterogeneity of target devices. Moreover, stakeholders involved in the application development have to address issues that can be attributed to different life-cycles phases such as development, deployment, and evolution. Existing approaches only cover limited subsets of the above mentioned challenges. This paper proposes an integrated approach for the development of SCC applications. It separates the application development into different concerns. So, stakeholders can deal with them individually at evolution and reuse them across applications. To support actions of stakeholders, the development framework provides a set of modeling languages to specify each development concern and abstracts the heterogeneity related complexity. It integrates code generation, task-mapping, and linking techniques to provide automation at various phases of SCC application development.

[1]  Douglas C. Schmidt,et al.  Guest Editor's Introduction: Model-Driven Engineering , 2006, Computer.

[2]  Urs Bischoff,et al.  Life cycle support for sensor network applications , 2007, MidSens '07.

[3]  Martin Fowler,et al.  Analysis patterns - reusable object models , 1996, Addison-Wesley series in object-oriented software engineering.

[4]  Jean-Philippe Vasseur,et al.  Interconnecting Smart Objects with IP: The Next Internet , 2010 .

[5]  Richard N. Taylor,et al.  Software architecture: foundations, theory, and practice , 2009, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

[6]  Viktor K. Prasanna,et al.  Enabling Scope-Based Interactions in Sensor Network Macroprogramming , 2007, 2007 IEEE Internatonal Conference on Mobile Adhoc and Sensor Systems.

[7]  Damien Cassou,et al.  Toward a Tool-Based Development Methodology for Pervasive Computing Applications , 2012, IEEE Transactions on Software Engineering.

[8]  Brice Morin,et al.  SENSAPP as a Reference Platform to Support Cloud Experiments: From the Internet of Things to the Internet of Services , 2012, 2012 14th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing.

[9]  Karen A. Scarfone,et al.  Guide to Industrial Control Systems (ICS) Security , 2015 .

[10]  Valérie Issarny,et al.  Enabling High-Level Application Development in the Internet of Things , 2013, S-CUBE.

[11]  Damien Cassou,et al.  A generative programming approach to developing pervasive computing systems , 2009, GPCE '09.

[12]  Valérie Issarny,et al.  Towards application development for the internet of things , 2011, MDS '11.

[13]  Viktor K. Prasanna,et al.  A Compilation Framework for Macroprogramming Networked Sensors , 2007, DCOSS.

[14]  Charles Consel,et al.  A Taxonomy-Driven Approach to Visually Prototyping Pervasive Computing Applications , 2009, DSL.

[15]  Ruben Picek,et al.  Model Driven Development – Future or Failure of Software Development? , 2007 .

[16]  Stephan Haller,et al.  The Things in the Internet of Things , 2010 .