• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 2447
  • 1618
  • 1255
  • 21
  • 6
  • 6
  • 2
  • 2
  • 1
  • Tagged with
  • 5650
  • 3140
  • 3002
  • 1276
  • 692
  • 690
  • 662
  • 645
  • 620
  • 597
  • 486
  • 476
  • 457
  • 453
  • 438
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
191

Design of connectors in distributed system based on extended attribute-driven design method

Qi, Yan January 2012 (has links) (PDF)
Today, software architecture has received a lot of attention in software development process. In terms of architecture, component and connector are two key concepts to understand logical organization of software. Within the organization, components are required to be connected and configured into a system with exchanging data. In order to satisfy the requirements of connection, connectors provide components with mechanisms for communication, coordination, or cooperation among them. Particularly, in distributed systems, connectors play an important role in software architecture. However, in software development process, engineers often face more challenges of building connectors with high quality and full functionality, because of different level of understanding for connectors and lack of design models, as well as few approaches of maintenance. Some existing approaches are proposed to solve the connector problems. For example, Aspect-Oriented Programming is used to build connectors based on relationship of components; according to transmission of information between components, middleware solution is adopted to develop connectors. In this thesis we present a new way to define software connectors. This definition considers different aspects of connectors, especially for the connectors in distributed systems. By using the definition, software connectors are clearly and fully described in computer science. Additionally, it covers different knowledge areas for designing connectors, in particular the area of quality attributes of software. We create a new design approach which is called Extended Attribute-Driven Design method (EADD) for both architecture design and selection of developments tools. In order to design connectors, EADD has capability to drive architecture design for meeting the functional requirements and achieving the quality attributes. Based on EADD and the new definition of connector, we propose a model for designing connectors with aim of producing architecture design and selecting development tools. The model comprises Life Cycle Model (LCM) and Layered Design Model (LDM). They are meant to enhance high level design of connectors. Particularly, it has capability to organize a set of development tools for satisfying quality attributes of connectors. The model can be applied to design generic connectors in distributed systems, for example connectors in component-based distributed systems, connectors in service-oriented architecture (SOA), etc. In terms of the model, we provide typical approaches and tools in practice. Furthermore, we perform an analysis by combining our design model with existing approaches to highlight its advantages and we analyzes the effect of the design model on classification of connectors and attempts to make a new classification. At the end of this thesis, a case study is realized: design of connector for a push mail system in wireless network. In the case study, we show the design process of the architecture of connector and the selection of the related development tools based on our design model.
192

Une approche de reconnaissance d'activités utilisant la fouille de données temporelles

Moutacalli, Mohamed Tarik January 2012 (has links) (PDF)
L'assistance d'une personne atteinte de la maladie d'Alzheimer est une tâche difficile, coûteuse et complexe. La relation est souvent compliquée entre l'aidant et le patient qui souhaite préserver son intimité. Avec l'émergence du domaine de l'intelligence ambiante, les recherches se sont orientées vers une assistance automatisée qui consiste à remplacer l'assistant par un agent artificiel. Le plus grand défi de cette solution réside dans la reconnaissance, voire la prédiction, de l'activité du patient afin de l'aider, au besoin et au moment opportun, à son bon déroulement. Le nombre très élevé des activités de la vie quotidienne (AVQ) que le patient peut effectuer, ce que nous appelons aussi le nombre d'hypothèses, complique grandement cette recherche. En effet, comme chaque activité se compose de plusieurs actions, cette recherche se traduit donc par la recherche de la ou les actions effectuées par le patient parmi toutes les actions de toutes ses activités et ce, en un temps réel. Ce mémoire de maîtrise explore les techniques de la fouille de données temporelles afin de proposer une réponse à cette problématique en essayant de réduire au maximum, à un instant précis, le nombre d'hypothèses. Le travail débute par une analyse de l'historique des actions du patient pour créer des plans d'activités. Des plans propres à chaque patient et qui spécifient la liste ordonnée des actions qui composent une activité. Ensuite, une segmentation temporelle est effectuée sur chaque plan créant un ou plusieurs intervalles temporels résumant les périodes de commencement de l'activité. La troisième étape consiste à implémenter un système de reconnaissance d'activité pour trouver, à tout instant, l'activité la plus probable. Ce travail se base essentiellement sur l'aspect temporel et n'offre pas juste une solution pour la reconnaissance d'activité, mais il répond aussi aux erreurs d'initiations. Des erreurs susceptibles d'être commises par les malades d'Alzheimer et qui n'ont jamais été traitées par aucune autre recherche. Les tests et validations de notre approche ont été effectués avec des données réelles enregistrées après l'observation de réels malades d'Alzheimer et les résultats sont très satisfaisants.
193

Système intelligent d'aide au contrôle de procédé dans un four à arc

