Back to Search Start Over

Models, tools and execution platform for building dynamic service-based applications

Authors :
Moreno, Diana
Environnements et outils pour le Génie Logiciel Industriel (ADELE)
Laboratoire d'Informatique de Grenoble (LIG)
Institut polytechnique de Grenoble - Grenoble Institute of Technology (Grenoble INP )-Institut National Polytechnique de Grenoble (INPG)-Centre National de la Recherche Scientifique (CNRS)-Université Pierre Mendès France - Grenoble 2 (UPMF)-Université Joseph Fourier - Grenoble 1 (UJF)-Institut polytechnique de Grenoble - Grenoble Institute of Technology (Grenoble INP )-Institut National Polytechnique de Grenoble (INPG)-Centre National de la Recherche Scientifique (CNRS)-Université Pierre Mendès France - Grenoble 2 (UPMF)-Université Joseph Fourier - Grenoble 1 (UJF)
Université de Grenoble
Estublier Jacky(jacky.estublier@imag.fr)
Source :
Génie logiciel [cs.SE]. Université de Grenoble, 2013. Français
Publication Year :
2013
Publisher :
HAL CCSD, 2013.

Abstract

The growth of the Internet and the evolution of communicating devices have allow the integration of the computer world and the real world, paving the way for developing new types of applications such as pervasive and ubiquitous ones. These applications must run in heterogeneous, distributed and open environments that evolve constantly. In such environments, the availability of services and devices, the preferences and location of users may change at any time during the execution of applications. The variability of the execution context makes the execution of an application dependent on the available services and devices. Building applications capable of evolving dynamically to their execution context is a challenging task. In fact, the architecture of such an application cannot be fully known nor statically specified at design, development or deployment times. It is then needed to redefine the concept of dynamic application in order to cover the design, development, execution and management phases, and to enable thus the dynamic construction and evolution of applications. In this dissertation, we propose a model-driven approach for the design, development and execution of dynamic applications. We defined a component service model that considers dynamic properties within a component model. This model allows defining an application by its intention (its goal) through a set of composition properties, constraints and preferences. An application is thus specified in an abstract way, which allows controlling its gradual composition during development and execution times. Our approach aims to blur the boundary between development-time and runtime. Thus, the same model and the same composition mechanisms are used from design to runtime. At runtime, the composition process considers also the services available in the execution platform in order to compose applications opportunistically; and the variability of the execution context in order to adapt compositions dynamically. We implemented our approach through a prototype named COMPASS, which relies on the CADSE platform for building software design and development environments, and on the APAM platform for building an execution environment for dynamic service-based applications.; L'essor de l'Internet et l'évolution des dispositifs communicants ont permis l'intégration du monde informatique et du monde réel, ouvrant ainsi la voie à de nouveaux types d'applications, tels que les applications ubiquitaires et pervasives. Ces applications doivent s'exécuter dans des contextes hétérogènes, distribués et ouverts qui sont en constante évolution. Dans de tels contextes, la disponibilité des services et des dispositifs, les préférences et la localisation des utilisateurs peuvent varier à tout moment pendant l'exécution des applications. La variabilité des contextes d'exécution fait que l'exécution d'une application dépend, par exemple, des services disponibles ou des dispositifs accessibles à l'exécution. En conséquence, l'architecture d'une telle application ne peut pas être connue statiquement à la conception, au développement ou au déploiement, ce qui impose de redéfinir ce qu'est une application dynamique : comment la concevoir, la développer, l'exécuter et la gérer à l'exécution. Dans cette thèse, nous proposons une approche dirigée par les modèles pour la conception, le développement et l'exécution d'applications dynamiques. Pour cela, nous avons défini un modèle de composants à services permettant d'introduire des propriétés de dynamisme au sein d'un modèle de composants. Ce modèle permet de définir une application en intention, par un ensemble de propriétés, de contraintes et de préférences de composition. Une application est ainsi spécifiée de façon abstraite ce qui permet de contrôler la composition graduelle de l'application lors de son développement et de son exécution. Notre approche vise à effacer la frontière entre les activités effectuées avant et pendant l'exécution des applications. Pour ce faire, le même modèle et les mêmes mécanismes de composition sont utilisés de la conception jusqu'à l'exécution des applications. A l'exécution, le processus de composition considère, en plus, les services disponibles dans la plate-forme d'exécution permettant la composition opportuniste des applications ; ainsi que la variabilité du contexte d'exécution permettant l'adaptation dynamique des compositions. Nous avons mis en oeuvre notre approche à travers le prototype nommé COMPASS, qui s'appuie sur les plates-formes CADSE pour la réalisation d'environnements logiciels de conception et de développement, et APAM pour la réalisation d'un environnement d'exécution d'applications à services dynamiques.

Details

Language :
French
Database :
OpenAIRE
Journal :
Génie logiciel [cs.SE]. Université de Grenoble, 2013. Français
Accession number :
edsair.dedup.wf.001..39c55593a3167995a00b5480aebd0880