982 resultados para Évolution de logiciel


Relevância:

100.00% 100.00%

Publicador:

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.

Relevância:

70.00% 70.00%

Publicador:

Resumo:

Le développement du logiciel actuel doit faire face de plus en plus à la complexité de programmes gigantesques, élaborés et maintenus par de grandes équipes réparties dans divers lieux. Dans ses tâches régulières, chaque intervenant peut avoir à répondre à des questions variées en tirant des informations de sources diverses. Pour améliorer le rendement global du développement, nous proposons d'intégrer dans un IDE populaire (Eclipse) notre nouvel outil de visualisation (VERSO) qui calcule, organise, affiche et permet de naviguer dans les informations de façon cohérente, efficace et intuitive, afin de bénéficier du système visuel humain dans l'exploration de données variées. Nous proposons une structuration des informations selon trois axes : (1) le contexte (qualité, contrôle de version, bogues, etc.) détermine le type des informations ; (2) le niveau de granularité (ligne de code, méthode, classe, paquetage) dérive les informations au niveau de détails adéquat ; et (3) l'évolution extrait les informations de la version du logiciel désirée. Chaque vue du logiciel correspond à une coordonnée discrète selon ces trois axes, et nous portons une attention toute particulière à la cohérence en naviguant entre des vues adjacentes seulement, et ce, afin de diminuer la charge cognitive de recherches pour répondre aux questions des utilisateurs. Deux expériences valident l'intérêt de notre approche intégrée dans des tâches représentatives. Elles permettent de croire qu'un accès à diverses informations présentées de façon graphique et cohérente devrait grandement aider le développement du logiciel contemporain.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

Les cadriciels et les bibliothèques sont indispensables aux systèmes logiciels d'aujourd'hui. Quand ils évoluent, il est souvent fastidieux et coûteux pour les développeurs de faire la mise à jour de leur code. Par conséquent, des approches ont été proposées pour aider les développeurs à migrer leur code. Généralement, ces approches ne peuvent identifier automatiquement les règles de modification une-remplacée-par-plusieurs méthodes et plusieurs-remplacées-par-une méthode. De plus, elles font souvent un compromis entre rappel et précision dans leur résultats en utilisant un ou plusieurs seuils expérimentaux. Nous présentons AURA (AUtomatic change Rule Assistant), une nouvelle approche hybride qui combine call dependency analysis et text similarity analysis pour surmonter ces limitations. Nous avons implanté AURA en Java et comparé ses résultats sur cinq cadriciels avec trois approches précédentes par Dagenais et Robillard, M. Kim et al., et Schäfer et al. Les résultats de cette comparaison montrent que, en moyenne, le rappel de AURA est 53,07% plus que celui des autre approches avec une précision similaire (0,10% en moins).

Relevância:

60.00% 60.00%

Publicador:

Resumo:

