I nte rna t io na l J o urna l o f   E lect rica l a nd   Co m pu t er   E ng ineering   ( I J E CE )   Vo l.   15 ,   No .   3 J u n e   20 25 ,   p p .   3010 ~ 3 0 2 7   I SS N:  2088 - 8 7 0 8 ,   DOI : 1 0 . 1 1 5 9 1 /ijece. v 15 i 3 . pp 3 0 1 0 - 3 0 2 7           3010       J o ur na l ho m ep a g e h ttp : //ij ec e. ia esco r e. co m   sy stema tic  revi ew on so ft wa re c o de smells       M o ha m m ed  G ha zi  Al - O beida lla h 1 Dim a h Al - F ra iha t 2   1 D e p a r t me n t   o f   C o m p u t e r   S c i e n c e   a n d   I n f o r ma t i o n   T e c h n o l o g y ,   A b u   D h a b i   U n i v e r si t y ,   A b u   D h a b i ,   U n i t e d   A r a b   Emi r a t e s   2 D e p a r t me n t   o f   S o f t w a r e   En g i n e e r i n g ,   F a c u l t y   o f   I n f o r ma t i o n   Te c h n o l o g y ,   I sr a   U n i v e r s i t y ,   A mm a n ,   Jo r d a n         Art icle  I nfo     AB S T RAC T   A r ticle  his to r y:   R ec eiv ed   Ma r   2 8 ,   2 0 2 4   R ev is ed   J an   1 6 ,   2 0 2 5   Acc ep ted   Ma r   3 ,   2 0 2 5       Th is  p a p e p ro v id e a   sy ste m a ti c   re v iew   o f   c o d e   sm e ll   d e tec ti o n   st u d ie s   p u b li sh e d   fro m   2 0 0 1   to   2 0 2 3 ,   a d d re ss in g   t h e ir  sig n ifi c a n c e   in   i d e n ti f y in g   u n d e rl y i n g   issu e in   so ftwa re   sy s tem s.  Th ro u g h   stri n g e n i n c lu si o n   c rit e ria,   1 1 6   p r ima ry   stu d ies   we re   a n a ly z e d ,   fo c u si n g   o n   v a ri o u a sp e c t su c h   a s   p u b li c a ti o n   v e n u e ,   c o d e   sm e ll   c a teg o ries ,   su b jec sy ste m s,  su p p o rted   p ro g ra m m in g   la n g u a g e s,  e v a l u a ti o n   c ri teria ,   a n d   d e tec ti o n   tec h n i q u e s.  T h e   a n a ly sis  re v e a ls  t h a 5 0 %   o f   th e   p a p e rs  we re   c o n fe re n c e   p r o c e e d in g s,   with   8 0 %   u ti li z in g   Ja v a - su p p o rted   t e c h n iq u e a n d   c o m m o n l y   u se d   su b jec t   sy ste m li k e   A p a c h e   Xe rc e s,  G a n tt P ro jec t,   a n d   Arg o UM L.   M e t rics - b a se d   m e th o d ( 3 3 % a n d   se a rc h - b a se d   a p p r o a c h e (3 2 % we re   p re d o m in a n tl y   e m p lo y e d ,   with   m a c h i n e   lea rn in g   e m e rg in g   i n   2 0 %   a n d   r u le - b a se d   m e th o d s   in   1 5 %   o th e   st u d ies .   No ta b ly ,   re c e n stu d ies   h a v e   sh o wn   a n   in c re a se d   a d o p t io n   o f   m a c h in e   lea rn in g   tec h n i q u e s.  Th e   i d e n ti f ied   c o d e   sm e ll in c l u d e   g o d   c las s,  fe a tu re   e n v y ,   lo n g   m e th o d ,   a n d   d a ta  c las s,  with   p re c isio n   a n d   re c a ll   b e in g   th e   m o st   c o m m o n l y   u se d   e v a lu a ti o n   m e tri c s.  Th is   re v iew   a ims   to   in f o rm   fu tu re   re se a rc h   d ire c ti o n s   a n d   a id   t h e   s o ftwa re   e n g i n e e rin g   c o m m u n it y   in   d e v e lo p in g   n o v e d e tec ti o n   tec h n i q u e to   e n h a n c e   c o d e   q u a li t y   a n d   sy ste m   re li a b il it y .   K ey w o r d s :   An tip atter n s   C o d r ef ac to r in g   C o d s m ells   Sm ell  d etec tio n   Sy s tem atic  r ev iew   T h is i a n   o p e n   a c c e ss   a rticle   u n d e r th e   CC B Y - SA   li c e n se .     C o r r e s p o nd ing   A uth o r :   Dim ah   Al - Fra ih at   Dep ar tm en t o f   So f twar E n g in ee r in g ,   Facu lty   o f   I n f o r m atio n   T ec h n o lo g y ,   I s r Un iv e r s ity   1 1 6 2 2 ,   Am m an ,   J o r d a n   E m ail: d . f r aih at@ iu . ed u . j o       1.   I NT RO D UCT I O N   C o d s m ells   ar s tr u ctu r es   in   th c o d t h at  in d icate   v io lati o n   o f   d esig n   r u les.  C o d e   s m ells   ar n o t   p r ev en tin g   th p r o g r am   f r o m   p r o v id in g   its   r eq u ir ed   f u n cti o n ality .   Ho wev er ,   th e y   in d ic ate  wea k n ess es  in   s o f twar d esig n .   C o d s m ells   m ay   in cr ea s th e   r is k   o f   s o f t war f ailu r e.   T h e   ex is ten ce   o f   co d e   s m ells   m ay   g iv s ig n   ab o u wid er   d esig n   p r o b lem s ,   an d   th ey   af f ec th e   s o f twar u n d e r s tan d ab ilit y   an d   ef f ec tiv e n ess   [ 1 ] Sin ce   co d s m ells   p lay   k e y   r o le  in   s h ap in g   th q u ality   o f   s o f twar e,   s ev er al  s tu d ies  wer p r esen ted   to   d etec th eir   p r esen ce   in   t h s o u r ce   c o d e.   Fo wler   et  a l.   [ 2 ]   lis ted   2 2   co d s m ells   clas s if ied   in to   s ev e n   k ey   ca teg o r ies.  T h ese  ca teg o r ies  ar b lo ater s ,   o b ject - o r ie n ted   ab u s er s ,   ch an g p r ev e n ter s ,   d is p en s ab le ,   co u p ler s ,   en ca p s u l ates ,   an d   g en er al   ca teg o r y .   Fo r   e x am p le,   th s iz an d   v o lu m o f   th e   s m ell  in   b lo ater s   ca n   b u n m an a g ea b le   an d   o u o f   c o n tr o l.  T h is   s m ell  wo u ld   ap p ea r   in   m eth o d   with   to o   m a n y   lin es  o f   co d wh ich   h as  h ig h e r   co m p lex ity   th an   s h o r t   m eth o d s .   B lo ater s   wo u ld   ap p e ar   also   in   lar g class es  wh ich   in v o lv lo ts   o f   f ield s   an d   m et h o d s .   Ad d itio n ally ,   it wo u ld   ap p ea r   in   m eth o d s   wi th   lo n g   p ar am eter   lis t w h ich   in d icate s   s ig n   o f   co d s m ell.     I n   co n tr ast,  o b ject - o r ien ted   ab u s er s   in v o lv e   d if f e r en t b ad   u s o f   o b ject - o r ien ted   s tr u ct u r es to   d ev elo p   s o f twar p r o g r a m s .   Fo r   ex am p le,   th u s o f   s witch   s tatem e n will  lead   to   co d d u p licatio n .   I n   a d d itio n ,   th e   u s o f   tem p o r ar y   f ield   will  cr ea te  p r o b lem s   s in ce   th r ef e r en ce   o f   v ar ia b les  ca n n o b a cc ess ed   o u ts id it s   Evaluation Warning : The document was created with Spire.PDF for Python.
I n t J E lec  &   C o m p   E n g     I SS N:   2088 - 8 7 0 8         A   s ystema tic  r ev ie w   o n   s o ftw a r co d s mells   ( Mo h a mme d   Gh a z i A l - Ob eid a lla h )   3011   s co p e.   Av o id in g   th u s o f   l o n g   p a r am eter   lis ts   lead s   to   t h u s o f   tem p o r ar y   v ar iab le s .   An o th er   p o p u lar   ab u s o f   o b ject - o r ien ted   class es  is   th “Ref u s B eq u est”  wh er s u b   class   p ar tially   in h er its   its   p ar en t.  Hen ce ,   p ar t o f   t h p ar e n t m eth o d s   will b u s ed .   C h an g p r ev e n ter s   co d s m ells   m ak p r o g r am s   d if f icu lt to   ch an g e.   Hen ce ,   m ai n ten an ce   ta s k s   will b e   m o r d if f ic u lt.  T h k e y   r ea s o n   f o r   ch a n g p r e v en tio n   is   th ass ig n m en o f   m o r t h an   o n f u n ctio n /f ea tu r to   a   class   o r   m eth o d .   On o f   th m o s p o p u lar   f o r m s   o f   ch an g p r ev en ter s   is   d iv er g en ch an g wh ich   o cc u r s   wh e n   class   in v o lv es  lo o f   ir r ele v an m eth o d s .   An o th er   co d s m ell  r elate d   to   ch an g p r e v en ter s   is   th s h o tg u n   s u r g er y   wh e r ca s ca d in g   r elatio n s h ip   u s ed   to   c o n n ec cl ass es  to g eth er .   An y   ch an g e   in   o n class   will  p r o p a g ate  to   af f ec t a ll c lass es in   th s am ch ain .   C o n v er s ely ,   d is p en s ab le  c o d s m ells   ar u n n ec ess ar y   co d t h at  m u s b r em o v ed .   Fo r   ex a m p le,   co d e   m ay   co n tain   u s eless   class e s   ( lazy   class )   o r   u n n ec ess ar y   d a ta  f ield s   in   class   ( d ata   class ) .   Data   class es  ar e   u n ab le  to   u s th eir   f ield s   an d   r eq u ir e   o th er   class es  to   u s th ese  class es.  An o th er   f o r m   o f   d is p en s ab le   is   th e   co d d u p licatio n   wh er e   s im ilar   co d is   r ep ea te d   s ev er al  tim e s .   T h is   co d ca n   b r ep lace d   o r   u n if ied .   Sev er al  s tu d ies  wer p r esen ted   in   t h liter atu r e   to   a d d r ess   t h is s u es  r elate d   to   v ar io u s   ty p es  o f   c o d e   s m ells .   T h ese  i s s u es  co n ce r n   co d s m ell  d etec tio n   tech n iq u es,  co d s m ell  im p ac t,  co d e   s m ell  ca u s es,  an d   co d s m ell  ca talo g u e .   Hen ce ,   th er is   n ee d   to   a p p r aise  an d   s u m m ar ize  t h co llectiv f i n d in g s   an d   id e n tify   th latest  d ev elo p m en ts .   W h ile  ac k n o wled g in g   th e   v al u ab le  r e v iew  s tu d ies  co n d u cted   b y   p r e v io u s   r esear ch er s ,   it  s h o u ld   b n o t ed   th at  th is   s tu d y   f o llo ws  s y s tem atic  r ev iew  m eth o d o lo g y   an d   em p lo y s   a   r ig o r o u s   s elec tio n   an d   an aly s is   p r o ce s s   f o cu s in g   s p ec if ica lly   o n   th y ea r s   2 0 0 1   t o   2 0 2 3 .   T h tim ef r a m ch o s en   f o r   th r ev iew  r e f lects  th in ten tio n   to   ca p tu r th m o s r ec en d ev elo p m en ts   in   th e   f ield   o f   co d s m ell  d etec tio n ,   ac k n o wled g in g   th f ast - p ac ed   n atu r o f   r esear ch   ad v an ce s   d u r in g   th is   p er io d .   T h o b jectiv o f   th is   s tu d y   is   to   co m p lem e n p r e v i o u s   r ev iew  r esear ch   b y   e x am in in g   s tu d ies  co n d u cted   in   s u b s eq u en y ea r s   an d   ex ten d in g   th a n aly s is   to   in cl u d th e   p er io d   2 0 0 1   to   2 0 2 3 ,   th u s   h ig h lig h tin g   r ec en t   ad v a n ce s   an d   e m er g in g   tr en d s   in   co d s m ell  tech n iq u es.  T o   th b est  o f   th au th o r s   k n o wled g e,   th is   is   th f ir s s y s tem atic  r ev iew  p ap er   o n   co d s m ell  d etec ti o n   to   co v e r   th y ea r s   2 0 0 1   to   2 0 2 3 .   W r etr iev ed   s tu d ies  f r o m   r ep u tab le   p u b lis h in g   v en u es a n d   d atab as es,  an d   an aly ze   t h em   to   a n s wer   th f o llo win g   r esear ch   q u esti o n s :   R Q1 : Wh at  is   th d is tr ib u tio n   o f   s tu d ies p er   y e ar   in   th e   co n te x t o f   th c o d s m ell  d etec tio n ?   R Q2 : Wh at  ar th ca teg o r ies o f   p u b licatio n s   in clu d e d   in   th i s   r ev iew  r esear ch ?   R Q3 W h at  is   th d is tr ib u tio n   o f   th e   s tu d ies  in clu d e d   in   th is   r ev iew,   ca teg o r ized   b y   th e   em p lo y ed   co d e   s m ell  d etec tio n   tech n iq u e?   R Q4 W h at  p r o g r a m m in g   lan g u ag es  ar e m p lo y e d   b y   v ar io u s   co d s m ell  d etec tio n   tech n iq u es  in   th e   in clu d e d   s tu d ies?   R Q5 : Wh at  s u b ject  s y s tem s   w er u s ed   to   v alid ate  co d s m el l d etec tio n   tech n iq u es in   th in clu d ed   s tu d ies?    R Q6 : Wh at  co d s m ells   wer d etec ted   b y   v ar io u s   tech n iq u e s   in   th in clu d ed   s tu d ies?    R Q7 : Wh at  ev alu atio n   cr iter ia  wer u tili ze d   b y   c o d s m ell  d etec tio n   tech n iq u es in   th r ev i ewe d   s tu d ies?    W b eliev th at  s u m m ar izin g   liter atu r in   th co d s m ell  d etec tio n   f ield   will  o p e n   n e r esear ch   d ir ec tio n s   an d   will  h elp   th e   s o f twar en g in e er in g   co m m u n ity   to   a d d r ess   th n ec ess it y   o f   u tili zin g   n e w   d etec tio n   tech n iq u es.  T h r est  o f   th p ap er   is   o r g an ize d   a s   f o llo ws:   s ec tio n   2   p r esen ts   p r ev io u s   wo r k   i n   s u r v ey in g   co d e   s m ells   an d   r elate d   liter atu r e.   Sectio n   3   p r o v id es  an   o v er v iew  o f   t h t o p ic,   h i g h lig h ts   th e   im p ac ts   o f   co d s m ells   an d   p r o v id es  an   o v er v iew  o f   c o d s m ell  d etec tio n   tech n iq u es.  R e s ea r ch   m eth o d o lo g y   is   p r esen ted   in   s ec tio n   4 th a n aly s is   an d   r esu lts   ar p r esen ted   in   s ec tio n   5 .   T h p ap er   co n clu d es  in   s ec tio n   6 .   Fin ally ,   av en u es f o r   f u tu r wo r k   ar s u g g ested   in   s ec tio n   7 .       2.   RE L AT E WO RK   Sev er al  s y s tem atic  liter atu r r ev iews  wer p r esen ted   in   th liter atu r e.   All  th ese  r ev iews  f o cu s ed   o n   co m p ar in g   co d e   s m ell  d etec tio n   ap p r o ac h es  in   te r m s   o f   d i f f er en cr iter ia.   O u r   f in d in g s   in   th is   r ev iew  ar e   co m p r eh e n s iv e,   co n s is ten t,  an d   co m p lem e n t th co n clu s io n s   p r esen ted   b y   o th e r   s tu d ies.   T h s u r v ey   s tu d y   c o n d u cted   b y   R o y   a n d   C o r d y   [ 3 ]   p r esen ted   th s tate  o f   th e   ar in   cl o n d etec tio n   r esear ch .   T h s u r v ey   p r o v i d es  v iew  o f   th ex is tin g   clo n tax o n o m ies,  d etec tio n   ap p r o ac h es  an d   ex p er im en tal  e v alu atio n s   o f   clo n d etec tio n   to o ls .   Ad d itio n a lly ,   Fo n tan et  a l.   [ 4 ]   p r esen te d   an   ex p er im en tal   ev alu atio n   o f   s ix   co d e   s m ell  d etec tio n   to o ls .   T h e   k ey   d if f er en ce s   b etwe en   th ad d r ess ed   to o ls   wer h ig h lig h ted   in   th e v alu atio n .   T h r ev iew  o f   R aso o an d   Ar s h ad   [ 5 ]   p r esen ted   an   u p - to - d ate  r ev iew  o n   th s tate - of - th e - ar t   tech n iq u es  an d   to o ls   u s ed   f o r   m in in g   c o d s m ells   f r o m   th s o u r ce   co d o f   d if f e r en s o f twar ap p licatio n s .   T h ey   class if ied   s elec ted   co d s m ell  d etec tio n   tech n iq u es  an d   to o ls   b ased   o n   th eir   d etec tio n   m eth o d s   an d   an aly ze d   th e   r esu lts   o f   t h s elec ted   tech n iq u es.  R aso o an d   Ar s h ad   f o c u s ed   o n   Fo wler s   2 2   co d s m ells   [ 2 ] [ 5 ] .   Sab ir   et  a l.   [ 6 ]   r ev iewe d   7 8   p r im ar y   s tu d ies  p u b lis h e d   f r o m   J an u a r y   2 0 0 0   till   Dec em b er   2 0 1 7 .   T h e   r ev iew  o f   Sab i r   et  a l.   f o c u s ed   o n   th co d s m ell  d etec tio n   tech n iq u es  u s ed   in   o b ject  a n d   s er v ice -   o r ien te d   p ar ad ig m s .   Z h an g   et  a l.   [ 7 ]   r e v iewe d   3 9   s tu d ies  r elate d   to   c o d s m ells   d etec tio n .   T h eir   r e s ea r ch   f o cu s ed   o n   Evaluation Warning : The document was created with Spire.PDF for Python.
                      I SS N :   2 0 8 8 - 8 7 0 8   I n t J E lec  &   C o m p   E n g ,   Vo l.   15 ,   No .   3 J u n e   20 25 :   3 0 1 0 - 3 0 2 7   3012   “Du p licated   C o d e”   w h er ea s   s o m co d e   b ad   s m ells   s u ch   as  “M ess ag C h ain s ”  r ec eiv ed   litt le  atten tio n .   Z h an g   et  a l.   s tu d y   s h o wed   th at  v er y   f ew  s tu d ies  r ep o r th im p ac o f   u s in g   co d b ad   s m ells .   I n s tead ,   m o s s tu d ies f o cu s ed   o n   d ev elo p in g   to o ls   an d   m eth o d s   to   a u to m at ically   d etec t c o d b a d   s m ells .   T h liter atu r r ev iew  o f   So b r i n h o   et  a l.   [ 8 ]   s h o wed   th at  ev en   th o u g h   b ad   s m ells   o f   d if f er en ty p es  ar s tu d ied   to g eth e r ,   o n ly   s m all  n u m b er   o f   s tu d ies ex p l o r ed   th r elatio n s   b etwe en   th em .   T h ey   s u g g ested   th at   th er ar a d d itio n al  p o ten tial   r elatio n s   th at  war r an t   f u r t h e r   in v esti g atio n .   So b r in h o   et  a l.   also   n o ted   th at  r esear ch er s   h av d if f er e n lev els  o f   in ter est,  s o m o f   th em   p u b lis h in g   s p o r a d ically   an d   o th er s   co n tin u o u s ly .   Fu r th er ,   th e   r e v iew  o f   So b r in h o   et  a l.   f o u n d   th at  t h co m m u n ities   s tu d y in g   d u p licated   co d an d   o th er   ty p es o f   b ad   s m ells   ar lar g ely   s ep ar ated .   Fin ally ,   So b r in h o   et  a l.   o b s er v ed   th at  s o m e   v en u es  ar m o r lik ely   t o   d is s em in ate  k n o wled g o n   d u p licate  co d ( wh ich   o f ten   is   lis ted   as  co n f er e n ce   to p ic  o n   its   o wn ) ,   wh ile  o th er s   h av a   m o r b alan ce d   d is tr ib u tio n   am o n g   o th e r   s m ells .   T h s tu d y   o f   Misb h au d d i n   an d   Als h ay eb   [ 9 ]   p r o v id ed   an   o v er v iew  o f   ex is tin g   r esear ch   in   th f ield   o f   m o d el  r ef ac to r i n g .   to tal  o f   3 , 2 9 5   ar ticles,  r elate d   to   t h f ield   o f   u n if ied   m o d elin g   lan g u ag ( UM L )   m o d el   r ef ac to r in g ,   wer ex tr ac ted   f r o m   well - k n o wn   elec tr o n ic  d at ab ases .   m u lti - s tag s elec tio n   p r o ce s s   was  u s ed   to   en s u r p r o p er   i n clu s io n   o f   r elev an s tu d ies  f o r   r e v iew  an d   an aly s is .   Nin ety - f o u r   p r i m ar y   s tu d ies  wer ev en tu ally   s elec ted   a n d   an aly z ed .   T h e   r esu lts   s h o wed   th at  a   f ew  q u ality   tec h n iq u es  a n d   ap p r o ac h es  h a v b ee n   p r o p o s ed   in   th is   ar ea ,   b u t it  s till   h as so m im p o r tan o p en   is s u es a n d   lim itatio n s   to   b a d d r e s s ed   in   f u tu r e.   AlDallal  [ 1 0 ]   f o cu s ed   o n   th id en tific atio n   o f   r e f ac to r in g   o p p o r tu n ities   wh er m o r e   atten tio n   r ef ac to r in g   o p p o r tu n ities   ar ex p lo r ed .   T h eir   r esu lts   s h o wed   ex tr ac class ”  an d   “m o v m eth o d ”  wer f o u n d   to   b t h m o s f r eq u e n tly   c o n s id er ed   r ef ac to r in g   ac tiv ities .   T h r esu lts   s h o th at   r esear c h er s   u s s ix   p r im ar y   ex is tin g   ap p r o ac h es  to   id e n tify   r ef ac to r in g   o p p o r tu n ities   an d   s ix   ap p r o ac h es  to   em p ir ically   ev alu ate  th e   id en tific atio n   tech n i q u es.   Aze em   et  a l.   [ 1 1 ]   p r esen ted   s y s tem atic  liter atu r r ev iew  s tu d y   o n   m ac h in lear n i n g   tech n iq u es  f o r   co d s m ell  d etec tio n .   Aze em   et  a l.   an aly ze d   p ap er s   p u b lis h ed   b etwe en   2 0 0 0   an d   2 0 1 7 .   T h r esu lts   s h o wed   th at  g o d   class ,   lo n g   m eth o d ,   f u n ctio n al  d ec o m p o s itio n ,   an d   s p ag h etti  co d h av b ee n   h e av ily   co n s id er ed   in   th liter atu r e.   Dec is io n   tr ee s   an d   s u p p o r v ec to r   m ac h in es   ar th m o s co m m o n ly   u s e d   m ac h in lear n in g   alg o r ith m s   f o r   co d e   s m ell  d etec tio n .   T h r ev iew  p ap er   p r esen ted   b y   Ab u Hass an   et  a l.   [ 1 2 ]   id en tifie d   1 4 5   s tu d ies  r elate d   to   s m ell   d etec tio n   in   s o f twar e   d esig n   a n d   co d e.   Ab u Hass an   et  a l.   ad d r ess ed   s ev er al  q u esti o n s   r elate d   to   th a n aly s is   o f   th ex is tin g   s m ell  d etec tio n   t ec h n iq u es  in   te r m s   o f   a b s tr ac tio n   lev el  ( d esig n   o r   co d e ) ,   ta r g eted   s m ells ,   u s ed   m etr ics,  im p lem en tatio n ,   a n d   v alid atio n .   T h r esu lts   s h o wed   th at  5 7 o f   t h s tu d ie s   d id   n o u s an y   p er f o r m an ce   m ea s u r es,  4 1 % o f   th em   o m itted   d etails o n   th t ar g eted   p r o g r a m m in g   la n g u a g e,   an d   th d etec tio n   tech n iq u es we r n o t v alid ated   in   1 4 % o f   t h ese  s tu d ies.   T h s tu d y   o f   R eis  et  a l.   [ 1 3 ]   aim ed   to   id en tif y   th m ai n   co d s m ells   d etec tio n   tech n iq u e s   an d   to o ls   d is cu s s ed   in   th liter atu r e,   an d   to   an aly ze   to   w h ich   ex ten v is u al  tech n iq u es h a v b ee n   ap p li ed   to   s u p p o r t c o d e   s m ell  d etec tio n .   T h r esu lts   s h o wed   th at  m o s u s ed   ap p r o a ch es  to   co d s m ells   d etec tio n   ar s ea r ch - b ased   ( 3 0 . 1 %),   m etr ic - b ased   ( 2 4 . 1 %),   an d   s y m p to m - b ased   ap p r o ac h es  ( 1 9 . 3 %).   Mo s o f   th r ev iewe d   s tu d ies   ( 8 3 . 1 %)   u s ed   o p e n - s o u r ce   s o f twar e,   with   th e   jav a   lan g u a g o cc u p y i n g   t h f i r s p o s itio n   ( 7 7 . 1 %).   I n   ter m s   o f   co d s m ells ,   g o d   class   ( 5 1 . 8 %),   f ea tu r e n v y   ( 3 3 . 7 %),   a n d   lo n g   m eth o d   ( 2 6 . 5 %)  a r th m o s t c o v er ed   o n es.       3.   B ACK G RO UND   T h is   s ec tio n   p r o v id es  co m p r e h en s iv r esear ch   b ac k g r o u n d   r elate d   to   co d e   s m ells   an d   p r esen ts   th ca u s es  o f   co d s m ells ,   im p ac t   o f   co d s m ells ,   an d   k e y   co n ce p ts   r elev an to   th r esear ch   to p ic.   R esear ch er s   f o cu s ed   o n   in v esti g atin g   th co n s eq u en ce s   o f   co d s m ells   an d   h o th ese  co d s m ells   ca n   b d etec ted   to   ad d r ess   th eir   im p ac o n   s o f tw ar q u ality .   B ased   o n   th a v ai lab le  liter atu r e,   th k ey   ca u s es  o f   co d s m ells   ca n   b s u m m ar ized   as f o llo ws:   a.   Desig n   p atter n s   im p ac t:  th r elatio n s h ip   b etwe en   d esig n   p atter n s   an d   co d s m ells   is   s til n o wel l   in v esti g ated .   T h im p lem en ta tio n   o f   d esig n   p atter n   in s tan c es  in   th s o u r ce   c o d lead s   t o   m o r e   co u p led   class es  an d   in cr ea s th n u m b er   o f   class es.  So m s tu d ies  s u g g est  th at  d esig n   p atter n s ,   in   g en er al,   r e d u ce   th ch an ce   o f   co d s m ells .   b.   So f twar d ev elo p e r s   ex p er ie n ce th s k ills   an d   th ex p e r ien ce   o f   s o f twar d e v elo p e r s   p lay   r o le  i n   im p lem en tin g   p r o g r am   th at   s u f f er s   f r o m   co d s m ells .   T h s tu d y   o f   [ 1 4 ]   r e v ea ls   th at  3 2 o f   s o f twar d ev elo p er s   ar e   awa r ab o u t c o d s m ells .   c.   L ac k   o f   c o d e   s m ell  d etec tio n   t o o ls   d u r in g   s o f twar e   d ev elo p m en t:  m o s o f   s o f twar d ev elo p m en t o o ls   an d   f r am ewo r k s   ar n o t   s u p p o r tin g   au to m atic  co d s m ell  d etec tio n   d u r in g   th e   d e v elo p m e n t p r o ce s s .   T h s tu d y   o f   [ 1 4 ]   an d   [ 1 5 ]   r ev ea th at  th d ev elo p e r s   f o cu s   o n   th f u n ctio n ality   o f   th e   s o f twar an d   ig n o r th e   s ig n s   o f   co d e   s m ells   d u r in g   t h d ev e lo p m en t p r o ce s s .   Evaluation Warning : The document was created with Spire.PDF for Python.