Girard-Nault, Jimmy January 2012 (has links) (PDF)
Le contrôle de procédé est une tâche difficile. C'est particulièrement le cas lorsque le système possède des non-linéarités, comme des réactions chimiques ou des imprévus. Nous retrouvons ce genre de procédé dans les fours à arc qui sont utilisés notamment dans la production d'acier et de ferrosilicium. En plus de faire face à plusieurs sources de nonlinéarités, nous sommes dans l'impossibilité de connaître et mesurer exactement ce qui se passe à l'intérieur du four. Le manque de contrôle et d'automatisme lié à ces problèmes amène les opérateurs à devoir prendre des décisions importantes qui auront un impact sur le déroulement du procédé. Puisqu'elles se basent la plupart du temps sur l'expérience et l'intuition des travailleurs, il est facile de déduire que les décisions prises ne seront pas toujours les plus efficaces. Par contre, la probabilité d'être en erreur est diminuée plus l'opérateur possède de l'expertise. Or, ce n'est pas tout le monde qui possède la même expertise et les ressources expérimentées sont rares et coûteuses. De plus, lors du départ à la retraite d'un employé, cette connaissance est souvent perdue. Dans le but d'améliorer le contrôle et l'automatisation du procédé, des auteurs proposent des solutions liées au contrôle de sous-systèmes. Ainsi, nous retrouvons un nombre assez limité de modèles qui permettent de contrôler la position des électrodes, d'améliorer l'efficacité énergétique, d'estimer la température du métal en fusion, etc. Mais ceux-ci sont limités à leurs soussystèmes respectifs. De plus, ils n'utilisent pas l'expertise des opérateurs et ils ne permettent pas de la conserver. Aussi, les solutions qui permettent d'améliorer le contrôle de façon globale se font très rares. Un système expert pourrait formaliser, codifier et conserver l'expertise du domaine des fours à arc (provenant entre autres des opérateurs) dans une base de connaissance. En la combinant avec de l'information comme des données du procédé en temps réel, nous l'utilisons dans le but de fournir des indications, de déduire des phénomènes et de devenir un puissant outil d'aide à la décision qui permet d'améliorer le contrôle du procédé dans son ensemble. Ce mémoire fournit la méthodologie et la connaissance requise pour mettre en oeuvre un système expert qui sert d'outil d'aide à la décision pour améliorer le contrôle de procédé dans les fours à arc. Elle propose des règles de production décrites à l'aide d'un formalisme de codification de l'expertise des opérateurs et des modèles s'appuyant sur des équations mathématiques. Ces derniers utilisent des données historiques et en temps réel comme les paramètres électriques. Ces deux éléments sont utilisés par le système expert dans le but de faire un diagnostic de l'état interne du four et de son mélange. Il permet entre autres de déduire s'il y a accumulation de métal, s'il y a la nécessité d'ajouter du carbone ou non dans le mélange et la position des électrodes. Ainsi, il permet d'améliorer le contrôle global du procédé, de conserver l'expertise du domaine et de l'utiliser pour effectuer ses déductions. Enfin, le système a été implémenté et validé concrètement en milieu industriel où nous produisons du ferrosilicium dans un four à arc. Ainsi, les modèles ont été validés individuellement en comparant le résultat obtenu avec la réalité sur une période de douze jours et les règles ont été testées par validation apparente et comparées avec les décisions prises par les experts.
194

Accélération d'algorithmes permettant le traitement de la vidéo à l'aide d'une puce GPU

Caron, Christian. January 2003 (has links)
Thèses (M.Sc.A.)--Université de Sherbrooke (Canada), 2003. / In ProQuest dissertations and theses. Titre de l'écran-titre (visionné le 16 oct. 2007). Publié aussi en version papier.
195

Informatique, pouvoir et libertés publiques.

Vitalirs, André. January 1900 (has links)
Th.--Droit--Rennes 1, 1979.
196

Représentations et Similarités d'Images Pour la Classification Visuelle

Liu, Yan 22 March 2010 (has links)
Pas de résumé / No abstract
197

Testing web applications through layout constraints : tools and applications

