978 resultados para computer forensics tools
Resumo:
La version intégrale de ce mémoire est disponible uniquement pour consultation individuelle à la Bibliothèque de musique de l’Université de Montréal (www.bib.umontreal.ca/MU).
Resumo:
Quand le E-learning a émergé il ya 20 ans, cela consistait simplement en un texte affiché sur un écran d'ordinateur, comme un livre. Avec les changements et les progrès dans la technologie, le E-learning a parcouru un long chemin, maintenant offrant un matériel éducatif personnalisé, interactif et riche en contenu. Aujourd'hui, le E-learning se transforme de nouveau. En effet, avec la prolifération des systèmes d'apprentissage électronique et des outils d'édition de contenu éducatif, ainsi que les normes établies, c’est devenu plus facile de partager et de réutiliser le contenu d'apprentissage. En outre, avec le passage à des méthodes d'enseignement centrées sur l'apprenant, en plus de l'effet des techniques et technologies Web2.0, les apprenants ne sont plus seulement les récipiendaires du contenu d'apprentissage, mais peuvent jouer un rôle plus actif dans l'enrichissement de ce contenu. Par ailleurs, avec la quantité d'informations que les systèmes E-learning peuvent accumuler sur les apprenants, et l'impact que cela peut avoir sur leur vie privée, des préoccupations sont soulevées afin de protéger la vie privée des apprenants. Au meilleur de nos connaissances, il n'existe pas de solutions existantes qui prennent en charge les différents problèmes soulevés par ces changements. Dans ce travail, nous abordons ces questions en présentant Cadmus, SHAREK, et le E-learning préservant la vie privée. Plus précisément, Cadmus est une plateforme web, conforme au standard IMS QTI, offrant un cadre et des outils adéquats pour permettre à des tuteurs de créer et partager des questions de tests et des examens. Plus précisément, Cadmus fournit des modules telles que EQRS (Exam Question Recommender System) pour aider les tuteurs à localiser des questions appropriées pour leur examens, ICE (Identification of Conflits in Exams) pour aider à résoudre les conflits entre les questions contenu dans un même examen, et le Topic Tree, conçu pour aider les tuteurs à mieux organiser leurs questions d'examen et à assurer facilement la couverture des différent sujets contenus dans les examens. D'autre part, SHAREK (Sharing REsources and Knowledge) fournit un cadre pour pouvoir profiter du meilleur des deux mondes : la solidité des systèmes E-learning et la flexibilité de PLE (Personal Learning Environment) tout en permettant aux apprenants d'enrichir le contenu d'apprentissage, et les aider à localiser nouvelles ressources d'apprentissage. Plus précisément, SHAREK combine un système recommandation multicritères, ainsi que des techniques et des technologies Web2.0, tels que le RSS et le web social, pour promouvoir de nouvelles ressources d'apprentissage et aider les apprenants à localiser du contenu adapté. Finalement, afin de répondre aux divers besoins de la vie privée dans le E-learning, nous proposons un cadre avec quatre niveaux de vie privée, ainsi que quatre niveaux de traçabilité. De plus, nous présentons ACES (Anonymous Credentials for E-learning Systems), un ensemble de protocoles, basés sur des techniques cryptographiques bien établies, afin d'aider les apprenants à atteindre leur niveau de vie privée désiré.
Resumo:
La version intégrale de cette thèse est disponible uniquement pour consultation individuelle à la Bibliothèque de musique de l’Université de Montréal (www.bib.umontreal.ca/MU).
Resumo:
Le succès commercial des jeux vidéo nous montre qu’ils sont devenus une alternative non négligeable en matière de loisir et de divertissement. En observant les tendances, on constate que les concepteurs de jeux vidéo cherchent à transposer ou adapter les loisirs comme la danse, l’interprétation de la musique ou la pratique d’un sport dans le contexte de jeux vidéo (l’univers virtuel) et ceci est devenu encore plus évident depuis l’apparition des nouvelles technologies intégrant le mouvement comme mode d'interaction. En rapport aux activités dont les jeux vidéo s’inspirent, ces tendances entraînent des changements considérables sur l’aspect formel de l’activité ludique et notamment l’interaction. Dans le cas particulier du tennis de table, ou ping-pong dans le langage courant, il semble y avoir des différences en terme de plaisir lors de la pratique de ce loisir de façon traditionnelle ou en mode virtuel dans ses différentes adaptations. Le but de cette recherche est de mettre en évidence les différences entre l’appréciation de l’interaction avec le contrôleur multifonctionnel Wiimote et une raquette traditionnelle de ping-pong et de découvrir les implications sur l’expérience du plaisir de la transposition du jeu ping-pong traditionnel comparé aux adaptations sur la console Wii. Ainsi, en regard du CLASSIC GAME MODEL de Juul (2005) et du modèle THE FOUR FUN KEYS de Lazzaro (2008) nous comparons les deux modes d’interaction, jeu traditionnel avec le jeu virtuel, sur le plan formel du jeu et sur les dimensions du plaisir que chacun procure. Les résultats obtenus par l’observation des tests de jeu et l’entremise des autres outils permettent de souligner le rôle déterminant des interfaces dans l’engagement des joueurs et de montrer les limites des interfaces digitales par rapport à celle des jeux traditionnels.
Resumo:
L’un des aspects les plus percutants des avancées de la technologie des quinze dernières années a trait à la communication médiée par ordinateur : clavardage, messagerie instantanée, courrier électronique, forums de discussion, blogues, sites de réseautage social, etc. En plus d’avoir eu un impact significatif sur la société contemporaine, ces outils de communication ont largement modifié les pratiques d’écriture. Notre objet d’étude est le clavardage en groupe qui offre la possibilité aux scripteurs de communiquer simultanément entre eux. Cet outil de communication présente deux caractéristiques importantes aux plans discursif et communicationnel. Premièrement, on admet de façon générale que le clavardage est une forme de communication hybride : le code utilisé est l’écrit, mais les échanges de messages entrent dans une structure de dialogue qui rappelle l’oral. Deuxièmement, le caractère spontané du clavardage impose la rapidité, tant pour l’encodage que pour le décodage des messages. Dans le cadre d’une étude comparative réalisée sur les pratiques scripturales des clavardeurs francophones (Tatossian et Dagenais 2008), nous avons établi quatre catégories générales pour rendre compte de toutes les variantes scripturales de notre corpus : procédés abréviatifs, substitutions de graphèmes, neutralisations en finale absolue et procédés expressifs. Nous voulons maintenant tester la solidité de notre typologie pour des langues dont le degré de correspondance phonético-graphique diffère. En vertu de l’hypothèse de la profondeur de l’orthographe (orthographic depth hypothesis [ODH]; Katz et Frost 1992) selon laquelle un système orthographique transparent (comme l’italien, l’espagnol ou le serbo-croate) transpose les phonèmes directement dans l’orthographe, nous vérifierons si nos résultats pour le français peuvent être généralisés à des langues dont l’orthographe est dite « transparente » (l’espagnol) comparativement à des langues dont l’orthographe est dite « opaque » (le français et l’anglais). Pour chacune des langues, nous avons voulu répondre à deux question, soit : 1. De quelle manière peut-on classifier les usages scripturaux attestés ? 2. Ces usages graphiques sont-ils les mêmes chez les adolescents et les adultes aux plans qualitatif et quantitatif ? Les phénomènes scripturaux du clavardage impliquent également l’identité générationnelle. L’adolescence est une période caractérisée par la quête d’identité. L’étude de Sebba (2003) sur l’anglais démontre qu’il existe un rapport entre le « détournement de l’orthographe » et la construction identitaire chez les adolescents (par ex. les graffitis, la CMO). De plus, dans ces espaces communicationnels, nous assistons à la formation de communautés d’usagers fondée sur des intérêts communs (Crystal 2006), comme l’est la communauté des adolescents. Pour la collecte des corpus, nous recourrons à des échanges effectués au moyen du protocole Internet Relay Chat (IRC). Aux fins de notre étude, nous délimitons dans chacune des langues deux sous-corpus sociolinguistiquement distincts : le premier constitué à partir de forums de clavardage destinés aux adolescents, le second à partir de forums pour adultes. Pour chacune des langues, nous avons analysé 4 520 énoncés extraits de divers canaux IRC pour adolescents et pour adultes. Nous dressons d’abord un inventaire quantifié des différents phénomènes scripturaux recensés et procédons ensuite à la comparaison des résultats.
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:
Les systèmes multiprocesseurs sur puce électronique (On-Chip Multiprocessor [OCM]) sont considérés comme les meilleures structures pour occuper l'espace disponible sur les circuits intégrés actuels. Dans nos travaux, nous nous intéressons à un modèle architectural, appelé architecture isométrique de systèmes multiprocesseurs sur puce, qui permet d'évaluer, de prédire et d'optimiser les systèmes OCM en misant sur une organisation efficace des nœuds (processeurs et mémoires), et à des méthodologies qui permettent d'utiliser efficacement ces architectures. Dans la première partie de la thèse, nous nous intéressons à la topologie du modèle et nous proposons une architecture qui permet d'utiliser efficacement et massivement les mémoires sur la puce. Les processeurs et les mémoires sont organisés selon une approche isométrique qui consiste à rapprocher les données des processus plutôt que d'optimiser les transferts entre les processeurs et les mémoires disposés de manière conventionnelle. L'architecture est un modèle maillé en trois dimensions. La disposition des unités sur ce modèle est inspirée de la structure cristalline du chlorure de sodium (NaCl), où chaque processeur peut accéder à six mémoires à la fois et où chaque mémoire peut communiquer avec autant de processeurs à la fois. Dans la deuxième partie de notre travail, nous nous intéressons à une méthodologie de décomposition où le nombre de nœuds du modèle est idéal et peut être déterminé à partir d'une spécification matricielle de l'application qui est traitée par le modèle proposé. Sachant que la performance d'un modèle dépend de la quantité de flot de données échangées entre ses unités, en l'occurrence leur nombre, et notre but étant de garantir une bonne performance de calcul en fonction de l'application traitée, nous proposons de trouver le nombre idéal de processeurs et de mémoires du système à construire. Aussi, considérons-nous la décomposition de la spécification du modèle à construire ou de l'application à traiter en fonction de l'équilibre de charge des unités. Nous proposons ainsi une approche de décomposition sur trois points : la transformation de la spécification ou de l'application en une matrice d'incidence dont les éléments sont les flots de données entre les processus et les données, une nouvelle méthodologie basée sur le problème de la formation des cellules (Cell Formation Problem [CFP]), et un équilibre de charge de processus dans les processeurs et de données dans les mémoires. Dans la troisième partie, toujours dans le souci de concevoir un système efficace et performant, nous nous intéressons à l'affectation des processeurs et des mémoires par une méthodologie en deux étapes. Dans un premier temps, nous affectons des unités aux nœuds du système, considéré ici comme un graphe non orienté, et dans un deuxième temps, nous affectons des valeurs aux arcs de ce graphe. Pour l'affectation, nous proposons une modélisation des applications décomposées en utilisant une approche matricielle et l'utilisation du problème d'affectation quadratique (Quadratic Assignment Problem [QAP]). Pour l'affectation de valeurs aux arcs, nous proposons une approche de perturbation graduelle, afin de chercher la meilleure combinaison du coût de l'affectation, ceci en respectant certains paramètres comme la température, la dissipation de chaleur, la consommation d'énergie et la surface occupée par la puce. Le but ultime de ce travail est de proposer aux architectes de systèmes multiprocesseurs sur puce une méthodologie non traditionnelle et un outil systématique et efficace d'aide à la conception dès la phase de la spécification fonctionnelle du système.
Resumo:
La compréhension de la structure d’un logiciel est une première étape importante dans la résolution de tâches d’analyse et de maintenance sur celui-ci. En plus des liens définis par la hiérarchie, il existe un autre type de liens entre les éléments du logiciel que nous appelons liens d’adjacence. Une compréhension complète d’un logiciel doit donc tenir compte de tous ces types de liens. Les outils de visualisation sont en général efficaces pour aider un développeur dans sa compréhension d’un logiciel en lui présentant l’information sous forme claire et concise. Cependant, la visualisation simultanée des liens hiérarchiques et d’adjacence peut donner lieu à beaucoup d’encombrement visuel, rendant ainsi ces visualisations peu efficaces pour fournir de l’information utile sur ces liens. Nous proposons dans ce mémoire un outil de visualisation 3D qui permet de représenter à la fois la structure hiérarchique d’un logiciel et les liens d’adjacence existant entre ses éléments. Notre outil utilise trois types de placements différents pour représenter la hiérarchie. Chacun peut supporter l’affichage des liens d’adjacence de manière efficace. Pour représenter les liens d’adjacence, nous proposons une version 3D de la méthode des Hierarchical Edge Bundles. Nous utilisons également un algorithme métaheuristique pour améliorer le placement afin de réduire davantage l’encombrement visuel dans les liens d’adjacence. D’autre part, notre outil offre un ensemble de possibilités d’interaction permettant à un usager de naviguer à travers l’information offerte par notre visualisation. Nos contributions ont été évaluées avec succès sur des systèmes logiciels de grande taille.
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.
Resumo:
Les nouvelles technologies de l’information et des communications occupent aujourd’hui une place importante dans les entreprises, quelle que soit la taille ou le(s) domaine(s) d’activité de ces dernières. Elles participent de manière positive au développement de la vie économique. Elles sont toutefois à l’origine d’une nouvelle forme de criminalité qui menace la sécurité et l’intégrité des systèmes informatiques dans l’entreprise. Celle-ci est d’une ampleur difficile à évaluer, mais surtout difficile à maîtriser avec les dispositions législatives déjà en place, laissant par là même apparaître qu’une adaptation au niveau juridique est inévitable. Certains pays industrialisés ont ainsi décidé de mettre en place un cadre juridique adéquat pour garantir aux entreprises la sécurité de leurs systèmes informatiques. Notre étude va justement porter sur les dispositifs mis en place par deux systèmes juridiques différents. Forcés de prendre en compte une réalité nouvelle – qui n’existait pas nécessairement il y a plusieurs années –, la France et le Canada ont décidé de modifier respectivement leurs codes pénal et criminel en leur ajoutant des dispositions qui répriment de nouvelles infractions. À travers cet exposé, nous allons analyser les infractions qui portent atteinte à la sécurité du système informatique de l’entreprise à la lumière des outils juridiques mis en place. Nous allons mesurer leur degré d’efficacité face à la réalité informatique. En d’autres termes, il s’agit pour nous de déterminer si le droit va répondre ou non aux besoins de l’informatique.
Resumo:
Dans les dernières décennies, le présumé déclin de la compétence scripturale des élèves québécois a soulevé les passions. Force est d’admettre que leurs compétences sont lacunaires : tant les rapports du ministère de l’Éducation (Jalbert, 2006; Ouellet, 1984) que les études scientifiques ou gouvernementales (Bureau, 1985; Groupe DIEPE, 1995; Roberge, 1984) révèlent leur incapacité à s’approprier l’écriture. Les TIC pourraient bien faire partie de la solution : on sait pertinemment qu’elles favorisent la réussite scolaire dans certains contextes (Barayktar, 2001; Christmann & Badgett, 2003; Waxman, Lin, & Michko, 2003). Toutefois, modifient-elles le processus scriptural au point d’en faciliter l’apprentissage? Cette question constitue le cœur de l’actuel projet de recherche. Les modèles du processus d’écriture comme celui de Hayes et Flower (Flower & Hayes, 1981; Hayes, 1995; Hayes & Flower, 1980) rappellent que les TIC font partie du contexte de production; à ce titre, elles influencent autant la qualité des textes que les processus cognitifs et la motivation. Elles libèrent notamment des ressources cognitives, puisqu’elles prennent en charge certaines opérations, comme la calligraphie (Daiute, 1983). Partant, le scripteur peut se concentrer davantage sur des tâches plus complexes. Des méta-analyses (Bangert-Drowns, 1993; Goldberg, Russell, & Cook, 2003) attestent que le traitement de texte exerce un effet minime, mais statistiquement significatif sur la qualité de l’écriture. Toutefois, il est associé à des révisions en surface (Faigley & Witte, 1981; Figueredo & Varnhagen, 2006). Rares sont les projets de recherche qui explorent simultanément l’impact du traitement de texte sur plusieurs dimensions du processus scriptural; plus rares encore sont les travaux qui se sont intéressés à ce sujet depuis les années 1990. Pour pallier ce manque, cette thèse de doctorat vise à 1) mesurer l’effet des TIC sur la qualité de l’écriture; 2) décrire l’impact des TIC sur les processus cognitifs de révision et de traduction; 3) mesurer l’impact des TIC sur la motivation à écrire. Pour y arriver, nous recourons à une méthodologie mixte. D’une part, un devis de recherche quasi expérimental nous permet de comparer les scripteurs technologiques aux scripteurs traditionnels; d’autre part, une approche qualitative nous laisse accéder aux pensées et aux perceptions des utilisateurs de l’ordinateur. Les trois articles qui constituent le cœur de cette thèse rapportent les résultats relatifs à chacun des objectifs spécifiques de recherche. Dans le premier texte, nous avons mesuré les effets du traitement de texte sur la compétence scripturale. L’analyse statistique des données colligées nous a permis de dégager une amélioration des performances, strictement en orthographe d’usage. En comparaison, les élèves du groupe témoin se sont améliorés davantage en cohérence textuelle et ont mieux performé en orthographe grammaticale. Le deuxième article propose de faire la lumière sur ces résultats. Nous y étudions donc l’impact des TIC sur le processus cognitif de révision. Ce volet, basé sur une approche qualitative, recourt largement à l’observation vidéographiée. Nous y mettons d’abord en évidence le grand nombre d’erreurs commises lors des séances d’écriture technologiques; nous faisons également ressortir la sous-utilisation du vérificateur linguistique, qui pose peu de diagnostics appropriés ou qui est souvent ignoré des scripteurs. Toutefois, malgré cette sous-utilisation du traitement de texte, des entrevues de groupe font état de perceptions positives à l’égard des TIC; on leur prête des vertus certaines et elles sont jugées motivantes. Ce phénomène constitue le cœur du dernier article, au cours duquel nous tâchons de mesurer l’impact du mode d’écriture sur la motivation à écrire. Nous menons ce volet dans une perspective quantitative. La motivation des participants a été mesurée avec une échelle de motivation. L’analyse statistique des données montre que les élèves technologiques sont motivés intrinsèquement par les technologies, tandis que leurs pairs du groupe témoin sont amotivés. Lors du chapitre conclusif, nous mettons ces résultats en relation, tentant d’expliquer globalement l’impact des TIC dans le processus scriptural. Au terme de notre thèse, nous formulons des recommandations destinées aux praticiens et aux décideurs engagés dans le système éducatif.
Resumo:
Traditionnellement, les applications orientées objets légataires intègrent différents aspects fonctionnels. Ces aspects peuvent être dispersés partout dans le code. Il existe différents types d’aspects : • des aspects qui représentent des fonctionnalités métiers ; • des aspects qui répondent à des exigences non fonctionnelles ou à d’autres considérations de conception comme la robustesse, la distribution, la sécurité, etc. Généralement, le code qui représente ces aspects chevauche plusieurs hiérarchies de classes. Plusieurs chercheurs se sont intéressés à la problématique de la modularisation de ces aspects dans le code : programmation orientée sujets, programmation orientée aspects et programmation orientée vues. Toutes ces méthodes proposent des techniques et des outils pour concevoir des applications orientées objets sous forme de composition de fragments de code qui répondent à différents aspects. La séparation des aspects dans le code a des avantages au niveau de la réutilisation et de la maintenance. Ainsi, il est important d’identifier et de localiser ces aspects dans du code légataire orienté objets. Nous nous intéressons particulièrement aux aspects fonctionnels. En supposant que le code qui répond à un aspect fonctionnel ou fonctionnalité exhibe une certaine cohésion fonctionnelle (dépendances entre les éléments), nous proposons d’identifier de telles fonctionnalités à partir du code. L’idée est d’identifier, en l’absence des paradigmes de la programmation par aspects, les techniques qui permettent l’implémentation des différents aspects fonctionnels dans un code objet. Notre approche consiste à : • identifier les techniques utilisées par les développeurs pour intégrer une fonctionnalité en l’absence des techniques orientées aspects • caractériser l’empreinte de ces techniques sur le code • et développer des outils pour identifier ces empreintes. Ainsi, nous présentons deux approches pour l’identification des fonctionnalités existantes dans du code orienté objets. La première identifie différents patrons de conception qui permettent l’intégration de ces fonctionnalités dans le code. La deuxième utilise l’analyse formelle de concepts pour identifier les fonctionnalités récurrentes dans le code. Nous expérimentons nos deux approches sur des systèmes libres orientés objets pour identifier les différentes fonctionnalités dans le code. Les résultats obtenus montrent l’efficacité de nos approches pour identifier les différentes fonctionnalités dans du code légataire orienté objets et permettent de suggérer des cas de refactorisation.
Resumo:
Les travaux entrepris dans le cadre de la présente thèse portent sur l’analyse de l’équivalence terminologique en corpus parallèle et en corpus comparable. Plus spécifiquement, nous nous intéressons aux corpus de textes spécialisés appartenant au domaine du changement climatique. Une des originalités de cette étude réside dans l’analyse des équivalents de termes simples. Les bases théoriques sur lesquelles nous nous appuyons sont la terminologie textuelle (Bourigault et Slodzian 1999) et l’approche lexico-sémantique (L’Homme 2005). Cette étude poursuit deux objectifs. Le premier est d’effectuer une analyse comparative de l’équivalence dans les deux types de corpus afin de vérifier si l’équivalence terminologique observable dans les corpus parallèles se distingue de celle que l’on trouve dans les corpus comparables. Le deuxième consiste à comparer dans le détail les équivalents associés à un même terme anglais, afin de les décrire et de les répertorier pour en dégager une typologie. L’analyse détaillée des équivalents français de 343 termes anglais est menée à bien grâce à l’exploitation d’outils informatiques (extracteur de termes, aligneur de textes, etc.) et à la mise en place d’une méthodologie rigoureuse divisée en trois parties. La première partie qui est commune aux deux objectifs de la recherche concerne l’élaboration des corpus, la validation des termes anglais et le repérage des équivalents français dans les deux corpus. La deuxième partie décrit les critères sur lesquels nous nous appuyons pour comparer les équivalents des deux types de corpus. La troisième partie met en place la typologie des équivalents associés à un même terme anglais. Les résultats pour le premier objectif montrent que sur les 343 termes anglais analysés, les termes présentant des équivalents critiquables dans les deux corpus sont relativement peu élevés (12), tandis que le nombre de termes présentant des similitudes d’équivalence entre les corpus est très élevé (272 équivalents identiques et 55 équivalents non critiquables). L’analyse comparative décrite dans ce chapitre confirme notre hypothèse selon laquelle la terminologie employée dans les corpus parallèles ne se démarque pas de celle des corpus comparables. Les résultats pour le deuxième objectif montrent que de nombreux termes anglais sont rendus par plusieurs équivalents (70 % des termes analysés). Il est aussi constaté que ce ne sont pas les synonymes qui forment le groupe le plus important des équivalents, mais les quasi-synonymes. En outre, les équivalents appartenant à une autre partie du discours constituent une part importante des équivalents. Ainsi, la typologie élaborée dans cette thèse présente des mécanismes de l’équivalence terminologique peu décrits aussi systématiquement dans les travaux antérieurs.
Resumo:
Les logiciels sont en constante évolution, nécessitant une maintenance et un développement continus. Ils subissent des changements tout au long de leur vie, que ce soit pendant l'ajout de nouvelles fonctionnalités ou la correction de bogues dans le code. Lorsque ces logiciels évoluent, leurs architectures ont tendance à se dégrader avec le temps et deviennent moins adaptables aux nouvelles spécifications des utilisateurs. Elles deviennent plus complexes et plus difficiles à maintenir. Dans certains cas, les développeurs préfèrent refaire la conception de ces architectures à partir du zéro plutôt que de prolonger la durée de leurs vies, ce qui engendre une augmentation importante des coûts de développement et de maintenance. Par conséquent, les développeurs doivent comprendre les facteurs qui conduisent à la dégradation des architectures, pour prendre des mesures proactives qui facilitent les futurs changements et ralentissent leur dégradation. La dégradation des architectures se produit lorsque des développeurs qui ne comprennent pas la conception originale du logiciel apportent des changements au logiciel. D'une part, faire des changements sans comprendre leurs impacts peut conduire à l'introduction de bogues et à la retraite prématurée du logiciel. D'autre part, les développeurs qui manquent de connaissances et–ou d'expérience dans la résolution d'un problème de conception peuvent introduire des défauts de conception. Ces défauts ont pour conséquence de rendre les logiciels plus difficiles à maintenir et évoluer. Par conséquent, les développeurs ont besoin de mécanismes pour comprendre l'impact d'un changement sur le reste du logiciel et d'outils pour détecter les défauts de conception afin de les corriger. Dans le cadre de cette thèse, nous proposons trois principales contributions. La première contribution concerne l'évaluation de la dégradation des architectures logicielles. Cette évaluation consiste à utiliser une technique d’appariement de diagrammes, tels que les diagrammes de classes, pour identifier les changements structurels entre plusieurs versions d'une architecture logicielle. Cette étape nécessite l'identification des renommages de classes. Par conséquent, la première étape de notre approche consiste à identifier les renommages de classes durant l'évolution de l'architecture logicielle. Ensuite, la deuxième étape consiste à faire l'appariement de plusieurs versions d'une architecture pour identifier ses parties stables et celles qui sont en dégradation. Nous proposons des algorithmes de bit-vecteur et de clustering pour analyser la correspondance entre plusieurs versions d'une architecture. La troisième étape consiste à mesurer la dégradation de l'architecture durant l'évolution du logiciel. Nous proposons un ensemble de m´etriques sur les parties stables du logiciel, pour évaluer cette dégradation. La deuxième contribution est liée à l'analyse de l'impact des changements dans un logiciel. Dans ce contexte, nous présentons une nouvelle métaphore inspirée de la séismologie pour identifier l'impact des changements. Notre approche considère un changement à une classe comme un tremblement de terre qui se propage dans le logiciel à travers une longue chaîne de classes intermédiaires. Notre approche combine l'analyse de dépendances structurelles des classes et l'analyse de leur historique (les relations de co-changement) afin de mesurer l'ampleur de la propagation du changement dans le logiciel, i.e., comment un changement se propage à partir de la classe modifiée è d'autres classes du logiciel. La troisième contribution concerne la détection des défauts de conception. Nous proposons une métaphore inspirée du système immunitaire naturel. Comme toute créature vivante, la conception de systèmes est exposée aux maladies, qui sont des défauts de conception. Les approches de détection sont des mécanismes de défense pour les conception des systèmes. Un système immunitaire naturel peut détecter des pathogènes similaires avec une bonne précision. Cette bonne précision a inspiré une famille d'algorithmes de classification, appelés systèmes immunitaires artificiels (AIS), que nous utilisions pour détecter les défauts de conception. Les différentes contributions ont été évaluées sur des logiciels libres orientés objets et les résultats obtenus nous permettent de formuler les conclusions suivantes: • Les métriques Tunnel Triplets Metric (TTM) et Common Triplets Metric (CTM), fournissent aux développeurs de bons indices sur la dégradation de l'architecture. La d´ecroissance de TTM indique que la conception originale de l'architecture s’est dégradée. La stabilité de TTM indique la stabilité de la conception originale, ce qui signifie que le système est adapté aux nouvelles spécifications des utilisateurs. • La séismologie est une métaphore intéressante pour l'analyse de l'impact des changements. En effet, les changements se propagent dans les systèmes comme les tremblements de terre. L'impact d'un changement est plus important autour de la classe qui change et diminue progressivement avec la distance à cette classe. Notre approche aide les développeurs à identifier l'impact d'un changement. • Le système immunitaire est une métaphore intéressante pour la détection des défauts de conception. Les résultats des expériences ont montré que la précision et le rappel de notre approche sont comparables ou supérieurs à ceux des approches existantes.
Resumo:
Ce mémoire présente un patron d’architecture permettant, dans un contexte orientéobjet, l’exploitation d’objets appartenant simultanément à plusieurs hiérarchies fonctionnelles. Ce patron utilise un reasoner basé sur les logiques de description (web sémantique) pour procéder à la classification des objets dans les hiérarchies. La création des objets est simplifiée par l’utilisation d’un ORM (Object Relational Mapper). Ce patron permet l’utilisation effective du raisonnement automatique dans un contexte d’applications d’entreprise. Les concepts requis pour la compréhension du patron et des outils sont présentés. Les conditions d’utilisation du patron sont discutées ainsi que certaines pistes de recherche pour les élargir. Un prototype appliquant le patron dans un cas simple est présenté. Une méthodologie accompagne le patron. Finalement, d’autres utilisations potentielles des logiques de description dans le même contexte sont discutées.