Abstract
Evolvability defects are non-understandable and non-modifiable states that do not directly produce runtime behavioral failures. Automatic source code evaluation by metrics and thresholds can help reduce the burden of a manual inspection. This study addresses two problems. (1) Evolvability defects are not usually managed in bug tracking systems. (2) Conventional methods cannot fully interpret the relations among the metrics in a given context (e.g., programming language, application domain). The key actions of our method are to (1) gather trainingdata for machine learning by experts' manual inspection of some of the files in given systems (benchmark) and (2) employ a classification-tree learner algorithm, C5.0, which can deal with non-orthogonal relations between metrics. Furthermore, we experimentally confirm that, even with less training-data, our method provides a more precise evaluation than four conventional methods (the percentile, Alves' method, Bender's method, and the ROC curve-based method).
Original language | English |
---|---|
Title of host publication | Proceedings - 2018 IEEE 18th International Conference on Software Quality, Reliability, and Security, QRS 2018 |
Publisher | Institute of Electrical and Electronics Engineers Inc. |
Pages | 83-94 |
Number of pages | 12 |
ISBN (Print) | 9781538677575 |
DOIs | |
Publication status | Published - 2018 Aug 2 |
Event | 18th IEEE International Conference on Software Quality, Reliability, and Security, QRS 2018 - Lisbon, Portugal Duration: 2018 Jul 16 → 2018 Jul 20 |
Other
Other | 18th IEEE International Conference on Software Quality, Reliability, and Security, QRS 2018 |
---|---|
Country | Portugal |
City | Lisbon |
Period | 18/7/16 → 18/7/20 |
Keywords
- Classification-tree
- Contextual thresholds
- Evolvability defects
- Goal-Question-Metrics (GQM)
- Machine learning
- Software metrics
ASJC Scopus subject areas
- Software
- Safety, Risk, Reliability and Quality