SlideShare a Scribd company logo
Can Lexicon Bad Smells
improve fault prediction?
Surafel Abebe, Venera Arnaoudova, Paolo Tonella,
  Giuliano Antoniol and Yann-Gaël Guéhéneuc




                       1                   WCRE’12
Fault prediction

       Motivation - take advantage from past
       mistakes

       Scenario

           set of metrics

           prediction technique and configuration

           evaluation metrics


Venera Arnaoudova           2                      WCRE’12
Set of metrics

       Structural - CK suit

           Coupling between objects (CBO)

           Depth of Inheritance Tree (DIT)

           ...

       Linguistic - Lexicon Bad Smells (LBS)


Venera Arnaoudova             3                WCRE’12
Lexicon Bad Smells (LBS)
   Terms                  Structural                  Meaning                Naming Rules
          aSz               addition ()                        foo()          nameString
         Extreme              Odd grammatical         Meaningless terms           Useless type
        contraction              structure                                         indication


                                                        Similar names         Identifier construction
        Misspelled               Overloaded
          terms                                                                       rules
                                 identifiers
                                                        Wrong context



                                                       whole and parts

Wiki:
                                                      Conceptual Hierarchy
        http://selab.fbk.eu/LexiconBadSmellWiki

                                                           No hyponyms

                                                         Inconsistent term

        Venera Arnaoudova                         4                                  WCRE’12
Technique
       Principal Component Analysis (PCA)

       Prediction models

           Logistic Regression (LR)

           Random Forest (RF)

           Support Vector Machine (SVM)

       within and next version

Venera Arnaoudova           5               WCRE’12
Evaluation metrics
       Rank

           popt, Fault Percentile Average (FPA)

       Classification

           Accuracy, F-measure, MCC

       Error

           Absolute error

Venera Arnaoudova            6                    WCRE’12
Research questions


       RQ1: Do LBS bring new information with
       respect to structural metrics?

       RQ2: Do LBS improve fault prediction?

       RQ3: Which LBS harm more?




Venera Arnaoudova         7                     WCRE’12
Case Study

           System      # versions      # classes

       ArgoUML                6     > 800 - 1400 <

       Eclipse                5     > 4500 - 6800 <

       Rhino                  8     > 90 - 190 <


Venera Arnaoudova         8                        WCRE’12
RQ1: LBS bring new
           information?

       PCA

           Component selection: 95% variance

           Attribute selection: 10% relative threshold




Venera Arnaoudova           9                     WCRE’12
RQ1: LBS bring new
           information?

       Inconsistent terms was retained in all
       systems

       90% of the time inconsistent terms and
       overloaded identifiers were the main
       contributor in at least one of the retained
       PC


Venera Arnaoudova          10                    WCRE’12
RQ2: LBS improve fault
       prediction?
       Select one model          SVM
           Build prediction models using the CK suit

           Rank models using the evaluation metrics

       CK+LBS vs CK

           net improvement within/across versions

           average delta percentage

Venera Arnaoudova           11                    WCRE’12
RQ2: LBS improve fault
       prediction?
       Average delta percentage: 29/36 predictions

       Net improvement:
                    Within version       Next version
                     4-5/6 predictions     3-4/5 predictions
 ArgoUML               (all metrics)     (half of the metrics)
                      5/5 predictions      1-2/4 predictions
   Eclipse             (all metrics)     (half of the metrics)

                     4-7/8 predictions    1-4/5 predictions
    Rhino              (all metrics)         (all metrics)


Venera Arnaoudova                  12                      WCRE’12
RQ3: Which LBS harm
          more?


       Rank LBS according to their weight assigned
       by the model

       Median over the different models




Venera Arnaoudova         13                  WCRE’12
RQ3: Which LBS harm
          more?

       Common to all systems:

           synonym similar        getObject() and acquireObject()

           inconsistent terms      INITIAL_WIDTH and WIDTH

           overloaded identifiers         matchOrReplace()




Venera Arnaoudova            14                          WCRE’12
RQ3: Which LBS harm
          more?

       System specific

           extreme contraction (Eclipse)

           misspelling (Rhino)




Venera Arnaoudova            15            WCRE’12
So what?


       Lexicon Bad Smells are easy to ...

               understand

               avoid

               fix



Venera Arnaoudova           16              WCRE’12
Conclusion




Venera Arnaoudova       17       WCRE’12

More Related Content

Viewers also liked

ECOOP05 QAOOSEb.ppt
ECOOP05 QAOOSEb.pptECOOP05 QAOOSEb.ppt
ECOOP05 QAOOSEb.pptPtidej Team
 
Soundcloud charts
Soundcloud chartsSoundcloud charts
Soundcloud chartsrogercana
 
Soundcloud buy followers
Soundcloud buy followersSoundcloud buy followers
Soundcloud buy followersrogercana
 
Can i buy keek followers
Can i buy keek followersCan i buy keek followers
Can i buy keek followerskiven897
 
