Azadi, U., Arcelli Fontana, F., and Zanoni, M. (2018).
Poster: Machine learning based code smell detection
through wekanose. In 2018 IEEE/ACM 40th Interna-
tional Conference on Software Engineering: Compan-
ion Proceedings (ICSE-Companion), pages 288–289.
IEEE.
Bellman, R. E. and Dreyfus, S. E. (2015). Applied dy-
namic programming, volume 2050. Princeton univer-
sity press.
Breiman, L. (2001). Random forests. Machine learning,
45(1):5–32.
Brown, W. H., Malveau, R. C., McCormick, H. W., and
Mowbray, T. J. (1998). AntiPatterns: refactoring soft-
ware, architectures, and projects in crisis. John Wiley
& Sons, Inc.
Cohen, W. W. (1995). Fast effective rule induction. In Ma-
chine learning proceedings 1995, pages 115–123. El-
sevier.
Dasgupta, D. (2012). Artificial immune systems and their
applications. Springer Science & Business Media.
Fenton, N. and Bieman, J. (2014). Software metrics: a rig-
orous and practical approach. CRC press.
Fowler, M. (2018). Refactoring: improving the design of
existing code. Addison-Wesley Professional.
Freund, Y., Schapire, R. E., et al. (1996). Experiments with
a new boosting algorithm. In International Confer-
ence on Machine Learning, volume 96, pages 148–
156. Citeseer.
Gharehchopogh, F. S., Maleki, I., Ghoyunchizad, N., and
Mostafaee, E. (2014). A novel hybrid artificial im-
mune system with genetic algorithm for software cost
estimation. Magnt Research Report, 2(6):506–517.
Gil, J. Y. and Maman, I. (2005). Micro patterns in java code.
ACM SIGPLAN Notices, 40(10):97–116.
Hall, M., Frank, E., Holmes, G., Pfahringer, B., Reute-
mann, P., and Witten, I. H. (2009). The WEKA data
mining software: an update. SIGKDD Explorations,
11(1):10–18.
Han, J., Pei, J., and Kamber, M. (2011). Data mining: con-
cepts and techniques. Elsevier.
Hassaine, S., Khomh, F., Gu
´
eh
´
eneuc, Y.-G., and Hamel, S.
(2010). Ids: An immune-inspired approach for the
detection of software design smells. In 2010 Sev-
enth International Conference on the Quality of Infor-
mation and Communications Technology, pages 343–
348. IEEE.
Khomh, F., Vaucher, S., Gu
´
eh
´
eneuc, Y.-G., and Sahraoui,
H. (2009). A bayesian approach for the detection
of code and design smells. In 2009 Ninth Interna-
tional Conference on Quality Software, pages 305–
314. IEEE.
Lee, J.-k. and Kwon, K.-T. (2009). Software cost estimation
using svr based on immune algorithm. In 2009 10th
ACIS International Conference on Software Engineer-
ing, Artificial Intelligences, Networking and Paral-
lel/Distributed Computing, pages 462–466. IEEE.
Liaskos, K. and Roper, M. (2008). Hybridizing evolu-
tionary testing with artificial immune systems and lo-
cal search. In 2008 IEEE International Conference
on Software Testing Verification and Validation Work-
shop, pages 211–220. IEEE.
Maiga, A., Ali, N., Bhattacharya, N., Sabane, A., Gue-
heneuc, Y.-G., and Aimeur, E. (2012). Smurf: A svm-
based incremental anti-pattern detection approach. In
2012 19th Working Conference on Reverse Engineer-
ing, pages 466–475. IEEE.
Mantyla, M. V. (2005). An experiment on subjective evolv-
ability evaluation of object-oriented software: ex-
plaining factors and interrater agreement. In 2005 In-
ternational Symposium on Empirical Software Engi-
neering, 2005., pages 10–pp. IEEE.
Martin, R. C. (2002). Agile software development: princi-
ples, patterns, and practices. Prentice Hall.
Moha, N., Gueheneuc, Y.-G., Duchien, L., and Le Meur,
A.-F. (2009). Decor: A method for the specification
and detection of code and design smells. IEEE Trans-
actions on Software Engineering, 36(1):20–36.
Palomba, F., Bavota, G., Di Penta, M., Oliveto, R., De Lu-
cia, A., and Poshyvanyk, D. (2013). Detecting bad
smells in source code using change history informa-
tion. In Proceedings of the 28th IEEE/ACM Interna-
tional Conference on Automated Software Engineer-
ing, pages 268–278. IEEE Press.
Parrend, P., Guigou, F., Navarro, J., Deruyver, A., and Col-
let, P. (2018). For a refoundation of artificial im-
mune system research: Ais is a design pattern. In
2018 IEEE Symposium Series on Computational In-
telligence (SSCI), pages 1122–1129. IEEE.
Quinlan, J. R. (2014). C4.5: programs for machine learn-
ing. Elsevier.
Rao, A. A. and Reddy, K. N. (2007). Detecting bad smells
in object oriented design using design change propa-
gation probability matrix.
Rapu, D., Ducasse, S., G
ˆ
ırba, T., and Marinescu, R. (2004).
Using history information to improve design flaws de-
tection. In Eighth European Conference on Software
Maintenance and Reengineering, 2004. CSMR 2004.
Proceedings., pages 223–232. IEEE.
Roveda, R., Arcelli Fontana, F., Pigazzini, I., and Zanoni,
M. (2018). Towards an architectural debt index. In
2018 44th Euromicro Conference on Software Engi-
neering and Advanced Applications (SEAA), pages
408–416. IEEE.
Savitch, W. J. (2000). Java: an introduction to computer
science and programming. Prentice Hall PTR.
Tsantalis, N. and Chatzigeorgiou, A. (2011). Identification
of extract method refactoring opportunities for the de-
composition of methods. Journal of Systems and Soft-
ware, 84(10):1757–1782.
Zanoni, M., Arcelli Fontana, F., and Stella, F. (2015). On
applying machine learning techniques for design pat-
tern detection. Journal of Systems and Software,
103:102–117.
A New Approach for Software Quality Assessment Based on Automated Code Anomalies Detection
553