27 resultados para Fonctionnalités
em Université de Montréal, Canada
Resumo:
Les auteurs présentent un survol des logiciels de portails de bibliothèque. La notion de portail de bibliothèque est d’abord définie, puis les principales fonctionnalités de ce type de produit (métarecherche, personnalisation, authentification) sont présentées et expliquées. Un aperçu du marché des logiciels de portail est ensuite donné. Des questions reliées à la fiabilité des résultats et à la formation des utilisateurs sont également soulevées. // The authors present a brief review of software for library portals. The concept of library portals is defined and their main functionalities subsequently presented and explained (meta search engines, personalization, authentication). A general survey of the market for portal software is given before addressing certain questions about the reliability of their results and user training.
Resumo:
Les étudiants gradués et les professeurs (les chercheurs, en général), accèdent, passent en revue et utilisent régulièrement un grand nombre d’articles, cependant aucun des outils et solutions existants ne fournit la vaste gamme de fonctionnalités exigées pour gérer correctement ces ressources. En effet, les systèmes de gestion de bibliographie gèrent les références et les citations, mais ne parviennent pas à aider les chercheurs à manipuler et à localiser des ressources. D'autre part, les systèmes de recommandation d’articles de recherche et les moteurs de recherche spécialisés aident les chercheurs à localiser de nouvelles ressources, mais là encore échouent dans l’aide à les gérer. Finalement, les systèmes de gestion de contenu d'entreprise offrent les fonctionnalités de gestion de documents et des connaissances, mais ne sont pas conçus pour les articles de recherche. Dans ce mémoire, nous présentons une nouvelle classe de systèmes de gestion : système de gestion et de recommandation d’articles de recherche. Papyres (Naak, Hage, & Aïmeur, 2008, 2009) est un prototype qui l’illustre. Il combine des fonctionnalités de bibliographie avec des techniques de recommandation d’articles et des outils de gestion de contenu, afin de fournir un ensemble de fonctionnalités pour localiser les articles de recherche, manipuler et maintenir les bibliographies. De plus, il permet de gérer et partager les connaissances relatives à la littérature. La technique de recommandation utilisée dans Papyres est originale. Sa particularité réside dans l'aspect multicritère introduit dans le processus de filtrage collaboratif, permettant ainsi aux chercheurs d'indiquer leur intérêt pour des parties spécifiques des articles. De plus, nous proposons de tester et de comparer plusieurs approches afin de déterminer le voisinage dans le processus de Filtrage Collaboratif Multicritère, de telle sorte à accroître la précision de la recommandation. Enfin, nous ferons un rapport global sur la mise en œuvre et la validation de Papyres.
Resumo:
Communication présentée le 11 novembre 2009 au Premier Congrès des milieux documentaires du Québec, au Palais des congrès de Montréal. Sur le même sujet, voir également http://hdl.handle.net/1866/2813.
Resumo:
L'utilisation des méthodes formelles est de plus en plus courante dans le développement logiciel, et les systèmes de types sont la méthode formelle qui a le plus de succès. L'avancement des méthodes formelles présente de nouveaux défis, ainsi que de nouvelles opportunités. L'un des défis est d'assurer qu'un compilateur préserve la sémantique des programmes, de sorte que les propriétés que l'on garantit à propos de son code source s'appliquent également au code exécutable. Cette thèse présente un compilateur qui traduit un langage fonctionnel d'ordre supérieur avec polymorphisme vers un langage assembleur typé, dont la propriété principale est que la préservation des types est vérifiée de manière automatisée, à l'aide d'annotations de types sur le code du compilateur. Notre compilateur implante les transformations de code essentielles pour un langage fonctionnel d'ordre supérieur, nommément une conversion CPS, une conversion des fermetures et une génération de code. Nous présentons les détails des représentation fortement typées des langages intermédiaires, et les contraintes qu'elles imposent sur l'implantation des transformations de code. Notre objectif est de garantir la préservation des types avec un minimum d'annotations, et sans compromettre les qualités générales de modularité et de lisibilité du code du compilateur. Cet objectif est atteint en grande partie dans le traitement des fonctionnalités de base du langage (les «types simples»), contrairement au traitement du polymorphisme qui demande encore un travail substantiel pour satisfaire la vérification de type.
Resumo:
Ce mémoire vise à recenser les avantages et les inconvénients de l'utilisation du langage de programmation fonctionnel dynamique Scheme pour le développement de jeux vidéo. Pour ce faire, la méthode utilisée est d'abord basée sur une approche plus théorique. En effet, une étude des besoins au niveau de la programmation exprimés par ce type de développement, ainsi qu'une description détaillant les fonctionnalités du langage Scheme pertinentes au développement de jeux vidéo sont données afin de bien mettre en contexte le sujet. Par la suite, une approche pratique est utilisée en effectuant le développement de deux jeux vidéo de complexités croissantes: Space Invaders et Lode Runner. Le développement de ces jeux vidéo a mené à l'extension du langage Scheme par plusieurs langages spécifiques au domaine et bibliothèques, dont notamment un système de programmation orienté objets et un système de coroutines. L'expérience acquise par le développement de ces jeux est finalement comparée à celle d'autres développeurs de jeux vidéo de l'industrie qui ont utilisé Scheme pour la création de titres commerciaux. En résumé, l'utilisation de ce langage a permis d'atteindre un haut niveau d'abstraction favorisant la modularité des jeux développés sans affecter les performances de ces derniers.
Resumo:
De nos jours, les logiciels doivent continuellement évoluer et intégrer toujours plus de fonctionnalités pour ne pas devenir obsolètes. C'est pourquoi, la maintenance représente plus de 60% du coût d'un logiciel. Pour réduire les coûts de programmation, les fonctionnalités sont programmées plus rapidement, ce qui induit inévitablement une baisse de qualité. Comprendre l’évolution du logiciel est donc devenu nécessaire pour garantir un bon niveau de qualité et retarder le dépérissement du code. En analysant à la fois les données sur l’évolution du code contenues dans un système de gestion de versions et les données quantitatives que nous pouvons déduire du code, nous sommes en mesure de mieux comprendre l'évolution du logiciel. Cependant, la quantité de données générées par une telle analyse est trop importante pour être étudiées manuellement et les méthodes d’analyses automatiques sont peu précises. Dans ce mémoire, nous proposons d'analyser ces données avec une méthode semi automatique : la visualisation. Eyes Of Darwin, notre système de visualisation en 3D, utilise une métaphore avec des quartiers et des bâtiments d'une ville pour visualiser toute l'évolution du logiciel sur une seule vue. De plus, il intègre un système de réduction de l'occlusion qui transforme l'écran de l'utilisateur en une fenêtre ouverte sur la scène en 3D qu'il affiche. Pour finir, ce mémoire présente une étude exploratoire qui valide notre approche.
Resumo:
Cette recherche part du constat de l’utilisation des nouvelles technologies qui se généralise dans l’enseignement universitaire (tant sur campus qu’en enseignement à distance), et traite cette question sous trois aspects institutionnel, pédagogique et technologique. La recherche a été menée à travers quinze universités canadiennes où nous avons interrogé vingt-quatre universitaires, nommément des responsables de centres de pédagogie universitaire et des experts sur la question de l’intégration des technologies à l’enseignement universitaire. Pour le volet institutionnel, nous avons eu recours à un cadre théorique qui met en relief le changement de structure et de fonctionnement des universités à l’ère d’Internet, suivant le modèle théorique de l’Open System Communications Net de Kershaw et Safford (1998, 2001). Les résultats, à l’aune de ce modèle, confirment que les universités conventionnelles sont dans une phase de transformation due à l’utilisation des technologies de l'information et de la communication (TIC). De plus, les cours hybrides, la bimodalité, des universités entièrement à distance visant une clientèle estudiantine au-delà des frontières régionales et nationales, des universités associant plusieurs modèles, des universités fonctionnant à base d’intelligence artificielle, sont les modèles principaux qui ont la forte possibilité de s’imposer dans le paysage universitaire nord-américain au cours des prochaines décennies. Enfin, à la lumière du modèle théorique, nous avons exploré le rôle de l’université, ainsi en transformation, au sein de la société tout comme les rapports éventuels entre les institutions universitaires. S’agissant de l’aspect pédagogique, nous avons utilisé une perspective théorique fondée sur le modèle du Community of Inquiry (CoI) de Garrison, Anderson et Archer (2000), revu par Vaughan et Garrison (2005) et Garrison et Arbaugh (2007) qui prône notamment une nouvelle culture de travail à l’université fondée sur trois niveaux de présence. Les résultats indiquent l’importance d’éléments relatifs à la présence d’enseignement, à la présence cognitive et à la présence sociale, comme le suggère le modèle. Cependant, la récurrence -dans les trois niveaux de présence- de certains indicateurs, suggérés par les répondants, tels que l’échange d’information, la discussion et la collaboration, nous ont amenés à conclure à la non-étanchéité du modèle du CoI. De plus, certaines catégories, de par leur fréquence d’apparition dans les propos des interviewés, mériteraient d’avoir une considération plus grande dans les exigences pédagogiques que requiert le nouveau contexte prévalant dans les universités conventionnelles. C’est le cas par exemple de la catégorie « cohésion de groupe ». Enfin, dans le troisième volet de la recherche relatif à la dimension technologique, nous nous sommes inspirés du modèle théorique d’Olapiriyakul et Scher (2006) qui postule que l’infrastructure dans l’enseignement doit être à la fois une technologie pédagogique et une technologie d’apprentissage pour les étudiants (instructional technology and student learning technology). Partant de cette approche, le volet technologique de notre recherche a consisté à identifier les fonctionnalités exigées de la technologie pour induire une évolution institutionnelle et pédagogique. Les résultats à cet égard ont indiqué que les raisons pour lesquelles les universités choisissent d’intégrer les TIC à l’enseignement ne sont pas toujours d’ordre pédagogique, ce qui explique que la technologie elle-même ne revête pas forcément les qualités a priori requises pour une évolution pédagogique et institutionnelle. De ce constat, les technologies appropriées pour une réelle évolution pédagogique et institutionnelle des universités ont été identifiées.
Resumo:
Nous proposons une approche basée sur la formulation interactive des requêtes. Notre approche sert à faciliter des tâches d’analyse et de compréhension du code source. Dans cette approche, l’analyste utilise un ensemble de filtres de base (linguistique, structurel, quantitatif, et filtre d’interactivité) pour définir des requêtes complexes. Ces requêtes sont construites à l’aide d’un processus interactif et itératif, où des filtres de base sont choisis et exécutés, et leurs résultats sont visualisés, changés et combinés en utilisant des opérateurs prédéfinis. Nous avons évalués notre approche par l’implantation des récentes contributions en détection de défauts de conception ainsi que la localisation de fonctionnalités dans le code. Nos résultats montrent que, en plus d’être générique, notre approche aide à la mise en œuvre des solutions existantes implémentées par des outils automatiques.
Resumo:
Ce mémoire présente une implantation de la création paresseuse de tâches desti- née à des systèmes multiprocesseurs à mémoire distribuée. Elle offre un sous-ensemble des fonctionnalités du Message-Passing Interface et permet de paralléliser certains problèmes qui se partitionnent difficilement de manière statique grâce à un système de partitionnement dynamique et de balancement de charge. Pour ce faire, il se base sur le langage Multilisp, un dialecte de Scheme orienté vers le traitement parallèle, et implante sur ce dernier une interface semblable à MPI permettant le calcul distribué multipro- cessus. Ce système offre un langage beaucoup plus riche et expressif que le C et réduit considérablement le travail nécessaire au programmeur pour pouvoir développer des programmes équivalents à ceux en MPI. Enfin, le partitionnement dynamique permet de concevoir des programmes qui seraient très complexes à réaliser sur MPI. Des tests ont été effectués sur un système local à 16 processeurs et une grappe à 16 processeurs et il offre de bonnes accélérations en comparaison à des programmes séquentiels équiva- lents ainsi que des performances acceptables par rapport à MPI. Ce mémoire démontre que l’usage des futures comme technique de partitionnement dynamique est faisable sur des multiprocesseurs à mémoire distribuée.
Resumo:
L’application des métaux de transition à la fonctionnalisation directe a ouvert la voie à une nouvelle classe de réactions pour la formation de liens carbone-carbone. De par l'omniprésence des liaisons C–H, l’introduction de nouvelles fonctionnalités chimiques par voie directe et pré-activation minimale s’impose comme une stratégie de synthèse très attrayante. Ainsi, il est envisageable de préparer de manière rapide et efficace des supports complexes menant à des molécules complexes, qui pourraient être utiles dans divers domaines de la chimie. L'objectif principal de la présente thèse vise la fonctionnalisation directe des arènes hétérocycliques et non hétérocycliques et, plus précisément, les techniques d’arylation. Dans un premier temps, nous allons aborder le thème de l’arylation directe tout en mettant l’accent sur les pyridines (Chapitre 1). Ces molécules sont à la base d'une multitude de composés biologiquement actifs et jouent un rôle important dans le domaine des sciences des matériaux, de l’agrochimie et de la synthèse des produits naturels. Dans un deuxième temps, nous discuterons de nos travaux sur l’arylation directe catalysé par un complex de palladium sur des ylures de N-iminopyridinium en soulignant la dérivatisation du sel de pyridinium après une phénylation sp2 (Chapitre 2). L’étude de ce procédé nous a permis de mettre en lumière plusieurs découvertes importantes, que nous expliquerons en détails une à une : l’arylation benzylique directe lorsque des ylures N-iminopyridinium substituées avec un groupement alkyl à la position 2 sont utilisés comme partenaires dans la réaction; les allylations Tsuji-Trost catalysée par un complex de palladium; et l’alkylation directe et sans métal via une catalyse par transfert de phase. Plusieurs défis restent à relever pour le développement de procédés directs utilisant des métaux de transition peu coûteux, d’autant plus que la synthèse par transformation directe des pyridines 2-alcényles, lesquelles sont pertinentes sur le plan pharmacologique, n’a pas encore été rapportée à ce jour. Avec cette problématique en tête, nous avons réussi à mettre au point une alcénylation directe catalysé par un complex de cuivre sur des ylures de N-iminopyridinium. Nous discuterons également d’une nouvelle méthode pour la préparation des iodures de vinyle utilisés dans les couplages. Ces réactions sont non seulement remarquablement chimiosélectives, mais sont aussi applicables à plusieurs substrats (Chapitre 3). En optimisant ce procédé direct, nous avons découvert une façon unique de synthétiser les pyrazolo[1,5-a]pyridines 2-substituées (Chapitre 4). Le mécanisme global met en jeu une séquence tandem de fonctionnalisation-cyclisation directe et un procédé direct en cascade, qui n’avais jamais été rapporté. Cela simplifie ansi la synthèse autrement compliquée de ces substrats en y apportant une solution à un problème de longue date. Dans les deux derniers chapitres, nous examinerons en détail les techniques d’arylation directe qui n'impliquent pas les partenaires de couplage hétérocycliques. Entre autres, au Chapitre 5, nous soulignerons notre découverte d’un umpolung dirigé et catalysé par un complexe de palladium du benzène et de quelques autres dérivés arènes. Il s’agit là du premier cas de fonctionnalisation directe dans laquelle le groupe directeur se trouve sur le partenaire halogène et il s’ajoute à la courte liste d’exemples connus dans la littérature rapportant une arylation directe du benzène. Finalement, au Chapitre 6, nous passerons en revue une nouvelle arylation directe catalysée au fer, qui se veut un procédé peu coûteux, durable et présentant une économie d’atomes. Nous discutons des substrats possibles ainsi des études mécanistiques réalisés.
Resumo:
L’augmentation du nombre d’usagers de l’Internet a entraîné une croissance exponentielle dans les tables de routage. Cette taille prévoit l’atteinte d’un million de préfixes dans les prochaines années. De même, les routeurs au cœur de l’Internet peuvent facilement atteindre plusieurs centaines de connexions BGP simultanées avec des routeurs voisins. Dans une architecture classique des routeurs, le protocole BGP s’exécute comme une entité unique au sein du routeur. Cette architecture comporte deux inconvénients majeurs : l’extensibilité (scalabilité) et la fiabilité. D’un côté, la scalabilité de BGP est mesurable en termes de nombre de connexions et aussi par la taille maximale de la table de routage que l’interface de contrôle puisse supporter. De l’autre côté, la fiabilité est un sujet critique dans les routeurs au cœur de l’Internet. Si l’instance BGP s’arrête, toutes les connexions seront perdues et le nouvel état de la table de routage sera propagé tout au long de l’Internet dans un délai de convergence non trivial. Malgré la haute fiabilité des routeurs au cœur de l’Internet, leur résilience aux pannes est augmentée considérablement et celle-ci est implantée dans la majorité des cas via une redondance passive qui peut limiter la scalabilité du routeur. Dans cette thèse, on traite les deux inconvénients en proposant une nouvelle approche distribuée de BGP pour augmenter sa scalabilité ainsi que sa fiabilité sans changer la sémantique du protocole. L’architecture distribuée de BGP proposée dans la première contribution est faite pour satisfaire les deux contraintes : scalabilité et fiabilité. Ceci est accompli en exploitant adéquatement le parallélisme et la distribution des modules de BGP sur plusieurs cartes de contrôle. Dans cette contribution, les fonctionnalités de BGP sont divisées selon le paradigme « maître-esclave » et le RIB (Routing Information Base) est dupliqué sur plusieurs cartes de contrôle. Dans la deuxième contribution, on traite la tolérance aux pannes dans l’architecture élaborée dans la première contribution en proposant un mécanisme qui augmente la fiabilité. De plus, nous prouvons analytiquement dans cette contribution qu’en adoptant une telle architecture distribuée, la disponibilité de BGP sera augmentée considérablement versus une architecture monolithique. Dans la troisième contribution, on propose une méthode de partitionnement de la table de routage que nous avons appelé DRTP pour diviser la table de BGP sur plusieurs cartes de contrôle. Cette contribution vise à augmenter la scalabilité de la table de routage et la parallélisation de l’algorithme de recherche (Best Match Prefix) en partitionnant la table de routage sur plusieurs nœuds physiquement distribués.
Resumo:
La conception de systèmes hétérogènes exige deux étapes importantes, à savoir : la modélisation et la simulation. Habituellement, des simulateurs sont reliés et synchronisés en employant un bus de co-simulation. Les approches courantes ont beaucoup d’inconvénients : elles ne sont pas toujours adaptées aux environnements distribués, le temps d’exécution de simulation peut être très décevant, et chaque simulateur a son propre noyau de simulation. Nous proposons une nouvelle approche qui consiste au développement d’un simulateur compilé multi-langage où chaque modèle peut être décrit en employant différents langages de modélisation tel que SystemC, ESyS.Net ou autres. Chaque modèle contient généralement des modules et des moyens de communications entre eux. Les modules décrivent des fonctionnalités propres à un système souhaité. Leur description est réalisée en utilisant la programmation orientée objet et peut être décrite en utilisant une syntaxe que l’utilisateur aura choisie. Nous proposons ainsi une séparation entre le langage de modélisation et la simulation. Les modèles sont transformés en une même représentation interne qui pourrait être vue comme ensemble d’objets. Notre environnement compile les objets internes en produisant un code unifié au lieu d’utiliser plusieurs langages de modélisation qui ajoutent beaucoup de mécanismes de communications et des informations supplémentaires. Les optimisations peuvent inclure différents mécanismes tels que le regroupement des processus en un seul processus séquentiel tout en respectant la sémantique des modèles. Nous utiliserons deux niveaux d’abstraction soit le « register transfer level » (RTL) et le « transaction level modeling » (TLM). Le RTL permet une modélisation à bas niveau d’abstraction et la communication entre les modules se fait à l’aide de signaux et des signalisations. Le TLM est une modélisation d’une communication transactionnelle à un plus haut niveau d’abstraction. Notre objectif est de supporter ces deux types de simulation, mais en laissant à l’usager le choix du langage de modélisation. De même, nous proposons d’utiliser un seul noyau au lieu de plusieurs et d’enlever le bus de co-simulation pour accélérer le temps de simulation.
Resumo:
La méthode ChIP-seq est une technologie combinant la technique de chromatine immunoprecipitation avec le séquençage haut-débit et permettant l’analyse in vivo des facteurs de transcription à grande échelle. Le traitement des grandes quantités de données ainsi générées nécessite des moyens informatiques performants et de nombreux outils ont vu le jour récemment. Reste cependant que cette multiplication des logiciels réalisant chacun une étape de l’analyse engendre des problèmes de compatibilité et complique les analyses. Il existe ainsi un besoin important pour une suite de logiciels performante et flexible permettant l’identification des motifs. Nous proposons ici un ensemble complet d’analyse de données ChIP-seq disponible librement dans R et composé de trois modules PICS, rGADEM et MotIV. A travers l’analyse de quatre jeux de données des facteurs de transcription CTCF, STAT1, FOXA1 et ER nous avons démontré l’efficacité de notre ensemble d’analyse et mis en avant les fonctionnalités novatrices de celui-ci, notamment concernant le traitement des résultats par MotIV conduisant à la découverte de motifs non détectés par les autres algorithmes.
Resumo:
L'ensemble de mon travail a été réalisé grâce a l'utilisation de logiciel libre.
Resumo:
Analyser le code permet de vérifier ses fonctionnalités, détecter des bogues ou améliorer sa performance. L’analyse du code peut être statique ou dynamique. Des approches combinants les deux analyses sont plus appropriées pour les applications de taille industrielle où l’utilisation individuelle de chaque approche ne peut fournir les résultats souhaités. Les approches combinées appliquent l’analyse dynamique pour déterminer les portions à problèmes dans le code et effectuent par la suite une analyse statique concentrée sur les parties identifiées. Toutefois les outils d’analyse dynamique existants génèrent des données imprécises ou incomplètes, ou aboutissent en un ralentissement inacceptable du temps d’exécution. Lors de ce travail, nous nous intéressons à la génération de graphes d’appels dynamiques complets ainsi que d’autres informations nécessaires à la détection des portions à problèmes dans le code. Pour ceci, nous faisons usage de la technique d’instrumentation dynamique du bytecode Java pour extraire l’information sur les sites d’appels, les sites de création d’objets et construire le graphe d’appel dynamique du programme. Nous démontrons qu’il est possible de profiler dynamiquement une exécution complète d’une application à temps d’exécution non triviale, et d’extraire la totalité de l’information à un coup raisonnable. Des mesures de performance de notre profileur sur trois séries de benchmarks à charges de travail diverses nous ont permis de constater que la moyenne du coût de profilage se situe entre 2.01 et 6.42. Notre outil de génération de graphes dynamiques complets, nommé dyko, constitue également une plateforme extensible pour l’ajout de nouvelles approches d’instrumentation. Nous avons testé une nouvelle technique d’instrumentation des sites de création d’objets qui consiste à adapter les modifications apportées par l’instrumentation au bytecode de chaque méthode. Nous avons aussi testé l’impact de la résolution des sites d’appels sur la performance générale du profileur.