20130113 06 - Travaux de recherche sur la corrélation entre qualité du code et bugs

Génie Logiciel @LaBRI
Laboratoire Bordelais de Recherche en Informatique
Pr. Xavier Blanc – Directeur Adjoint
Janvier 2013
Plan
• Présentation générale du LaBRI
• Etat de l’art ciblé sur l’évolution logicielle
• La plate-forme Harmony
• Etudes réalisées
• Perspectives de recherche
Présentation générale du
LaBRI
Laboratoire d’Informatique
• Génie Logiciel
• Méthodes formelles
• Combinatoire
• Algorithmique
• Applications réparties
• Image
• Calcul haute performance
• BioInfo
• Visualisation
• Réseaux
• …
Classé A+
Evaluation AERES
Tutelles
Bordeaux 1 IPB
CNRSINRIA
Université de Bordeaux
LaBRI
Bordeaux Segalen Bordeaux 4
Quelques Chiffres
– 150 Membres permanents
• 70 % Enseignants Chercheurs (Bordeaux)
• 30 % Chercheurs (CNRS, INRIA)
– 20 post-doc
– 150 Thésards
– 30 Administratifs
– 450 articles / an
Organisation
• Directeur: P. Weil
• 6 Equipes
– CombAlgo
– Image et Sound
– ProgRess
– Méthodes formelles
– BioInfo & Visu
– HPC
Etat de l’art ciblé sur
l’évolution logicielle
Composants sujets aux fautes
• Exploiter les metriques
pour identifier les
composants sujets aux
fautes
• Focaliser la
maintenance sur ces
composants
Correlation
Dépend des
métriques et
des logiciels
Combiner les métriques
Mais …
Predictors are accurate only when obtained
from the same or similar projects.
Constat
• Quelles métriques ?
• Quels projets / logiciels ?
=> Pour quel objectif ?
La plate-forme Harmony
Harmony: Observatoire Logiciel
• La plate-forme Harmony propose des outils
pour réaliser des études sur l’évolution des
logiciels
Analyse de code source
Analyse des versions
Analyse des bugs
Fonctionnement Général
• Harmony construit un modèle de l’évolution
• Harmony lance des analyses sur ce modèle
=> Le modèle et les analyses sont stockés dans une BD
Versioned Items
(Git, Mercurial, BugZilla)
Harmony Data BaseHarmony Core
Harmony Analysis
Harmony - Tutorial 16
Le modèle d’évolution Harmony
• Une Source est un dépôt
• Un Item est un artefact
versionné (fichier de source
code file ou un bug)
• Un Event se produit à un
instant donné (commit,
merge, bugs, etc.)
• Une Action est exécuté sur
un item (ajout,
changement, suppression)
• Un Author réalise des
actions
Source
ItemEvent
Action
Author
Harmony - Tutorial 17
Actuellement
• Source code
– Mainly Java, C est supporté, AST
• Version Control
– Git, Mercurial, SVN
• Bugs
– BugZilla, GitHub
• Analysis
– OO Metrics, Team Metrics, Library usage,
Etudes réalisées
Migration de bibliothèques
• Observation de 40000 projets Maven pour
identifier les migrations de bibliothèques
• Connaitre les bibliothèques « tendance »
Classification des développeurs
• Observation d’un ensemble de projets pour
classifier les développeurs en fonction de
l’usage des bibliothèques
MFAS / Bugs
• Echantillonnage de projets GitHub
• Calcul des composantes fortement connexes
• Corrélation avec les bugs
Perspectives de recherche
Principes d’architecture
• Définir des métriques mesurant des principes
d’architecture
– « program to an interface »
• Valider ces métriques sur des projets
=> Pas de corrélation sur l’effort de
maintenance?
Age d’une application
• Proposer un prédicteur permettant de
connaître la maturité d’une application
• Savoir quand migrer
• Identifier les parties risquées (pas à jour)
Style de programmation
• Pouvoir identifier les styles de programmation
des développeurs
• Savoir qui est expert
• Savoir anticiper des besoins de framework
technique
• Mesurer la distance à parcourir en terme de
migration
Et d’autres
• Evolution web
• Techniques de sampling
• Bug triaging
• Métriques et temps
• …
Conclusion
Etude d’évolution
• Mesurer l’évolution logiciel
• Exploitation des outils statistiques
• Observation de projets industriels
• Liens avec les processus de développement
1 of 29

