thesis

Gestion des déconnexions pour applications réparties à base de composants en environnements mobiles

Defense date:

Jan. 1, 2005

Edit

Disciplines:

Authors:

Directors:

Abstract EN:

Last years have been marked by a rapid evolution in computer networks and machines used in distributed environments. This evolution has opened up new opportunities for mobile computing. Mobile computing allows a mobile user to access various kinds of information at any time and in any place. However, mobile computing raises the problem of data availability in the presence of disconnections. We distinguish two kinds of disconnections : voluntary disconnections and involuntary disconnections. Traditional middleware are mainly connection-oriented programming environments in which a client must maintain a connection to a server. These middleware are inadequate for mobile computing where the resources are unstable (bandwidth, battery, memory. . . ). In addition, the development of distributed applications converges more and more towards the use of componentoriented middleware that better addresses the application complexity by separating functional and extra-functional concerns using the component/container paradigm. The objective of this work is the disconnection management of component-based applications in mobiles environments. The solution consists in maintaining a logical connection between a client and its servers using the concept of disconnected operation. However, the majority of the existing solutions present an " ad hoc " solutions. Indeed, these solutions do not propose a separation between functional concerns and disconnection management. These solutions do not propose a disconnection-aware approach to design distributed applications that have to work in the presence of disconnections. Moreover, the component-oriented paradigm is rarely invested in disconnection management, this last limitation being due to the newness of this model. In this PhD Thesis, we present MADA, a mobile application development approach. In this approach, disconnection management is taken into account when modelling application at the architectural level. Then, we present a middleware service for the software cache management of mobile terminal. We validate the solution using a prototype implemented in Java, for CORBA component-based application, within the DOMINT platform. We also integrate the disconnection management in the containers. Finally, we propose a specification and a Java/CCM implementation of our container using the extensible container model (ECM) of OpenCCM.

Abstract FR:

Ces dernières années ont été marquées par une forte évolution des équipements et des réseaux utilisés dans les environnements mobiles. Cette évolution a abouti à la définition d'une nouvelle thématique : l'informatique mobile. L'informatique mobile offre aux utilisateurs la capacité de pouvoir se déplacer tout en restant connecté aux applications réparties et d'être indépendant de la localisation géographique. Toutefois, l'accès aux applications réparties dans ces environnements soulève le problème de la disponibilité des services en présence des déconnexions. Ces déconnexions peuvent être volontaires ou involontaires. Les principaux intergiciels qui existent aujourd'hui sont inadéquats pour les environnements mobiles où les ressources (bande passante, batterie, mémoire. . . ) peuvent spontanément varier considérablement voire disparaître. Ils sont destinés aux environnements traditionnels relativement statiques dans lesquels les ressources sont disponibles et pratiquement stables. Par ailleurs, la construction d'applications réparties converge de plus en plus vers l'utilisation des intergiciels orientés composants pour gérer la complexité des applications. Le modèle orienté composant offre une meilleure séparation entre les préoccupations fonctionnelles et extrafonctionnelles. Cette séparation est réalisée suivant le paradigme composant/conteneur. Cette thèse s'intéresse à la gestion des déconnexions pour applications réparties à base de composants dans les environnements mobiles. La solution consiste à maintenir une connexion logique en utilisant le concept d'opération déconnectée. Cependant, la plupart des solutions existantes sont souvent des réponses " ad hoc ". En effet, ces solutions ne proposent pas une séparation entre les préoccupations fonctionnelles de l'application et la gestion des déconnexions. Cette contrainte limite les possibilités de maintenance, de réutilisation et de reconfiguration. Ces solutions ne proposent pas non plus de modèle de conception d'applications réparties devant fonctionner en présence des déconnexions. Enfin, le modèle orienté composant est peu investi dans la gestion des déconnexions, cette dernière limitation étant due à la nouveauté de ce modèle. Dans cette thèse, nous présentons MADA, une approche de conception d'applications réparties pour le fonctionnement en présence des déconnexions qui suit l'approche MDA. Dans cette approche, la gestion des déconnexions est abordée dès la modélisation de l'application. Ensuite, nous présentons un service intergiciel pour la gestion du cache du terminal mobile. Nous validons la solution proposée à l'aide d'un prototype réalisé en Java, pour application à base de composants CORBA, dans le cadre du canevas logiciel DOMINT. Nous proposons aussi d'intégrer la gestion des déconnexions dans les conteneurs des composants. En nous basant sur le modèle du conteneur extensible (ECM) de OpenCCM, nous proposons une spécification et une réalisation Java/CCM de notre conteneur.