Prioritization of Classes for Refactoring: A Step ... - ACM Digital Library

0 downloads 0 Views 243KB Size Report
Prioritization of classes helps the developer to identify the software portions requiring urgent refactoring. In the current study, we propose a framework to identify ...
3ULRULWL]DWLRQRI&ODVVHVIRU5HIDFWRULQJ$6WHSWRZDUGV ,PSURYHPHQWLQ6RIWZDUH4XDOLW\ 6YGLMOE1EPLSXVE

%RYVEHLE'LYK

4VM]EROE/LSWPE

(ITXSJ'SQTYXIVERH-RJSVQEXMSR 9RMZIVWMX]7GLSSPSJ-RJSVQEXMSRERH 9RMZIVWMX]7GLSSPSJ-RJSVQEXMSRERH 7GMIRGI 'SQQYRMGEXMSR8IGLRSPSK]++7-4'SQQYRMGEXMSR8IGLRSPSK]++7-4 -RHMERE9RMZIVWMX]4YVHYI9RMZIVWMX] 9RMZIVWMX] 9RMZIVWMX] -RHMERETSPMW-297% ([EVOE2I[(IPLM-RHME ([EVOE2I[(IPLM-RHME

VYGLQEPL$GWMYTYMIHY

ERYVEHLE$MTYEGMR

TVM]EROEOLSWPE$ KQEMPGSQ 

FKDUDFWHULVWLFV>@7RPHDVXUHVRIWZDUHTXDOLW\DQGWRFKHFNLWV FRUUHODWLRQ ZLWK WKH GHVLJQ OLWHUDWXUH KDV SURSRVHG GLIIHUHQW 2EMHFW2ULHQWHG 22 PHWULFVOLNH/RUHQ]DQG.LGGPHWULFVVXLWH >@ 0HWULFV IRU 22 'HVLJQ 022'¶V PHWULF  E\ $EUHX  &DUDSXFD >@ DQG &KLGDPEHU DQG .HPHUHU & .  VXLWH RI PHWULFV>@ ,Q WKH FXUUHQW VWXG\ ZH KDYH VHOHFWHG & . PHWULFV VXLWHWRILJXUHRXWWKHGHVLJQFKDUDFWHULVWLFVDVWKH\DUHZHOOWHVWHG DQGHPSLULFDOO\YDOLGDWHGE\PDQ\UHVHDUFKHUV>DQG @

