Toward understanding the rhetoric of small source code changes
Understanding the impact of software changes has been a challenge since software systems were first developed. With the increasing size and complexity of systems, this problem has become more difficult. There are many ways to identify the impact of changes on the system from the plethora of software...
Gespeichert in:
Veröffentlicht in: | IEEE transactions on software engineering 2005-06, Vol.31 (6), p.511-526 |
---|---|
Hauptverfasser: | , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext bestellen |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
container_end_page | 526 |
---|---|
container_issue | 6 |
container_start_page | 511 |
container_title | IEEE transactions on software engineering |
container_volume | 31 |
creator | Purushothaman, R. Perry, D.E. |
description | Understanding the impact of software changes has been a challenge since software systems were first developed. With the increasing size and complexity of systems, this problem has become more difficult. There are many ways to identify the impact of changes on the system from the plethora of software artifacts produced during development, maintenance, and evolution. We present the analysis of the software development process using change and defect history data. Specifically, we address the problem of small changes by focusing on the properties of the changes rather than the properties of the code itself. Our study reveals that 1) there is less than 4 percent probability that a one-line change introduces a fault in the code, 2) nearly 10 percent of all changes made during the maintenance of the software under consideration were one-line changes, 3) nearly 50 percent of the changes were small changes, 4) nearly 40 percent of changes to fix faults resulted in further faults, 5) the phenomena of change differs for additions, deletions, and modifications as well as for the number of lines affected, and 6) deletions of up to 10 lines did not cause faults. |
doi_str_mv | 10.1109/TSE.2005.74 |
format | Article |
fullrecord | <record><control><sourceid>proquest_RIE</sourceid><recordid>TN_cdi_ieee_primary_1463233</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><ieee_id>1463233</ieee_id><sourcerecordid>1671261535</sourcerecordid><originalsourceid>FETCH-LOGICAL-c381t-396e86f51ac9d7b30aec6d06b11ff8a13926d07366e130a32fce1b1b9786b3c3</originalsourceid><addsrcrecordid>eNp90M9LwzAUB_AgCs7pyaOX4kEE6cxrmqS5CDLmDxh4sPeQpq9bR9fMpEX8782YIHjw8h6P9-HB-xJyCXQGQNV9-b6YZZTymcyPyAQUUynjGT0mE0pVkXJeqFNyFsKGRiQln5CH0n0aXydjX6MPg-nrtl8lwxoTv8bB-dYmrknC1nRdEtzoLSbW1bGsTb_CcE5OGtMFvPjpU1I-Lcr5S7p8e36dPy5TywoYUqYEFqLhYKyqZcWoQStqKiqApikMMJXFUTIhEOKSZY1FqKBSshAVs2xKbg5nd959jBgGvW2Dxa4zPbox6KwASkVOI7z9F4KQkAngjEd6_Ydu4n99_EKD4lzmVLGI7g7IeheCx0bvfLs1_ksD1fvIdYxc7yPXMo_66qBbRPyVuWAZY-wb6AB67w</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>195574093</pqid></control><display><type>article</type><title>Toward understanding the rhetoric of small source code changes</title><source>IEEE Electronic Library (IEL)</source><creator>Purushothaman, R. ; Perry, D.E.</creator><creatorcontrib>Purushothaman, R. ; Perry, D.E.</creatorcontrib><description>Understanding the impact of software changes has been a challenge since software systems were first developed. With the increasing size and complexity of systems, this problem has become more difficult. There are many ways to identify the impact of changes on the system from the plethora of software artifacts produced during development, maintenance, and evolution. We present the analysis of the software development process using change and defect history data. Specifically, we address the problem of small changes by focusing on the properties of the changes rather than the properties of the code itself. Our study reveals that 1) there is less than 4 percent probability that a one-line change introduces a fault in the code, 2) nearly 10 percent of all changes made during the maintenance of the software under consideration were one-line changes, 3) nearly 50 percent of the changes were small changes, 4) nearly 40 percent of changes to fix faults resulted in further faults, 5) the phenomena of change differs for additions, deletions, and modifications as well as for the number of lines affected, and 6) deletions of up to 10 lines did not cause faults.</description><identifier>ISSN: 0098-5589</identifier><identifier>EISSN: 1939-3520</identifier><identifier>DOI: 10.1109/TSE.2005.74</identifier><identifier>CODEN: IESEDJ</identifier><language>eng</language><publisher>New York: IEEE</publisher><subject>Changes ; Computer architecture ; Computer programming ; Computer programs ; Computer Society ; Costs ; Deletion ; Errors ; Evolution ; fault probabilities ; Faults ; Focusing ; History ; Index Terms- Source code changes ; Life testing ; Maintenance ; one-line changes ; Probability ; Programming ; Rhetoric ; Risk management ; Software ; Software development ; Software engineering ; software faults ; Software maintenance ; Software systems ; Studies</subject><ispartof>IEEE transactions on software engineering, 2005-06, Vol.31 (6), p.511-526</ispartof><rights>Copyright Institute of Electrical and Electronics Engineers, Inc. (IEEE) Jun 2005</rights><lds50>peer_reviewed</lds50><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c381t-396e86f51ac9d7b30aec6d06b11ff8a13926d07366e130a32fce1b1b9786b3c3</citedby><cites>FETCH-LOGICAL-c381t-396e86f51ac9d7b30aec6d06b11ff8a13926d07366e130a32fce1b1b9786b3c3</cites></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktohtml>$$Uhttps://ieeexplore.ieee.org/document/1463233$$EHTML$$P50$$Gieee$$H</linktohtml><link.rule.ids>314,780,784,796,27923,27924,54757</link.rule.ids><linktorsrc>$$Uhttps://ieeexplore.ieee.org/document/1463233$$EView_record_in_IEEE$$FView_record_in_$$GIEEE</linktorsrc></links><search><creatorcontrib>Purushothaman, R.</creatorcontrib><creatorcontrib>Perry, D.E.</creatorcontrib><title>Toward understanding the rhetoric of small source code changes</title><title>IEEE transactions on software engineering</title><addtitle>TSE</addtitle><description>Understanding the impact of software changes has been a challenge since software systems were first developed. With the increasing size and complexity of systems, this problem has become more difficult. There are many ways to identify the impact of changes on the system from the plethora of software artifacts produced during development, maintenance, and evolution. We present the analysis of the software development process using change and defect history data. Specifically, we address the problem of small changes by focusing on the properties of the changes rather than the properties of the code itself. Our study reveals that 1) there is less than 4 percent probability that a one-line change introduces a fault in the code, 2) nearly 10 percent of all changes made during the maintenance of the software under consideration were one-line changes, 3) nearly 50 percent of the changes were small changes, 4) nearly 40 percent of changes to fix faults resulted in further faults, 5) the phenomena of change differs for additions, deletions, and modifications as well as for the number of lines affected, and 6) deletions of up to 10 lines did not cause faults.</description><subject>Changes</subject><subject>Computer architecture</subject><subject>Computer programming</subject><subject>Computer programs</subject><subject>Computer Society</subject><subject>Costs</subject><subject>Deletion</subject><subject>Errors</subject><subject>Evolution</subject><subject>fault probabilities</subject><subject>Faults</subject><subject>Focusing</subject><subject>History</subject><subject>Index Terms- Source code changes</subject><subject>Life testing</subject><subject>Maintenance</subject><subject>one-line changes</subject><subject>Probability</subject><subject>Programming</subject><subject>Rhetoric</subject><subject>Risk management</subject><subject>Software</subject><subject>Software development</subject><subject>Software engineering</subject><subject>software faults</subject><subject>Software maintenance</subject><subject>Software systems</subject><subject>Studies</subject><issn>0098-5589</issn><issn>1939-3520</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2005</creationdate><recordtype>article</recordtype><sourceid>RIE</sourceid><sourceid>8G5</sourceid><sourceid>ABUWG</sourceid><sourceid>AFKRA</sourceid><sourceid>AZQEC</sourceid><sourceid>BENPR</sourceid><sourceid>CCPQU</sourceid><sourceid>DWQXO</sourceid><sourceid>GNUQQ</sourceid><sourceid>GUQSH</sourceid><sourceid>M2O</sourceid><recordid>eNp90M9LwzAUB_AgCs7pyaOX4kEE6cxrmqS5CDLmDxh4sPeQpq9bR9fMpEX8782YIHjw8h6P9-HB-xJyCXQGQNV9-b6YZZTymcyPyAQUUynjGT0mE0pVkXJeqFNyFsKGRiQln5CH0n0aXydjX6MPg-nrtl8lwxoTv8bB-dYmrknC1nRdEtzoLSbW1bGsTb_CcE5OGtMFvPjpU1I-Lcr5S7p8e36dPy5TywoYUqYEFqLhYKyqZcWoQStqKiqApikMMJXFUTIhEOKSZY1FqKBSshAVs2xKbg5nd959jBgGvW2Dxa4zPbox6KwASkVOI7z9F4KQkAngjEd6_Ydu4n99_EKD4lzmVLGI7g7IeheCx0bvfLs1_ksD1fvIdYxc7yPXMo_66qBbRPyVuWAZY-wb6AB67w</recordid><startdate>20050601</startdate><enddate>20050601</enddate><creator>Purushothaman, R.</creator><creator>Perry, D.E.</creator><general>IEEE</general><general>IEEE Computer Society</general><scope>97E</scope><scope>RIA</scope><scope>RIE</scope><scope>AAYXX</scope><scope>CITATION</scope><scope>3V.</scope><scope>7WY</scope><scope>7WZ</scope><scope>7X7</scope><scope>7XB</scope><scope>87Z</scope><scope>88E</scope><scope>88F</scope><scope>88I</scope><scope>88K</scope><scope>8AL</scope><scope>8FE</scope><scope>8FG</scope><scope>8FI</scope><scope>8FJ</scope><scope>8FK</scope><scope>8FL</scope><scope>8G5</scope><scope>ABJCF</scope><scope>ABUWG</scope><scope>AFKRA</scope><scope>ARAPS</scope><scope>AZQEC</scope><scope>BENPR</scope><scope>BEZIV</scope><scope>BGLVJ</scope><scope>CCPQU</scope><scope>DWQXO</scope><scope>FRNLG</scope><scope>FYUFA</scope><scope>F~G</scope><scope>GHDGH</scope><scope>GNUQQ</scope><scope>GUQSH</scope><scope>HCIFZ</scope><scope>JQ2</scope><scope>K60</scope><scope>K6~</scope><scope>K7-</scope><scope>K9.</scope><scope>L.-</scope><scope>L6V</scope><scope>M0C</scope><scope>M0N</scope><scope>M0S</scope><scope>M1P</scope><scope>M1Q</scope><scope>M2O</scope><scope>M2P</scope><scope>M2T</scope><scope>M7S</scope><scope>MBDVC</scope><scope>P5Z</scope><scope>P62</scope><scope>PQBIZ</scope><scope>PQBZA</scope><scope>PQEST</scope><scope>PQQKQ</scope><scope>PQUKI</scope><scope>PRINS</scope><scope>PTHSS</scope><scope>Q9U</scope><scope>7SC</scope><scope>7SP</scope><scope>8FD</scope><scope>F28</scope><scope>FR3</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope></search><sort><creationdate>20050601</creationdate><title>Toward understanding the rhetoric of small source code changes</title><author>Purushothaman, R. ; Perry, D.E.</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c381t-396e86f51ac9d7b30aec6d06b11ff8a13926d07366e130a32fce1b1b9786b3c3</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2005</creationdate><topic>Changes</topic><topic>Computer architecture</topic><topic>Computer programming</topic><topic>Computer programs</topic><topic>Computer Society</topic><topic>Costs</topic><topic>Deletion</topic><topic>Errors</topic><topic>Evolution</topic><topic>fault probabilities</topic><topic>Faults</topic><topic>Focusing</topic><topic>History</topic><topic>Index Terms- Source code changes</topic><topic>Life testing</topic><topic>Maintenance</topic><topic>one-line changes</topic><topic>Probability</topic><topic>Programming</topic><topic>Rhetoric</topic><topic>Risk management</topic><topic>Software</topic><topic>Software development</topic><topic>Software engineering</topic><topic>software faults</topic><topic>Software maintenance</topic><topic>Software systems</topic><topic>Studies</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Purushothaman, R.</creatorcontrib><creatorcontrib>Perry, D.E.</creatorcontrib><collection>IEEE All-Society Periodicals Package (ASPP) 2005-present</collection><collection>IEEE All-Society Periodicals Package (ASPP) 1998-Present</collection><collection>IEEE Electronic Library (IEL)</collection><collection>CrossRef</collection><collection>ProQuest Central (Corporate)</collection><collection>ABI/INFORM Collection</collection><collection>ABI/INFORM Global (PDF only)</collection><collection>Health & Medical Collection</collection><collection>ProQuest Central (purchase pre-March 2016)</collection><collection>ABI/INFORM Global (Alumni Edition)</collection><collection>Medical Database (Alumni Edition)</collection><collection>Military Database (Alumni Edition)</collection><collection>Science Database (Alumni Edition)</collection><collection>Telecommunications (Alumni Edition)</collection><collection>Computing Database (Alumni Edition)</collection><collection>ProQuest SciTech Collection</collection><collection>ProQuest Technology Collection</collection><collection>Hospital Premium Collection</collection><collection>Hospital Premium Collection (Alumni Edition)</collection><collection>ProQuest Central (Alumni) (purchase pre-March 2016)</collection><collection>ABI/INFORM Collection (Alumni Edition)</collection><collection>Research Library (Alumni Edition)</collection><collection>Materials Science & Engineering Collection</collection><collection>ProQuest Central (Alumni Edition)</collection><collection>ProQuest Central UK/Ireland</collection><collection>Advanced Technologies & Aerospace Collection</collection><collection>ProQuest Central Essentials</collection><collection>ProQuest Central</collection><collection>Business Premium Collection</collection><collection>Technology Collection</collection><collection>ProQuest One Community College</collection><collection>ProQuest Central Korea</collection><collection>Business Premium Collection (Alumni)</collection><collection>Health Research Premium Collection</collection><collection>ABI/INFORM Global (Corporate)</collection><collection>Health Research Premium Collection (Alumni)</collection><collection>ProQuest Central Student</collection><collection>Research Library Prep</collection><collection>SciTech Premium Collection</collection><collection>ProQuest Computer Science Collection</collection><collection>ProQuest Business Collection (Alumni Edition)</collection><collection>ProQuest Business Collection</collection><collection>Computer Science Database</collection><collection>ProQuest Health & Medical Complete (Alumni)</collection><collection>ABI/INFORM Professional Advanced</collection><collection>ProQuest Engineering Collection</collection><collection>ABI/INFORM Global</collection><collection>Computing Database</collection><collection>Health & Medical Collection (Alumni Edition)</collection><collection>Medical Database</collection><collection>Military Database</collection><collection>Research Library</collection><collection>Science Database</collection><collection>Telecommunications Database</collection><collection>Engineering Database</collection><collection>Research Library (Corporate)</collection><collection>Advanced Technologies & Aerospace Database</collection><collection>ProQuest Advanced Technologies & Aerospace Collection</collection><collection>One Business (ProQuest)</collection><collection>ProQuest One Business (Alumni)</collection><collection>ProQuest One Academic Eastern Edition (DO NOT USE)</collection><collection>ProQuest One Academic</collection><collection>ProQuest One Academic UKI Edition</collection><collection>ProQuest Central China</collection><collection>Engineering Collection</collection><collection>ProQuest Central Basic</collection><collection>Computer and Information Systems Abstracts</collection><collection>Electronics & Communications Abstracts</collection><collection>Technology Research Database</collection><collection>ANTE: Abstracts in New Technology & Engineering</collection><collection>Engineering Research Database</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection><jtitle>IEEE transactions on software engineering</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext_linktorsrc</fulltext></delivery><addata><au>Purushothaman, R.</au><au>Perry, D.E.</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Toward understanding the rhetoric of small source code changes</atitle><jtitle>IEEE transactions on software engineering</jtitle><stitle>TSE</stitle><date>2005-06-01</date><risdate>2005</risdate><volume>31</volume><issue>6</issue><spage>511</spage><epage>526</epage><pages>511-526</pages><issn>0098-5589</issn><eissn>1939-3520</eissn><coden>IESEDJ</coden><abstract>Understanding the impact of software changes has been a challenge since software systems were first developed. With the increasing size and complexity of systems, this problem has become more difficult. There are many ways to identify the impact of changes on the system from the plethora of software artifacts produced during development, maintenance, and evolution. We present the analysis of the software development process using change and defect history data. Specifically, we address the problem of small changes by focusing on the properties of the changes rather than the properties of the code itself. Our study reveals that 1) there is less than 4 percent probability that a one-line change introduces a fault in the code, 2) nearly 10 percent of all changes made during the maintenance of the software under consideration were one-line changes, 3) nearly 50 percent of the changes were small changes, 4) nearly 40 percent of changes to fix faults resulted in further faults, 5) the phenomena of change differs for additions, deletions, and modifications as well as for the number of lines affected, and 6) deletions of up to 10 lines did not cause faults.</abstract><cop>New York</cop><pub>IEEE</pub><doi>10.1109/TSE.2005.74</doi><tpages>16</tpages><oa>free_for_read</oa></addata></record> |
fulltext | fulltext_linktorsrc |
identifier | ISSN: 0098-5589 |
ispartof | IEEE transactions on software engineering, 2005-06, Vol.31 (6), p.511-526 |
issn | 0098-5589 1939-3520 |
language | eng |
recordid | cdi_ieee_primary_1463233 |
source | IEEE Electronic Library (IEL) |
subjects | Changes Computer architecture Computer programming Computer programs Computer Society Costs Deletion Errors Evolution fault probabilities Faults Focusing History Index Terms- Source code changes Life testing Maintenance one-line changes Probability Programming Rhetoric Risk management Software Software development Software engineering software faults Software maintenance Software systems Studies |
title | Toward understanding the rhetoric of small source code changes |
url | https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-10T10%3A24%3A16IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_RIE&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Toward%20understanding%20the%20rhetoric%20of%20small%20source%20code%20changes&rft.jtitle=IEEE%20transactions%20on%20software%20engineering&rft.au=Purushothaman,%20R.&rft.date=2005-06-01&rft.volume=31&rft.issue=6&rft.spage=511&rft.epage=526&rft.pages=511-526&rft.issn=0098-5589&rft.eissn=1939-3520&rft.coden=IESEDJ&rft_id=info:doi/10.1109/TSE.2005.74&rft_dat=%3Cproquest_RIE%3E1671261535%3C/proquest_RIE%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=195574093&rft_id=info:pmid/&rft_ieee_id=1463233&rfr_iscdi=true |