ABSTRACT
The development of software is a human endeavor and program comprehension is an important factor in software maintenance. Predictive models can be used to identify software components as potentially problematic for the purpose of future maintenance. Such modules could lead to increased development effort, and as such, may be in need of mitigating actions such as refactoring or assigning more experienced developers.
Source code metrics can be used as input features to classifiers, however, there exist a large number of structural measures that capture different aspects of coupling, cohesion, inheritance, complexity and size. In machine learning, feature selection is the process of identifying a subset of attributes that improves a classifier's performance. This paper presents initial results when using a genetic algorithm as a method of improving a classifier's ability to discover cognitively complex classes that degrade program understanding.
- D. Azar, D. Precup, S. Bouktif, B. Kegl, H. Sahraoui. Combining and Adapting Software Quality Predictive Models by Genetic Algorithms. In Proceedings of the 17th IEEE International Conference on Automated Software Engineering, Edinburgh, UK, 2002. Google ScholarDigital Library
- R. Bellman. Adaptive Control Processes: A Guided Tour, Princeton University Press, 1961.Google Scholar
- L. C. Briand, J. W. Daly, J. Wust. A Unified Framework for Cohesion Measurement in Object-Oriented Systems. Empirical Sofware Engineering, pp. 65--117, 3, 1998. Google ScholarDigital Library
- L. C. Briand, E. Arisholm, S. Counsell, F. Houdek, P. Thevenod-Fosse. Empirical Studies of Object-Oriented Artifacts, Methods, and Processes: State of the Art and Future Directions. Empirical Software Engineering, pp. 387--404, 4, 1999. Google ScholarDigital Library
- L. C. Briand, J. W. Daly, J. Wust. A Unified Framework for Coupling Measurement in Object-Oriented Systems. IEEE Transactions on Software Engineering, pp. 91--121, 25, 1 1999. Google ScholarDigital Library
- L. C. Briand, J. Wuest. Empirical Studies of Quality Models in Object-Oriented Systems. Advances in Computers, pp. 97--166, 56, 2002.Google Scholar
- Borland® Together® Visual Modeling for Software Architecture Design (July 2007): http://www.borland.com/us/products/together/index.htmlGoogle Scholar
- E. Cantu-Paz. Effective and Accurate Parallel Genetic Algorithms. Kluger Academic Publishers, 2000. Google ScholarDigital Library
- S. R. Chidamber, C. F. Kemerer. A Metrics Suite for Object Oriented Design. IEEE Transactions on Software Engineering, pp. 476--493, 20, 6, 1994. Google ScholarDigital Library
- C. D. Duda, P. E. Hart, D. G. Stork. Pattern Classification 2nd Edition. John Wiley & Sons, 2000. Google ScholarDigital Library
- K. El Emam. Object-Oriented Metrics: A Review of Theory and Practice. In Advances in Software Engineering, editors, H. Erdogmus, O. Tanir, Springer, 2002. Google ScholarDigital Library
- D. Goldberg. Genetic Algorithms in Search, Optimization and Machine Learning. Addison-Wesley, 1989. Google ScholarDigital Library
- J. Hertz, A. Krogh, R. G. Palmer, Introduction to the Theory of Neural Computation, Addison-Wesley, 1991. Google ScholarDigital Library
- N. Nagappan, T. Ball, A. Zeller. Mining Metrics to Predict Component Failures. In Proceedings of the International Conference on Software Enginnering, Shanghai, China 2006. Google ScholarDigital Library
- A. E. Nikulin, B. Dolenko, T. Bezabeb, R. L. Somorjai. Near-optimal region selection for feature space reduction: novel preprocessing methods for classifying MR spectra. NMR in Biomedicine, pp. 209--216, 11, 1998.Google ScholarCross Ref
- N. J. Pizzi, R. Vivanco, R. L. Somorjai. EvIdent: a functional magnetic resonance image analysis system. Artificial Intelligence in Medicine, pp. 263--269, 21, 2001. Google ScholarDigital Library
- J. R. Quinlan, "C4.5 Programs for Machine Learning", Morgan Kaufmann Publishers, USA, 1993. Google ScholarDigital Library
- Repository of empirical software engineering data (July 2007): www.promisedata.org/Google Scholar
- M. L. Raymer, W. F. Punch, E. D. Goodman, L. A. Kuhn, A. K. Jain. Dimensionality Reduction Using Genetic Algorithms. IEEE Trans. on Evolutionary Computation, pp. 164--171, 4, 2, 2000. Google ScholarDigital Library
- B. Scholkopf, A. J. Smola, Learning with Kernels, MIT Press, 2002.Google Scholar
- R. Vivanco, A. B. Demko, M. Jarmasz, R. L. Somorjai, N. J. Pizzi. A Pattern Recognition Application Framework for Biomedical Data-sets. IEEE Engineering in Medicine and Biology Magazine, pp. 82--85, March/April, 2007.Google Scholar
Improving predictive models of cognitive complexity using an evolutionary computational approach: a case study
Recommendations
Cognitive complexity metrics and its impact on software reliability based on cognitive software development model
Software metrics provide a quantitative basis for the development and validation of models of software development process. Information gained from metrics is used in managing the development process in order to improve the reliability and quality of ...
Predictive complexity and information
Special issue on COLT 2002The notions of predictive complexity and of corresponding amount of information are considered. Predictive complexity is a generalization of Kolmogorov complexity which bounds the ability of any algorithm to predict elements of a sequence of outcomes. ...
On selecting additional predictive models in double bagging type ensemble method
ICCSA'10: Proceedings of the 2010 international conference on Computational Science and Its Applications - Volume Part IVDouble Bagging is a parallel ensemble method, where an additional classifier model is trained on the out-of-bag samples and then the posteriori class probabilities of this additional classifier are added with the inbag samples to train a decision tree ...
Comments