• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 12
  • 8
  • 1
  • Tagged with
  • 20
  • 20
  • 14
  • 11
  • 9
  • 9
  • 8
  • 7
  • 7
  • 7
  • 7
  • 6
  • 5
  • 5
  • 5
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
11

Contributiion à une méthodologie pour la modélisation des systèmes de services et d'ingénierie grâce à une approche dirigée par les modèles : l'architecture, la transformation et la simulation du modèle / Contribution to a methodology for service systems modeling and engineering through a model driven approach : architecture, transormation, and model simulation

Bazoun, Hassan 20 October 2015 (has links)
Cette thèse se situe dans le contexte de l’importante mutation stratégique qu’opère l’Industrie européenne face à l’émergence de nouveaux Marchés. Une caractéristique majeure de ces nouveaux Marchés est la grande variabilité des besoins clients. Cette mutation remplace le produit manufacturé, au coeur des stratégies Métier, par ses services d’accompagnement, en réponse aux nouvelles exigences des clients. Ainsi, les processus Métier, initialement pensés,construits et pilotés autour du produit, doivent aujourd’hui être revus et complétés de manière à intégrer les services. C’est cette question que veut traiter la thèse, à travers une proposition d’architecture d’ingénierie des services dirigée par les modèles, supportée par un environnement logiciel appelé SLMToolBox qui permet la semi automatisation d’une partie de la gestion du cycle de vie d’un service (modélisation, simulation et évaluation de performances). Ce travail de recherche était dans le cadre de projet MSEE, un projet européen de recherche et développement en collaboration avec 18 partenaires de 9 pays européen. Le but de ce projet est de faire évoluer le concept de SSME (Service Science Management and Engineering) vers des systèmes de production et des usines du futur, i.e. d'un point de vue méthodologique, pour adapter, modifier et étendre les concepts de SSME pour les rendre applicables à des entreprises traditionnellement orientées vers une production orientée produit et d'un point de vue implantation, d'instancier les architectures et les plateformes orientées vers les services liés au futur internet pour des systèmes globaux de production de services.La thèse à apporter plusieurs résultats (MDSEA, Etended Actigram Star EA*, Transformation de modèle, simulation, et SLMToolBox) pour répondre aux besoins de servitization. / In today’s world of business, manufacturers are facing many challenges. Business strategiesivare changing and manufacturers are entering new markets and striving to meet new andchanging customer needs. Manufacturers are outsourcing more components and services tosuppliers around the world, restructuring their internal operating and information systems, andre-engineering production processes to eliminate waste and lower costs. They are changingthe nature of their organizations by partnering with other companies in complex supply chainsand business networks that now extend globally. Manufacturing is being redefined by changesin market place and how companies react to them. As a result, many manufacturers wanted tomake the shift to services as a solution, but they find themselves trapped in the world ofproducts. At the end of the nineties, the concept of Service in Manufacturing appeared and theevolution from an economy of products towards an economy of services surrounding productsbecame more and more important in manufacturing. The process of creating value by addingservices to a tangible product has first been called “servitization”. Based on the problematic ofServitization and service system engineering and in order to reduce effort and time in servicesystem engineering, this thesis (as being part of the MSEE project) contributed in thedevelopment of solutions. The contribution of the thesis’s result can be classified into relatedand connected pillars. The first pillar is the participation in the development of the ModelDriven Service Engineering Architecture (MDSEA) which permits Virtual ManufacturingEnterprises (VME) to model their service systems (AS-IS and TO-BE models) starting frommodeling the system from business experts angle and then adding more details to reach thedevelopers and technical experts angle. The second pillar is the development of a modelingand simulation tool, the SLMToolBox. This tool is a partial implementation of MDSEA andits name Service Lifecycle Management ToolBox implies a role in the service’s lifecycle. Thethird pillar is the development of a DEVS graphical editor and simulator integrated in theSLMToolBox.
12

Parallélisation de simulateur DEVS par métamodélisation et transformation de modèle / DEVS simulator parallelization by metamodeling and model transformation

Togo, Hamidou 23 December 2015 (has links)
Cette thèse propose une approche d’ingénierie consistant à paralléliser des simulateurs DEVS existants, sans être obligé de modifier les algorithmes de l’implémentation initiale, mais en injectant des composants additionnels adaptés au protocole de communication intercomposants en vigueur. Les algorithmes de simulation de ces nouveaux composants appelés « Manteaux », sont définis. Une démarche d’ingénierie permettant de systématiser le passage d’une implémentation à sa contrepartie parallèle et distribuée est ensuite proposée. Cette démarche s’appuie sur les principes de méta modélisation et de transformation de modèles inspirés de l’Ingénierie Dirigée par les Modèles (IDM). Sa généricité en garantit la réutilisabilité avec tout simulateur séquentiel DEVS. / This thesis proposes an engineering approach to parallelize existing DEVS simulators without having to modify the algorithms of the initial implementation, but by injecting additional components suitable for inter-component communication protocol into force. The simulation algorithms of these new components called "Coats" are defined.An engineering approach to systematize the passage from one implementation to its counterpart parallel and distributed is then proposed. This approach is based on metamodeling and models transformation principles inspired of Model Driven Engineering (MDE). Its genericity guarantees the reusability with any sequential DEVS simulator.
13

Test de conformité de contrôleurs logiques spécifiés en grafcet / Conformance test of logic controllers from Grafcet specification

Provost, Julien 08 July 2011 (has links)
Les travaux présentés dans ce mémoire de thèse s'intéressent à la génération et à la mise en œuvre de séquences de test pour le test de conformité de contrôleurs logiques. Dans le cadre de ces travaux, le Grafcet (IEC 60848 (2002)), langage de spécification graphique utilisé dans un contexte industriel, a été retenu comme modèle de spécification. Les contrôleurs logiques principalement considérés dans ces travaux sont les automates programmables industriels (API). Afin de valider la mise en œuvre du test de conformité pour des systèmes de contrôle/commande critiques, les travaux présentés proposent: - Une formalisation du langage de spécification Grafcet. En effet, l'application des méthodes usuelles de vérification et de validation nécessitent la connaissance du comportement à partir de modèles formels. Cependant, dans un contexte industriel, les modèles utilisés pour la description des spécifications fonctionnelles sont choisis en fonction de leur pouvoir d'expression et de leur facilité d'utilisation, mais ne disposent que rarement d'une sémantique formelle. - Une étude de la mise en œuvre de séquences de test et l'analyse des verdicts obtenus lors du changement simultané de plusieurs entrées logiques. Une campagne d'expérimentation a permis de quantifier, pour différentes configurations de l'implantation, le taux de verdicts erronés dus à ces changements simultanés. - Une définition du critère de SIC-testabilité d'une implantation. Ce critère, déterminé à partir de la spécification Grafcet, définit l'aptitude d'une implantation à être testée sans erreur de verdict. La génération automatique de séquences de test minimisant le risque de verdict erroné est ensuite étudiée. / The works presented in this PhD thesis deal with the generation and implementation of test sequences for conformance test of logic controllers. Within these works, Grafcet (IEC 60848 (2002)), graphical specification language used in industry, has been selected as the specification model. Logic controllers mainly considered in these works are Programmable Logic Controllers (PLC). In order to validate the carrying out of conformance test of critical control systems, this thesis presents: - A formalization of the Grafcet specification language. Indeed, to apply usual verification and validation methods, the behavior is required to be expressed through formal models. However, in industry, the models used to describe functional specifications are chosen for their expression power and usability, but these models rarely have a formal semantics. - A study of test sequences execution and analysis of obtained verdicts when several logical inputs are changed simultaneously. Series of experimentation have permitted to quantify, for different configurations of the implantation under test, the rate of erroneous verdicts due to these simultaneous changes. - A definition of the SIC-testability criterion for an implantation. This criterion, determined on the Grafect specification defines the ability of an implementation to be tested without any erroneous verdict. Automatic generation of test sequences that minimize the risk of erroneous verdict is then studied.
14

Analyse formelle de spécifications hybrides à partir de modèles SysML pour la validation fonctionnelle des systèmes embarqués / Formal analysis of hybrid specifications from SysML models for functional validation of embedded systems specifications

Medimegh, Slim 20 December 2018 (has links)
Le logiciel embarqué est devenuaujourd’hui incontournable dans la plupart dessecteurs industriels. Ce dernier fait appel engénéral à des connaissances métier différentes.L’ensemble du système (le logiciel et sonenvironnement) est ainsi spécifié d’une manièrehétérogène, avec des parties discrètes et d’autrescontinues. La simulation de ces systèmeshybrides nécessite des données précises et unesynchronisation des changements continus avecles transitions discrètes. Mais, dans les premièresphases de conception, l’absence des informationsempêche de simuler le système numériquement.Dans notre thèse, nous présentons un nouveaulangage qualitatif dédié à la simulationqualitative des systèmes hybrides. Ce nouveaulangage consiste à modéliser les relations entreles variables du système. Il est implémenté dansDiversity, un moteur d’exécution symbolique,pour construire les traces du système. Nousavons appliqué cette approche à l’analyse desmodèles SysML, en utilisant une transformationM2M à partir de SysML vers un langage pivot,une transformation M2T à partir de ce langagevers Diversity. Nous avons aussi analysé lestraces brutes de l’exécution symbolique deDiversity pour construire les comportementsqualitatifs du système. / Embedded software has becomeessential in most industrial sectors. The latterusually involves various business knowledge.The whole system (the software and itsenvironment) is specified in a heterogeneousform, with discrete and continuous parts.Simulating these hybrid systems requiresprecise data and synchronization of continuouschanges and discrete transitions. However, inthe first design steps, missing informationforbids numerical simulation. We present in ourthesis a new qualitative language for qualitativesimulation of hybrid systems, which consists incomputing the relationships between the systemvariables. This language is implemented in theDiversity symbolic execution engine to build thetraces of the system. We apply this approach tothe analysis of SysML models, using an M2Mtransformation from SysML to a pivot language,an M2T transformation from this language toDiversity. We also analyze the brutal symbolictraces obtained by Diversity to build the realqualitative behaviors of the system.
15

OntoCASE: MÉTHODOLOGIE ET ASSISTANT LOGICIEL POUR UNE INGÉNIERIE ONTOLOGIQUE FONDÉE SUR LA TRANSFORMATION D'UN MODÈLE SEMI-FORMEL

Héon, Michel 04 November 2010 (has links) (PDF)
Concevoir une ontologie formelle demande une expertise certaine, qui est la plupart du temps, peu accessible à des experts de contenu. En revanche, de plus en plus d'experts utilisent la modélisation semi-formelle pour représenter leur expertise, car ce type de langage est notamment reconnu pour sa simplicité d'utilisation et sa capacité à représenter des connaissances de types déclaratifs, procédurales, stratégiques et factuels. La modélisation semi-formelle, qui peut constituer une première démarche dans la mise en place d'une mémoire d'entreprise, n'élimine en rien la nécessité de représenter formellement la connaissance, obligeant ainsi à mettre en oeuvre une étape de formalisation du modèle semi-formel. Nous avons conçu une méthodologie de transformation d'un modèle semi-formel en ontologie et développé un assistant logiciel qui semi-automatise, ou automatise les processus de la méthodologie de transformation. La démarche de conception de la méthodologie et de son assistant informatique se divise en trois phases: 1) la phase de Mise en place des composants architecturaux, procéduraux et informatiques de la méthodologie est la phase initiale de la démarche; 2) la phase d'Agrégation des composants ontologiques, procéduraux et informatiques est la phase de développement et d'harmonisation des modules de l'assistant aux processus de la méthodologie; 3) la phase de confirmation est l'étape de tests et de raffinement de la fonctionnalité, de l'assistant informatique et de la méthodologie. Quatre champs disciplinaires sont concernés par cette thèse: en gestion des connaissances, notre approche offre une méthode de formalisation de la connaissance fondée sur une représentation semi-formelle de la connaissance; en ingénierie ontologique, nos travaux offrent un cadre architectural et procédural qui formalise et instrumente le processus de construction d'une ontologie à partir d'une représentation semi-formelle des connaissances; en représentation des connaissances, notre thèse approfondit l'étude d'une catégorisation formelle de la représentation des connaissances qu'elles soient déclaratives, procédurales, stratégiques ou factuelles; et finalement, d'un point de vue informatique, cette recherche présente une architecture et des outils informatiques qui formalisent et rendent exécutable le processus de transformation.
16

Transformation by example

