52 research outputs found

    Conception et mise en oeuvre d'une plate-forme pour la sûreté de fonctionnement des services Web

    Get PDF
    Les Services Web (SW) constituent la technologie de base pour le développement d'Architectures Orientées Services (AOS). Ces architectures, de plus en plus répandues sur le Net, permettent de mettre en place des applications semi-critiques à échelle planétaire. Elles se basent sur la notion de relation de "service" formalisée par un contrat qui unit le client et le prestataire de services. Dans ce type d'applications, les développeurs d'applications orientées services regardent les Services Web comme des COTS (Component Off-The Shell) et ignorent donc leurs implémentations et leurs comportements en présence de fautes. Dans ce but, cette thèse introduit, dans ce nouveau contexte, la notion de « connecteurs spécifiques de tolérance aux fautes » (SFTC – Specific Fault Tolerance Connectors) capable d'implémenter des applications sûres de fonctionnement à partir de Services Web supposés non-fiables. Composants logiciels insérés entre les clients et les prestataires, les SFTC implémentent des filtres et différentes techniques de détection d'erreurs ainsi que des mécanismes de recouvrement qui sont déclenchés quand les Services Web ne satisfont plus les caractéristiques de sûreté demandées. L'originalité de cette approche est d'utilisé une particularité intéressante du Web qui est la redondance inhérente des services qui s'y trouvent. Cette propriété a permis de définir le concept de Services Web Abstrait (SWA) et de mettre en place des stratégies de recouvrement à l'aide de services équivalents. Ainsi, les « connecteurs » et les « SWA », introduits dans les architectures orientées services, fournissent une approche plus adaptable pour permettre, à des mécanismes de sûreté, d'être définis au cas par cas pour une utilisation donnée du Service Web et d'être modifiés selon la criticité de l'application. Ainsi, mes travaux de recherches ont permis de fournir aux développeurs d'Architectures Orientées Services : 1) le langage nommé DeWeL pour décrire les caractéristiques de sûreté de fonctionnement du connecteur. Ce langage dédié à la réalisation de connecteur impose de fortes restrictions inspirées du monde des logiciels critiques du ferroviaire et de l'avionique afin de diminuer de façon drastique des fautes de développement. 2) l'infrastructure IWSD pour dynamiquement contrôler et exécuter les connecteurs dans des applications critiques. Cette plateforme, réalisé en mode duplex pour tolérer les fautes matérielles et logicielles, permet d'exécuter de façon sûres les connecteurs crées et d'obtenir également des informations sur le caractère non-fonctionnel et opérationnel des Services Web ciblés. Ces informations sont capitales pour permettre aux développeurs de connecteurs d'affiner leurs actions de tolérances aux fautes pour l'application ciblée. Environ deux cents connecteurs ont été implémentés afin de réaliser des tests sur la performance et la robustesse du langage et de la plate-forme permettant ainsi de valider cette approche capable de déployer des applications orientées services semi-critiques tolérant les fautes à l'aide de SWA. ABSTRACT : Web Services (WS) technology is the basis for the development of Service Oriented Architectures (SOA). These architectures are increasingly widespread on the Net and enable developers to implement semi-critical planetary applications. Such applications are based on the notion of service and its attached contract. The contract links a client and a service provider. In this kind of applications, application developers look at Web Services as COTS (Commercial Off-The- Shelf) components, consequently they ignore their implementation and their behaviour in the presence of faults. The thesis proposes the notion of Specific Fault Tolerance Connectors (SFTC) to implement dependable applications out of unreliable Web Services. The connectors intercept client-provider requests and implement filtering, error detection techniques (e.g. runtime assertions) together with recovery mechanisms that are triggered when the WS does not satisfy anymore the dependability specifications. The originality of this approach relies on using an interesting feature of the Web that is the inherent redundancy of services. To take advantage of this, we define the concept of Abstract Web Services (AWS) to implement recovery strategies using equivalent services. Thus, "connectors” and “AWS” allow dependability mechanisms to be defined on a case-by-case basis for a given WS usage and possibly dynamically changed according to the needs. Two specific techniques and tools have been designed and implemented to help developers of Services Oriented Architectures : 1) A domain specific language named DeWeL (DEpendable Web services Language) describing the dependability features of a connector. This language is devoted to the realization of connectors. It imposes strong restrictions enforced by standards for critical railway and avionics software in order to reduce software development faults. 2) A support infrastructure named IWSD (Infrastructure for Web Services Dependability) to dynamically manage and run connectors in real applications. This platform is implemented in duplex mode to tolerate crash faults and provides core services. In particular, it provides support to run connectors and get information on the non-functional and operational behaviour of the targeted Web Services. This information is essential to help developers of connector to adjust their fault-tolerance actions to specific application needs. Approximately two hundred connectors have been implemented in order to realize performance and robustness tests of the language and the platform. These experiments show the interest of our approach to deploy fault-tolerant service oriented applications using AW

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

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

    Identification d'espèces végétales par une description géométrique locale d'images de feuilles

    Get PDF
    Plant species identification, usually performed by specialists, is based on the observation of its organs and mostly on visual criteria. Thanks to its ease of acquisition, the leaf is the most used organ. In addition, it contains important information on the taxonomy of the plant. This enables the use of computer vision and pattern recognition techniques for developing an automatic recognition process of the plant species from a leaf image. We introduce a new approach to identify plant species, based on the description of the following leaf characteristics : its shape, its salient points and its venation. First, the shape of the leaf is represented by local descriptors associated to a set of points sampled on the contour. Different multi-scale triangular representations are introduced and compared. To describe the salient points of the leaf, we propose a shape context based representation. Finally, the venation is extracted by detecting elementary linear structures with morphological tools. The venation network is described by its main directions and its spatial distribution in the context of the leaf boundary. A local matching method is used for all descriptors. Evaluations, conducted on six publicly available plant identification benchmarks, show that our approaches identify the plant species of the leaf in most of the cases and that the late fusion of the proposed descriptors improves the identification process.Il est nécessaire de reconnaître les espèces végétales afin de préserver la biodiversité des écosystèmes. L’identification d’une plante, habituellement effectuée par les experts, se base sur l’observation de ses organes et en majeure partie sur des critères visuels. La feuille est l’organe le plus utilisé grâce à sa facilité d’acquisition. De plus, celle-ci contient une information importante sur la taxonomie de la plante. Ceci permet d’envisager d’utiliser l’analyse d’images pour élaborer un processus de reconnaissance automatique de l’espèce végétale à partir de la donnée d’une image de feuille. Nous introduisons une nouvelle approche d’identification d’espèces végétales, basée sur la description des caractères foliaires suivants : la forme, les points saillants et la nervation. En premier lieu, la forme de la feuille est représentée par des descripteurs locaux associés aux points échantillonnés sur le contour. Différentes représentations triangulaires multi-échelle sont introduites et comparées. Pour décrire les points saillants de la feuille, nous proposons une représentation dérivée du contexte de forme (Shape Context). Finalement, la nervation est extraite par la détection de structures linéaires élémentaires avec des outils morphologiques. Le réseau de nervures extrait est décrit par ses directions principales et sa répartition spatiale dans le contexte de la surface de la feuille.Pour tous les descripteurs, une méthode de mise en correspondance locale est utilisée. Des évaluations, menées sur six bases de feuilles publiques, montrent que nos approches permettent généralement d’identifier l’espèce végétale de la feuille et que la fusion tardivedes descripteurs augmente la précision de l’identification

    ScaleSem (model checking et web sémantique)

    Get PDF
    Le développement croissant des réseaux et en particulier l'Internet a considérablement développé l'écart entre les systèmes d'information hétérogènes. En faisant une analyse sur les études de l'interopérabilité des systèmes d'information hétérogènes, nous découvrons que tous les travaux dans ce domaine tendent à la résolution des problèmes de l'hétérogénéité sémantique. Le W3C (World Wide Web Consortium) propose des normes pour représenter la sémantique par l'ontologie. L'ontologie est en train de devenir un support incontournable pour l'interopérabilité des systèmes d'information et en particulier dans la sémantique. La structure de l'ontologie est une combinaison de concepts, propriétés et relations. Cette combinaison est aussi appelée un graphe sémantique. Plusieurs langages ont été développés dans le cadre du Web sémantique et la plupart de ces langages utilisent la syntaxe XML (eXtensible Meta Language). Les langages OWL (Ontology Web Language) et RDF (Resource Description Framework) sont les langages les plus importants du web sémantique, ils sont basés sur XML.Le RDF est la première norme du W3C pour l'enrichissement des ressources sur le Web avec des descriptions détaillées et il augmente la facilité de traitement automatique des ressources Web. Les descriptions peuvent être des caractéristiques des ressources, telles que l'auteur ou le contenu d'un site web. Ces descriptions sont des métadonnées. Enrichir le Web avec des métadonnées permet le développement de ce qu'on appelle le Web Sémantique. Le RDF est aussi utilisé pour représenter les graphes sémantiques correspondant à une modélisation des connaissances spécifiques. Les fichiers RDF sont généralement stockés dans une base de données relationnelle et manipulés en utilisant le langage SQL ou les langages dérivés comme SPARQL. Malheureusement, cette solution, bien adaptée pour les petits graphes RDF n'est pas bien adaptée pour les grands graphes RDF. Ces graphes évoluent rapidement et leur adaptation au changement peut faire apparaître des incohérences. Conduire l application des changements tout en maintenant la cohérence des graphes sémantiques est une tâche cruciale et coûteuse en termes de temps et de complexité. Un processus automatisé est donc essentiel. Pour ces graphes RDF de grande taille, nous suggérons une nouvelle façon en utilisant la vérification formelle Le Model checking .Le Model checking est une technique de vérification qui explore tous les états possibles du système. De cette manière, on peut montrer qu un modèle d un système donné satisfait une propriété donnée. Cette thèse apporte une nouvelle méthode de vérification et d interrogation de graphes sémantiques. Nous proposons une approche nommé ScaleSem qui consiste à transformer les graphes sémantiques en graphes compréhensibles par le model checker (l outil de vérification de la méthode Model checking). Il est nécessaire d avoir des outils logiciels permettant de réaliser la traduction d un graphe décrit dans un formalisme vers le même graphe (ou une adaptation) décrit dans un autre formalismeThe increasing development of networks and especially the Internet has greatly expanded the gap between heterogeneous information systems. In a review of studies of interoperability of heterogeneous information systems, we find that all the work in this area tends to be in solving the problems of semantic heterogeneity. The W3C (World Wide Web Consortium) standards proposed to represent the semantic ontology. Ontology is becoming an indispensable support for interoperability of information systems, and in particular the semantics. The structure of the ontology is a combination of concepts, properties and relations. This combination is also called a semantic graph. Several languages have been developed in the context of the Semantic Web. Most of these languages use syntax XML (eXtensible Meta Language). The OWL (Ontology Web Language) and RDF (Resource Description Framework) are the most important languages of the Semantic Web, and are based on XML.RDF is the first W3C standard for enriching resources on the Web with detailed descriptions, and increases the facility of automatic processing of Web resources. Descriptions may be characteristics of resources, such as the author or the content of a website. These descriptions are metadata. Enriching the Web with metadata allows the development of the so-called Semantic Web. RDF is used to represent semantic graphs corresponding to a specific knowledge modeling. RDF files are typically stored in a relational database and manipulated using SQL, or derived languages such as SPARQL. This solution is well suited for small RDF graphs, but is unfortunately not well suited for large RDF graphs. These graphs are rapidly evolving, and adapting them to change may reveal inconsistencies. Driving the implementation of changes while maintaining the consistency of a semantic graph is a crucial task, and costly in terms of time and complexity. An automated process is essential. For these large RDF graphs, we propose a new way using formal verification entitled "Model Checking".Model Checking is a verification technique that explores all possible states of the system. In this way, we can show that a model of a given system satisfies a given property. This thesis provides a new method for checking and querying semantic graphs. We propose an approach called ScaleSem which transforms semantic graphs into graphs understood by the Model Checker (The verification Tool of the Model Checking method). It is necessary to have software tools to perform the translation of a graph described in a certain formalism into the same graph (or adaptation) described in another formalismDIJON-BU Doc.électronique (212319901) / SudocSudocFranceF

    33èmes Journées Francophones des Langages Applicatifs

    Get PDF
    International audienceLes 33èmes Journées Francophones des Langages Applicatifs (JFLA) se sont tenues à Saint-Médard-d'Excideuil, plus précisément Domaine d'Essendiéras (Périgord), du mardi 28 juin 2022 au vendredi 1er juillet 2022.Les JFLA réunissent concepteurs, utilisateurs et théoriciens ; elles ont pour ambition de couvrir les domaines des langages applicatifs, de la preuve formelle, de la vérification de programmes, et des objets mathématiques qui sous-tendent ces outils. Ces domaines doivent être pris au sens large : nous souhaitons promouvoir les ponts entre les différentes thématiques.- Langages fonctionnels et applicatifs : sémantique, compilation, optimisation, typage, mesures, extensions par d'autres paradigmes.- Assistants de preuve : implémentation, nouvelles tactiques, développements présentant un intérêt technique ou méthodologique.- Logique, correspondance de Curry-Howard, réalisabilité, extraction de programmes, modèles.- Spécification, prototypage, développements formels d'algorithmes.- Vérification de programmes ou de modèles, méthode déductive, interprétation abstraite, raffinement.- Utilisation industrielle des langages fonctionnels et applicatifs, ou des méthodes issues des preuves formelles, outils pour le web.Les articles soumis aux JFLA sont relus par au moins deux personnes s'ils sont acceptés, trois personnes s'ils sont rejetés. Les critiques des relecteurs sont toujours bienveillantes et la plupart du temps encourageantes et constructives, même en cas de rejet
    • …
    corecore