Skip to main content

Intelligible TinyOS Sensor Systems: Explanations for Embedded Software

  • Conference paper
Modeling and Using Context (CONTEXT 2011)

Part of the book series: Lecture Notes in Computer Science ((LNAI,volume 6967))

  • 909 Accesses

Abstract

As embedded sensing systems are central to developing pervasive, context-aware services, the applications running on these systems should be intelligible to system programmers and to users. Given that sensor systems are programmed in low-level languages, manually writing high-level explanations about their decision model requires knowledge about the system architecture, and is error-prone. We explore the possibility of extracting explanations which are small and expressive, but still preserve bit-level accuracy when needed. We contribute a tool which automatically and soundly generates compact, graphical explanations from sensor software implementation at compile-time. We base our algorithm on the techniques of (i) finite-state machine model extraction from software as used in model checking, and (ii) abstraction of program execution traces. We experiment with extracting explanations from heavyweight, low-level TinyOS applications for a mainstream sensor platform.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Lim, B.Y., Dey, A.K.: Toolkit to support intelligibility in context-aware applications. In: Proceedings of the 12th ACM International Conference on Ubiquitous Computing, Ubicomp 2010, pp. 13–22. ACM, New York (2010)

    Google Scholar 

  2. Hill, J., Szewczyk, R., Woo, A., Hollar, S., Culler, D., Pister, K.: System architecture directions for networked sensors. SIGPLAN Not. 35(11), 93–104 (2000)

    Article  Google Scholar 

  3. Levis, P., Gay, D., Handziski, V., Hauer, J.H., Greenstein, B., Turon, M., Hui, J., Klues, K., Sharp, C., Szewczyk, R., Polastre, J., Buonadonna, P., Nachman, L., Tolle, G., Culler, D., Wolisz, A.: T2: A second generation OS for embedded sensor networks. Technical Report TKN-05-007, Technische Universität Berlin (2005)

    Google Scholar 

  4. Rubio, B., Diaz, M., Troya, J.M.: Programming approaches and challenges for wireless sensor networks. In: Proceedings of the Second International Conference on Systems and Networks Communications, ICSNC 2007, pp. 36–43. IEEE Computer Society, Washington, DC, USA (2007)

    Chapter  Google Scholar 

  5. Ko, A.J., Abraham, R., Beckwith, L., Blackwell, A., Burnett, M., Erwig, M., Scaffidi, C., Lawrance, J., Lieberman, H., Myers, B., Rosson, M.B., Rothermel, G., Shaw, M., Wiedenbeck, S.: The state of the art in end-user software engineering. Accepted for publication in ACM Computing Surveys (2011)

    Google Scholar 

  6. Ko, A.J., Myers, B.A., Coblenz, M.J., Aung, H.H.: An exploratory study of how developers seek, relate, and collect relevant information during software maintenance tasks. IEEE Trans. Softw. Eng. 32, 971–987 (2006)

    Article  Google Scholar 

  7. Lim, B.Y., Dey, A.K.: Assessing demand for intelligibility in context-aware applications. In: Proceedings of the 11th International Conference on Ubiquitous Computing, Ubicomp 2009, pp. 195–204. ACM, New York (2009)

    Google Scholar 

  8. Bucur, D.: On Software Verification for Sensor Nodes. The Journal of Systems Software 84(10), 1693–1707 (2011)

    Article  Google Scholar 

  9. Clarke, E., Kröning, D., Lerda, F.: A tool for checking ANSI-C programs. In: Jensen, K., Podelski, A. (eds.) TACAS 2004. LNCS, vol. 2988, pp. 168–176. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  10. Kroening, D.: Formal verification (2010), http://www.cprover.org/

  11. Gay, D., Levis, P., von Behren, R.: The nesC language: A holistic approach to networked embedded systems. In: ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), pp. 1–11. ACM, New York (2003)

    Google Scholar 

  12. Moteiv Corporation: Telos. Ultra low power IEEE 802.15.4 compliant wireless sensor module. Revision B : Humidity, Light, and Temperature sensors with USB (2004), http://www.moteiv.com

  13. Texas Instruments: MSP430x1xx family — user’s guide (Rev.F) (2006), www.ti.com.slau049f.pdf

  14. Underwood, S.: Mspgcc—A port of the GNU tools to the Texas Instruments MSP430 microcontrollers (2003), http://mspgcc.sourceforge.net

  15. Gay, D., Levis, P., Culler, D.: Software design patterns for TinyOS. In: Proceedings of the ACM SIGPLAN/SIGBED Conference on languages, compilers, and tools for embedded systems (LCTES), pp. 40–49. ACM, New York (2005)

    Google Scholar 

  16. Kothari, N., Millstein, T., Govindan, R.: Deriving state machines from TinyOS programs using symbolic execution. In: Proceedings of the International Conference on Information Processing in Sensor Networks (IPSN), pp. 271–282. IEEE, Los Alamitos (2008)

    Google Scholar 

  17. Li, P., Regehr, J.: T-Check: bug finding for sensor networks. In: Proceedings of the 9th International Conference on Information Processing in Sensor Networks (IPSN), pp. 174–185. ACM, New York (2010)

    Google Scholar 

  18. Sasnauskas, R., Landsiedel, O., Alizai, M.H., Weise, C., Kowalewski, S., Wehrle, K.: KleeNet: discovering insidious interaction bugs in wireless sensor networks before deployment. In: Proceedings of the 9th International Conference on Information Processing in Sensor Networks (IPSN), pp. 186–196 (2010)

    Google Scholar 

  19. Mottola, L., Voigt, T., Österlind, F., Eriksson, J., Baresi, L., Ghezzi, C.: Anquiro: Enabling efficient static verification of sensor network software. In: Proceedings of Workshop on Software Engineering for Sensor Network Applications (SESENA) ICSE(2) (2010)

    Google Scholar 

  20. Cooprider, N., Archer, W., Eide, E., Gay, D., Regehr, J.: Efficient memory safety for TinyOS. In: Proceedings of the conference on Embedded Networked Sensor Systems (SenSys), pp. 205–218. ACM, New York (2007)

    Google Scholar 

  21. Krunic, V., Trumpler, E., Han, R.: NodeMD: Diagnosing node-level faults in remote wireless sensor systems. In: Proceedings of the International Conference on Mobile Systems, Applications and Services (MobiSys), pp. 43–56. ACM, New York (2007)

    Google Scholar 

  22. Kofod-Petersen, A., Cassens, J.: Explanations and context in ambient intelligent systems. In: Kokinov, B., Richardson, D.C., Roth-Berghofer, T.R., Vieu, L. (eds.) CONTEXT 2007. LNCS (LNAI), vol. 4635, pp. 303–316. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  23. Dey, A.K., Newberger, A.: Support for context-aware intelligibility and control. In: Proceedings of the 27th International Conference on Human Factors in Computing Systems, CHI 2009, pp. 859–868. ACM, New York (2009)

    Google Scholar 

  24. Welbourne, E., Balazinska, M., Borriello, G., Fogarty, J.: Specification and verification of complex location events with panoramic. In: Floréen, P., Krüger, A., Spasojevic, M. (eds.) Pervasive Computing. LNCS, vol. 6030, pp. 57–75. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Bucur, D. (2011). Intelligible TinyOS Sensor Systems: Explanations for Embedded Software. In: Beigl, M., Christiansen, H., Roth-Berghofer, T.R., Kofod-Petersen, A., Coventry, K.R., Schmidtke, H.R. (eds) Modeling and Using Context. CONTEXT 2011. Lecture Notes in Computer Science(), vol 6967. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-24279-3_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-24279-3_6

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-24278-6

  • Online ISBN: 978-3-642-24279-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics