1 |
Generic Model-based Approaches for Software Reverse Engineering and Comprehension / Approches Génériques Basées sur les Modèles pour la Rétro-Ingénierie et Compréhension du LogicielBruneliere, Hugo 20 December 2018 (has links)
De nos jours, les entreprises font souvent face à des problèmes de gestion, maintenance, évolution ou remplacement de leurs systèmes logiciel existants. La Rétro-Ingénierie est la phase requise d’obtention de diverses représentations de ces systèmes pour une meilleure compréhension de leurs buts / états.L’Ingénierie Dirigée par les Modèles (IDM) est un paradigme du Génie Logiciel reposant sur la création, manipulation et utilisation intensive de modèles dans les tâches de conception, développement, déploiement, intégration, maintenance et évolution. La Rétro-Ingénierie Dirigée par les Modèles (RIDM) a été proposée afin d’améliorer les approches de Rétro-Ingénierie traditionnelles. Elle vise à obtenir des modèles à partir d’un système existant, puis à les fédérer via des vues cohérentes pour une meilleure compréhension.Cependant, les solutions existantes sont limitées car étant souvent des intégrations spécifiques d’outils. Elles peuvent aussi être (très) hétérogènes, entravant ainsi leurs déploiements. Il manque donc de solutions pour que la RIDM puisse être combinée avec des capacités de vue / fédération de modèles.Dans cette thèse, nous proposons deux approches complémentaires, génériques et extensibles basées sur les modèles ainsi que leurs implémentations en open source basées sur Eclipse-EMF : (i) Pour faciliter l’élaboration de solutions de RIDM dans des contextes variés, en obtenant différents types de modèles à partir de systèmes existants (e.g. leurs codes source, données). (ii) Pour spécifier, construire et manipuler des vues fédérant différents modèles (e.g. résultant de la RIDM) selon des objectifs de compréhension (e.g. pour diverses parties prenantes). / Nowadays, companies face more and more the problem of managing, maintaining, evolving or replacing their existing software systems. Reverse Engineering is the required phase of obtaining various representations of these systems to provide a better comprehension of their purposes / states.Model Driven Engineering (MDE) is a Software Engineering paradigm relying on intensive model creation, manipulation and use within design, development, deployment, integration, maintenance and evolution tasks. Model Driven Reverse Engineering (MDRE) has been proposed to enhance traditional Reverse Engineering approaches via the application of MDE. It aims at obtaining models from an existing system according to various aspects, and then possibly federating them via coherent views for further comprehension.However, existing solutions are limited as they quite often rely on case-specific integrations of different tools. Moreover, they can sometimes be (very) heterogeneous which may hinder their practical deployments. Generic and extensible solutions are still missing for MDRE to be combined with model view / federation capabilities.In this thesis, we propose to rely on two complementary, generic and extensible model-based approaches and their Eclipse/EMF-based implementations in open source: (i) To facilitate the elaboration of MDRE solutions in many different contexts, by obtaining different kinds of models from existing systems (e.g. their source code, data). (ii) To specify, build and manipulate views federating different models (e.g. resulting from MDRE) according to comprehension objectives (e.g. for different stakeholders).
|
2 |
INCREMENT : une approche hybride pour modéliser et analyser dans le large les exigences réglementaires de sûreté / INCREMENT : an hybrid approach for modeling and analyzing regulatory safety requirements in the largeSannier, Nicolas 12 December 2013 (has links)
Les systèmes de contrôle-commande importants pour la sûreté de fonctionnement doivent répondre à un certain nombre d’exigences, au premier rang desquelles se trouvent les exigences réglementaires, édictées par les autorités nationales et complétées par un ensemble de recommandations pratiques et de textes normatifs. Les exigences de ce domaine sont peu formalisées, les relations de traçabilité, et par conséquent l'organisation des exigences de ce vaste domaine est souvent implicite. Enfin, les passerelles entre contextes nationaux différents sont très peu développées. Les travaux de cette thèse se situent dans ce contexte industriel en partenariat avec EDF R&D et au sein du projet CONNEXION regroupant les acteurs majeurs du contrôle-commande nucléaire français. Les contributions de la thèse s'articulent autour de l'approche INCREMENT (Intrumentation aNd Control regulatory REquirement Modeling Environment) qui adresse les deux premiers challenges présentés, et en particulier : (1) la formalisation du domaine où nous proposons à la fois une description du domaine et un métamodèle permettant une capitalisation et une vue globale d'un référentiel d'exigences, (2) une base outillée pour l'acquisition automatique de documents, un environnement graphique pour la manipulation de modèles et l'apport de techniques de recherche d'information pour la traçabilité des exigences, (3) une approche originale avec une hybridation entre modélisation et recherche d'information pour une amélioration de la traçabilité des exigences. Le métamodèle proposé et ses outils sont utilisés dans l'industrie dans le projet CONNEXION. Notre approche hybride a permis dans nos expérimentations de réduire, en moyenne, la taille de ces espaces de 65% comparé aux approches standard de recherche d'information, sans en dégrader le contenu. / Instrumentation and Control (I&C) Systems important to safety must conform to their requirements, where regulatory requirements are first class entities, written by national safety authorities and completed using a set of national recommendation guides or standards. The global domain knowledge is scattered, not formalized and traceability links and the organization within the domain are implicit. Bridges between different national practices are not developed, whereas the understanding of requirements and practices variability concerns becomes a significant industrial issue. The thesis sets up in an industrial context with EDF R&D and the CONNEXION project that gathered the French nuclear I&C industry. Its contributions are defined around the INCREMENT approach (Instrumentation aNd Control Regulatory Requirement Modeling Environment) that addresses the two first challenges previously introduced. In particular, they consist in: (1) the domain formalization itself by the proposal of a metamodel that allows a high level capitalization of a requirements corpus as well as its organization, (2) a tool-support basis to gather partial knowledge from the textual documents, manipulate such models that conform to the proposed metamodel, and Information retrieval techniques to support better requirements traceability, (3) the proposal of an original hybrid approach, mixing both metamodeling and information retrieval, and combine them in a mutual beneficial joint use. The metamodel and its tool support are used in the industrial context of the CONNEXION project. Where information retrieval techniques for requirements traceability suffer from large sets of false positives limitations, our hybrid approach allowed us to reduce this noise and the size of the candidate links research space by a mean of 65% without decreasing their global quality.
|
3 |
Vers une nouvelle approche de la modernisation des systèmes légataires à travers la migration vers un environnement dirigé par les modèlesChénard, Gino 11 1900 (has links) (PDF)
Les organisations sont fortement dépendantes de leurs logiciels dans l'exercice de leurs activités quotidiennes. Malheureusement, les changements répétés qui sont appliqués à ces systèmes rendent leur évolution difficile. Cette évolution peut être rendue nécessaire afin de maintenir le logiciel, de le remplacer ou de le moderniser. Dans le cas de systèmes légataires complexes et mal documentés, la modernisation est la seule solution réalisable afin d'atteindre les objectifs d'évolution, le but de la modernisation étant de faire évoluer un système lorsque les pratiques conventionnelles ne le permettent plus. Mais, il s'agit d'une tâche complexe. Notamment, la prévision des risques et des coûts est difficile. Afin de faire face aux difficultés de la modernisation, l'OMG a créé l'initiative « Architecture-Driven Modernization » ADM qui propose entre autres de réaliser la modernisation par l'ingénierie dirigée par les modèles (IDM). Dans ce contexte, la modernisation d'un système légataire, non développé dans un environnement IDM, débute par sa migration vers ce type d'environnement. Ce qui pose la problématique de la découverte des modèles nécessaires à l'utilisation d'IDM représentant ce système. Une seconde problématique est que le processus IDM manque de précision au sujet des modèles à employer et de l'application des transformations pour passer d'un à l'autre. Dans cette thèse, nous présentons une nouvelle approche de modernisation ADM afin d'utiliser l'IDM pour moderniser un système légataire non IDM. Nous y définissons les modèles nécessaires et les transformations à réaliser pour passer d'un à l'autre. La plate-forme d'implémentation y est représentée par deux modèles. Le premier est un profil UML décrivant ses concepts et le second est un ensemble de modèles de transformations paramétrés capturant son code d'infrastructure. Le modèle représentant les éléments du domaine du problème prend la forme d'un diagramme de classes UML. Aussi, nous proposons des algorithmes pour la découverte de ces modèles en analysant le code source du système légataire. Notre approche a été validée sur plusieurs systèmes écrits en Java et a donné de bons résultats pour les systèmes bien structurés avec un bon style de programmation.
______________________________________________________________________________
|
4 |
Calcul intensif pour l'évaluation de la vulnérabilité en utilisant une approche d'Ingénierie Dirigée par les Modèles : application à la vulnérabilité des prairies au changement climatique sous contraintes de plans d'expériences / Intensive calculation for vulnerability assessment using a Model Driven Engineering approach : application to prairie vulnerability to climate change under experimental design constraintsLardy, Romain 13 May 2013 (has links)
La vulnérabilité est le degré de stress ou de perturbation qu’un système humain et environnemental est capable de supporter avant d’être endommagé. Au cours des dernières années, c’est devenu un sujet central de l’étude du changement global (incluant le changement climatique), et l’évaluation de la vulnérabilité des agro-écosystèmes aux changements climatiques s’inscrit en effet dans les axes prioritaires de l’Institut National de la Recherche Agronomique (INRA). La littérature sur le changement climatique contient de nombreuses explications de la vulnérabilité, basée sur la notion de sensibilité et faisant éventuellement appel à des idées plus complexes, depuis la prise en compte de l’exposition jusqu’aux impacts résiduels du changement climatique après mise en place de mesures d’adaptation. Dans le cadre des activités de l’Unité de Recherche sur les Ecosystèmes Prairiaux (UREP), l’intérêt porte sur la vulnérabilité des systèmes prairiaux et d’élevage face aux risques de réduction de la production laitière et herbagère, ainsi que la problématique de l’augmentation des émissions de gaz à effet de serre qui accompagne la production des services d’un écosystème prairial.Compte-tenu du fait que l’analyse de vulnérabilité s’apparente à une forme d’analyse de sensibilité et de la cascade d’incertitudes lors des évaluations des impacts du changement climatique, un grand nombre de simulations sont nécessaires. Dans ce cadre, afin de réduire le temps d’attente utilisateur, la conception d’un plan expérimental approprié est nécessaire, ainsi que l’utilisation du calcul à haute performance. De plus, l’analyse de vulnérabilité peut se composer de nombreuses étapes parmi lesquelles on trouve la conception (choix du modèle agro-écologique, des variables d’intérêt, des scénarii et des seuils de référence, la distribution des paramètres, …), la génération de plans expérimentaux, la création de surfaces de réponse, le calcul de métriques (par exemple des indices de vulnérabilité) et l’optimisation (à travers la conception et l’évaluation de mesures d’adaptation) de la vulnérabilité. À notre connaissance, aucun outil spécifique n’a été conçu ou validé dans le but de faciliter l’exécution de la majeure partie des tâches énoncées précédemment. Ainsi, la problématique de cette thèse a été de proposer une méthode générique pour la réalisation d’une analyse de vulnérabilité sous changement climatique. Le travail réalisé dans cette thèse a donc commencé par une révision du concept de vulnérabilité et la proposition d’une démarche générique, en s’appuyant sur une synthèse critique des notions de l’état de l’art. Ensuite, avec une approche d’Ingénierie Dirigée par les Modèles, nous avons conçu un outil informatique pour l’analyse de vulnérabilité. Cet outil, implémenté avec le cadriciel Eclipse Modeling Framework (EMF),est générique, modulaire et permet la distribution et l’interprétation des simulations. Enfin,des exemples applicatifs d’analyse de vulnérabilité au changement climatique ont été réalisés à l’aide des solutions proposées précédemment. Cette démarche s’est notamment appuyée sur l’utilisation du modèle biogéochimique d’écosystème prairial PaSim ([Riedo et al., 1998], [Vuichard 2007a], [Graux 2011]). / Vulnerability is the degree to which human or environmental systems are likely toexperience harm due to a perturbation or a stress. In the last years, it has become a centralfocus of the global change (including climate change). Assessing the vulnerability of agroecosystemsto climate change is one of the priority areas of the French National Institute ofAgronomic Research (INRA). The climate change literature contains many explanations ofvulnerability, stemming from the notion of sensitivity to more complex ideas, yet takinginto account the exposure history of the system up to residual impacts of climate changeafter adaptation. In the framework of the activities of the INRA’s Grassland EcosystemResearch Unit (UREP) of Clermont-Ferrand, interest is on vulnerability of grassland andlivestock systems against the risk of reduced milk and forage production, and against theproblem of increased greenhouse gas emissions that comes with the production ofgrassland ecosystem services.Vulnerability assessment has similarities with sensitivity analysis and is based onsimulations of the target system, forced to respond to the changes of stress factors. Due tothe cascade of uncertainties in climate change impacts assessment, a large number ofsimulations are necessary. In this context, the need to reduce user waiting time calls for theconception of an appropriate experimental plan, as well as the use of high performancecomputing. Moreover, vulnerability assessment may consist of many steps, such asdesigning the experiment (choice of agro-ecological model, variables of interest, scenarios,reference thresholds, parameters distribution …), designing of the experimental plans,regressing response surfaces, computing metrics (e.g. vulnerability indices) and optimizingvulnerability (through designing and evaluating adaptation measures). To our knowledge,no specific tool has been built or validated, in order to facilitate the implementation ofmost of these tasks. Thus, the goal of this thesis was to propose a generic method toperform a comprehensive vulnerability analysis to climate change. The work in this thesishas begun with a review of the concept of vulnerability and the proposal of a genericapproach, based on a critical synthesis of the state of the art. Then, with a Model DrivenEngineering approach, we have developed a computer tool for vulnerability analysis. Thistool, implemented with the modelling framework Eclipse Modeling Framework (EMF) isgeneric, modular and allows the distribution and interpretation of simulation results.Finally, application examples of climate change vulnerability assessment were achievedwith the previously proposed solutions. This approach relied, in particular, on the use ofthe grassland ecosystem biogeochemical model PaSim ([Riedo et al., 1998], [Vuichard2007a], [Graux 2011]).
|
5 |
PERCOMOM : une méthode de modélisation des applications interactives personnalisées appliquée à l'information voyageur dans le domaine des transports collectifs.Brossard, Arnaud 10 December 2008 (has links) (PDF)
Cette thèse propose une première version d'une méthode de modélisation des applications interactives personnalisées à travers une approche dirigée par les modèles. Cette méthode, appelée PERCOMOM (PERsonalization and COnceptual MOdeling Method), vise à permettre la création d'applications interactives de type WIMP (Windows, Icons, Mouse and Pointing device) par des experts métier ; chaque expert métier prenant en charge, à travers une ontologie de domaine et des modèles adaptés principalement basés sur la notation BPMN pour les modèles d'interaction, la modélisation d'une partie de l'application en fonction de son expertise propre. <br />PERCOMOM propose aussi, au niveau de la modélisation conceptuelle, des solutions pour prendre en compte les problématiques liées à la personnalisation des contenus dans les applications interactives ; que ce soit pour les problématiques liées au contexte, à l'utilisateur ou alors au type de données manipulées.<br />Enfin, à travers l'utilisation d'une architecture spécifique s'appuyant sur une approche de type MDA (Model Driven Architecture), PERCOMOM permet d'envisager une génération semi-automatique des applications à partir des modèles conceptuels et ceci pour des plateformes techniques différentes.<br />Notre contribution PERCOMOM a été appliquée pour le développement de systèmes d'information personnalisés dans le domaine de l'information voyageur.
|
6 |
Usage de la modélisation multi-vue d'entreprise pour la conduite des systèmes de productionSperandio, Séverine 15 December 2005 (has links) (PDF)
La ré-ingénierie du système de production et des produits est une activité permanente de l'entreprise, et en constitue en quelques sorte le pilotage organisationnel. Le besoin en méthodologie est dasn ce domaine très important, et constitue le sujet de ce travail. Dans un premiers temps, nous éclaircissons l'usage qui peut être fait des modèles pour structurer la démarche d'ingénierie, et cherchons ainsi à promouvoir la modélisation d'entreprise comme outil de raisonnement de pré-évaluation et de documentation des systèmes de production. Dans un second temps, nous situons la démarche d'ingénierie produit / système comme une acitvité récurrente participant à l'évolution de l'entreprise en tant que niveau de pilotage venant, par une logique de projets ou par une amélioration continue, moduler la structure et l'organisation du système physique.
|
7 |
Approche dirigée par les modèles pour le développement de systèmes multi-agentsAzaiez, Selma 11 December 2007 (has links) (PDF)
Les systèmes multi-agents s'attaquent aux nombreuses problématiques posées actuellement dans le monde informatique telles que la distribution, l'évolution, l'adaptabilité et l'interopérabilité des systèmes. Les solutions proposées par ces systèmes sont prometteuses et permettent d'obtenir des systèmes flexibles et évolutifs. Cependant, leur mise en oeuvre reste difficile. Ceci est dû au manque de techniques d'ingénierie adaptées à ce genre de système et qui permettent un développement fiable et cohérent. Bien qu'il existe plusieurs propositions intéressantes au niveau des méthodologies, des langages de spécification et des plates-formes d'implémentation orientés agent, celles-ci manquent de cohésion et font ressortir plusieurs différences aussi bien au niveau de la sémantique des concepts utilisés mais aussi au niveau des démarches de développement. Notre but durant cette thèse a été de proposer une approche flexible et cohérente supportant le développement des systèmes multiagents. Cette approche que nous baptisons ArchMDE se base sur une combinaison de l'approche centrée architecture et de l'approche dirigée par les modèles. L'approche centrée architecture nous permet de raisonner sur les éléments qui structurent le système multi-agents ainsi que leurs interactions. Elle permet d'identifier les patrons architecturaux nécessaires au développement des systèmes multi-agents en prenant en compte les différentes vues du système (vue organisationnelle, vue environnementale, etc.). L'approche orientée modèles nous permet d'exprimer de façon explicite la manière de combiner ces patrons architecturaux afin d'avoir une représentation globale du système multi-agents. D'autre part, IDM permet de couvrir les différentes phases du cycle de développement en adoptant une démarche basée sur la transformation de modèles. Cette démarche permet de garantir la cohérence du système durant les différentes phases du cycle de vie. Par ailleurs, celle-ci offre l'avantage de préserver le savoir-faire des développeurs en exprimant explicitement les opérations d'intégration (entre les patrons architecturaux) et de mapping (entre les modèles de conception et les modèles d'implémentation). Pour implanter ArchMDE, nous utilisons le cadre de développement ArchWare qui est basé sur le pi-calcul typé, polyadique et d'ordre supérieur, ce qui permet de supporter les aspects communicatifs et évolutifs des systèmes multi-agents. Le choix d'un cadre formel vise à réduire l'ambiguïté liée aux concepts multi-agents mais aussi à garantir une conception sûre. En effet, l'utilisation d'un langage formel donne la possibilité d'exprimer explicitement différentes propriétés structurelles et comportementales. Le cadre de développement ArchWare offre divers langages accompagnés de différents outils qui nous seront utiles pour mettre en oeuvre notre approche.
|
8 |
Des langages pour améliorer le développement et la maintenance des logiciels à base de composantsFleurquin, Régis 05 July 2010 (has links) (PDF)
La définition d'éléments pouvant contribuer à améliorer le développement et la maintenance des logiciels est l'objectif des travaux de recherche menés en Génie Logiciel. Mon domaine de recherche porte depuis 2003 sur la définition et l'usage de langages « supports » (c'est-à-dire complétant les langages de développement) ; ceci dans le but de faciliter et d'améliorer le développement et la maintenance des applications logicielles conçues à l'aide de composants. Mes travaux se trouvent au carrefour de plusieurs disciplines du Génie Logiciel : le développement orienté composant, les architectures des logiciels, la maintenance et l'évolution, la qualité et l'ingénierie dirigée par les modèles. Ce document constitue une synthèse de mes activités de recherche menées au cours des sept dernières années au sein de l'équipe SE du laboratoire VALORIA et de l'équipe-projet INRIA TRISKELL. Il commence par donner une vision assez personnelle des courants qui animent le Génie Logiciel et dresse un aperçu de l'état actuel de cette discipline. Puis il introduit les quelques notions dont la maîtrise est nécessaire pour évoluer dans les domaines dans lesquels se sont déroulées mes activités. Il retrace ensuite mon parcours thématique au cœur de ces disciplines et détaille mes travaux sur le contrôle de l'évolution des architectures, la sélection de composants et la documentation et l'exécution des bonnes pratiques de modélisation.
|
9 |
Approche pour la conception de systèmes aéronautiques innovants en vue d'optimiser l'architecture. Application au système portes passagerVerries, Jean 21 January 2010 (has links) (PDF)
Les travaux de cette thèse se situent à l'intersection des domaines de l'ingénierie système et de l'ingénierie dirigée par les modèles. Un ensemble de processus d'ingénierie des exigences et de conception architecturale système a été proposé. Sur la base du standard MDA, des méthodes de conception et de validation ont été définies et mise en Suvre autour d'un modèle d'information. Celui-ci a été réalisé comme un profil du langage SysML, et permet la vérification formelle de règles et de propriétés systèmes au moyen de contraintes OCL. Afin de compléter la méthodologie sur le plan de la validation système, des modèles en langage VHDL-AMS ont été intégrés à la méthodologie. Cette approche nous a amené à étudier un certains nombre de transformations de modèles, pour lesquelles nous avons choisi de travailler au niveau des métamodèles.
|
10 |
Extraction de modèles pour la conception de systèmes sur puceLe Tallec, Jean-François 25 January 2012 (has links) (PDF)
La conception des systèmes sur puce s'appuie souvent sur SystemC/C++ qui permet des descriptions architecturales et comportementales à différents niveaux d'abstraction. D'autres approches se tournent vers l'automatisation de l'assemblage de plates-formes dites virtuelles (format IP-Xact). L'utilisation des techniques de l'ingénierie des modèles est une voie plus récente avec des profils UML tels que MARTE. Dans cette thèse, nous étudions les possibilités de modélisation de ces différentes approches et les passerelles disponibles entre elles. Motivés par la disponibilité de modèles SystemC et opar les facilités offertes par MARTE, nous traitons de l'export des modèles SystemC. Au-delà de la simple conversion entre formats, nous décrivons la mise en œuvre d'une passerelle entre l'implémentation SystemC d'un design et sa version modèle dans le format IP-Xact. La représentation IP-Xact peut ensuite être de nouveau transformée en modèles MARTE par des outils déjà existants. Nous présentons les travaux connexes avant d'exposer notre vision et sa réalisation au travers de l'outil SCiPX (SystemC to IP-Xact). Dans un second temps, nous présentons plus en détail les possibilités permises par le profil UML-MARTE, son modèle de temps et le langage de spécifications de contraintes temporelles CCSL. Nous abordons les problèmes liés à la modélisation de protocoles à différents niveaux d'abstraction et plus spécialement ceux posés par le raffinement entre les niveaux TLM et RTL. Cette étude met en évidence des insuffisances de CCSL concernant la spécification des priorités. Nous proposons un enrichissement de CCSL pour lui permettre de manipuler ce concept de priorité.
|
Page generated in 0.0231 seconds