skip to main content
research-article

Engineering Pervasive Service Ecosystems: The SAPERE Approach

Authors Info & Claims
Published:09 March 2015Publication History
Skip Abstract Section

Abstract

Emerging pervasive computing services will typically involve a large number of devices and service components cooperating together in an open and dynamic environment. This calls for suitable models and infrastructures promoting spontaneous, situated, and self-adaptive interactions between components. SAPERE (Self-Aware Pervasive Service Ecosystems) is a general coordination framework aimed at facilitating the decentralized and situated execution of self-organizing and self-adaptive pervasive computing services. SAPERE adopts a nature-inspired approach, in which pervasive services are modeled and deployed as autonomous individuals in an ecosystem of other services and devices, all of which interact in accord to a limited set of coordination laws, or eco-laws. In this article, we present the overall rationale underlying SAPERE and its reference architecture. We introduce the eco-laws--based coordination model and show how it can be used to express and easily enforce general-purpose self-organizing coordination patterns. The middleware infrastructure supporting the SAPERE model is presented and evaluated, and the overall advantages of SAPERE are discussed in the context of exemplary use cases.

References

  1. Florian Alt, Jorg Muller, and Albrecht Schmidt. 2012. Advertising on public display networks. Computer 45, 5, 50--56. DOI: http://dx.doi.org/10.1109/MC.2012.150 Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Inmaculada Ayala, Mercedes Amor, and Lidia Fuentes. 2012. Self-configuring agents for ambient assisted living applications. Personal and Ubiquitous Computing 17, 1159--1169. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Inmaculada Ayala, Mercedes Amor, Lidia Fuentes, Marco Mamei, and Franco Zambonelli. 2013. Developing pervasive agent-based applications: A comparison of two coordination approaches. In Proceedings of the International Workshop on Agent-Oriented Software Engineering. 73--98. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Ozalp Babaoglu, Geoffrey Canright, Andreas Deutsch, Gianni A. Di Caro, Frederick Ducatelle, Luca M. Gambardella, Niloy Ganguly, Márk Jelasity, Roberto Montemanni, Alberto Montresor, and Tore Urnes. 2006. Design patterns from biology for distributed computing. ACM Transactions on Autonomous and Adaptive Systems 1, 1, 26--66. DOI: http://dx.doi.org/10.1145/1152934.1152937 Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Jean-Pierre Banâtre and Thierry Priol. 2009. Chemical programming of future service-oriented architectures. Journal of Software 4, 7, 738--746.Google ScholarGoogle ScholarCross RefCross Ref
  6. Jacob Beal, Stefan Dulman, Kyle Usbeck, Mirko Viroli, and Nikolaus Correll. 2012. Organizing the aggregate: Languages for spatial computing. In Formal and Practical Aspects of Domain-Specific Languages: Recent Developments. Information Science Reference, Hershey, PA, 436--501.Google ScholarGoogle Scholar
  7. Paolo Bellavista, Antonio Corradi, Mario Fanelli, and Lana Foschini. 2012. A survey of context data distribution for mobile ubiquitous systems. ACM Computing Surveys 4, 44, Article No. 24. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Nicola Bicocchi, Marco Mamei, and Franco Zambonelli. 2012. Self-organizing virtual macro sensors. ACM Transactions on Autonomous and Adaptive Systems 7, 1, Article No. 2. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Frances M. T. Brazier, Jeffrey O. Kephart, H. Van Dyke Parunak, and Michael N. Huhns. 2009. Agents and service-oriented computing for autonomic computing: A research agenda. IEEE Internet Computing 13, 3, 82--87. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Jeppe Bronsted, Klaus M. Hansen, and Mads Ingstrup. 2010. Service composition issues in pervasive computing. IEEE Pervasive Computing 9, 1, 62--70. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Andrew T. Campbell, Shane B. Eisenman, Nicholas D. Lane, Emiliano Miluzzo, Ronald A. Peterson, Hong Lu, Xiao Zheng, Mirco Musolesi, Kristóf Fodor, and Gahng-Seop Ahn. 2008. The rise of people-centric sensing. IEEE Internet Computing 12, 4, 12--21. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Betty H. Cheng, Rogerio de Lemos, Holger Giese, Paola Inverardi, Jeff Magee, Jesper Andersson, Basil Becker, et al. 2009. Software engineering for self-adaptive systems: A research roadmap. In Software Engineering for Self-Adaptive Systems. Lecture Notes in Computer Science, Vol. 5525. Springer, 1--26. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Rogério De Lemos, Holger Giese, Hausi A. Muller, Mary Shaw, Jesper Andersson, Luciano Baresi, Basil Becker, et al. 2013. Software engineering for self-adaptive systems: A second research roadmap. In Software Engineering for Self-Adaptive Systems. Lecture Notes in Computer Science, Vol. 7475. Springer, 1--32.Google ScholarGoogle ScholarCross RefCross Ref
  14. Rocco De Nicola, Rosario Pugliese, and Francesco Tiezzi. 2014. A formal approach to autonomic systems programming: The SCEL language. ACM Transactions on Autonomous and Adaptive Systems 9, 2, Article No. 7. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Ivan Elhart, Marc Langheinrich, Nigel Davies, and Rui José. 2013. Key challenges in application and content scheduling for open pervasive display networks. In Proceedings of the IEEE International Conference on Pervasive Computing and Communications Workshops. 393--396.Google ScholarGoogle ScholarCross RefCross Ref
  16. Patrick Eugster, Pascal Felber, Rachid Guerraoui, and Anne-Marie Kermarrec. 2003. The many faces of publish/subscribe. ACM Computing Surveys 35, 2, 114--131. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Hector Fernandez, Cédric Tedeschi, and Thierry Priol. 2014. Rule-driven service coordination middleware for scientific applications. Future Generation Computer Systems 35, 1--13. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. David Gelernter. 1985. Generative communication in Linda. ACM Transactions on Programming Languages and Systems 7, 1, 80--112. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Saul Greenberg, Nicolai Marquardt, Till Ballendat, Rob Diaz-Marino, and Miaosen Wang. 2011. Proxemic interactions: The new ubicomp? ACM Interactions 18, 1, 42--50. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Yanying Gu, Anthony Lo, and Ignatius Niemegeers. 2009. A survey of indoor positioning systems for wireless personal networks. IEEE Communications Surveys and Tutorials 11, 1, 13--32. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Dries Harnie, Theo D’Hondt, Elisa Gonzalez Boix, and Wolfgang De Meuter. 2014. Programming urban-area applications by exploiting public transportation. ACM Transactions on Autonomous and Adaptive Systems 9, 2, Article No. 8. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Bert Holldobler and Edward O. Wilson. 2009. The Superorganism: The Beauty, Elegance, and Strangeness of Insect Societies. W. W. Norton, New York, NY. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Michael N. Huhns and Munindar P. Singh. 2005. Service-oriented computing: Key concepts and principles. IEEE Internet Computing 9, 1, 75--81. DOI: http://dx.doi.org/10.1109/MIC.2005.21 Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Márk Jelasity, Alberto Montresor, and Özalp Babaoglu. 2005. Gossip-based aggregation in large dynamic networks. ACM Transactions on Computer Systems 23, 3, 219--252. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Swaroop Kalasapur, Mohan Kumar, and Behrooz A. Shirazi. 2007. Dynamic service composition in pervasive computing. IEEE Transactions on Parallel and Distributed Systems 18, 7, 907--918. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Jeffrey O. Kephart and David M. Chess. 2003. The vision of autonomic computing. IEEE Computer 36, 1, 41--50. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Paul Lukowicz, Sandy Pentland, and Alois Ferscha. 2012. From context awareness to socially aware computing. IEEE Pervasive Computing 11, 1, 32--41. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Marco Mamei, Andrea Roli, and Franco Zambonelli. 2005. Emergence and control of macro-spatial structures in perturbed cellular automata, and implications for pervasive computing systems. IEEE Transactions on Systems, Man, and Cybernetics, Part A 35, 3, 337--348. DOI: http://dx.doi.org/10.1109/TSMCA.2005.846379 Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Marco Mamei and Franco Zambonelli. 2007. Pervasive pheromone-based interaction with RFID tags. ACM Transactions on Autonomous and Adaptive Systems 2, 2, 1--28. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Marco Mamei and Franco Zambonelli. 2009. Programming pervasive and mobile computing applications: The TOTA approach. ACM Transactions on Software Engineering and Methodology 18, 4, Article No. 15. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Amy L. Murphy, Gian Pietro Picco, and Gruia-Catalin Roman. 2006. LIME: A coordination model and middleware supporting mobility of hosts and agents. ACM Transactions on Software Engineering and Methodology 15, 3, 279--328. DOI: http://dx.doi.org/10.1145/1151695.1151698 Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Suman Nath, Phillip B. Gibbons, Srinivasan Seshan, and Zachary R. Anderson. 2004. Synopsis diffusion for robust aggregation in sensor networks. In Proceedings of the 2nd International Conference on Embedded Networked Sensor Systems. ACM, New York, NY, 250--262. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Andrea Omicini. 2012. Nature-inspired coordination for complex distributed systems. In Intelligent Distributed Computing VI. Studies in Computational Intelligence, Vol. 446. Springer, 1--6.Google ScholarGoogle Scholar
  34. Andrea Omicini and Franco Zambonelli. 1999. Coordination for Internet application development. Autonomous Agents and Multi-Agent Systems 2, 3, 251--269. DOI: http://dx.doi.org/10.1023/A:1010060322135 Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Van Parunak. 1997. Go to the ant: Engineering principles from natural multi-agent systems. Annals of Operations Research 75, 69--101.Google ScholarGoogle ScholarCross RefCross Ref
  36. Veljko Pejovic and Mirco Musolesi. 2013. Anticipatory mobile computing: A survey of the state of the art and research challenges. arXiv:1306.2356v5 {cs.HC}. Available at http://arxiv.org/abs/1306.2356.pdf.Google ScholarGoogle Scholar
  37. Vaskar Raychoudhury, Jiannong Cao, Mohan Kumar, and Daqiang Zhang. 2013. Middleware for pervasive computing: A survey. Pervasive and Mobile Computing 9, 2, 177--200. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Mark Read, Paul S. Andrews, and Jon Timmis. 2012. An introduction to artificial immune systems. In Handbook of Natural Computing. Springer, 1575--1597.Google ScholarGoogle Scholar
  39. Andreas Riener and Alois Ferscha. 2013. Enhancing future mass ICT with social capabilities. In Co-evolution of Intelligent Socio-Technical Systems. Springer, Berlin Heidelberg, 141--184.Google ScholarGoogle Scholar
  40. Oriana Riva, Tamer Nadeem, Cristian Borcea, and Liviu Iftode. 2007. Context-aware migratory services in ad hoc networks. IEEE Transactions on Mobile Computing 6, 12, 1313--1328. DOI: http://dx.doi.org/10.1109/TMC.2007.1053 Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. Daniel Roggen, Gerhard Tröster, Paul Lukowicz, Alois Ferscha, José del R. Millán, and Ricardo Chavarriaga. 2013. Opportunistic human activity and context recognition. IEEE Computer 46, 2, 36--45. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. Alberto Rosi, Marco Mamei, Franco Zambonelli, Simon Dobson, Graeme Stevenson, and Juan Ye. 2011. Social sensors and pervasive services: Approaches and perspectives. In Proceedings of the IEEE International Conference on Pervasive Computing and Communications Workshops. 525--530.Google ScholarGoogle ScholarCross RefCross Ref
  43. Daniel Schuster, Alberto Rosi, Marco Mamei, Thomas Springer, Markus Endler, and Franco Zambonelli. 2013. Pervasive social context: Taxonomy and survey. ACM Transactions on Intelligent Systems and Technology 4, 3, Article No. 46. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. Graeme Stevenson, Mirko Viroli, Juan Ye, Sara Montagna, and Simon Dobson. 2012. Self-organising semantic resource discovery for pervasive systems. In Proceedings of the 1st International Workshop on Adaptive Service Ecosystems: Natural and Socially Inspired Solutions. 47--52. Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. Drew Stovall and Christine Julien. 2008. Rapid prototyping of routing protocols with evolving tuples. In Distributed Applications and Interoperable Systems. Lecture Notes in Computer Science, Vol. 5053. Springer, 296--301. Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. Francesco Tisato, Carla Simone, Diego Bernini, Marco P. Locatelli, and Daniela Micucci. 2012. Grounding ecologies on multiple spaces. Pervasive and Mobile Computing 8, 4, 575--596. Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. Mirko Viroli, Matteo Casadei, Sara Montagna, and Franco Zambonelli. 2011. Spatial coordination of pervasive services through chemical-inspired tuple spaces. ACM Transactions on Autonomous and Adaptive Systems 6, 2, Article No. 14. Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. Pieter Vromant, Danny Weyns, Sam Malek, and Jesper Andersson. 2011. On interacting control loops in self-adaptive systems. In Proceedings of the 2011 ICSE Symposium on Software Engineering for Adaptive and Self-Managing Systems. ACM, New York, NY, 202--207. Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. Danny Weyns, Bradley Schmerl, Vincenzo Grassi, Sam Malek, Raffaela Mirandola, Christian Prehofer, Jochen Wuttke, et al. 2012. On patterns for decentralized control in self-adaptive systems. Software Engineering for Self-Adaptive Systems II. Lecture Notes in Computer Science, Vol. 7475. Springer, 76--107.Google ScholarGoogle Scholar
  50. Juan Ye, Simon Dobson, and Susan McKeever. 2012. Situation identification techniques in pervasive computing: A review. Pervasive and Mobile Computing 8, 1, 36--66. Google ScholarGoogle ScholarDigital LibraryDigital Library
  51. Franco Zambonelli. 2012. Toward sociotechnical urban superorganisms. IEEE Computer 45, 8, 76--78.Google ScholarGoogle ScholarDigital LibraryDigital Library
  52. Franco Zambonelli, Gabriella Castelli, Laura Ferrari, Marco Mamei, Alberto Rosi, Giovanna Di Marzo Serugendo, Matteo Risoldi, et al. 2011a. Self-aware pervasive service ecosystems. Procedia CS 7, 197--199. DOI: http://dx.doi.org/10.1016/j.procs.2011.09.006Google ScholarGoogle ScholarCross RefCross Ref
  53. Franco Zambonelli, Gabriella Castelli, Marco Mamei, and Alberto Rosi. 2011b. Integrating pervasive middleware with social networks in SAPERE. In Proceedings of the 2011 International Conference on Selected Topics inMobile and Wireless Networking (iCost). 145--150.Google ScholarGoogle ScholarCross RefCross Ref
  54. Franco Zambonelli and Mirko Viroli. 2011. A survey on nature-inspired metaphors for pervasive service ecosystems. Journal of Pervasive Computing and Communications 7, 3, 186--204.Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. Engineering Pervasive Service Ecosystems: The SAPERE Approach

              Recommendations

              Comments

              Login options

              Check if you have access through your login credentials or your institution to get full access on this article.

              Sign in

              Full Access

              • Published in

                cover image ACM Transactions on Autonomous and Adaptive Systems
                ACM Transactions on Autonomous and Adaptive Systems  Volume 10, Issue 1
                March 2015
                178 pages
                ISSN:1556-4665
                EISSN:1556-4703
                DOI:10.1145/2744297
                Issue’s Table of Contents

                Copyright © 2015 ACM

                Publisher

                Association for Computing Machinery

                New York, NY, United States

                Publication History

                • Published: 9 March 2015
                • Accepted: 1 November 2014
                • Revised: 1 July 2014
                • Received: 1 March 2014
                Published in taas Volume 10, Issue 1

                Permissions

                Request permissions about this article.

                Request Permissions

                Check for updates

                Qualifiers

                • research-article
                • Research
                • Refereed

              PDF Format

              View or Download as a PDF file.

              PDF

              eReader

              View online with eReader.

              eReader
              About Cookies On This Site

              We use cookies to ensure that we give you the best experience on our website.

              Learn more

              Got it!