Kessentini, Marouane 02 1900 (has links)
La transformation de modèles consiste à transformer un modèle source en un modèle cible conformément à des méta-modèles source et cible. Nous distinguons deux types de transformations. La première est exogène où les méta-modèles source et cible représentent des formalismes différents et où tous les éléments du modèle source sont transformés. Quand elle concerne un même formalisme, la transformation est endogène. Ce type de transformation nécessite généralement deux étapes : l’identification des éléments du modèle source à transformer, puis la transformation de ces éléments. Dans le cadre de cette thèse, nous proposons trois principales contributions liées à ces problèmes de transformation. La première contribution est l’automatisation des transformations des modèles. Nous proposons de considérer le problème de transformation comme un problème d'optimisation combinatoire où un modèle cible peut être automatiquement généré à partir d'un nombre réduit d'exemples de transformations. Cette première contribution peut être appliquée aux transformations exogènes ou endogènes (après la détection des éléments à transformer). La deuxième contribution est liée à la transformation endogène où les éléments à transformer du modèle source doivent être détectés. Nous proposons une approche pour la détection des défauts de conception comme étape préalable au refactoring. Cette approche est inspirée du principe de la détection des virus par le système immunitaire humain, appelée sélection négative. L’idée consiste à utiliser de bonnes pratiques d’implémentation pour détecter les parties du code à risque. La troisième contribution vise à tester un mécanisme de transformation en utilisant une fonction oracle pour détecter les erreurs. Nous avons adapté le mécanisme de sélection négative qui consiste à considérer comme une erreur toute déviation entre les traces de transformation à évaluer et une base d’exemples contenant des traces de transformation de bonne qualité. La fonction oracle calcule cette dissimilarité et les erreurs sont ordonnées selon ce score. Les différentes contributions ont été évaluées sur d’importants projets et les résultats obtenus montrent leurs efficacités. / Model transformations take as input a source model and generate as output a target model. The source and target models conform to given meta-models. We distinguish between two transformation categories. Exogenous transformations are transformations between models expressed using different languages, and the whole source model is transformed. Endogenous transformations are transformations between models expressed in the same language. For endogenous transformations, two steps are needed: identifying the source model elements to transform and then applying the transformation on them. In this thesis, we propose three principal contributions. The first contribution aims to automate model transformations. The process is seen as an optimization problem where different transformation possibilities are evaluated and, for each possibility, a quality is associated depending on its conformity with a reference set of examples. This first contribution can be applied to exogenous as well as endogenous transformation (after determining the source model elements to transform). The second contribution is related precisely to the detection of elements concerned with endogenous transformations. In this context, we present a new technique for design defect detection. The detection is based on the notion that the more a code deviates from good practice, the more likely it is bad. Taking inspiration from artificial immune systems, we generate a set of detectors that characterize the ways in which a code can diverge from good practices. We then use these detectors to determine how far the code in the assessed systems deviates from normality. The third contribution concerns transformation mechanism testing. The proposed oracle function compares target test cases with a base of examples containing good quality transformation traces, and assigns a risk level based on the dissimilarity between the two. The traces help the tester understand the origin of an error. The three contributions are evaluated with real software projects and the obtained results confirm their efficiencies.
17

Transformation by example

