Yazılım dünyasında 'code smell' olarak bilinen kavram, kodlarda gizli tasarım ve uygulama kusurlarını ifade ediyor. Bu kusurlar, yazılımın bakımını ve gelişimini zorlaştıran önemli engellerden biri haline geliyor.
Araştırmacılar, bu soruna yenilikçi bir çözüm getirmek için grafik sinir ağlarını (GNN) kullanarak yeni bir yaklaşım geliştirdi. Geçmişte kullanılan metrik tabanlı, kural tabanlı ve makine öğrenmesi tabanlı yöntemler çeşitli sınırlamalara sahipti.
Geleneksel yaklaşımlar manuel olarak tanımlanan kurallar ve eşik değerlerine fazlasıyla bağımlıydı. Derin öğrenme tabanlı yöntemler ise veri seti eksikliği ve model tasarımı kısıtları gibi sorunlarla karşılaşıyordu.
Yeni geliştirilen grafik tabanlı derin öğrenme yaklaşımı, bu problemleri aşmak için farklı bir strateji benimsiyor. Sistem, kodları iki farklı seviyede analiz ediyor: sınıf seviyesi ve metot seviyesi grafikleri.
Bu yaklaşım, hem grafik sınıflandırma hem de düğüm sınıflandırma görevlerini birlikte kullanarak code smell'leri daha etkili şekilde tespit edebiliyor. Böylece yazılım geliştiriciler, kodlarındaki kalite sorunlarını daha hızlı ve doğru bir şekilde belirleyip düzeltme şansına kavuşuyor.