Font Size: a A A

Multi-objective Optimization Of Software Modularization Considering Complexity Balance

Posted on:2019-01-20Degree:MasterType:Thesis
Country:ChinaCandidate:N N YaoFull Text:PDF
GTID:2518306044972029Subject:Control Engineering
Abstract/Summary:PDF Full Text Request
In today's society,with the application and development of software technology,computer software is closely related to people's daily work,study and life.Among these software systems,there is a kind of systems called Legacy System.The development of legacy systems was put into use earlier and its internal structure was complicated.Due to frequent changes of technical staff and imperfect system documentation,the use and maintenance of the system was greatly troubling.Almost all software systems are designed in a modular form,both in object-oriented systems and process-oriented systems.However,many years of maintenance and evolution have made software products tend to be larger and more complex,and the system structure deviates from the original designing,for example,that some of the components are not placed in the right module.The deteriorating system structure leads to spending more time and money on software maintenance.Therefore,how to use the intelligent optimization algorithm to automatically generate high-quality module partitioning alternatives for large and complex software systems and improve the maintainability of the software system at a reasonable cost has become the crucial research direction.The purpose of software modularization is to get better modular program.Modular optimization problems mainly include the design of quantitative indicators of modular quality and the algorithm of better seeking ability.In the selection of software structure metrics,the current study uses high cohesion low coupling standards,the use of this standard is likely to cause over-cohesion problems,if the system error occurs in the module,and this module is very complex,the system maintenance will be in trouble.Therefore,this thesis considered the balance of module complexity in the selection of cohesive coupling metrics and applied it to software modular optimization.The main research work includes the following two aspects:(1)First of all,we analyze the shortcomings of the currently used high-cohesion low-coupling standards.We consider how to choose the metrics to balance the complexity of the system modules,and avoid over-cohesion problem.Based on the above work,this thesis builds a multi-objective optimization model.The model is minimized maximum the cohesion of module considering the complexity balance and minimized the coupling of the system.(2)According to the mathematical characteristics of the multi-objective optimization model established in this thesis,the HNSGA-? algorithm is designed to solve the multi-objective optimization model.In order to solve the problem of poor initial population quality randomly generated,a heuristic algorithm based on maximum side shrinkage is proposed to improve the initial quality of the population.Two sets of comparative experiments show that the HNSGA-? algorithm has better performance than the traditional NSGA-II algorithm and the Multi-objective Particle Swarm Optimization algorithm.
Keywords/Search Tags:Software modularization, Clustering problem, NSGA-? algorithm, Multi-objective optimization
PDF Full Text Request
Related items