Le développement d'applications pour l'informatique pervasive présente un certain nombre de défis pour l'ingénierie des logiciels. En particulier, l'adaptation des applications sensibles au contexte : adaptation à l’environnement (localisation, temps, condition, …), à la connectivité (débit, protocole, …), aux limitations de l'appareil (écran, format de média, …) et même à l’utilisateur (handicap physique, capacité, …). Dans ce contexte où le multimédia, la mobilité des utilisateurs et l'ubiquité des applications se généralisent, les fournisseurs de logiciel souhaitent offrir des applications adaptables (sensibles au contexte). Beaucoup d’efforts ont été consacrés à l’assemblage et au réassemblage de composants, ainsi qu’à l’adaptation fonctionnelle par remplacement ou reconfiguration des composants afin de satisfaire le nouveau besoin ou le nouveau contexte. La problématique que nous abordons dans cette thèse est celle de l’hétérogénéité comportementale ou sémantique des composants. L’objectif est de fournir des mécanismes permettant l’adaptation des flux de données multimédia dans des applications basées composants. Pour cela, l’architecture doit être capable de vérifier la possibilité d’assemblage des composants à partir de leurs manifestes (un manifeste doit contenir les informations techniques d’un composant). L’assemblage peut ne pas se faire pour deux raisons : incompatibilité fonctionnelle et/ou comportementale. Notre travail porte sur la deuxième raison, dans le cas où les interfaces d’un composant ne seront pas compatibles avec celles des composants voisins. Par exemple un composant fournit des images de type PNG, alors que l’autre n’accepte que des images JPEG. La mise en évidence de l’interopérabilité des composants dans un assemblage est une nécessité dans de telles approches. En effet, les architectures logicielles valident les aspects fonctionnels, ce qui n’est pas suffisant pour garantir un assemblage réaliste et remédier aux problèmes d’hétérogénéité des flux de données échangés. Nous proposons, pour mettre en évidence l’interopérabilité et permettre de trouver des solutions aux problèmes d’hétérogénéité, une approche basée modèle appelée MMSA (Meta-model for MultiMedia Software Architecture). Elle permet la description d’architectures logicielles exprimant un système logiciel comme une collection de composants qui manipulent différents types et formats de données et qui interagissent par l’intermédiaire de connecteurs d’adaptation. Nous définissons aussi un profil UML 2.0 pour exprimer et modéliser les nouveaux concepts et contraintes du méta modèle MMSA. La transition vers un profil UML est assurée par les mécanismes d'extension fournis par UML 2.0 afin d'améliorer la vérification et la cohérence des architectures décrites en MMSA. Nous proposons pour assurer la cohérence des applications vis à vis des changements du contexte, une plate-forme d’adaptation dynamique. Cette plate-forme surveille et contrôle l’exécution des applications multimédia afin de détecter les changements éventuels du contexte. En cas d’un changement, la plate-forme cherche les solutions possibles et prend la décision adéquate pour l’adaptation de l’application au nouveau contexte. Ensuite, la plate-forme cherche et choisit les services d’adaptation nécessaires afin de les intégrer dans des connecteurs d’adaptation et les réassembler avec les composants métiers de l’application. Afin d’examiner la projection de MMSA en UML 2.0, les contraintes OCL ont été évaluées dynamiquement sur un modèle de système de surveillance. Nous proposons aux architectes logiciels, un outil qui donne la possibilité de vérifier le modèle d’architecture à chaque modification afin d’assurer sa cohérence structurelle et sémantique. Les différents tests et validations effectués sur les modèles d’architecture garantissent parfaitement notre projection. / The development of applications for pervasive computing presents a number of challenges for software engineering. In particular, the adaptation of context-aware applications: adapting to the environment (location, time, condition, etc.), connectivity (bit-rate, protocol, etc.), the limitations of the device (screen size media ...) and even the user (physical handicaps, ability, etc.). The programmer is always faced with a complex combination of factors that occur throughout the application. In this context where the multimedia, the mobility of user and the ubiquitous application generalizes, providers want to offer adaptable software applications (context sensitive). Much effort has been devoted to assembly and reassembly of components, thus to the functional adaptation by replacement or reconfiguration of the components in order to satisfy the new need or the new context. The problem we tackle in this thesis is that of semantic and behavioral heterogeneity of components. The objective is to provide mechanisms for adapting multimedia data flows in applications based components, i.e. ensuring the assembly of heterogeneous components. For this, the architecture must be able to check the possibility of assembling components from the manifest (a manifest must contain the technical information of component). The assembly may not accept for two reasons: functional and/or behavioral incompatibility. Our work focuses on the second reason, in case the interfaces of component will not be compatible with the interfaces of adjacent components. For example, it provides images of PNG type, while the other accepts only JPEG images. The taken into account of components interoperability in an assembly is a necessity in such approaches. Indeed, software architectures validate the functional aspects, which is not sufficient to ensure a realistic assembly and to remedy the problems of heterogeneous of data flow exchanged. We propose to take into account the interoperability and to find solutions to problems of heterogeneity, an approach called model MMSA (Meta-Model for Multimedia Software Architecture). It allows the description of software architectures expressing a software system as a collection of components that handle various data types and formats and which interact through connectors to adaptation. We also define a UML 2.0 profile to express and model the new concepts and constraints of MMSA meta-model. The transition to a UML profile is provided by the extension mechanisms provided by UML 2.0 in order to improve the verification and consistency of architectures described in MMSA. We propose for ensure the coherence of applications aim at screw of changing context, a platform of dynamic adaptations. The dynamic adaptation is the process by which a software application is modified in order to take into account a change, be it level of the environment or the application itself, the platform monitors and controls the execution of multimedia applications to detect any change of context. In the event of a change, the platform seeks the possible solutions and takes the appropriate decision to adapt the application to the new context. Then, the platform seeks and selected the services of adaptation necessary in order to integrate them in connectors of adaptation and reassembled with the business components of application. In order to examine the projection of MMSA in UML 2.0, the OCL constraints were dynamically evaluated on a model of monitoring system. We have proposed to the software architects, a tool which gives the possibility of checking the model of architecture to each modification in order to ensure its structural and semantic coherence. The various tests and validations carried out on the models of architecture guarantee our projection perfectly. This visual model supports the creation and the management of models MMSA for software applications.
Identifer | oai:union.ndltd.org:theses.fr/2012PAUU3045 |
Date | 12 February 2012 |
Creators | Derdour, Makhlouf |
Contributors | Pau, Université Badji Mokhtar-Annaba, Roose, Philippe |
Source Sets | Dépôt national des thèses électroniques françaises |
Language | French |
Detected Language | French |
Type | Electronic Thesis or Dissertation, Text |
Page generated in 0.0021 seconds