30 research outputs found

    Actes des 14e journées sur les Approches Formelles dans l'Assistance au Développement de Logiciels

    Get PDF
    National audienceCet ouvrage présente les actes des 14èmes journées sur les Approches Formelles dans l'Assistance au Développement de Logiciels (AFADL'2015) qui se sont tenues à Bordeaux les 9 et 10 juin 2015

    Méthodes formelles de haut niveau pour la conception de systèmes électroniques fiables

    Full text link
    Thèse numérisée par la Direction des bibliothèques de l'Université de Montréal

    Programmation sûre de plates-formes embarquées de type multi/pluri-cœurs

    Get PDF
    The purpose of this document is to describe an overview of my work on the topic of "programming mutli/many-core COTS in the context of aeronautics" and to propose future research work.L’objectif de ce document est de décrire une synthèse des travaux que j’ai menés autour du thème de "la programmation sûre de plates-formes embarquées" et de proposer des perspectives de recherche pour les années à venir

    Covérification des systèmes intégrés

    Full text link
    Thèse numérisée par la Direction des bibliothèques de l'Université de Montréal

    Alloy4PV : un Framework pour la Vérification de Procédés Métiers

    Get PDF
    In this thesis, we realized a study of the start-of-the-art on different process domains (business, software, military, medical, etc.). The aim was to identify and categorize critical properties that can be verified on any process model. This study resulted in a library of generic and configurable properties. As a second step, we have defined a framework for process verification called Alloy4PV. This framework uses a subset of UML 2 Activity Diagram as a process modeling language. For process verification, (1) we defined a formal model of UML 2 Activity Diagram based on the fUML semantics, the OMG standard that gives a semantic to a subset of UML 2. This was achieved using first-order logic, (2) we implemented this formalization using the Alloy language in order to perform bounded model-checking, and (3) we automatized in a graphical tool integrated to Eclipse, the possibility to express and verify properties on all the perspectives of a process model. This contribution resulted in a tool which is under evaluation by our MerGE project’s partners and to five publications in conferences proceedings.Dans cette thèse, nous avons tout d'abord fait une étude de l'état de l'art dans les différents domaines des procédés (métier, logiciel, militaire, médical, etc) afin d'identifier et de catégoriser les principales propriétés à garantir. À partir de cette étude, nous avons défini une bibliothèque de propriétés générique et paramétrable pour tout modèle de procédé. Ensuite, nous avons défini un framework pour la vérification de procédés appelé Alloy4PV. Il utilise un sous-ensemble des diagrammes d'activités UML 2 comme langage de modélisation. Afin d'effectuer la vérification de procédés, nous avons (1) défini un modèle formel des diagrammes d'activités basé sur la sémantique fUML (le standard de l'OMG donnant une sémantique à un sous-ensemble de UML) en utilisant la logique de premier ordre, (2) implémenté cette formalisation en utilisant le langage Alloy afin d'effectuer du model-checking borné, et (3) automatisé, dans un outil graphique intégré à Eclipse, la possibilité d'exprimer et de vérifier des propriétés sur toutes les perspectives du procédé

    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

    Synthèse de EFSM observatrices à partir de spécifications HAAD

    Full text link
    Mémoire numérisé par la Direction des bibliothèques de l'Université de Montréal

    Model-Checking symbolique pour la vérification de systèmes et son application aux tables de décision et aux systèmes d'éditions collaboratives distribuées

    Get PDF
    Résumé Dans le cycle de vie de tout système logiciel, une phase cruciale de formalisation et de validation au moyen de vérification et/ou de test induit une identification d'erreurs probables infiltrées durant sa conception. Cette détection d'erreurs et leur correction sont avantageuses dans les premières phases de développement du système afin d'éviter tout retour aux travaux ardus d'analyse de spécifications et de modélisation du système précédant sa réalisation. Par conséquent, cette étape mise en oeuvre à travers des méthodes et des outils formels dans les phases amont de la conception contribue à augmenter la confiance des concepteurs et utilisateurs vis-à-vis de la fonctionnalité du système. L'objectif de cette maîtrise s'insère dans le cadre d'une recherche qui vise à exploiter une technique formelle spécifique d'analyse de programmes et de spécifications: l'exécution symbolique combinée au model-checking. Cette technique représente une approche émergente à laquelle les chercheurs ont porté une attention particulière ces dernières années. D'une part, l'exécution symbolique permet d'explorer les chemins d'exécution possibles d'un programme modélisant un système avec des variables d'entrée non initialisées, en d'autres termes en manipulant des variables abstraites ou "symboliques". Ces chemins caractérisent ainsi le comportement du programme de manière abstraite. D'autre part, le model-checking permet d'explorer systématiquement ces différents chemins d'exécution à l'aide d'une énumération exhaustive des états accessibles afin de générer ultérieurement des contreexemples en cas de violation de propriétés du système. De ce fait, l'exécution symbolique combinée au model-checking englobe les points forts de ces deux techniques octroyant aux concepteurs du système une compréhension accrue des situations d'erreur dans les contre-exemples ainsi générés.----------Abstract Verification is one crucial activity in any software life cycle. Its major role is to ensure an identification of potential design and implementation flaws integrated in the software system during its development process. Such an identification leads to eventual corrections in the early steps of the development cycle, thus avoiding tedious work otherwise required in the system requirements' reanalysis as well as in its remodelling preceding its deployment. As a consequence, the verification step is rigorously put into practice through formal methods and tools. Given such a formalisation contributes to give another level of insurance to both the system's designers and users. This thesis is related to a research which aims at applying one specific formal method in program and requirements analysis: symbolic execution intertwined with model checking. This technique has known a major development in the past few years, thus raising interest among researchers in the field. On one hand, symbolic execution explores all possible execution paths of a program modelling a system using uninitialised input variables. As its name implies, this specific execution deals with abstract or "symbolic" variables. Hence, those visited paths characterise the abstract program behaviour. On another hand, model checking ensures a systematic exploration of those different execution paths through an exhaustive visit of all reachable states. This approach is necessary for subsequent generation of counterexamples in case of property violations within the system. Therefore, symbolic execution along with model checking is a resulting approach enforced with advantages of both techniques. This yields a higher degree of interpreting the retrieved flaws provided through generated counterexamples, for even the most sophisticated systems

    Assistance à la validation et vérification de systèmes critiques : ontologies et intégration de composants

    Get PDF
    Les activités de validation et vérification de modèles sont devenues essentielles dans le développement de systèmes complexes. Les efforts de formalisation de ces activités se sont multipliés récemment étant donné leur importance pour les systèmes embarqués critiques. Notre travail s’inscrit principalement dans cette voie. Nous abordons deux visions complémentaires pour traiter cette problématique. La première est une description syntaxique implicite macroscopique basée sur une ontologie pour aider les concepteurs dans le choix des outils selon leurs exigences. La seconde est une description sémantique explicite microscopique pour faciliter la construction de techniques de vérification compositionnelles. Nous proposons dans la première partie de cette thèse une ontologie pour expliquer et expliciter les éléments fondateurs du domaine que nous appelons VVO. Cette ontologie pourra avoir plusieurs autres utilisations : une base de connaissance, un outil de formation ou aussi un support pour le choix de la méthode à appliquer et l’inférence de correspondance entre outils. Nous nous intéressons dans la seconde partie de cette thèse à une formalisation dans un assistant à la preuve de l’introduction de composants dans un langage de modélisation et des liens avec les activités de validation et vérification. Le but est d’étudier la préservation des propriétés par composition : les activités de vérification sont généralement coûteuses en terme de temps et d’effort, les faire d’une façon compositionnelle est très avantageux. Nous partons de l’atelier formel pour l’Ingénierie Dirigée par les Modèles Coq4MDE. Nous suivons la même ligne directrice de développement prouvé pour formaliser des opérateurs de composition et étudier la conservation des propriétés par assemblage. Nous nous intéressons au typage puis à la conformité de modèles par rapport au métamodèle et nous vérifions que les opérateurs définis permettent de conserver ces propriétés. Nous nous focalisons sur l’étude d’opérateurs élémentaires que nous exploitons pour spécifier des opérateurs de plus haut niveau. Les préconditions des opérateurs représentent les activités de vérification non compositionnelles qui doivent être effectuées en plus de la vérification des composants pour assurer la postcondition des opérateurs qui est la propriété souhaitée. Nous concluons en présentant des perspectives pour une formalisation algébrique en théorie des catégories

    Contribution à la gestion de l'évolution des processus métiers

    Get PDF
    La gestion de l'évolution des processus métier exige une compréhension approfondie des cause des changements, de leurs niveaux d'application ainsi que de leurs impacts sur le reste du système. Dans cette thèse, nous proposons une approche de gestion et de contrôle de l'éolution des processus métier permettant d'analyser ces changements et de comprendre leurs impacts. Cela assistera les concepteurs et les chargés de l'évolution des processus métier à établir une évaluation a priori de l'impact pour réduire les risques et les coûts liés à ces changements et d'améliorer le service et la qualité des processus métier. Ce travail consiste à proposer un ensemble de contributions permettant une vérification de la cohérence et de la conformité des modèles de processus métier après chaque changement, mais aussi d'établir une éaluation a priori de l'impact structurel et qualificatif des modifications. Les différentes approches proposées sont en cours d'expérimentation et de validation à travers le développement d'une plate-forme basée sur l'environnement EclipseThe evolution management of the business processes requires an exhaustive understanding of the change. An evolution engineer needs to understand reasons of a change, its application levels, and subsequently its impact on the whole system. In this thesis, we propose an approach for an a priori change impact analysis, to better control the business process evolution. This may help the business experts and the process designers to evaluate change impact in order to reduce the associated risks and estimate the related costs. It may also help to improve the service and quality of the business processes. This work contributes an eventual improvement, in regard, to verify the coherence and the compliance of the business process models, after each change. It leads to evaluate an a priori change impact analysis in structural and qualitatie aspects. The multiple-perspectives of the proposed approach have been reviewed experimentally. The validation of the approach is evaluated by exteding the Eclipse Development Environment, with the help of a set of plug-ins, as a prototype plate-form.DUNKERQUE-SCD-Bib.electronique (591839901) / SudocSudocFranceF
    corecore