Recommended

La revue de code : agile, lean, indispensable ! by
La revue de code : agile, lean, indispensable !La revue de code : agile, lean, indispensable !
La revue de code : agile, lean, indispensable !Lucian Precup
4.3K views31 slides
chapitre 1 SI.pdf by
chapitre 1 SI.pdfchapitre 1 SI.pdf
chapitre 1 SI.pdfinformatiquehageryah
2 views221 slides
Jabes 2016 - Comment les établissements Sudoc, les éditeurs et l’ABES collabo... by
Jabes 2016 - Comment les établissements Sudoc, les éditeurs et l’ABES collabo...Jabes 2016 - Comment les établissements Sudoc, les éditeurs et l’ABES collabo...
Jabes 2016 - Comment les établissements Sudoc, les éditeurs et l’ABES collabo...ABES
380 views20 slides
Prenez le train de la Transition bibliographique - Journée Systèmes & Données... by
Prenez le train de la Transition bibliographique - Journée Systèmes & Données...Prenez le train de la Transition bibliographique - Journée Systèmes & Données...
Prenez le train de la Transition bibliographique - Journée Systèmes & Données...ABES
215 views69 slides
Esiea - 5A - Archi 1/3 by
Esiea - 5A - Archi 1/3Esiea - 5A - Archi 1/3
Esiea - 5A - Archi 1/3Gaëtan ELEOUET
698 views126 slides
SAM, archive ouverte institutionnelle Arts et Métiers ParisTech by
SAM, archive ouverte institutionnelle Arts et Métiers ParisTechSAM, archive ouverte institutionnelle Arts et Métiers ParisTech
SAM, archive ouverte institutionnelle Arts et Métiers ParisTechChristine Ollendorff
435 views10 slides

More Related Content

Similar to 20130113 06 - Travaux de recherche sur la corrélation entre qualité du code et bugs

SharePoint - Benchmark des solutions de migration by
SharePoint - Benchmark des solutions de migrationSharePoint - Benchmark des solutions de migration
SharePoint - Benchmark des solutions de migrationBenoit Jester
7.8K views27 slides
Solutions Linux 2010 by
Solutions Linux 2010Solutions Linux 2010
Solutions Linux 2010Franck_Villaume
637 views19 slides
Gestion de références bibliographiques : Sortir De Refworks by
Gestion de références bibliographiques : Sortir De RefworksGestion de références bibliographiques : Sortir De Refworks
Gestion de références bibliographiques : Sortir De RefworksAlain Marois
1.8K views4 slides
Ez18n crowdsourcing by
Ez18n crowdsourcingEz18n crowdsourcing
Ez18n crowdsourcinggdigugli
335 views12 slides
Cours projet web collaboratif - partie 1 : Introduction, version 2019 by
Cours projet web collaboratif - partie 1 : Introduction, version 2019Cours projet web collaboratif - partie 1 : Introduction, version 2019
Cours projet web collaboratif - partie 1 : Introduction, version 2019Eric Giraudin
380 views22 slides
Système d'archivage électronique mutualisé by
Système d'archivage électronique mutualiséSystème d'archivage électronique mutualisé
Système d'archivage électronique mutualiséLogilab
1.3K views28 slides

Similar to 20130113 06 - Travaux de recherche sur la corrélation entre qualité du code et bugs(20)