Guérin, Francis January 2017 (has links) (PDF)
With businesses trying to minimize cost, web applications are becoming increasingly useful by providing cross-platform applications that can be easily ported to desktop and mobile. However, testing these applications is much more arduous than testing desktop applications due to the lack of tools. In this thesis, we aim to describe a web application testing tool called Cornipickle which uses an expressive layout specification. The specification language for Cornipickle makes statements on applications’ layouts but we show that it can also test behaviours. With it, we effectively achieve to detect the bugs found with our survey of 35 real-world web applications. We also show Cornipickle’s versatility by using it in multiple applications and tools, notably pairing it with a crawler. Puisque les entreprises tentent de minimiser leurs coûts, les applications web deviennent de plus en plus utiles en fournissant des applications multiplateformes qui peuvent être facilement portées aux appareils mobiles et environnements de bureau. Par contre, tester ces applications est beaucoup plus ardu que de tester des applications de bureau en raison du manque d’outils. Dans ce mémoire, nous décrivons un outil de test d’applications web, Cornipickle, qui utilise une spécification expressive sur la mise en page. Le langage de spécification de Cornipickle fait des affirmations sur la mise en page des applications mais nous montrons qu’il permet aussi de tester des comportements. Grâce à lui, nous réussissons à détecter efficacement les bogues identifiés dans une étude de 35 applications webs. Nous montrons aussi la polyvalence de Cornipickle en l’utilisant dans une multitude d’applications et outils, notamment en l’associant à un robot d’indexation.
198

Design of connectors in distributed system based on extended attribute-driven design method

Qi, Yan January 2012 (has links) (PDF)
Today, software architecture has received a lot of attention in software development process. In terms of architecture, component and connector are two key concepts to understand logical organization of software. Within the organization, components are required to be connected and configured into a system with exchanging data. In order to satisfy the requirements of connection, connectors provide components with mechanisms for communication, coordination, or cooperation among them. Particularly, in distributed systems, connectors play an important role in software architecture. However, in software development process, engineers often face more challenges of building connectors with high quality and full functionality, because of different level of understanding for connectors and lack of design models, as well as few approaches of maintenance. Some existing approaches are proposed to solve the connector problems. For example, Aspect-Oriented Programming is used to build connectors based on relationship of components; according to transmission of information between components, middleware solution is adopted to develop connectors. In this thesis we present a new way to define software connectors. This definition considers different aspects of connectors, especially for the connectors in distributed systems. By using the definition, software connectors are clearly and fully described in computer science. Additionally, it covers different knowledge areas for designing connectors, in particular the area of quality attributes of software. We create a new design approach which is called Extended Attribute-Driven Design method (EADD) for both architecture design and selection of developments tools. In order to design connectors, EADD has capability to drive architecture design for meeting the functional requirements and achieving the quality attributes. Based on EADD and the new definition of connector, we propose a model for designing connectors with aim of producing architecture design and selecting development tools. The model comprises Life Cycle Model (LCM) and Layered Design Model (LDM). They are meant to enhance high level design of connectors. Particularly, it has capability to organize a set of development tools for satisfying quality attributes of connectors. The model can be applied to design generic connectors in distributed systems, for example connectors in component-based distributed systems, connectors in service-oriented architecture (SOA), etc. In terms of the model, we provide typical approaches and tools in practice. Furthermore, we perform an analysis by combining our design model with existing approaches to highlight its advantages and we analyzes the effect of the design model on classification of connectors and attempts to make a new classification. At the end of this thesis, a case study is realized: design of connector for a push mail system in wireless network. In the case study, we show the design process of the architecture of connector and the selection of the related development tools based on our design model.
199

Développement d'un modèle de gestion d'objets géo-localisables centralisé utilisant différents moyens de communication dans une environnement OSGI

