On the Relationship Between Program Evolution and Fault-proneness: An Empirical Study. Jaafar, F., Hassaine, S., Gu�h�neuc, Y., Hamel, S., & Adams, B. In Cleve, A. & Ricca, F., editors, Proceedings of the 17<sup>th</sup> European Conference on Software Maintenance and Reengineering (CSMR), pages 15–24, March, 2013. IEEE CS Press. 10 pages.Paper abstract bibtex Over the years, many researchers have studied the evolution and maintenance of object-oriented source code in order to understand the possibly costly erosion of the software. However, many studies thus far did not link the evolution of classes to faults. Since (1) some classes evolve independently, other classes have to do it together with others (co-evolution); and (2) not all classes are meant to last forever, but some are meant for experimentation or to try out an idea that was then dropped or modified. In this paper, we group classes based on their evolution to infer their lifetime models and co-evolution trends. Then, we link each group's evolution to faults. We create phylogenetic trees showing the evolutionary history of programs and we use such trees to facilitate spotting the program code decay. We perform an empirical study, on three open-source programs: ArgoUML, JFreechart, and XercesJ, to examine the relation between the evolution of object-oriented source code at class level and fault-proneness. Our results indicate that (1) classes having a specific lifetime model are significantly less fault-prone than other classes and (2) faults fixed by maintaining co-evolved classes are significantly more frequent than faults fixed using not co-evolved classes.
@INPROCEEDINGS{Jaafar13-CSMR-MacroCoChangeBugProneness,
AUTHOR = {Fehmi Jaafar and Salima Hassaine and Yann-Ga�l Gu�h�neuc and
Sylvie Hamel and Bram Adams},
BOOKTITLE = {Proceedings of the 17<sup>th</sup> European Conference on Software Maintenance and Reengineering (CSMR)},
TITLE = {On the Relationship Between Program Evolution and
Fault-proneness: An Empirical Study},
YEAR = {2013},
OPTADDRESS = {},
OPTCROSSREF = {},
EDITOR = {Anthony Cleve and Filippo Ricca},
MONTH = {March},
NOTE = {10 pages.},
OPTNUMBER = {},
OPTORGANIZATION = {},
PAGES = {15--24},
PUBLISHER = {IEEE CS Press},
OPTSERIES = {},
OPTVOLUME = {},
KEYWORDS = {Topic: <b>Evolution patterns</b>, Venue: <c>CSMR</c>},
URL = {http://www.ptidej.net/publications/documents/CSMR13c.doc.pdf},
PDF = {http://www.ptidej.net/publications/documents/CSMR13c.ppt.pdf},
ABSTRACT = {Over the years, many researchers have studied the
evolution and maintenance of object-oriented source code in order to
understand the possibly costly erosion of the software. However, many
studies thus far did not link the evolution of classes to faults.
Since (1) some classes evolve independently, other classes have to do
it together with others (co-evolution); and (2) not all classes are
meant to last forever, but some are meant for experimentation or to
try out an idea that was then dropped or modified. In this paper, we
group classes based on their evolution to infer their lifetime models
and co-evolution trends. Then, we link each group's evolution to
faults. We create phylogenetic trees showing the evolutionary history
of programs and we use such trees to facilitate spotting the program
code decay. We perform an empirical study, on three open-source
programs: ArgoUML, JFreechart, and XercesJ, to examine the relation
between the evolution of object-oriented source code at class level
and fault-proneness. Our results indicate that (1) classes having a
specific lifetime model are significantly less fault-prone than other
classes and (2) faults fixed by maintaining co-evolved classes are
significantly more frequent than faults fixed using not co-evolved
classes.}
}
Downloads: 0
{"_id":"anjdWCPxeNMTsfjrt","bibbaseid":"jaafar-hassaine-guhneuc-hamel-adams-ontherelationshipbetweenprogramevolutionandfaultpronenessanempiricalstudy-2013","downloads":0,"creationDate":"2018-01-17T20:29:42.316Z","title":"On the Relationship Between Program Evolution and Fault-proneness: An Empirical Study","author_short":["Jaafar, F.","Hassaine, S.","Gu�h�neuc, Y.","Hamel, S.","Adams, B."],"year":2013,"bibtype":"inproceedings","biburl":"http://www.yann-gael.gueheneuc.net/Work/Publications/Biblio/complete-bibliography.bib","bibdata":{"bibtype":"inproceedings","type":"inproceedings","author":[{"firstnames":["Fehmi"],"propositions":[],"lastnames":["Jaafar"],"suffixes":[]},{"firstnames":["Salima"],"propositions":[],"lastnames":["Hassaine"],"suffixes":[]},{"firstnames":["Yann-Ga�l"],"propositions":[],"lastnames":["Gu�h�neuc"],"suffixes":[]},{"firstnames":["Sylvie"],"propositions":[],"lastnames":["Hamel"],"suffixes":[]},{"firstnames":["Bram"],"propositions":[],"lastnames":["Adams"],"suffixes":[]}],"booktitle":"Proceedings of the 17<sup>th</sup> European Conference on Software Maintenance and Reengineering (CSMR)","title":"On the Relationship Between Program Evolution and Fault-proneness: An Empirical Study","year":"2013","optaddress":"","optcrossref":"","editor":[{"firstnames":["Anthony"],"propositions":[],"lastnames":["Cleve"],"suffixes":[]},{"firstnames":["Filippo"],"propositions":[],"lastnames":["Ricca"],"suffixes":[]}],"month":"March","note":"10 pages.","optnumber":"","optorganization":"","pages":"15–24","publisher":"IEEE CS Press","optseries":"","optvolume":"","keywords":"Topic: <b>Evolution patterns</b>, Venue: <c>CSMR</c>","url":"http://www.ptidej.net/publications/documents/CSMR13c.doc.pdf","pdf":"http://www.ptidej.net/publications/documents/CSMR13c.ppt.pdf","abstract":"Over the years, many researchers have studied the evolution and maintenance of object-oriented source code in order to understand the possibly costly erosion of the software. However, many studies thus far did not link the evolution of classes to faults. Since (1) some classes evolve independently, other classes have to do it together with others (co-evolution); and (2) not all classes are meant to last forever, but some are meant for experimentation or to try out an idea that was then dropped or modified. In this paper, we group classes based on their evolution to infer their lifetime models and co-evolution trends. Then, we link each group's evolution to faults. We create phylogenetic trees showing the evolutionary history of programs and we use such trees to facilitate spotting the program code decay. We perform an empirical study, on three open-source programs: ArgoUML, JFreechart, and XercesJ, to examine the relation between the evolution of object-oriented source code at class level and fault-proneness. Our results indicate that (1) classes having a specific lifetime model are significantly less fault-prone than other classes and (2) faults fixed by maintaining co-evolved classes are significantly more frequent than faults fixed using not co-evolved classes.","bibtex":"@INPROCEEDINGS{Jaafar13-CSMR-MacroCoChangeBugProneness,\r\n AUTHOR = {Fehmi Jaafar and Salima Hassaine and Yann-Ga�l Gu�h�neuc and \r\n Sylvie Hamel and Bram Adams},\r\n BOOKTITLE = {Proceedings of the 17<sup>th</sup> European Conference on Software Maintenance and Reengineering (CSMR)},\r\n TITLE = {On the Relationship Between Program Evolution and \r\n Fault-proneness: An Empirical Study},\r\n YEAR = {2013},\r\n OPTADDRESS = {},\r\n OPTCROSSREF = {},\r\n EDITOR = {Anthony Cleve and Filippo Ricca},\r\n MONTH = {March},\r\n NOTE = {10 pages.},\r\n OPTNUMBER = {},\r\n OPTORGANIZATION = {},\r\n PAGES = {15--24},\r\n PUBLISHER = {IEEE CS Press},\r\n OPTSERIES = {},\r\n OPTVOLUME = {},\r\n KEYWORDS = {Topic: <b>Evolution patterns</b>, Venue: <c>CSMR</c>},\r\n URL = {http://www.ptidej.net/publications/documents/CSMR13c.doc.pdf},\r\n PDF = {http://www.ptidej.net/publications/documents/CSMR13c.ppt.pdf},\r\n ABSTRACT = {Over the years, many researchers have studied the \r\n evolution and maintenance of object-oriented source code in order to \r\n understand the possibly costly erosion of the software. However, many \r\n studies thus far did not link the evolution of classes to faults. \r\n Since (1) some classes evolve independently, other classes have to do \r\n it together with others (co-evolution); and (2) not all classes are \r\n meant to last forever, but some are meant for experimentation or to \r\n try out an idea that was then dropped or modified. In this paper, we \r\n group classes based on their evolution to infer their lifetime models \r\n and co-evolution trends. Then, we link each group's evolution to \r\n faults. We create phylogenetic trees showing the evolutionary history \r\n of programs and we use such trees to facilitate spotting the program \r\n code decay. We perform an empirical study, on three open-source \r\n programs: ArgoUML, JFreechart, and XercesJ, to examine the relation \r\n between the evolution of object-oriented source code at class level \r\n and fault-proneness. Our results indicate that (1) classes having a \r\n specific lifetime model are significantly less fault-prone than other \r\n classes and (2) faults fixed by maintaining co-evolved classes are \r\n significantly more frequent than faults fixed using not co-evolved \r\n classes.}\r\n}\r\n\r\n","author_short":["Jaafar, F.","Hassaine, S.","Gu�h�neuc, Y.","Hamel, S.","Adams, B."],"editor_short":["Cleve, A.","Ricca, F."],"key":"Jaafar13-CSMR-MacroCoChangeBugProneness","id":"Jaafar13-CSMR-MacroCoChangeBugProneness","bibbaseid":"jaafar-hassaine-guhneuc-hamel-adams-ontherelationshipbetweenprogramevolutionandfaultpronenessanempiricalstudy-2013","role":"author","urls":{"Paper":"http://www.ptidej.net/publications/documents/CSMR13c.doc.pdf"},"keyword":["Topic: <b>Evolution patterns</b>","Venue: <c>CSMR</c>"],"metadata":{"authorlinks":{"gu�h�neuc, y":"https://bibbase.org/show?bib=http%3A%2F%2Fwww.yann-gael.gueheneuc.net%2FWork%2FPublications%2FBiblio%2Fcomplete-bibliography.bib&msg=embed","guéhéneuc, y":"http://www.yann-gael.gueheneuc.net/"}}},"search_terms":["relationship","between","program","evolution","fault","proneness","empirical","study","jaafar","hassaine","gu�h�neuc","hamel","adams"],"keywords":["topic: <b>evolution patterns</b>","venue: <c>csmr</c>"],"authorIDs":["2tFXMaTSHJKEB5ebi","2wY5eBcsYmbPNfmMS","36dm7jaw5EK5Wrr4D","3NxaNKic3nkXi568L","3S5Dkpx7DNefzJrnf","3afmfmoPr4SHa8B5F","3wmHB7JoQbQz2ujun","4YBWWbao6RKgiyGJE","4jZj9tB4SJ8zEEgHk","5CvA2hsaib2bPMaef","5TFJbxqRDGFj2P8Rg","5a5fb236a39f2c3645000032","5a8f17e006df23bc34000020","5cx79LBmaWcihgM4J","5de9a6425b51bcde01000042","5dee1197584fb4df010000fc","5df228a41e4fe9df0100012c","5df617f72b34d0de0100008b","5dfa14782e791dde010000ea","5dfe3d5e68d95dde01000080","5e02525b6ffa15df0100009f","5e0662c07da1d1de0100021a","5e093e8b934cacdf0100008b","5e0a61673eccf6e001000016","5e0b75b7e73cd6de010000f9","5e0d4ca6ae5827df0100007f","5e0ddf08552b25df01000137","5e0e5c41ac7d11df010000a3","5e1268e7a4cabfdf0100002c","5e12c45a70e2c4f201000043","5e157809f1f31adf01000006","5e162ca1df1bb4de01000123","5e185cff809b84f201000091","5e1a6c39b16ec5df0100000f","5e21b27e96aea7de01000084","5e22c57e49e2b4df0100000f","5e23c2aeb93b51de01000030","5e245835079bb2df0100007d","5e24fa3e2e79a1f201000027","5e26252f408641df01000161","5e26bfbd8535cedf0100005c","5e280fd1f860fcde0100006a","5e2a827f881468de01000080","5e2eb321b84405df01000128","5e2ef635e374eede0100001a","5e2fd6a74e91a9df01000010","5e3266bb5633c9de01000068","5e32ab0ee17accde0100012a","5e32bdec466076df010000d9","5e32d603150c84df01000068","5e34fb145978bef2010000a6","5e36bc8e7b975dde0100009a","5e389940030bcadf010001b4","5e39dd9a3687dddf010000a4","5e3ad173f2a00cdf01000206","5e3dcd50d51253de0100003d","5e3e8713666d79df010000a6","5e3ed80986a596de010000b9","5e3fefe1add5fbde01000087","5e409c79d668c6de010000c7","5e41795ed9f47bee01000194","5e41cd5be7c67ade010000eb","5e42ef1ca6f4a6f2010001eb","5e46dcb342fb31df01000113","5e46f12c461d04f201000078","5e478c9e27a0c8de010000ef","5e47fb06385298df010000b2","5e4add1941072bdf01000011","5e4c1c792dc400de0100011a","5e4c6262271596df010001b9","5e4f0360338acfde01000156","5e4f11b0e5389bde0100007e","5e530b976d68b8df010000a5","5e54ad6d929495df0100007c","5e57161b429006de0100005a","5e57839fcef9b7de0100003c","5e580f5a6a456fde0100004f","5e5afa78038583de010000f7","5e5b477174a3e7df010000b7","5e5d370173eb2edf01000038","5e5fca336b32b0f20100011b","5e60e7f0839e59df010000e8","5e6377cfae1c4dde0100011e","5e657007de41b9df0100017a","5e676f0910be53de0100001a","5gPbX6aQJFjpv2Na9","6eE2yRdMDQr2WGXuA","6iHE5tuM7yTfLd2pA","7BPWyvMr5e6bzbk7T","7RFwhpGkpZRsLwnmB","7amRA4ALcR2mksheF","7mkQL8eiftj5bGMzB","8jPjKehCMsj7ncvxN","8peLXfWtCSic5n7oz","95eRgTcabnJwF46f3","9Ba9JxkjQBCeGBZKg","9DjgvzQrx27uxbyJj","9HD56d3k5yrB9H9oq","9RtPuXNyeS3k8LM9J","9diLYpd8cMmjBh54T","9nx6Yv3XREwJDyRms","AfJhKcg96muyPdu7S","BGvchZsjW7Wejj9Cz","BYwdHpGr6xT5vmE5C","Bah6LM7GXdXTy8GGA","BmH2ytt7sXwPHcrse","CqJYxtqe6qBbtd5yz","D4kEZ2JcWCoMvRPy7","DFWW7D6Y7X57n4cbM","DSorPqHDfrFiNM5Ew","DWXisKXaQArvre3QL","DwBm6isMpKSHHkhAd","E88raoktD8ANF92Yu","EAjLox7ycbofcCXce","F8rzFhY9yWA7pBX4j","G3iynDKjz9BHJbrdg","GJw6mQETXADSCZuuk","GWK5669HLqPyYMQ5J","GibAXjj4xXdFT8qWh","HzFZpgGcfabjAp9x6","KJ4eYziy6hanF9kr9","Kcyu7uncEFiYzYP2D","N4zzhqcywSzDDYsdh","NCDg3xE2mPcNAu7LX","NvgbTAz3hZ9SevZvd","QbcDS3wK43sRASvgu","S3b7Bb9wwfpByQgbo","SXJaeFCgBDJ5HAHtj","T5nL8TGrggoLAF8Dj","W9vT8YcCNFEcp9mWQ","WZ5CpBEFNsb2ivfah","XxviSwRxhwgNwsraH","Z2Zs662GpXqKBEAMc","ZKYFgjHGm7PE4Y2kv","a5qpGirN3B5BLKdMh","ahGA65oGDChNYp7Mb","bA7pGCMS9AB2RBo2p","bTQb3TcrbBShtqFPS","cYnqisf4wzBsM7MF5","cjHpaYiWD5eX7btH4","ckrbesqi3pWqfF2nP","dH8EsWHZtCFuQk5bq","dS5kvBMnk3LMQe56w","eXsFRMzE7WfbHbBL4","fmmsBu4m6ayKtuopf","hdXr3PD8cHNWyAdCe","hgZxckC87u2A57teF","juvCjffHJaPQf44im","keQBT2Apb9yaev8AH","myHdF8zARwW5uGmFs","nJLfaznnYgFqWQQrv","onghitNWSvN2FpCaN","osgPwDW2y5KDXRa2i","pAWFMDHu5dNixqPAq","pLvmgrCjMeDYJiJxB","q4azvWakEjp2TQM7S","qBee6Md9YwRKwkeW3","qQky2Csek4mroLn2P","tJz4YBCqAzZAzek5d","tLtjttw8dEqF6YQ4s","uQ6jCrPijzAmZyfXz","vGEaFNt7mm92Z7GXc","vRkMmE65HSFpCk6FW","vsEsf8FR3Fxb6z7fJ","x5ejzvDeXCc89Dukv","xEQyC5shxpYySSJJm","xhwDdvQ7MYxa6keXm","xkviMnkrGBneANvMr","y64rFMcyp7tDsBrJQ","yBYJWSShoKkMG8aPE","yQPghCwQv22kf6dFq","yd5sCxaEiu5vWizTq"],"dataSources":["Sed98LbBeGaXxenrM","8vn5MSGYWB4fAx9Z4"]}