115 research outputs found

    Ingénierie Dirigée par les Modèles (IDM) -- État de l'art

    Get PDF
    L'ingénierie dirigée par les modèles (IDM), ou Model Driven Engineering (MDE) en anglais, a permis plusieurs améliorations significatives dans le développement de systèmes complexes en permettant de se concentrer sur une préoccupation plus abstraite que la programmation classique. Il s'agit d'une forme d'ingénierie générative dans laquelle tout ou partie d'une application est engendrée à partir de modèles. Un modèle est une abstraction, une simplification d'un système qui est suffisante pour comprendre le système modélisé et répondre aux questions que l'on se pose sur lui. Un système peut être décrit par différents modèles liés les uns aux autres. L'idée phare est d'utiliser autant de langages de modélisation différents (Domain Specific Modeling Languages - DSML) que les aspects chronologiques ou technologiques du développement du système le nécessitent. La définition de ces DSML, appelée métamodélisation, est donc une problématique clé de cette nouvelle ingénierie. Par ailleurs, afin de rendre opérationnels les modèles (pour la génération de code, de documentation et de test, la validation, la vérification, l'exécution, etc.), une autre problématique clé est celle de la transformation de modèle. Nous proposons dans ce document une présentation des principes clés de cette nouvelle ingénierie. Nous introduisons dans un premier temps la notion de modèle, les travaux de normalisation de l'OMG, et les principes de généralisation offerts à travers les DSML. Nous détaillons ensuite les deux axes principaux de l'IDM. La métamodélisation d'abord, dont le but est d'assurer une définition correcte des DSML. Nous illustrons cette partie par la définition de SimplePDL, un langage simple de description de procédé de développement. Nous présentons ensuite les principes de la transformation de modèle et les outils actuellement disponibles. Nous concluons enfin par une discussion sur les limites actuelles de l'IDM

    SéMo'07 : premier atelier sur la Sémantique des Modèles

    Get PDF
    International audienceThis paper summarises the presentations and exchanges that took place in the SĂ©Mo'2007 workshop in March 2007 in Toulouse during the IDM conference. The main topic of the workshop was the semantics of models and meta-models in the purpose to confront the MDE users needs and the technologies used for specification and programming languages

    Modélisation en UML/OCL des langages de programmation et de leurs propriétés et processus IDM

    Get PDF
    Cette étude est axée sur l'activité de génération de composants logiciels se situant en phase terminale des processus de développement de logiciels dirigés par les modèles. Dans une première partie, nous présentons les travaux de recherche déjà existants sur les modèles et les transformations de modèles, ainsi que sur la modélisation en UML/OCL des langages de programmation limitée, la plupart du temps, aux aspects syntaxiques. Dans une deuxième partie, nous montrons comment nous modélisons en UML/OCL, les propriétés comportementales et axiomatiques des langages de programmation de style impératif. La modélisation des propriétés comportementales et axiomatiques d'un langage, en UML/OCL enrichi d'un langage d'actions, nous amène à montrer comment on peut, à l'aide de triplets de Hoare, vérifier que des segments de modèles de programmes sont corrects. Les assertions déduites des triplets de Hoare par application des propriétés axiomatiques du langage sont transmises à un Atelier B en vue d'étudier leurs éventuelles validités. Dans une troisième partie, nous montrons comment on peut injecter au niveau du Méta-Modèle UML des propriétés comportementales et axiomatiques spécifiques à un domaine d'applications particulier. Nous nous sommes limités au fragment du Méta-Modèle UML définissant les diagrammes d'activité se situant donc en amont des modèles de codes, avant la génération proprement dite des codes. La cohérence entre les modèles et les codes peut se vérifier à l'aide de propriétés comportementales et axiomatiques en comparant les modèles issues des exigences et les modèles des codes. Ces travaux de recherche ont été financés dans le cadre de l'ANR.Our work focuses on the software component generation phase that takes place at the last phase of a model driven development process. Our work is related to either the modelware or the grammarware because the model driven process can be considered as a successive of model transformations whereas the code generation is a specific transformation from the model to a language grammar. In the first part, we resume some relative works in the domain of the models and of the models transformation; we also present the language modeling in UML which is generally restricted by the syntax modeling. In the second part, we show how we model in UML/OCL the behavioral and axiomatic properties of imperative programming languages. The modeling of the behavioral properties helps to execute the code models if we dispose a right execution environment. In the other hand, the modeling of the axiomatic properties helps to demonstrate the correctness of the code model. In fact, the assertions obtained from the modeling of the axiomatic properties of the language will be transferred to a B atelier in order to have further validation. In the third part, we show how we inject into the UML metamodel the considered domain behavioral and axiomatic properties. We focus on the activity diagram metamodel of the UML which defines the behavior part of a UML model. The coherence between the models and the codes can be then verified in comparing the behavioral and axiomatic properties of the models issued from the requirements and that of the codes. Our work is financed by the ANR research projects

    Langage contrôlé pour la spécification des règles métier dans le contexte de la modélisation des systèmes d'information

    Get PDF
    Our thesis focuses on controlled natural languages (CNL) for software engineering. It aims at facilitating the adoption of the business rule approach (BRA) by companies by creating a CNL in order to help business experts in the specification of their business rules. Our solution will allow reducing the semantic gap between business experts and system experts to meet not only the need for mutual understanding between them but also to achieve an automatic transfer of the description of business rules to information systems (IS). The CNL that we have created will also ensure the consistency and the traceability of these rules together with their implementationNotre thèse s’inscrit dans le cadre des langages contrôlés pour le génie logiciel. Elle a pour but de faciliter l’adoption de l’approche par règles métier (ARM) par les entreprises en créant un langage contrôlé en vue d’aider à la spécification des règles métier par les experts métier. Notre solution va permettre de réduire la distance sémantique entre les experts métier et les experts système afin de répondre non seulement au besoin d’intercompréhension entre ces derniers mais aussi pour réaliser un transfert automatique de la description des règles métier vers les systèmes d’information (SI). Ce langage contrôlé que nous avons créé permettra d’assurer en plus la consistance et la traçabilité de ces règles avec leur implantatio

    Ingénierie Dirigée par les Modèles : des concepts à la pratique...

    Get PDF
    National audienceL'Ingénierie Dirigée par les Modèles (IDM), ou Model Driven Engineering (MDE) en anglais, s'inscrit dans l'évolution des techniques pour le développement de systèmes informatiques afin d'en maîtriser leurs complexités en se concentrant sur une préoccupation plus abstraite que la programmation classique. En s'appuyant sur des approches génératives, il s'agit d'engendrer tout ou partie d'une application à partir de modèles. Un modèle est une abstraction, une simplification d'un système qui est nécessaire et suffisante pour comprendre un aspect particulier du système modélisé et répondre aux questions que soulève cet aspect du système. Un système peut être décrit par différents modèles liés les uns aux autres, et exprimé chacun à l'aide d'un langage de modélisation dédié (Domain Specific Modeling Languages - DSML). Le principe est d'utiliser autant de langages de modélisation différents que les aspects chronologiques ou technologiques du développement du système le nécessitent. L'activité consistant à définir ces DSML (la syntaxe et la sémantique), appelée métamodélisation, est donc une problématique clé de l'IDM. En outre, les autres problématiques clés de l'IDM consistent à rendre les modèles construits opérationnels (pour la simulation, la génération de code, de documentation ou de test, la validation, la vérification, l'exécution, etc.) à l'aide de composition et de transformation de modèle. A la fois un cours et un tutoriel, cet ouvrage offre une approche didactique et pragmatique d'apprentissage de l'IDM. Nous présentons dans la première partie les principes clés de cette nouvelle ingénierie. Nous introduisons une description précise de l'état des connaissances de manière à aborder les concepts avancés de l'IDM, ainsi que les motivations et l'étendue du bouleversement attendu dans l'ingénierie du logiciel. La deuxième partie aborde ensuite les différentes étapes d'un développement dirigé par les modèles en les illustrant au travers d'un exemple concret. Chaque étape est décrite de manière à présenter l'état de la pratique et introduire certains des outils actuellement disponible

    Actes des 2èmes journées sur l’Ingénierie Dirigée

    Get PDF
    National audienceL’ingénierie dirigée par les modèles (IDM), appelée en anglais MDE (Model-Driven Engineering) ou aussi MDD (Model-Driven Development) place le modèle au centre du processus de conception et permet à cette notion de modèle de passer d’un rôle contemplatif à un rôle unificateur vis-à-vis des autres activités du cycle de développement du logiciel. L’IDM doit alors être vu non pas comme une révolution, mais comme un moyen d’intégrationde différents espaces techniques pour aller vers une production automatisée des logiciels.L’ingénierie dirigée par les modèles apporte alors des solutions à la construction de ces nouveaux logiciels en proposant des approches de modélisation, de métamodélisation, de détermination du domaine, de transformation et de prise en compte des plates-formes. Ces approches sont accompagnées de démarches de conception et de moyens de génération de code, mais également de validation et de vérification de la conformité des modèles produits vis-à-vis des métamodèles. Elles sont proches des idées actuelles comme la programmation générative, les langages spécifiques de domaine (DSL), le MIC (Model Integrating Computing) ou encore les usines à logiciels (Software factories). Après le succès des journées IDM à Paris en 2005, la seconde édition de ces journées se déroule à Lille et a pour objectif de rassembler les chercheurs francophones intéressés par ce domaine et souhaitant participer à la structuration de cette communauté scientifique émergente

    Exploration sémantique des modèles socio-environnementaux: Approche générique pour l'initialisation et l'observation des modèles de simulation complexes

    Get PDF
    Researchers have sought to deal with the complexity of socio-ecosystems including biophysical and social dynamics, and their interactions. In order to cope with this complexity, they need increasingly complex models, whose initialization, and observation are becoming very difficult to implement. However, no generic framework has yet been developed to address this issue. The objective of the thesis is a generic framework for specifying and implementing the initialization from numerous heterogeneous data, and the observation producing the desired indicators. The result is a set of tools and know-how, allowing thematicians to specify and automate the whole process of exploitation of a simulation model, from the initialization to the production of indicators. For this, we propose to formulate the initialization and observation as transformations among data and data structures. This formulation allows to use the Model Driven Engineering (MDE) concepts in order to implement the generic framework and the corresponding domain specific languages (DSL) allow thematicians to specify easier initialization and observation SES models.Les chercheurs veulent aborder toute la complexité des socio-écosystèmes (SES) afférents aux dynamiques biophysiques, sociales ainsi qu’à leurs interactions. Afin d'aborder cette complexité, ils ont recours à des modèles de simulation de plus en plus complexes, dont l'initialisation et l'observation sont devenues difficiles à mettre en œuvre. Toutefois, aucun cadre générique n'a encore été développé pour résoudre ce problème. L’objectif de cette thèse est de proposer un cadre générique pour la spécification et la mise en œuvre de l'initialisation, à partir de nombreuses données hétérogènes, et l'observation pour produire les indicateurs souhaités par les thématiciens. Le résultat est un ensemble d’outils et de savoir-faire, permettant aux thématiciens de spécifier et d’automatiser l'ensemble du processus d'exploitation d’un modèle de simulation, de l'initialisation à la production des indicateurs. Pour cela, nous proposons de formuler l'initialisation et l'observation des modèles de simulation en des transformations entre données et structures de données. Cette formulation permet d'utiliser les concepts de l’ingénierie dirigée par les modèles (IDM) afin de mettre en œuvre des langages dédiés (DSL). Ces derniers fournissent les concepts nécessaires permettant aux thématiciens de spécifier plus facilement l’initialisation et l’observation de modèles de SES

    topPROCESS : vers une ingénierie des procédés dirigée par les modèles

    Get PDF
    National audienceCet article présente topPROCESS, une approche proactive de pilotage des processus qui permet de mettre en place les bonnes pratiques, ITIL, CMMI... de manière pragmatique et opérationnelle sur une architecture modulaire. L'approche est globale, transverse et fait intervenir de manière collaborative les parties prenantes en concentrant les efforts sur les processus apportant de la valeur. topPROCESS a permis la conception et la modélisation des processus du projet Topcased dont l'objectif est d'offrir un environnement open-source pour le développement de systèmes critiques. L'ingénierie des modèles (IDM) a été utilisée pour le développement d'un éditeur de modèles de processus et la vérification de leur cohérence par rapport à des contraintes exprimées en terme de ressources, ordonnancement, temps..

    Approche de métamodélisation pour la simulation et la vérification de modèle. Application à l'ingénierie des procédés

    Get PDF
    Nous proposons dans cette thèse une démarche permettant de décrire un DSML (Domain Specific Modeling Language) et les outils nécessaires à l'exécution, la vérification et la validation des modèles. La démarche que nous proposons offre une architecture générique de la syntaxe abstraite du DSML pour capturer les informations nécessaires à l'exécution d'un modèle et définir les propriétés temporelles qui doivent être vérifiées. Nous nous appuyons sur cette architecture pour expliciter la sémantique de référence et l'implanter. Plus particulièrement, nous étudions les moyens : – d'exprimer et de valider la définition d'une traduction vers un domaine formel dans le but de réutiliser des outils de model-checking. – de compléter la syntaxe abstraite par le comportement ; et profiter d'outils génériques pour pouvoir simuler les modèles construits. Enfin, de manière à valider les différentes sémantiques implantées vis-à-vis de la sémantique de référence, nous proposons un cadre formel de métamodélisation. ABSTRACT : We propose in this thesis a specific taxonomy of the mechanisms allowing to express an execution semantics for Domain Specific Modeling Languages (DSMLs). Then, we integrate these different mechanisms within a comprehensive approach describing DSMLs and tools required for model execution, verification and validation. The proposed approach provides a rigorous and generic architecture for DSML abstract syntax in order to capture the information required for model execution. We rely on this generic architecture to make the reference semantics explicit and implement it. More specifically, we study the means : – to express and validate the definition of a translation into a formal domain in order to re-use model-checking techniques. – to enrich the abstract syntax with the definition of the DSML behaviour and take advantage of generic tools so to simulate the built models. Finally, for the purpose of validating the equivalence of different semantics implemented according to the reference semantics, we also propose a formal metamodeling framewor

    Spem4mde : un métamodèle et un environnement pour la modélisation et la mise en œuvre assistée de processus IDM

    Get PDF
    With the emergence of MDE, many organizations have been starting to transform their traditional software development processes into model-driven processes. Kleppe and al. define a model-driven software development as “a process of developing software using different models on different levels of abstraction with (automated) transformations between these models”.While model-driven development processes – called MDE processes – have started to appear, a tool-supported Process Modeling Language (PML) for describing and enacting such processes is still lacking. The concepts of SPEM 2.0 are quite generic since they are supposed to allow describing any kind of software. However, SPEM 2.0 concepts do not succeed in capturing the exact nature of most activities and artifacts of model-driven development. In addition, another major weakness of SPEM 2.0 is the lack of concepts for process enactment.The objective of this thesis is threefold: (1) provide an extension of SPEM that reifies the MDE concepts; (2) provide a language dedicated to behavioral modeling of MDE processes; (3) provide a conceptual architecture of a PSEE (Process-centered Software Engineering Environment) that guides process designer at modeling phase and developers at enactment time.To validate our approach, a prototype of this PSEE is developed under the TOPCASED environment. This prototype provides a graphical editor for structural and behavioral modeling of MDE processes, and a process enactment engine based on process behavior models. We have also applied our approach to a significant case study: the UWE (UML-based Web Engineering) process, which is a MDE process dedicated to web applications development.L’avènement de l’IDM (Ingénierie Dirigée par les Modèles) a suscité beaucoup d’intérêt de la part des organisations qui de fait commencent à transformer leur processus de développement traditionnel en un processus de développement dirigé par les modèles, appelé aussi processus IDM.Au moment où ces processus commencent à émerger, nous notons l’absence d’un langage dédié pour les modéliser et les mettre en œuvre. Le standard SPEM 2.0 propose des concepts génériques qui sont supposés être capables de décrire tout type de processus logiciel. Cependant, les concepts de SPEM ne capturent pas la nature exacte des processus IDM. D’autre part, une autre insuffisance majeure de SPEM réside dans le fait qu’il n’intègre pas les concepts relatifs à la mise en œuvre des processus.L’objectif de cette thèse est triple : (1) proposer une extension de SPEM dans laquelle les concepts centraux des processus IDM sont réifiés ; (2) proposer un langage dédié à la modélisation comportementale des processus IDM ; (3) proposer une architecture conceptuelle d’un environnement logiciel d’aide à la modélisation et à la mise en œuvre des processus IDM.Pour valider notre approche, un prototype a été développé sous l’environnement TOPCASED. Ce prototype fournit d’une part un éditeur graphique pour la modélisation structurelle et comportementale des processus IDM et d’autre part un environnement de mise en œuvre s’appuyant sur les modèles comportementaux des processus. Nous avons également appliqué notre approche à une étude de cas significatif: le processus UWE (UML-based Web Engineering), qui est un processus IDM dédié au développement d’applications web
    • …
    corecore