Goundafi, Abdelali January 2010 (has links) (PDF)
Pendant la dernière décennie, la vente des GPS a connue une explosion à l'échelle planétaire. Les applications logicielles et les améliorations matérielles liées à cette industrie, ne cessent de proliférer et ce à une vitesse exponentielle. Désormais, les systèmes de géo-localisation, et plus précisément le GPS, sont utilisés dans plusieurs domaines. Plusieurs compagnies de transport l'utilisent pour contrôler l'itinéraire de leurs conducteurs afin d'optimiser l'utilisation du réseau routier, d'économiser la consommation d'essence, le temps de transit, etc. Les soldats l'utilisent lors des conflits pour se localiser dans les endroits les plus difficiles d'accès, ils utilisent le GPS aussi pour le guidage précis de leurs bombes et missiles afin de minimiser les dégâts collatéraux. Dans le domaine de la santé, le GPS permet d'augmenter les chances de survie des personnes atteintes d'Alzheimer en les localisant très vite. Un dispositif appelé VPS peut, via un cardiogramme intégré, déceler l'imminence d'une crise cardiaque et envoyer la position du patient aux services de santé afin d'intervenir à temps et par conséquent sauver le patient en question. Afin de pouvoir gérer tous les services de localisation mentionnés précédemment de manière automatique, nous avons besoin d'un système qui puisse interconnecter tous ces services de façon transparente sans que le code soit un frein pour le développement ni que l'ajout de nouveaux services alourdisse le système et rende la maintenance une tâche très difficile au programmeur. Le deuxième point de la problématique concerne la communication, les données peuvent être envoyées à distance, dans un système de géo-localisation classique, via un réseau cellulaire. L'usage du réseau cellulaire est coûteux et nous avons besoin d'autres alternatives pour assurer une communication sans-fil à distance à moindre coût. Le troisième point à résoudre est la précision des dispositifs de géo-localisation. Cette précision n'est pas toujours assurée avec l'usage classique du GPS. Des erreurs dans le système GPS peuvent augmenter considérablement l'imprécision de l'erreur sur le positionnement, pour palier ce problème nous devons disposer de solutions qui permettent d'augmenter la précision et de déterminer si le relevé de la position calculée par le GPS est fiable pour le service de géo-localisation. En mettant tous les services de géo-localisation dans un même système, nous parviendrons à créer un environnement coopératifs où chaque service pourra utiliser un ou plusieurs autres services pour optimiser le temps de réponse et d'intervention ce qui constitue un quatrième point de notre problématique. La vision globale des services coexistant dans le même système permettra aux décideurs de haut niveau de trouver la logistique optimale pour que les services gérés soient dans leurs pleines capacités opérationnelles. Les approches de localisation existantes sont basées sur une architecture client serveur où on utilise une connexion GPRS qui est très coûteuse pour envoyer les relevés de positionnement à distance et de manière périodique au serveur. Au niveau du serveur on dispose d'une application pour un service de géo-localisation souvent spécifique à un seul domaine d'application. Toute évolutivité du système devient difficile et onéreuse dépendamment de la complexité de l'application. Dans ce mémoire, j'ai conçu un modèle pour la gestion des objets géo-localisables qui nous permet de gérer plusieurs services de géo-localisation dans une même plateforme. Cette solution apportera des améliorations par rapport aux modèles standards au niveau du système de communication, la fiabilité des données de localisation, la programmation des composantes du système, de leur intégration et de leur maintenance. Nous avons implémenté ce modèle (dans un outil de gestion et de contrôle d'objets géo-localisables) pour répondre aux quatre problématiques mentionnées précédemment.
200

Gestion de mémoire dynamique et implicite par aspect pour des logiciels C++

Dhiab, Heni January 2010 (has links) (PDF)
Le langage C++ est un langage destiné pour des projets complexes et de taille importante. En effet, il permet la programmation sous de multiples paradigmes, comme la programmation procédurale, la programmation orientée objet et la programmation générique. Sa facilité d'utilisation et son efficacité, soutenues avec une bonne flexibilité et une bonne portabilité, font de lui un langage performant et le 3ème utilisé dans le monde. Toutefois, les dispositifs de sécurité sont soit absents, soit mal supportés par la programmation C++; malheureusement, la flexibilité et le contrôle explicite des données que C++ offre au programmeur représentent une importante source de vulnérabilité et d'erreurs critiques. Certes, les librairies C++ sont fournies aux programmeurs avec des fonctions pour la gestion des privilèges, la gestion des fichiers, ou encore la gestion du réseau, mais négligent les problèmes de sécurité. Notons que la sécurité est celle de la gestion de mémoire et celle des types tels que les débordements de mémoire tampon, les erreurs de format de chaîne et les mauvaises conversions de type. Malgré la disponibilité de nombreux livres et documents sur lesquels un programmeur peut s'appuyer pour développer un code sécuritaire, des erreurs de mise en ?uvre ayant des conséquences graves pour la sécurité existent toujours dans le code source. Plus le nombre de lignes augmente, plus un contrôle manuel des violations de la sécurité devient difficile. N'étant pas appuyée par une gestion implicite, la gestion de la mémoire en C++ s'est vue toujours comme un exercice difficile, voire parfois périlleux. Cette contrainte a toujours posé un défi considérable. Ce travail de recherche vise à développer une méthode et un outil qui permettront une gestion et un débogage implicite de la mémoire C++. Nous nous sommes inspirés des limites de débogueurs de mémoire connues dans le domaine pour réviser certains choix de structuration et de conception de notre outil. La programmation par aspect, incarnant la séparation des préoccupations et formant un support méthodologique de modélisation et de programmation, a servi de support pour 1'implementation d'un outil générique et nous avons pu regrouper l'aspect mémoire en un seul aspect. Et en étant soutenus par la programmation par aspect, nous avons pu aussi contourner les limites du modèle de programmation par objet. Nous avons opté pour une solution raffinée des solutions déjà proposées {Purify et Memcheck&Valgrind). Cette dernière inclut i) un aspect permettant la sécurisation des allocations et des désallocations des espaces mémoire C++, ii) un aspect de détection et de traitement des erreurs qui sont dues à une mauvaise gestion de mémoire C++, et iii) un aspect capable de calculer le besoin d'une application C++ en mémoire ainsi que son temps d'exécution. L'outil incarnant la solution proposée a été expérimenté sur une application existante et a été comparé avec l'outil Purify selon six critères bien identifiés (Chapitre 5).

Page generated in 0.0695 seconds