SharePoint - Benchmark des solutions de migration by Benoit Jester
SharePoint - Benchmark des solutions de migrationSharePoint - Benchmark des solutions de migration
SharePoint - Benchmark des solutions de migration
Benoit Jester7.8K views
Gestion de références bibliographiques : Sortir De Refworks by Alain Marois
Gestion de références bibliographiques : Sortir De RefworksGestion de références bibliographiques : Sortir De Refworks
Gestion de références bibliographiques : Sortir De Refworks
Alain Marois1.8K views
Ez18n crowdsourcing by gdigugli
Ez18n crowdsourcingEz18n crowdsourcing
Ez18n crowdsourcing
gdigugli335 views
Cours projet web collaboratif - partie 1 : Introduction, version 2019 by Eric Giraudin
Cours projet web collaboratif - partie 1 : Introduction, version 2019Cours projet web collaboratif - partie 1 : Introduction, version 2019
Cours projet web collaboratif - partie 1 : Introduction, version 2019
Eric Giraudin380 views
Système d'archivage électronique mutualisé by Logilab
Système d'archivage électronique mutualiséSystème d'archivage électronique mutualisé
Système d'archivage électronique mutualisé
Logilab1.3K views
Drupagora 2011 - Importer du contenu avec Drupal by Rodolfo Ripado
Drupagora 2011 - Importer du contenu avec DrupalDrupagora 2011 - Importer du contenu avec Drupal
Drupagora 2011 - Importer du contenu avec Drupal
Rodolfo Ripado2.2K views
Jabes 2011 - Actualités et projets de l'Abes "Les API Sudoc, le Sudoc autrement" by ABES
Jabes 2011 - Actualités et projets de l'Abes "Les API Sudoc, le Sudoc autrement"Jabes 2011 - Actualités et projets de l'Abes "Les API Sudoc, le Sudoc autrement"
Jabes 2011 - Actualités et projets de l'Abes "Les API Sudoc, le Sudoc autrement"
ABES118 views
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft by Christophe HERAL
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
Christophe HERAL2.8K views
Développement d'un grand projet piloté par les tests (BDD) by Laurent PY
Développement d'un grand projet piloté par les tests (BDD)Développement d'un grand projet piloté par les tests (BDD)
Développement d'un grand projet piloté par les tests (BDD)
Laurent PY662 views
SharePoint Summit 2012 - Gouvernance et évolution d'une équipe de développeme... by Sébastien Levert
SharePoint Summit 2012 - Gouvernance et évolution d'une équipe de développeme...SharePoint Summit 2012 - Gouvernance et évolution d'une équipe de développeme...
SharePoint Summit 2012 - Gouvernance et évolution d'une équipe de développeme...
Sébastien Levert926 views
Eryem talks - Réussissez votre migration SharePoint 2013 - Solutions Dell by Guillaume Meyer
Eryem talks - Réussissez votre migration SharePoint 2013 - Solutions DellEryem talks - Réussissez votre migration SharePoint 2013 - Solutions Dell
Eryem talks - Réussissez votre migration SharePoint 2013 - Solutions Dell
Guillaume Meyer1K views
Acquia et Arte : Drupal Camp Paris 2013 by Cyril Reinhard
Acquia et Arte : Drupal Camp Paris 2013Acquia et Arte : Drupal Camp Paris 2013
Acquia et Arte : Drupal Camp Paris 2013
Cyril Reinhard1.6K views
GitHub et Microsoft Azure DevOps - Le mariage parfait by Denis Voituron
GitHub et Microsoft Azure DevOps - Le mariage parfaitGitHub et Microsoft Azure DevOps - Le mariage parfait
GitHub et Microsoft Azure DevOps - Le mariage parfait
Denis Voituron507 views
Concevoir une preuve de concept web sémantique by Michel Héon PhD
Concevoir une preuve de concept web sémantiqueConcevoir une preuve de concept web sémantique
Concevoir une preuve de concept web sémantique
Michel Héon PhD651 views

More from LeClubQualiteLogicielle

