| With the development of Internet technology,traditional centralized and waterfall software development models are unable to adapt to the increasingly fierce market competition and complex and ever-changing user needs.This has led to the emergence of new software development models such as crowdsourcing and agile development.Software project scheduling,which involves coordinating tasks and developers in software projects,is a critical step in improving project success rates and completion quality.Particle swarm optimization,as a classical metaheuristic algorithm,has the advantages of few parameters and good global solution performance,making it suitable for solving NP-hard problems such as software project scheduling.Based on this background,this paper studies the software project scheduling model under new models such as crowdsourced development,agile development,and multi-team agile development,as well as the scheduling method based on particle swarm optimization.First,for crowdsourced software development,focusing on three tightly coupled subproblems of developer selection,task assignment,and input determination,the developer credibility is introduced,and constraints such as developer skills,maximum working hours,and development team size are considered.A crowdsourced software project scheduling model is established with the goal of maximizing project completion quality and minimizing project duration.A particle swarm algorithm based on grouping learning according to fitness sorting results is proposed.The number of particles in different groups adaptively changes with the evolution generation,and different update strategies are adopted based on differences in fitness.Comparative results with 10 representative algorithms on 12 examples show that the proposed algorithm can obtain a scheduling plan with higher project development quality and shorter project duration.Second,for agile software development,two tightly coupled sub-problems of user story selection and developer-task assignment are considered,and the dynamic agile software project scheduling model is constructed with the goals of maximizing project value and developer time utilization rate,considering changes in user story additions and developer working hours.A particle swarm algorithm based on dual indicators of potential value and target value for grouping learning is proposed.Different groups select learning objects in a diverse way,and a change response mechanism that utilizes target information and a local search operator based on ROI and developer time utilization are introduced.Comparative results with 6 algorithms on 12 examples show that the proposed algorithm can quickly plan scheduling plans with higher time utilization rates and greater project output value for each sprint.Finally,based on the agile software project scheduling model,a multi-team collaboration development mechanism is incorporated.A sub-problem of user story-team assignment is added,and the development experience and preferences of each team for different types of user stories are introduced.The multi-team agile software project scheduling model is constructed with the optimization goals of team efficiency and allocation satisfaction.An improved dual-indicator grouping learning particle swarm algorithm is proposed to solve the model,using a three-layer variable-length chromosome coding method and designing a local search operator based on team satisfaction and development speed.Comparative results with 5 existing algorithms on 12 examples show that the proposed algorithm can obtain scheduling plans with higher team satisfaction and development efficiency. |