{"title":"On the relationship between defects of nodes and characteristics of their neighbors in software structural network","authors":"Zi Yuan, Lili Yu, Chao Liu","doi":"10.1109/ICSESS.2012.6269400","DOIUrl":null,"url":null,"abstract":"Software development is a complex task as there exist various relationships between different pieces of code. If software entities (e.g., classes) are considered as nodes and the relationships between entities (e.g., inheritance) are considered as edges, the static structure of software can be viewed as a software structural network. In this paper, the relationship between the quality of nodes and the characteristics of their neighbors in the software structural network has been investigated. The following observations have been made: On most occasions, the neighbors of the defect-prone nodes tend to have higher code complexity and be more centralized in the software structural network and undergo more frequent changes than those which are defect-free. The observations made in our research can be used to help software engineers assess risks during the software evolution activities (e.g., adding new entities and relationships) with the purpose of improving software designs.","PeriodicalId":205738,"journal":{"name":"2012 IEEE International Conference on Computer Science and Automation Engineering","volume":"12 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2012-06-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2012 IEEE International Conference on Computer Science and Automation Engineering","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICSESS.2012.6269400","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
Software development is a complex task as there exist various relationships between different pieces of code. If software entities (e.g., classes) are considered as nodes and the relationships between entities (e.g., inheritance) are considered as edges, the static structure of software can be viewed as a software structural network. In this paper, the relationship between the quality of nodes and the characteristics of their neighbors in the software structural network has been investigated. The following observations have been made: On most occasions, the neighbors of the defect-prone nodes tend to have higher code complexity and be more centralized in the software structural network and undergo more frequent changes than those which are defect-free. The observations made in our research can be used to help software engineers assess risks during the software evolution activities (e.g., adding new entities and relationships) with the purpose of improving software designs.