WComp, a Middleware for Ubiquitous Computing

Ubiquitous computing relies on computers present everywhere, at any times and in any things. Indeed with recent years advance in mobile communication technologies and the miniaturization of computer hardware, processing units are becoming invisible and a part of the environment. Middlewares for ubiquitous computing have to manage three main features specific to their environment: devices’ mobility, devices’ heterogeneity and environment’s dynamicity. The devices’ mobility, due to motion of users and their associated devices, forbids to assume that entities are known and will always be available. The second concept, entity’s heterogeneity, outlines the diversity between devices’ capabilities and functionalities provided by new smart objects. Finally, the environment high dynamicity illustrates the ubiquitous world entropy with the appearance and disappearance of devices. Devices used to create applications are thus unknown before discovering them. Then, ubiquitous computing must deal with such a dynamic software environment (called software infrastructure afterwards). As a result, future ubiquitous computing architectures must take into account those three constraints to solve ubiquitous computing challenges. Our model of middlewareWComp is based on three parts: a software infrastructure, a service composition architecture, and a compositional adaptation mechanism. To manage the dynamicity and heterogeneity of entities in the software infrastructure, we highlight the use of Web Service Oriented Architecture for Device (WSOAD). This will be discussed in section 2. Ubiquitous applications are then based on a set of Web services for devices that must interact with each other. Consumers can not edit these services. Therefore, in order to add new functionalities to the system, an application has to be a composition of services for devices. Such an application, and thus such a composition, must be modifiable at runtime. The second part of the WComp middleware enables us to make such applications by dynamically composing services from the software infrastructure. To allow reusability of newly created functionalities, and for scalability purposes, such composition can be encapsulated as a composite service. This part of the system will be presented in Section 3. Moreover, the infrastructure of ubiquitous computing applications evolves dynamically led by appearances and disappearances of objects or devices. The variation of this infrastructure is dynamic due to arbitrary node mobility, failures or energy constraints. The service composition must be as relevant as possible according to the underlying software infrastructure. Managing these

[1]  Vincent Lenders,et al.  Mini : A Minimal Platform Comparable to Jini for Ubiquitous Computing , 2002 .

[2]  Silvia E. Gordillo,et al.  Aspect-Based Adaptation for Ubiquitous Software , 2003, Mobile HCI Workshop on Mobile and Ubiquitous Information Access.

[3]  Mónica Pinto,et al.  A Dynamic Component and Aspect-Oriented Platform , 2005, Comput. J..

[4]  Kai Qian,et al.  Component-Oriented Programming , 2005 .

[5]  Erik Guttman,et al.  Service Location Protocol: Automatic Discovery of IP Network Services , 1999, IEEE Internet Comput..

[6]  Gordon S. Blair,et al.  An Efficient Component Model for the Construction of Adaptive Middleware , 2001, Middleware.

[7]  Paolo Traverso,et al.  Service Discovery in Pervasive Computing Environments , 2009 .

[8]  Stephan Preuß JESA Service Discovery Protocol , 2002, NETWORKING.

[9]  Michel Riveill,et al.  Langage d'aspects pour la composition dynamique de composants embarqués , 2006, Obj. Logiciel Base données Réseaux.

[10]  Michel Riveill,et al.  SLCA, composite services for ubiquitous computing , 2008, Mobility '08.

[11]  Munindar P. Singh,et al.  Service-Oriented Computing: Semantics, Processes, Agents , 2010 .

[12]  Dirk Timmermann,et al.  Time and energy efficient service discovery in Bluetooth , 2003, The 57th IEEE Semiannual Vehicular Technology Conference, 2003. VTC 2003-Spring..

[13]  Harry Chen,et al.  Service Discovery in the Future Electronic Market , 2000, AAAI 2000.

[14]  George C. Polyzos,et al.  Service discovery for mobile Ad Hoc networks: a survey of issues and techniques , 2008, IEEE Communications Surveys & Tutorials.

[15]  Philippe Lalanda,et al.  Pervasive Service Composition in the Home Network , 2007, 21st International Conference on Advanced Information Networking and Applications (AINA '07).

[16]  Daniel G. Bobrow,et al.  Book review: The Art of the MetaObject Protocol By Gregor Kiczales, Jim des Rivieres, Daniel G. and Bobrow(MIT Press, 1991) , 1991, SGAR.

[17]  Jan Bosch,et al.  Component-Oriented Programming , 2006, ECOOP Workshops.

[18]  Mira Mezini,et al.  Aspect-Oriented Web Service Composition with AO4BPEL , 2004, ECOWS.

[19]  Michel Riveill,et al.  Lightweight Service Oriented Architecture for Pervasive Computing , 2009, ArXiv.

[20]  Robert Englander Developing Java Beans , 1997 .

[21]  Francis G. McCabe,et al.  Reference Model for Service Oriented Architecture 1.0 , 2006 .

[22]  Gregor Kiczales,et al.  Aspect-oriented programming , 1996, CSUR.

[23]  Timothy W. Finin,et al.  Service Composition for Mobile Environments , 2005, Mob. Networks Appl..

[24]  Michel Riveill,et al.  Context adaptative systems based on horizontal architecture for ubiquitous computing , 2009, Mobility Conference.

[25]  Laurent Vercouter,et al.  Flexible Composition of Smart Device Services , 2005, PSC.

[26]  Rémi Douence,et al.  A model and a tool for Event-based Aspect-Oriented Programming (EAOP) , 2002 .

[27]  Richard S. Hall,et al.  Dynamically Adaptable Applications with iPOJO Service Components , 2007, SC@ETAPS.

[28]  Valérie Issarny,et al.  Architecting Pervasive Computing Systems for Privacy: A Survey , 2007, 2007 Working IEEE/IFIP Conference on Software Architecture (WICSA'07).

[29]  Thomas Ledoux,et al.  An Aspect-Oriented Approach for Developing Self-Adaptive Fractal Components , 2006, SC@ETAPS.

[30]  Steve Vinoski,et al.  CORBA: integrating diverse applications within distributed heterogeneous environments , 1997, IEEE Commun. Mag..

[31]  Jean-Yves Tigli,et al.  Adaptation dynamique d'assemblages de dispositifs dirigée par des modèles , 2013 .

[32]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[33]  Magnus Larsson,et al.  Component-Based and Service-Oriented Software Engineering: Key Concepts and Principles , 2007, 33rd EUROMICRO Conference on Software Engineering and Advanced Applications (EUROMICRO 2007).

[34]  David M. Booth,et al.  Web Services Architecture , 2004 .

[35]  Mike P. Papazoglou,et al.  Service-oriented computing: concepts, characteristics and directions , 2003, Proceedings of the Fourth International Conference on Web Information Systems Engineering, 2003. WISE 2003..

[36]  Daniel Cheung-Foo-Wo,et al.  Adaptation dynamique par tissage d'aspects d'assemblage. (Dynamic adaptation by weaving aspects of assembly) , 2009 .

[37]  Jim Waldo,et al.  The Jini Specification , 1999 .

[38]  Karsten Schwan,et al.  Scalable Directory Services Using Proactivity , 2002, ACM/IEEE SC 2002 Conference (SC'02).

[39]  James L. Crowley,et al.  Perceptual user interfaces: things that see , 2000, CACM.

[40]  K. M. Hansen,et al.  A Survey of Service Composition Mechanisms in Ubiquitous Computing , 2007 .