Buy youtube video views cheap
Buy youtube video views cheapBuy youtube video views cheap
Buy youtube video views cheapkiven897
 
Vimantra Screen Snapshots
Vimantra Screen SnapshotsVimantra Screen Snapshots
Vimantra Screen Snapshots
Thomson Reuters
 

Viewers also liked (7)

ECOOP05 QAOOSEb.ppt
ECOOP05 QAOOSEb.pptECOOP05 QAOOSEb.ppt
ECOOP05 QAOOSEb.ppt
 
Soundcloud charts
Soundcloud chartsSoundcloud charts
Soundcloud charts
 
Soundcloud buy followers
Soundcloud buy followersSoundcloud buy followers
Soundcloud buy followers
 
Can i buy keek followers
Can i buy keek followersCan i buy keek followers
Can i buy keek followers
 
Ac epos
Ac eposAc epos
Ac epos
 
Buy youtube video views cheap
Buy youtube video views cheapBuy youtube video views cheap
Buy youtube video views cheap
 
Vimantra Screen Snapshots
Vimantra Screen SnapshotsVimantra Screen Snapshots
Vimantra Screen Snapshots
 

More from Ptidej Team

From IoT to Software Miniaturisation
From IoT to Software MiniaturisationFrom IoT to Software Miniaturisation
From IoT to Software Miniaturisation
Ptidej Team
 
Presentation
PresentationPresentation
Presentation
Ptidej Team
 
Presentation
PresentationPresentation
Presentation
Ptidej Team
 
Presentation
PresentationPresentation
Presentation
Ptidej Team
 
Presentation by Lionel Briand
Presentation by Lionel BriandPresentation by Lionel Briand
Presentation by Lionel Briand
Ptidej Team
 
Manel Abdellatif
Manel AbdellatifManel Abdellatif
Manel Abdellatif
Ptidej Team
 
Azadeh Kermansaravi
Azadeh KermansaraviAzadeh Kermansaravi
Azadeh Kermansaravi
Ptidej Team
 
Mouna Abidi
Mouna AbidiMouna Abidi
Mouna Abidi
Ptidej Team
 
CSED - Manel Grichi
CSED - Manel GrichiCSED - Manel Grichi
CSED - Manel Grichi
Ptidej Team
 
Cristiano Politowski
Cristiano PolitowskiCristiano Politowski
Cristiano Politowski
Ptidej Team
 
Will io t trigger the next software crisis
Will io t trigger the next software crisisWill io t trigger the next software crisis
Will io t trigger the next software crisis
Ptidej Team
 
MIPA
MIPAMIPA
Thesis+of+laleh+eshkevari.ppt
Thesis+of+laleh+eshkevari.pptThesis+of+laleh+eshkevari.ppt
Thesis+of+laleh+eshkevari.ppt
Ptidej Team
 
Thesis+of+nesrine+abdelkafi.ppt
Thesis+of+nesrine+abdelkafi.pptThesis+of+nesrine+abdelkafi.ppt
Thesis+of+nesrine+abdelkafi.ppt
Ptidej Team
 
Medicine15.ppt
Medicine15.pptMedicine15.ppt
Medicine15.ppt
Ptidej Team
 
Qrs17b.ppt
Qrs17b.pptQrs17b.ppt
Qrs17b.ppt
Ptidej Team
 
Icpc11c.ppt
Icpc11c.pptIcpc11c.ppt
Icpc11c.ppt
Ptidej Team
 
Icsme16.ppt
Icsme16.pptIcsme16.ppt
Icsme16.ppt
Ptidej Team
 
Msr17a.ppt
Msr17a.pptMsr17a.ppt
Msr17a.ppt
Ptidej Team
 
Icsoc15.ppt
Icsoc15.pptIcsoc15.ppt
Icsoc15.ppt
Ptidej Team
 

More from Ptidej Team (20)

From IoT to Software Miniaturisation
From IoT to Software MiniaturisationFrom IoT to Software Miniaturisation
From IoT to Software Miniaturisation
 
Presentation
PresentationPresentation
Presentation
 
Presentation
PresentationPresentation
Presentation
 
Presentation
PresentationPresentation
Presentation
 
Presentation by Lionel Briand
Presentation by Lionel BriandPresentation by Lionel Briand
Presentation by Lionel Briand
 
Manel Abdellatif
Manel AbdellatifManel Abdellatif
Manel Abdellatif
 
Azadeh Kermansaravi
Azadeh KermansaraviAzadeh Kermansaravi
Azadeh Kermansaravi
 
Mouna Abidi
Mouna AbidiMouna Abidi
Mouna Abidi
 
CSED - Manel Grichi
CSED - Manel GrichiCSED - Manel Grichi
CSED - Manel Grichi
 
Cristiano Politowski
Cristiano PolitowskiCristiano Politowski
Cristiano Politowski
 
Will io t trigger the next software crisis
Will io t trigger the next software crisisWill io t trigger the next software crisis
Will io t trigger the next software crisis
 
MIPA
MIPAMIPA
MIPA
 
