<  Retour au portail Polytechnique Montréal

Évolution biologique et applications en génie logiciel

Salima Hassaine

Rapport technique (2010)

Document en libre accès dans PolyPublie et chez l'éditeur officiel
[img]
Affichage préliminaire
Libre accès au plein texte de ce document
Version officielle de l'éditeur
Conditions d'utilisation: Tous droits réservés
Télécharger (856kB)
Afficher le résumé
Cacher le résumé

Résumé

La maintenance des programmes orientés objets est une activité très coûteuse et la compréhension des programmes par les mainteneurs est essentielle pour la réaliser. L'analyse de l'évolution de l'architecture d'un programme aide à comprendre les problèmes rencontrés lors de sa conception ainsi que les solutions apportées. Les techniques existantes utilisées pour l'analyse de l'évolution de logiciels présentent toutes, cependant, un problème de performance. Le but de notre travail de recherche est d'étudier l'évolution de logiciels d'un point de vue biologique. Nous proposons un mapping entre l'évolution biologique et l'évolution logicielle. Ce mapping propose une solution aux problèmes de performance, en adaptant des algorithmes efficaces de comparaisons et d'alignements de chaînes de caractères de bio-informatique, pour bénéficier de leurs performances sur des programmes de grande taille. Parmi nos résultats actuels, nous rapportons l'évidence de l'utilité de notre mapping en identifiant les classes en évolution qui maintiennent une structure stable des relations (utilisation, association, agrégation, création, héritage) avec d'autres classes et constituent ainsi probablement les épines dorsales des programmes. Nous rapportons aussi l'application de notre approche sur plusieurs programmes différents et comparons son exécution et résultats avec l'approche la plus récente de la littérature.

Abstract

The maintenance of large programs is a costly activity because their evolution often leads to two problems: an increase in their complexity and an erosion of their design. These problems impede the comprehension and the future evolution of the programs. Most previous approaches of software evolution analysis are limited because of their performance. The goal of our research work is to study the evolution of programs from a biological point of view by presenting a mapping between biological evolution and software evolution. This mapping offers a solution to the efficiency problem by using adaptation of string matching algorithms from bio-informatics to benefit from their performance on large programs. We report evidence of the usefulness of this mapping by identifying evolving classes that maintain a stable structure of relations (use, association, aggregation, inheritance, creation) with other classes and thus likely constitute the backbones of the programs. We apply our approach on several different size programs and compare its performance and results with the most recent approach from the literature.

Mots clés

Évolution de logiciels, changement de l'architecture, stabilité de l'architecture, évolution biologique, homologie, algorithmes de bio-informatique / Software evolution, Design change, Design stability, Bio- logical evolution, Homology, Bioinformatics Algorithms

Sujet(s): 2700 Technologie de l'information > 2706 Génie logiciel
Département: Département de génie informatique et génie logiciel
URL de PolyPublie: https://publications.polymtl.ca/2652/
Numéro du rapport: EPM-RT-2010-03
Date du dépôt: 06 oct. 2017 14:04
Dernière modification: 20 avr. 2023 19:09
Citer en APA 7: Hassaine, S. (2010). Évolution biologique et applications en génie logiciel. (Rapport technique n° EPM-RT-2010-03). https://publications.polymtl.ca/2652/

Statistiques

Total des téléchargements à partir de PolyPublie

Téléchargements par année

Provenance des téléchargements

Actions réservées au personnel

Afficher document Afficher document