20171122 03 - Les tests de performance en environnement DevOps by
20171122 03 - Les tests de performance en environnement DevOps20171122 03 - Les tests de performance en environnement DevOps
20171122 03 - Les tests de performance en environnement DevOpsLeClubQualiteLogicielle
2.3K views30 slides
20171122 04 - Automatisation - formation et certifications by
20171122 04 - Automatisation - formation et certifications20171122 04 - Automatisation - formation et certifications
20171122 04 - Automatisation - formation et certificationsLeClubQualiteLogicielle
764 views37 slides
20171122 01 - REX : Intégration et déploiement continu chez Engie by
20171122 01 - REX : Intégration et déploiement continu chez Engie20171122 01 - REX : Intégration et déploiement continu chez Engie
20171122 01 - REX : Intégration et déploiement continu chez EngieLeClubQualiteLogicielle
1.1K views30 slides
20171122 02 - Engage developers to use better coding practices by
20171122 02 - Engage developers to use better coding practices20171122 02 - Engage developers to use better coding practices
20171122 02 - Engage developers to use better coding practicesLeClubQualiteLogicielle
269 views21 slides
20171122 - Accueil Club Qualité Logicielle by
20171122 - Accueil Club Qualité Logicielle 20171122 - Accueil Club Qualité Logicielle
20171122 - Accueil Club Qualité Logicielle LeClubQualiteLogicielle
415 views12 slides
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des... by
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...LeClubQualiteLogicielle
460 views23 slides

More from LeClubQualiteLogicielle(20)

20171122 03 - Les tests de performance en environnement DevOps by LeClubQualiteLogicielle
20171122 03 - Les tests de performance en environnement DevOps20171122 03 - Les tests de performance en environnement DevOps
20171122 03 - Les tests de performance en environnement DevOps
20171122 01 - REX : Intégration et déploiement continu chez Engie by LeClubQualiteLogicielle
20171122 01 - REX : Intégration et déploiement continu chez Engie20171122 01 - REX : Intégration et déploiement continu chez Engie
20171122 01 - REX : Intégration et déploiement continu chez Engie
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des... by LeClubQualiteLogicielle
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...
20140410 - Cartographie applicative multi-technologies et analyse d'impact by LeClubQualiteLogicielle
20140410 - Cartographie applicative multi-technologies et analyse d'impact20140410 - Cartographie applicative multi-technologies et analyse d'impact
20140410 - Cartographie applicative multi-technologies et analyse d'impact
20140410 - Implémentation de squash TM-TA - Architecture et méthodologie by LeClubQualiteLogicielle
20140410 - Implémentation de squash TM-TA - Architecture et méthodologie20140410 - Implémentation de squash TM-TA - Architecture et méthodologie
20140410 - Implémentation de squash TM-TA - Architecture et méthodologie
20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu... by LeClubQualiteLogicielle
20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu...20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu...
20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu...
20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a... by LeClubQualiteLogicielle
20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a...20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a...
20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a...
20130113 04 - Tests d'integration et virtualisation - La vision IBM by LeClubQualiteLogicielle
20130113 04 - Tests d'integration et virtualisation - La vision IBM20130113 04 - Tests d'integration et virtualisation - La vision IBM
20130113 04 - Tests d'integration et virtualisation - La vision IBM
20130523 06 - The mathematics the way algorithms think / the mathematics the ... by LeClubQualiteLogicielle
20130523 06 - The mathematics the way algorithms think / the mathematics the ...20130523 06 - The mathematics the way algorithms think / the mathematics the ...
20130523 06 - The mathematics the way algorithms think / the mathematics the ...
20130523 04 - Grille d'évaluation - Gestion du patrimoine de test by LeClubQualiteLogicielle
20130523 04 - Grille d'évaluation - Gestion du patrimoine de test20130523 04 - Grille d'évaluation - Gestion du patrimoine de test
20130523 04 - Grille d'évaluation - Gestion du patrimoine de test

20130113 06 - Travaux de recherche sur la corrélation entre qualité du code et bugs