{"title":"基于复杂系统的设计缺陷演化建模","authors":"George Ganea, Radu Marinescu","doi":"10.1109/SYNASC.2015.70","DOIUrl":null,"url":null,"abstract":"By modelling a software project as a complex system, its internal structure can be analyzed in order to asses its design quality. As a software system is being developed, the quality of its internal structure is evolving too, not always for the better. Flaws in the internal structure are usually indicators of code that is hard to understand, maintain and, in many cases, they are pointers of accumulated technical debt. While there are already methods and tools that enable design flaw detection, they only look at a snapshot of the code, they do not analyze how the design flaw evolved over time. We propose an approach which enhances design flaw detection with history information, in order to: (i) find patterns in the evolution of a design flaw, which could then be used to predict future activity, (ii) improve detection by eliminating false negatives, (iii) improve the recommendation system to provide better refactoring advices and a better ranking of design flaws, in order to address the most critical first.","PeriodicalId":6488,"journal":{"name":"2015 17th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing (SYNASC)","volume":"6 1","pages":"433-436"},"PeriodicalIF":0.0000,"publicationDate":"2015-09-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Modeling Design Flaw Evolution Using Complex Systems\",\"authors\":\"George Ganea, Radu Marinescu\",\"doi\":\"10.1109/SYNASC.2015.70\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"By modelling a software project as a complex system, its internal structure can be analyzed in order to asses its design quality. As a software system is being developed, the quality of its internal structure is evolving too, not always for the better. Flaws in the internal structure are usually indicators of code that is hard to understand, maintain and, in many cases, they are pointers of accumulated technical debt. While there are already methods and tools that enable design flaw detection, they only look at a snapshot of the code, they do not analyze how the design flaw evolved over time. We propose an approach which enhances design flaw detection with history information, in order to: (i) find patterns in the evolution of a design flaw, which could then be used to predict future activity, (ii) improve detection by eliminating false negatives, (iii) improve the recommendation system to provide better refactoring advices and a better ranking of design flaws, in order to address the most critical first.\",\"PeriodicalId\":6488,\"journal\":{\"name\":\"2015 17th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing (SYNASC)\",\"volume\":\"6 1\",\"pages\":\"433-436\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2015-09-21\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2015 17th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing (SYNASC)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/SYNASC.2015.70\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2015 17th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing (SYNASC)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/SYNASC.2015.70","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Modeling Design Flaw Evolution Using Complex Systems
By modelling a software project as a complex system, its internal structure can be analyzed in order to asses its design quality. As a software system is being developed, the quality of its internal structure is evolving too, not always for the better. Flaws in the internal structure are usually indicators of code that is hard to understand, maintain and, in many cases, they are pointers of accumulated technical debt. While there are already methods and tools that enable design flaw detection, they only look at a snapshot of the code, they do not analyze how the design flaw evolved over time. We propose an approach which enhances design flaw detection with history information, in order to: (i) find patterns in the evolution of a design flaw, which could then be used to predict future activity, (ii) improve detection by eliminating false negatives, (iii) improve the recommendation system to provide better refactoring advices and a better ranking of design flaws, in order to address the most critical first.