Kessentini, Marouane 02 1900 (has links)
La transformation de modèles consiste à transformer un modèle source en un modèle cible conformément à des méta-modèles source et cible. Nous distinguons deux types de transformations. La première est exogène où les méta-modèles source et cible représentent des formalismes différents et où tous les éléments du modèle source sont transformés. Quand elle concerne un même formalisme, la transformation est endogène. Ce type de transformation nécessite généralement deux étapes : l’identification des éléments du modèle source à transformer, puis la transformation de ces éléments. Dans le cadre de cette thèse, nous proposons trois principales contributions liées à ces problèmes de transformation. La première contribution est l’automatisation des transformations des modèles. Nous proposons de considérer le problème de transformation comme un problème d'optimisation combinatoire où un modèle cible peut être automatiquement généré à partir d'un nombre réduit d'exemples de transformations. Cette première contribution peut être appliquée aux transformations exogènes ou endogènes (après la détection des éléments à transformer). La deuxième contribution est liée à la transformation endogène où les éléments à transformer du modèle source doivent être détectés. Nous proposons une approche pour la détection des défauts de conception comme étape préalable au refactoring. Cette approche est inspirée du principe de la détection des virus par le système immunitaire humain, appelée sélection négative. L’idée consiste à utiliser de bonnes pratiques d’implémentation pour détecter les parties du code à risque. La troisième contribution vise à tester un mécanisme de transformation en utilisant une fonction oracle pour détecter les erreurs. Nous avons adapté le mécanisme de sélection négative qui consiste à considérer comme une erreur toute déviation entre les traces de transformation à évaluer et une base d’exemples contenant des traces de transformation de bonne qualité. La fonction oracle calcule cette dissimilarité et les erreurs sont ordonnées selon ce score. Les différentes contributions ont été évaluées sur d’importants projets et les résultats obtenus montrent leurs efficacités. / Model transformations take as input a source model and generate as output a target model. The source and target models conform to given meta-models. We distinguish between two transformation categories. Exogenous transformations are transformations between models expressed using different languages, and the whole source model is transformed. Endogenous transformations are transformations between models expressed in the same language. For endogenous transformations, two steps are needed: identifying the source model elements to transform and then applying the transformation on them. In this thesis, we propose three principal contributions. The first contribution aims to automate model transformations. The process is seen as an optimization problem where different transformation possibilities are evaluated and, for each possibility, a quality is associated depending on its conformity with a reference set of examples. This first contribution can be applied to exogenous as well as endogenous transformation (after determining the source model elements to transform). The second contribution is related precisely to the detection of elements concerned with endogenous transformations. In this context, we present a new technique for design defect detection. The detection is based on the notion that the more a code deviates from good practice, the more likely it is bad. Taking inspiration from artificial immune systems, we generate a set of detectors that characterize the ways in which a code can diverge from good practices. We then use these detectors to determine how far the code in the assessed systems deviates from normality. The third contribution concerns transformation mechanism testing. The proposed oracle function compares target test cases with a base of examples containing good quality transformation traces, and assigns a risk level based on the dissimilarity between the two. The traces help the tester understand the origin of an error. The three contributions are evaluated with real software projects and the obtained results confirm their efficiencies.
18

Système de Mesure Mobile Adaptif Qualifié / Mobile System for Adaptive Qualified Measurement

