Abstract
The sensor networking field is evolving into the Internet of Things (IoT), owing in large part to the increased availability of consumer sensing devices, including modern smart phones. However, application development in the IoT still remains challenging, since it involves dealing with several related issues, such as lack of proper identification of roles of various stakeholders, as well as lack of suitable (high-level) abstractions to address the large scale and heterogeneity in IoT systems.
Although the software engineering community has proposed several approaches to address the above in the general case, existing approaches for IoT application development only cover limited subsets of above mentioned challenges. In this paper, we propose a multi-stage modeldriven approach for IoT application development based on a precise definition of the role to be played by each stakeholder involved in the process - domain expert, application designer, application developer, device developer, and network manager. The abstractions provided to each stakeholder are further customized using the inputs provided in the earlier stages by other stakeholders. We have also implemented codegeneration and task-mapping techniques to support our approach. Our initial evaluation based on two realistic scenarios shows that the use of our techniques/framework succeeds in improving productivity in the IoT application development process.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Atzori, L., Iera, A., Morabito, G.: The internet of things: A survey. Computer Networks 54(15), 2787–2805 (2010)
CASAGRAS EU project final report (2009), http://www.rfidglobal.eu/userfiles/documents/FinalReport.pdf
Cassou, D., Bertran, B., Loriant, N., Consel, C.: A Generative Programming Approach to Developing Pervasive Computing Systems. In: GPCE 2009: Proceedings of the 8th International Conference on Generative Programming and Component Engineering (2009)
Cassou, D., Bruneau, J., Consel, C., Balland, E.: Towards a tool-based development methodology for pervasive computing applications. IEEE Transactions on Software Engineering (2011)
Chen, C., Helal, S., de Deugd, S., Smith, A., Chang, C.: Toward a collaboration model for smart spaces. In: 2012 Third International Workshop on Software Engineering for Sensor Network Applications (SESENA), pp. 37–42. IEEE (2012)
Costa, P., Mottola, L., Murphy, A.L., Picco, G.P.: Programming wireless sensor networks with the teeny lime middleware. In: Cerqueira, R., Campbell, R.H. (eds.) Middleware 2007. LNCS, vol. 4834, pp. 429–449. Springer, Heidelberg (2007)
Dey, A., Abowd, G., Salber, D.: A conceptual framework and a toolkit for supporting the rapid prototyping of context-aware applications. Human-Computer Interaction 16(2-4), 97–166 (2001)
Drey, Z., Mercadal, J., Consel, C.: A taxonomy-driven approach to visually prototyping pervasive computing applications. In: Taha, W.M. (ed.) DSL 2009. LNCS, vol. 5658, pp. 78–99. Springer, Heidelberg (2009)
Frank, C., Römer, K.: Algorithms for generic role assignment in wireless sensor networks. In: Proceedings of the 3rd International Conference on Embedded Networked Sensor Systems, pp. 230–242. ACM (2005)
Garlan, D., Siewiorek, D., Smailagic, A., Steenkiste, P.: Project aura: Toward distraction-free pervasive computing. IEEE Pervasive Computing 1(2), 22–31 (2002)
Grimm, R., Davis, J., Lemar, E., Macbeth, A., Swanson, S., Anderson, T., Bershad, B., Borriello, G., Gribble, S., Wetherall, D.: System support for pervasive applications. ACM Transactions on Computer Systems (TOCS) 22(4), 421–486 (2004)
Gummadi, R., Gnawali, O., Govindan, R.: Macro-programming wireless sensor networks using kairos. In: Prasanna, V.K., Iyengar, S.S., Spirakis, P.G., Welsh, M. (eds.) DCOSS 2005. LNCS, vol. 3560, pp. 126–140. Springer, Heidelberg (2005)
Kitchenham, B., Pickard, L., Pfleeger, S.: Case studies for method and tool evaluation. IEEE Software 12(4), 52–62 (1995)
Kruchten, P.: The 4+ 1 view model of architecture. IEEE Software 12(6), 42–50 (1995)
Luo, L., Abdelzaher, T., He, T., Stankovic, J.: Envirosuite: An environmentally immersive programming framework for sensor networks. ACM Transactions on Embedded Computing Systems (TECS) 5(3), 543–576 (2006)
Mottola, L., Pathak, A., Bakshi, A., Prasanna, V.K., Picco, G.P.: Enabling scope-based interactions in sensor network macroprogramming. In: IEEE Internatonal Conference on Mobile Ad Hoc and Sensor Systems, MASS 2007, pp. 1–9 (October 2007)
Mottola, L., Picco, G.: Programming wireless sensor networks: Fundamental concepts and state of the art. ACM Computing Surveys (CSUR) 43(3), 19 (2011)
Patel, P.: Enabling High-Level Application Development in the Internet of Things. Techreport (July 2012), http://hal.inria.fr/hal-00732094
Patel, P., Pathak, A., Teixeira, T., Issarny, V.: Towards application development for the internet of things. In: Proceedings of the 8th Middleware Doctoral Symposium. ACM (2011)
Pathak, A., Mottola, L., Bakshi, A., Prasanna, V., Picco, G.: Expressing sensor network interaction patterns using data-driven macroprogramming. In: Fifth Annual IEEE International Conference on Pervasive Computing and Communications Workshops, PerCom Workshops 2007, pp. 255–260. IEEE (2007)
Pathak, A., Prasanna, V.K.: High-Level Application Development for Sensor Networks: Data-Driven Approach. In: Nikoletseas, S., Rolim, J.D. (eds.) Theoretical Aspects of Distributed Computing in Sensor Networks, Monographs in Theoretical Computer Science. An EATCS Series, pp. 865–891. Springer, Heidelberg (2011)
Ranganathan, A., Chetan, S., Al-Muhtadi, J., Campbell, R., Mickunas, M.: Olympus: A high-level programming model for pervasive computing environments. In: Third IEEE International Conference on Pervasive Computing and Communications, PerCom 2005, pp. 7–16. IEEE (2005)
Serral, E., Valderas, P., Pelechano, V.: Towards the model driven development of context-aware pervasive systems. Pervasive and Mobile Computing 6(2), 254–280 (2010)
Taylor, R., Medvidovic, N., Dashofy, E.: Software architecture: foundations, theory, and practice. Wiley (2009)
Whitehouse, K., Sharp, C., Brewer, E., Culler, D.: Hood: a neighborhood abstraction for sensor networks. In: Proceedings of the 2nd International Conference on Mobile Systems, Applications, and Services, pp. 99–110. ACM (2004)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 ICST Institute for Computer Science, Social Informatics and Telecommunications Engineering
About this paper
Cite this paper
Patel, P., Pathak, A., Cassou, D., Issarny, V. (2013). Enabling High-Level Application Development in the Internet of Things. In: Zuniga, M., Dini, G. (eds) Sensor Systems and Software. S-CUBE 2013. Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering, vol 122. Springer, Cham. https://doi.org/10.1007/978-3-319-04166-7_8
Download citation
DOI: https://doi.org/10.1007/978-3-319-04166-7_8
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-04165-0
Online ISBN: 978-3-319-04166-7
eBook Packages: Computer ScienceComputer Science (R0)