Font Size: a A A

Multi-objective Evolutionary Optimization Method For Dynamic Software Project Scheduling With Variable Employee's Characteristics

Posted on:2019-02-21Degree:MasterType:Thesis
Country:ChinaCandidate:J H JiFull Text:PDF
GTID:2428330566463576Subject:Control Science and Engineering
Abstract/Summary:PDF Full Text Request
Unlike ordinary industrial products relying on repetitive work of mechine,software development is a highly customized intellectual product.Software development mainly rely on the brainpower of software developers.As a relatively unstable resource,human resources shall not be allocated in the way that mechanical resources are allocated in the general scheduling problem.The development environment of real software project is usually dynamic,which is mainly reflected in two aspects.(1)The personnel skill level is in a floating state because of the learning/forgetting effect of human resource.(2)The occurrence of dynamic events in the software development process often leads to the inability of the original scheduling solution to achieve the desired performance.These increase the difficulty of software project scheduling problem.In this thesis the author studies the theory and method of project management and combines the characteristics of software project scheduling problems to make reasonable scheduling scheme of software projects.Firstly,the software project problem characteristics,scheduling process and management framework are analyzed,and the individual coding method of the software scheduling project is designed.The software project scheduling model is established according to the characteristics of the software project scheduling problem,mainly includes network modeling,constraints,objective functions,personnel models,etc.Secondly,considering that human resource are the main scheduling objects of the software project scheduling problem,a learning/forgetting model was established based on the research results in existing literatures.And a number of simulation experiments were conducted using NSGA-II.Experiment results of different project scale examples show that the learning ability of employee is conducive to the progress of the project,while the forgetting effect will increase the total duration and cost of the scheduling project.Finally,considering the uncertainty of the software development environment,I model the three types of dynamic accidents in the software development process,and design a dynamic event processing strategy.In addition,robustness is added as the third objective function to evaluate the merits of the scheduling scheme.An improved fireworks algorithm is proposed to solve the problem.The improvements mainly include the introduction of cross-explosion operator and the design of new explosion screening and retention strategy.Experiment results show that the performance of the improved fireworks algorithm has been improved in terms of diversity,distribution and convergence.The research is based on the real software project problems,which can provide a certain theoretical basis and guidance scheme for software companies to optimize the resource allocation plan,and improve the efficiency of software development.
Keywords/Search Tags:Software project, Dynamic, Learning and forgetting effect, Multi-objective evolutionary optimization
PDF Full Text Request
Related items