Spelling suggestions: "subject:"spécifications"" "subject:"spécification""
31 |
Rétro-ingénierie de Spécifications Système : application aux systèmes ferroviaires de Siemens / Reverse Engineering of System Specifications : application to the railway systems of SiemensIssad, Melissa 26 April 2017 (has links)
De nos jours, le degré de complexité des systèmes de transport notamment ferroviaires est important et grandissant. En effet, les nouvelles technologies et besoins des grandes métropoles contraignent les concepteurs de ces systèmes à toujours intégrer de plus en plus de fonctionnalités. Cette complexité rend obsolète les méthodes de conception traditionnelles qui reposent sur l'expertise d'ingénieurs. La conception du système est définie sur plusieurs documents de spécification, de centaines de pages chacun. Ces derniers comprennent généralement la description des différentes exigences, fonctionnalités et sous-systèmes, ils sont rédigés en langage naturel. Ceci est source d'erreurs et ambigüités lors des différentes phases de conception et de validation sécuritaire. De ce fait, l'ingénierie système basée sur les modèles propose des solutions outillées afin de structurer et spécifier de manière systématique le fonctionnement du système. Dans cette thèse, nous proposons une approche de rétro-ingénierie de ces spécifications système. Cette approche nous permet de définir une méthodologie orientée-scénarios pour la formalisation et analyse de spécifications système. Elle est basée sur le langage de modélisation semi-formel ScOLa (Scénarios Oriented Language) et un modèle d'exécution formel basé sur le langage AltaRica 3.0. Nous proposons, á partir de ScOLa, des techniques contribuant aux analyses de sûreté fonctionnelles du système. Ces techniques permettent de clarifier, structurer et analyser / As of today, the complexity of transportation systems and especially railways is continuously growing. Indeed, new technologies and needs of major metropolitan areas constrain system designers to integrate more and more functionalities. Traditional methods for the design of systems are mainly based on the knowledge of experts. Systems are specified in several documents, of hundreds of pages each. These documents provide a general description of the requirements, functionalities and sub-systems, and are written in a natural language. This is error-prone and source of ambiguities. Model-based systems engineering proposes systematic solutions to structure and specify systems architectures. In this thesis, we propose a reverse engineering approach that is able to capture systems concepts. This leads us to propose ScOLa, a scenario-oriented modeling language for systems specifications with the following features:- A scenario-oriented approach to provide a more contextual view of the system, at several abstraction levels.- A co-construction of the architecture and behavior of the system in the same model.- The use of ScOLa for a seamless integration of system specification and safety analysis. We propose ascenario-oriented methodology for safety analysis, implemented using AltaRica 3.0.
|
32 |
MARIE, une architecture d'intégration de composants logiciels hétérogènes pour le développement de systèmes décisionnels en robotique mobile et autonomeCôté, Carle January 2011 (has links)
""Aujourd'hui, la création de systèmes décisionnels en robotique mobile et autonome requiert l'intégration de nombreuses capacités motrices, sensorielles et cognitives au sein de chacun des projets réalisés. Ces capacités sont généralement issues de différents domaines de recherche, comme par exemple la navigation autonome, la planification, les interactions humain-machine, la localisation, la vision artificielle et le contrôle d'actionneurs, pour ne nommer que ceux-ci. D'un point de vue logiciel, deux défis de taille sont issus de ce besoin d'intégration : 1) la complexification de l'analyse des requis pour choisir, construire et interconnecter les différents composants logiciels qui permettent la réalisation de ces capacités, et 2) l'interconnectivité limitée des composants logiciels disponibles dans la communauté robotique causée par le fait qu'ils sont typiquement hétérogènes, c'est-à-dire qu'ils ne sont pas complètement compatibles ou interopérables. Cette thèse propose une solution principalement au défi d'interconnectivité limité en se basant sur la création d'une architecture d'intégration logicielle appelée MARIE, qui permet d'intégrer des composants logiciels hétérogènes utilisant une approche de prototypage rapide pour le développement de systèmes décisionnels en robotique mobile et autonome. Grâce à cette approche, la réalisation de systèmes décisionnels complets pourrait se faire plus tôt dans le cycle de développement, et ainsi favoriser l'analyse des requis nécessaires à l'intégration de chacun des composants logiciels du système. Les résultats montrent que grâce au développement de l'architecture d'intégration logicielle MARIE, plus de 15 composants logiciels provenant de sources indépendantes ont été intégrées au sein de plusieurs applications robotiques (réelles et simulées), afin de réaliser leurs systèmes décisionnels respectifs. L'adaptation des composants déjà existants dans la communauté robotique a permis notamment d'éviter la tâche souvent ardue de réécrire le code nécessaire pour chacun des composants dans un seul et même environnement de développement. Les résultats montrent également que grâce à une méthodologie d'évaluation logicielle appelée ARID, nous avons pu recueillir de l'information utile et pertinente à propos des risques associés à l'utilisation de MARIE pour réaliser une application choisie, sans devoir construire une application de test et sans avoir recours à de la documentation complète de l'architecture logicielle ni celle de l'application à créer. Cette méthode s'inscrit ainsi dans la liste des outils qui permettent de faciliter l'analyse des requis d'intégration reliés à la création de systèmes décisionnels en robotique mobile et autonome.""
|
33 |
Test à partir de spécifications axiomatiquesLonguet, Delphine 12 October 2007 (has links) (PDF)
Le test est l'une des méthodes les plus utilisées pour la validation du logiciel. L'activité de test consiste à exécuter le logiciel sur un sous-ensemble de ses entrées possibles de manière à déceler d'éventuelles erreurs. La présence d'erreurs est établie par confrontation du comportement du logiciel avec un objet de référence. Le processus de test est généralement décomposé en trois phases : la sélection du sous-ensemble des entrées sur lequel le logiciel sera exécuté, la soumission de ces entrées au logiciel en collectant les sorties (les réponses du logiciel) et la décision de l'adéquation de ces sorties avec les sorties attendues.<br /><br />La sélection des données à soumettre au logiciel peut être effectuée selon différentes approches. Lorsque la phase de sélection d'un jeu de tests est opérée à partir d'un objet de référence décrivant plus ou moins formellement le comportement du logiciel, sans connaissance de l'implantation elle-même, on parle de test « boîte noire ». Une des approches de test boîte noire pour laquelle un cadre formel a été proposé est celle qui utilise comme objet de référence une spécification logique du système sous test.<br /><br />Le cadre général de test à partir de spécifications logiques (ou axiomatiques) pose les conditions et les hypothèses sous lesquelles il est possible de tester un système. La première hypothèse consiste à considérer le système sous test comme un modèle formel implantant les opérations dont le comportement est décrit par la spécification. La seconde hypothèse a trait à l'observabilité du système sous test. Il faut fixer la forme des formules qui peuvent être interprétées par le système, c'est-à-dire qui peuvent être des tests. On se restreint généralement au moins aux formules qui ne contiennent pas de variables. Une fois ces hypothèses de test posées, on dispose d'un jeu de tests initial, celui de toutes les formules observables qui sont des conséquences logiques de la spécification. <br /><br />Le premier résultat à établir est l'exhaustivité de cet ensemble, c'est-à-dire sa capacité à prouver la correction du système s'il pouvait être soumis dans son intégralité. Le jeu de tests exhaustif étant le plus souvent infini, une phase de sélection intervient afin de choisir un jeu de tests de taille finie et raisonnable à soumettre au système. Plusieurs approches sont possibles. L'approche suivie dans ma thèse, dite par partition, consiste a diviser le jeu de tests exhaustif initial en sous-jeux de tests, selon un certain critère de sélection relatif à une fonctionnalité ou à une caractéristique du système que l'on veut tester. Une fois cette partition suffisamment fine, il suffit de choisir un cas de test dans chaque sous-jeu de test obtenu en appliquant l'hypothèse d'uniformité (tous les cas de test d'un jeu de test sont équivalents pour faire échouer le système). Le deuxième résultat à établir est que la division du jeu de tests initial n'ajoute pas (correction de la procédure) et ne fait pas perdre (complétude) de cas de test.<br /><br />Dans le cadre des spécifications algébriques, une des méthodes de partition du jeu de tests exhaustif qui a été très étudiée, appelée dépliage des axiomes, consiste à procéder à une analyse par cas de la spécification. Jusqu'à présent, cette méthode s'appuyait sur des spécifications équationnelles dont les axiomes avaient la caractéristique d'être conditionnels positifs (une conjonction d'équations implique une équation).<br /><br />Le travail de ma thèse a eu pour but d'étendre et d'adapter ce cadre de sélection de tests à des systèmes dynamiques spécifiés dans un formalisme axiomatique, la logique modale du premier ordre. La première étape a consisté à généraliser la méthode de sélection définie pour des spécifications équationnelles conditionnelles positives aux spécifications du premier ordre. Ce cadre de test a ensuite été d'adapté à des spécifications modales du premier ordre. Le premier formalisme de spécification considéré est une extension modale de la logique conditionnelle positive pour laquelle le cadre de test a été initialement défini. Une fois le cadre de test adapté aux spécifications modales conditionnelles positives, la généralisation aux spécifications modales du premier ordre a pu être effectuée. <br /><br />Dans chacun de ces formalismes nous avons effectué deux tâches. Nous avons d'une part étudié les conditions nécessaires à imposer à la spécification et au système sous test pour obtenir l'exhaustivité du jeu de tests initial. Nous avons d'autre part adapté et étendu la procédure de sélection par dépliage des axiomes à ces formalismes et montré sa correction et sa complétude. Dans les deux cadres généraux des spécifications du premier ordre et des spécifications modales du premier ordre, nous avons montré que les conditions nécessaires à l'exhausitivité du jeu de test visé étaient mineures car faciles à assurer dans la pratique, ce qui assure une généralisation satisfaisante de la sélection dans ce cadre.
|
34 |
Identification of Function Points in Software Specifications Using Natural Language Processing / Identification des points de fonction dans les spécifications logicielles à l'aide du traitement automatique des languesAsadullah, Munshi 28 September 2015 (has links)
La nécessité d'estimer la taille d’un logiciel pour pouvoir en estimer le coût et l’effort nécessaire à son développement est une conséquence de l'utilisation croissante des logiciels dans presque toutes les activités humaines. De plus, la nature compétitive de l’industrie du développement logiciel rend courante l’utilisation d’estimations précises de leur taille, au plus tôt dans le processus de développement. Traditionnellement, l’estimation de la taille des logiciels était accomplie a posteriori à partir de diverses mesures appliquées au code source. Cependant, avec la prise de conscience, par la communauté de l’ingénierie logicielle, que l’estimation de la taille du code est une donnée cruciale pour la maîtrise du développement et des coûts, l’estimation anticipée de la taille des logiciels est devenue une préoccupation répandue. Une fois le code écrit, l’estimation de sa taille et de son coût permettent d'effectuer des études contrastives et éventuellement de contrôler la productivité. D’autre part, les bénéfices apportés par l'estimation de la taille sont d'autant plus grands que cette estimation est effectuée tôt pendant le développement. En outre, si l’estimation de la taille peut être effectuée périodiquement au fur et à mesure de la progression de la conception et du développement, elle peut fournir des informations précieuses aux gestionnaires du projet pour suivre au mieux la progression du développement et affiner en conséquence l'allocation des ressources. Notre recherche se positionne autour des mesures d’estimation de la taille fonctionnelle, couramment appelées Analyse des Points de Fonctions, qui permettent d’estimer la taille d’un logiciel à partir des fonctionnalités qu’il doit fournir à l’utilisateur final, exprimées uniquement selon son point de vue, en excluant en particulier toute considération propre au développement. Un problème significatif de l'utilisation des points de fonction est le besoin d'avoir recours à des experts humains pour effectuer la quotation selon un ensemble de règles de comptage. Le processus d'estimation représente donc une charge de travail conséquente et un coût important. D'autre part, le fait que les règles de comptage des points de fonction impliquent nécessairement une part d'interprétation humaine introduit un facteur d'imprécision dans les estimations et rend plus difficile la reproductibilité des mesures. Actuellement, le processus d'estimation est entièrement manuel et contraint les experts humains à lire en détails l'intégralité des spécifications, une tâche longue et fastidieuse. Nous proposons de fournir aux experts humains une aide automatique dans le processus d'estimation, en identifiant dans le texte des spécifications, les endroits les plus à même de contenir des points de fonction. Cette aide automatique devrait permettre une réduction significative du temps de lecture et de réduire le coût de l'estimation, sans perte de précision. Enfin, l’identification non ambiguë des points de fonction permettra de faciliter et d'améliorer la reproductibilité des mesures. À notre connaissance, les travaux présentés dans cette thèse sont les premiers à se baser uniquement sur l’analyse du contenu textuel des spécifications, applicable dès la mise à disposition des spécifications préliminaires et en se basant sur une approche générique reposant sur des pratiques établies d'analyse automatique du langage naturel. / The inevitable emergence of the necessity to estimate the size of a software thus estimating the probable cost and effort is a direct outcome of increasing need of complex and large software in almost every conceivable situation. Furthermore, due to the competitive nature of the software development industry, the increasing reliance on accurate size estimation at early stages of software development becoming a commonplace practice. Traditionally, estimation of software was performed a posteriori from the resultant source code and several metrics were in practice for the task. However, along with the understanding of the importance of code size estimation in the software engineering community, the realization of early stage software size estimation, became a mainstream concern. Once the code has been written, size and cost estimation primarily provides contrastive study and possibly productivity monitoring. On the other hand, if size estimation can be performed at an early development stage (the earlier the better), the benefits are virtually endless. The most important goals of the financial and management aspect of software development namely development cost and effort estimation can be performed even before the first line of code is being conceived. Furthermore, if size estimation can be performed periodically as the design and development progresses, it can provide valuable information to project managers in terms of progress, resource allocation and expectation management. This research focuses on functional size estimation metrics commonly known as Function Point Analysis (FPA) that estimates the size of a software in terms of the functionalities it is expected to deliver from a user’s point of view. One significant problem with FPA is the requirement of human counters, who need to follow a set of standard counting rules, making the process labour and cost intensive (the process is called Function Point Counting and the professional, either analysts or counters). Moreover, these rules, in many occasion, are open to interpretation, thus they often produce inconsistent counts. Furthermore, the process is entirely manual and requires Function Point (FP) counters to read large specification documents, making it a rather slow process. Some level of automation in the process can make a significant difference in the current counting practice. Automation of the process of identifying the FPs in a document accurately, will at least reduce the reading requirement of the counters, making the process faster and thus shall significantly reduce the cost. Moreover, consistent identification of FPs will allow the production of consistent raw function point counts. To the best of our knowledge, the works presented in this thesis is an unique attempt to analyse specification documents from early stages of the software development, using a generic approach adapted from well established Natural Language Processing (NLP) practices.
|
35 |
Contributions à la synthèse de commande des systèmes à évènements discrets : nouvelle modélisation des états interdits et application à un atelier flexible / A contribution to control synthesis of Discrete Event systems : New model of forbidden states (applied on a flexible workshop)Atli, Maen 27 September 2012 (has links)
Un Système de production peut être représenté par les systèmes à événements discrets. En dehors de la planification (où les gens travaillent avec des ratios de produits fabriqués par semaine ou par jour), la modélisation pourrait être basée sur les concepts d'événement et d'activités. Un événement correspond à un changement d'état. Une activité est une boîte noire d'encapsulation de ce qui se passe entre deux événements. En utilisant les réseaux de Petri (RdP), les événements sont représentés par les transitions, et les activités par les lieux. Notre travail propose une synthèse de commande par supervision pour les systèmes d'événements discrets modélisés par une classe de réseaux de Petri appelé graphe d'événements. L'objective de cette thèse est de concevoir un superviseur capable d'aider à améliorer la performance de système et de protéger le système en respectant des spécifications données par le fabricant ou le client selon les besoins et les conditions de travail. Pour modéliser ces spécifications, nous avons proposé un nouveau modèle mathématique de contrainte, appelé Contrainte d'Exclusion de Marquage (CEM). La deuxième contribution principale de ma thèse est de synthétiser une technique efficace et simple pour construire un superviseur qui impose le système de respecter des contraintes en évitant l'ensemble des états interdits modélisé par CEM. Nous avons également développé cette synthèse pour résoudre le problème d'existence des événements incontrôlables et des événements inobservables. Parfois, afin d'étudier les aspects liés à la performance, nous devons prendre le temps en considération. Donc, nous avons résolu aussi le problème des événements temporisé en utilisant RdP temporisés soumis à CEM / A manufacturing system may be represented by Discrete Event System (DES). Apart from planning (where people work with ratios of products fabricated per week or per day), any modelling could be based on the concepts of event and activities. An event corresponds to a state change. An activity is a black-box summarizing what is occurring between two events. When using Petri Nets, events are associated with transitions, and activities with places. Our work proposes a supervisory synthesis for Discrete Event System modelled by a class of Petri Net called Marked Graph. The objective of this synthesis is to build a control law that enforces the system to respect a set of given specifications. To model these specifications, we propose new mathematical formulas called Marking Exclusion Constraint (MEC). This model is our first contribution. The Second main contribution of my thesis is to synthesize a computationally efficient technique to build a supervisor that enforces the system to respect the constraints by avoiding a set of forbidden states modelled by MEC specifications. We extend this synthesis technique to solve the problem in the presence of uncontrollable events and unobservable events. Sometimes in order to study the performance aspects, we must take in consideration the time data. Thus we address control synthesis for Timed Discrete Event Systems under MEC specifications by using Timed Petri Nets
|
36 |
Vérification à l'exécution de spécifications décentralisées hiérarchiques / Runtime Verification of Hierarchical Decentralized SpecificationsEl hokayem, Antoine 18 December 2018 (has links)
La vérification à l’exécution est une méthode formelle légère qui consiste à vérifier qu’une exécution d’un système est correcte par rapport à une spécification. La spécification exprime de manière rigoureuse le comportement attendu du système, en utilisant généralement des formalismes basés sur la logique ou les machines à états finies. Alors que la verification a l’éxecution traite les systèmes monolithiques de manière exhaustive, plusieurs difficultés se présentent lors de l’application des techniques existantes à des systèmes décentralisés, c-à-d. des systèmes avec plusieurs composants sans point d’observation central. Dans cette thèse, nous nous concentrons particulièrement sur trois problèmes : la gestion de l’information partielle, la séparation du déploiement des moniteurs du processus de vérification lui-même et le raisonnement sur la décentralisation de manière modulaire et hiérarchique. Nous nous concentrons sur la notion de spécification décentralisée dans laquelle plusieurs spécifications sont fournies pour des parties distinctes du système. Utiliser une spécification décentralisée a divers avantages tels que permettre une synthèse de moniteurs à partir des spécifications complexes et la possibilité de modulariser les spécifications. Nous présentons également un algorithme de vérification général pour les spécifications décentralisées et une structure de données pour représenter l’exécution d’un automate avec observations partielles. Nous développons l’outil THEMIS, qui fournit une plateforme pour concevoir des algorithmes de vérification décentralisée, des mesures pour les algorithmes, une simulation et des expérimentations reproductibles pour mieux comprendre les algorithmes.Nous illustrons notre approche avec diverses applications. Premièrement, nous utilisons des spécifications décentralisées pour munir une analyse de pire cas, adapter, comparer et simuler trois algorithmes de vérification décentralisée existants dans deux scénarios: l’interface graphique Chiron, et des traces et spécifications générées aléatoirement. Deuxièmement, nous utilisons des spécifications décentralisées pour vérifier diverses propriétés dans un appartement intelligent: correction du comportement des capteurs de l’appartement, détection d’activité spécifiques de l’utilisateur (Activities of Daily Living, ADL) et composition de spécifications des deux catégories précédentes.En outre, nous élaborons sur l’utilisation de spécifications décentralisées pour la vérification décentralisée pendant l’exécution de programmes parallélisés. Nous commençons par discuter les limitations des approches et des outils existants lorsque les difficultés introduites par le parallélisme sont rencontrées. Nous détaillons la description de zones de parallélisme d’une unique exécution d’un programme et décrivons une approche générale qui permet de réutiliser des techniques de verification à l’éxécution existantes. Dans notre configuration, les moniteurs sont déployés dans des fils d’exécution spécifiques et échangent de l’information uniquement lorsque des points de synchronisation définis par le programme lui-même sont atteints. En utilisant les points de synchronisation existants, notre approche réduit les interférences et surcoûts résultant de la synchronisation, au prix d’un retard pour déterminer le verdict. / Runtime Verification (RV) is a lightweight formal method which consists in verifying that a run of a system is correct with respect to a specification. The specification formalizes the behavior of the system typically using logics or finite-state machines. While RV comprehensively deals with monolithic systems, multiple challenges are presented when scaling existing approaches to decentralized systems, that is, systems with multiple components with no central observation point. We focus particularly on three challenges: managing partial information, separating monitor deployment from the monitoring process itself, and reasoning about decentralization in a modular and hierarchical way. We present the notion of a decentralized specification wherein multiple specifications are provided for separate parts of the system. Decentralized specifications provide various advantages such as modularity, and allowing for realistic monitor synthesis of the specifications. We also present a general monitoring algorithm for decentralized specifications, and a general datastructure to encode automata execution with partial observations. We develop the THEMIS tool, which provides a platform for designing decentralized monitoring algorithms, metrics for algorithms, and simulation to better understand the algorithms, and design reproducible experiments.We illustrate the approach with two applications. First, we use decentralized specifications to perform a worst-case analysis, adapt, compare, and simulate three existing decentralized monitoring algorithms on both a real example of a user interface, and randomly generated traces and specifications. Second, we use decentralized specifications to check various specifications in a smart apartment: behavioral correctness of the apartment sensors, detection of specific user activities (known as activities of daily living), and composition of properties of the previous types.Furthermore, we elaborate on utilizing decentralized specifications for the decentralized online monitoring of multithreadedprograms. We first expand on the limitations of existing tools and approaches when meeting the challenges introduced by concurrency and ensure that concurrency needs to be taken into account by considering partial orders in traces. We detail the description of such concurrency areas in a single program execution, and provide a general approach which allows re-using existing RV techniques. In our setting, monitors are deployed within specific threads, and only exchange information upon reaching synchronization regions defined by the program itself. By using the existing synchronization, we reduce additional overhead and interference to synchronize at the cost of adding a delay to determine the verdict.
|
37 |
Méthodologie d'évaluation de la cohérence inter-représentations pour l'intégration de bases de données spatiales. Une approche combinant l'utilisation de métadonnées et l'apprentissage automatique.Sheeren, David 20 May 2005 (has links) (PDF)
A l'heure actuelle, la plupart des bases de données spatiales sont gérées de manière indépendante.<br />Cette indépendance pose différents problèmes : elle multiplie les efforts de maintenance et de mise à<br />jour, elle rend difficile la mise en œuvre d'analyses multi-niveaux et ne garantit pas une cohérence<br />entre les sources.<br />Une gestion conjointe de ces sources nécessite leur intégration qui permet de définir des liens<br />explicites entre les bases et d'en fournir une vision unifiée. Notre thèse s'inscrit dans ce cadre. Le sujet<br />que nous traitons porte en particulier sur la mise en correspondance des données et l'évaluation de la<br />cohérence inter-représentations. Nous cherchons à analyser automatiquement chaque différence de<br />représentation entre les données appariées afin d'en déduire si celle-ci résulte des critères de saisie<br />différents des bases ou d'erreurs de saisie. Cette évaluation vise à garantir une intégration cohérente<br />des données.<br />Pour étudier la conformité des représentations nous proposons d'exploiter les spécifications des<br />bases. Ces documents décrivent les règles de sélection et de modélisation des objets. Ils constituent<br />des métadonnées de référence pour juger si les représentations sont équivalentes ou incohérentes.<br />L'utilisation de ces documents est toutefois insuffisante. Les spécifications décrites en langue naturelle<br />peuvent être imprécises ou incomplètes. Dans ce contexte, les données des bases constituent une<br />seconde source de connaissances intéressante. L'analyse des correspondances à l'aide de techniques<br />d'apprentissage automatique permet d'induire des règles rendant possible la justification de la<br />conformité des représentations.<br />La méthodologie que nous proposons repose sur ces éléments. Elle se compose de deux méthodes :<br />MECO et MACO. La première est la Méthode d'Evaluation de la COhérence. Elle comprend plusieurs<br />étapes : l'enrichissement des données, le contrôle intra-base, l'appariement, le contrôle inter-bases et<br />l'évaluation finale. Chacune de ces étapes exploite des connaissances déduites des spécifications ou<br />induites des données par apprentissage automatique, en appliquant MACO (Méthode d'Acquisition de<br />connaissances pour l'évaluation de la COhérence). L'intérêt d'utiliser l'apprentissage est double. Outre<br />le fait qu'il permet d'acquérir des règles pour l'évaluation, il met en évidence l'écart toléré sur les<br />données par rapport aux spécifications papiers.<br />Notre approche a été mise en œuvre sur des bases de données de l'IGN présentant différents<br />niveaux de détail.
|
38 |
Contribution au tolérancement fonctionnel 3D des mécanismes complexes : synthèse des spécifications et analyse de tolérancesChavanne, Robin 06 July 2011 (has links) (PDF)
L'étude est dédiée à la conception d'un système expert d'aide au tolérancement assurant la gestion multi-utilisateurs, multi-produits et temporelle des tolérances et des dimensions nominales de pièces pour des mécanismes complexes. Ce travail rentre dans le projet "usine numérique" de grandes entreprises et constitue un maillon manquant de cette chaîne numérique. Les travaux de thèse contribuent à la méthode CLIC (Cotation en Localisation avec Influence des Contacts) sur des liaisons complexes en proposant la spécification adéquate et le calcul de chaîne de cotes tridimensionnelle au pire des cas, dans un contexte de pièces non déformables. L'étude a abouti à onze nouvelles propositions de spécification, qui ne sont pas disponibles actuellement dans les normes utilisées par les industriels. La généralisation des conditions de respect d'un état virtuel aux liaisons complexes est un point fort. Un nouveau critère d'association géométrique a été proposé pour des surfaces constituant une liaison hybride ayant un double comportement, à la fois surfacique et avec jeu. Un algorithme de recherche des points de contact a été élaboré afin d'obtenir la résultante tridimensionnelle en fonction des tolérances et des paramètres nominaux des pièces, en vue d'effectuer la synthèse des tolérances. D'autres algorithmes utilisent une formulation analytique pour d'déterminer la situation au pire des cas. Ces algorithmes sont le fruit de la résolution du problème par la méthode des droites d'analyses.
|
39 |
Analyse et synthèse de tolérance pour la conception et le dimensionnement des systèmes mécatroniquesEl Feki, Mariem 05 July 2011 (has links) (PDF)
Cette thèse s'inscrit dans le cadre de la conception des systèmes mécatroniques et porte, plus particulièrement, sur le dimensionnement de chaînes d'actionnement et les méthodes à mettre en œuvre pour satisfaire le cahier des charges et réduire au mieux le temps de développement. Afin de suivre l'évolution du marché et faire face à la concurrence croissante, les concepteurs ont eu recours au cycle de conception en Vet au prototypage virtuel. Pour réduire davantage la durée du processus de conception, la formulation du problème de conception sous la forme d'un problème inverse est une solution intéressante. Dans ce contexte, le laboratoire Ampère propose une méthodologie de dimensionnement par modèles bond graph inverses. Ainsi, l'objectif de cette thèse est de contribuer au développement de cette méthodologie d'une part dans sa phase de vérification de l'adéquation des spécifications du cahier des charges à la structure retenue pour le modèle de conception et, d'autre part, par la prise en compte des tolérances dans le problème de conception. Pour la phase de vérification de l'adéquation spécifications/structure, le mémoire présente tout d'abord, l'analyse structurelle du cahier des charges qui permet de vérifier, avant toute simulation et à partir du modèle bond graph, si le problème de conception par modèle inverse est bien posé. Différents niveaux d'analyse sont supposés pour renforcer la démarche chronologique du travail de conception ou de reconception proposée par la méthodologie de dimensionnement. Ensuite, ces niveaux d'analyse sont mis à profit pour définir une procédure de vérification de l'adéquation des spécifications, définies sous forme de comportements type, au modèle de conception. En cas d'inadéquation, des recommandations pour la remise en question des spécifications ou de la structure du modèle de conception sont proposées et ce, selon le niveau d'analyse considéré. Au niveau de l'analyse numérique (le niveau d'analyse le plus bas), cette procédure peut être utilisée pour la synthèse paramétrique ou encore pour la synthèse de tolérance en cas de prise en compte des incertitudes dans le problème de conception. Concernant cet aspect, le mémoire présente également une contribution à la représentation des incertitudes paramétriques dans le formalisme bond graph, formalisme de base de la méthodologie de dimensionnement. Enfin, l'approche probabiliste est utilisée pour la modélisation des incertitudes dans la démarche de dimensionnement des systèmes dynamiques par inversion des modèles bond graph : les deux cas d'inversion, entrées/sorties d'une part (pour la remontée de spécifications), et paramètres/sorties d'autre part (pour la synthèse de tolérances paramétriques), sont abordés. Les règles d'exploitation d'un modèle bond graph probabiliste permettant la propagation des fonctions de densité de probabilité et des grandeurs caractéristiques(espérance et variance) tout le long de la structure énergétique du système sont proposées et illustrées par un exemple.
|
40 |
Variants of acceptance specifications for modular system design / Variantes de spécifications à ensemble d'acceptation pour la conception modulaire de systèmesVerdier, Guillaume 29 March 2016 (has links)
Les programmes informatiques prennent une place de plus en plus importante dans nos vies. Certains de ces programmes, comme par exemple les systèmes de contrôle de centrales électriques, d'avions ou de systèmes médicaux sont critiques : une panne ou un dysfonctionnement pourraient causer la perte de vies humaines ou des dommages matériels ou environnementaux importants. Les méthodes formelles visent à offrir des moyens de concevoir et vérifier de tels systèmes afin de garantir qu'ils fonctionneront comme prévu. Au fil du temps, ces systèmes deviennent de plus en plus évolués et complexes, ce qui est source de nouveaux défis pour leur vérification. Il devient nécessaire de développer ces systèmes de manière modulaire afin de pouvoir distribuer la tâche d'implémentation à différentes équipes d'ingénieurs. De plus, il est important de pouvoir réutiliser des éléments certifiés et les adapter pour répondre à de nouveaux besoins. Aussi les méthodes formelles doivent évoluer afin de s'adapter à la conception et à la vérification de ces systèmes modulaires de taille toujours croissante. Nous travaillons sur une approche algébrique pour la conception de systèmes corrects par construction. Elle définit un formalisme pour exprimer des spécifications de haut niveau et permet de les raffiner de manière incrémentale en des spécifications plus concrètes tout en préservant leurs propriétés, jusqu'à ce qu'une implémentation soit atteinte. Elle définit également plusieurs opérations permettant de construire des systèmes complexes à partir de composants plus simples en fusionnant différents points de vue d'un même système ou en composant plusieurs sous-systèmes ensemble, ainsi que de décomposer une spécification complexe afin de réutiliser des composants existants et de simplifier la tâche d'implémentation. Le formalisme de spécification que nous utilisons est basé sur des spécifications modales. Intuitivement, une spécification modale est un automate doté de deux types de transitions permettant d'exprimer des comportements optionnels ou obligatoires. Raffiner une spécification modale revient à décider si les parties optionnelles devraient être supprimées ou rendues obligatoires. Cette thèse contient deux principales contributions théoriques basées sur une extension des spécifications modales appelée " spécifications à ensembles d'acceptation ". La première contribution est l'identification d'une sous-classe des spécifications à ensembles d'acceptation, appelée " spécifications à ensembles d'acceptation convexes ", qui permet de définir des opérations bien plus efficaces tout en gardant un haut niveau d'expressivité. La seconde contribution est la définition d'un nouveau formalisme, appelé " spécifications à ensembles d'acceptation marquées ", qui permet d'exprimer des propriétés d'atteignabilité. Ceci peut, par exemple, être utilisé pour s'assurer qu'un système termine ou exprimer une propriété de vivacité dans un système réactif. Les opérations usuelles sont définies sur ce nouveau formalisme et elles garantissent la préservation des propriétés d'atteignabilité. Cette thèse présente également des résultats d'ordre plus pratique. Tous les résultats théoriques sur les spécifications à ensembles d'acceptation convexes ont été prouvés en utilisant l'assistant de preuves Coq. L'outil MAccS a été développé pour implémenter les formalismes et opérations présentés dans cette thèse. Il permet de les tester aisément sur des exemples, ainsi que d'étudier leur efficacité sur des cas concrets. / Software programs are taking a more and more important place in our lives. Some of these programs, like the control systems of power plants, aircraft, or medical devices for instance, are critical: a failure or malfunction could cause loss of human lives, damages to equipments, or environmental harm. Formal methods aim at offering means to design and verify such systems in order to guarantee that they will work as expected. As time passes, these systems grow in scope and size, yielding new challenges. It becomes necessary to develop these systems in a modular fashion to be able to distribute the implementation task to engineering teams. Moreover, being able to reuse some trustworthy parts of the systems and extend them to answer new needs in functionalities is increasingly required. As a consequence, formal methods also have to evolve in order to accommodate both the design and the verification of these larger, modular systems and thus address their scalability challenge. We promote an algebraic approach for the design of correct-by-construction systems. It defines a formalism to express high-level specifications of systems and allows to incrementally refine these specifications into more concrete ones while preserving their properties, until an implementation is reached. It also defines several operations allowing to assemble complex systems from simpler components, by merging several viewpoints of a specific system or composing several subsystems together, as well as decomposing a complex specification in order to reuse existing components and ease the implementation task. The specification formalism we use is based on modal specifications. In essence, a modal specification is an automaton with two kinds of transitions allowing to express mandatory and optional behaviors. Refining a modal specification amounts to deciding whether some optional parts should be removed or made mandatory. This thesis contains two main theoretical contributions, based on an extension of modal specifications called acceptance specifications. The first contribution is the identification of a subclass of acceptance specifications, called convex acceptance specifications, which allows to define much more efficient operations while maintaining a high level of expressiveness. The second contribution is the definition of a new formalism, called marked acceptance specifications, that allows to express some reachability properties. This could be used for example to ensure that a system is terminating or to express a liveness property for a reactive system. Usual operations are defined on this new formalism and guarantee the preservation of the reachability properties as well as independent implementability. This thesis also describes some more practical results. All the theoretical results on convex acceptance specifications have been proved using the Coq proof assistant. The tool MAccS has been developed to implement the formalisms and operations presented in this thesis. It allows to test them easily on some examples, as well as run some experimentations and benchmarks.
|
Page generated in 0.0903 seconds