I n t J E lec  &   C o m p   E n g     I SS N:   2088 - 8 7 0 8         A   s ystema tic  r ev ie w   o n   s o ftw a r co d s mells   ( Mo h a mme d   Gh a z i A l - Ob eid a lla h )   3013   Sev er al  s tu d ies  h av e   b ee n   p r esen ted   in   t h liter atu r e   to   in v esti g ate  th im p ac t   o f   co d s m ells   o n   s o f twar p r o g r am s   [ 1 6 ] [ 2 5 ] .   T h ese  s tu d ies  m ain ly   s u m m ar ized   th e   im p ac o f   c o d s m ell  in to   two   k ey   co n s eq u en ce s .   T h f ir s co n s eq u en ce   is   th in cr ea s o f   c o d b u g s   o r   d ef ec ts   in   th s o f twar e.   C lo n in g   o r   d u p licatin g   co d e   in cr ea s es  th e   ch an ce s   o f   s o f twar b u g s   [ 1 7 ] .   Fo r   ex am p le,   t h s tu d y   o f   [ 2 3 ]   s u g g ested   t h at   co d d u p licatio n   d id   n o p la y   k ey   r o le  i n   p r o d u cin g   b u g s   in   t h s o f twar e.   T h e   s tu d y   al s o   claim   th at   co d e   clo n in g   d o es  n o d ev elo p   n e b u g s .   T h s tu d y   o f   L i   an d   Sh atn awi   [ 2 0 ]   id en tifie d   th e   r elatio n s h ip   b etwe en   co d s m ells   an d   class   er r o r   p r o b a b ilit y .   T h e   s tu d y   c o n cl u d ed   th at   s h o tg u n   s u r g er y ,   g o d   class ,   an d   g o d   m eth o d s   h av e   n eg ativ e   im p a ct  o n   th class   er r o r   p r o b ab ilit y .   Ma in tain in g   s o f twar in v o lv e s   ef f o r ts   to   ad d   n ew  f u n ctio n s   o r   f ea tu r es  an d   m o d if y in g   t h co d to   f u lf il  n ew  r eq u ir em en ts .   T h e   s tu d y   o f   [ 1 6 ]   s h o wed   h o w   th lack   o f   d esig n   h e u r is tics   af f ec ts   s o f twar m ain tain ab ilit y .   T h s tu d y   also   co m p ar ed   b etwe en   two   v er s io n s   o f   an   im p lem en tatio n   ( w ith   g o d   class   s m el l   an d   with o u g o d   class   s m ell ) .   T h s tu d y   co n cl u d ed   th at  h i g h   co h esio n   an d   lo co u p lin g   in   s o f twar p r o g r a m s   af f ec t th m ain tain a b ilit y   ef f o r ts .   T h s ec o n d   im p ac is   th in cr ea s in   th m ain ten a n ce   ef f o r t .   Sev er al  h y p o th eses   wer in tr o d u ce d   to   r elate   th im p ac o f   co d s m ells   wi th   s o f twar ch an g ea b ilit y .   T h co n tin u o u s   m o d if icati o n s   o f   th p r o g r am   in cr ea s th c o d e   s m ell.   Sm ell  class es  ev o lv ed   m o r e   f r eq u e n tly   co m p ar ed   to   n o n - s m ell  cl ass es.  T h s tu d y   o f   [ 1 7 ]   in v esti g ated   th im p ac o f   co d s m ells   o n   s o f twar ch an g p r o n en ess .   T h s tu d y   f o u n d   th at  lo n g   class   an d   Me s s ag C h ain   a r th e   m o s f r eq u e n s m ells   in   s ev er al   r elea s es  o f   E clip s a n d   Azu r eu s ,   an d   ea ch   n ew   r elea s in tr o d u ce s   s o m n ew  s m ells   wh ile  r em o v in g   t h o ld e r   s m ells .   T h s tu d y   o f   [ 2 4 ]   p r esen ted   an   em p ir ical  s tu d y   th at  in v esti g ated   in ter - s m ell  r elatio n s   an d   th eir   ef f ec ts   o n   th in cid e n ce   o f   m a in ten an ce   p r o b lem s .   B y   an aly zin g   h o p r o f ess io n al  d e v elo p er s   co n d u cted   task s   o n   f o u r   d if f e r en s y s tem s ,   t h s tu d y   f o u n d   em p ir ical  e v id en ce   th at   ce r tain   i n ter - s m ell  r elatio n s   wer e   ass o ciate d   with   p r o b lem s   d u r in g   m ai n ten an ce .   An o th e r   s tu d y   o f   [ 2 5 ]   in v esti g ates  th e f f ec ts   o f   co d s m ells   at   th ac tiv ity   lev el.   Six   p r o f e s s io n al  d ev elo p er s   wer h ir ed   to   p er f o r m   th r ee   m ain ten a n ce   task s   o n   f o u r   f u n ctio n ally   eq u iv alen J av Sy s tem s .   E ac h   d ev elo p er   p er f o r m s   two   m ain ten an ce   task s .   T h lo g s   o f   th e   d ev elo p er s   wer e   tr ac ed ,   a n d   a n   an n o tatio n   ap p r o ac h   was  d e f in ed   to   ass ess   if   co d s m ells   im p ac m ain ten a n ce   ac tiv ities .   T h s tu d y   s h o wed   t h at  d if f er e n co d s m ells   af f ec d if f er en ac tiv ity   ef f o r t.  T h tech n iq u es  u s ed   to   d etec co d e   s m ells   in   th e   liter atu r e   [ 3 ] [ 1 2 ] [ 1 3 ]   ca n   b e   g r o u p ed   in to   f o u r   k ey   ca teg o r ies.  C o d s m ells   d etec ted   b y   d if f e r en d etec tio n   ap p r o ac h es  ar e   p r esen ted   i n   T ab le  1 .   T h d etec tio n   tech n iq u es  ar g r o u p ed   b ased   o n   th e   u s ed   d etec tio n   m eth o d   in to   f o u r   k e y   ca teg o r ies  [ 2 6 ] ,   [ 2 7 ] :   a.   Me tr ics - b ased   ap p r o ac h es  u s s o f twar m etr ics  s u ch   as  lin es  o f   co d e” ,   “c o u p lin g   b etwe en   o b jects,  “c o h esio n ”,   a n d   “d e p th   o f   in h er itan ce   tr ee ”  to   d etec co d e   s m ells   b ased   o n   ce r tain   th r esh o ld   v alu es.  T h s elec tio n   o f   th r esh o ld   v alu es   af f ec ts   th o v er all  ac cu r ac y   o f   th d etec tio n   p r o ce s s .   So f twar m etr ics   h elp ed   to   d etec th e   f o llo win g   co d s m ells r ef u s ed   b e q u e s t,  d ata  clu m p s ,   s h o tg u n   s u r g er y ,   lar g class ,   lo n g   m eth o d ,   an d   lazy   class .   Sin ce   th er is   n o   u n i f ied   b en c h m ar k   to   s et  th th r esh o ld   v alu es,  th is   ap p r o ac h   is   s till   n o t p r ac tical,   in   ter m s   o f   ac cu r ac y ,   to   d etec t c o d s m e lls .     b.   Sear ch - b ased   ap p r o ac h es:  th ese  ap p r o ac h es  u s d if f er e n s ea r ch   alg o r ith m s   to   d etec c o d s m ells   in   th s o u r ce   co d e.   Heu r is tic  s ea r ch   alg o r ith m s   wer u s ed   to   ex tr ac r u les  th at  ca n   b u s ed   d u r in g   th s ea r ch   p r o ce s s .   c.   R u le  b ased   ap p r o ac h es:  r u le - b ased   s y s tem s   co n v er t h p r o b lem   in to   s et  o f   co n d itio n   ac tio n   r u les.  I f - th en   r u les  ar wid ely   u s ed   to   f ee d   an   in f er en ce   en g i n eq u ip p ed   with   wo r k in g   k n o w led g ab o u th p r o b lem .   So f twar m etr ics  wer u s ed   to   ca p tu r k n o wled g an d   th av ailab le  in f o r m a tio n .   Mo r eo v er ,   r u le - b ased   a p p r o ac h es  d escr ib co d s m ell  s y m p to m s   an d   p r o d u ce   r u les  th at  will  b e   tr an s lated   in to   d etec tio n   alg o r it h m s   to   id en tif y   co d s m ells .   d.   Ma ch in lear n i n g   ap p r o ac h es:   th ese  ap p r o ac h es  u s a   s et  o f   p r ed icto r s   f o r   m ac h in e   lear n in g   class if ier   to   r ea ch   d ec is io n .   Ma ch in e   lear n in g   a p p r o ac h es  d ep en d   o n   th q u ality   o f   a   b alan ce d   d at aset  an d   o n   th e   q u ality   o f   th tr ain in g   m o d el.   Fo r   ex am p le,   to   d etec co d s m ells ,   th tr ain in g   m o d el  ca n   lear n   f r o m   s tan d ar d   d esig n   p r ac tices a n d   co m p ar ed   to   d e v elo p er   co d in g   p r ac tice  [ 1 7 ] .       T ab le  1 .   C ateg o r ies o f   co d s m ells   C a t e g o r y   C o d e   sme l l   B l o a t e r s   Lo n g   p a r a me t e r   l i s t ,   l o n g   met h o d ,   l a r g e   c l a ss,  d a t a   c l u m p s,   a n d   p r i mi t i v e   o b sess i o n   O b j e c t   o r i e n t e d   a b u s e r s   Te mp o r a r y   f i e l d s,   sw i t c h   st a t e me n t ,   r e f u se d   b e q u e s t ,   p a r a l l e l   i n h e r i t a n c e   h i e r a r c h i e s ,   a n d   a l t e r n a t i v e   c l a ss e s w i t h   d i f f e r e n t   i n t e r f a c e s   C h a n g e   p r e v e n t e r s   S h o t g u n   s u r g e r y ,   a n d   d i v e r g e n t   c h a n g e   D i sp e n s a b l e   D a t a   c l a ss,   l a z y   c l a ss ,   d u p l i c a t e   c o d e ,   d e a d   c o d e ,   s p e c u l a t i v e   g e n e r a l i t y           Evaluation Warning : The document was created with Spire.PDF for Python.
                      I SS N :   2 0 8 8 - 8 7 0 8   I n t J E lec  &   C o m p   E n g ,   Vo l.   15 ,   No .   3 J u n e   20 25 :   3 0 1 0 - 3 0 2 7   3014   4.   M E T H O D   T h is   s y s tem atic  r ev iew  r e s e ar ch   aim s   to   co n d u ct  f ai r   an d   co m p r eh en s iv ev alu atio n   an d   in ter p r etatio n   o f   av ailab le  r esear ch   p u b lis h ed   f r o m   2 0 0 1   to   2 0 2 3   in   th e   f ield   o f   c o d e   s m ell  d etec tio n .   T o   th e   b est  o f   o u r   k n o wled g e,   less   th an   1 0   s tu d ies  wer p u b lis h ed   b ef o r 2 0 0 1   th at  f o cu s   o n   s o f twar co d s m ell.   T h g u id elin es  s u g g ested   b y   [ 1 8 ] [ 2 8 ] ,   a n d   [ 2 9 ] [ 3 1 ]   wer e   f o llo wed   in   u n d er tak i n g   th is   s y s tem atic  r ev iew.   T h f ir s p h ase  o f   th r esear ch   in v o lv ed   p lan n i n g   th r e v iew,   wh ich   was  f u r th er   d iv id ed   in to   d eter m in in g   th e   n ec ess ity   f o r   r ev iew ,   d ev elo p in g   th r esear ch   q u esti o n s ,   a n d   d escr ib in g   th s ea r ch   ap p r o ac h   to   f in d   r elev a n r esear ch   p ap e r s .   T h s ec o n d   p h ase  in v o lv e d   co n d u ctin g   th r ev iew,   wh ich   was  s u b d i v id ed   in to   d e f in in g   t h ap p r o p r iate  r esear ch   s elec tio n   cr iter ia,   in cl u d in g   th in cl u s io n /ex clu s io n   cr iter ia,   d ev e lo p in g   t h q u ality   ev alu atio n   r u les  to   f ilter   r esear ch   p u b licatio n s ,   co n s tr u ctin g   th d ata  e x tr ac tio n   s tr ateg y   t o   ad d r ess   th s tu d y   o b jectiv es,  an d   th e n   s y n t h esizin g   th e   d ata   tak en   f r o m   t h p u b licatio n s .   T h e   th ir d   p h ase  o f   th e   r esear ch   was   th r ep o r tin g   p h ase.       4 . 1   P l a nn ing   ph a s e   T h ar ea   o f   co d s m ell  r ese ar ch   is   ex p er ien cin g   r a p id   g r o wth ,   an d   th e r ar e   s ev er al   co d s m ell  d etec tio n   tech n iq u es  p r esen te d   in   th liter atu r e.   T h er ef o r e,   th er e   is   n ee d   to   s u m m ar iz th f in d in g s   an d   o u tco m es  o f   p r ev io u s   r esear ch   an d   id en tif y   th latest  d ev elo p m en ts   in   th f ield .   T h s y n t h esized   in f o r m atio n   will  h elp   in   th id en tific atio n   o f   r esear ch   p atter n s   an d   th d e v elo p m en o f   s tatis tic s   th at  wi ll  in   tu r n   s h ed   lig h o n   lim itatio n s   an d   g ap s   in   th liter atu r e,   in   ad d itio n   to   c u r r e n an d   f u tu r d ir ec tio n s   o f   r esear ch .   Acc o r d i n g ly ,   th is   r ev iew  will u ltima tely   p r o v id an s wer s   to   th f o llo win g   r esear ch   q u esti o n s :   R Q1 : Wh at  is   th d is tr ib u tio n   o f   s tu d ies p er   y e ar   in   th e   co n te x t o f   th c o d s m ell  d etec tio n ?   R Q2 : Wh at  ar th ca teg o r ies o f   p u b licatio n s   in clu d e d   in   th i s   r ev iew  r esear ch ?   R Q3 W h at  is   th d is tr ib u tio n   o f   th e   s tu d ies  in clu d e d   in   th is   r ev iew,   ca teg o r ized   b y   th e   em p lo y ed   co d e   s m ell  d etec tio n   tech n iq u e?   R Q4 W h at  p r o g r a m m in g   lan g u ag es  ar e m p lo y e d   b y   v ar io u s   co d s m ell  d etec tio n   tech n iq u es  in   th e   in clu d e d   s tu d ies?   R Q5 : Wh at  s u b ject  s y s tem s   w er u s ed   to   v alid ate  co d s m el l d etec tio n   tech n iq u es in   th in clu d ed   s tu d ies?   R Q6 : Wh at  co d s m ells   wer d etec ted   b y   v ar io u s   tech n iq u e s   in   th in clu d ed   s tu d ies?   Ou r   s ea r ch   p r o ce s s   is   co m p r eh en s iv an d   co v e r s   th wh o le  s p ec tr u m   r elate d   to   th ar ea   o f   th co d s m ell  d etec tio n   tech n iq u es.  T h s ea r ch   q u er ies u s ed   t o   r etr iev t h r elate d   p r im ar y   s tu d ies ar as  f o llo ws:   a.   Sear ch   Qu er y   1 co d e   AND  s m ells ;   b.   Sear ch   Qu er y   2 b ad   AND  s m ells   c.   Sear ch   Qu er y   3 an tip atter n ;   d.   Sear ch   Qu er y   4 : ( d etec OR   id en tify   OR   r ec o v er )   AND  s m ells .   W ap p lied   o u r   ad o p ted   s e ar ch   q u er ies  to   well - k n o w n   r ep u ta b le  s cien tific   d ata b ases .   T h ese  d atab ases   in clu d Sp r in g er ,   AC M,   I E E E ,   s cien ce   d ir ec t ,   an d   Go o g le  Sch o lar .   B ased   o n   th s ea r ch   ter m s   m en tio n ed   ab o v an d   u s in g   th s p ec if ied   p e r io d   ( 2 0 0 1   to   2 0 2 3 ) ,   6 8 9   p u b licatio n s   wer in i tially   r etr iev ed .   1 9 3   wer id en tifie d   as  d u p licates  am o n g   th d if f er en lib r ar ies  an d   r em o v ed .   Hen ce ,   4 9 6   p u b licatio n s   wer k ep t   f o r   th n ex t p h ase.     4 . 2 .     Rev iew  ph a s   Dif f er en t   ap p r o ac h es  h av b e en   in tr o d u ce d   b y   r esear ch er s   to   d etec co d s m ells   at   th s o u r ce   co d e   lev el.   T o   s elec th e   p r im a r y   s tu d ies  th at  will  b e   in clu d ed   in   th is   r ev iew,   s ev er al   in clu s io n   an d   ex cl u s io n   cr iter ia  wer id en tifie d .   T h e   in clu s io n   cr iter ia  ca n   b s u m m ar ized   as  f o llo ws:   i)   P u b licatio n s   m u s b p u b lis h ed   f r o m   2 0 0 1   till   Au g u s t 2 0 2 3 ii)  Pu b licatio n s   m u s b p u b lis h ed   in   jo u r n al,   co n f er en ce   p r o ce e d in g ,   b o o k   ch ap te r ,   wo r k s h o p   o r   s y m p o s iu m ;   iii)  Pu b licatio n s   m u s p r o p o s e/d is cu s s   at  lea s o n co d s m ell  d etec tio n   tech n iq u e ; a n d   iv )   E x is ten ce   o f   p r ac tical  e x p er im e n ts   at  th co d lev el.   W ex clu d ed   th f o ll o win g   s tu d ies:   i)   Pu b licatio n s   th at  ar wr itten   in   lan g u a g o th er   t h an   E n g lis h ;   ii)  Pu b licatio n s   th at  th eir   m ain   f o cu s   is   n o co d e   s m ells   d etec tio n ;   iii)  Pu b licatio n s   th at  ar b o o k s   o r   th eses ;   iv )   Pu b licatio n s   t h at  ar e   p u b lis h ed   as  r ep o r ts ;   an d   v )   Pu b lic atio n s   th at  p r o p o s co d e   s m ell  d etec tio n   b ased   o n   th d esig n   lev el  n o t a t th c o d lev el.     4 . 3 .     Ana ly s is   ph a s   T h co m p leted   co m p ilatio n   o f   ar ticles  s elec ted   f o r   c o m p r e h en s iv ev alu atio n   u n d er wen t   r ig o r o u s   ex am in atio n   to   ex t r ac in f o r m atio n   ad d r ess in g   th p r ev i o u s ly   s tated   r esear ch   in q u i r ies.  I n itially ,   we  s tar ted   with   6 8 9   ar ticles.  Af ter   r em o v in g   d u p licates  an d   ap p ly in g   titl a n d   a b s tr ac f i lter s ,   as  well  as   in clu s io n /ex clu s io n   cr iter ia,   we  r ev iewe d   to tal  o f   1 4 0   ar ticles  in   f u ll.  Ultim ately ,   1 1 6   ar ticles  m et  o u r   cr iter ia,   s p ec if ically   f o c u s in g   o n   t h ex is ten ce   o f   p r ac tical  ex p er im en ts   at  t h co d le v el.   to tal  o f   1 1 6   p r im ar y   s tu d ies  wer in clu d e d   in   th is   r e v iew.   W p er f o r m ed   m an u al  v alid atio n   o f   th e   r etr iev ed   s tu d ies  to   Evaluation Warning : The document was created with Spire.PDF for Python.