Bourgeois, Florent 21 March 2018 (has links)
Les dispositifs matériels mobiles proposent des capacités de mesure à l'aide de capteurs soit embarqués, soit connectés. Ils ont vocation à être de plus en plus utilisés dans des processus de prises de mesures. Ils présentent un caractère critique dans le sens où ces informations doivent être fiables, car potentiellement utilisées dans un contexte exigeant. Malgré une grande demande, peu d'applications proposent d'assister les utilisateurs lors de relevés exploitant ces capacités. Idéalement, ces applications devraient proposer des méthodes de visualisation, de calcul, des procédures de mesure et des fonctions de communications permettant la prise en charge de capteurs connectés ou encore la génération de rapports. La rareté de ces applications se justifie par les connaissances nécessaires pour permettre la définition de procédures de mesure correctes. Ces éléments sont apportés par la métrologie et la théorie de la mesure et sont rarement présents dans les équipes de développement logiciel. De plus, chaque utilisateur effectue des activités de mesure spécifiques au domaine de son champ d'activités, ce qui implique le développement d'applications spécifiques de qualité pouvant être certifiées par des experts. Ce postulat apporte la question de recherche à laquelle les travaux présentés répondent: Comment proposer une approche pour la conception d’applications adaptées à des procédures de mesures spécifiques. Les procédures de mesure pouvant être configurées par un utilisateur final La réponse développée est une "plateforme" de conception d'applications d'assistance à la mesure. Elle permet d'assurer la conformité des procédures de mesures sans l'intervention d'expert de la métrologie. Pour cela elle est construite en utilisant des concepts issus de la métrologie, de l'Ingénierie Dirigée par les Modèles et de la logique du premier ordre. Une étude du domaine de la métrologie permet de mettre en évidence la nécessité d'une expertise des procédures de mesure impliquées dans les applications. Cette expertise comprend des termes et des règles assurant l'intégrité et la cohérence d'une procédure de mesure. Un modèle conceptuel du domaine de la métrologie est proposé. Ce modèle conceptuel est ensuite intégré au processus de développement d'une application. Cette intégration se fait par un encodage de ce modèle conceptuel sous la forme d'un schéma des connaissances de la métrologie en logique du premier ordre. Il permet, la vérification du respect des contraintes inhérentes à la métrologie dans une procédure de mesure. Cette vérification est réalisée en confrontant les procédures de mesures au schéma sous forme de requêtes. Ces requêtes sont décrites à l'aide d'un langage proposé par le schéma. Les applications d'assistance à la mesure nécessitent d'exposer à l'utilisateur un processus de mesure impliquant relevés et affichages de mesures étape par étape. Cela implique de pouvoir décrire un processus de mesure et d'en définir les interfaces et le schéma d'évolution. Pour cela, un éditeur d'application est proposé. Cet éditeur propose un langage spécifique dédié à la description d'applications d'assistance à la mesure. Ce langage est construit à partir des concepts, formalismes et outils proposés par l'environnement de métamodélisation Diagrammatic Predicate Framework (DPF). Le langage comporte des contraintes syntaxiques prévenant les erreurs de construction au niveau logiciel tout en réduisant l'écart sémantique entre l'architecte logiciel l'utilisant et un potentiel expert de la métrologie. [...] / Mobile devices offer measuring capabilities using embedded or connected sensors. They are more and more used in measuring processes. They are critical because the performed measurements must be reliable because possibly used in rigorous context. Despite a real demand, there are relatively few applications assisting users with their measuring processes that use those sensors. Such assistant should propose methods to visualise and to compute measuring procedures while using communication functions to handle connected sensors or to generate reports. Such rarity of applications arises because of the knowledges required to define correct measuring procedures. Those knowledges are brought by metrology and measurement theory and are rarely found in software development teams. Moreover, every user has specific measuring activities depending on his field of work. That implies many quality applications developments which could request expert certification. These premises bring the research question the presented works answer : What approach enables the conception of applications suitable to specific measurement procedures considering that the measurement procedures could be configured by the final user. The presented works propose a platform for the development of measuring assistant applications. The platform ensure the conformity of measuring processes without involving metrology experts. It is built upon metrology, model driven engineering and first order logic concepts. A study of metrology enables to show the need of applications measuring process expert evaluation. This evaluation encompasses terms and rules that ensure the process integrity and coherence. A conceptual model of the metrology domain is proposed. That model is then employed in the development process of applications. It is encoded into a first order logic knowledge scheme of the metrology concepts. That scheme enables to verify that metrology constraints holds in a given measuring process. The verification is performed by confronting measuring processes to the knowledge scheme in the form of requests. Those requests are described with a request language proposed by the scheme. Measuring assistant applications require to propose to the user a measuring process that sequences measuring activities. This implies to describe a measuring process, and also to define interactive interfaces and sequencing mechanism. An application editor is proposed. That editor uses a domain specific language dedicated to the description of measuring assistant applications. The language is built upon concepts, formalisms and tools proposed by the metamodeling environment : Diagrammatic Predicat Framework (DPF). The language encompasses syntactical constraints that prevent construction errors on the software level while reducing the semantical gap between the software architect using it and a potential metrology expert. Then, mobile platforms need to execute a behaviour conforming to the editor described one. An implementation modelling language is proposed. This language enables to describe measuring procedures as sequences of activities. Activities imply to measure, compute and present values. Quantities are all abstracted by numerical values. This eases their computation and the use of sensors. The implementation model is made up of software agents. A mobile application is also proposed. The application is built upon a framework of agents, an agent network composer and a runtime system. The application is able to consider an implementation model and to build the corresponding agent network in order to propose a behaviour matching the end users needs. This enables to answer to any user needs, considering he can access to the implementation model, without requiring to download several applications.
19

Pattern-based refactoring in model-driven engineering

