Is a strategy for code smell assessment long overdue?
Proceedings of the 2010 ICSE Workshop on Emerging Trends in Software Metrics
Deviance from perfection is a better criterion than closeness to evil when identifying risky code
Proceedings of the IEEE/ACM international conference on Automated software engineering
Identifying Extract Class refactoring opportunities using structural and semantic cohesion measures
Journal of Systems and Software
BDTEX: A GQM-based Bayesian approach for the detection of antipatterns
Journal of Systems and Software
Search-based design defects detection by example
FASE'11/ETAPS'11 Proceedings of the 14th international conference on Fundamental approaches to software engineering: part of the joint European conferences on theory and practice of software
Domain-specific model verification with QVT
ECMFA'11 Proceedings of the 7th European conference on Modelling foundations and applications
Detecting model refactoring opportunities using heuristic search
Proceedings of the 2011 Conference of the Center for Advanced Studies on Collaborative Research
An exploratory study of the impact of antipatterns on class change- and fault-proneness
Empirical Software Engineering
Identification and application of Extract Class refactorings in object-oriented systems
Journal of Systems and Software
Maintainability defects detection and correction: a multi-objective approach
Automated Software Engineering
Do software categories impact coupling metrics?
Proceedings of the 10th Working Conference on Mining Software Repositories
Towards detecting software performance anti-patterns using classification techniques
ACM SIGSOFT Software Engineering Notes
What you like in design use to correct bad-smells
Software Quality Control
Hi-index | 0.00 |
The presence of code and design smells can have a severe impact on the quality of a program. Consequently, their detection and correction have drawn the attention of both researchers and practitioners who have proposed various approaches to detect code and design smells in programs. However, none of these approaches handle the inherent uncertainty of the detection process. We propose a Bayesian approach to manage this uncertainty. First, we present a systematic process to convert existing state-of-the-art detection rules into a probabilistic model. We illustrate this process by generating a model to detect occurrences of the Blob antipattern. Second, we present results of the validation of the model: we built this model on two open-source programs, GanttProject v1.10.2 and Xerces v2.7.0, and measured its accuracy. Third, we compare our model with another approach to show that it returns the same candidate classes while ordering them to minimise the quality analysts' effort. Finally, we show that when past detection results are available, our model can be calibrated using machine learning techniques to offer an improved, context-specific detection.