Using FCA to Suggest Refactorings to Correct Design Defects. Moha, N., Rezgui, J., Gu�h�neuc, Y., Valtchev, P., & El Boussaidi, G. In Yahia, S. B. & Nguifo, E. M., editors, Proceedings of the 4<sup>th</sup> International Conference on Concept Lattices and their Applications (CLA), pages 297–302, September, 2006. IEEE CS Press.  6 pages. Short paper.
Paper  abstract   bibtex   Design defects are poor design choices resulting in a hard-to- maintain software, hence their detection and correction are key steps of a disciplined software process aimed at yielding high-quality software artifacts. While modern structure- and metric-based techniques enable precise detection of design defects, the correction of the discovered defects, e.g., by means of refactorings, remains a manual, hence error-prone, activity. As many of the refactorings amount to re-distributing class members over a (possibly extended) set of classes, formal concept analysis (FCA) has been successfully applied in the past as a formal framework for refactoring exploration. Here we propose a novel approach for defect removal in object-oriented programs that combines the effectiveness of metrics with the theoretical strength of FCA. A case study of a specific defect, the Blob, drawn from the Azureus project illustrates our approach.
@INPROCEEDINGS{Moha06-CLA-RefactoringSuggestion,
   AUTHOR       = {Naouel Moha and Jihene Rezgui and Yann-Ga�l Gu�h�neuc and 
      Petko Valtchev and El Boussaidi, Ghizlane},
   BOOKTITLE    = {Proceedings of the 4<sup>th</sup> International Conference on Concept Lattices and their Applications (CLA)},
   TITLE        = {Using FCA to Suggest Refactorings to Correct Design 
      Defects},
   YEAR         = {2006},
   OPTADDRESS   = {},
   OPTCROSSREF  = {},
   EDITOR       = {Sadok Ben Yahia and Engelbert Mephu Nguifo},
   MONTH        = {September},
   NOTE         = {6 pages. Short paper.},
   OPTNUMBER    = {},
   OPTORGANIZATION = {},
   PAGES        = {297--302},
   PUBLISHER    = {IEEE CS Press},
   OPTSERIES    = {},
   OPTVOLUME    = {},
   KEYWORDS     = {Topic: <b>Code and design smells</b>, Venue: <c>CLA</c>},
   URL          = {http://www.ptidej.net/publications/documents/CLA06.doc.pdf},
   PDF          = {http://www.ptidej.net/publications/documents/CLA06.ppt.pdf},
   ABSTRACT     = {Design defects are poor design choices resulting in a 
      hard-to- maintain software, hence their detection and correction are 
      key steps of a disciplined software process aimed at yielding 
      high-quality software artifacts. While modern structure- and 
      metric-based techniques enable precise detection of design defects, 
      the correction of the discovered defects, e.g., by means of 
      refactorings, remains a manual, hence error-prone, activity. As many 
      of the refactorings amount to re-distributing class members over a 
      (possibly extended) set of classes, formal concept analysis (FCA) has 
      been successfully applied in the past as a formal framework for 
      refactoring exploration. Here we propose a novel approach for defect 
      removal in object-oriented programs that combines the effectiveness 
      of metrics with the theoretical strength of FCA. A case study of a 
      specific defect, the \textit{Blob}, drawn from the Azureus project 
      illustrates our approach.}
} 
Downloads: 0
{"_id":"TyKkvMd8X2JAuXXCt","bibbaseid":"moha-rezgui-guhneuc-valtchev-elboussaidi-usingfcatosuggestrefactoringstocorrectdesigndefects-2006","downloads":0,"creationDate":"2018-01-17T20:29:42.568Z","title":"Using FCA to Suggest Refactorings to Correct Design Defects","author_short":["Moha, N.","Rezgui, J.","Gu�h�neuc, Y.","Valtchev, P.","El Boussaidi, G."],"year":2006,"bibtype":"inproceedings","biburl":"http://www.yann-gael.gueheneuc.net/Work/Publications/Biblio/complete-bibliography.bib","bibdata":{"bibtype":"inproceedings","type":"inproceedings","author":[{"firstnames":["Naouel"],"propositions":[],"lastnames":["Moha"],"suffixes":[]},{"firstnames":["Jihene"],"propositions":[],"lastnames":["Rezgui"],"suffixes":[]},{"firstnames":["Yann-Ga�l"],"propositions":[],"lastnames":["Gu�h�neuc"],"suffixes":[]},{"firstnames":["Petko"],"propositions":[],"lastnames":["Valtchev"],"suffixes":[]},{"propositions":[],"lastnames":["El","Boussaidi"],"firstnames":["Ghizlane"],"suffixes":[]}],"booktitle":"Proceedings of the 4<sup>th</sup> International Conference on Concept Lattices and their Applications (CLA)","title":"Using FCA to Suggest Refactorings to Correct Design Defects","year":"2006","optaddress":"","optcrossref":"","editor":[{"firstnames":["Sadok","Ben"],"propositions":[],"lastnames":["Yahia"],"suffixes":[]},{"firstnames":["Engelbert","Mephu"],"propositions":[],"lastnames":["Nguifo"],"suffixes":[]}],"month":"September","note":"6 pages. Short paper.","optnumber":"","optorganization":"","pages":"297–302","publisher":"IEEE CS Press","optseries":"","optvolume":"","keywords":"Topic: <b>Code and design smells</b>, Venue: <c>CLA</c>","url":"http://www.ptidej.net/publications/documents/CLA06.doc.pdf","pdf":"http://www.ptidej.net/publications/documents/CLA06.ppt.pdf","abstract":"Design defects are poor design choices resulting in a hard-to- maintain software, hence their detection and correction are key steps of a disciplined software process aimed at yielding high-quality software artifacts. While modern structure- and metric-based techniques enable precise detection of design defects, the correction of the discovered defects, e.g., by means of refactorings, remains a manual, hence error-prone, activity. As many of the refactorings amount to re-distributing class members over a (possibly extended) set of classes, formal concept analysis (FCA) has been successfully applied in the past as a formal framework for refactoring exploration. Here we propose a novel approach for defect removal in object-oriented programs that combines the effectiveness of metrics with the theoretical strength of FCA. A case study of a specific defect, the <i>Blob</i>, drawn from the Azureus project illustrates our approach.","bibtex":"@INPROCEEDINGS{Moha06-CLA-RefactoringSuggestion,\r\n   AUTHOR       = {Naouel Moha and Jihene Rezgui and Yann-Ga�l Gu�h�neuc and \r\n      Petko Valtchev and El Boussaidi, Ghizlane},\r\n   BOOKTITLE    = {Proceedings of the 4<sup>th</sup> International Conference on Concept Lattices and their Applications (CLA)},\r\n   TITLE        = {Using FCA to Suggest Refactorings to Correct Design \r\n      Defects},\r\n   YEAR         = {2006},\r\n   OPTADDRESS   = {},\r\n   OPTCROSSREF  = {},\r\n   EDITOR       = {Sadok Ben Yahia and Engelbert Mephu Nguifo},\r\n   MONTH        = {September},\r\n   NOTE         = {6 pages. Short paper.},\r\n   OPTNUMBER    = {},\r\n   OPTORGANIZATION = {},\r\n   PAGES        = {297--302},\r\n   PUBLISHER    = {IEEE CS Press},\r\n   OPTSERIES    = {},\r\n   OPTVOLUME    = {},\r\n   KEYWORDS     = {Topic: <b>Code and design smells</b>, Venue: <c>CLA</c>},\r\n   URL          = {http://www.ptidej.net/publications/documents/CLA06.doc.pdf},\r\n   PDF          = {http://www.ptidej.net/publications/documents/CLA06.ppt.pdf},\r\n   ABSTRACT     = {Design defects are poor design choices resulting in a \r\n      hard-to- maintain software, hence their detection and correction are \r\n      key steps of a disciplined software process aimed at yielding \r\n      high-quality software artifacts. While modern structure- and \r\n      metric-based techniques enable precise detection of design defects, \r\n      the correction of the discovered defects, e.g., by means of \r\n      refactorings, remains a manual, hence error-prone, activity. As many \r\n      of the refactorings amount to re-distributing class members over a \r\n      (possibly extended) set of classes, formal concept analysis (FCA) has \r\n      been successfully applied in the past as a formal framework for \r\n      refactoring exploration. Here we propose a novel approach for defect \r\n      removal in object-oriented programs that combines the effectiveness \r\n      of metrics with the theoretical strength of FCA. A case study of a \r\n      specific defect, the \\textit{Blob}, drawn from the Azureus project \r\n      illustrates our approach.}\r\n}\r\n\r\n","author_short":["Moha, N.","Rezgui, J.","Gu�h�neuc, Y.","Valtchev, P.","El Boussaidi, G."],"editor_short":["Yahia, S. B.","Nguifo, E. M."],"key":"Moha06-CLA-RefactoringSuggestion","id":"Moha06-CLA-RefactoringSuggestion","bibbaseid":"moha-rezgui-guhneuc-valtchev-elboussaidi-usingfcatosuggestrefactoringstocorrectdesigndefects-2006","role":"author","urls":{"Paper":"http://www.ptidej.net/publications/documents/CLA06.doc.pdf"},"keyword":["Topic: <b>Code and design smells</b>","Venue: <c>CLA</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":"https://bibbase.org/show?bib=http://www.yann-gael.gueheneuc.net/Work/BibBase/guehene%20(automatically%20cleaned).bib"}},"downloads":0},"search_terms":["using","fca","suggest","refactorings","correct","design","defects","moha","rezgui","gu�h�neuc","valtchev","el boussaidi"],"keywords":["topic: <b>code and design smells</b>","venue: <c>cla</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"]}