Spelling suggestions: "subject:"ddm"" "subject:"mdm""
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 |
Analyse eines Kreisverkehrs in verschiedenen VerkehrsnachfragesituationenSchelp, Jonas 11 July 2018 (has links) (PDF)
Eine realistische Simulation von Verkehrsabläufen kann einen wichtigen Beitrag zur Verkehrsplanung leisten. In dieser Arbeit wird dafür in den bestehenden mikroskopischen Simulator MovSim ein Kreisverkehr implementiert. Anschließende Analysen, die unter Verwendung des Intelligent-Driver-Modells und des Spurwechselmodells MOBIL durchgeführt wurden, legen nahe, dass die relativen Ergebnisse, die sich durch Veränderung des Verkehrsflusses und der Modellparameter ergeben, realitätsnah sind. Zudem konnte gezeigt werden, dass der Einfluss des Verkehrsstromes in der Kreisfahrbahn im Handbuch für die Bemessung von Straßenverkehrsanlagen deutlich stärker ist als in der Simulation.
|
3 |
Analyse eines Kreisverkehrs in verschiedenen VerkehrsnachfragesituationenSchelp, Jonas 10 July 2018 (has links)
Eine realistische Simulation von Verkehrsabläufen kann einen wichtigen Beitrag zur Verkehrsplanung leisten. In dieser Arbeit wird dafür in den bestehenden mikroskopischen Simulator MovSim ein Kreisverkehr implementiert. Anschließende Analysen, die unter Verwendung des Intelligent-Driver-Modells und des Spurwechselmodells MOBIL durchgeführt wurden, legen nahe, dass die relativen Ergebnisse, die sich durch Veränderung des Verkehrsflusses und der Modellparameter ergeben, realitätsnah sind. Zudem konnte gezeigt werden, dass der Einfluss des Verkehrsstromes in der Kreisfahrbahn im Handbuch für die Bemessung von Straßenverkehrsanlagen deutlich stärker ist als in der Simulation.
|
4 |
Exploring compositional relationships between acousmatic music and electronicaRamsay, Ben January 2014 (has links)
This research explores the compositional relationships between acousmatic music and electronica in order to offer a way of unifying the two musical forms. The original contribution to knowledge comes from the creation of a portfolio of compositions that extend the two idioms towards one another, resulting in a series of works that are presented as a journey between and a fusion of electronica and acousmatic music. The dissertation offers a collection of associated theories that underpin the creation of the portfolio. In turn this dissertation addresses three areas that relate to compositional materials, the use of space, with consideration for both compositional and performance space, and a selection of associated cultural considerations that relate to the musics in question. The literature that relates to these three aspects is introduced and discussed with relation to the portfolio. The method behind the composition of the portfolio was not intended to present a collection of fusion works from the outset, but rather to begin composing a selection of purely acousmatic works in order to gain practical compositional understanding of the music. The process was then to grow the portfolio towards the electronica realm, and in parallel map this journey in the dissertation.
|
5 |
Proposition d'une approche méthodologique d'interopérabilité multi-niveaux dans un environnement de PLM collaboratif.Moones, Emna 04 December 2017 (has links)
Nos travaux de thèse concernent l’´étude de l’interopérabilité dans un environnement collaboratif et dynamique d’entreprise. Elle est considérée comme un facteur clé de collaboration qui doit être pris en compte tout au long du cycle de vie du produit. Ceci est particulièrement important en ce qui concerne les réseaux d'entreprise collaboratifs, tel que DMN, où un groupe distinct de partenaires est connecté dans un modèle en forme de chaîne et où la coopération est cruciale pour atteindre un objectif spécifique. Ce contexte a fait émerger la nécessité de faire inter-opérer une multitude de systèmes d’information, distribués, autonomes et hétérogènes. Sur la base d'une analyse approfondie des problèmes d'interopérabilité au sein du DMN, ces travaux ont abouti `à une approche générique conceptuelle d’interopérabilité multi-niveaux. Cette approche repose sur le standard ISA95 et l’approche d’ingénierie dirigée par les modèles (IDM), notre démarche vise à contribuer à l'amélioration de l'interopérabilité des systèmes d’entreprises au cours de la phase de fabrication du produit dans un DMN collaboratif. En s’intéressant aux trois niveaux d’interopérabilité, cette approche permet de s’assurer que les informations sont physiquement échangées (l'interopérabilité technique), sont comprises (l'interopérabilité sémantique) et sont bien utilisées pour atteindre le but pour lequel elles ont été produites (l'interopérabilité organisationnelle). La qualité et l'efficacité de l'approche proposée ont été confirmées par une application sur un cas concret de collaboration entre ERP et MES dans une usine de fabrication de stylos DEKENZ. / Our thesis work deals with the study of interoperability in a collaborative and dynamic enterprise environment. Interoperability is considered as a key factor for collaboration that must be considered throughout the life cycle of the product. This is particularly important for collaborative enterprise networks, such as DMN, where a group of partners is connected in a chain model and where cooperation is crucial to achieve a specific goal.This context has led to the need for inter-operate a multitude of distributed, autonomous and heterogeneous information systems.Basis on a thorough analysis of the interoperability problems within the DMN, this work proposed a generic conceptual multi-level approach of interoperability. This approach relies on the use of ISA95 standard and Model Driven Engineering (MDE) method. It aims to contribute to the improvement of the interoperability of information systems during the manufacturing phase of the product in a collaborative DMN. By focusing on the three levels of interoperability, this approach ensures that information is physically exchanged (technical interoperability), is understood (semantic interoperability), and is well used to achieve the purpose for which it have been produced (organizational interoperability). The quality and effectiveness of the proposed approach were confirmed by an application on a concrete case of collaboration between ERP and MES in a DEKENZ pen manufacturing plant.
|
6 |
Question-learn-test-feedback pattern to test emerging software construction paradigmsBaudry, Benoit 10 December 2010 (has links) (PDF)
This habilitation introduces the question-learn-test-feedback pattern that resulted from a series of investigations in the domains of software testing and modular software construction. The contributions to these fields are of various natures, but are all fundamentally related through two major assumptions: software construction paradigms have to constantly evolve in order to deal with the increasingly complex requirements that software-intensive systems have to meet; a tester's perspective can support this evolution through the development of effective testing techniques and new empirical knowledge about these paradigms. Abstraction, modularity and separation of concerns have been advocated as key factors for rigorous software engineering for a long time. These principles have been incarnated by various software construction paradigms such as object-oriented programming and design, model-driven development and aspect-oriented modeling. These paradigms evolve in order to deal with the increasing number of heterogeneous requirements, the large number of variations and the need for adaptation that software-intensive systems have to integrate. The work presented here is about the integration of effective testing techniques in these paradigms and how this led us towards a more precise understanding of these paradigms. A major discovery in our work is that we could follow a systematic pattern when investigating these paradigms to integrate error detection capabilities. First, we have to question these paradigms about the new assumptions they introduce on software systems. When answering these questions we can can perform the following actions: learn through rigorous evaluation of hypotheses about these paradigms; test software systems developed in these new paradigms; provide feedback to the paradigms in the form of new construction techniques that improve testability. We capture these four facets for the investigation of software construction paradigms in the question-learn-test-feedback pattern (QLTF). This habilitation reports on investigations in three software construction techniques: object-oriented programming and design, aspect-oriented programming, model transformations. Each investigation is synthesized around the question-learn-test-feedback pattern.
|
7 |
Modèles à la Conception et à l'Exécution pour Gérer la Variability DynamiqueMorin, Brice 17 September 2010 (has links) (PDF)
La dépendance croissante de la société à l'égard des systèmes logiciels nécessite de concevoir des logiciels robustes, adaptatifs et disponibles sans interruption. De tels systèmes proposent souvent de nombreux points de variation avec de nombreuses variantes, conduisant à une explosion combinatoire du nombre des configurations. Il devient rapidement impossible de spécifier et de valider toutes ces configurations lors de la conception d'un système adaptatif complexe. Cette thèse présente une approche dirigée par les modèles et basée sur la modélisation par aspects pour contenir la complexité de systèmes logiciels adaptatifs (Dynamically Adaptive Systems, DAS). Lors de la conception, les différentes facettes d'un DAS (variabilité, environnement/contexte, raisonnement et architecture) sont capturées à l'aide de différents méta-modèles dédiés. En particuliers, les variants de chaque point de variation sont raffinés à l'aide d'aspect (niveau model). Ces modèles sont embarqués à l'exécution pour contrôler et automatiser le mécanisme de reconfiguration dynamique. Le système courant et son contexte d'exécution sont abstraits par des modèles. Selon le contexte courant (modèle) un composant de raisonnement interprète le modèle de raisonnement et détermine un ensemble de variantes bien adaptées au contexte. Nous utilisons un tisseur d'aspects (niveau model) pour dériver automatiquement l'architecture correspondante à cette sélection de variantes. Ainsi, les concepteurs du DAS n'ont pas besoin de spécifier toutes les configurations : au contraire, chaque configuration est automatiquement construite lorsqu'il y en a besoin. Nous utilisons finalement une comparaison de modèle pour automatiser entièrement le processus de reconfiguration dynamique, sans avoir besoin d'écrire des scripts de reconfiguration de bas niveau. Les modèles embarqués à l'exécution sont des miroirs reflétant ce qui se produit vraiment dans le système courant. Il est cependant possible de travailler sur des copies de ces modèles, indépendamment du système courant et de re-synchronizer ces copies avec la réalité pour adapter réellement le système courant. En d'autres termes, notre approche permet d'exécuter des activités offline (pendant que le système fonctionne, mais indépendamment de lui) telles que la conception continue (continuous design) ou la prévision
|
8 |
Validation des moteurs de raisonnement et mécanismes d'adaptation pour les systèmes auto-adaptatifsMunoz, Freddy 29 September 2010 (has links) (PDF)
Les systèmes auto adaptatifs sont des systèmes logiciels capables d'observer leur environnement de travail (par des sondes), raisonner et prendre des décisions sur la façon de s'adapter aux changements environnementaux (par un moteur de raisonnement), et modifier leur structure interne pour prendre les adaptations en compte. Ces systèmes peuvent fournir une aide précieuse dans un grand nombre d'activités humaines. Cependant, ils ne fourniront entièrement leurs promesses que si les ingénieurs peuvent s'assurer que les décisions et les adaptations sont correctes sur toutes les situations. Ceci exige des techniques robustes pour valider que les mécanismes de raisonnement et d'adaptation dans de tels systèmes sont corrects. Dans cette thèse j'adresse la validation des moteurs de raisonnement et des mécanismes d'adaptation par programmation orientée aspect. Les moteurs de raisonnement sont des éléments logiciels responsables de raisonner sur un grand nombre de facteurs afin de décider comment adapter un système face à des variations dans l'environnement. Il est primordial d'assurer que les décisions prises par ces moteurs sont correctes pour chaque changement d'environnement possible. Une décision erronée peut mener vers une adaptation défectueuse qui peut empêcher le système de fonctionner correctement. Cependant, valider que les moteurs de raisonnement prennent la bonne décision entraine des défis dus au grand nombre de changements environnementaux possibles. Dans cette thèse je présente multi dimesional covering arrays (MDCA) pour échantillonner les conditions environnementales qui peuvent affecter la prise des décisions. MDCA vise spécifiquement les environnements qui peuvent déclencher des décisions complexes en intégrant explicitement la notion de l'histoire dans l'échantillon d'environnement. La programmation orientée aspect (AOP) fourni les moyens aux ingénieurs d'augmenter ou remplacer la structure ou le comportement du système, ces propriétés font d'AOP un bon mécanisme d'adaptation. Cependant, en utilisant l'AOP il est difficile de (i) prévoir des interactions entre différents aspects et le système de base, (ii) contrôler les endroits où les aspects se tisseront, (iii) assurer que les aspects s'exécuteront sans risque pour l'évolution (des aspects ou du système de base). Ces difficultés entravent la validation et l'adoption de l'AOP en général. Dans cette thèse je présente un framework pour la spécification d'interactions dans des programmes orientée aspects (ABIS), qui permet aux ingénieurs de contrôler les interactions entre les aspects et le système de base en spécifiant les endroits où aspects sont autorisés à se tisser. ABIS permet aux ingénieurs de réduire le temps nécessaire pour diagnostiquer et corriger des problèmes dus aux aspects défectu
|
9 |
Langage et méthode pour une ingénierie des modèles fiableFleurey, Franck 09 October 2006 (has links) (PDF)
Ce travail s'inscrit dans un contexte où la taille et la complexité des logiciels augmentent alors que les contraintes de temps de développement, de qualité, de maintenance et d'évolution sont toujours plus fortes. Pour répondre à cette tendance, l'ingénierie dirigée par les modèles constitue une évolution prometteuse des techniques de génie logiciel. Les idées de l'ingénierie dirigée par les modèles sont, d'une part de rendre les modèles productifs, et d'autre part d'automatiser certaines étapes du développement grâce à des transformations de modèles. Une des conditions pour que l'ingénierie dirigée par les modèles tienne ses promesses, en terme de productivité et de qualité, est d'assurer, tout d'abord, la correction des modèles, et ensuite, la correction des transformations utilisées. La contribution de ce travail s'articule autour de ces deux axes et constitue un premier pas vers la fiabilisation des processus de dévelopement dirigés pas les modèles. Le premier axe de ce travail vise à améliorer les possibilités de validation des modèles en proposant une plateforme pour la définition de langages de modélisation. En fonction des expériences et du domaine considéré, les modèles utilisés dans l'ingénierie dirigée par les modèles sont exprimés dans divers langages de modélisation. Comme tout langage, un langage de modélisation est constitué de plusieurs éléments de spécification : une syntaxe abstraite (ou méta-modèle), une sémantique et des contraintes syntaxiques et sémantiques. Pour assurer la précision et la cohérence d'un tel langage, il faut d'une part spécifier sans ambiguïtés chaque élément, et d'autre part assurer la bonne intégration des différents éléments entre eux. Or, les pratiques actuelles de l'ingénierie dirigée par les modèles utilisent des formalismes hétérogènes et parfois difficiles à exploiter (le langage naturel par exemple) pour la spécification de ces éléments. Afin d'améliorer la définition des langages de modélisation, nous proposons l'utilisation d'un coeur sémantique unique et précis. Ce coeur sémantique se présente sous la forme d'un langage appelé Kermeta. Au coeur de la plateforme d'ingénierie dirigée par les modèles développée par l'équipe Triskell, le langage Kermeta a été utilisé dans des contextes variés dont la transformation de modèles, la modélisation orientée-aspects et l'analyse d'exigences logicielles. L'utilisation de Kermeta pour ces applications a permis de valider le langage et de mettre en évidence ses avantages par rapport aux techniques existantes. Le second axe de ce travail concerne la validation des transformations de modèles. Celles-ci sont utilisées pour automatiser les phases du processus de développement qui peuvent l'être. Qu'il s'agisse de raffinement, de composition, de refactoring ou encore de génération de code, la qualité des transformations de modèles est primordiale pour assurer la qualité des logiciels développés. Il suffit en effet qu'une seule transformation utilisée soit erronée pour que l'ensemble du processus de développement soit fragilisé. Dans ce contexte, nous proposons une technique pour la sélection de modèles de test permettant la validation des programmes de transformation de modèles. Cette technique tire avantage du fait que toute transformation de modèles manipule des données dont la structure est décrite par un méta-modèle.
|
10 |
Aspects Comportementaux et TissageKlein, Jacques 04 December 2006 (has links) (PDF)
La séparation de préoccupations transverses permet au concepteur de logiciels d'avoir un meilleur contrôle sur les variations et les évolutions du logiciel. Dans le domaine de la programmation, cette idée a été popularisée par le langage AspectJ, mais aujourd'hui, la communauté aspect s'intéresse aussi à opérer cette séparation plus tôt dans le cycle de développement: dès les phases d'analyse/conception et même d'expression des besoins. Dans cette optique, cette thèse propose une technique permettant de tisser des comportements décrits sous forme de scénarios dans un modèle de base de scénarios. Le processus de tissage se décompose en deux phases. Tout d'abord, une phase de détection permettant d'identifier des parties particulières d'un modèle de base où un aspect doit être tissé, puis une phase de composition permettant de construire le modèle voulu. Ces deux phases sont détaillées dans cette thèse. En particulier, nous proposons plusieurs sémantiques de détection dans des scénarios finis. Certaines de ces sémantiques favorisent le tissage d'aspects multiples. Nous proposons également un algorithme de détection dans des scénarios infinis, fondé sur l'analyse statique de la sémantique des scénarios (qui est dynamique), ce qui revient à proposer un tissage statique d'aspects dynamiques. Pour fusionner des scénarios, nous proposons plusieurs opérateurs de composition, définis formellement, permettant d'obtenir des résultats cohérents. Finalement, nous décrivons l'implantation du tisseur de scénarios proposé dans l'environnement Kermeta, et nous montrons son utilité à travers des cas d'application.
|
Page generated in 0.0543 seconds