161 resultados para rétro-ingénierie
Resumo:
Nous proposons une approche semi-automatique pour la rétro-ingénierie des diagrammes de séquence d’UML. Notre approche commence par un ensemble de traces d'exécution qui sont automatiquement alignées pour déterminer le comportement commun du système. Les diagrammes de séquence sont ensuite extraits avec l’aide d’une visualisation interactive, qui permet la navigation dans les traces d'exécution et la production des opérations d'extraction. Nous fournissons une illustration concrète de notre approche avec une étude de cas, et nous montrons en particulier que nos diagrammes de séquence générés sont plus significatifs et plus compacts que ceux qui sont obtenus par les méthodes automatisées.
Resumo:
La compréhension des objets dans les programmes orientés objet est une tâche impor- tante à la compréhension du code. JavaScript (JS) est un langage orienté-objet dyna- mique, et son dynamisme rend la compréhension du code source très difficile. Dans ce mémoire, nous nous intéressons à l’analyse des objets pour les programmes JS. Notre approche construit de façon automatique un graphe d’objets inspiré du diagramme de classes d’UML à partir d’une exécution concrète d’un programme JS. Le graphe résul- tant montre la structure des objets ainsi que les interactions entre eux. Notre approche utilise une transformation du code source afin de produire cette in- formation au cours de l’exécution. Cette transformation permet de recueillir de l’infor- mation complète au sujet des objets crées ainsi que d’intercepter toutes les modifications de ces objets. À partir de cette information, nous appliquons plusieurs abstractions qui visent à produire une représentation des objets plus compacte et intuitive. Cette approche est implémentée dans l’outil JSTI. Afin d’évaluer l’utilité de l’approche, nous avons mesuré sa performance ainsi que le degré de réduction dû aux abstractions. Nous avons utilisé les dix programmes de réfé- rence de V8 pour cette comparaison. Les résultats montrent que JSTI est assez efficace pour être utilisé en pratique, avec un ralentissement moyen de 14x. De plus, pour 9 des 10 programmes, les graphes sont suffisamment compacts pour être visualisés. Nous avons aussi validé l’approche de façon qualitative en inspectant manuellement les graphes gé- nérés. Ces graphes correspondent généralement très bien au résultat attendu. Mots clés: Analyse de programmes, analyse dynamique, JavaScript, profilage.
Resumo:
Nous proposons une approche probabiliste afin de déterminer l’impact des changements dans les programmes à objets. Cette approche sert à prédire, pour un changement donné dans une classe du système, l’ensemble des autres classes potentiellement affectées par ce changement. Cette prédiction est donnée sous la forme d’une probabilité qui dépend d’une part, des interactions entre les classes exprimées en termes de nombre d’invocations et d’autre part, des relations extraites à partir du code source. Ces relations sont extraites automatiquement par rétro-ingénierie. Pour la mise en oeuvre de notre approche, nous proposons une approche basée sur les réseaux bayésiens. Après une phase d’apprentissage, ces réseaux prédisent l’ensemble des classes affectées par un changement. L’approche probabiliste proposée est évaluée avec deux scénarios distincts mettant en oeuvre plusieurs types de changements effectués sur différents systèmes. Pour les systèmes qui possèdent des données historiques, l’apprentissage a été réalisé à partir des anciennes versions. Pour les systèmes dont on ne possède pas assez de données relatives aux changements de ses versions antécédentes, l’apprentissage a été réalisé à l’aide des données extraites d’autres systèmes.
Resumo:
Mémoire numérisé par la Division de la gestion de documents et des archives de l'Université de Montréal
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. Lorsque les logiciels évoluent, leurs architectures ont tendance à se dégrader et deviennent moins adaptables aux nouvelles spécifications des utilisateurs. En effet, les architectures de ces logiciels deviennent plus complexes et plus difficiles à maintenir à cause des nombreuses dépendances entre les artefacts. Par conséquent, les développeurs doivent comprendre les dépendances entre les artefacts des logiciels pour prendre des mesures proactives qui facilitent les futurs changements et ralentissent la dégradation des architectures des logiciels. D'une part, le maintien d'un logiciel sans la compréhension des les dépendances entre ses artefacts peut conduire à l'introduction de défauts. D'autre part, lorsque les développeurs manquent de connaissances sur l'impact de leurs activités de maintenance, ils peuvent introduire des défauts de conception, qui ont un impact négatif sur l'évolution du logiciel. Ainsi, les développeurs ont besoin de mécanismes pour comprendre comment le changement d'un artefact impacte le reste du logiciel. Dans cette thèse, nous proposons trois contributions principales : La spécification de deux nouveaux patrons de changement et leurs utilisations pour fournir aux développeurs des informations utiles concernant les dépendances de co-changement. La spécification de la relation entre les patrons d'évolutions des artefacts et les fautes. La découverte de la relation entre les dépendances des anti-patrons et la prédisposition des différentes composantes d'un logiciel aux fautes.
Resumo:
Nous proposons une approche qui génère des scénarios de visualisation à partir des descriptions de tâches d'analyse de code. La dérivation de scénario est considérée comme un processus d'optimisation. Dans ce contexte, nous évaluons différentes possibilités d'utilisation d'un outil de visualisation donnée pour effectuer la tâche d'analyse, et sélectionnons le scénario qui nécessite le moins d'effort d'analyste. Notre approche a été appliquée avec succès à diverses tâches d'analyse telles que la détection des défauts de conception.
Resumo:
Cet article rend compte du travail d'ingénierie dans le domaine des micro- et nanotechnologies (MNT) en explorant une diversité de lieux où technologies et sociétés sont coproduites : comités internationaux où sont définies des feuilles de route (roadmap), laboratoires de recherche où sont conçus de nouveaux dispositifs, plates-formes d'exploration et de transfert des nouvelles technologies vers l'industrie, grands programmes de recherche où chercheurs et entreprises façonnent des infrastructures sociotechniques et régulent l'inscription sociétale des nouveautés techniques. Il utilise le concept d'« ingénierie hétérogène » (Law, 1989) afin d'expliquer la capacité de transformation sociale des pratiques d'ingénierie. Il montre ainsi que la théorie de l'acteur-réseau peut produire une description des mécanismes à l'oeuvre lors d'une transition sociotechnique, depuis la construction de projets de laboratoire jusqu'à leur inscription dans la société, sans pour autant renoncer à « suivre les acteurs » - notamment les ingénieurs - et leurs pratiques concrètes et situées.
Resumo:
BACKGROUND: When and how to operate an early-onset esotropia (onset before 6 months of age) is still controversial. We conducted a retrospective study of such patients operated before the age of 24 months. PATIENTS AND METHODS: 82 patients were operated by one surgeon (GK) and followed by the same team. At 5 years post-operation, evaluation criteria included the residual angle of deviation, visual acuity (Birkhäuser Nr 505, 5 m) and binocularity (Lang stereotest I, Bagolini glasses). RESULTS: At 5 years, the residual angle was excellent (0 degrees to + 5 degrees ) in 67 % good, (>+5 degrees to +10 degrees or 0 to -5 degrees ) in 23 %, and poor (>+10 degrees or <-5 degrees ) in 10 %. During the 5 years of follow-up the rate of reoperation was 9.7 %. Isoacuity was obtained in 62 %, slight amblyopia (2 lines of interocular difference) was present in 32 %, and average amblyopia (> 3 lines of interocular difference) was noted in 6 %. Simultaneous perception was present in 53 %, whereas one eye was suppressed or results were undetermined in 47 %. No patient demonstrated stereoscopy using the Lang's stereotest I. CONCLUSION: The results from our study demonstrate that early surgery of early-onset esotropia has a favourable outcome on both visual acuity and the residual angle of strabismus. Simultaneous perception was achieved in 53 %. These figures are comparable to the results of the ELISSS multicentric study.
Resumo:
Dans cette thèse, nous présentons les problèmes d’échange de documents d'affaires et proposons une méthode pour y remédier. Nous proposons une méthodologie pour adapter les standards d’affaires basés sur XML aux technologies du Web sémantique en utilisant la transformation des documents définis en DTD ou XML Schema vers une représentation ontologique en OWL 2. Ensuite, nous proposons une approche basée sur l'analyse formelle de concept pour regrouper les classes de l'ontologie partageant une certaine sémantique dans le but d'améliorer la qualité, la lisibilité et la représentation de l'ontologie. Enfin, nous proposons l’alignement d'ontologies pour déterminer les liens sémantiques entre les ontologies d'affaires hétérogènes générés par le processus de transformation pour aider les entreprises à communiquer fructueusement.
Resumo:
Thèse numérisée par la Division de la gestion de documents et des archives de l'Université de Montréal
Resumo:
Mode of access: Internet.