Les sociétés modernes dépendent de plus en plus sur les systèmes informatiques et ainsi, il y a de plus en plus de pression sur les équipes de développement pour produire des logiciels de bonne qualité. Plusieurs compagnies utilisent des modèles de qualité, des suites de programmes qui analysent et évaluent la qualité d'autres programmes, mais la construction de modèles de qualité est difficile parce qu'il existe plusieurs questions qui n'ont pas été répondues dans la littérature. Nous avons étudié les pratiques de modélisation de la qualité auprès d'une grande entreprise et avons identifié les trois dimensions où une recherche additionnelle est désirable : Le support de la subjectivité de la qualité, les techniques pour faire le suivi de la qualité lors de l'évolution des logiciels, et la composition de la qualité entre différents niveaux d'abstraction. Concernant la subjectivité, nous avons proposé l'utilisation de modèles bayésiens parce qu'ils sont capables de traiter des données ambiguës. Nous avons appliqué nos modèles au problème de la détection des défauts de conception. Dans une étude de deux logiciels libres, nous avons trouvé que notre approche est supérieure aux techniques décrites dans l'état de l'art, qui sont basées sur des règles. Pour supporter l'évolution des logiciels, nous avons considéré que les scores produits par un modèle de qualité sont des signaux qui peuvent être analysés en utilisant des techniques d'exploration de données pour identifier des patrons d'évolution de la qualité. Nous avons étudié comment les défauts de conception apparaissent et disparaissent des logiciels. Un logiciel est typiquement conçu comme une hiérarchie de composants, mais les modèles de qualité ne tiennent pas compte de cette organisation. Dans la dernière partie de la dissertation, nous présentons un modèle de qualité à deux niveaux. Ces modèles ont trois parties: un modèle au niveau du composant, un modèle qui évalue l'importance de chacun des composants, et un autre qui évalue la qualité d'un composé en combinant la qualité de ses composants. L'approche a été testée sur la prédiction de classes à fort changement à partir de la qualité des méthodes. Nous avons trouvé que nos modèles à deux niveaux permettent une meilleure identification des classes à fort changement. Pour terminer, nous avons appliqué nos modèles à deux niveaux pour l'évaluation de la navigabilité des sites web à partir de la qualité des pages. Nos modèles étaient capables de distinguer entre des sites de très bonne qualité et des sites choisis aléatoirement. Au cours de la dissertation, nous présentons non seulement des problèmes théoriques et leurs solutions, mais nous avons également mené des expériences pour démontrer les avantages et les limitations de nos solutions. Nos résultats indiquent qu'on peut espérer améliorer l'état de l'art dans les trois dimensions présentées. En particulier, notre travail sur la composition de la qualité et la modélisation de l'importance est le premier à cibler ce problème. Nous croyons que nos modèles à deux niveaux sont un point de départ intéressant pour des travaux de recherche plus approfondis.

Relevância:

60.00% 60.00%

Publicador:

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.

Relevância:

60.00% 60.00%

Publicador:

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.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Depuis quelques années, l'évolution moléculaire cherche à caractériser les variations et l'intensité de la sélection grâce au rapport entre taux de substitution synonyme et taux de substitution non-synonyme (dN/dS). Cette mesure, dN/dS, a permis d'étudier l'histoire de la variation de l'intensité de la sélection au cours du temps ou de détecter des épisodes de la sélection positive. Les liens entre sélection et variation de taille efficace interfèrent cependant dans ces mesures. Les méthodes comparatives, quant a elle, permettent de mesurer les corrélations entre caractères quantitatifs le long d'une phylogénie. Elles sont également utilisées pour tester des hypothèses sur l'évolution corrélée des traits d'histoire de vie, mais pour être employées pour étudier les corrélations entre traits d'histoire de vie, masse, taux de substitution ou dN/dS. Nous proposons ici une approche combinant une méthode comparative basée sur le principe des contrastes indépendants et un modèle d'évolution moléculaire, dans un cadre probabiliste Bayésien. Intégrant, le long d'une phylogénie, sur les reconstructions ancestrales des traits et et de dN/dS nous estimons les covariances entre traits ainsi qu'entre traits et paramètres du modèle d'évolution moléculaire. Un modèle hiérarchique, a été implémenté dans le cadre du logiciel coevol, publié au cours de cette maitrise. Ce modèle permet l'analyse simultané de plusieurs gènes sans perdre la puissance donnée par l'ensemble de séquences. Un travail deparallélisation des calculs donne la liberté d'augmenter la taille du modèle jusqu'à l'échelle du génome. Nous étudions ici les placentaires, pour lesquels beaucoup de génomes complets et de mesures phénotypiques sont disponibles. À la lumière des théories sur les traits d'histoire de vie, notre méthode devrait permettre de caractériser l'implication de groupes de gènes dans les processus biologique liés aux phénotypes étudiés.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

