15 research outputs found

    MODÉLISATION DE PROCÉDÉS LOGICIELS À BASE DE PATRONS RÉUTILISABLES

    Get PDF
    This thesis investigates the reuse of software processes by an approach based on process patterns. The objective of our work is to make process patterns directly applicable in process modeling. The concept of process pattern is used to capture and reuse the proven solutions for recurring process problems. However, this attractive concept has still been poorly exploited due to the inadequate formalization and the lack of supporting methodology and tools. To promote the use of process patterns and reduce the modelling effort, we broaden the concept of process pattern for capturing various types of process knowledge at different abstract levels, and propose ways to reuse (semi-)automatically process patterns in process modelling. We define the process meta-model UML-PP to formalize the process pattern concept and the ways to apply patterns in process models. UML-PP allows describing the internal structure of a process pattern as well as the relations between process patterns, and enables the explicit representation of process patterns' applications in process models. We propose the meta-process PATPRO defining the modelling steps to elaborate a process model in UML-PP by reusing process patterns. To allow automated applications of process patterns, we define an operational semantics for the patterns reuse operators who carry out some tasks of the meta-process. We have developed the prototype PATPRO-MOD allowing to create and manage process patterns catalogues, and to elaborate process models in UML-PP by reusing (semi-)automatically process patterns.Cette thÚse est consacrée à la réutilisation de procédés par une approche à base de patrons de procédé. Le concept de patron de procédé a été introduit pour capitaliser et réutiliser des solutions éprouvées des problÚmes de procédés récurrents. Cependant cette approche est encore peu exploitée à cause du champ de définition limité, du manque de formalisation, de méthodologie et d'outils support. Pour promouvoir l'utilisation de patrons de procédé et réduire l'effort de modélisation, nous considérons le concept de patron de procédé à différents niveaux d'abstraction pour capturer divers types de connaissances sur les procédés, et proposons des moyens pour réutiliser de façon (semi-)automatique ces patrons dans la modélisation des procédés. Nous avons défini le méta-modÚle de procédé UML-PP pour formaliser le concept de patron de procédé et la maniÚre d'appliquer les patrons dans la modélisation de procédés. UML-PP permet de décrire la structure interne d'un patron de procédé ainsi que les relations entre patrons, et permet d'exprimer explicitement l'utilisation de patrons dans les modÚles de procédé. Nous proposons le méta-procédé PATPRO définissant une démarche de modélisation pour élaborer un modÚle de procédé UML-PP en réutilisant des patrons de procédé. Pour permettre une automatisation de l'application de patrons de procédé, nous définissons une sémantique opérationnelle des opérateurs de réutilisation de patrons qui réalisent l'imitation de patrons. Nous avons réalisé le prototype PATPRO-MOD permettant de créer et gérer des catalogues de patrons de procédé et d'élaborer des modÚles de procédé UML-PP en réutilisant semi-automatiquement des patrons prédéfinis

    Processus IDM pour l’intĂ©gration des patrons de sĂ©curitĂ© dans une application Ă  base de composants

    Get PDF
    Security has become an important challenge in current software and system development. Most of designers are experts in software development but not experts in security. It is important to guide them to apply security mechanisms in the early phases of software development to reduce time and cost of development. To reach this objective, we propose to apply security expertise as security patterns at software design phase. A security pattern is a well-understood solution to a recurring information security problem. So, security patterns encapsulate the knowledge accumulated by security experts to secure a software system. Although well documented, patterns are often neglected at the design level and do not constitute an intuitive solution that can be used by software designers. This can be the result of the maladjustment of those patterns to systems context, the inexpertness of designers with security solutions and the need of integration process to let designers apply those pattern ? solutions in practical situations and to work with patterns at higher levels of abstraction. To enable designers to use solutions proposed by security patterns, this thesis proposes a model driven engineering approach to secure applications through the integration of security patterns. Component-based approach is a powerful means to develop and reuse complex systems. In this thesis, we take component based software systems as an application domain for our approach to facilitate the development of applications by assembling prefabricated software building blocks called components. The proposed process provides separation between domain expertise and application security expertise, both of which are needed to build a secure application. Our main goal is to provide a semi-automatic integrating of security patterns into component-based models, and producing an executable secure code. This integration is performed through a set of transformation rules. The result of this integration is a new model supporting security concepts. It is then automatically translated into aspect-oriented code related to security. These aspects are then woven in a modular way within the functional application code to enforce specified security properties. The use of aspect technology in the implementation phase guarantees that the application of security patterns is independent from any particular implementation. In order to provide a clear comprehension of the SCRIP process, we have described it using the standard SPEM . This work is implemented in a software tool called SCRI-TOOL (SeCurity patteRn Integration Tool). This tool allows not security experts developers to integrate different security properties throughout the development cycle of an component based application. To illustrate the use of SCRI-TOOL, we propose a case study regarding electronic healthcare systems. The choice of such a case study is motivated by the great attention archived for such systems from academia and industry and by the importance of security in such systems. Indeed, because of the large number of actors that can interact in such systems, security is a critical requirement. This case study will also allow us to illustrate the proposed methodology to highlight the importance of security management at a high level of abstraction. As results of the application of this process, we obtain a health care application completely secure and meeting the requirements of medical context.La sĂ©curitĂ© est devenue un enjeu important dans le dĂ©veloppement des systĂšmes logiciels actuels. La majoritĂ© des concepteurs de ces systĂšmes manquent d’expertise dans le domaine de la sĂ©curitĂ©. Il s’avĂšre donc important de les guider tout au long des diffĂ©rentes phases de dĂ©veloppement logiciel dans le but de produire des systĂšmes plus sĂ©curisĂ©s. Cela permettra de rĂ©duire le temps ainsi que les coĂ»ts de dĂ©veloppement. Pour atteindre cet objectif, nous proposons d’appliquer l’expertise en matiĂšre de sĂ©curitĂ© sous forme de patrons de sĂ©curitĂ© lors de la phase de conception de logiciels. Un patron de sĂ©curitĂ© intĂšgre des solutions Ă©prouvĂ©es et gĂ©nĂ©riques proposĂ©es par des experts en sĂ©curitĂ©. Cependant, les patrons de sĂ©curitĂ© sont souvent nĂ©gligĂ©s au niveau de la conception et ne constituent pas une solution intuitive qui peut ĂȘtre utilisĂ©e par les concepteurs de logiciels. Cela peut ĂȘtre le rĂ©sultat de l’inadaptation de ces patrons au contexte des systĂšmes, la non-expertise des concepteurs dans le domaine de la sĂ©curitĂ© ou encore l’absence d’un processus d’intĂ©gration de ces patrons dans les modĂšles Ă  un haut niveau d’abstraction.Afin de permettre aux concepteurs d’utiliser les solutions proposĂ©es par des patrons de sĂ©curitĂ©, cette thĂšse propose une approche d’ingĂ©nierie dirigĂ©e par les modĂšles pour sĂ©curiser des applications via l’intĂ©gration de patrons de sĂ©curitĂ©. Nous avons choisi comme contexte d’application de notre approche, les applications Ă  base de composants qui visent Ă  faciliter le dĂ©veloppement d’applications Ă  partir de l’assemblage de briques logicielles prĂ©fabriquĂ©es appelĂ©es composants. Le processus proposĂ© assure la sĂ©paration entre l’expertise du domaine d’application et l’expertise de sĂ©curitĂ©, toutes les deux Ă©tant nĂ©cessaires pour construire une application sĂ©curisĂ©e. La mĂ©thodologie proposĂ©e assure une intĂ©gration semi-automatique des patrons de sĂ©curitĂ© dans le modĂšle initial. Cette intĂ©gration est rĂ©alisĂ©e tout d’abord lors de la modĂ©lisation de l’application Ă  travers, dans un premier temps, l’élaboration de profils Ă©tendant les concepts du domaine avec les concepts de sĂ©curitĂ©. Dans un second temps, l’intĂ©gration se fait Ă  travers la dĂ©finition de rĂšgles, qui une fois appliquĂ©es, gĂ©nĂšrent une application sĂ©curisĂ©e. Finalement, cette intĂ©gration est assurĂ©e aussi au niveau de la gĂ©nĂ©ration du code fonctionnel de l’application en intĂ©grant le code non-fonctionnel relatif Ă  la sĂ©curitĂ© Ă  travers l’utilisation des aspects. L’utilisation de l’approche orientĂ©e aspect garantit que l’application des patrons de sĂ©curitĂ© est indĂ©pendante de toute application particuliĂšre. Le processus proposĂ© est dĂ©crit avec le standard SPEM.Ce travail a Ă©tĂ© concrĂ©tisĂ© par un outil nommĂ© SCRI-TOOL pour SeCurity patteRn Integration Tool. Cet outil permet aux dĂ©veloppeurs non experts en sĂ©curitĂ© d’intĂ©grer les diffĂ©rentes propriĂ©tĂ©s de sĂ©curitĂ© (intĂ©grĂ©es dans les patrons) dans une application Ă  base de composants. AïŹn d’illustrer l’utilisation de SCRI-TOOL, nous proposons une Ă©tude de cas portant sur le domaine des systĂšmes de soins distribuĂ©s. Le choix d’une telle Ă©tude de cas s’explique par l’importance des exigences en termes de sĂ©curitĂ© requises pour le bon fonctionnement d’une telle application. En effet, vue le grand nombre d’acteurs pouvant interagir, la sĂ©curitĂ© est une exigence critique dans de tels systĂšmes. Cette Ă©tude nous a permis de mettre en Ă©vidence l’importance de la gestion de la sĂ©curitĂ© Ă  un haut niveau d’abstraction et la façon d’appliquer la mĂ©thodologie proposĂ©e sur un cas rĂ©el

    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

    ModÚles, outils et plate-forme d'exécution pour les applications à service dynamiques

    Get PDF
    L'essor de l'Internet et l'Ă©volution des dispositifs communicants ont permis l'intĂ©gration du monde informatique et du monde rĂ©el, ouvrant ainsi la voie Ă  de nouveaux types d'applications, tels que les applications ubiquitaires et pervasives. Ces applications doivent s'exĂ©cuter dans des contextes hĂ©tĂ©rogĂšnes, distribuĂ©s et ouverts qui sont en constante Ă©volution. Dans de tels contextes, la disponibilitĂ© des services et des dispositifs, les prĂ©fĂ©rences et la localisation des utilisateurs peuvent varier Ă  tout moment pendant l'exĂ©cution des applications. La variabilitĂ© des contextes d'exĂ©cution fait que l'exĂ©cution d'une application dĂ©pend, par exemple, des services disponibles ou des dispositifs accessibles Ă  l'exĂ©cution. En consĂ©quence, l'architecture d'une telle application ne peut pas ĂȘtre connue statiquement Ă  la conception, au dĂ©veloppement ou au dĂ©ploiement, ce qui impose de redĂ©finir ce qu'est une application dynamique : comment la concevoir, la dĂ©velopper, l'exĂ©cuter et la gĂ©rer Ă  l'exĂ©cution. Dans cette thĂšse, nous proposons une approche dirigĂ©e par les modĂšles pour la conception, le dĂ©veloppement et l'exĂ©cution d'applications dynamiques. Pour cela, nous avons dĂ©fini un modĂšle de composants Ă  services permettant d'introduire des propriĂ©tĂ©s de dynamisme au sein d'un modĂšle de composants. Ce modĂšle permet de dĂ©finir une application en intention, via un ensemble de propriĂ©tĂ©s, de contraintes et de prĂ©fĂ©rences de composition. Une application est ainsi spĂ©cifiĂ©e de façon abstraite ce qui permet de contrĂŽler la composition graduelle de l'application lors de son dĂ©veloppement et de son exĂ©cution. Notre approche vise Ă  effacer la frontiĂšre entre les activitĂ©s effectuĂ©es avant et pendant l'exĂ©cution des applications. Pour ce faire, le mĂȘme modĂšle et les mĂȘmes mĂ©canismes de composition sont utilisĂ©s de la conception jusqu'Ă  l'exĂ©cution des applications. A l'exĂ©cution, le processus de composition considĂšre, en plus, les services disponibles dans la plate-forme d'exĂ©cution permettant la composition opportuniste des applications ; ainsi que la variabilitĂ© du contexte d'exĂ©cution permettant l'adaptation dynamique des compositions. Nous avons mis en Ɠuvre notre approche via un prototype nommĂ© COMPASS, qui s'appuie sur les plates-formes CADSE pour la rĂ©alisation d'environnements logiciels de conception et de dĂ©veloppement, et APAM pour la rĂ©alisation d'un environnement d'exĂ©cution d'applications Ă  services dynamiques.The growth of the Internet and the evolution of communicating devices have allow the integration of the computer world and the real world, paving the way for developing new types of applications such as pervasive and ubiquitous ones. These applications must run in heterogeneous, distributed and open environments that evolve constantly. In such environments, the availability of services and devices, the preferences and location of users may change at any time during the execution of applications. The variability of the execution context makes the execution of an application dependent on the available services and devices. Building applications capable of evolving dynamically to their execution context is a challenging task. In fact, the architecture of such an application cannot be fully known nor statically specified at design, development or deployment times. It is then needed to redefine the concept of dynamic application in order to cover the design, development, execution and management phases, and to enable thus the dynamic construction and evolution of applications. In this dissertation, we propose a model-driven approach for the design, development and execution of dynamic applications. We defined a component service model that considers dynamic properties within a component model. This model allows defining an application by its intention (its goal) through a set of composition properties, constraints and preferences. An application is thus specified in an abstract way, which allows controlling its gradual composition during development and execution times. Our approach aims to blur the boundary between development-time and runtime. Thus, the same model and the same composition mechanisms are used from design to runtime. At runtime, the composition process considers also the services available in the execution platform in order to compose applications opportunistically; and the variability of the execution context in order to adapt compositions dynamically. We implemented our approach through a prototype named COMPASS, which relies on the CADSE platform for building software design and development environments, and on the APAM platform for building an execution environment for dynamic service-based applications.SAVOIE-SCD - Bib.Ă©lectronique (730659901) / SudocGRENOBLE1/INP-Bib.Ă©lectronique (384210012) / SudocGRENOBLE2/3-Bib.Ă©lectronique (384219901) / SudocSudocFranceF

    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

    Génération stratégique de code pour la maßtrise des performances de systÚmes temps-réel embarqués

    Get PDF
    We focused on real-time embedded critical systems (RTECS) which present different problems: criticality, respect of time constraints and resources availability such as memory. In order to master design complexity of such systems, Model Driven Engineering (MDE) proposes to model it for analysis purposes and to generate, partially or totally, its execution code. However, these two phases must be correctly connected to ensure the generated code is always enforcing all the properties of the model initially analysed. In addition, the code generator must be adapted to several criteria: in particular to ensure respect of performances or to target different execution platforms which have their own execution constraints and semantics. To realize such an adaptation, the development process requires to evolve transformation rules according to these criteria. Its architecture needs also to allow the selection of the generated software components respecting these criteria.We answer such a problem by proposing a generation process based on the MDE. When the user specifies and validates a high-level model, a model transformation translates automatically this model into a detailed model close to the generated code. To ensure the conservation of the requirements, the detailed model is expressed in the same formalism as the initial model so that it remains analysable (by the same tools initially used). This approach determines the impact of the code generation strategy on the performances of the final system and allows the generator to adapt its strategy, in a given stage, to insure the respect of the system constraints. To facilitate the development and the selection of alternative strategies, we propose a methodology which articulates around a formalism for the orchestration of the transformations, a set of transformation patterns (which factorize and generalize the transformation rules) and an adaptation of software components according to their impact on the performances. We set up this process within the environment OSATE, for which we have developed the framework RAMSES (Refinement of AADL Models for Synthesis of Embedded Systems). We have experimented it on the code generation of the communications between tasks for which several strategies of implementation were defined.Nous nous sommes intĂ©ressĂ©s aux systĂšmes embarquĂ©s temps-rĂ©el critiques (SETRC) qui soulĂšvent des problĂ©matiques de criticitĂ©, de respect de contraintes temporelles et de disponibilitĂ© des ressources telles que la mĂ©moire. Pour maĂźtriser la complexitĂ© de conception de ces systĂšmes, l’IngĂ©nierie DirigĂ©e par les ModĂšles (IDM) propose de les modĂ©liser pour les analyser au regard de leurs exigences et pour gĂ©nĂ©rer en partie leur code d’exĂ©cution. Cependant ces deux phases doivent s’articuler correctement de sorte que le systĂšme gĂ©nĂ©rĂ© respecte toujours les propriĂ©tĂ©s du modĂšle initialement analysĂ©. Par ailleurs, le gĂ©nĂ©rateur de code doit s’adapter Ă  de multiples critĂšres : notamment pour assurer le respect des performances ou bien pour cibler diffĂ©rentes plates-formes d’exĂ©cution qui ont leurs propres contraintes et sĂ©mantiques d’exĂ©cution. Pour rĂ©aliser cette adaptation, le processus de dĂ©veloppement requiert de faire Ă©voluer les rĂšgles de transformation selon ces critĂšres. Son architecture doit Ă©galement de permettre de sĂ©lectionner les composants logiciels rĂ©pondant Ă  ces critĂšres. Nous rĂ©pondons Ă  cette problĂ©matique en proposant un processus de gĂ©nĂ©ration s’appuyant sur l’IDM. Lorsque l’utilisateur a spĂ©cifiĂ© et validĂ© un modĂšle de haut niveau, une transformation traduit automatiquement ce modĂšle en un second modĂšle dĂ©taillĂ© proche du code gĂ©nĂ©rĂ©. Pour assurer la conservation des exigences, le modĂšle dĂ©taillĂ© est exprimĂ© dans le mĂȘme formalisme que le modĂšle initial de sorte qu’il reste analysable. Cette dĂ©marche dĂ©termine l’impact de la stratĂ©gie du gĂ©nĂ©rateur sur les performances du systĂšme final et permet au gĂ©nĂ©rateur de changer de stratĂ©gie, Ă  une Ă©tape donnĂ©e, pour assurer le respect des contraintes du systĂšme. Pour faciliter le dĂ©veloppement et la sĂ©lection de stratĂ©gies alternatives, nous proposons une mĂ©thodologie qui s’articule autour d’un formalisme pour l’orchestration des transformations, un ensemble de patrons de transformation (qui factorisent et gĂ©nĂ©ralisent les rĂšgles de transformation) et une adaptation de composants logiciels selon leur impact sur les performances. Nous avons mis en place ce processus au sein de l’environnement OSATE, pour lequel nous avons dĂ©veloppĂ© le framework RAMSES (Refinment of AADL Models for Synthesis of Embedded Systems). Nous l’avons expĂ©rimentĂ© sur la gĂ©nĂ©ration des communications entre tĂąches pour lesquelles plusieurs stratĂ©gies d’implĂ©mentation ont Ă©tĂ© dĂ©finie

    Une approche par composants pour l'analyse visuelle interactive de résultats issus de simulations numériques

    Get PDF
    Component-based approaches are increasingly studied and used for the effective development of the applications in software engineering. They offer, on the one hand, safe architecture to developers, and on the other one, a separation of the various functional parts and particularly in the interactive scientific visualization applications. Modeling such applications enables the behavior description of each component and the global system’s actions. Moreover, the interactions between components are expressed through a communication schemes sometimes very complex with, for example, the possibility to lose messages to enhance performance. This thesis describes ComSA model (Component-based approach for Scientific Applications) that relies on a component-based approach dedicated to interactive and dynamic scientific visualization applications and its formalization in strict Colored FIFO Nets (sCFN). The main contributions of this thesis are, first, the definition of a set of tools to model the component’s behaviors and the various application communication policies. Second, providing some properties on the application to guarantee it starts properly. It is done by analyzing and detecting deadlocks. This ensures the liveness throughout the application execution. Finally, we present dynamic reconfiguration of visual analytics applications by adding or removing on the fly of a component without stopping the whole application. This reconfiguration minimizes the number of unavailable services.Les architectures par composants sont de plus en plus Ă©tudiĂ©es et utilisĂ©es pour le dĂ©veloppement efficace des applications en gĂ©nie logiciel. Elles offrent, d’un cĂŽtĂ©, une architecture claire aux dĂ©veloppeurs, et de l’autre, une sĂ©paration des diffĂ©rentes parties fonctionnelles et en particulier dans les applications de visualisation scientifique interactives. La modĂ©lisation de ces applications doit permettre la description des comportements de chaque composant et les actions globales du systĂšme. De plus, les interactions entre composants s’expriment par des schĂ©mas de communication qui peuvent ĂȘtre trĂšs complexes avec, par exemple, la possibilitĂ© de perdre des messages pour gagner en performance. Cette thĂšse dĂ©crit le modĂšle ComSA (Component-based approach for Scientific Applications) qui est basĂ© sur une approche par composants dĂ©diĂ©e aux applications de visualisation scientifique interactive et dynamique formalisĂ©e par les rĂ©seaux FIFO colorĂ©s stricts (sCFN). Les principales contributions de cette thĂšse sont dans un premier temps, un ensemble d’outils pour modĂ©liser les diffĂ©rents comportements des composants ainsi que les diffĂ©rentes politiques de communication au sein de l’application. Dans un second temps, la dĂ©finition de propriĂ©tĂ©s garantissant un dĂ©marrage propre de l’application en analysant et dĂ©tectant les blocages. Cela permet de garantir la vivacitĂ© tout au long de l’exĂ©cution de l’application. Finalement l’étude de la reconfiguration dynamique des applications d’analyse visuelle par ajout ou suppression Ă  la volĂ©e d’un composant sans arrĂȘter toute l’application. Cette reconfiguration permet de minimiser le nombre de services non disponibles

    Modélisation paramétrique en conception architecturale : Caractérisation des opérations cognitives de conception pour une pédagogie

    Full text link
    This research focuses on the uses of parametric modeling in architectural design. The object of this research is to identify cognitive operations involved in these uses. The characterisation of these mental operations is then a support to develop pedagogy and didactics tools. Analyses of design practices in professional contexts show that parametric modeling is linked to various computer assisted tasks: complex form finding and representation, evaluation, optimization, fabrication, communication, collaboration etc. We observed in our analyses that most often parametric modeling actors are not the one who design projects. Parametric modeling requires expert skills and knowledge that most architects have not yet mastered. How architects could be assisted for parametric modeling during the design process and how they could be trained are thus crucial questions. In order to address these questions we searched to identify the characteristics of the cognitive operations implied in the uses of parametric modeling in architectural design. We used Architecturology as scientific support of the research. Architecturology provides a scientific language for describing cognitive operations of architectural design. This language aims to interrogate conception through cognitive operations of giving measurements to an artifact. In this reseach, we distinguished operations that give measurement to an architectural object and operations that give measurement to a parametric model’s object. We found out different kind of operations implied in parametric model conception: -elementary operation of conception (slicing, dimensioning and referencing) and; -pragmatic operation of conception (interpretating, pooling and translating in parametric geometry). These operations show that we can distinguish conception of parametric modelling and architectural design, but it also show that these operations are intricate. Relevancies and references implied in elementary operations of conception are porous. This porosity between parametric modelling and architectural design is allowed by the pragmatic operations and by the construction of a common knowledge. Thus the theoretical framework developed to analyze parametric architectural design situations leaded us to analyze various methodological or technical support tools proposed for assisting parametric modeling. For example, we analyzed the different supports provided by the large community of parametric modeling users and the “patterns” method developed by R. Woodbury. Thanks to the different results of the research (cognitive operation identified and existing helps analyzed) we proposed didactics tools for assisting architects to parametric design.Cette recherche porte sur les usages des logiciels dit de « modĂ©lisation paramĂ©trique » en conception architecturale. Plus spĂ©cifiquement, sont interrogĂ©es les activitĂ©s cognitives de conception impliquĂ©es lors de ces usages. L’architecturologie est le support scientifique de cette recherche. Les concepts de l’architecturologie permettent d’interroger les activitĂ©s cognitives de conception en termes d’opĂ©rations d’attribution de mesures. Les rĂ©sultats de cette thĂšse montrent que les principales opĂ©rations cognitives de conception de modĂšles paramĂ©triques sont : - des opĂ©rations Ă©lĂ©mentaires de la conception telles qu’interrogĂ©es par l’architecturologie: le dĂ©coupage, le dimensionnement et la rĂ©fĂ©renciation ; - des opĂ©rations « pragmatiques », c'est-Ă -dire participant de la conception mais ne relevant pas directement d’une opĂ©ration d’attribution de mesures, ces opĂ©rations sont : la mise en commun, l’interprĂ©tation, l’appropriation d’outil et l’opĂ©ration de traduction en gĂ©omĂ©trie paramĂ©trique ; des opĂ©rations de logiques relevant de l’induction ou de la vĂ©rification. Ces opĂ©rations nĂ©cessitent et participent Ă  la construction d’un espace des savoirs de la modĂ©lisation paramĂ©trique. Cet espace des savoirs ainsi que les opĂ©rations pragmatiques observĂ©es permettent une intrication par l'Ă©change et le partage de pertinences et d'espaces de rĂ©fĂ©rence entre la conception de modĂšles paramĂ©triques et la conception architecturale. Les analyses menĂ©es pointent les difficultĂ©s rencontrĂ©es dans ces activitĂ©s de conception. La caractĂ©risation des opĂ©rations de conception propres Ă  l’usage de la modĂ©lisation paramĂ©trique en conception architecturale a permis d’interroger la mĂ©thode des patterns proposĂ©e par R. Woodbury. Ces patterns sont proposĂ©s comme une aide Ă  la conception de modĂšles paramĂ©triques en conception architecturale. L’analyse des usages de ces patterns montre que si ceux-ci sont potentiellement une aide puissante, leur gĂ©nĂ©ricitĂ© les rend difficiles d’accĂšs. Cette mĂ©thode peut ĂȘtre complĂ©tĂ©e par le dĂ©veloppement d’une bibliothĂšque de patterns appliquĂ©s (appelĂ©s samples) permettant Ă  l’étudiant un apprentissage par l’exemple et par induction. Un support d’apprentissage s’appuyant sur ces rĂ©sultats a Ă©tĂ© dĂ©veloppĂ© et testĂ© lors de la thĂšse sur la plateforme www.parametric-ressources.com. Les connaissances construites dans cette thĂšse sur l'usage de la modĂ©lisation paramĂ©trique en conception architecturale a permis de proposer une pĂ©dagogie visant Ă  accompagner l'apprentissage des activitĂ©s cognitives sollicitĂ©es. Des objectifs pĂ©dagogiques ont Ă©tĂ© dĂ©finis par rapport aux opĂ©rations cognitives que l'Ă©tudiant doit pouvoir mettre en Ɠuvre. Une pĂ©dagogie par le projet ainsi qu'une pĂ©dagogie par travaux dirigĂ©s sont proposĂ©es en vue de rĂ©pondre Ă  ces objectifs

    Mise en correspondance et gestion de la cohérence de modÚles hétérogÚnes évolutifs

    Get PDF
    To understand and manipulate a complex system, it is necessary to apply the separation of concerns and produce separate parts. In Model Driven Engineering (MDE), these parts are represented by models qualified as partial models. In this context of multi-modeling, these models are called heterogeneous when they are described in separate modeling languages dedicated to different business domains: DSML (Domain Specific Modeling Language). Global model creation requires identifying existing correspondences between the elements of the partial models. However, in practice these correspondences are either incompletely identified or not sufficiently formalized to be maintained when the partial models evolve. This restricts their use and does not allow to fully exploit them for building the global model or for treating partial models evolution. The contribution of this thesis is twofold. The first contribution deals with a process for creating a global view of the system by means of a composition based on partial models matching. Identified correspondences between models elements are based on types of relationship instantiated from a metamodel of correspondences. This latter is extensible, depending on the considered application domain, and allows supporting the concepts related to this domain. Correspondences are firstly identified between meta-elements belonging to metamodels of the respective partial models. Correspondences between model elements are then obtained by a refinement mechanism, supported by an ad hoc Semantic Expression language: SED (Semantic Expression DSL). The composition is called “virtual” since elements represented in a correspondence are only references to elements belonging to partial models. Therefore, models interconnected by this correspondences form a virtual global model. The second contribution relates the consistency of the global model. Indeed, as models evolve over time, changing one or several elements involved in a correspondence, may cause the inconsistency of the global model. To maintain its consistency, we propose a second process enabling to automatically identify the changes, classify them and treat their impacts on the involved model elements. Management of repercussions is performed semi-automatically by the expert by means of strategies and weights. This work has been implemented through a support tool named HMCS (Heterogeneous Matching and Consistency management Suite) based on the Eclipse Platform. The approach has been validated and illustrated through a case study related to the management of a Hospital Emergency Service. This work was led in collaboration with the “CHU of Montpellier”.Pour permettre la comprĂ©hension et la manipulation d’un systĂšme complexe, le dĂ©coupage en parties sĂ©parĂ©es est nĂ©cessaire. En IngĂ©nierie DirigĂ©e par les ModĂšles (ou Model Driven Engineering), ces parties sont reprĂ©sentĂ©es par des modĂšles, que nous qualifions de modĂšles partiels, dans la mesure oĂč ils sont focalisĂ©s sur des domaines mĂ©tiers distincts. Dans ce contexte de multi-modĂ©lisation, ces modĂšles sont dits hĂ©tĂ©rogĂšnes quand ils sont dĂ©crits dans des langages de modĂ©lisation distincts dĂ©diĂ©s Ă  diffĂ©rents domaines mĂ©tiers : DSML (Domain Specific Modeling language). La comprĂ©hension et l’exploitation efficace des connaissances relatives Ă  un tel systĂšme supposent la construction d’un modĂšle global reprĂ©sentant son fonctionnement. La crĂ©ation du modĂšle global requiert l’identification des correspondances existant entre les Ă©lĂ©ments des diffĂ©rents modĂšles partiels. Dans la pratique, ces correspondances sont soit incomplĂštement identifiĂ©es, soit insuffisamment formalisĂ©es pour ĂȘtre maintenues lorsque les modĂšles partiels Ă©voluent. Ceci limite leur utilisation et ne permet pas de les exploiter pleinement lors de la construction du modĂšle global ou du traitement de l’évolution des modĂšles partiels. L’apport de cette thĂšse est double. La premiĂšre contribution est celle d’un processus permettant la crĂ©ation d’une vue globale du systĂšme par l’intermĂ©diaire d’une composition fondĂ©e sur la mise en correspondance des modĂšles partiels. Les correspondances identifiĂ©es entres les Ă©lĂ©ments des modĂšles se basent sur des types de relations instanciĂ©es Ă  partir d’un mĂ©tamodĂšle de correspondance. Ce dernier est extensible (selon les spĂ©cificitĂ©s du domaine d’application considĂ©rĂ©) et permet de supporter les concepts relatifs Ă  ce domaine. Les correspondances sont d’abord identifiĂ©es entre les mĂ©ta-Ă©lĂ©ments des mĂ©tamodĂšles respectifs des modĂšles partiels. Les correspondances entre les Ă©lĂ©ments de modĂšles sont ensuite obtenues par un mĂ©canisme de raffinement, supportĂ© par un langage d’expression sĂ©mantique ad hoc : SED (Semantic Expression DSL). La composition est dite « virtuelle » dans la mesure oĂč les Ă©lĂ©ments figurant dans une correspondance ne sont que des rĂ©fĂ©rences aux Ă©lĂ©ments appartenant aux modĂšles partiels. De ce fait, les modĂšles interconnectĂ©s par ces correspondances forment un modĂšle global virtuel. La seconde contribution est relative au maintien de la cohĂ©rence des modĂšles partiels et du modĂšle global. En effet, les modĂšles Ă©voluant dans le temps, le changement d’un Ă©lĂ©ment ou de plusieurs Ă©lĂ©ments participant Ă  l’expression des correspondances, peut entrainer l’incohĂ©rence du modĂšle global. Pour maintenir la cohĂ©rence du modĂšle global, nous proposons un second processus permettant tout d’abord d’identifier automatiquement les changements rĂ©alisĂ©s ainsi que leurs classifications et leurs rĂ©percussions sur les Ă©lĂ©ments de modĂšles concernĂ©s. Par la suite, les diffĂ©rents cycles sont gĂ©rĂ©s Ă  l’aide de l’expert puis une liste de changements est gĂ©nĂ©rĂ©e en fonction de la stratĂ©gie choisie et des coefficients de pondĂ©ration. Enfin, le traitement des changements est rĂ©alisĂ© de façon semi-automatique. Ce travail a Ă©tĂ© concrĂ©tisĂ© par le dĂ©veloppement d’un outil support nommĂ© HMCS (Heterogeneous Matching and Consistency management Suite), basĂ© sur la plateforme Eclipse. L’approche a Ă©tĂ© validĂ©e et illustrĂ©e Ă  travers un cas d’étude portant sur la gestion du Service d'Urgence d'un hĂŽpital. Ce travail a Ă©tĂ© menĂ© en collaboration avec le CHU de Montpellier
    corecore