Review Studi Literatur untuk Metode Pendeteksian God Class

Penulis

Divi Galih Prasetyo Putri, Muhammad Shulhan Khairy, Siti Rochimah

Abstrak

Abstrak

Code Smell mengacu pada konsep mengenai pola atau aspek desain pada sistem perangkat lunak yang dapat menimbulkan masalah dalam proses pengembangan, penggunaan, atau perawatan sebagai dampak dari implementasi yang buruk dari desain perangkat lunak. Code Smell dapat menurunkan aspek understandability dan maintainability program. Program yang mengandung God Class juga cenderung lebih sulit untuk dirawat dibandingkan dengan program yang sama namun tidak mengandung God Class. God Class atau dapat juga disebut Blob merupakan sebuah kelas yang terlalu banyak berisi fungsionalitas didalamnya. Kelas-kelas seperti ini mengolah dan mengakses banyak informasi sehingga sulit dipahami. Pada penelitian ini akan dibahas metode-metode untuk mendeteksi adanya God Class. Selain itu juga dibandingkan kelebihan serta kekurangan metode-metode yang telah dianalisa. Dari pencarian literatur yang dilakukan, didapatkan 3 buah metode, metode pertama menggunakan cara deteksi dalam bentuk rule card, metode kedua menggunakan rule card dan catatan histori perubahan pada sebuah perangkat lunak, dan metode ketiga adalah pendeteksian berdasarkan contoh kelas yang dideteksi manual sebagai kecacatan perangkat lunak. Dari ketiga metode tersebut, metode ketiga dinilai sebagai yang terbaik berdasarkan nilai presisi dan recall-nya.

Kata kunci: Blob, God Class


Abstract

Code smell referring to the concept about a pattern or design aspects on a software system that can make a problem in the process of development, using, or maintenance as the impact of bad implementation of software design. Code smell can lower software understandability and maintainability. A software that containing god class will be more difficult to maintain compared with a same software but doesn’t have a god class. God class, also called blob is a class that has too many functionality. A god class process and access a lot of information. On this research will be discussed methods to detect a god class. We also compared the advantage and disadvantage about analysed method. From the literature we search, there are 3 methods, first method using detection with a rule card, the second method using rule card and history changes of a software, and the third method is detection by examples classes that detected manually as a software defect. And our research result is the third method is the best method based on its precision and recall.

Keywords: Blob, God Class

Teks Lengkap:

PDF (English)

Referensi


BROWN, W. J., MALVEAU, R. C. & MOWBRAY, T. J., 1998. Anti Patterns: Refactoring Software, Architectures, and Project in Crisis. s.l., s.n.

DE F. CARNEIRO, G. et al., 2010. Identifying Code Smells with Multiple Concern Views. s.l., s.n.

FONTANA, F. A. et al., 2013. Investigating the Impact of Code Smells on System’s Quality: An Empirical Study on Systems of Different Application Domains. s.l., s.n.

FOWLER, M., 1999. Refactoring-Improving the Design of Existing Code. s.l., s.n.

HAMID, A. & ILYAS, M., 2013. A Comparative Study on Code Smell Detection Tools. s.l., s.n.

KESSENTINI, M., KESSENTINI, W. & SAHRAOUI, H., 2011. Design Defect Detection and Correction by Example. s.l., s.n.

LANZA, M., MARINESCU, R. & S, D., 2005. Object Oriented Metrics in Practice. New York: Springer.

MOHA, N., GUE´HE´NEUC, Y.-G. & DUCHIEN, L., 2010. DECOR: A method for the specification and detection of code and design smells. s.l., s.n.

OLBRICH, S. M. & CRUZES, D. S., 2010. Are all Code Smells Harmful? A Study of God Classes and Brain Classes in the Evolution of three Open sources Systems. s.l., s.n.

PALOMBA, F., BAVOTA, G. & PENTA, M. D., 2013. Detecting Bad Smell in Source Code Using Change History Information. s.l., s.n.

PALOMBA, F., BAVOTA, G. & PENTA, M. D., 2014. Mining Version Histories for Detecting Code Smells. s.l., s.n.

SJØBERG, D. I. et al., 2013. Quantifying the Effect of Code Smells on Maintenance Effort. IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, Volume 39, pp. 1144-1196.

ZHANG, M. & HALL, T., 2011. Code Bad Smells: a review of current knowledge. Journal of Software Maintenance and Evolution, 23(3), pp. 179-202.




DOI: http://dx.doi.org/10.25126/jtiik.201634111