AUTOMATSKA DETEKCIJA INDIKATORA LOŠE DIZAJNIRANOG KODA BAZIRANA NA INFORMACIJAMA EKSTRAHOVANIM IZ TEKSTUALNOG SADRŽAJA
Apstrakt
Radovi koji se bave automatskom detekcijom loše dizajniranog koda (eng. Code smell) već postoje. Međutim, ti radovi uglavnom uzimaju u obzir samo par tipova loše dizajniranog koda i njihova detekcija je jako zavisi od programskog jezika u okviru kog se detektuju. Pored toga, većina radova se oslanja na strukturalne metrike i samim tim potrebno je definisati razne pragove (eng. threshold) kako bi se detektovao indikator loše dizajniranog koda. Samim tim, rezultati mogu varirati u odnosu na projekte nad kojima se detektuje iz razloga što za svaki projekat se mora posebno definisati prag tih metrika. U ovom radu, loše dizajniran kod se detektuje isključivo na onovu informacija dobijenih iz tekstualnog sadržaja - kod. Ukoliko se koristi sam kod aplikacije, nestaje potreba definisanja pragova za razne metrike, jer se obrada vrši nad prirodnim jezikom za svaki projekat posebno.
Reference
[2] Martin, R.C., 2002. Agile software development: principles, patterns, and practices. Prentice Hall.
[3] Fernandes, E., Oliveira, J., Vale, G., Paiva, T. and Figueiredo, E., 2016, June. A review-based comparative study of bad smell detection tools. In Proceedings of the 20th International Conference on Evaluation and Assessment in Software Engineering (p. 18). ACM.
[4] Alkharabsheh, K., Crespo, Y., Manso, E. and Taboada, J.A., 2019. Software Design Smell Detection: a systematic mapping study. Software Quality Journal, 27(3), pp.1069-1148.
[5] Dietz, L.W., Manner, J., Harrer, S. and Lenhard, J., 2018. Teaching clean code. In Proceedings of the 1st Workshop on Innovative Software Engineering Education.
[6] Fowler, M., 2018. Refactoring: improving the design of existing code. Addison-Wesley Professional.
[7] Azeem, M.I., Palomba, F., Shi, L. and Wang, Q., 2019. Machine learning techniques for code smell detection: A systematic literature review and meta-analysis. Information and Software Technology.
[8] Di Nucci, D., Palomba, F., Tamburri, D.A., Serebrenik, A. and De Lucia, A., 2018, March. Detecting code smells using machine learning techniques: are we there yet?. In 2018 IEEE 25th International Conference on Software Analysis, Evolution and Reengineering (SANER) (pp. 612-621). IEEE.
[9] Palomba, F., Panichella, A., De Lucia, A., Oliveto, R. and Zaidman, A., 2016, May. A textual-based technique for smell detection. In 2016 IEEE 24th international conference on program comprehension (ICPC) (pp. 1-10). IEEE.
[10] Palomba, F., Bavota, G., Di Penta, M., Fasano, F., Oliveto, R. and De Lucia, A., 2018. On the diffuseness and the impact on maintainability of code smells: a large scale empirical investigation. Empirical Software Engineering, 23(3), pp.1188-1221
[11] Moha, N., Gueheneuc, Y.-G., Duchien, L., & Le Meur, A.-F. (2010). DECOR: A Method for the Specification and Detection of Code and Design Smells. IEEE Transactions on Software Engineering, 36(1), 20–36. https://doi.org/10.1109/tse.2009.50