Design Defects Detection and Correction by Example
Detecting and fixing defects make programs easier to understand by developers. We propose an automated approach for the detection and correction of various types of design defects in source code. Our approach allows to automatically find detection rules, thus relieving the designer from doing so man...
Gespeichert in:
Hauptverfasser: | , , , , |
---|---|
Format: | Tagungsbericht |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext bestellen |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
container_end_page | 90 |
---|---|
container_issue | |
container_start_page | 81 |
container_title | |
container_volume | |
creator | Kessentini, M. Kessentini, W. Sahraoui, H. Boukadoum, M. Ouni, A. |
description | Detecting and fixing defects make programs easier to understand by developers. We propose an automated approach for the detection and correction of various types of design defects in source code. Our approach allows to automatically find detection rules, thus relieving the designer from doing so manually. Rules are defined as combinations of metrics/thresholds that better conform to known instances of design defects (defect examples). The correction solutions, a combination of refactoring operations, should minimize, as much as possible, the number of defects detected using the detection rules. In our setting, we use genetic programming for rule extraction. For the correction step, we use genetic algorithm. We evaluate our approach by finding and fixing potential defects in four open-source systems. For all these systems, we found, in average, more than 80% of known defects, a better result when compared to a state-of-the-art approach, where the detection rules are manually or semi-automatically specified. The proposed corrections fix, in average, more than 78%of detected defects. |
doi_str_mv | 10.1109/ICPC.2011.22 |
format | Conference Proceeding |
fullrecord | <record><control><sourceid>ieee_6IE</sourceid><recordid>TN_cdi_ieee_primary_5970166</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><ieee_id>5970166</ieee_id><sourcerecordid>5970166</sourcerecordid><originalsourceid>FETCH-LOGICAL-i175t-80a11aadc0f96fb1eec49d436cdba16fba38ba240fc3257b1d3030cf6f9c496e3</originalsourceid><addsrcrecordid>eNotjLtOw0AURBcBElFwR0fjH7C5d3e9jxI5IUSKBEVSR_u4i4wSJ7JdkL9nBZnmaEYzw9gTQo0I9mXdfrY1B8Sa8xtWWG1AK9tIYY2-_fOokBspwOg7NssTXhkU5oEV4_gNWSrX0c4YX9DYffXlghKFacycMrtTX7o-lu1pGK7WX8rljzueD_TI7pM7jFRcOWe7t-W2fa82H6t1-7qpOtTNVBlwiM7FAMmq5JEoSBulUCF6hzlxwnjHJaQgeKM9RgECQlLJ5qIiMWfP_78dEe3PQ3d0w2XfWA2olPgFpz1HMQ</addsrcrecordid><sourcetype>Publisher</sourcetype><iscdi>true</iscdi><recordtype>conference_proceeding</recordtype></control><display><type>conference_proceeding</type><title>Design Defects Detection and Correction by Example</title><source>IEEE Electronic Library (IEL) Conference Proceedings</source><creator>Kessentini, M. ; Kessentini, W. ; Sahraoui, H. ; Boukadoum, M. ; Ouni, A.</creator><creatorcontrib>Kessentini, M. ; Kessentini, W. ; Sahraoui, H. ; Boukadoum, M. ; Ouni, A.</creatorcontrib><description>Detecting and fixing defects make programs easier to understand by developers. We propose an automated approach for the detection and correction of various types of design defects in source code. Our approach allows to automatically find detection rules, thus relieving the designer from doing so manually. Rules are defined as combinations of metrics/thresholds that better conform to known instances of design defects (defect examples). The correction solutions, a combination of refactoring operations, should minimize, as much as possible, the number of defects detected using the detection rules. In our setting, we use genetic programming for rule extraction. For the correction step, we use genetic algorithm. We evaluate our approach by finding and fixing potential defects in four open-source systems. For all these systems, we found, in average, more than 80% of known defects, a better result when compared to a state-of-the-art approach, where the detection rules are manually or semi-automatically specified. The proposed corrections fix, in average, more than 78%of detected defects.</description><identifier>ISSN: 1092-8138</identifier><identifier>ISBN: 9781612843087</identifier><identifier>ISBN: 1612843085</identifier><identifier>EISBN: 9780769543987</identifier><identifier>EISBN: 0769543987</identifier><identifier>DOI: 10.1109/ICPC.2011.22</identifier><language>eng</language><publisher>IEEE</publisher><subject>by example ; Complexity theory ; Computer bugs ; design defects ; Genetic algorithms ; Genetic programming ; Measurement ; Optimization ; search-based software engineering ; Software ; software maintenance</subject><ispartof>2011 IEEE 19th International Conference on Program Comprehension, 2011, p.81-90</ispartof><woscitedreferencessubscribed>false</woscitedreferencessubscribed></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktohtml>$$Uhttps://ieeexplore.ieee.org/document/5970166$$EHTML$$P50$$Gieee$$H</linktohtml><link.rule.ids>309,310,780,784,789,790,2058,27925,54920</link.rule.ids><linktorsrc>$$Uhttps://ieeexplore.ieee.org/document/5970166$$EView_record_in_IEEE$$FView_record_in_$$GIEEE</linktorsrc></links><search><creatorcontrib>Kessentini, M.</creatorcontrib><creatorcontrib>Kessentini, W.</creatorcontrib><creatorcontrib>Sahraoui, H.</creatorcontrib><creatorcontrib>Boukadoum, M.</creatorcontrib><creatorcontrib>Ouni, A.</creatorcontrib><title>Design Defects Detection and Correction by Example</title><title>2011 IEEE 19th International Conference on Program Comprehension</title><addtitle>icpc</addtitle><description>Detecting and fixing defects make programs easier to understand by developers. We propose an automated approach for the detection and correction of various types of design defects in source code. Our approach allows to automatically find detection rules, thus relieving the designer from doing so manually. Rules are defined as combinations of metrics/thresholds that better conform to known instances of design defects (defect examples). The correction solutions, a combination of refactoring operations, should minimize, as much as possible, the number of defects detected using the detection rules. In our setting, we use genetic programming for rule extraction. For the correction step, we use genetic algorithm. We evaluate our approach by finding and fixing potential defects in four open-source systems. For all these systems, we found, in average, more than 80% of known defects, a better result when compared to a state-of-the-art approach, where the detection rules are manually or semi-automatically specified. The proposed corrections fix, in average, more than 78%of detected defects.</description><subject>by example</subject><subject>Complexity theory</subject><subject>Computer bugs</subject><subject>design defects</subject><subject>Genetic algorithms</subject><subject>Genetic programming</subject><subject>Measurement</subject><subject>Optimization</subject><subject>search-based software engineering</subject><subject>Software</subject><subject>software maintenance</subject><issn>1092-8138</issn><isbn>9781612843087</isbn><isbn>1612843085</isbn><isbn>9780769543987</isbn><isbn>0769543987</isbn><fulltext>true</fulltext><rsrctype>conference_proceeding</rsrctype><creationdate>2011</creationdate><recordtype>conference_proceeding</recordtype><sourceid>6IE</sourceid><sourceid>RIE</sourceid><recordid>eNotjLtOw0AURBcBElFwR0fjH7C5d3e9jxI5IUSKBEVSR_u4i4wSJ7JdkL9nBZnmaEYzw9gTQo0I9mXdfrY1B8Sa8xtWWG1AK9tIYY2-_fOokBspwOg7NssTXhkU5oEV4_gNWSrX0c4YX9DYffXlghKFacycMrtTX7o-lu1pGK7WX8rljzueD_TI7pM7jFRcOWe7t-W2fa82H6t1-7qpOtTNVBlwiM7FAMmq5JEoSBulUCF6hzlxwnjHJaQgeKM9RgECQlLJ5qIiMWfP_78dEe3PQ3d0w2XfWA2olPgFpz1HMQ</recordid><startdate>201106</startdate><enddate>201106</enddate><creator>Kessentini, M.</creator><creator>Kessentini, W.</creator><creator>Sahraoui, H.</creator><creator>Boukadoum, M.</creator><creator>Ouni, A.</creator><general>IEEE</general><scope>6IE</scope><scope>6IL</scope><scope>CBEJK</scope><scope>RIE</scope><scope>RIL</scope></search><sort><creationdate>201106</creationdate><title>Design Defects Detection and Correction by Example</title><author>Kessentini, M. ; Kessentini, W. ; Sahraoui, H. ; Boukadoum, M. ; Ouni, A.</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-i175t-80a11aadc0f96fb1eec49d436cdba16fba38ba240fc3257b1d3030cf6f9c496e3</frbrgroupid><rsrctype>conference_proceedings</rsrctype><prefilter>conference_proceedings</prefilter><language>eng</language><creationdate>2011</creationdate><topic>by example</topic><topic>Complexity theory</topic><topic>Computer bugs</topic><topic>design defects</topic><topic>Genetic algorithms</topic><topic>Genetic programming</topic><topic>Measurement</topic><topic>Optimization</topic><topic>search-based software engineering</topic><topic>Software</topic><topic>software maintenance</topic><toplevel>online_resources</toplevel><creatorcontrib>Kessentini, M.</creatorcontrib><creatorcontrib>Kessentini, W.</creatorcontrib><creatorcontrib>Sahraoui, H.</creatorcontrib><creatorcontrib>Boukadoum, M.</creatorcontrib><creatorcontrib>Ouni, A.</creatorcontrib><collection>IEEE Electronic Library (IEL) Conference Proceedings</collection><collection>IEEE Proceedings Order Plan All Online (POP All Online) 1998-present by volume</collection><collection>IEEE Xplore All Conference Proceedings</collection><collection>IEEE Electronic Library (IEL)</collection><collection>IEEE Proceedings Order Plans (POP All) 1998-Present</collection></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext_linktorsrc</fulltext></delivery><addata><au>Kessentini, M.</au><au>Kessentini, W.</au><au>Sahraoui, H.</au><au>Boukadoum, M.</au><au>Ouni, A.</au><format>book</format><genre>proceeding</genre><ristype>CONF</ristype><atitle>Design Defects Detection and Correction by Example</atitle><btitle>2011 IEEE 19th International Conference on Program Comprehension</btitle><stitle>icpc</stitle><date>2011-06</date><risdate>2011</risdate><spage>81</spage><epage>90</epage><pages>81-90</pages><issn>1092-8138</issn><isbn>9781612843087</isbn><isbn>1612843085</isbn><eisbn>9780769543987</eisbn><eisbn>0769543987</eisbn><abstract>Detecting and fixing defects make programs easier to understand by developers. We propose an automated approach for the detection and correction of various types of design defects in source code. Our approach allows to automatically find detection rules, thus relieving the designer from doing so manually. Rules are defined as combinations of metrics/thresholds that better conform to known instances of design defects (defect examples). The correction solutions, a combination of refactoring operations, should minimize, as much as possible, the number of defects detected using the detection rules. In our setting, we use genetic programming for rule extraction. For the correction step, we use genetic algorithm. We evaluate our approach by finding and fixing potential defects in four open-source systems. For all these systems, we found, in average, more than 80% of known defects, a better result when compared to a state-of-the-art approach, where the detection rules are manually or semi-automatically specified. The proposed corrections fix, in average, more than 78%of detected defects.</abstract><pub>IEEE</pub><doi>10.1109/ICPC.2011.22</doi><tpages>10</tpages></addata></record> |
fulltext | fulltext_linktorsrc |
identifier | ISSN: 1092-8138 |
ispartof | 2011 IEEE 19th International Conference on Program Comprehension, 2011, p.81-90 |
issn | 1092-8138 |
language | eng |
recordid | cdi_ieee_primary_5970166 |
source | IEEE Electronic Library (IEL) Conference Proceedings |
subjects | by example Complexity theory Computer bugs design defects Genetic algorithms Genetic programming Measurement Optimization search-based software engineering Software software maintenance |
title | Design Defects Detection and Correction by Example |
url | https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2024-12-20T02%3A32%3A02IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-ieee_6IE&rft_val_fmt=info:ofi/fmt:kev:mtx:book&rft.genre=proceeding&rft.atitle=Design%20Defects%20Detection%20and%20Correction%20by%20Example&rft.btitle=2011%20IEEE%2019th%20International%20Conference%20on%20Program%20Comprehension&rft.au=Kessentini,%20M.&rft.date=2011-06&rft.spage=81&rft.epage=90&rft.pages=81-90&rft.issn=1092-8138&rft.isbn=9781612843087&rft.isbn_list=1612843085&rft_id=info:doi/10.1109/ICPC.2011.22&rft_dat=%3Cieee_6IE%3E5970166%3C/ieee_6IE%3E%3Curl%3E%3C/url%3E&rft.eisbn=9780769543987&rft.eisbn_list=0769543987&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_id=info:pmid/&rft_ieee_id=5970166&rfr_iscdi=true |