Mokaddem, Chihab eddine Mohamed Omar 05 1900 (has links)
L’ingénierie dirigée par les modèles (IDM) est un paradigme du génie logiciel qui utilise les modèles comme concepts de premier ordre à partir desquels la validation, le code, les tests et la documentation sont dérivés. Ce paradigme met en jeu divers artefacts tels que les modèles, les méta-modèles ou les programmes de transformation des modèles. Dans un contexte industriel, ces artefacts sont de plus en plus complexes. En particulier, leur maintenance demande beaucoup de temps et de ressources. Afin de réduire la complexité des artefacts et le coût de leur maintenance, de nombreux chercheurs se sont intéressés au refactoring de ces artefacts pour améliorer leur qualité. Dans cette thèse, nous proposons d’étudier le refactoring dans l’IDM dans sa globalité, par son application à ces différents artefacts. Dans un premier temps, nous utilisons des patrons de conception spécifiques, comme une connaissance a priori, appliqués aux transformations de modèles comme un véhicule pour le refactoring. Nous procédons d’abord par une phase de détection des patrons de conception avec différentes formes et différents niveaux de complétude. Les occurrences détectées forment ainsi des opportunités de refactoring qui seront exploitées pour aboutir à des formes plus souhaitables et/ou plus complètes de ces patrons de conceptions. Dans le cas d’absence de connaissance a priori, comme les patrons de conception, nous proposons une approche basée sur la programmation génétique, pour apprendre des règles de transformations, capables de détecter des opportunités de refactoring et de les corriger. Comme alternative à la connaissance disponible a priori, l’approche utilise des exemples de paires d’artefacts d’avant et d’après le refactoring, pour ainsi apprendre les règles de refactoring. Nous illustrons cette approche sur le refactoring de modèles. / Model-Driven Engineering (MDE) is a software engineering paradigm that uses models as first-class concepts from which validation, code, testing, and documentation are derived. This paradigm involves various artifacts such as models, meta-models, or model transformation programs. In an industrial context, these artifacts are increasingly complex. In particular, their maintenance is time and resources consuming. In order to reduce the complexity of artifacts and the cost of their maintenance, many researchers have been interested in refactoring these artifacts to improve their quality. In this thesis, we propose to study refactoring in MDE holistically, by its application to these different artifacts. First, we use specific design patterns, as an example of prior knowledge, applied to model transformations to enable refactoring. We first proceed with a detecting phase of design patterns, with different forms and levels of completeness. The detected occurrences thus form refactoring opportunities that will be exploited to implement more desirable and/or more complete forms of these design patterns. In the absence of prior knowledge, such as design patterns, we propose an approach based on genetic programming, to learn transformation rules, capable of detecting refactoring opportunities and correcting them. As an alternative to prior knowledge, our approach uses examples of pairs of artifacts before and after refactoring, in order to learn refactoring rules. We illustrate this approach on model refactoring.
20

Automatically correcting syntactic and semantic errors in ATL transformations using multi-objective optimization

VaraminyBahnemiry, Zahra 12 1900 (has links)
L’ingénierie dirigée par les modèles (EDM) est un paradigme de développement logiciel qui promeut l’utilisation de modèles en tant qu’artefacts de première plan et de processus automatisés pour en dériver d’autres artefacts tels que le code, la documentation et les cas de test. La transformation de modèle est un élément important de l’EDM puisqu’elle permet de manipuler les représentations abstraites que sont les modèles. Les transformations de modèles, comme d’autres programmes, sont sujettes à la fois à des erreurs syntaxiques et sémantiques. La correction de ces erreurs est difficile et chronophage, car les transformations dépendent du langage de transformation comme ATL et des langages de modélisation dans lesquels sont exprimés les modèles en entrée et en sortie. Les travaux existants sur la réparation des transformations ciblent les erreurs syntaxiques ou sémantiques, une erreur à la fois, et définissent manuellement des patrons de correctifs. L’objectif principal de notre recherche est de proposer un cadre générique pour corriger automatiquement de multiples erreurs syntaxiques et sémantiques. Afin d’atteindre cet objectif, nous reformulons la réparation des transformations de modèles comme un problème d’optimisation multiobjectif et le résolvons au moyen d’algorithmes évolutionnaires. Pour adapter le cadre aux deux catégories d’erreurs, nous utilisons différents types d’objectifs et des stratégies sophistiquées pour guider l’exploration de l’espace des solutions. / Model-driven engineering (MDE) is a software development paradigm that promotes the use of models as first-class artifacts and automated processes to derive other artefacts from them such as code, documentation and test cases. Model transformation is an important element of MDE since it allows to manipulate the abstract representations that are models. Model transformations, as other programs are subjects to both syntactic and semantic errors. Fixing those errors is difficult and time consuming as the transformations depend on the transformation language such as ATL, and modeling languages in which input and output models are expressed. Existing work on transformation repair targets either syntactic or semantic errors, one error at a time, and define patch templates manually. The main goal of our research is to propose a generic framework to fix multiple syntactic and semantic errors automatically. In order to achieve this goal, we reformulate the repair of model transformations as a multi-objective optimization problem and solve it by means of evolutionary algorithms. To adapt the framework to the two categories of errors, we use different types of objectives and sophisticated strategies to guide the search.

Page generated in 0.1098 seconds