23 research outputs found

    Décentralisation du contrôle de conformité de processus opérationnels : approches par blockchain et séquence de pair-actions

    Get PDF
    La gestion de processus d’affaires (ou BPM, pour Business Process Management) fait l’objet d’un intérêt majeur et croissant dans l’industrie et la recherche académique. La principale explication a ce phénomène réside dans le fait que le BPM améliore grandement les performances et la flexibilité globales de l’exécution de processus opérationnels. Cette amélioration repose en partie sur la possibilité d’automatiser les contrôles de conformité des processus, qui assurent que ces derniers suivent une exécution valide par rapport aux modèles mis en place. En outre, depuis une quinzaine d’années, on a pu observer l’avènement des processus opérationnels centres sur les artefacts. Dans cette approche, plus intuitive et flexible, l’enchainement des opérations possibles est exprimé par l’ensemble des contraintes, appelé cycle de vie, que les pairs intervenant dans le processus doivent respecter lorsqu’ils interagissent avec les objets physiques ou virtuels manipules en son sein, appelés artefacts. Contrôler la conformité d’un tel processus revient alors à vérifier que les cycles de vie des artefacts sont respectés, et ce à toutes les étapes du processus. Dans ce domaine, les travaux de recherche et les solutions industrielles actuelles se basent néanmoins principalement sur des architectures centralisées, qui représentent plusieurs inconvénients en termes de sécurité et flexibilité. L’objet de cette thèse est donc de proposer des approches embrassant une décentralisation complète du procédé de vérification de conformité. La première d’entre elles consiste à stocker la totalité des manipulations sous la forme de transactions incluses dans une blockchain Ethereum. En effet, la blockchain permet l’établissement de registres décentralisés, immuables et authentifiés. Plus précisément, les actions sont stockées par l’intermédiaire de smart contracts, programmes partagés et exécutés par tous les nœuds du réseau blockchain. Nous appliquons cette architecture à un scénario concret de livraisons de colis dans un contexte de logistique hyperconnectée. Plusieurs propriétés de cycle de vie pertinentes dans ce milieu sont exprimées, implémentées et vérifiées à l’aide de BeepBeep, une bibliothèque de Complex Event Processing (CEP).Bien que fonctionnelle, l’approche par blockchain expose des inconvénients majeurs, notamment en termes du nombre d’actions qu’il est possible de traiter dans un temps donné, jugé insuffisant dans certains contextes. Nous proposons alors une approche originale où les actions sont stockées directement dans l’artefact manipulé sous la forme d’une séquence de pair-actions. Les séquences de pair-actions permettent de construire des historiques immuables composés d’actions confidentielles et authentifiées. Cette solution repose uniquement sur l’utilisation de mécanismes de chiffrement et de hachage classiques, là où les technologies de type blockchain nécessitent également un consensus pour l’agrégation de blocs de transactions. Les résultats expérimentaux montrent que l’ajout d’actions dans une séquence de pair-actions est plus rapide qu’en utilisant une blockchain Ethereum, tout en provoquant un surplus en mémoire inférieur. De plus, les séquences de pair-actions n’impliquent aucune restriction sur les types de cycles de vie et d’artefacts manipulés ; elles permettent donc une abstraction complète de l’implémentation du contrôle de conformité. Ces éléments, combinés à d’autres, font des séquences de pair-actions une alternative décentralisée, sécurisée, efficace et flexibleà la blockchain et aux solutions existantes intervenant dans le BPM

    Adaptation des composants centrée sur l'utilisation

    Get PDF
    Avec la notion de composant logiciel, la démarche de conception d'applications informatiques a vu apparaître une alternative intéressante à l'approche classique, où le développement est mené selon une approche centralisée. L'idée est en effet de permettre la construction d'applications adaptées aux besoins spécifiques de chaque utilisateur par assemblage de composants préexistants. Néanmoins, le choix de composants prédéfinis, sur étagère, pose le problème de leur adéquation à une utilisation spécifique. Dans ce contexte, la possibilité d'adapter les composants semble cruciale, si l'on souhaite rendre réellement effective l'approche de développement par assemblage de composants. Cette thèse introduit une nouvelle approche de l'adaptation de composants logiciels qui consiste à adapter le composant à ses contextes d'utilisation en se basant sur le point de vue de l'utilisateur. Nous décrivons le profil d'utilisation sous la forme d'un ensemble de triplets dont chacun spécifie les propriétés souhaitées, les réactions correspondantes à traiter dans le cas où une condition n'est pas vérifiée et les échéanciers d'évaluation des propriétés. Nous proposons aussi un service de supervision de composant (SSC) qui repose sur la surveillance de l'état des composants pour obtenir des clichés qui reflètent l'état actuel du composant et les changements récents. Nous définissons également le service de sûreté de service (SSS) qui intercepte les requêtes clientes et qui les délègue vers le composant le plus convenable, tout en gérant l'exécution du composant en fonction du profil d'usage. ABSTRACT : The concept of software component, provides an interesting alternative to the traditional way of designing data-processing applications, where the development is undertaken according to a centralized approach. The idea is indeed to allow the construction of applications adapted to the specific needs for each user by assembling preexistent components. Nevertheless, the choice of off-the-shelf components, raises the problem of their adequacy to a specific use. In this context, the ability to adapt components appears to be crucial, if one wishes to make really effective the approach of development by assembling components. This thesis introduces a new approach of the adaptation of software components which consists in adapting the component to its contexts of use centered on the point of view of the user. We describe a user profile as a set of triples, where each triple specifies the desired properties, the reactions to be run if a condition is not checked and the schedule of evaluation of properties. We propose also a service of supervision of component (SSC) which is based on the monitoring of the state of the components to obtain snapshots which reflect the current state of the component and the recent changes. We also define the service of safety of service (SSS) which intercepts the user requests and delegates them towards the most suitable component, while managing the execution of the component according to the profile of use

    Détection et correction automatique des bugs d’interface dans les applications web

    Get PDF
    Les problèmes de mise en page dans les interfaces des applications web, appelés « bugs d’interface », croissent de jour en jour avec la popularité grandissante de ces applications et donnent lieu à des ennuis d’affichage embarrassants et des difficultés allant jusqu’à l’entrave de fonctionnalité de l’interface utilisateur. Le nombre considérable d’utilisateurs des applications web incapables de pallier à ces contraintes rend l’enjeu très grand. Malheureusement, les solutions efficaces apportées à ce sujet sont très rares. Nous proposons dans ce travail de thèse, une nouvelle approche permettant la spécification du contenu attendu d’une interface, la vérification automatique du respect de la spécification et, plus particulièrement, l’octroi d’un verdict détaillé et utile lors d’une violation. L’approche proposée est une technique générique de localisation de défauts, basée sur le concept de « réparation » ou « correction » et applicable avec différents langages de spécification, y compris la logique propositionnelle. Nous portons une attention particulière à son utilisation dans la détection des défauts de mise en page dans les applications web

    Architecture de bibliothèque numérique multi-agents à services extensibles

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

    Architecture, logique floue, classification et clustering pour l’exploration de données réelles issues de multiples maisons intelligentes

    Get PDF
    Selon l’Organisation des Nations Unies (2019), il est estimé que le nombre de personnes âgées de 65 ans et plus dans le monde devrait doubler d’ici 2050 pour atteindre un total de 1,5 milliard d’individus. Cette évolution impacte le risque de déclarer une maladie neurodégénérative qui, selon le rapport de l’Alzheimer’s Disease International (2015), augmenterait exponentiellement avec l’âge. Or, ces maladies provoquent une perte progressive d’autonomie ce qui induit des besoins en ressources matérielles et humaines. En parallèle de ces enjeux, des progrès allient technologie et santé, comme le dépistage automatique du cancer du sein, présenté dans le travail de Karabatak (2015). Avec l’amélioration continue des environnements intelligents et du matériel, notamment suite à l’apparition de technologies comme l’Arduino (2005), la Rasbperry Pi (2012) ou la Latte Panda (2016), on est en droit d’imaginer les applications possibles de la maison intelligente aux problématiques posées par l’accroissement des maladies dégénératives. C’est ce que nous proposons dans cette thèse, où nous faisons le point sur les environnements intelligents et la reconnaissance d’activités. Point duquel nous dérivons deux propositions : d’une part, une architecture basée sur la gestion d’un flux d’événements descriptifs par des compositions d’agents autonomes permettant le support de plus de 30 environnements hétérogènes. D’autre part, une approche basée sur la logique floue permettant de conduire un processus de reconnaissance d’activités malgré la grande diversité de nos jeux de données. Ces deux solutions participant à l’élaboration d’un outil permettant aux cliniciens de suivre à distance, l’évolution du comportement de patients atteints de maladies dégénératives. According to the United Nations (2019), the world population aged 65 years and more will double up to 1.5 billion individuals before 2050. This trend will impact the growth of neurodegenerative disorders that are subject to an exponential risk of appearance with aging, as reported by Alzheimer’s Disease International (2015). As this kind of disease induces a decrease in the autonomy of the elderly, this evolution will heavily increase the need for human and material resources around the world. In parallel, various research works combine technology and healthcare, like for the automatic breast cancer detection described in the article of Karabatak (2015). This tendency, in conjunction with hardware and intelligent environments improvement, notably with the Arduino (2005), the Rasbperry Pi (2012), and the Latte Panda (2016), affords us to imagine how smart-homes could solve the implications of the aforementioned growth of degenerative diseases. To investigate this question, this thesis derivates two proposals from a careful study of intelligent environments and activity recognition methods. The first is an architecture that supports more than 30 heterogeneous environments and that works by assembling autonomous agents for processing a flux of descriptive events. Finally, the second is a model built upon fuzzy logic that enables us to recognize activities despite the inherent diversity of our datasets. These two solutions answer some aspects of the process of making a tool that allows clinicians to monitor people with degenerative diseases from their homes

    Un modèle de validation automatique de mécanismes de sécurisation des communications

    Get PDF
    Mémoire numérisé par la Direction des bibliothèques de l'Université de Montréal

    Objets distribués pour systèmes embarqués

    Get PDF
    Comme les standards actuels pour la distribution des objets ne répondent pas, à ce jour, à tous les besoins d'un système embarqué, il devient pertinent de développer une solution propriétaire offrant le support nécessaire à la création de systèmes à objets distribués. Le but du projet, présenté par l'intermédiaire de ce mémoire, est donc de concevoir un protocole de communication pour la distribution des objets ainsi qu'une librairie de classes C++ facilitant le développement et la programmation de systèmes embarqués à objets distribués. Le protocole développé convoite simplicité et légèreté afin de satisfaire aux contraintes des systèmes embarqués pour qui les ressources matérielles sont limitées. Quant à la librairie de classes, elle exploite le concept d'héritage pour permettre une distribution quasi transparente des objets. En fait, pour arriver à tirer avantage des services d'un objet distant, il suffit de créer un Proxy et un Adaptor , spécifique à cet objet, et de les intégrer au système. L'objet client peut alors faire appel aux différentes opérations de l'objet serveur, et ce, même s'ils ne sont pas physiquement localisés sur le même noeud."--Résumé abrégé par UM

    HTML et Javascript

    No full text
    Programmation Web, Ă©tude des langages HTML et JavaScrip

    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
    corecore