skip to main content
research-article

Programming pervasive and mobile computing applications: The TOTA approach

Published: 30 July 2009 Publication History

Abstract

Pervasive and mobile computing call for suitable middleware and programming models to support the activities of complex software systems in dynamic network environments. In this article we present TOTA (“Tuples On The Air”), a novel middleware and programming approach for supporting adaptive context-aware activities in pervasive and mobile computing scenarios. The key idea in TOTA is to rely on spatially distributed tuples, adaptively propagated across a network on the basis of application-specific rules, for both representing contextual information and supporting uncoupled interactions between application components. TOTA promotes a simple way of programming that facilitates access to distributed information, navigation in complex environments, and the achievement of complex coordination tasks in a fully distributed and adaptive way, mostly freeing programmers and system managers from the need to take care of low-level issues related to network dynamics. This article includes both application examples to clarify concepts and performance figures to show the feasibility of the approach

References

[1]
Abdelzaher, T., Anokwa, Y., Boda, P., Burke, J., Estrin, D., Guibas, L., Kansal, A., Madden, S., and Reich, J. 2007. Mobiscopes for human spaces. IEEE Pervas. Comput. 6, 2, 20--29.
[2]
Babaoglu, O., Canright, G., Deutsch, A., Caro, G. D., Ducatelle, F., Gambardella, L., Ganguly, N., Jelasity, M., Montemanni, R., Montresor, A., and Urnes, T. 2006. Design patterns from biology for distributed computing. ACM Trans. Auton. Adap. Syst. 1, 1, 26--66.
[3]
Baldoni, R., Marchetti, C., Virgillito, A., and Vitenberg, R. 2005. Content-based publish-subscribe over structured overlay networks. In Proceedings of the International Conference on Distributed Computing Systems. IEEE Computer Society Press, Los Alamitos.
[4]
Basagni, S., Conti, M., Giordano, S., and Stojmenovic, I. 2004. Mobile Ad Hoc Networking. Wiley-IEEE Press, Piscataway.
[5]
Beal, J. and Bachrach, J. 2006. Infrastructure for engineered emergence on sensor/actuator networks. IEEE Intel. Syst. 21, 2, 10--19.
[6]
Bonabeau, E., Dorigo, M., and Theraulaz, G. 1999. Swarm Intelligence. From Natural to Artificial Systems. Oxford University Press, Oxford, U.K.
[7]
Borcea, C., Iyer, D., Kang, P., Saxena, A., and Iftode, L. 2002. Cooperative computing for distributed embedded systems. In Proceedings of the International Conference on Distributed Computing Systems. IEEE Computer Society Press, Los Alamitos.
[8]
Cabri, G., Ferrari, L., Leonardi, L., Mamei, M., and Zambonelli, F. 2005. Uncoupling coordination: Tuple-based models for mobility. In Mobile Middleware. Taylor and Francis CRC Press, London, U.K., 229--256.
[9]
Cabri, G., Leonardi, L., Mamei, M., and Zambonelli, F. 2003. Location-dependent services for mobile users. IEEE Trans. Syst. Man, Cybernet.—Part A: Syst. Hum. 33, 6, 667--681.
[10]
Camurri, M., Mamei, M., and Zambonelli, F. 2006. Urban traffic control with co-fields. In International Workshop on Environments for Multi-Agent Systems. Lecture Notes in Computer Science, vol. 4885. Springer Verlag, Berlin, Germany.
[11]
Castelli, G., Rosi, A., Mamei, M., and Zambonelli, F. 2007. A simple model and infrastructure for context-aware browsing of the world. In Proceedings of the International Conference on Pervasive Computing and Communications. IEEE Computer Society Press, Los Alamitos.
[12]
Cugola, G. and Picco, G. 2006. Reds: A reconfigurable dispatching system. In Proceedings of the International Workshop on Software Engineering and Middleware. (Portland).
[13]
Davies, N., Cheverst, K., Mitchell, K., and Efrat, A. 2001. Using and determining location in a context-sensitive tour guide. IEEE Comput. 34, 8, 35--41.
[14]
Eugster, P., Felber, P., Guerraoui, R., and Kermarrec, A. 2003. The many faces of publish/subscribe. ACM Comput. Surv. 35, 2, 114--131.
[15]
Gamma, E., Helm, R., Johnson, R., and Vlissides, J. 1999. Design Patterns. Addison-Wesley, Reading.
[16]
Ganesan, D., Krishnamachari, B., Woo, A., Culler, D., Estrin, D., and Wicker, S. 2002. Complex behavior at scale: An experimental study of low-power wireless sensor networks. Tech. rep. UCLA/CSD-TR 02-0013. University of California, Los Angeles.
[17]
Gelernter, D. and Carriero, N. 1992. Coordination languages and their significance. Commun. ACM 35, 2, 96--107.
[18]
Hightower, J. and Borriello, G. 2001. Location systems for ubiquitous computing. IEEE Comput. 34, 8, 57--66.
[19]
Intanagonwiwat, C., Govindan, R., Estrin, D., Heidemann, J., and Silva, F. 2003. Directed diffusion for wireless sensor networking. IEEE/ACM Trans. Netw. 11, 1, 2--16.
[20]
Johanson, B. and Fox, A. 2002. The event heap: A coordination infrastructure for interactive work spaces. In Proceedings of the International Workshop on Mobile Computer Systems and Applications. IEEE Computer Society Press, Los Alamitos.
[21]
Julien, C. and Roman, C. 2006. Egospaces: Facilitating rapid development of context-aware mobile applications. IEEE Trans. Softw. Eng. 32, 5, 281--298.
[22]
Lee, H., Mihailescu, P., and Shepherdson, J. 2007. Realizing teamwork in the field: An agent-based approach. IEEE Pervas. Comput. 6, 2, 85--92.
[23]
Mamei, M. and Zambonelli, F. 2004. Motion coordination in the quake 3 arena environment: A field-based approach. In International Workshop on Environments for Multi-Agent Systems. Lecture Notes in Computer Science, vol. 3374. Springer Verlag, Berlin, Germany.
[24]
Mamei, M. and Zambonelli, F. 2006a. Programming modular robots with the tota middleware. In International Workshop on Engineering Self-Organizing Applications. Lecture Notes in Computer Science, vol. 4389. Springer Verlag, Berlin, Germany.
[25]
Mamei, M. and Zambonelli, F. 2006b. Self-maintained overlay data structures for pervasive autonomic services. In Workshop on Self-Managed Networks, Systems, and Services. Springer Verlag, Berlin, Germany.
[26]
Mamei, M., Zambonelli, F., and Leonardi, L. 2004. Co-fields: A physically inspired approach to distributed motion coordination. IEEE Pervas. Comput. 3, 2, 52--61.
[27]
Menezes, R. and Tolksdorf, R. 2003. A new approach to scalable linda-systems based on swarms. In Proceedings of the ACM Symposium on Applied Computer. ACM Press, New York.
[28]
Mishra, A. and Nadkarni, K. M. 2003. Security in wireless ad hoc networks—A survey. In The Hand book of Ad Hoc Wireless Networks, M. Ilyas, Ed. CRC Press, Boca Raton, 499--549.
[29]
Montresor, A., Jelasity, M., and Babaoglu, O. 2005. Gossip-based aggregation in large dynamic networks. ACM Trans. Comput. Syst. 23, 3, 219--252.
[30]
Mottola, L. and Picco, G. P. 2006. Programming wireless sensor networks with logical neighborhoods. In Proceedings of the International Conference on Integrated Internet Ad Hoc and Sensor Networks. ACM Press, New York, 8.
[31]
Nagpal, R. 2002. Programmable self-assembly using biologically-inspired multi-agent control. In Proceedings of the Intenational Conference on Autonomous Agents and Multi-Agent Systems. ACM Press, New York.
[32]
Newton, R. and Welsh, M. 2004. Region streams: Functional macro-programming for sensor networks. In Proceedings of the International Workshop on Data Management for Sensor Networks. ACM Press, New York, 78--87.
[33]
O'Grady, R., Gross, R., Mondada, F., Bonani, M., and Dorigo, M. 2005. Self-assembly on demand in a group of physical autonomous mobile robots navigating rough terrain. In Proceedings of the European Conference on Artificial Life, (Canterbury, U.K).
[34]
Parunak, H. V. 1997. Go to the ant: Engineering principles from natural multi-agent systems. Ann. Operat. Res. 75, 69--101.
[35]
Picco, G., Murphy, A., and Roman, G. 2006. Lime: A coordination model and middleware supporting mobility of hosts and agents. ACM Trans. Softw. Engin. Methodol. 15, 3, 279--328.
[36]
Pister, K. 2000. On the limits and applicability of mems technology. In Defense Science Study Group Report. Institute for Defense Analysis. Alexandria.
[37]
Riva, O., Nadeem, T., Borcea, C., and Iftode, L. 2007. Context-aware migratory services in ad hoc networks. IEEE Trans. Mobile Computing.
[38]
Robinson, P., Vogt, H., and Wagealla, W. 2005. Privacy, Security and Trust Within the Context of Pervasive Computing. Springer Verlag, Berlin, Germany.
[39]
Roman, G., Julien, C., and Huang, Q. 2002. Network abstractions for context-aware mobile computing. In Proceedings of the International Conference on Software Engineering. ACM Press, New York.
[40]
Schelfthout, K., Holvoet, T., and Berbers, Y. 2005. Views: Customizable abstractions for context-aware applications in manets. In International Workshop on Software Engineering for Large Multi-Agent Systems. Springer Verlag, Berlin, Germany.
[41]
Shen, W.-M., Will, P. M., Galstyan, A., and Chuong, C.-M. 2004. Hormone-inspired self-organization and distributed control of robotic swarms. Auton. Robots 17, 1, 93--105.
[42]
Stoy, K. and Nagpal, R. 2004. Self-reconfiguration using directed growth. In Proceedings of the International Symposium on Distributed Autonomous Robotic Systems, (Toulouse, France).
[43]
Want, R. and Pering, T. 2005. System challenges for ubiquitous and pervasive computing. In Proceedings of the International Conference on Software Engineering. ACM Press, New York.
[44]
Weyns, D., Schelfthout, K., Holvoet, T., and Lefever, T. 2005. Decentralized control of EGV transportation systems. In Proceedings of the International Conference on Autonomous Agents and Multi-Agent Systems -- Industry Track. ACM Press, New York.
[45]
Whitehouse, K., Sharp, C., Brewer, E., and Culler, D. 2004. Hood: A neighborhood abstraction for sensor network. In Proceedings of the International Conference on Mobile Systems, Application, and Services (Boston).
[46]
Zambonelli, F., Gleizes, M., Mamei, M., and Tolksdorf, R. 2005. Spray computers: Explorations in self-organization. J. Perv. Mobile Comput. 1, 1, 1--20.
[47]
Zhou, H. and Singh, S. 2000. Content-based multi-cast (CBM) in ad hoc networks. In Proceedings of the International Symposium on Mobile Ad Hoc Networking and Computing. ACM Press, New York.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Software Engineering and Methodology
ACM Transactions on Software Engineering and Methodology  Volume 18, Issue 4
July 2009
122 pages
ISSN:1049-331X
EISSN:1557-7392
DOI:10.1145/1538942
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 30 July 2009
Accepted: 01 February 2008
Revised: 01 September 2007
Received: 01 May 2006
Published in TOSEM Volume 18, Issue 4

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Pervasive computing
  2. coordination
  3. middleware
  4. mobile computing
  5. self-adaptation
  6. self-organization
  7. tuple spaces