I n t J E lec  &   C o m p   E n g     I SS N:   2088 - 8 7 0 8         A   s ystema tic  r ev ie w   o n   s o ftw a r co d s mells   ( Mo h a mme d   Gh a z i A l - Ob eid a lla h )   3015   en s u r th at  th e   r etr iev e d   s tu d ies  r elate d   to   o u r   p r o p o s ed   i n clu s io n   an d   ex clu s io n   cr iter i a.   T h f i n d in g s   a r d etailed   in   th r esu lts   s ec tio n ,   an d   th s tep s   in   th is   s tag ar i llu s tr ated   in   Fig u r 1 .           Fig u r 1 .   T h s eq u en ce   o f   ac ti o n s   tak en   to   c h o o s th e   p u b licatio n s       5.   RE SU L T S AN D I SCU SS I O   T h th ir d   s tag o f   th is   s y s tem atic  r ev iew  s tu d y   in v o lv ed   p r esen tin g   th r esu lts .   T h f i n al  lis o f   r esear ch   ar ticles  co m p r is ed   to tal  o f   1 1 6   p u b licatio n s   [ 3 2] [ 1 4 7 ] .   co m p r eh e n s iv an d   t h o r o u g h   ex am in atio n   o f   th ese  p ap er s   w as  co n d u cted   to   e x tr ac r elev a n in f o r m atio n   a d d r ess in g   th e   r esear ch   q u esti o n s .   T h ex tr ac ted   d ata  wer q u an titativ ely   d escr ib ed ,   f ac ilit atin g   th id en tific atio n   o f   p atter n s   in   s tu d ies   co n d u cte d   b etwe en   2 0 0 1   a n d   2 0 2 3 .   Ad d itio n ally ,   th e   an aly s is   u n v eiled   b o th   c o m m o n alities   an d   d is cr ep a n cies  am o n g   t h s tu d ies.     R Q1 :   Wha t is the d is t r ib uti o n   o f   s tud ies p er y ea r   in the c o n tex t o f   the c o d s m ell  d etec tio n?   T h r etr ie v ed   p r im ar y   s tu d ies   in v o lv e   p ap e r s   f r o m   j o u r n als,  co n f er e n ce   p r o ce ed i n g s ,   b o o k   ch ap ter s ,   wo r k s h o p s ,   an d   s y m p o s iu m s .   T h n u m b er   o f   in clu d ed   p r im ar y   s tu d ies  p e r   y ea r   is   p r esen t ed   in   Fig u r 2 .   As  ca n   b e   s ee n   f r o m   Fig u r 2 ,   m o s o f   th e   r ec en t   p u b licatio n s   ar J o u r n al   p ap e r s .   I n   2 0 1 7 ,   1 1   co n f er en ce   p ap e r s   wer p u b lis h ed   r elate d   to   co d s m ell  d etec tio n .   W co u ld   n o f in d   an y   p a p er s   r elate d   to   c o d s m ell  d etec tio n   p u b lis h ed   in   2 0 0 3 .     R Q2 :   Wha t a r the c a teg o r ies   o f   p ub lica tio ns   inclu d ed   in thi s   r ev ie w   r e s ea r ch?   Fig u r 3   s h o ws  th ty p e   o f   p u b licatio n s   in clu d e d   in   th is   r ev iew.   As  Fig u r 3   s h o ws,  m o s o f   th e   in clu d ed   p r im ar y   s tu d ies  a r c o n f er e n ce   p r o ce ed in g s   ( 5 0 o f   th e   p r im a r y   s tu d ies,  with   a   to tal  o f   5 8   s tu d ies).   W g r o u p ed   th p r im ar y   s tu d i es  p u b lis h ed   in   wo r k s h o p s ,   b o o k   ch a p ter s ,   an d   s y m p o s iu m s   in to   o n ca teg o r y   Evaluation Warning : The document was created with Spire.PDF for Python.
                      I SS N :   2 0 8 8 - 8 7 0 8   I n t J E lec  &   C o m p   E n g ,   Vo l.   15 ,   No .   3 J u n e   20 25 :   3 0 1 0 - 3 0 2 7   3016   ( Oth er )   with   t o tal  o f   2 3   s tu d ies.  J o u r n al  p a p er s   r e p r esen t   3 0 o f   o u r   p a p er s   r ep o s ito r y   with   to tal  o f   3 5   jo u r n al  p a p er s .           Fig u r e   2 .   Nu m b er   o f   in clu d ed   s tu d ies p er   y ea r           Fig u r e   3 .   T y p o f   p u b licatio n s       R Q3 :   Wha t is the d is t r ib uti o n   o f   the stu d ies inclu d ed   in th i s   r ev iew ,   ca teg o r iz ed   b the e m p lo ye d   c o d s m ell  d etec tio n tec hn iq ue?   C o d s m ell  d etec tio n   tech n iq u es  wer co m p ar ed   b ased   o n   th ca teg o r y   o f   th tech n i q u e,   ty p o f   d etec ted   co d e   s m ells ,   s u p p o r ted   p r o g r am m in g   lan g u a g es,  s u b ject  s y s tem s ,   an d   ev alu atio n   cr iter ia  u s ed   t o   ev alu ate  th tec h n iq u e .   Ou o f   th e   1 1 6   s tu d ies  in clu d ed   in   th is   an aly s is ,   o n ly   o n s tu d y   u s ed   m an u a l   ap p r o ac h   wh er th d etec tio n   is   d o n b ased   o n   h u m an   p er ce p tio n   [ 8 7 ] .   T h m a n u al  d etec ti o n   p r o ce s s   u s u ally   tak es a   lo n g   tim e,   a n d   th n u m b er   o f   f alse p o s itiv s m ells   ar u s u ally   h ig h .   Fig u r 4   s h o ws  th p er ce n ta g o f   s tu d ies  in clu d e d   in   th i s   r ev iew  b ased   o n   th u s ed   d etec tio n   tech n iq u e.   Fig u r e   4   d ep icts   t h at  th p r ed o m in an t   ap p r o ac h es  in   th e   liter atu r f o r   d etec ti n g   c o d s m ells   ar e   m etr ics - b ased .   I n   c o n tem p o r a r y   r esear ch ,   t h er is   g r o win g   u tili za tio n   o f   m ac h i n lea r n in g   tech n iq u es  to   id en tify   co d s m ells ,   d is p lacin g   o th er   t r ad itio n al  d etec tio n   m eth o d s .     30% 50% 20% Jo u r n a ls C o n f er en ce  p r o ceed in g Othe r  ( w o r k s h o p s s y m p o s iu m s b o o k  c h ap t er s ) Evaluation Warning : The document was created with Spire.PDF for Python.
