学位论文详细信息
Cooperative Based Software Clustering on Dependency Graphs
Software Engineering;Cooperative Clustering;Software Clustering;Machine Learning;Dependency Graphs;Electrical and Computer Engineering (Software Engineering)
Ibrahim, Ahmed Fakhri
University of Waterloo
关键词: Software Engineering;    Cooperative Clustering;    Software Clustering;    Machine Learning;    Dependency Graphs;    Electrical and Computer Engineering (Software Engineering);   
Others  :  https://uwspace.uwaterloo.ca/bitstream/10012/8543/3/Ibrahim_AhmedFakhri.pdf
瑞士|英语
来源: UWSPACE Waterloo Institutional Repository
PDF
【 摘 要 】

The organization of software systems into subsystems is usually based on theconstructs of packages or modules and has a major impact on the maintainability ofthe software. However, during software evolution, the organization of the system issubject to continual modification, which can cause it to drift away from the originaldesign, often with the effect of reducing its quality.A number of techniques for evaluating a system;;s maintainability and for controllingthe effort required to conduct maintenance activities involve software clustering.Software clustering refers to the partitioning of software system componentsinto clusters in order to obtain both exterior and interior connectivity between thesecomponents. It helps maintainers enhance the quality of software modularizationand improve its maintainability.Research in this area has produced numerous algorithms with a variety ofmethodologies and parameters. This thesis presents a novel ensemble approachthat synthesizes a new solution from the outcomes of multiple constituent clusteringalgorithms. The main principle behind this approach derived from machinelearning, as applied to document clustering, but it has been modified, both conceptuallyand empirically, for use in software clustering. The conceptual modificationsinclude working with a variable number of clusters produced by the input algorithmsand employing graph structures rather than feature vectors. The empiricalmodifications include experiments directed at the selection of the optimal cluster merging criteria. Case studies based on open source software systems show thatestablishing cooperation between leading state-of-the-art algorithms produces betterclustering results compared with those achieved using only one of any of thealgorithms considered.

【 预 览 】
附件列表
Files Size Format View
Cooperative Based Software Clustering on Dependency Graphs 2073KB PDF download
  文献评价指标  
  下载次数:19次 浏览次数:38次