Thesis+of+laleh+eshkevari.ppt
Thesis+of+laleh+eshkevari.pptThesis+of+laleh+eshkevari.ppt
Thesis+of+laleh+eshkevari.ppt
 
Thesis+of+nesrine+abdelkafi.ppt
Thesis+of+nesrine+abdelkafi.pptThesis+of+nesrine+abdelkafi.ppt
Thesis+of+nesrine+abdelkafi.ppt
 
Medicine15.ppt
Medicine15.pptMedicine15.ppt
Medicine15.ppt
 
Qrs17b.ppt
Qrs17b.pptQrs17b.ppt
Qrs17b.ppt
 
Icpc11c.ppt
Icpc11c.pptIcpc11c.ppt
Icpc11c.ppt
 
Icsme16.ppt
Icsme16.pptIcsme16.ppt
Icsme16.ppt
 
Msr17a.ppt
Msr17a.pptMsr17a.ppt
Msr17a.ppt
 
Icsoc15.ppt
Icsoc15.pptIcsoc15.ppt
Icsoc15.ppt
 

Recently uploaded

PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
ThomasParaiso2
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 

Recently uploaded (20)

PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 

WCRE12d.ppt

  • 1. Can Lexicon Bad Smells improve fault prediction? Surafel Abebe, Venera Arnaoudova, Paolo Tonella, Giuliano Antoniol and Yann-Gaël Guéhéneuc 1 WCRE’12
  • 2. Fault prediction Motivation - take advantage from past mistakes Scenario set of metrics prediction technique and configuration evaluation metrics Venera Arnaoudova 2 WCRE’12
  • 3. Set of metrics Structural - CK suit Coupling between objects (CBO) Depth of Inheritance Tree (DIT) ... Linguistic - Lexicon Bad Smells (LBS) Venera Arnaoudova 3 WCRE’12
  • 4. Lexicon Bad Smells (LBS) Terms Structural Meaning Naming Rules aSz addition () foo() nameString Extreme Odd grammatical Meaningless terms Useless type contraction structure indication Similar names Identifier construction Misspelled Overloaded terms rules identifiers Wrong context whole and parts Wiki: Conceptual Hierarchy http://selab.fbk.eu/LexiconBadSmellWiki No hyponyms Inconsistent term Venera Arnaoudova 4 WCRE’12
  • 5. Technique Principal Component Analysis (PCA) Prediction models Logistic Regression (LR) Random Forest (RF) Support Vector Machine (SVM) within and next version Venera Arnaoudova 5 WCRE’12
  • 6. Evaluation metrics Rank popt, Fault Percentile Average (FPA) Classification Accuracy, F-measure, MCC Error Absolute error Venera Arnaoudova 6 WCRE’12
  • 7. Research questions RQ1: Do LBS bring new information with respect to structural metrics? RQ2: Do LBS improve fault prediction? RQ3: Which LBS harm more? Venera Arnaoudova 7 WCRE’12
  • 8. Case Study System # versions # classes ArgoUML 6 > 800 - 1400 < Eclipse 5 > 4500 - 6800 < Rhino 8 > 90 - 190 < Venera Arnaoudova 8 WCRE’12
  • 9. RQ1: LBS bring new information? PCA Component selection: 95% variance Attribute selection: 10% relative threshold Venera Arnaoudova 9 WCRE’12
  • 10. RQ1: LBS bring new information? Inconsistent terms was retained in all systems 90% of the time inconsistent terms and overloaded identifiers were the main contributor in at least one of the retained PC Venera Arnaoudova 10 WCRE’12
  • 11. RQ2: LBS improve fault prediction? Select one model SVM Build prediction models using the CK suit Rank models using the evaluation metrics CK+LBS vs CK net improvement within/across versions average delta percentage Venera Arnaoudova 11 WCRE’12
  • 12. RQ2: LBS improve fault prediction? Average delta percentage: 29/36 predictions Net improvement: Within version Next version 4-5/6 predictions 3-4/5 predictions ArgoUML (all metrics) (half of the metrics) 5/5 predictions 1-2/4 predictions Eclipse (all metrics) (half of the metrics) 4-7/8 predictions 1-4/5 predictions Rhino (all metrics) (all metrics) Venera Arnaoudova 12 WCRE’12
  • 13. RQ3: Which LBS harm more? Rank LBS according to their weight assigned by the model Median over the different models Venera Arnaoudova 13 WCRE’12
  • 14. RQ3: Which LBS harm more? Common to all systems: synonym similar getObject() and acquireObject() inconsistent terms INITIAL_WIDTH and WIDTH overloaded identifiers matchOrReplace() Venera Arnaoudova 14 WCRE’12
  • 15. RQ3: Which LBS harm more? System specific extreme contraction (Eclipse) misspelling (Rhino) Venera Arnaoudova 15 WCRE’12
  • 16. So what? Lexicon Bad Smells are easy to ... understand avoid fix Venera Arnaoudova 16 WCRE’12