Middleware support for mobile applications

Mobile devices have received much research interest in recent years. Mobility raises new issues such as more dynamic context, limited computing resources, and frequent disconnections. A middleware infrastructure for mobile computing must handle all these issues properly. In this project we propose a middleware, called 3DMA, to support mobile computing. We introduce three requirements, distribution, decoupling and decomposition as central issues for mobile middleware. 3DMA uses a space based middleware, which facilitates the implementation of decoupled behavior and support for disconnected operation and context awareness. This is done by defining a set of “workers” which are able to act on the users behalf either: to reduce load on the mobile device, and/or to support disconnected behavior. In order to demonstrate aspects of the middleware architecture we then consider the development of a commonly used mobile application.

[1]  Ken Arnold,et al.  JavaSpaces¿ Principles, Patterns, and Practice , 1999 .

[2]  Gregory D. Abowd,et al.  The context toolkit: aiding the development of context-enabled applications , 1999, CHI '99.

[3]  Franco Zambonelli,et al.  A scalable tuple space model for structured parallel programming , 1995, Programming Models for Massively Parallel Computers.

[4]  Marvin Theimer,et al.  The Bayou Architecture: Support for Data Sharing Among Mobile Users , 1994, 1994 First Workshop on Mobile Computing Systems and Applications.

[5]  Gregory D. Abowd,et al.  Towards a Better Understanding of Context and Context-Awareness , 1999, HUC.

[6]  Gruia-Catalin Roman,et al.  Secure Sharing of Tuple Spaces in Ad Hoc Settings , 2003, SecCo.

[7]  Cecilia Mascolo,et al.  XMIDDLE: A Data-Sharing Middleware for Mobile Computing , 2002, Wirel. Pers. Commun..

[8]  Mahadev Satyanarayanan,et al.  Balancing performance, energy, and quality in pervasive computing , 2002, Proceedings 22nd International Conference on Distributed Computing Systems.

[9]  Farhad Arbab,et al.  Modelling activities in information systems using the coordination language MANIFOLD , 1998, SAC '98.

[10]  Cho-Li Wang,et al.  Dynamic component composition for Functionality Adaptation in pervasive environments , 2003, The Ninth IEEE Workshop on Future Trends of Distributed Computing Systems, 2003. FTDCS 2003. Proceedings..

[11]  Ralph Wittmann,et al.  Delegating Remote Operation Execution in a Mobile Computing Environment , 1996, Mob. Networks Appl..

[12]  Terry Winograd,et al.  Architectures for Context , 2001, Hum. Comput. Interact..

[13]  David Wood,et al.  Adaptive service binding middleware to support mobility , 2003, 23rd International Conference on Distributed Computing Systems Workshops, 2003. Proceedings..

[14]  David Gelernter,et al.  Generative communication in Linda , 1985, TOPL.

[15]  Geoffrey H. Kuenning,et al.  Saving portable computer battery power through remote process execution , 1998, MOCO.

[16]  Mahadev Satyanarayanan,et al.  Tactics-based remote execution for mobile computing , 2003, MobiSys '03.

[17]  Mahadev Satyanarayanan,et al.  Disconnected operation in the Coda File System , 1992, TOCS.

[18]  Maria Grazia Vigliotti,et al.  On Reduction Semantics for the Push and Pull Ambitent Calculus , 2002, IFIP TCS.

[19]  Sandeep K. S. Gupta,et al.  Reconfigurable Context-Sensitive Middleware for Pervasive Computing , 2002, IEEE Pervasive Comput..

[20]  Philipp Obreiter,et al.  Towards scalability in tuple spaces , 2002, SAC '02.

[21]  Victor R. Lesser,et al.  The Hearsay-II Speech-Understanding System: Integrating Knowledge to Resolve Uncertainty , 1980, CSUR.

[22]  Gordon S. Blair,et al.  Limbo: a tuple space based platform for adaptive mobile applications , 1997 .

[23]  Nicholas Carriero,et al.  Linda in context , 1989, CACM.

[24]  Alan Messer,et al.  Adaptive offloading inference for delivering applications in pervasive computing environments , 2003, Proceedings of the First IEEE International Conference on Pervasive Computing and Communications, 2003. (PerCom 2003)..

[25]  Gregor Schiele,et al.  Middleware and application adaptation requirements and their support in pervasive computing , 2003, 23rd International Conference on Distributed Computing Systems Workshops, 2003. Proceedings..

[26]  Cheng Wang,et al.  Computation offloading to save energy on handheld devices: a partition scheme , 2001, CASES '01.

[27]  John Keeney,et al.  Chisel: a policy-driven, context-aware, dynamic adaptation framework , 2003, Proceedings POLICY 2003. IEEE 4th International Workshop on Policies for Distributed Systems and Networks.

[28]  Galen C. Hunt,et al.  The Coign automatic distributed partitioning system , 1999, OSDI '99.

[29]  Wei Huang,et al.  Zippering: Managing intermittent connectivity in DIANA , 1997, Mob. Networks Appl..

[30]  Eyal de Lara,et al.  Disconnected operation in publish/subscribe middleware , 2004, IEEE International Conference on Mobile Data Management, 2004. Proceedings. 2004.

[31]  Yannis Smaragdakis,et al.  J-Orchestra: Automatic Java Application Partitioning , 2002, ECOOP.

[32]  Amy L. Murphy,et al.  LIME: Linda meets mobility , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[33]  Quan Z. Sheng,et al.  The Self-Serv Environment for Web Services Composition , 2003, IEEE Internet Comput..

[34]  Jason Pascoe,et al.  The stick-e note architecture: extending the interface beyond the user , 1997, IUI '97.

[35]  Israel Ben-Shaul,et al.  A programming model and system support for disconnected-aware applications on resource-constrained devices , 2002, ICSE '02.

[36]  Gul A. Agha,et al.  ACTORS - a model of concurrent computation in distributed systems , 1985, MIT Press series in artificial intelligence.

[37]  K. Mani Chandy,et al.  Parallel program design - a foundation , 1988 .

[38]  William Noah Schilit,et al.  A system architecture for context-aware mobile computing , 1995 .

[39]  Paul Drews,et al.  Managed Runtime Environments for Next-Generation Mobile Devices , 2003 .

[40]  Elisabetta Di Nitto,et al.  Content-Based Dispatching in a Mobile Environment , 2000 .

[41]  Antony I. T. Rowstron Using mobile code to provide fault tolerance in tuple space based coordination languages , 2003, Sci. Comput. Program..

[42]  Christopher G. Lasater,et al.  Design Patterns , 2008, Wiley Encyclopedia of Computer Science and Engineering.