Qualifiers

  • Research-article
  • Research
  • Refereed

Funding Sources

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)7
  • Downloads (Last 6 weeks)1
Reflects downloads up to 27 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2025)System-wide IoT design and programming: Patterns for decentralised collective processesInternet of Things10.1016/j.iot.2024.10143629(101436)Online publication date: Jan-2025
  • (2024)Islands of cooperation emerge by stigmergic interactions in iterated spatial gamesPLOS ONE10.1371/journal.pone.030691519:7(e0306915)Online publication date: 12-Jul-2024
  • (2024)ScaRLibScience of Computer Programming10.1016/j.scico.2024.103176238:COnline publication date: 1-Dec-2024
  • (2024)FCPP to aggregate them all▪Science of Computer Programming10.1016/j.scico.2023.103026231:COnline publication date: 1-Jan-2024
  • (2024)Dynamic IoT deployment reconfiguration: A global-level self-organisation approachInternet of Things10.1016/j.iot.2024.10141228(101412)Online publication date: Dec-2024
  • (2024)A general framework and decentralised algorithms for collective computational processesFuture Generation Computer Systems10.1016/j.future.2024.04.020158:C(11-27)Online publication date: 1-Sep-2024
  • (2024)Towards Real-Time Aggregate ComputingLeveraging Applications of Formal Methods, Verification and Validation. Rigorous Engineering of Collective Adaptive Systems10.1007/978-3-031-75107-3_4(49-68)Online publication date: 27-Oct-2024
  • (2024)An Enhanced Exchange Operator for XCCoordination Models and Languages10.1007/978-3-031-62697-5_8(129-145)Online publication date: 17-Jun-2024
  • (2024)Envisioning Unpredictability in Smart EnvironmentsFluidware10.1007/978-3-031-62146-8_9(165-178)Online publication date: 13-May-2024
  • (2024)Fluidware: An Approach Toward Adaptive and Scalable IoT SystemsFluidware10.1007/978-3-031-62146-8_1(3-20)Online publication date: 13-May-2024
  • Show More Cited By

View Options

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media