I n t J E lec  &   C o m p   E n g     I SS N:   2088 - 8 7 0 8         A   s ystema tic  r ev ie w   o n   s o ftw a r co d s mells   ( Mo h a mme d   Gh a z i A l - Ob eid a lla h )   3017       Fig u r 4 .   T h p er ce n tag o f   s tu d ies b ased   o n   t h u s ed   d etec tio n   tech n iq u e       R Q4 :   Wha p r o g r a m m ing   l a ng ua g es  a r em p lo ye d   b va r io us   co d s m ell  d etec tio techniq ues   i the   inclu d ed   s tud ies?   B ased   o n   th an al y s is   o f   1 1 6   s tu d ies,  it  was  n o ted   th at  J av is   th m o s u s ed   lan g u ag e   wh er it  is   u s ed   in   9 3   s tu d ies  ( 8 0   o f   t h in clu d e d   s tu d ies).   Fu r t h er ,   th r ee   o f   th r ec e n tech n i q u es   u s ed   Py th o n   [ 9 1 ] [ 1 1 9 ] ,   an d   [ 1 4 3 ] .   MA T L AB   is   o n ly   u s ed   in   o n s tu d y   [ 8 6 ] .   An d r o i d   is   u s ed   in   th p r im ar y   s tu d ies  [ 1 1 1 ] [ 1 1 4 ] ,   an d   [ 1 3 7 ] .   Fig u r 5   s h o ws  th p r o g r am m in g   lan g u ag e s   u s ed   b y   d if f er en d etec tio n   t ec h n iq u es  to   d etec co d s m ells .           Fig u r e   5 .   Pro g r am m i n g   lan g u a g es u s ed   b y   s tu d ies in clu d ed   i n   th is   r ev iew       R Q5 :   Wha t su b ject  s y s tem s   w ere  us ed   to   va lid a te  co d s m el l d etec tio techniq ues   i n the  i nclud ed   s tud ies?   Dif f er en s u b ject  s y s tem s   we r u s ed   to   v alid ate  co d s m ell  d etec tio n   tech n iq u es.  T h e s s u b ject   s y s tem s   v ar y   in   th ei r   s ize,   la n g u ag e ,   an d   th im p lem en ted   co d s m ells .   Ap ac h e   Xer ce s ,   Gan ttP r o ject,   an d   Ar g o UM L   ar f r e q u en tly   u s ed   as  s u b ject  s y s tem s   in   em p ir ical  s tu d ies  o n   co d s m ell  d etec tio n   d u to   th ei r   r ich   s et  o f   co d s m ells   an d   ex t en s iv u s in   th s o f twar e n g in ee r in g   co m m u n it y .   Ap p e n d i x   s u m m ar izes  th eir   co m m o n   u s ag e.   W n o ticed   th at  ev e n   th o u g h   s u b ject  s y s tem s   wer u s ed   b y   th m ajo r ity   o f   tech n iq u e s ,   s u ch   as  Ap ac h Xer ce s ,   th eir   tr u e   p o s itiv es  co d s m ell  in s tan ce s   ar n o ex p licitly   r ev ea led .   Hen ce ,   a   s tan d ar d   33% 32% 15% 20% 0% 5% 1 0 % 1 5 % 2 0 % 2 5 % 3 0 % 3 5 % M e tri c s-b a se d S e a rc h -b a se d Ru l e -b a s e d M a c h in e   lea rn in g P e rc e n tag e De tec ti o n   tec h n iq u e Jav a C# C P y th o n Ja v a S c rip t An d ro i d M a tl a b #   o S tu d ies 93 8 5 3 3 3 1 0 10 20 30 40 50 60 70 80 90 1 0 0 Nu m b e o f   stu d ies P ro g ra m m in g   lan g u a g e Evaluation Warning : The document was created with Spire.PDF for Python.
                      I SS N :   2 0 8 8 - 8 7 0 8   I n t J E lec  &   C o m p   E n g ,   Vo l.   15 ,   No .   3 J u n e   20 25 :   3 0 1 0 - 3 0 2 7   3018   b en ch m ar k   is   r eq u ir ed   to   ea s th v alid atio n   p r o ce s s .   T h is   co d s m ells   b en ch m ar k   s h o u ld   r ev ea th tr u e   p o s itiv in s tan ce s   o f   c o d s m ells   im p lem en ted   in   t h s u b je ct  s y s tem s .   T ab le  2   lis ts   th s u b ject  s y s tem s   u s ed   o n ly   o n ce   in   liter atu r e.   W f o u n d   6 0   s u b ject  s y s tem s   ap p ea r   o n ly   in   o n p r im ar y   s tu d y .   T h u s o f   th ese  s u b ject  s y s tem s   m ak es  th v al id atio n   p r o ce s s   d if f icu lt  s in ce   th er is   n o   s tan d ar d   b e n ch m ar k   th at  r ev ea ls   tr u e   p o s itiv s m ell  in s tan ce s .       T ab le  2 .   Su b ject  s y s tem s   u s ed   in   o n s tu d y   #   S u b j e c t   S y st e m   #   S u b j e c t   S y st e m   #   S u b j e c t   S y st e m   1   2 0   Ja v a   G i t H u b   p r o j e c t s   21   A sp e c t j   41   H a d o o p   2   Jasp e r R e p o r t s   22   D r j a v a   42   H i v e   3   V e l o c i t y   E n g i n e   23   Jav a c c   43   H sq l d b   4   S p r i n g   F r a mew o r k   24   M a v e n   44   K a r a f   5   S t r u t s   25   X mo j o   45   Lu c e n e   6   3   S t u d e n t s’   p r o j e c t s   26   1 3 1   r e l e a ses   o f   1 3   o p e n -   so u r c e   s y s t e ms   46   M a n i f o l d - cf   7   V i d e o S t o r e   27   A n d r o i d   O p t   Te l e p h o n y   47   N u t c h   8   LA N S i mu l a t i o n   28   A n d r o i d   S u p p o r t   48   M a s t o d o n   9   JEx c e l A P I   29   A p a c h e   L u c e n e   49   P i g   10   F r e e p l a n e   30   M u l t i l a b e l   c o n s t r u c t e d   d a t a se t   50   Q p i d   11   R e d a s h   31   D a t a s e t   o f   2 8 1   Ja v a   P r o j e c t   51   La b e l e d   i n st a n c e s   o f   s i x   c o d e   s mel l c o l l e c t e d   f r o 7 4   so f t w a r e   sy st e ms   12   X a l a n   32   M e t a b a s e   52   Tr a i n i n g   d a t a se t   i n v o l v e s AP I   c a l l s,   P e r mi ssi o n s,  sy s t e m   c a l l s   13   P o i   33   Jo p l i n   53   C o d e   sn i p p e t e x t r a c t e d   f r o e i g h t   o p e n - s o u r c e   C #   p r o j e c t s   14   La Te X D r a w   34   F r e e p l a n e   54   P y t h o n   d a t a s e t   b u i l t   u s i n g   f o u r   o p e n - s o u r c e   P y t h o n   l i b r a r i e s :   N u mp y ,   D j a n g o ,   M a t p l o t l i b - ,   a n d   S c i p y   15   a Tu n e s   35   A b d E x t r a c t o r   55   G r a f a n a   16   M e d i a P e sa t a   36   G r i n d e r   56   S u p e r set   17   La Ta z z a   37   A r t   o f   I l l u si o n   57   P r o met h e u s   18   C o r p u s   o f   1 0 6   P y t h o n   p r o j e c t s   38   JEx c e l A P I   58   R o c k e t C h a t   19   3 0   O p e n - s o u r c e   J a v a   p r o j e c t s   39   A n t - i v y   59   A n t - d e si g n   20   M e d i a P e sa t a   40   C a ssa n d r a   60   C a r b o n - a p p       Qu alitas   co r p u s   was  u s ed   in   f o u r   s tu d ies  [ 1 2 0 ] ,   [ 1 3 8 ] ,   [ 1 4 0 ] ,   an d   [ 1 4 5 ] .   T h ese  s tu d i es  ap p lied   m ac h in lear n in g   tech n iq u es  to   d etec co d s m ells   an d   u s ed   7 4   o p en - s o u r ce   p r o jects  to   tr ain   th m o d el.   Fig u r 6   s h o ws  th s u b ject  s y s tem s   u s ed   b y   m o r t h an   two   d etec tio n   tec h n iq u es  to   v alid ate  th co d e   s m ell   d etec tio n   tech n iq u e .   As  illu s tr ated   in   Fig u r 6 ,   p r o g r am m in g   m is tak d etec to r   ( PMD) ,   Ma d ey s k L ewo wsk co d q u est ( ML C Q)   d ataset,   to m ca t,  ar ec a,   wek a   an d   s tr u ts   wer u s ed   in   two   p r im ar y   s tu d ies.            Fig u r 6 .   Su b ject  s y s tem s   u s ed   b y   m o r th a n   two   d etec tio n   t ec h n iq u es   29 17 16 13 10 10 8 7 7 5 4 3 3 2 2 2 2 2 0 5 10 15 20 25 30 35 N u mb e r   o f   d e t e c t i o n   t e c h n i q u e s S u b j e c t   sy st e ms  Evaluation Warning : The document was created with Spire.PDF for Python.
