Spelling suggestions: "subject:"ingénierie dirigées para les modèles,"" "subject:"ingénieries dirigées para les modèles,""
51 |
Model-driven software engineering for virtual machine images provisioning in cloud computing / L'ingénierie de logiciel dirigée par les modèles pour l'approvisionnement des images de machines virtuelles dans le cloud computingLe, Nhan Tam 10 December 2013 (has links)
La couche Infrastructure- as-a-Service (IaaS) de Cloud Computing offre un service de déploiement des images de machines virtuelles (VMIs) à la demande. Ce service fournit une plate-forme flexible pour les utilisateurs de cloud computing pour développer , déployer et tester leurs applications. Le déploiement d'une VMI implique généralement le démarrage de l'image, l'installation et la configuration des paquets de logiciels. Dans l'approche traditionnelle, lorsqu'un utilisateur de cloud demande une nouvelle plate-forme, le fournisseur de cloud sélectionne une image de modèle approprié pour cloner et déployer sur les nœuds de cloud. L'image de modèle contient des paquets de logiciel pré-installés. Si elle ne correspond pas aux exigences, alors elle sera personnalisée ou la nouvelle image sera créé à partir de zéro pour s'adapter à la demande. Dans le cadre de la gestion des services de cloud, l'approche traditionnelle face aux questions difficiles de la manipulation de la complexité de l'interdépendance entre les paquets de logiciel, mise à l'échelle et le maintien de l' image déployée à l'exécution. Les fournisseurs de cloud souhaitent automatiser ce processus pour améliorer la performance de processus d'approvisionnement des VMIs, et de donner aux utilisateurs de cloud plus de flexibilité pour la sélection ou la création des images appropriées, tout en maximisant les avantages pour les fournisseurs en termes de temps, de ressources et de coût opérationnel. Cette thèse propose une approche pour gérer l'interdépendance des paquets de logiciels, pour modéliser et automatiser le processus de déploiement VMIs, et pour soutenir la reconfiguration VMIS à l'exécution, appelée l'approche dirigée par les modèle (Model-Driven approach). Nous nous adressons particulièrement aux défis suivants: (1) la modélisation de la variabilité des configurations d'image de machine virtuelle, (2) la réduction la quantité de transfert de données à travers le réseau, (3) l'optimisation de la consommation d'énergie des machines virtuelles; (4) la facilité à utiliser pour les utilisateurs de cloud; (5) l'automatisation du déploiement des VMIs; (6) le support de la mise à l'échelle et la reconfiguration de VMIS à l'exécution; (7) la manipulation de la topologie de déploiement complexe des VMIs . Dans notre approche, nous utilisons des techniques d'ingénierie dirigée par les modèles pour modéliser les représentations d'abstraction des configurations de VMI, le déploiement et les processus de reconfiguration d'image de machine virtuelle. Nous considérons que les VMIS comme une gamme de produits et utiliser les modèles de caractère pour représenter les configurations de VMIs. Nous définissons également le déploiement, les processus de reconfiguration et leurs facteurs (par exemple: les images de machines virtuelles, les paquets de logiciel, la plate-forme, la topologie de déploiement, etc.) comme les modèles. D'autre part, l'approche dirigée par les modèles s'appuie sur les abstractions de haut niveau de la configuration de VMIs et le déploiement de VMIs pour rendre la gestion d'images virtuelles dans le processus d'approvisionnement pour être plus flexible et plus facile que les approches traditionnelles. / The Cloud Computing Infastructure-as-a-Service (IaaS) layer provides a service for on demand virtual machine images (VMIs) deployment. This service provides a flexible platform for cloud users to develop, deploy, and test their applications. The deployment of a VMI typically involves booting the image, installing and configuring the software packages. In the traditional approach, when a cloud user requests a new platform, the cloud provider selects an appropriate template image for cloning and deploying on the cloud nodes. The template image contains pre-installed software packages. If it does not fit the requirements, then it will be customized or the new one will be created from scratch to fit the request. In the context of cloud service management, the traditional approach faces the difficult issues of handling the complexity of interdependency between software packages, scaling and maintaining the deployed image at runtime. The cloud providers would like to automate this process to improve the performance of the VMIs provisioning process, and to give the cloud users more flexibility for selecting or creating the appropriate images while maximizing the benefits for providers intern of time, resources and operational cost. This thesis proposes an approach to manage the interdependency of the software packages, to model and automate the VMIs deployment process, to support the VMIs reconfiguration at runtime, called the Model-Driven approach. We particularly address the following challenges: (1) modeling the variability of virtual machine image configurations; (2) reducing the amount of data transfer through the network; (3) optimizing the power consumption of virtual machines; (4) easy-to-use for cloud users; (5) automating the deployment of VMIs; (6) supporting the scaling and reconfiguration of VMIs at runtime; (7) handling the complex deployment topology of VMIs. In our approach, we use Model-Driven Engineering techniques to model the abstraction representations of the VMI configurations, the deployment and the reconfiguration processes of virtual machine image. We consider the VMIs as a product line and use the feature models to represent the VMIs configurations. We also define the deployment, re-configuration processes and their factors (e.g. virtual machine images, software packages, platform, deployment topology, etc.) as the models. On the other hand, the Model-Driven approach relies on the high-level abstractions of the VMIs configuration and the VMIs deployment to make the management of virtual images in the provisioning process to be more flexible and easier than traditional approaches.
|
52 |
Approche systématique basée sur fUML pour formaliser la sémantique d’exécution des profils UML / A Systematic Approach based on fUML to Formalize UML Profiles Execution SemanticsTatibouët, Jérémie 16 October 2014 (has links)
Les profils permettent de customiser UML pour un domaine particulier. Cette customisation se fait par l’ajout de concepts (stéréotypes) relatifs au domaine, l’ajout de contraintes sur ces concepts ainsi que la résolution de points de variation sémantiques. Il existe un processus établit et documenté dans l’état de l’art permettant de construire la syntaxe de ces langages basés sur UML. En revanche, ce processus ne couvre pas l’aspect formalisation de la sémantique et les propositions issues de l’état de l’art ne présentent pas d’approches systématiques pour traiter ce problème.La formalisation de la sémantique est un point essentiel de la construction d’un langage car elle permet de donner le sens des constructions syntaxiques. Pour être efficace, la formalisation de la sémantique d’un langage doit être menée conjointement à une action de normalisation. L’intérêt d’avoir une sémantique formelle et standard pour un langage est qu’elle permet aux modèles définis dans ce langage d’être exploités (analyse, exécution, simulation, etc.) de manière équivalente entre les outils. Cette équivalence permet aux utilisateurs d’observer des interprétations identiques d’un même modèle entre différents outils et donc d’avoir une compréhension commune du modèle et de la sémantique associée. Dans le contexte des profils, les actions de normalisations menées par l’OMG se concentrent exclusivement sur la syntaxe et la formalisation de la sémantique est négligée. Nous proposons de répondre à ce problème en nous appuyant sur les spécifications fUML et PSCS qui définissent une sémantique normative pour un sous-ensemble d’UML.Dans un premier temps, nous définissons deux méthodologies alternatives s’appuyant sur ces standards permettant de formaliser la sémantique d’exécution d’un profil UML. Dans la première méthodologie la sémantique d’exécution d’un profil est formalisée au niveau du modèle de domaine. La forme exécutable d’un modèle applicatif profilé est obtenue par transformation de modèle. Dans la seconde méthodologie, la sémantique est définie directement pour le profil. Le modèle qui la formalise est une extension du modèle sémantique de fUML/PSCS formalisée avec fUML. Les modèles sémantiques obtenus sont conformes à fUML ce qui les rend par construction exécutables et directement exploitables dans n’importe quel outil implantant les normes UML et fUML. Dans un deuxième temps, nous comparons nos approches sur la base de trois critères : l’effort de modélisation requis pour produire le modèle sémantique, la préservation de la sémantique de base d’UML définie par fUML/PSCS et la possibilité d’identifier rapidement les relations entre les stéréotypes et leurs sémantiques. Cette comparaison, nous permet de montrer la capacité de notre seconde méthodologie à prendre en compte des extensions clefs de la sémantique de base d’UML dans le contexte des profils. Ces éléments clefs sont : la délégation du contrôle, l’instanciation et les communications. L’ensemble de nos contributions ont été outillées dans le contexte de l’outil d’exécution de modèles MOKA qui est intégré au modeleur UML/SysML Papyrus. / UML profiles enable the UML to be tailored to a particular domain. To do so, a profile adds domain specific concepts (i.e., stereotypes) and constraints to UML and disambiguates specific semantic variation points. The design process for abstract syntax of profiles is well documented in the literature. However, specification of the semantics is neglected. According to our researches, there are no proposals in the state-of-the-art that define a systematic approach to solve this problem.Semantic formalization is a key point of language design. It enables to formally define the meaning of syntactic elements. In order to be efficient, the formalization activity must be realized in parallel with a standardization activity. The interest to have a language with a formal standardized semantic is to enable models defined using this latter to be interpreted (analysis, execution, simulation) in equivalent way between tools implementing the semantics. This equivalence enables users to observe similar interpretations of the same model between different tools and therefore to have a shared understanding of this model and the associated semantic.In the context of UML profiles, normalization activities leaded by the OMG are focused on the syntax. The semantic formalization aspect is neglected. We propose to address this problem by relying on fUML and PSCS OMG (Object Management Group) specifications. These standards formalize execution semantics for a subset of UML (classes, composite structures, and activities).Firstly, we define two methodologies relying on these standards to formalize execution semantics of UML profiles execution semantics. The first methodology defines the execution semantics for the domain model underlying the profile. The executable form of an applicative model defined using the profile is obtained by model transformation. In the second methodology, semantics are defined directly for the profile by extending the semantic model of fUML/PSCS using fUML. By being conform to fUML, the semantic model is by construction executable and can be directly used in any tools implementing the UML and fUML standards.Secondly, we compare our approaches against the following criteria: the modelling effort required to build the semantic model, the capability of the methodology to preserve the UML semantics (i.e., the one defined by fUML/PSCS) and the capability to identify clearly the relationships between the stereotypes and their semantics. This comparison enables us to demonstrate the capacity of the second methodology to define key extensions of the UML semantics in the context of a profile. These latter are: the control delegation, the instantiation, and the communications. The contributions have been implemented in our model execution framework Moka which is integrated in the open-source UML/SysML modeling tool Papyrus.
|
53 |
Conception d’interfaces adaptatives basée sur l’ingénierie dirigée par les modèles pour le support à la coordination / Model driven adaptive interface design for coordination supportAltenburger, Thomas 12 December 2013 (has links)
De nos jours, nous vivons dans un monde d'interactions. Nous sommes entourés d'appareils électroniques susceptibles de compliquer ces interactions. De plus, les utilisateurs sont dorénavant mobiles et évoluent dans des environnements changeant. Vis-à-vis de la collaboration, ces conditions peuvent inhiber la productivité. Ce projet de thèse vise à proposer des méthodes pour la conception d'interfaces utilisateur capables de tenir compte du contexte à travers l'utilisation d'interfaces adaptatives. La contribution principale de cette thèse consiste en un cadre de référence dirigé par les modèles pour la conception et l'exécution d'interfaces utilisateur adaptatives supportant des mécanismes de coordination (i.e. flux de travaux, conscience de groupe). La proposition se présente sous deux aspects : Un cadre méthodologique pour l'aide è la conception d'interfaces supportant la coordination. Il consiste essentiellement en l'emploi de méthodes de modélisation d'exigences métier via un processus itératif ; Un cadre technologique qui repose sur l'ingénierie basée sur les modèles pour permettre la génération et l'exécution d'interfaces utilisateur adaptatives. Il se base sur une architecture orientée widgets pour le support de la conscience de groupe afin de promouvoir la coordination / Nowadays, we live in a world of interactions. We are surrounded by electronic devices which tend to complexify user interactions. Moreover, users are now mobile and evolve in ever changing environments. Regarding collaboration, these conditions may inhibit productivity. This PhD aims to propose design methods for user interfaces able to consider the context through the use of adaptive user interfaces. The main contribution of this thesis consists in a model-driven reference framework for the design and the execution of adaptive user interfaces supporting coordination mecanisms (i.e. workflow, group awareness). The proposition is composed of these two facets: A methodologic framework to assist in the design of user interfaces supporting coordination. It consists in the use of iterative modelisation methods for requirements engineering; A technological framework which relies on model-based engineering to allow the generation and execution of adaptive user interfaces. It makes use of widget-based architecture to support group awareness in order to promote coordination
|
54 |
Contribution à la mise en oeuvre d'un moteur d'exécution de modèles UML pour la simulation d'applications temporisées et concurrentes. / Contribution to the realization of an UML execution engine for simulating timed and concurrent applicationsBenyahia, Abderraouf 26 November 2012 (has links)
L'Ingénierie Dirigée par les Modèles (IDM) place les modèles au cœur des processus de d'ingénierie logicielle et système. L'IDM permet de maitriser la complexité des logiciels et d'améliorer la rapidité et la qualité des processus de développement. Le Model Driven Architecture (MDA) est une initiative de l'Object Management Group (OMG) définissant un cadre conceptuel, méthodologique et technologique pour la mise-en-œuvre de flots de conception basés sur l'IDM. Le MDA s'appuie particulièrement sur une utilisation intensive des formalismes normalisés par l'OMG pour la mise-en-œuvre des flots IDM (UML pour la modélisation, QVT pour les transformations, etc.). Ce travail s'intéresse à la sémantique d'exécution du langage UML appliqué à l'exécution de modèles des applications temps réel embarquées. Dans ce contexte, l'OMG propose une norme qui définit un modèle d'exécution pour un sous-ensemble d'UML appelé fUML (foundational UML subset). Ce modèle d'exécution définit une sémantique précise non ambigüe facilitant la transformation de modèles, l'analyse, l'exécution de modèles et la génération de code. L'objectif de cette thèse est d'étudier et mettre-en-œuvre un moteur d'exécution de modèles UML pour les systèmes temps réel embarqués en explicitant les hypothèses portant sur la sémantique d'exécution des modèles à un niveau d'abstraction élevé afin de permettre l'exécution d'un modèle le plus tôt possible dans le flot de conception de l'application. Pour cela, nous avons étendu le modèle d'exécution défini dans fUML, en apportant une contribution sur trois aspects importants concernant les systèmes temps réel embarqués : * Gestion de la concurrence: fUML ne fournit aucun mécanisme pour gérer la concurrence dans son moteur d'exécution. Nous répondons à ce problème par l'introduction d'un ordonnanceur explicite permettant de contrôler les différentes exécutions parallèles, tout en fournissant la flexibilité nécessaire pour capturer et simuler différentes politiques d'ordonnancements. * Gestion du temps : fUML ne fixe aucune hypothèse sur la manière dont les informations sur le temps sont capturées ainsi que sur les mécanismes qui les traitent dans le moteur d'exécution. Pour cela, nous introduisons une horloge, en se basant sur le modèle de temps discret, afin de prendre en compte les contraintes temporelles dans les exécutions des modèles. * Gestion des profils : les profils ne sont pas pris en compte par ce standard, cela limite considérablement la personnalisation du moteur d'exécution pour prendre en charge de nouvelles variantes sémantiques. Pour répondre à ce problème, nous ajoutons les mécanismes nécessaires qui permettent l'application des profils et la capture des extensions sémantiques impliquées par l'utilisation d'un profil. Une implémentation de ces différentes extensions est réalisée sous forme d'un plugin Eclipse dans l'outil de modélisation Papyrus UML. / Model Driven Engineering (MDE) places models at the heart of the software engineering process. MDE helps managing the complexity of software systems and improving the quality of the development process. The Model Driven Architecture (MDA) initiative from the Object Management Group (OMG) defines a framework for building design flows in the context of MDE. MDA relies heavily on formalisms which are normalized by the OMG, such as UML for modeling, QVT for model transformations and so on. This work deals with the execution semantics of the UML language applied to embedded real-time applications. In this context, the OMG has a norm which defines an execution model for a subset of UML called fUML (foundational UML subset). This execution model gives a precise semantics to UML models, which can be used for analyzing models, generating code, or verifying transformations. The goal of this PhD thesis is to define and build an execution engine for UML models of embedded real-time systems, which takes into account the explicit hypothesis made by the designer about the execution semantics at a high level of abstraction, in order to be able to execute models as early as possible in the design flow of a system. To achieve this goal, we have extended the fUML execution model along three important axes with regard to embedded real-time systems: - Concurrency: fUML does not provide any mechanism for handling concurrent activities in its execution engine. We address this issue by introducing an explicit scheduler which allows us to control the execution of concurrent tasks. - Time: fUML does not provide any mean to handle time. By adding a clock to the model of execution, we can take into account the elapsed time as well as temporal constraints on the execution of activities. - Profiles: fUML does not take profiles into account, which makes it difficult to personalize the execution engine with new semantic variants. The execution engine we propose allows the use of UML models with profiles, and interprets these profiles as semantic extensions of the execution model. An implementation of these extensions has been realized as an Eclipse plug-in using the Papyrus UML modeling tool.
|
55 |
ORQA : un canevas logiciel pour la gestion de l'énergie dans les véhicules électriques / ORQA : a framework for the energy management in electric vehiclesChristophe-Tchakaloff, Borjan 13 January 2015 (has links)
Les véhicules électriques présentent désormais une alternative crédible aux véhicules équipés demoteurs à combustion interne. Ils sont plus propres et plus confortables à l’utilisation. La gestion del’énergie d’un véhicule électrique est actuellement focalisée sur le fonctionnement du moteur, principalconsommateur d’énergie, sans tenir compte du confort de l’utilisateur.Le travail présenté dans cette thèse intègre la prise en compte des préférences utilisateur au seinde la gestion de l’énergie des véhicules électriques. La contribution est réalisée par un canevas logicielnommé ORQA. Dans un premier temps, les organes du véhicule sont caractérisés par leurs besoinsénergétiques et par les niveaux de qualité de service qu’ils proposent. Un gestionnaire d’énergie estensuite intégré au système logiciel du véhicule. Il se base sur les caractéristiques des organes et propose àl’utilisateur une solution de configuration de trajet prenant en compte ses préférences d’utilisation ainsique d’éventuelles contraintes de temps et d’énergie. Cette solution définit des contraintes d’utilisationsur le moteur et les organes de confort lors du déroulement du trajet.Le gestionnaire d’énergie est exécuté au sein des systèmes embarqués du véhicule dont les platesformessont fortement contraintes. Pour satisfaire celles-ci, il est primordial de proposer une configurationefficace du gestionnaire d’énergie. L’intérêt et la validité de l’approche employée sont démontrésau travers de la comparaison entre la configuration originelle et une configuration optimisée sur deuxvéhicules exemples. / Electric vehicles are nowadays a viable alternative to vehicles built around an internal combustionengine. They offer a cleaner and more comfortable driving thanks to the electric engine. The energymanagement of an electric vehicle is usually focused on the engine operation, the biggest energyconsumer, thus ignoring the user comfort.The contribution presented in this thesis allows for the consideration of the user preferences insidethe energy management of electric vehicles. It takes shape with a framework named ORQA. First,the vehicle devices are characterised by their energy requirements and the quality levels they offer.An energy manager based on the devices characteristics is then integrated into the software systemof the vehicle. The manager offers the user a solution to configure a trip request. The configuration isbased on the usage preferences and optional constraints over duration and consumption. The solutiondefines a set of constraints on the motor and on the comfort-related devices during the trip execution.The energy manager is executed in the embedded systems of the vehicle which platforms are highlyconstrained. Thus, the energy manager’s implementation is optimised to satisfy the execution platformconstraints. The interest and the validity of the chosen approach are attested by the comparison ofthe original configuration and an optimised configuration on two example vehicles.
|
56 |
Adaptation à la volée de situations d'apprentissage modélisées conformément à un langage de modélisation pédagogique / Adapt on the fly learning situations modeled according to a pedagocical modeling languageOuari, Salim 25 November 2011 (has links)
Le travail présenté dans ce mémoire s'inscrit dans le domaine des Environnements Informatiques pour l'Apprentissage Humain (EIAH), plus précisément celui de l'ingénierie des EIAH dans le cadre d'une approche de type « Learning Design ». Cette approche propose de construire des EIAH à partir de la description formelle d'une activité d'apprentissage. Elle suppose l'existence d'un langage de modélisation communément appelé EML (Educational Modelling Language) et d'un moteur capable d'interpréter ce langage. LDL est le langage sur lequel nous avons travaillé, en relation avec l'infrastructure LDI intégrant un moteur d'interprétation de LDL. L'EML est utilisé pour produire un scénario, modèle formel d'une activité d'apprentissage. L'EIAH servant de support au déroulement de l'activité décrite dans le scénario est alors construit de manière semi-automatique au sein de l'infrastructure associée au langage selon le processus suivant : le scénario est créé lors d'une phase de conception ; il est instancié et déployé sur une plate-forme de services lors d'une phase d'opérationnalisation (choix des participants à l'activité, affectation des rôles, choix des ressources et services) ; le scénario instancié et déployé est pris en charge par le moteur qui va l'interpréter pour en assurer l'exécution. Dans ce cadre, l'activité se déroule conformément à ce qui a été spécifié dans le scénario. Or il est impossible de prévoir par avance tout ce qui peut se produire dans une activité, les activités étant par nature imprévisibles. Des situations non prévues peuvent survenir et conduire à des perturbations dans l'activité, voire à des blocages. Il devient alors primordial de fournir les moyens de débloquer la situation. L'enseignant peut par ailleurs vouloir exploiter une situation ou une opportunité en modifiant l'activité en cours d'exécution. C'est le problème qui est traité dans cette thèse : il s'agit de fournir les moyens d'adapter une activité « à la volée », c'est-à-dire pendant son exécution, de manière à pouvoir gérer une situation non prévue et poursuivre l'activité. La proposition que nous formulons s'appuie sur la différentiation entre les données convoquées dans chacune des trois phases du processus de construction de l'EIAH : la conception, l'opérationnalisation et l'exécution. Nous exhibons un modèle pour chacune de ces phases, qui organise ces données et les positionne les unes par rapport aux autres. Adapter une activité « à la volée » revient alors à modifier ces modèles en fonction des situations à traiter. Certaines nécessitent la modification d'un seul de ses modèles, d'autres conduisent à propager les modifications d'un modèle vers un autre. Nous considérons l'adaptation « à la volée » comme une activité à part entière menée, en parallèle de l'activité d'apprentissage, par un superviseur humain qui dispose d'un environnement adéquat pour observer l'activité, détecter les éventuels problèmes et y remédier par intervention dans l'activité d'apprentissage en modifiant les modèles qui la spécifient. Pour développer les outils support à la modification et les intégrer dans l'infrastructure LDI, nous avons eu recours à des techniques de l'Ingénierie Dirigée par les Modèles. Les modèles manipulés dans ces outils en sont ainsi des données à part entière : les outils réalisés n'en offrent ainsi que plus de flexibilité et d'abstraction. Les modèles sont alors exploités comme des leviers pour atteindre et modifier les données ciblées par l'adaptation. / The work presented in this paper is in the field of Technology for Human Learning (TEL), specifically that of engineering in the context of TEL-type approach "Learning Design". This approach proposes to build ILE from the formal description of a learning activity. It assumes the existence of a common modeling language called EML (Educational Modelling Language) and an engine capable of interpreting this language. LDL is the language on which we worked in conjunction with the LDI infrastructure including a motor interpretation of LDL. The EML is used to produce a scenario, a formal model of learning activity. The ILE serving to support the conduct of the activity described in the scenario is then constructed semi-automatically in the infrastructure associated with the language using the following process: the script is created during a design phase; it is instantiated and deployed on a platform of services in an operational phase (selection of participants in the activity, role assignment, choice of resources and services); instantiated and deployed scenario is supported by the engine will interpret it to ensure its implementation. In this context, the activity takes place in accordance with what was specified in the script. It is impossible to predict in advance all that can occur in an activity, the activities are by nature unpredictable. Unforeseen situations can occur and lead to disturbances in the activity, or even blocks. It then becomes important to provide the means to break the deadlock. The teacher may also want to exploit a situation or opportunity by altering the activity in progress. This is the problem that is addressed in this thesis: to provide the means to adapt an activity "on the fly", that is to say while running, so you can not handle a situation provided and continue the activity. The proposal we make is based on the differentiation between data convened in each of the three phases of construction of the ILE: design, operationalization and implementation. We exhibit a model for each phase, which organizes the data and positions to each other. Adapt an activity "on the fly" then returns to modify these models in different situations to deal with. Some require the modification of one of its models, while others lead to propagate changes from one model to another. We consider adaptation "on the fly" as a separate activity conducted in parallel with the learning activity by a human supervisor has an adequate environment to observe the activity, identify potential problems and be remedied by intervention in the learning activity by modifying the templates that specify. To develop tools to support the change and integrate them into the LDI infrastructure, we have used the techniques of Model Driven Engineering. Handled in these models are tools and data in its own right tools and made no offer more flexibility and abstraction. The models are then used as levers to achieve and change the data targeted by the adaptation.
|
57 |
Codèle : Une Approche de Composition de Modèles pour la Construction de Systèmes à Grande ÉchelleNguyen, Thi Thanh Tam 22 December 2008 (has links) (PDF)
Depuis "toujours", en Génie Logiciel comme dans toutes les ingénieries, afin réduire la complexité et pour améliorer la réutilisation, le produit à construire est divisé en parties construites indépendamment et ensuite assemblées. L'approche récente de l'Ingénierie Dirigée par les Modèles (IDM, ou MDE pour Model-Driven Engineering), fait de même, en proposant "simplement" que les parties à construire et à assembler soient des modèles et non pas des programmes. C'est ainsi que le problème de la composition de modèles est devenu un thème important de l'IDM, et le sujet de cette thèse. En effet, un système logiciel réel est bien trop complexe pour pouvoir être décrit par un seul modèle. De nombreux modèles devront être créés pour le spécifier, soit à divers niveaux d'abstraction, soit selon divers points de vue, soit encore selon des domaines fonctionnels differents et complémentaires. Dans ce travail, nous partons de l'hypothèse que de tels domaines métiers existent. Un domaine est un champ d'expertise avec 1) les savoir-faire et les connaissances capturés et formalisés sous la forme d'un langage de modélisation dédié au domaine (un Domain-Specific Modeling Language (DSML)), et 2) des outils et des environnements supportant le développement d'applications dans ce domaine. Une application, dans un domaine, est décrite par un modèle (conforme au métamodèle du domaine). Dans ce travail, nous faisons aussi l'hypothèse que ces domaines sont exécutables ; les modèles du domaine sont exécutés par une machine virtuelle du domaine. En IDM, comme dans les autres approches du Génie Logiciel, la réutilisation impose que le processus d'assemblage des parties puisse se faire sans avoir à modifier celles-ci, ni bien sur l'environnement qui les a produit ou qui les exécute. Appliqué à notre contexte, cela signifie qu'il faut être capable de composer des modèles sans les modifier et sans modifier ni l'éditeur ni la machine virtuelle du domaine dont ils sont issus. C'est le problème que nous abordons dans notre travail. Nous montrons que pour atteindre cet objectif, il faut d'abord composer les domaines c'est à dire composer leurs métamodèles et leurs machines virtuelles, puis les modèles. Nous montrons dans ce travail comment ces compositions peuvent être réalisées sans modifier les éléments compos és, en utilisant des relations dites horizontales entre les métamodèles, et des liens entre les modèles. Cette approche est validée d'abord par la réalisation d'un certain nombre de domaines composites, et par de nombreuses compositions de modèles opérationnelles. Une partie importante du travail a consisté à définir Codèle, un langage de composition de modèles et de métamodèles, et à réaliser l'environnement d'assistance correspondant. Codèle assiste les ingénieurs pour composer de façon systématique les domaines, et rend automatique ou semi-automatique la composition de tous modèles provenant de ces domaines. Nous présentons l'outil Codèle et nous évaluons son usage dans divers projets.
|
58 |
Un flot de conception pour applications de traitement du signal systématique implémentées sur FPGA à base d'Ingénierie Dirigée par les ModèlesLe Beux, Sébastien 07 December 2007 (has links) (PDF)
Dans cette thèse, nous proposons un flot de conception pour le développement d'applications de traitement du signal systématique implémentées sur FPGA. Nous utilisons une approche Ingénierie Dirigée par les Modèles (IDM) pour la mise en oeuvre de ce flot de conception, dont la spécification des applications est décrite en UML. La première contribution de cette thèse réside dans la création d'un métamodèle isolant les concepts utilisés au niveau RTL. Ces concepts sont extraits d'implémentations matérielles dédiées de tâches à fort parallélisme de données. Par ailleurs, ce métamodèle considère la technologie d'implémentation FPGA et propose différents niveaux d'abstractions d'un même FPGA. Ces multiples niveaux d'abstractions permettent un raffinement des implémentations matérielles.<br /><br />La seconde contribution est le développement d'un flot de compilation permettant la transformation d'une application modélisée à haut niveau d'abstraction (UML) vers un modèle RTL. En fonction des contraintes de surfaces disponibles (technologie FPGA), le flot de conception optimise le déroulement des boucles et le placement des tâches. Le code VHDL produit est directement simulable et synthétisable sur FPGA. À partir d'applications modélisées en UML, nous produisons automatiquement un code VHDL.<br /><br />Le flot de conception proposé a été utilisé avec succès dans le cadre de sécurité automobile ; un algorithme de détection d'obstacles a été automatiquement généré depuis sa spécification UML.
|
59 |
Composition de modèles et de métamodèles : Séparation des correspondances et des interprétations pour unifier les approches de composition existantesClavreul, Mickaël 07 December 2011 (has links) (PDF)
L'Ingénierie Dirigée par les Modèles (IDM) est basée sur le principe d'abstraction et de séparation des préoccupations pour gérer la complexité du développement de logiciels. Les ingénieurs s'appuient sur des modèles dédiées à la résolution d'un problème particulier. Dans le cadre de l'IDM, la composition de modèles est un domaine de recherche très actif qui vise à automatiser les tâches de recomposition des modèles. La quasi-inexistence de consensus pour comparer les techniques existantes entraîne une explosion de l'effort nécessaire pour produire de nouveaux outils spécifiques à partir de techniques existantes. La contribution principale de cette thèse est de proposer une définition originale de la composition de modèles comme étant une paire correspondance-interprétation. A partir de cette définition, nous proposons un cadre théorique qui (1) unifie les représentations des techniques de composition existantes et qui (2) automatise le développement d'outils de composition de modèles. La contribution principale s'appuie sur deux sous-contributions supplémentaires : - Nous proposons des catégories pour classer les techniques de correspondance et les interprétations existantes. - Nous proposons un langage de modélisation spécifique pour la définition de correspondances génériques entre modèles et la définition d'interprétations. Un prototype logiciel a été développé et utilisé dans le cadre du projet MOPCOM-I du pôle de compétitivité Images & Réseaux de la région Bretagne. La validation de la contribution a été démontrée sur un cas d'étude proposé par Technicolor pour l'intégration de librairies existantes dédiées à la gestion d'équipements numériques de diffusion vidéo.
|
60 |
Conception de SoC à Base d'Horloges Abstraites : Vers l'Exploration d'Architectures en MARTEAbdallah, Adolf Samir 30 March 2011 (has links) (PDF)
Les applications modernes embarquées à hautes performances telles que l'on trouve dans les domaines du multimédia, du traitement de signaux biomédicaux et du traitement de données biométriques, sont de plus en plus complexes et exigeantes en termes de ressources. L'augmentation des performances de puces, contenant un seul processeur, n'est plus une solution adoptée. Par conséquent, une solution prometteuse est les systèmes-sur-puce multiprocesseurs (MPSoC). Cependant, la conception de MPSoC dédiés aux traitements d'applications hautes performances est un travail très difficile en raison d'un certain nombre de contraintes à assurer : la correction fonctionnelle, les performances temporelles, l'efficacité énergétique et la taille optimisée de mémoire. Parmi les ingrédients nécessaires pour une construction correcte et optimisée, nous citons premièrement le besoin de modèles de programmation assez expressifs pour décrire le parallélisme potentiel inhérent des applications cibles. Deuxièmement, nous devons trouver des moyens pour éviter des explorations fastidieuses afin de trouver la meilleure configuration d'architecture pour l'exécution d'une application (par exemple le type et la fréquence des processeurs, l'empreinte mémoire), en particulier pour des applications complexes manipulant de grandes quantités de données et exécutées par des architectures massivement parallèles. Troisièmement, plusieurs niveaux d'abstraction doivent être pris en compte afin de mieux traiter la complexité de la conception. En considérant un niveau de simulation unique où tous les détails d'implémentations sont considérés, les résultats obtenus auront une grande précision. Cependant, cette technique de simulation est longue et fastidieuse, voir parfois impossible en raison de la grande complexité de systèmes. Pour cette raison, le commencement du processus de conception, à un haut niveau d'abstraction, où seulement des informations essentielles de systèmes sont décrites, rend plus facile, et à un très faible coût, la prise de décision sur des choix de configuration. Afin de relever les défis mentionnés ci-dessus concernant la conception des applications MPSoC à haute performance, nous proposons dans le cadre de cette thèse, l'utilisation du profil UML/Marte pour la modélisation de fonctionnalité, d'architectures et d'associations des deux dernières. Ce profil est suffisamment expressif pour décrire des applications hautes performances (par exemple les paquetages RSM et GCM et le langage CCSL) et des architectures MPSoC massivement parallèles (par exemple le paquetage HRM). Pour l'analyse et la vérification de systèmes et l'exploration de l'espace de conception, nous définissons une abstraction de modèles obtenue via des horloges abstraites, inspirées de ceux des langages réactifs synchrones. Les traces d'horloges abstraites capturent les comportements de systèmes en représentant l'activité des unités de traitements durant l'exécution de fonctionnalités. Une technique d'analyse, également inspirée de l'approche synchrone, est définie. Cette technique permet de vérifier des contraintes temporelles : dépendances de données induites par un modèle Marte, les taux d'activations entre des composants. En outre, elle permet d'analyser des contraintes non fonctionnelles : estimation de temps d'exécution, le respect des temps d'échéance, estimation de la consommation d'énergie. Ces propriétés sont directement liées au nombre de processeurs impliqués dans l'exécution du système ainsi que la valeur de leurs fréquences associées. D'un point de vue général, la contribution principale de cette thèse est la définition d'un cadre de travail, à base d'horloges abstraites, qui facilite l'exploration de l'espace de conception des MPSoC à un haut niveau d'abstraction. Le travail a été concrétisé dans un environnement, dénommé Gaspard2, dédié à la conception conjointe de systèmes embarqués à hautes performances. Notre solution est validée sur une étude de cas d'un encodeur JPEG, et retournant des résultats prometteurs.
|
Page generated in 0.0757 seconds