Mobile Computing Middleware

  • Cecilia Mascolo
  • Licia Capra
  • Wolfgang Emmerich
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2497)


Recent advances in wireless networking technologies and the growing success of mobile computing devices, such as laptop computers, third generation mobile phones, personal digital assistants, watches and the like, are enabling new classes of applications that present challenging problems to designers. Mobile devices face temporary loss of network connectivity when they move; they are likely to have scarce resources, such as low battery power, slow CPU speed and little memory; they are required to react to frequent and unannounced changes in the environment, such as high variability of network bandwidth, and in the resources availability. To support designers building mobile applications, research in the field of middleware systems has proliferated. Middleware aims at facilitating communication and coordination of distributed components, concealing complexity raised by mobility from application engineers as much as possible. In this survey, we examine characteristics of mobile distributed systems and distinguish them from their fixed counterpart. We introduce a framework and a categorisation of the various middleware systems designed to support mobility, and we present a detailed and comparative review of the major results reached in this field. An analysis of current trends inside the mobile middleware community and a discussion of further directions of research conclude the survey.


Mobile Device Mobile Computing Mobile Host Mobile Unit Tuple Space 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Alternis S.A. Solutions for Location Data Mediation.
  2. 2.
    O. Angin, A. Campbell, M. Kounavis, and R. Liao. The Mobiware Toolkit: Programmable Support for Adaptive Mobile Netwoking. In Personal Communications Magazine, Special Issue on Adapting to Network and Client Variability. IEEE Computer Society Press, August 1998.Google Scholar
  3. 3.
    ANSA. The Advanced Network Systems Architecture (ANSA). Reference manual, Architecture Project Management, Castle Hill, Cambridge, UK, 1989.Google Scholar
  4. 4.
    V. Apparao, S. Byrne, M. Champion, S. Isaacs, I. Jacobs, A. L. Hors, G. Nicol, J. Robie, R. Sutor, C. Wilson, and L. Wood. Document Object Model (DOM) Level 1 Specification. W3C Recommendation, World Wide Web Consortium, Oct. 1998.
  5. 5.
    K. Arnold, B. O’Sullivan, R. W. Scheifler, J. Waldo, and A. Wollrath. The Jini[tm] Specification. Addison-Wesley, 1999.Google Scholar
  6. 6.
    A. Asthana and M. C. P. Krzyzanowski. An indoor wireless system for personalized shopping assistence. In Proceedings of IEEE Workshop on Mobile Computing Systems and Applications, pages 69–74, Santa Cruz, California, Dec. 1994. IEEE Computer Society Press.Google Scholar
  7. 7.
    S. Baker. Corba Distributed Objects: Using Orbix. Addison-Wesley, Nov. 1997.Google Scholar
  8. 8.
    F. Bennett, T. Richardson, and A. Harter. Teleporting-making applications mobile. In Proc. of the IEEE Workshop on Mobile Computing Systems and Applications, pages 82–84, Santa Cruz, California, Dec. 1994. IEEE Computer Society Press.Google Scholar
  9. 9.
    G. Blair, G. Coulson, P. Robin, and M. Papathomas. An Architecture for Next Generation Middleware. In Proceedings of Middleware’ 98, pages 191–206. Springer Verlag, Sept. 1998.Google Scholar
  10. 10. Bluetooth.
  11. 11.
    T. Bray, J. Paoli, and C. M. Sperberg-McQueen. Extensible Markup Language. Recommendation, World Wide Web Consortium, Mar. 1998.
  12. 12.
    P. Brown. Triggering information by context. Personal Technologies, 2(1):1–9, Mar. 1998.Google Scholar
  13. 13.
    CellPoint, Inc. The CellPoint System., 2000.
  14. 14.
    R. Cerqueira, C. K. Hess, M. Román, and R. H. Campbell. Gaia: A Development Infrastructure for Active Spaces. In Workshop on Application Models and Programming Tools for Ubiquitous Computing (held in conjunction with the UBI-COMP 2001), Sept. 2001.Google Scholar
  15. 15.
    D. Chalmers and M. Sloman. A Survey of Quality of Service in Mobile Computing Environments. IEEE Communications Surveys, Second Quarter:2-10, 1999.Google Scholar
  16. 16.
    J. Clark and S. DeRose. XML Path Language (XPath). Technical Report, World Wide Web Consortium, Nov. 1999.
  17. 17.
    N. Davies, A. Friday, S. Wade, and G. Blair. L2imbo: A Distributed Systems Platform for Mobile Computing. ACM Mobile Networks and Applications (MONET), Special Issue on Protocols and Software Paradigms of Mobile Networks, 3(2), 1998.Google Scholar
  18. 18.
    A. Demers, K. Petersen, M. Spreitzer, D. Terry, M. Theimer, and B. welch. The Bayou Architecture: Support for Data Sharing among Mobile Users. In Proceedings of the IEEE Workshop on Mobile Computing Systems and Applications, pages 2–7, Santa Cruz, California, Dec. 1994.Google Scholar
  19. 19.
    A. Dey, M. Futakawa, D. Salber, and G. Abowd. The Conference Assistant: Combining Context-Awareness with Wearable Computing. In Proc. of the 3 rd International Symposium on Wearable Computers (ISWC’ 99), pages 21–28, San Franfisco, California, Oct. 1999. IEEE Computer Society Press.Google Scholar
  20. 20.
    W. Emmerich. Engineering Distributed Objects. John Wiley & Sons, Apr. 2000.Google Scholar
  21. 21.
    W. Emmerich. Software Engineering and Middleware: A Roadmap. In The Future of Software Engineering-22 nd Int. Conf. on Software Engineering (ICSE2000), pages 117–129. ACM Press, May 2000.Google Scholar
  22. 22.
  23. 23.
    D. C. Fallside. XML Schema. Technical Report, World Wide Web Consortium, Apr. 2000.
  24. 24.
    W. Forum. Wireless Application Protocol., 2000.
  25. 25.
    D. Fritsch, D. Klinec, and S. Volz. NEXUS-Positioning and Data Management Concepts for Location Aware Applications. In Proceedings of the 2nd International Symposium on Telegeoprocessing, pages 171–184, Nice-Sophia-Antipolis, France, 2000.Google Scholar
  26. 26.
    D. Gelernter. Generative Communication in Linda. ACM Transactions on Programming Languages and Systems, 7(1):80–112, 1985.zbMATHCrossRefGoogle Scholar
  27. 27.
    M. Haahr, R. Cunningham, and V. Cahill. Supporting CORBA Applications in a Mobile Environment (ALICE). In 5th Int. Conf. on Mobile Computing and Networking (MobiCom). ACM Press, August 1999.Google Scholar
  28. 28.
    C. Hall. Building Client/Server Applications Using TUXEDO. Wiley, 1996.Google Scholar
  29. 29.
    R. Handorean and G.-C. Roman. Service Provision in Ad Hoc Networks. In Coordination 2002. Springer, 2002.Google Scholar
  30. 30.
    G. Held. Data Over Wireless Networks: Bluetooth, WAP, and Wireless Lans. McGraw-Hill, Nov. 2000.Google Scholar
  31. 31.
    E. Hudders. CICS: A Guide to Internal Structure. Wiley, 1994.Google Scholar
  32. 32.
    A. D. Joseph, J. A. Tauber, and M. F. Kaashoek. Mobile Computing with the Rover Toolkit. IEEE Transactions on Computers, 46(3), 1997.Google Scholar
  33. 33.
    G. Kiczales, J. des Rivieres, and D. Borrow. The Art of the Metaobject Protocol. The MIT Press, 1991.Google Scholar
  34. 34.
    F. Kon, M. Román, P. Liu, J. Mao, T. Yamane, L. M. aes, and R. Cambpell. Monitoring, Security, and Dynamic Configuration with the dynamicTAO Reflective ORB. In International Conference on Distributed Systems Platforms and Open Distributed Processing (Middleware’2000), pages 121–143, New York, Apr. 2000. ACM/IFIP.Google Scholar
  35. 35.
    L. Capra and W. Emmerich and C. Mascolo. A Micro-Economic Approach to Conflict Resolution in Mobile Computing. March 2002. Submitted for Publication.Google Scholar
  36. 36.
    T. Ledoux. OpenCorba: a Reflective Open Broker. In Reflection’99, volume 1616 of LNCS, pages 197–214, Saint-Malo, France, 1999. Springer.Google Scholar
  37. 37.
    S. Long, R. Kooper, G. Abowd, and C. Atkenson. Rapid prototyping of mobile context-aware applications: the Cyberguide case study. In Proceedings of the Second Annual International Conference on Mobile Computing and Networking, pages 97–107, White Plains, NY, Nov. 1996. ACM Press.Google Scholar
  38. 38.
    E. Maler and S. DeRose. XML Linking Language (XLink). Technical Report, World Wide Web Consortium, Mar. 1998.
  39. 39.
    B. W. Marsden. Communication Network Protocols: OSI Explained. Chartwell-Bratt, 1991.Google Scholar
  40. 40.
    C. Mascolo, L. Capra, S. Zachariadis, and W. Emmerich. XMIDDLE: A Data-Sharing Middleware for Mobile Computing. Int. Journal on Personal and Wireless Communications, April 2002.Google Scholar
  41. 41.
    J. McAffer. Meta-level architecture support for distributed objects. In Proceedings of Reflection’96, pages 39–62, San Francisco, 1996.Google Scholar
  42. 42.
    Microsoft. NET Compact Framework., 2002.
  43. 43.
    R. Monson-Haefel. Enterprise Javabeans. O’Reilly & Associates, Mar. 2000.Google Scholar
  44. 44.
    R. Monson-Haefel, D. A. Chappell, and M. Loukides. Java Message Service. O’Reilly & Associates, Dec. 2000.Google Scholar
  45. 45.
    A. L. Murphy, G. P. Picco, and G.-C. Roman. Lime: A Middleware for Physical and Logical Mobility. In Proceedings of the 21 st International Conference on Distributed Computing Systems (ICDCS-21), May 2001.Google Scholar
  46. 46.
    V. Natarajan, S. Reich, and B. Vasudevan. Programming With Visibroker: A Developer’s Guide to Visibroker for Java. John Wiley & Sons, Oct. 2000.Google Scholar
  47. 47.
    E. B. R. A. Networks. ETSI HIPERLAN/2 Standard.
  48. 48.
    OMG. CORBA Component Model., 1997.
  49. 49.
    Oracle Technology Network. Oracle9i Application Server Wireless., 2000.
  50. 50.
    A. Oram. Peer-to-Peer: Harnessing the Power of Disruptive Technologies. O’Reilly, 2001.Google Scholar
  51. 51.
    C. Perkins. Ad-hoc Networking. Addison-Wesley, Jan. 2001.Google Scholar
  52. 52.
    E. Pitt and K. McNiff. Java.rmi: The Remote Method Invocation Guide. Addison Wesley, June 2001.Google Scholar
  53. 53.
    A. Pope. The Corba Reference Guide: Understanding the Common Object Request Broker Architecture. Addison-Wesley, Jan. 1998.Google Scholar
  54. 54.
    Psinaptic. JMatos., 2001.
  55. 55.
    I. Redbooks. MQSeries Version 5.1 Administration and Programming Examples. IBM Corporation, 1999.Google Scholar
  56. 56.
    T. Reinstorf, R. Ruggaber, J. Seitz, and M. Zitterbart. A WAP-based Session Layer Supporting Distributed Applications in Nomadic Environments. In Int. Conf on Middleware, pages 56–76. Springer, Nov. 2001.Google Scholar
  57. 57.
    P. Reynolds and R. Brangeon. Service Machine Development for an Open Long-term Mobile and Fixed Network Environment., 1996.
  58. 58.
    D. Rogerson. Inside COM. Microsoft Press, 1997.Google Scholar
  59. 59.
    G.-C. Roman, A. L. Murphy, and G. P. Picco. Software Engineering for Mobility: A Roadmap. In The Future of Software Engineering-22 nd Int. Conf. on Software Engineering (ICSE2000), pages 243–258. ACM Press, May 2000.Google Scholar
  60. 60.
    M. Roman, F. Kon, and R. Campbell. Reflective Middleware: From your Desk to your Hand. IEEE Communications Surveys, 2(5), 2001.Google Scholar
  61. 61.
    Salutation Consortium. Salutation., 1999.
  62. 62.
    M. Satyanarayanan. Mobile Information Access. IEEE Personal Communications, 3(1):26–33, Feb. 1996.Google Scholar
  63. 63.
    M. Satyanarayanan, J. Kistler, P. Kumar, M. Okasaki, E. Siegel, and D. Steere. Coda: A Highly Available File System for a Distributed Workstation Environment. IEEE Transactions on Computers, 39(4):447–459, Apr. 1990.Google Scholar
  64. 64.
    B. Schilit, N. Adams, and R. Want. Context-Aware Computing Applications. In Proc. of the Workshop on Mobile Computing Systems and Applications, pages 85–90, Santa Cruz, CA, Dec. 1994.Google Scholar
  65. 65.
    A. Schill, W. Bellmann, and S. Kummel. System support for mobile distributed applications, 1995.Google Scholar
  66. 66.
    SignalSoft. Wireless Location services., 2000.
  67. 67.
    B. Smith. Reflection and Semantics in a Procedural Programming Langage. Phd thesis, MIT, Jan. 1982.Google Scholar
  68. 68.
  69. 69.
    W. R. Stevens. UNIX Network Programming. Prentice Hall, 1997.Google Scholar
  70. 70.
    Sun Microsystem, Inc. Java Micro Edition., 2001.
  71. 71.
    Sun Microsystems, Inc. Jxta Initiative., 2001.
  72. 72.
    K. Tai. The Tree-to-Tree Correction Problem. Journal of the ACM, 29(3):422–433, 1979.CrossRefMathSciNetGoogle Scholar
  73. 73.
    D. Terry, M. Theimer, K. Petersen, A. Demers, M. Spreitzer, and C. Hauser. Managing Update Conflicts in Bayou, a Weakly Connected Replicated Storage System. In Proceedings of the 15th ACM Symposium on Operating Systems Principles (SOSP-15), pages 172–183, Cooper Mountain, Colorado, Aug. 1995.Google Scholar
  74. 74.
    Ubi-core. Universally Interoperable Core., 2001.
  75. 75.
    UPnP Forum. Universal Plug and Play., 1998.
  76. 76.
    G. Welling and B. Badrinath. An Architecture for Exporting Environment Awareness to Mobile Computing. IEEE Transactions on Software Engineering, 24(5):391–400, 1998.CrossRefGoogle Scholar
  77. 77.
    P. Wyckoff, S. W. McLaughry, T. J. Lehman, and D. A. Ford. T Spaces. IBM Systems Journal, 37(3):454–474, 1998.CrossRefGoogle Scholar
  78. 78.
    Y. Yokote. The Apertos reflective operating system: The concept and its implementation. In Proceedings of OOPSLA’ 92, pages 414–434. ACM Press, 1992.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2002

Authors and Affiliations

  • Cecilia Mascolo
    • 1
  • Licia Capra
    • 1
  • Wolfgang Emmerich
    • 1
  1. 1.Dept. of Computer ScienceUniversity College LondonLondonUK

Personalised recommendations