Satin: A Component Model for Mobile Self Organisation

We have recently witnessed a growing interest in self organising systems, both in research and in practice. These systems re-organise in response to new or changing conditions in the environment. The need for self organisation is often found in mobile applications; these applications are typically hosted in resource-constrained environments and may have to dynamically reorganise in response to changes of user needs, to heterogeneity and connectivity challenges, as well as to changes in the execution context and physical environment. We argue that physically mobile applications benefit from the use of self organisation primitives. We show that a component model that incorporates code mobility primitives assists in building self organising mobile systems. We present satin, a lightweight component model, which represents a mobile system as a set of interoperable local components. The model supports reconfiguration, by offering code migration services. We discuss an implementation of the satin middleware, based on the component model and evaluate our work by adapting existing open source software as satin components and by building and testing a system that manages the dynamic update of components on mobile hosts.

[1]  D. B. Davis,et al.  Sun Microsystems Inc. , 1993 .

[2]  Robert Grimm,et al.  A system architecture for pervasive computing , 2000, ACM SIGOPS European Workshop.

[3]  Richard S. Hall,et al.  Beanome: A Component Model for the OSGi Framework , 2002 .

[4]  Cecilia Mascolo,et al.  Towards a mobile computing middleware: Synergy of reflection and mobile code techniques , 2001, Proceedings Eighth IEEE Workshop on Future Trends of Distributed Computing Systems. FTDCS 2001.

[5]  Arun K. Sood Proceedings of the 1990 ACM annual conference on Cooperation , 1990 .

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

[7]  Cecilia Mascolo,et al.  Adaptable Mobile Applications: Exploiting Logical Mobility in Mobile Computing , 2003, MATA.

[8]  Dale Rogerson,et al.  Inside COM , 1997 .

[9]  Pierre Verbaeten,et al.  Self-adapting concurrency: the DMonA architecture , 2002, WOSS '02.

[10]  S Zachariadis,et al.  Adaptable mobile applications through SATIN: exploiting logical mobilityin mobile computing middleware , 2003 .

[11]  Philippe Mathieu,et al.  Dynamic organization of multi-agent systems , 2002, AAMAS '02.

[12]  Wolfgang Emmerich,et al.  Engineering Distributed Objects , 2000, Lecture Notes in Computer Science.

[13]  Ian Murdock,et al.  Overview of the Debian GNU/Linux System , 1994 .

[14]  Fabio Kon,et al.  Reflective Middleware: From Your Desk to Your Hand , 2001, IEEE Distributed Syst. Online.

[15]  Cecilia Mascolo,et al.  CARISMA: Context-Aware Reflective mIddleware System for Mobile Applications , 2003, IEEE Trans. Software Eng..

[16]  David Garlan,et al.  Proceedings of the first workshop on Self-healing systems , 2002, Fast Software Encryption Workshop.

[17]  Amy L. Murphy,et al.  LIME: a middleware for physical and logical mobility , 2001, Proceedings 21st International Conference on Distributed Computing Systems.

[18]  Richard Monson-Haefel,et al.  Enterprise JavaBeans , 1999, Java series.

[19]  Cecilia Mascolo,et al.  Exploiting logical mobility in mobile computing middleware , 2002, Proceedings 22nd International Conference on Distributed Computing Systems Workshops.

[20]  Richard S. Hall,et al.  Autonomous adaptation to dynamic availability using a service-oriented component model , 2004, Proceedings. 26th International Conference on Software Engineering.

[21]  Richard S. Hall,et al.  A cooperative approach to support software deployment using the Software Dock , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[22]  Israel Ben-Shaul,et al.  Dynamic layout of distributed applications in FarGo , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[23]  Chang Jun CORBA Component Model , 2003 .

[24]  Gian Pietro Picco,et al.  Understanding code mobility , 1998, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

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

[26]  E. Horlait Mobile Agents for Telecommunication Applications , 2003, Lecture Notes in Computer Science.

[27]  H. Van Dyke Parunak,et al.  Entropy and self-organization in multi-agent systems , 2001, AGENTS '01.

[28]  Alois Ferscha,et al.  A light-weight component model for peer-to-peer applications , 2004, 24th International Conference on Distributed Computing Systems Workshops, 2004. Proceedings..

[29]  Gregor Schiele,et al.  PCOM - a component system for pervasive computing , 2004, Second IEEE Annual Conference on Pervasive Computing and Communications, 2004. Proceedings of the.

[30]  June Power Distributed systems and self-organization , 1990, CSC '90.

[31]  G.S. Blair,et al.  Middleware awareness in mobile computing , 2003, 23rd International Conference on Distributed Computing Systems Workshops, 2003. Proceedings..

[32]  Gian Pietro Picco,et al.  Peer-to-peer for collaborative applications , 2002, Proceedings 22nd International Conference on Distributed Computing Systems Workshops.