{"title":"A Refactoring Approach for Too Large Packages Using Community Detection and Dependency-based Impacts","authors":"Bunyachai Chantian, P. Muenchaisri","doi":"10.1145/3362125.3362132","DOIUrl":null,"url":null,"abstract":"Architecture smells are poor design of architectural structures which reveal negative impacts on software quality and increase risks of bugs and implementation problems in the future. Previous research defines and proposes various architecture smells and each one affects software quality in different aspects. Architecture refactoring is a process that removes an architecture smell and improves quality of system without any changes in system behavior. However, removing one of the architecture smells may cause creating of another smell in the system which directly affects software quality. This research proposes a refactoring approach for Too Large Packages smell which is one of the architecture smells by using community detection in extracting process. This process uses for extracting the package which is identified as Too Large Packages smell into small ones and avoids additional impacts from newly appeared dependency-based architecture smells by focusing on Unstable Dependency smell. The proposed approach provides feasible solution to resolve impact from Too Large Packages smell which can be evaluated by comparing number of detected architecture smells and software metrics of before and after refactoring process.","PeriodicalId":399643,"journal":{"name":"Proceedings of the 1st World Symposium on Software Engineering","volume":"1 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2019-09-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 1st World Symposium on Software Engineering","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3362125.3362132","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 2
Abstract
Architecture smells are poor design of architectural structures which reveal negative impacts on software quality and increase risks of bugs and implementation problems in the future. Previous research defines and proposes various architecture smells and each one affects software quality in different aspects. Architecture refactoring is a process that removes an architecture smell and improves quality of system without any changes in system behavior. However, removing one of the architecture smells may cause creating of another smell in the system which directly affects software quality. This research proposes a refactoring approach for Too Large Packages smell which is one of the architecture smells by using community detection in extracting process. This process uses for extracting the package which is identified as Too Large Packages smell into small ones and avoids additional impacts from newly appeared dependency-based architecture smells by focusing on Unstable Dependency smell. The proposed approach provides feasible solution to resolve impact from Too Large Packages smell which can be evaluated by comparing number of detected architecture smells and software metrics of before and after refactoring process.
架构异味是指糟糕的架构结构设计,它会对软件质量产生负面影响,并增加未来出现bug和实现问题的风险。以往的研究定义并提出了各种架构气味,每种气味在不同方面影响软件质量。架构重构是在不改变系统行为的情况下去除架构气味并提高系统质量的过程。然而,去除一种架构气味可能会在系统中产生另一种气味,从而直接影响软件质量。本文通过在提取过程中使用社区检测,提出了一种对体系结构气味之一的Too Large Packages气味进行重构的方法。此过程用于将标识为Too Large Packages气味的包提取为小的包,并通过关注不稳定依赖气味来避免新出现的基于依赖的体系结构气味的额外影响。该方法为解决Too Large Packages气味的影响提供了可行的解决方案,可以通过比较重构过程前后检测到的体系结构气味的数量和软件度量来评估。