基于进化策略的自动软件聚类方法

B. Khan, S. Sohail, M. Javed
{"title":"基于进化策略的自动软件聚类方法","authors":"B. Khan, S. Sohail, M. Javed","doi":"10.1109/ASEA.2008.17","DOIUrl":null,"url":null,"abstract":"In the software development life cycle, maintenance is a key phase that determines long term and effective use of any software. Maintenance can become very lengthy and costly for large software systems when structure of the system is complicated. One of the factors complicating the structure of the software system is subsystem boundaries becoming ambiguous due to system evolution, lack of up to date documentation and high turn over rate of software professionals (leading to non availability of original designers of the software systems). Software module clustering helps software professionals to recover high-level structure of the system by decomposing the system into smaller manageable subsystems, containing interdependent modules. Automated approaches simplify the software clustering process, which otherwise is quite a tedious task for medium and large software systems. We treat software clustering as an optimization problem and propose an automated technique to get near optimal decompositions of relatively independent subsystems, containing interdependent modules. We propose the use of self adaptive Evolution Strategies to search a large solution space consisting of modules and their relationships. We compare our proposed approach with a widely used genetic algorithm based approach on a number of test systems. Our proposed approach shows considerable improvement in terms of quality and effectiveness of the solutions for all tests cases.","PeriodicalId":223823,"journal":{"name":"2008 Advanced Software Engineering and Its Applications","volume":"16 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2008-12-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"14","resultStr":"{\"title\":\"Evolution Strategy Based Automated Software Clustering Approach\",\"authors\":\"B. Khan, S. Sohail, M. Javed\",\"doi\":\"10.1109/ASEA.2008.17\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"In the software development life cycle, maintenance is a key phase that determines long term and effective use of any software. Maintenance can become very lengthy and costly for large software systems when structure of the system is complicated. One of the factors complicating the structure of the software system is subsystem boundaries becoming ambiguous due to system evolution, lack of up to date documentation and high turn over rate of software professionals (leading to non availability of original designers of the software systems). Software module clustering helps software professionals to recover high-level structure of the system by decomposing the system into smaller manageable subsystems, containing interdependent modules. Automated approaches simplify the software clustering process, which otherwise is quite a tedious task for medium and large software systems. We treat software clustering as an optimization problem and propose an automated technique to get near optimal decompositions of relatively independent subsystems, containing interdependent modules. We propose the use of self adaptive Evolution Strategies to search a large solution space consisting of modules and their relationships. We compare our proposed approach with a widely used genetic algorithm based approach on a number of test systems. Our proposed approach shows considerable improvement in terms of quality and effectiveness of the solutions for all tests cases.\",\"PeriodicalId\":223823,\"journal\":{\"name\":\"2008 Advanced Software Engineering and Its Applications\",\"volume\":\"16 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2008-12-13\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"14\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2008 Advanced Software Engineering and Its Applications\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/ASEA.2008.17\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2008 Advanced Software Engineering and Its Applications","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ASEA.2008.17","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 14

摘要

在软件开发生命周期中,维护是决定任何软件长期有效使用的关键阶段。当系统结构复杂时,大型软件系统的维护可能变得非常耗时和昂贵。使软件系统结构复杂化的因素之一是由于系统演化、缺乏最新文档和软件专业人员的高周转率(导致软件系统的原始设计人员不可用)而使子系统边界变得模糊。软件模块集群通过将系统分解为包含相互依赖模块的更小的可管理子系统,帮助软件专业人员恢复系统的高层结构。自动化方法简化了软件集群过程,否则这对于中型和大型软件系统来说是一项相当繁琐的任务。我们将软件聚类视为一个优化问题,并提出了一种自动化技术,以获得包含相互依存模块的相对独立子系统的接近最优分解。我们提出使用自适应进化策略来搜索由模块及其关系组成的大解空间。我们将我们提出的方法与广泛使用的基于遗传算法的方法在许多测试系统上进行了比较。我们提出的方法在所有测试用例的解决方案的质量和有效性方面显示出相当大的改进。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Evolution Strategy Based Automated Software Clustering Approach
In the software development life cycle, maintenance is a key phase that determines long term and effective use of any software. Maintenance can become very lengthy and costly for large software systems when structure of the system is complicated. One of the factors complicating the structure of the software system is subsystem boundaries becoming ambiguous due to system evolution, lack of up to date documentation and high turn over rate of software professionals (leading to non availability of original designers of the software systems). Software module clustering helps software professionals to recover high-level structure of the system by decomposing the system into smaller manageable subsystems, containing interdependent modules. Automated approaches simplify the software clustering process, which otherwise is quite a tedious task for medium and large software systems. We treat software clustering as an optimization problem and propose an automated technique to get near optimal decompositions of relatively independent subsystems, containing interdependent modules. We propose the use of self adaptive Evolution Strategies to search a large solution space consisting of modules and their relationships. We compare our proposed approach with a widely used genetic algorithm based approach on a number of test systems. Our proposed approach shows considerable improvement in terms of quality and effectiveness of the solutions for all tests cases.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信