I n t J E lec  &   C o m p   E n g     I SS N:   2088 - 8 7 0 8         A   s ystema tic  r ev ie w   o n   s o ftw a r co d s mells   ( Mo h a mme d   Gh a z i A l - Ob eid a lla h )   3019   R Q6 :   Wha t c o d s m ells   w ere  d etec ted   b va r io us   techniq ues   in the inc lud ed   s tud ies?   B ased   o n   o u r   in v esti g atio n s   o f   th 1 1 6   p r im ar y   s tu d ies,  we  f o u n d   th at  th g o d   class ,   f ea tu r en v y ,   lo n g   m eth o d ,   an d   d ata  class   a r th m o s d etec ted   s m ells .   T h is   is   m ay b d u to   th s im p le  s tr u ctu r o f   th ese   s m ells .   Sh o tg u n   s u r g er y   an d   lazy   class   ar th e   least  d etec ted   co d s m ells   wh er t h ey   o n ly   d etec ted   b y   1 0   p r im ar y   s tu d ies.  Oth er   ty p es  o f   s m ells   wer d etec ted   b y   th d etec tio n   tech n iq u es  s u ch   a s   co m p lex   m eth o d ,   co m p lex   co n d itio n al,   a n d   m u l tifa ce ted   ab s tr ac tio n   in   [ 1 4 1 ] .   Fig u r 7   s h o ws  th to p   co d s m ells   d etec ted   b y   th d if f er e n t p r im ar y   s tu d ies.         Fig u r 7 .   Nu m b er   o f   f r eq u e n co d s m ells   d etec ted   b y   d if f er en t te ch n iq u es       R Q7 :   Wha t e va lua tio n c r iter i a   w ere  uti li z ed   b co d s m ell  d etec tio n tec hn iq ues   i n the  r e viewed   s tud ies?   T o   ev alu ate   th p er f o r m an ce   an d   th ac c u r ac y   o f   th d etec tio n   tech n i q u es,  d if f er en t   e v alu atio n   m eth o d s   wer e   em p lo y ed   in   t h s u r v e y ed   liter atu r e.   W f o u n d   th at  p r ec is io n   an d   r ec all  ar th m o s u s ed   m etr ics  to   ev alu ate  th ac cu r ac y   o f   th d etec tio n   ap p r o ac h   wh er th ey   wer u s ed   in   6 9   an d   6 8   s tu d ies,   r esp ec tiv ely .   m ea s u r is   th e   th ir d   m o s u s ed   e v alu atio n   cr i ter ia.   Fig u r e   8   s h o ws  th e v alu atio n   cr iter ia   u s ed   to   ev alu ate  th co d s m ell  d etec tio n   tech n iq u es.  1 1   s tu d i es  d id   n o r ev ea th ev alu at io n   cr iter ia  u s ed   to   ev alu ate  th d etec tio n   tech n iq u e.           Fig u r 8 .   E v alu atio n   c r iter ia  u s ed   b y   d etec tio n   tech n iq u es   54 46 38 31 24 22 16 11 11 10 10 0 10 20 30 40 50 60 G o d   C l a ss F ea t u r E n v y Lo n g   M e t h o d D a t a   C l a ss S p a g h e t t i   C o d e Fu n c t i o n a l   De c o m p o si t i o n Lo n g   P a r a me t e r   Li st Sw i ss  Ar my   Kn i f e R e f u se d   B e q u e st S h o t g u n  Su r g er y La z y   C l a ss N u mb e r C o d e   sme l l 69 68 33 22 9 7 6 4 11 0 20 40 60 80 P r ec i sio n R e c a l l F   M e a su r e A c c u r a c y A U C   ( A r e a   U n d e r   C u r v e ) R O C   ( R e c e i v e r   O p e r a t i n g   C h a r a c t e r i st i c s) M a t t e w C o r r e l a t i o n   C o e f f i c i e n t O t h e r   ( r e mo v a l   t i me ,   E x a c t   mat c h   R a t i o . .   Et c ) N o t   me n t i o n e d N u mb e r Ev a l u a t i o n   c r i t e r i a Evaluation Warning : The document was created with Spire.PDF for Python.