La situation du marché de l'emploi a subi ces dernières années, des changements de structure en profondeur. Le résultat est qu'au Québec, le taux réel d'inactivité révèle que près d'un adulte sur quatre est sans emploi. Parmi les personnes les plus touchées par ces changements on retrouve celles qui sont sans formation spécifique, sans diplôme ou bien sans expérience de travail. Pour rendre apte au travail cette mam d'oeuvre inactive, le Ministère de l'éducation a mis sur pied au milieu des années 90, une mesure d'aide à l'insertion appelée Services d'Intégration Socioprofessionnelle ou S.I.S. Dans le présent essai, nous avons cherché à évaluer le développement de l'employabilité de participants aux S.I.S. Selon les objectifs visés par le Service, on suppose que chaque personne aura acquis certaines attitudes et aptitudes au travail, susceptible de l'aider à retrouver du travail et de le conserver. Nous avons utilisé la structure de recherche test-retest sur le même échantillon. En effet, chaque participant s'est vu administrer le même questionnaire, au début et à la fin des S.I.S. Nous avons ainsi pu suivre l'évolution des facteurs en causes dans une insertion professionnelle. À cela s'ajoutent des données recueillies dans un journal de bord par l'évaluateur/animateur. Celles-ci sont reprises pour donner un sens dans l'analyse des résultats. La mesure utilisée est le questionnaire informatisé Copilote Insertion version 2.20. Celui-ci fut administré une première fois, à seize personnes présentes en amorce des S.LS. Pour la mesure post, nous avions plus que 8 personnes toujours disponibles et respectant le devis de recherche. Pour ces sujets, nous avons comparé chacun des vingt facteurs de Copilote, ainsi que l'évolution des stratégies d'insertion. Pour chacun d'eux, nous avons pu déterminer lesquels des facteurs d'employabilité évalué par le logiciel, démontraient une progression. Il a été démontré que l'ensemble des participants s'accordait beaucoup de difficulté à surmonter l'image de dépendance et d'incapacité, intériorisé avec l'expérience du chômage. Comme quoi, cette clientèle a à faire face à un certain nombre de deuil non résolu. À ce niveau, la structure des S.I.S semble permettre ce nécessaire recadrage de l'expérience chômage. Nous avons aussi observé que la composition du groupe n'a pas été réalisée en respectant le développement de l'employabilité de chacun des participants. Par conséquent, les plus enthousiasmes ont eu à subir l'inconfort de devoir faire face aux discours démotivant des personnes non-prêtes à s'insérer en emploi. La difficulté de sélectionner des personnes dont les besoins en matière de développement de l'employabilité ne seraient pas homogènes pourrait être surmontée si des activités individuelles personnalisées, sont présentées en alternance avec le travail de groupe. Autre constat réalisé est que malgré le temps passé à l'intérieur des SIS, des participants s'accordent plus de difficultés à la fin qu'au début, pour des facteurs d'employabilités. C'est le cas des facteurs du thème Communication de Copilote. La difficulté de mettre en branle une campagne visant la mise en marché de son potentiel de travail, cela vient confirmer que le participant, bien qu'il ait réalisé un bout du trajet le séparant du monde du travail, qu'il n'est pas parvenu à destination.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Cette recherche s’intéresse à l’évolution de la conception des stratégies d’apprentissage d’étudiants ou d’étudiantes de niveau collégial présentant un trouble du spectre de l’autisme (TSA). Nous souhaitons analyser la perception que ces étudiants ont de ces stratégies avant notre intervention proprement dite et à la suite de celle-ci, c’est-à-dire de suivre son évolution. Si notre hypothèse de travail se vérifie, l’étudiant ou l’étudiante aux prises avec cette condition devrait se responsabiliser et modifier ses stratégies en fonction des informations que nous lui fournirons. C’est dans le cadre d’interventions éducatives formelles avec l’étudiante ou l’étudiant que nous agirons sur la prise de conscience d’abord, puis sur la modification de ses habitudes et de ses croyances en matière d’apprentissage. Nos interventions prendront la forme d’ateliers individualisés basés sur certains concepts béhavioraux et des théories du courant constructiviste qui tiendront compte, bien entendu, des caractéristiques de la personne ayant un TSA. Dans la présente étude, nous explorerons les stratégies que les étudiants ou les étudiantes présentant un TSA utilisent lors des rédactions dans leurs cours de français, langue d’enseignement et littérature. Nous avons recensé des auteurs pour qui les stratégies d’apprentissage prennent la forme d’actions que l’étudiant ou l’étudiante autiste sera capable de reconnaitre. Nous aimerions savoir si une intervention sur la métacognition auprès d’étudiants ou d’étudiantes ayant un TSA favoriserait chez eux la mise en place de stratégies d’apprentissage efficaces pour la rédaction de l’analyse littéraire, la compétence demandée au terme du premier cours de la séquence des cours de français, langue d’enseignement et littérature. Afin de répondre à cette interrogation, notre recherche vise les objectifs suivants: 1) inventorier les stratégies d’apprentissage utilisées lors de la phase du travail individuel; 2) informer l’étudiant ou l’étudiante du profil d’apprentissage élaboré pour lui ou pour elle par le logiciel Étudiant Plus et ainsi l’aider à prendre conscience de ses stratégies; 3) selon les stratégies identifiées par le questionnaire Étudiant Plus, élaborer deux ou trois ateliers qui tiennent compte des pratiques à modifier lors du travail individuel; 4) appliquer le processus d’encadrement auprès de tous lors de la phase du travail individuel; 5) évaluer les effets de l’expérimentation du processus d’encadrement sur les stratégies d’apprentissage en fonction des changements apportés. Cette recherche est réalisée auprès de trois étudiants. Elle propose une approche méthodologique qui réunit le rôle de la chercheuse et des participants ou des participantes à la recherche. L’analyse des données met en valeur les stratégies d’apprentissage communes utilisées par les étudiants et les étudiantes présentant un TSA. Cette recherche soutient l'adoption d’un processus d’encadrement auprès des étudiants ou des étudiantes ayant un TSA. Notre étude ne vise pas à généraliser les résultats, mais elle favorise une approche éducative centrée sur les besoins d’apprentissage des étudiants ou des étudiantes présentant un TSA.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