$%675$&7 %DG 6PHOOV DUH FHUWDLQ VWUXFWXUHV LQ WKH VRIWZDUH ZKLFK YLRODWHV WKH GHVLJQ SULQFLSOHV DQG UXLQ WKH VRIWZDUH TXDOLW\ ,Q RUGHU WR GHDOVZLWKWKHEDGVPHOOVRIWHQUHIDFWRULQJWUHDWPHQWLVSURYLGHG LQWKHFRGHZKLFKIXUWKHULPSURYHVWKHVRIWZDUHTXDOLW\+RZHYHU LW¶VQRWSRVVLEOHWRUHIDFWRUHDFKDQGHYHU\FODVVRIWKHVRIWZDUHLQ PDLQWHQDQFH SKDVH GXH WR FHUWDLQ GHDGOLQHV 3ULRULWL]DWLRQ RI FODVVHV KHOSV WKH GHYHORSHU WR LGHQWLI\ WKH VRIWZDUH SRUWLRQV UHTXLULQJ XUJHQW UHIDFWRULQJ ,Q WKH FXUUHQW VWXG\ ZH SURSRVH D IUDPHZRUN WR LGHQWLI\ WKH SRWHQWLDO FODVVHV ZKLFK LPPHGLDWHO\ UHTXLUH UHIDFWRULQJ EDVHG RQ WKH EDG VPHOOV DV ZHOO DV GHVLJQ FKDUDFWHULVWLFV:HHYDOXDWHRXUDSSURDFKRQPHGLXPVL]HGRSHQ VRXUFH V\VWHPV 25'UXPER[ )RXU W\SHV RI FRGHVPHOOV )HDWXUH (QY\ /RQJ 0HWKRG *RG &ODVV DQG 7\SH &KHFNLQJ ZHUH LGHQWLILHGDQGZHOONQRZQ&KLGDPEHUDQG.HPHUHUPHWULFVXLWHLV XVHG WR HYDOXDWH WKH REMHFW RULHQWHG FKDUDFWHULVWLFV %RWK DUH FRPELQHG LQ FHUWDLQ UDWLR WR FDOFXODWH QHZ SURSRVHG PHWULF 4XDOLW\ 'HSUHFLDWLRQ ,QGH[ 5XOH 4',5  IRU HDFK FODVV &ODVVHV DUH IXUWKHU DUUDQJHG DV SHU WKHLU 4',5 YDOXHV WR LGHQWLI\ WKH VHYHUHO\ DIIHFWHG FODVVHV UHTXLULQJ LPPHGLDWH UHIDFWRULQJ WUHDWPHQW 7KLV VWXG\ ZRUNV RQ  SULQFLSOHV FRQYH\LQJ  RIWKHFRGHTXDOLW\FDQEHLPSURYHGE\MXVWSURYLGLQJUHIDFWRULQJ WUHDWPHQWWRRIWKHVHYHUHO\DIIHFWHGFODVVHV5HVXOWVUHIOHFWV WKDWWKHEDGVPHOOVDQGGHVLJQPHWULFVFDQEHXVHGDVDQLPSRUWDQW VRXUFH RI LQIRUPDWLRQ WR TXDQWLI\ WKH IODZV LQ WKH FODVVHV WKXV KHOSIXO WR PDLQWDLQHUV LQ SHUIRUPLQJ WKHLU WDVN XQGHU VWULFW WLPH FRQVWUDLQWVZKLOHPDLQWDLQLQJWKHRYHUDOOVRIWZDUHTXDOLW\

7KH LGHDRIEDGVPHOO ZDVLQLWLDWHGE\ )RZOHUDQG%HFN>@WKDW LQGLFDWHVWKHVWUXFWXUDOIODZVLQWKHGHVLJQRIWKHVRXUFHFRGH,Q WKHLU VWXG\ WKH\ DOVR LQWURGXFHG  EDG VPHOOV WKDW VLJQLILHV WKH GHVLJQ GHEWV ZLWK UHVSHFW WR WKH PDLQWHQDQFH RI WKH VRIWZDUH V\VWHP $ EDG VPHOO LI SUHVHQW LQ WKH FRGH UHIOHFWV SRWHQWLDO SUREOHP LQ WKH GHVLJQ VWUXFWXUH WKDW PDNHV WKH VRIWZDUH PRUH EULWWOHDQGLQIOH[LEOH,WLVQRWWKHHUURURUIDXOWDQGLWZLOOQRWVWRS WKH IXQFWLRQLQJ RI WKH VRIWZDUH UDWKHU LW LV DQ RYHUKHDG RQ WKH VRIWZDUH V\VWHP WKDW PDNHV WKH PDLQWHQDQFH WDVN FRVWOLHU 5HIDFWRULQJLVGHILQHGDVWKHSURFHGXUHRIPRGLI\LQJWKHLQWHUQDO FRGH VWUXFWXUH WR LPSURYH LWV GHVLJQ ZLWKRXW DOWHULQJ LWV H[WHUQDO EHKDYLRU >@ 5HIDFWRULQJ RI WKH FRGH RI WKH VRIWZDUH QRW RQO\ UHPRYHV WKH SUHVHQW EDG VPHOO EXW DOVR KHOSV LQ UHGXFLQJ WKH FRPSOH[LW\ RI WKH VRIWZDUH E\ PDNLQJ LW PRUH FRKHVLYH DQG UHDGDEOH7KHUHDUHPRUHWKDQGLIIHUHQWUHIDFWRULQJWUHDWPHQWV VXJJHVWHG LQ OLWHUDWXUH >      DQG @ VXFK DV (QFDSVXODWH )LHOG +LGH 0HWKRG ([WUDFW 0HWKRG DQG ([WUDFW &ODVVHWF(DFKPHWKRGKDVLWVRZQLPSDFWRQGLIIHUHQWDVSHFWVRI WKHVRIWZDUHTXDOLW\>@$WWKHVDPHWLPHXQOLPLWHGUHIDFWRULQJLV DOVR QRW SRVVLEOH DV LW LV YHU\ WLPH FRQVXPLQJ DQG HUURU SURQH DFWLYLW\,QRUGHUWRPDNHWKHUHIDFWRULQJWUHDWPHQWFRVWHIIHFWLYH DQGHIILFLHQWWKHUHLVDQHHGWRDQDO\]HWKHEDGVPHOOV SUHVHQWLQ WKHFRGHDQGWUHDWRQO\WKRVHFODVVHVZLWKWRSPRVWSULRULW\ZKLFK DUHVHYHUHO\DIIHFWHGDQGKDYLQJDZRUVWLPSDFWRQWKHVRIWZDUH

&DWHJRULHVDQG6XEMHFW'HVFULSWRUV '>6RIWZDUH(QJLQHHULQJ@'0HWULFV'3HUIRUPDQFH *HQHUDO7HUPV 0HDVXUHPHQW3HUIRUPDQFH5HOLDELOLW\9HULILFDWLRQ .H\ZRUGV

0DQ\DWWHPSWVKDYHEHHQ PDGH WRFRUUHODWHWKHVRIWZDUH PHWULFV ZLWK FRUUHVSRQGLQJ TXDOLW\ >@ +RZHYHU HLWKHU WKH TXDOLW\ LV EHLQJ SUHGLFWHG RQ WKH EDVLVRI 22 0HWULFV > DQG @ RU LW LV EHLQJ DVVHVVHG RQ WKH EDVLV RI EDG VPHOO > DQG @ SUHVHQW LQ WKH FRGH EXW LQ WKLV SDSHU HTXDOZHLJKWDJHLVJLYHQWRERWKWKHIDFWRUVWRDQDO\]HWKHTXDOLW\ RIWKHVRIWZDUH7KLVSDSHUXVHVFODVVEDVHGDSSURDFKWRSULRULWL]H WKH YDULRXV FDQGLGDWH FODVVHV IRU WKH UHIDFWRULQJ WUHDWPHQW 7R FDUU\RXWWKLVHPSLULFDOVWXG\PHGLXPVL]HGRSHQVRXUFHVRIWZDUH 25'UXPER[ YHUVLRQ  LV XVHG 2EMHFW RULHQWHG 22  

%DG 6PHOO 5HIDFWRULQJ 2EMHFW 2ULHQWHG 0HWULFV 6RIWZDUH 0DLQWHQDQFH6RIWZDUH4XDOLW\

 ,1752'8&7,21 6RIWZDUH TXDOLW\ LV GHILQHG DV D FRQIRUPDQFH WR UHTXLUHPHQWV ILWQHVVRISXUSRVHDQGOHYHORIVDWLVIDFWLRQ>@6RIWZDUHTXDOLW\LV HYDOXDWHG E\ UHYLHZLQJ WKH LQQHU VWUXFWXUH RI WKH VRIWZDUH WKDW LQFOXGHV VRXUFH FRGH DW XQLW OHYHO WHFKQRORJ\ OHYHO DQG V\VWHP OHYHO ,W DOVR UHIOHFWV KRZ LWV DUFKLWHFWXUH DGKHUHV WR WKH VRXQG SULQFLSOHV RIVRIWZDUH TXDOLW\ 0HDVXUHPHQW RI VRIWZDUH TXDOLW\ TXDQWLILHVWRZKDWH[WHQWDVRIWZDUHV\VWHPSRVVHVVHVDGHVLUDEOH



KWWSVRXUFHIRUJHQHW 3HUPLVVLRQWRPDNHGLJLWDORUKDUGFRSLHVRIDOORUSDUWRIWKLVZRUNIRUSHUVRQDORUFODVVURRPXVHLVJUDQWHGZLWKRXWIHHSURYLGHGWKDW FRSLHVDUHQRWPDGHRUGLVWULEXWHGIRUSURILWRUFRPPHUFLDODGYDQWDJHDQGWKDWFRSLHVEHDUWKLVQRWLFHDQGWKHIXOOFLWDWLRQRQWKHILUVWSDJH &RS\ULJKWVIRUFRPSRQHQWVRIWKLVZRUNRZQHGE\RWKHUVWKDQ$&0PXVWEHKRQRUHG$EVWUDFWLQJZLWKFUHGLWLVSHUPLWWHG7RFRS\ RWKHUZLVHRUUHSXEOLVKWRSRVWRQVHUYHUVRUWRUHGLVWULEXWHWROLVWVUHTXLUHVSULRUVSHFLILFSHUPLVVLRQDQGRUDIHH5HTXHVWSHUPLVVLRQV IURP3HUPLVVLRQV#DFPRUJ :&, $XJXVW.RFKL,QGLD‹$&0,6%1«'2, KWWSG[GRLRUJ

228

FKDUDFWHULVWLFVDUHPHDVXUHGXVLQJ& .0HWULFVVXLW%DGVPHOOLQ HDFK RI WKH FODVV LV DOVR LGHQWLILHG %RWK WKH PHDVXUHPHQWV DUH FRPELQHG LQ FHUWDLQ UDWLR WR GHWHUPLQH WKH TXDOLW\ RI WKH HDFK FODVV )XUWKHU FODVVHV DUH FDWHJRUL]HG DQG SULRULW\ OHYHOV DUH DVVLJQHGWRWKHPIRUSURYLGLQJWKHUHIDFWRULQJWUHDWPHQWWRZRUVW DIIHFWHG FODVVHV RQ XUJHQW EDVLV 6SHFLILF UHIDFWRULQJ WUHDWPHQW ZDVDOVRVXJJHVWHGWRUHPRYHWKHSDUWLFXODUW\SHRIEDGVPHOO ,Q WKLVUHJDUGZHKDYHDGGUHVVHGIRXULPSRUWDQWUHVHDUFKTXHVWLRQVDV IROORZV 54$UHWKHUHDQ\FODVVHVZKLFKFRQWDLQGHVLJQIODZV" 54 :KDW SHUFHQWDJH RI FODVVHV LV FULWLFDOO\ DIIHFWHG E\ GHVLJQ IODZV" 54 +RZ PXFK HIIRUW LV VDYHG E\ SURYLGLQJ WKH UHIDFWRULQJ WUHDWPHQWWRRQO\FULWLFDOO\DIIHFWHGFODVVHV" 54:KDW LV WKH XWLOLW\ RI ZRUN WR GHYHORSHUV PDLQWDLQHUV DQG DFDGHPLFLDQV" 7KHUHVWRIWKHSDSHULVRUJDQL]HGDVIROORZV6HFWLRQSURYLGHV WKH RXWOLQHRIWKHUHODWHGUHVHDUFKZRUNFRQGXFWHGRQEDGVPHOOV DQG UHIDFWRULQJ WUHDWPHQW 6HFWLRQ  LOOXVWUDWHV WKH UHVHDUFK PHWKRGRORJ\IROORZHGWKURXJKRXWWKLVHPSLULFDOVWXG\6HFWLRQ KLJKOLJKWV WKH RXWFRPH RI WKH VWXG\ LWV DQDO\VLV DQG GLVFXVVLRQ 6HFWLRQ  FRQIHUV WKH WKUHDWV WR YDOLGLW\ DQG ILQDOO\ 6HFWLRQ  FRQFOXGHVUHVHDUFKZRUNDQGKLJKOLJKWVWKHIXWXUHZRUN

RI WKH VRIWZDUH ,Q WKH SUHVHQW VWXG\ IRU HDFK FODVV ZH DUH GHWHFWLQJ WKH EDG VPHOOV DQG FRPELQLQJ LW ZLWK WKH GHVLJQ FKDUDFWHULVWLFVWRLGHQWLI\WKHTXDQWXPRITXDOLW\FRPSURPLVHGIRU WKDWFODVV

 5(6($5&+0(7+2'2/2*@ ZKR SURSRVHG WKH FKHPLFDO UHDFWLRQ RSWLPL]DWLRQ WHFKQLTXHV WR ILQG WKH VXLWDEOH UHIDFWRULQJ WUHDWPHQWVWKDWPD[LPL]HWKHIL[HGULVNLHVWFRGHVPHOOVDFFRUGLQJ WR WKH VRIWZDUH PDLQWDLQHU¶V SUHIHUHQFHV DQG WKXV SULRULWL]HV WKH EDGVPHOOFRUUHFWLRQWDVNV9DULRXVVWXGLHVKDYHEHHQFDUULHGRXW WR DQDO\]H ZKDW SRUWLRQV RI WKH VRIWZDUH QHHGV UHIDFWRULQJ WUHDWPHQWV XVLQJ 22 PHWULFV 7R H[DPLQH WKH LPSDFW RI UHIDFWRULQJ RQ VRIWZDUH PHWULFV ORJV RI VRXUFH FRGH YHUVLRQ FRQWURO KDYH EHHQ UHYLHZHG E\ 6WURJJ\ORV DQG 6SLQHOOLV >@ :LONLQJHWDO>@HPSLULFDOO\VWXGLHGWKHHIIHFWRIUHIDFWRULQJRQ PDLQWDLQDELOLW\ DQG PRGLILDELOLW\ 5DQGRPO\ WKH\ LQWURGXFHG GHIHFWV LQWR WKH FRGH DQG WRWDO WLPH UHTXLUHG WR IL[ WKRVH GHIHFWV ZDV FRPSXWHG 1HZ UHTXLUHPHQWV DUH WKHQ DGGHG DQG WLPH UHTXLUHG WR LPSOHPHQW WKH UHTXLUHPHQWV LV PHDVXUHG .DWDRND HW DO >@ VXJJHVWHG WKDW FRXSOLQJ PHWULFV FDQ EH XVHG WR TXDQWLI\ WKH LPSDFW RI UHIDFWRULQJ WUHDWPHQW RQ WKH VRIWZDUH PDLQWDLQDELOLW\ 7KH FRXSOLQJ ZDV PHDVXUHG EHIRUH DQG DIWHU DSSO\LQJ UHIDFWRULQJ WUHDWPHQWV DQG WKH UHVXOWV ZHUH FRPSDUHG 0RQGHQ HW DO  >@ VXJJHVWHG WKDW WKH VRIWZDUH ZLWK GXSOLFDWHG FRGH DUH OHVV PDLQWDLQDEOH DV WKH\ EHFRPH XQUHOLDEOH 0HQV HW DO >@ LQYHQWHG D VRIWZDUH WRRO WR GHWHFW EDG VPHOOV H[LVWHQFHXVLQJORJLFTXHULHVDQGVXJJHVWHGUHVSHFWLYHUHIDFWRULQJ WUHDWPHQW WKDW VKRXOG EH DSSOLHG )RZOHU >@ VWXGLHV VKRZHG WKDW WKHEDGVPHOOVVXFKDVJRGFODVVORQJPHWKRGHWFKHOSVWRVHOHFW WKHDUHDVWKDWQHHGUHIDFWRULQJWUHDWPHQW 'HOLJLDQQLVHWDO >@ VXJJHVWHG WKDW D GHVLJQ WKDW GRHV QRW KDYH D *RG &ODVV LV EHWWHUWKDQDGHVLJQWKDWFRQWDLQVD *RG&ODVV6LPRQHWDO>@ ZRUNHG RQ GLVWDQFH PHWULFV WR NHHS D FKHFN RQ WKH PHWKRGV DQG DWWULEXWHVWKDWFRXOGEHSXWWRJHWKHUWRLQFUHDVHFRKHVLRQ/R]DQR HW DO >@ PHDVXUHG WKH H[WHQW XS WR ZKLFK EDG VPHOO KDV LWV LPSDFWRQPDLQWDLQDELOLW\E\XVLQJWKHDXWRPDWHGWRROWRDQDO\]H WKH GHVLJQ IODZV /L DQG 6KDWQDZL >@ LQYHVWLJDWHG WKDW FODVVHV GLDJQRVHGZLWKWKUHHFRGHVPHOOVQDPHO\6KRWJXQ6XUJHU\*RG 0HWKRGVRU*RG&ODVVDUHIRXQGWREHPRUHHUURUSURQH WKDQWKH RWKHU QRQLQIHFWHG FODVVHV .KRPK HWDO >@ JDYH D ED\HVLDQ EHOLHIQHWZRUNVDSSURDFKWRGHWHFWWKHEDGVPHOOVLQWKHPRGXOHV







)LJXUH)ORZRI5HVHDUFK(YHQWV

 220HWULFV&DOFXODWLRQ 0HWULFVLVGHILQHGDVWKHTXDQWLWDWLYHPHDVXUHVRIGHJUHHWRZKLFK D V\VWHP SURFHVV RU FRPSRQHQW SRVVHVVHV D JLYHQ DWWULEXWH >@ 22 0HWULFV DUH XVHG WR HYDOXDWH DQG SUHGLFW WKH TXDOLW\ RI VRIWZDUH7RFDSWXUHDOOFKDUDFWHULVWLFVRI22PHWULFVZHOONQRZQ & .VXLWHRIPHWULFVLVXVHGLQWKHFXUUHQWVWXG\WKDWLQFOXGHVVL[ PHWULFVDVGHVFULEHGLQ7DEOH7KHLUYDOXHVDUHFRPSXWHGXVLQJ &.-0  WRRO DQG IXUWKHU FRPSDUHG ZLWK WKHLU WKUHVKROG YDOXHV VXJJHVWHGE\6KDWQDZLHWDO>@DVFRPSLOHGLQWKLUGFROXPQRI 7DEOH$Q\FODVVZKRVHPHWULFYDOXHFURVVHVWKHWKUHVKKROGLV FRQVLGHUHG DV RI FRPSURPLVHG TXDOLW\ )LQDOO\ GHVLJQ PHWULFV DORQJZLWKWKHEDGVPHOOVDUHXVHGWRSULRULWL]HWKHFODVVHV  7DEOH& .6XLWHRI0HWULFVZLWKWKHLUWKUHVKROGYDOXH 0HWULF

'HILQLWLRQ

:0& :HLJKWHG 0HWKRGV SHU&ODVV 

,W LV WKH VXP RI WKH PHWKRGV WKDW DUH SUHVHQW LQ D SDUWLFXODU FODVV 7KHUHIRUH LW FRPSXWHV WKH FODVV FRPSOH[LW\

7KUHVKROG 

 

KWWSZZZVSLQHOOLVJUVZFNMP

229

5)& 5HVSRQVH IRUD&ODVV 

,W LV VXP RI WKH PHWKRGV WKDW DUH H[HFXWHG LQ D UHVSRQVH WR DQ\ PHVVDJH WKDW LV UHFHLYHG E\ DQ\ LQVWDQFH RI WKDW FODVV DQG WKHUHIRUH LW LV XVHG WR PHDVXUH FRXSOLQJ



&%2 &RXSOLQJ EHWZHHQ 2EMHFWV 

,WLVWKHWRWDOQXPEHURIGLVVLPLODU FODVVHV WKDW DUH QRW LQKHULWDQFH UHODWHG DQG ZLWK ZKLFK JLYHQ FODVVLVFRXSOHG



/&20 /DFN RI &RKHVLRQ RIPHWKRG 

,WLVDGHILQHGDVDOOSUREDEOHSDLUV RI FODVV PHWKRG ZLWKRXW VKDUHG LQVWDQFHV VXEWUDFWHG E\ DOO SUREDEOH SDLUV RI FODVV PHWKRGV WKDW VKDUH LQVWDQFHV ,W LV XVHG WR HYDOXDWHFRKHVLRQ



',7 'HSWK RI ,QKHULWDQFH 7UHH 

,W LV WKH ORQJHVW SDWK OHQJWK EHWZHHQ URRW QRGH DQG JLYHQ QRGH ,W LV XVHG WR FRPSXWH ,QKHULWDQFH



12& ,WLVWKHWRWDOFRXQWRIFODVVHVWKDW 1XPEHU RI LQKHULWVWKHJLYHQFODVV &KLOGUHQ 



 (PSLULFDOGDWDFROOHFWLRQ ,Q WKLV VWXG\ D -DYD SURMHFW 25'UXPER[ YHUVLRQ  WKDW FRQWDLQV  FODVVHV DQG  ./2& LV XVHG IRU WKH YDOLGDWLRQ RI UHVXOWV ,W LV RSHQ VRXUFH DXGLR VHTXHQFHU DQG VRIWZDUH GUXP PDFKLQH ZLWK PDQ\ XQXVXDO IHDWXUHV VXFK DV DXWRPDWLF VRXQG PDWFKLQJ UHQGHULQJ DXWR FRPSRVLWLRQ DQG XQXVXDO DUSHJJLDWRU 7KLVWRROLVXVHGWRFRPSRVHWKHEDVVOLQHIRUFRPSOHWLQJWKHVRQJ ,WLVDOVRFDSDEOHRIKDQGOLQJPLGLILOHVZDYHILOHVSLDQRUROOVDQG VRIWV\QWKHVL]HUV(FOLSVHWRROLVXVHGWRSHUIRUPWKHDQDO\VLVDQG UHYLHZ RI WKH FRGH $Q HFOLSVH SOXJLQ -'HRGRUDQW ZLWK YHUVLRQ LVDOVRXVHGWRGHWHFWWKHEDGVPHOOVSUHVHQWLQWKHFODVVHV 5HVSHFWLYH UHIDFWRULQJ WUHDWPHQW WR UHPRYH WKH SDUWLFXODU VPHOO ZDVDOVRDGYLVHGE\WKHWRRO  )RUWKHVHOHFWHGVRIWZDUHV\VWHP7DEOHVKRZV0LQLPXP 0LQ  0D[LPXP 0D[ 0HDQ 0HDQ DQG6WDQGDUG'HYLDWLRQ 6' IRU DOOWKH22PHWULFVFRQVLGHUHGLQWKLVHPSLULFDOLQYHVWLJDWLRQ 7DEOH'HVFULSWLYH6WDWLVWLFVRIWKH220HWULFV 0HWULF 1DPH :0&

0LQ

0D[

0HDQ

6'









',7









12&









&%2









5)&









/&20      7KHIROORZLQJREVHUYDWLRQVDUHPDGHIURP7DEOH

LL  7KHFRXSOLQJEHWZHHQWKHFODVVHVZDVKLJKHUDVWKHPHDQDQG PHGLDQYDOXHVIRU&%2ZHUHKLJK LLL  7KHFRKHVLRQZLWKLQWKHFODVVHVZDVREVHUYHGWREHOHVVHUDV WKHYDOXHVRI/&20ZHUHODUJHU LY  :KHQZHPHDVXUHGWKHFODVVVL]HLQWHUPVRI/2&LWUDQJHV IURPWR

 %DG6PHOO'HWHFWLRQ %DG6PHOOVRFFXUZKHQWKHEDVLFSULQFLSOHVRIGHVLJQDUHYLRODWHG WKDW QHJDWLYHO\ DIIHFWV WKH GHVLJQ TXDOLW\ >@ 7KH FODVVHV RI WKH VRIWZDUHDUHUHYLHZHGDQGIRXULPSRUWDQWEDGVPHOOVDUHGHWHFWHG DV GHVFULEHG LQ 7DEOH  (DFK URZ LQ 7DEOH  H[SODLQV WKH EDG VPHOO DORQJ ZLWK UHVSHFWLYH UHIDFWRULQJ WUHDWPHQW )RU H[DPSOH URZRQHH[SODLQWKH*RG&ODVVEDGVPHOODQGDGYLFHWKDWLIH[WUDFW FODVV UHIDFWRULQJ LV DSSOLHG LW UHPRYHV WKLV EDG VPHOO E\ LPSURYLQJ WKH VWUXFWXUDO TXDOLW\ RI WKH FRGH DQG OHDYHV SRVLWLYH LPSDFWVRQWKHGHVLJQRIWKHVRIWZDUH 7DEOH%DG6PHOOV6HOHFWHGLQWKH&XUUHQW6WXG\



%DG6PHOO

'HILQLWLRQ

*RG&ODVV

,W LV WKH FODVV ZKLFK WHQGV WR FHQWUDOL]H WKH V\VWHP ([WUDFW&ODVV LQWHOOLJHQFH

5HIDFWRULQJ

/RQJ 0HWKRG

,W LV WKH PHWKRG ZKLFK LV ORQJ ([WUDFW WKDWPDNHVLWGLIILFXOWWRPRGLI\ 0HWKRG DQGXQGHUVWDQG

7\SH &KHFNLQJ

,Q WKLV EDG VPHOO WKH IXQFWLRQ 5HSODFH 7\SH LV VSOLW LQWR PXOWLSOH IXQFWLRQV FRGH ZLWK VR WR KDQGOH D VLQJOH W\SH DQG 6WDWH6WUDWHJ\ WKXVLQFUHDVHVUHGXQGDQF\

)HDWXUH (QY\

,W PHDQV WKDW D PHWKRG LV LQWHUHVWHG PRUH LQ RWKHU FODVV 0RYH0HWKRG WKDQ WKH RQH ZKHUH LW LV FXUUHQWO\ORFDWHG

 5HIDFWRULQJ $FFRUGLQJ WR )RZOHU >@ WKHUH DUH PRUH WKDQ  UHIDFWRULQJ WUHDWPHQWV DYDLODEOH WKDW KHOSV WR UHVWUXFWXUH WKH GHVLJQ RI WKH VRIWZDUH WR LQFUHDVH FRKHVLRQ DQG UHGXFH LWV FRPSOH[LW\ $V DQ LQLWLDO VHW RI H[DPLQDWLRQ ZH KDYH XVHG  UHIDFWRULQJ WUHDWPHQWV WRUHPRYHWKHEDGVPHOOVXVLQJ(FOLSVHWKDWRSHUDWHVRQWKHFODVV OHYHO 7KH UHIDFWRULQJ WUHDWPHQWV DUH JLYHQ LQ EULHI DV IROORZV KRZHYHUWKHGHWDLOVDUHDYDLODEOHLQ>@  ([WUDFW &ODVV 7KLV WUHDWPHQW JHQHUDWHV D QHZ FODVV DQG PRYHWKHUHODWHGPHWKRGVDQGILHOGVIURPWKHROGFODVVWRWKHQHZ FODVV  ([WUDFW 0HWKRG 7KLV WUHDWPHQW FUHDWHV D QHZ PHWKRG E\ H[WUDFWLQJ D FRGH IURP LQVLGH WKH FRGH EORFN RI DQ H[LVWLQJ PHWKRG 7KH VHOHFWHG FRGH LV SODFHG LQ WKH QHZ DQG H[WUDFWHG PHWKRGDQGWKHVHOHFWHGFRGHLQWKHH[LVWLQJPHWKRGLVUHSODFHG ZLWKDFDOOWRWKHQHZPHWKRG







 5HSODFH 7\SH &RGH ZLWK 6WDWH  7KLV WUHDWPHQW LV XVHG

L  ',7 KDG WKH PLQLPXP YDOXH IRU PHDQ DQG PHGLDQ WKDW VKRZHGLQKHULWDQFHLVOLPLWHG

ZKHQWKHW\SHFRGHPRGLILHVLWVHOIGXULQJWKHOLIHRIWKHREMHFWRU LIDQDGGLWLRQDOUHDVRQSUHYHQWVWKHSURFHVVRIVXEFODVVLQJ,WXVHV HLWKHUWKHVWDWHRUVWUDWHJ\SDWWHUQXVLQJVHOIHQFDSVXODWHPHWKRG



 0RYH 0HWKRG 7KLV WUHDWPHQW PRYHV WKH PHWKRG IURP D FXUUHQWFODVVWRDFODVVWKDWQHHGVLWVIHDWXUHVPRUH



KWWSVHFOLSVHRUJGRZQORDGV



KWWSMGHRGRUDQWFRP



230

 4XDOLW\'HSUHFLDWLRQ,QGH[5XOH 4',5  4XDOLW\ RI WKH VRIWZDUH LV FDOFXODWHG E\ FRQVLGHULQJ WZR IDFWRUV WKDW LQFOXGHV %DG 6PHOOV DQG & . 6XLWH RI 0HWULFV (TXDO ZHLJKWDJHLVJLYHQWRERWKWKHIDFWRUVIRUHYHU\FODVVDQG4',5LV FDOFXODWHGXVLQJHTXDWLRQ  

 ‫ܸܯ‬ௐெ஼ ൌ ͷͺȀʹͶ ൌ ʹǤͶͳ͸͸͸͹

 ܳ‫݈݁ݑܴݔ݁݀݊ܫ݊݋݅ݐܽ݅ܿ݁ݎ݌݁ܦݕݐ݈݅ܽݑ‬ሺܳ‫ܴܫܦ‬ሻ ͳ ͳ ൌ ‫ ܤ݋ܤ‬൅ ‫ ܯ݋ܤ‬ǥ ǥ Ǥ Ǥ ሺͳሻ ʹ ʹ  &DOFXODWLRQRI%DVHRI%DG6PHOO %R% )RXUGLIIHUHQWEDG VPHOOV ZHUH GHWHFWHG LQ WKH FRGH WKDW LQFOXGHV 7\SH &KHFNLQJ )HDWXUH (QY\ *RG &ODVV DQG /RQJ 0HWKRG (TXDO 6PHOO :HLJKWDJH 6: LVDVVLJQHGWRHDFKVPHOOZKLFKLV9DOXHRI WKH %R% PHWULF IRU HYHU\ FODVV LV WKHQ FRPSXWHG E\ WDNLQJ WKH DYHUDJHRIWKH6:RILGHQWLILHGEDGVPHOOIRUWKDWFODVVWRWKDWRI WRWDOIRXUEDGVPHOOVDVVKRZQLQHTXDWLRQ  )RU([DPSOH)RUD &RQWUROOHU FODVV WZR RXW RI WKH IRXU EDG VPHOOV *RG &ODVV DQG IHDWXUH HQY\ LV GHWHFWHG 1RZ WKH WRWDO YDOXH RI %R% IRU &RQWUROOHU FODVV ZRXOG EH       )RU DQRWKHU FODVV 6RQJ0DQDJHU WKUHH EDG VPHOOV *RG &ODVV /RQJ 0HWKRG DQG )HDWXUH (QY\ LV GHWHFWHG WKH YDOXH RI %R% IRU WKLV FODVV ZRXOGEHFDOFXODWHGDV    

 ଵ

‫݈݈݁݉ܵ݀ܽܤ݂݋݁ݏܽܤ‬ሺ‫ܤ݋ܤ‬ሻ ൌ σସ௜ୀଵሺܲ‫ݕݐ݅ݎ݋݅ݎ‬௕௔ௗ௦௠௘௟௟೔ ሻ«   ସ

 ‫ݕݐ݅ݎ݋݅ݎܲ݁ݎ݄݁ݓ‬௕௔ௗ௦௠௘௟௟೔ ݅‫ீݕݐ݅ݎ݋݅ݎܲݏ‬௢ௗ஼௟௔௦௦ ǡ ܲ‫ݕݐ݅ݎ݋݅ݎ‬௅௢௡௚ெ௘௧௛௢ௗ ǡ ܲ‫ݕݐ݅ݎ݋݅ݎ‬ி௘௔௧௨௥௘ா௡௩௬ ǡ ܲ‫்ݕݐ݅ݎ݋݅ݎ‬௬௣௘஼௛௘௖௞௜௡௚ 

 &DOFXODWLRQRI%DVHRI0HWULF %R0 9DOXHVRIHDFKRIWKH PHWULFV DV GLVFXVVHG LQ VHFWLRQ  DUH FDOFXODWHG DQG FRPSDUHG DJDLQVW WKH WKUHVKROG YDOXHV SOHDVH VHH 7DEOH   IRU HDFK FODVV &DOFXODWHGYDOXHRIWKDWSDUWLFXODUPHWULFLVGLYLGHGE\UHVSHFWLYH WKUHVKROG YDOXH WR FDOFXODWH PHWULF YDOXH 09  RI HYHU\ FODVV DV VKRZQLQHTXDWLRQ  

 ‫݁ݑ݈ܸܽܿ݅ݎݐ݁ܯ‬ሺ‫ܸܯ‬ሻ ൌ

ƒŽ…—Žƒ–‡†୑ୣ୲୰୧ୡ ǥ ሺ͵ሻ Š”‡•Бކ୑ୣ୲୰୧ୡ

 ‹ƒŽŽ›–Ї˜ƒŽ—‡‘ˆ‘‹•…ƒŽ…—Žƒ–‡†„›–ƒ‹‰–Їƒ˜‡”ƒ‰‡‘ˆ ‘ˆƒŽŽ•‹šƬ‡–”‹…•ƒ••Š‘™‹‡“—ƒ–‹‘ሺͶሻǤ  ଺

ͳ ƒ•‡‘ˆ‡–”‹…ሺ‘ሻ ൌ ෍ ୑ୣ୲୰୧ୡౠ ǥ ǥ ሺͶሻ ͸ ୨ୀଵ

 ‫ܿ݅ݎݐ݁ܯ݁ݎ݄݁ݓ‬௝ ݅‫ܿ݅ݎݐ݁ܯݏ‬ௐெ஼ ǡ ‫ܿ݅ݎݐ݁ܯ‬ோி஼ ǡ ‫ܿ݅ݎݐ݁ܯ‬஼஻ை ǡ ‫ܿ݅ݎݐ݁ܯ‬௅஼ைெ ǡ ‫ܿ݅ݎݐ݁ܯ‬஽ூ் ǡ ‫ܿ݅ݎݐ݁ܯ‬ேை஼ 

 ,OOXVWUDWLRQE\([DPSOH )RU D FODVV &RQWUROOHU RI WKH VRIWZDUH 25'UXPER[ WZR EDG VPHOOV JRG FODVV DQG IHDWXUH HQY\ ZHUH GHWHFWHG 7KHUHIRUH WKH %R%RIWKH&RQWUROOHUZRXOGEH  ሺͲǤʹͷ ൅ ͲǤʹͷሻ ൌ ͲǤͳʹͷ ‫ ܤ݋ܤ‬ൌ Ͷ 



,QRUGHUWRFDOFXODWH%R0YDOXHIRU&RQWUROOHUFODVV09RIDOOWKH PHWULFV IRU WKLV SDUWLFXODU FODVV ZRXOG EH FRPSXWHG DQG ILQDOO\ DYHUDJHG )RU H[DPSOH WKH YDOXH RI :0& RI &RQWUROOHU FODVV LV KHQFH09:0&ZRXOGEHFDOFXODWHGDV

 6LPLODUO\ 09 IRU 5)&  &%2  ',7  /&20  DQG 12&  ZLOO EH FRPSXWHG 7KHUHDIWHU%R0LVFDOFXODWHGDVIROORZV

 ‫ܯ݋ܤ‬ ሺʹǤͶͳ͸͸͸͹ ൅ ʹǤ͹ͻͷͶͷͷ ൅ ͷǤ͹͸ͻʹ͵ͳ ൅ ͲǤͳͶʹͺͷ͹ ൅ ʹͳͷ ൅ Ͳሻ ൌ ͸ ൌ ͵͹Ǥ͸ͺ͹

 4',5 LV FDOFXODWHG E\ JLYLQJ HTXDO ZHLJKWDJH WR %R% DQG %R0 DVLWFRPHVRXWWREH

 ܳ‫ ܴܫܦ‬ൌ

ሺͲǤͳʹͷ ൅ ͵͹Ǥ͸ͺ͹ሻ ൌ ͳͺǤͻͲ͸ ʹ

 $V WKH YDOXH LV JUHDWHU WKDQ  WKH FODVV LV FRQVLGHUHG WR EH LQ &ULWLFDOFDWHJRU\DQGKHQFHQHHGXUJHQWUHIDFWRULQJWUHDWPHQW  6WHS&ROOHFWWKHVRXUFHFRGHRIWKHLGHQWLILHGVRIWZDUH  6WHS&ROOHFWWKHYDOXHRI& .PHWULFVXLWHIRUHDFKFODVV  IRU HDFK PHWULF IURP 6WHS  5HWULHYH WKH WKUHVKROG YDOXH OLWHUDWXUH  6WHS   /RFDWH WKRVH FODVVHV WKDW DUH  DERYH WKH WKUHVKROG YDOXHVRIUHVSHFWLYH& .PHWULF 6WHS  &DOFXODWH PHWULF YDOXH µ09¶ XVLQJ IROORZLQJ  HTXDWLRQIRUHDFKPHWULFRIHDFKFODVV 09 &DOFXODWHG9DOXH7KUHVKROGYDOXH  6WHS6XP09RIHDFKPHWULFIRUHDFKFODVV  6WHS&DOFXODWH%R0 09IRUHDFKFODVV  6WHS'HWHFWDOOIRXU%DG6PHOOIRUHDFKFODVV 6WHS&DOFXODWH%R%IRUHDFKFODVVDVIROORZV  1RRIEDGVPHOOIRXQG    6WHS&DOFXODWH4',5DVDYHUDJHRI%R%DQG%R0 6WHS  6RUW DOO WKH FODVVHV DV SHU 4',5 YDOXHV LQ  GHFUHDVLQJRUGHU 6WHS   $VVLJQ &ULWLFDO 6HYHULW\ WR WKRVH FODVVHV ZKRVH 4',5H[FHHG+LJK6HYHULW\WRWKRVHZKRVH4',5H[FHHG   0LOG 6HYHULW\ WR WKRVH ZKRVH YDOXH H[FHHG  DQG  DVVLJQDOOUHPDLQLQJFODVVHVORZVHYHULW\ )LJXUH$OJRULWKPIRU3URSRVHG3ULRULWL]DWLRQ7HFKQLTXH

 3ULRULWL]DWLRQRI&ODVVHV 7KHDLPRIRXUVWXG\LVWRSULRULWL]HWKHFODVVHVRQWKHEDVLV4',5 YDOXHDQGWKRVHFODVVHVZKHUHTXDOLW\LVVHYHUHO\EDGWKH\ZRXOG EHWUHDWHGILUVW:HKDYHFRPSXWHGWKHYDOXHRI4',5DVSHUWKH DOJRULWKPVKRZQLQ)LJXUH WRILJXUHRXWZKLFKFODVVVKRXOGEH JLYHQ WKH UHIDFWRULQJ WUHDWPHQW ILUVW 7KH ODUJHU YDOXH RI 4',5 LQGLFDWHV WKDW WKH FODVV VKRXOG EH JLYHQ KLJK SULRULW\ IRU WKH UHIDFWRULQJ WUHDWPHQW DV LW FRQWDLQV FULWLFDO GHVLJQ IODZV /HVVHU YDOXHRI4',5VLJQLILHVWKDWWKHFODVVKDVDQLPSURYHGGHVLJQDQG FDQ EH JLYHQ UHIDFWRULQJ WUHDWPHQW RQ WKH ODWHU VWDJH :H KDYH FUHDWHG IRXU FDWHJRULHV WR EH DVVLJQHG WR HDFK RI WKH FODVV DQG SULRULWL]HWKHPIRUWKHUHIDFWRULQJWUHDWPHQWDVVKRZQLQ7DEOH 

231

&DWHJRULHV &ULWLFDO 6HYHULW\ %DG6PHOO +LJK 6HYHULW\ %DG6PHOO 0LOG 6HYHULW\ %DG6PHOO /RZ 6HYHULW\ %DG6PHOO

7DEOH9DULRXV6HYHULW\/HYHOV 'HVFULSWLRQ %DG VPHOO WKDW QHHGV UHIDFWRULQJ WUHDWPHQW RQ XUJHQW EDVLV WRS SULRULW\ IDOOVLQWKLVFDWHJRU\ %DG VPHOO WKDW QHHGV LPPHGLDWH EXW LV UHIDFWRULQJ WUHDWPHQW FRPSDUDWLYHO\OHVVVHYHUHWKDQFULWLFDO EDGVPHOOIDOOVLQWKLVFDWHJRU\ %DG VPHOO WKDW QHHGV UHIDFWRULQJ WUHDWPHQW EXW QRW RQ WKH LPPHGLDWH EDVLVIDOOVLQWKLVFDWHJRU\ %DGVPHOOVWKDWDUHQRWKDUPIXOIRUWKH VRIWZDUHDQGFDQEHWUHDWHGODWHUIDOOV LQWKLVFDWHJRU\

5DQJH 



 

7DEOHDQG7DEOHUHIOHFWWKDWFODVVHVZKRVHYDOXHLVJUHDWHU WKDQDUHFDWHJRUL]HGDVFULWLFDO1H[WZHLGHQWLILHGFODVVHV ZKRVH 4',5 YDOXHV OLHV EHWZHHQ WKH UDQJHV RI  WR  DQG FRPHV XQGHU WKH KLJK VHYHULW\ OHYHO ,Q UHVW RI WKH FODVVHV  FODVVHV ZHUH IRXQG WREH RI PLOG 4',5 UDQJH WKDW IDOOV EHWZHHQ WRDQGZHUHIRXQGWREHRIORZUDQJHZKRVH4',5 YDOXH LV OHVV WKDQ  )LJXUH  VKRZV WKH EDU JUDSK WKDW GHPRQVWUDWHV WKH QXPEHU RI FODVVHV WKDW IDOOV LQ HDFK 4',5 VHYHULW\OHYHO 

Long Method Bad Smell

God Class Bad Smell



35% Present in classes

Present in classes

65 %

 5(68/76$1'',6&866,21 7KH HPSLULFDO VWXG\ LV FRQGXFWHG LQ RSHQ VRXUFH VRIWZDUH 2U'UXPER[WRREVHUYHWKH LPSDFWRIEDGVPHOOVRQWKHVRIWZDUH PDLQWHQDQFHHIIRUW,QWKLVVHFWLRQZHKDYHWULHGWRDQVZHUDOOWKH TXHVWLRQVWKDWZHUHUDLVHGLQWKHLQWURGXFWLRQVHFWLRQ7KLVVHFWLRQ LV IXUWKHU GLYLGHG LQWR IRXU VXEVHFWLRQV 6HFWLRQ  SUHVHQWV WKH FDWHJRUL]DWLRQ RI DOO WKH FODVVHV RI WKH VRIWZDUH V\VWHP EDVHG RQ WKHEDGVPHOOVGHWHFWHGLQHDFKFODVVDQG6HFWLRQH[SODLQVWKH VLJQLILFDQFH RI 4',5 YDOXHV WR SULRULWL]H WKH FODVVHV DQG WKHLU FDWHJRUL]DWLRQIRUUHIDFWRULQJWUHDWPHQW6HFWLRQGHPRQVWUDWHV WKHHIIRUWVDYHGE\WUHDWLQJRQO\FULWLFDOO\ DIIHFWHG FODVVHVRIWKH VRIWZDUH 6HFWLRQ  SUHVHQWV WKH XWLOLW\ RI WKH ZRUN LQ WKH VRIWZDUHGHYHORSPHQWLQGXVWU\

35 %

65%

Not Present in classes

Not Present in classes



5%

Type Checking Bad Smell

Feature Envy Bad Smell 17%

Present in classes 95% 83%

Not Present in classes

Not Present in classes

 &DWHJRUL]DWLRQ%DVHGRQ%DG6PHOO 54  )RXU LPSRUWDQW EDG VPHOOV LH JRG FODVV ORQJ PHWKRG IHDWXUH HQY\ DQG W\SH FKHFNLQJ DUH LGHQWLILHG LQ HYHU\ FODVV RI WKH VRIWZDUH )LJXUH  VKRZV WKH GLVWULEXWLRQ RI DOO  W\SHV RI EDG VPHOOV ,W LV HYLGHQW IURP )LJXUH  WKDW RI FODVVHV KDYH JRG FODVVEDGVPHOO RIFODVVHVKDYHORQJPHWKRGEDGVPHOO RIFODVVHVKDYHW\SHFKHFNLQJEDGVPHOODQGRIFODVVHVKDYH IHDWXUH HQY\ EDG VPHOO ,Q DGGLWLRQ JRG FODVV DQG ORQJ PHWKRG FRQWDLQVPD[LPXPQXPEHURIFODVVHV

)LJXUHRIFODVVHVZLWKGLIIHUHQWEDGVPHOOV 

7DEOH&DWHJRUL]DWLRQRI6HYHULW\%DVHGRQ4',5YDOXH 6HYHULW\/HYHOV 4',55DQJH &ULWLFDO *UHDWHUWKDQRUHTXDOWR +LJK WR 0LOG WR /RZ /HVVWKDQ $IWHU ILQDOL]LQJ WKH UDQJH RI 4',5 IRU HDFK SULRULW\ OHYHO ZH LGHQWLILHG WKRVH FODVVHV ZKLFK DUH O\LQJ LQWR WKH VSHFLILF UDQJH

232



7DEOH&RXQWRI&ODVVHVLQ%DG6PHOO6HYHULW\/HYHO 6HYHULW\ RI %DG 1XPEHU RI DJHRIFODVVHV 6PHOO &ODVVHV

 &DWHJRUL]DWLRQ%DVHGRQ4',5 54  & .PHWULFVVXLWHDUHXVHGWRFDSWXUHWKHGHVLJQFKDUDFWHULVWLFVRI HDFK DQG HYHU\ FODVV 7R PHDVXUH WKH VHYHULW\ RI WKHVH GHVLJQ PHWULFV WKH YDOXH RI WKHVH PHWULFV DUH FRPSDUHG ZLWK WKHLU FRUUHVSRQGLQJWKUHVKROGYDOXH4',5LVWKHQHYDOXDWHGE\WDNLQJ WKH DFFRXQW RI EDG VPHOOV DQG GHVLJQ PHWULFV +LJKHU YDOXH RI 4',5VLJQLILHVXUJHQWQHHGRIUHIDFWRULQJWUHDWPHQWIRUWKDWFODVV DQG WKXV KHOSV LQ SULRULWL]LQJ WKHP IRU LPPHGLDWH UHIDFWRULQJ WUHDWPHQW7DEOHSURYLGHVWKHUDQJHRI4',5YDOXHIRUFULWLFDO KLJK PLOG DQG ORZ VHYHULW\ RI EDG VPHOOV WKDW ZLOO KHOS LQ FDWHJRUL]LQJ WKH FODVVHV LQWR IRXU OHYHOV RI VHYHULW\ DQG WKXV LQ SULRULWL]LQJWKHP

Present in classes

&ULWLFDO





+LJK





0LOG





/RZ





7RWDO







100 Low Mild

50

High Critical 0  Figure 4 Number of Classes based on QDIR

 (IIRUW6DYLQJ 54  7KH4',5YDOXHRIHYHU\FODVVFDWHJRUL]HVWKHPLQWRIRXUVHYHULW\ OHYHOVDVGHVFULEHGLQ7DEOH

 (IIRUW(VWLPDWLRQRI&ULWLFDOO\$IIHFWHG&ODVVHV 7KH FULWLFDOO\ DIIHFWHG FODVVHV IDOO LQ WKH UDQJH JUHDWHU WKDQ  DV PHQWLRQHG LQ 7DEOH  DQG QHHGV WR EH WUHDWHG RQ KLJK SULRULW\ EDVLV 7RWDO  RXWRI WRWDO FODVVHV DUH IRXQG WR EH FULWLFDOO\ DIIHFWHGE\EDGVPHOODVGHSLFWHGLQ7DEOH ʹͳ ൰ ‫ͲͲͳ כ‬Ψ ൌ ͻǤ͸Ψ ‫݊݋݅ݐܽ݉݅ݐݏܧݐݎ݋݂݂ܧ‬ሺ‫ܧܧ‬ሻ ൌ  ൬ ʹͳ͹ 7KHHIIRUWUHTXLUHGWRWUHDWFULWLFDOO\DIIHFWHGFODVVHVFRPHVRXWWR EH  7KHUHIRUH WKH WRWDO HIIRUW VDYHG WR WUHDW HYHU\ FODVV ZRXOGEHDVIROORZV ‫ ݀݁ݒܽܵݐݎ݋݂݂ܧ‬ൌ ͳͲͲΨ െ ͻǤ͸Ψ ൌ ͻͲǤͶΨ ,WKDVEHHQREVHUYHGIURPWKHDERYHFDOFXODWLRQWKDWDOPRVW RIWKHHIIRUWLVVDYHGVLPSO\E\DSSO\LQJWKHUHIDFWRULQJWUHDWPHQW WRRQO\FULWLFDOO\DIIHFWHGFODVVHV$GDSWLQJWRWKLVSURFHGXUHQRW RQO\ KHOSV WKH PDLQWDLQHU WR DGKHUH WR WKH VWULFW GHDGOLQHV EXW LW DOVRLPSURYHVWKHRYHUDOOTXDOLW\RIWKHVRIWZDUHE\FRQVLGHUDEOH SHUFHQWDJHLQPLQLPXPWLPH

 (IIRUW(VWLPDWLRQRIKLJKO\DIIHFWHGFODVVHV 7KHUHDUHFODVVHVWKDWDUHKLJKO\DIIHFWHGE\EDGVPHOODVZHOO DV 22 PHWULFV DV VKRZQ LQ 7DEOH  %\ SURYLGLQJ UHIDFWRULQJ WUHDWPHQW WR ERWK FULWLFDOO\ DIIHFWHG FODVVHV DV ZHOO DV KLJKO\ DIIHFWHG FODVVHV LQ WRWDO    FODVVHV QHHG WR EH JLYHQ UHIDFWRULQJ WUHDWPHQW RXW RI  FODVVHV +HQFH WRWDO HIIRUW UHTXLUHGWRWUHDWWKHFODVVHVWKDWIDOOLQERWKVHYHULW\OHYHOVRIEDG VPHOOWKDWFRPHVRXWWREH ʹͳ ൅ ͷͷ ൰ ‫ͲͲͳ כ‬Ψ ൌ ͵ͷΨ ‫ ܧܧ‬ൌ ൬ ʹͳ͹ 7KHUHIRUH WKH HIIRUW UHTXLUHG UHPRYLQJ WKH EDG VPHOOV IURP FULWLFDOO\ DIIHFWHG FODVVHV DQG KLJKO\ DIIHFWHG FODVVHV ZRXOG EH 7KHUHIRUHWKHWRWDOHIIRUWVDYHGWRWUHDWHYHU\FODVVZRXOGEH DVIROORZV ‫ ݀݁ݒܽܵݐݎ݋݂݂ܧ‬ൌ ͳͲͲΨ െ ͵ͷΨ ൌ ͸ͷΨ 5HVXOW VKRZV WKDW  RI WKH WRWDO HIIRUW LV VDYHG LI FULWLFDOO\ DIIHFWHG DV ZHOO DV KLJKO\ DIIHFWHG FODVVHV DUH JLYHQ WKH UHIDFWRULQJWUHDWPHQWXQGHUWKHVWULFWGHDGOLQHVRIWLPH7KHUHIRUH WKLV VWXG\ KHOSV WR SHUIRUP XQGHU VWULFW WLPH FRQVWUDLQWV DQG GHDGOLQHVE\VDYLQJWKHODUJHDPRXQWRIHIIRUWDQGWKXVLPSURYHV WKHRYHUDOOTXDOLW\RIWKHVRIWZDUH

 $SSOLFDWLRQRI:RUN 54  6RIWZDUH PDLQWHQDQFH LV D WHGLRXV DQG WLPH FRQVXPLQJ WDVN 7KHUHDUHVWULFWWLPHFRQVWUDLQWVDQGGHDGOLQHVDVVRFLDWHGZLWKLW 7KLV VWXG\ ZLOO KHOS WKH VRIWZDUH PDLQWDLQHUV WR SHUIRUP HIILFLHQWO\ XQGHU WKH SUHVVXUH RI WLPH ZLWKRXW FRPSURPLVLQJ WKH TXDOLW\ RI WKH VRIWZDUH ,W KHOSV WKHP WR NQRZ LQ DGYDQFH ZKLFK FODVVHVFRPHVXQGHUFULWLFDOVHYHULW\RUKLJKVHYHULW\RIEDGVPHOO DQGQHHGV WR EH WUHDWHG LQ WKHLQLWLDO SKDVH VLPSO\ E\ FRPSXWLQJ 4',54',5YDOXHKHOSVWKHPWRSULRULWL]HWKHLUZRUNDQGPDNH WKHP DZDUH ZKLFK SDUW RI VRIWZDUH QHHGV UHIDFWRULQJ WUHDWPHQW ILUVWLQRUGHUWRKDYHDQLPSURYHGTXDOLW\RIVRIWZDUHWRDJUHDWHU H[WHQW

 7+5($76729$/,',7@ ,QWHUQDO YDOLGLW\ LV GHILQHG DV WKH GHJUHH ZLWK ZKLFK FRQFOXVLRQV FDQEHGUDZQDERXWWKHFRQVHTXHQFHRIWKHGHVLJQGHEWVSUHVHQWLQ WKH VRIWZDUH :H KDYH PLQLPL]HG WKLV WKUHDW VXFFHVVIXOO\ E\ H[SORULQJ WKH EDG VPHOOV DQG LWV HIIHFW RQ VRIWZDUH TXDOLW\ $OWKRXJKRQO\IRXUEDGVPHOOVDUHGHWHFWHGLQWKLVHPSLULFDOVWXG\ KRZHYHU WKH FRQFOXVLRQV GUDZQ DUH TXLWH FRQVLVWHQW LQ QDWXUH ,Q IXWXUHZHDUHSODQQLQJWRUHSHDWWKH ZRUNZLWKPRUHEDGVPHOOV ([WHUQDOYDOLGLW\LVGHILQHGDVWKHGHJUHHZLWKZKLFKWKHUHVXOWVRI WKLV HPSLULFDO VWXG\ FDQ EH REWDLQHG LQ JHQHUDOL]HG IRUP $V ZH KDYH WDNHQ RQO\ RQH GDWDVHW WR SURGXFH WKH UHVXOWV WKHUHIRUH WKLV WKUHDW H[LVW LQ RXU VWXG\ ,Q IXWXUH ZH DUH SODQQLQJ WR UHSHDW WKLV VWXG\RQRWKHUREMHFWRULHQWHGV\VWHPVDVZHOO

 &21&/86,21$1')8785(:25. ,Q WKLV SDSHU ZH SURSRVHG D QRYHO PHWKRG RI SULRULWL]DWLRQ RI FODVVHV IRU UHIDFWRULQJ WUHDWPHQW $ QHZ PHWULF 4XDOLW\ 'HSUHFLDWLRQ ,QGH[ 5XOH 4',5  LV SURSRVHG EDVHG RQ WKH PHDVXUDEOH HIIHFWV IURP GHVLJQPHWULFV DV ZHOO DV WKHEDG VPHOOV SUHVHQWLQWKHFRGHGXHWRWKHGHVLJQIODZVLQHDFKRIWKHFODVVRI REMHFW RULHQWHG V\VWHPV &KLGDPEHU DQG .HPHUHU PHWULF 6XLWH LV FRQVLGHUHG WR HYDOXDWHWKHREMHFW RULHQWHG FKDUDFWHULVWLFVRI HYHU\ FODVV 3UHVHQFH RI IRXU LPSRUWDQW EDG VPHOOV *RG &ODVV /RQJ 0HWKRG 7\SH &KHFNLQJ DQG )HDWXUH (QY\ LV DOVR LGHQWLILHG 22 PHWULFVDQGEDGVPHOOVDUHFRPELQHGLQFHUWDLQUDWLRWRHYDOXDWHWKH YDOXH RI 4',5 IRU HDFK FODVV 3ULRULWL]DWLRQ RI FODVVHV IRU UHIDFWRULQJ WUHDWPHQW LV FDUULHG RXW E\ PDSSLQJ WKH 4',5 YDOXH ZLWKWKHVHYHULW\RIEDGVPHOOVDQGGHVLJQIDXOWV7RSPRVWSULRULW\ LVDVVLJQHGWRWKHRIWKHWRWDOFODVVHVEDVHGRQWKH4',5YDOXH DQG UHVSHFWLYH UHIDFWRULQJ PHWKRG LV DOVR VXJJHVWHG 6HFRQG SULRULW\ LV DVVLJQHG WR WKH QH[W  RI WKH WRWDO FODVVHV EDVHG RQ 4',5YDOXHV5HVSHFWLYHUHIDFWRULQJWUHDWPHQWWRWKHVHFODVVHVFDQ EHSURYLGHGDVSHUWKHDYDLODELOLW\RIWLPHDQGEXGJHWFRQVWUDLQWV 5HPDLQLQJDQGFODVVHVZHUHIRXQGWREHRIPLOGDQGORZ VHYHULW\UHVSHFWLYHO\DQGWKHVHFODVVHVFDQEHUHIDFWRUHGDWWKHODWHU VWDJH 7KH UHVXOWV RI WKH VWXG\ VKRZV WKDW E\ SURYLGLQJ UHIDFWRULQJ WUHDWPHQW WR RQO\ FULWLFDOO\ DIIHFWHG FODVVHV ZKLFK FRQVWLWXWH  RI WKH WRWDO FODVVHVRYHUDOOLPSURYHPHQWLQ VRIWZDUHTXDOLW\ FDQEHDFKLHYHG,IWKHKLJKVHYHULW\FODVVHVDUHDOVRSURYLGHGWKH UHIDFWRULQJ WUHDWPHQW LW LV REVHUYHG WKDW E\ WUHDWLQJ RQO\  RI WKHFODVVHVRYHUDOOLPSURYHPHQWLQTXDOLW\LVREVHUYHG 7KLVUHVHDUFKXVHGWKH PHGLXP VL]HG VRIWZDUH IRU WKH DQDO\VLVRI WKHEDGVPHOOVLQIXWXUHZHDUHSODQQLQJWRUHSHDWWKLVFDVHVWXG\ RQ ODUJHU VRIWZDUH V\VWHPV ,Q RUGHU WR KDYH PRUH JHQHUDOL]HG UHVXOWV ZH DUH DOVR SODQQLQJ WR H[SHULPHQW WKLV VWXG\ RQ RWKHU REMHFWRULHQWHG V\VWHPV OLNH &3\WKRQ HWF $V D SDUWRI LQLWLDO VWXG\ RQO\ IRXU UHIDFWRULQJ WUHDWPHQWV DUHXVHGKRZHYHU DXWKRUV DUHSODQQLQJWRLQFOXGHPRUHEDGVPHOOVLQIXWXUH:HKRSHWKDWE\ SURYLGLQJUHOHYDQWUHIDFWRULQJWUHDWPHQWVWRPRVWVHYHUHO\DIIHFWHG FODVVHVDQHIILFLHQWPDLQWHQDQFHWDVNFDQEHSHUIRUPHGWRDFKLHYH VRIWZDUHTXDOLW\LQOLPLWHGWLPHFRQVWUDLQWV 

 5()(5(1&(6 >@ $EUHX)%DQG&DUDSXFD52EMHFW2ULHQWHG 6RIWZDUH(QJLQHHULQJ0HDVXULQJDQG&RQWUROOLQJWKH 'HYHORSPHQW3URFHVV3URFWK,QWHUQDWLRQDO&RQIHUHQFHRQ 6RIWZDUH4XDOLW\0F/HDQ9LUJLQLD86$'2, 

233

KWWSFLWHVHHU[LVWSVXHGXYLHZGRFGRZQORDG"GRL   UHS UHS W\SH SGI >@ %DVLOL95%ULDQG/DQG0HOR:/$YDOLGDWLRQ RIREMHFWRULHQWHGGHVLJQPHWULFVDVTXDOLW\ LQGLFDWRUV6RIWZDUH(QJLQHHULQJ,(((7UDQVDFWLRQV  RQSS'2, KWWSG[GRLRUJ >@ &KLGDPEHU65DQG.HPHUHU&)$0HWULFV6XLWH IRU22'HVLJQ,(((7UDQVDFWLRQVRQ6RIWZDUH(QJLQHHULQJ YROQRSS'2,  KWWSG[GRLRUJ >@ 'DJSLQDU0DQG-KDQNH-+3UHGLFWLQJ 0DLQWDLQDELOLW\ZLWKREMHFWRULHQWHGPHWULFDQHPSLULFDO FRPSDULVRQ3URFWK:RUNLQJ&RQIHUHQFHRQ5HYHUVH (QJLQHHULQJ :&5( SS '2, :&5( >@ 'HOLJLDQQLV,6KHSSHUG05RXPHOLRWLV0DQG6WDPHORV ,$Q(PSLULFDO,QYHVWLJDWLRQRIDQ2EMHFW2ULHQWHG 'HVLJQ+HXULVWLFIRU0DLQWDLQDELOLW\-6\VW6RIWZ   SS'2, KWWSG[GRLRUJ6    >@ (OLVK02DQG(OLVK.2$SSOLFDWLRQRI7UHH1HW LQ3UHGLFWLQJ2EMHFW2ULHQWHG6RIWZDUH0DLQWDLQDELOLW\$ &RPSDUDWLYH6WXG\(XURSHDQ&RQIHUHQFHRQ6RIWZDUH 0DLQWHQDQFHDQG5HHQJLQHHULQJSS'2,  KWWSG[GRLRUJI&605 >@ )RQWDQD)$DQG%UDLRQH3DQG=DQRQL0 $XWRPDWLFGHWHFWLRQRIEDGVPHOOVLQFRGH$QH[SHULPHQWDO DVVHVV-RXUQDORI2EMHFW7HFKQRORJ\YRO1RSS '2, KWWSG[GRLRUJMRWD >@ )RZOHU0DQG%HFN.5HIDFWRULQJLPSURYLQJWKH GHVLJQRIH[LVWLQJFRGH$GGLVRQ:HVOH\/RQJPDQ 3XEOLVKLQJ&R,QF%RVWRQ0$86$'2,  B >@ ,(((6WDQGDUG,(((6WDQGDUGIRU6RIWZDUH 0DLQWHQDQFH,163(&$FFHVVLRQ1XPEHU'2,  KWWSG[GRLRUJ,(((67' >@.DWDRND@.RWHQ&9DQG*UD\$5$QDSSOLFDWLRQRI %D\HVLDQQHWZRUNIRUSUHGLFWLQJREMHFWRULHQWHGVRIWZDUH PDLQWDLQDELOLW\,QIRUPDWLRQDQG6RIWZDUH7HFKQRORJ\YRO QRSS'2,  KWWSG[GRLRUJMLQIVRI >@/L:DQG6KDWQDZL5$QHPSLULFDOVWXG\RIWKHEDG VPHOOVDQGFODVVHUURUSUREDELOLW\LQWKHSRVWUHOHDVHREMHFW RULHQWHGV\VWHPHYROXWLRQ-RXUQDORI6\VWHPVDQG6RIWZDUH 9RO1RSS'2,  KWWSG[GRLRUJMMVV >@/RUHQ]0DQG.LGG-2EMHFWRULHQWHGVRIWZDUH PHWULFVDSUDFWLFDOJXLGH3UHQWLFH+DOO,QF

234

>@/R]DQR$:HUPHOLQJHU0DQG1XVHLEHK% $VVHVVLQJWKHLPSDFWRIEDGVPHOOVXVLQJKLVWRULFDO LQIRUPDWLRQ,Q3URFHHGLQJVRI1LQWKLQWHUQDWLRQDOZRUNVKRS RQ3ULQFLSOHVRIVRIWZDUHHYROXWLRQLQFRQMXQFWLRQZLWKWKH WK(6(&)6(MRLQWPHHWLQJ'XEURYQLN&URDWLD$&01HZ @0DOKRWUD5DQG&KXJ$$SSOLFDWLRQRIJURXS PHWKRGRIGDWDKDQGOLQJPRGHOIRUVRIWZDUHPDLQWDLQDELOLW\ SUHGLFWLRQXVLQJ22V\VWHPV,QWHUQDWLRQDO-RXUQDORI 6\VWHP$VVXUDQFHYROQRSS '2,  KWWSOLQNVSULQJHUFRPDUWLFOH)V  >@0DUWLQ5&$JLOH6RIWZDUH'HYHORSPHQW3ULQFLSOHV 3DWWHUQVDQG3UDFWLFHV3HDUVRQSS >@0HQV77RXUZH70XQR])%H\RQGWKH 5HIDFWRULQJ%URZVHU$GYDQFHG7RRO6XSSRUWIRU6RIWZDUH 5HIDFWRULQJ3URFHHGLQJVRIWKH,QWHUQDWLRQDO:RUNVKRSRQ 3ULQFLSOHVRI6RIWZDUH(YROXWLRQ+HOVLQNL)LQODQG (QJLQHHULQJDQG0DQDJHPHQW,661YROQR SS'2,  KWWSG[GRLRUJ,:36( >@0RQGHQ$1DNDH'.DPL\D76DWR6DQG 0DWVXPRWR.6RIWZDUH4XDOLW\$QDO\VLVE\&RGH &ORQHVLQ,QGXVWULDO/HJDF\6RIWZDUH3URF,QW O6\PS 6RIWZ0HWULFVSS'2,  KWWSG[GRLRUJ0(75,& >@6KDWQDZL5/L:DQG6ZDLQ-)LQGLQJVRIWZDUH PHWULFVWKUHVKROGYDOXHVXVLQJ52&FXUYHV-RXUQDORI VRIWZDUHPDLQWHQDQFHDQGHYROXWLRQUHVHDUFKDQGSUDFWLFH YROQRSS'2,  KWWSG[GRLRUJVPUY >@6LPRQ)6/HZHUHQW]&0HWULFVEDVHGUHIDFWRULQJ 3URF(XURSHDQ&RQI6RIWZDUH0DLQWHQDQFHDQG 5HHQJLQHHULQJ,(((&RPSXWHU6RFLHW\:DVKLQJWRQ'& 86$SS'2,  KWWSG[GRLRUJ >@6WURJJ\ORV.DQG6SLQHOOLV'5HIDFWRULQJ±'RHVLW LPSURYH6RIWZDUH4XDOLW\"3URFWK,QWHUQDWLRQDO :RUNVKRSRQ6RIWZDUH4XDOLW\SS'2,  KWWSG[GRLRUJ:264 >@:LONLQJ'.KDQ8)DQG.RZDOHZVNL6$Q (PSLULFDO(YDOXDWLRQRI5HIDFWRULQJH,QIRUPDWLFD6RIWZDUH (QJLQHHULQJ-RXUQDOYROQRSS >@2XQL$.HVVHQWLQL0%HFKLNK6DQG6DKUDRXL+ 3ULRULWL]LQJFRGHVPHOOVFRUUHFWLRQWDVNVXVLQJFKHPLFDO UHDFWLRQRSWLPL]DWLRQ6RIWZDUH4XDOLW\-RXUQDOYROQR SS'2, KWWSG[GRLRUJV