African catfish (Heterobranchus longifilis Valenciennes, 1840), with a mean weight of 37 g, were raised in 4 m3 concrete tanks, with or without water changes at densities of 10 and 20 fish per m3. The results indicate that, although the low water needs of this catfish offer hope for the productions of 150 tons/hectare/year, water quality must always be monitored.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

Two kinds of fishing gears insure the exploitation in Aby lagoon: the individual gears are represented essentially by gill nets and collective gears by seines. The number of gill nets varies between 1500 in 1981 and 5600 in 1986. The beach seines, which number varies between 40 and 60, are regularly used. The purse seines (15-30) have been superseded by "syndicat" seines (15) in 1990.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

The evolution of a plankton copepod population in the Mauritania upwelling was studied by following a drogue for 9 days, from the point of upwelling till the water-mass dives under offshore waters. The Shannon index of specific diversity and the tropic structure allow separation into several stages in the studied succession. The upwelling brings near the shore a rather poor, highly diverse fauna, with a low filter-feeder rate. The phytoplanktonic development induces an increase in the copepod number. The filter-feeders become dominant and the diversity decreases. When the increase of copepod number stops, the diversity decreases and the omnivore and carnivore rate increases.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

Notre étude s'insère dans le cadre d'un plus large projet de recherche portant sur le traitement lexicographique des noms d'espèces naturelles, dont l'un des objectifs généraux est de faire la lumière sur la pratique actuelle dans les dictionnaires usuels du français. Notre objet spécifique est le traitement définitoire des noms d'arbres dans Le Petit Larousse , qui est un dictionnaire d'orientation encyclopédique. Nous étudions et comparons deux éditions successives de ce dictionnaire (1997 et 1998), entre lesquelles la maison Larousse dit avoir fait une importante révision. Notre objectif est de décrire précisément la pratique observée, notamment en ce qui a trait à l'utilisation du modèle définitoire par inclusion, tout en faisant ressortir les modifications apportées dans la seconde édition pour rendre compte de l'orientation des travaux de révision. Nous adoptons l'approche méthodologique par segmentation qui a été développée au sein du projet de recherche auquel nous sommes associée [i.e. associés]. D'une part, celle-ci nous permet de décrire précisément la métalangue utilisée et de faire ressortir les principales variantes structurelles du modèle définitoire. D'autre part, elle nous permet de faire des bilans en ce qui a trait à la nature et à l'importance des modifications apportées.