Software project multi-dimensional data analysis and resource scheduling automation method and system

Through multi-dimensional data analysis and deep neural network prediction resource requirements, combined with genetic algorithms to optimize resource scheduling, the problems of insufficient multi-dimensional data analysis and unreasonable resource scheduling in software project management in the existing technology are solved, and the comprehensive project status evaluation is achieved automation and optimization of sexual and resource scheduling.

CN119476851AInactive Publication Date: 2025-02-18JIANGSU JINGPINSI NETWORK TECHNOLOGY CO LTD
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202411631301.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-15
Publication Date
2025-02-18
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Technical Problem

The existing software project management methods lack comprehensive analysis of multi-dimensional data, which makes it difficult for project managers to fully grasp the project status, and the accuracy of resource demand prediction is low and resource scheduling is unreasonable, which affects project progress and quality.

Method used

By collecting multi-dimensional data of software projects, building a multi-dimensional data analysis model, generating project status evaluation indicators, and using deep neural networks to predict resource requirements. Finally, genetic algorithms are used to optimize resource scheduling solutions to achieve automated issuance.

Benefits of technology

It improves the comprehensiveness and accuracy of project status evaluation, enhances the accuracy and intelligence of resource demand forecasting, realizes the automation and optimization of resource scheduling, and reduces project risks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119476851A_ABST
    Figure CN119476851A_ABST
Patent Text Reader

Abstract

The invention provides a software project multi-dimensional data analysis and resource scheduling automation method and system, and relates to the technical field of resource scheduling, and the method comprises the steps: collecting multi-dimensional data information, constructing a multi-dimensional data analysis model, and generating a project state evaluation index; predicting a resource demand by using a deep neural network; constructing a resource scheduling optimization model based on the prediction data, and optimizing a resource allocation scheme by using a genetic algorithm; and outputting and automatically executing the optimal resource scheduling scheme. According to the invention, intelligent management of the software project is realized, the resource utilization rate is improved, and the project delay risk is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to resource scheduling technology, and in particular to a method and system for multi-dimensional data analysis and resource scheduling automation of software projects. Background Art

[0002] Existing software project management methods often only focus on single-dimensional data, such as project progress or cost, and lack comprehensive analysis of multi-dimensional data. This makes it difficult for project managers to fully understand the project status and make accurate resource scheduling decisions.

[0003] Secondly, existing resource demand forecasting methods usually rely on empirical estimates or simple statistical models, with low forecasting accuracy. This method cannot effectively utilize the multi-dimensional data of the project, and is difficult to adapt to the complex and changing project environment, often leading to unreasonable resource allocation and affecting project progress and quality.

[0004] Finally, traditional resource scheduling methods mostly use manual decision-making or simple heuristic algorithms, which makes it difficult to find the optimal resource allocation solution under multi-objective constraints. This not only increases the workload of project management, but also fails to ensure the optimal use of resources, which can easily lead to problems such as resource waste or project delays. Summary of the invention

[0005] The embodiments of the present invention provide a method and system for multi-dimensional data analysis and resource scheduling automation of software projects, which can solve the problems in the prior art.

[0006] According to a first aspect of the embodiments of the present invention, Provide multi-dimensional data analysis and resource scheduling automation methods for software projects, including: Collecting multi-dimensional data information of the software project, the multi-dimensional data information including project progress data, code quality data, project cost data and risk assessment data; constructing a multi-dimensional data analysis model based on the multi-dimensional data information, hierarchically mapping the multi-dimensional data information according to preset weights, and generating project status assessment indicators, the project status assessment indicators including a project delay risk indicator, a resource utilization indicator, a code defect density indicator, and a cost deviation indicator; According to the project status evaluation index, a deep neural network is used to predict the resource demand of the software project, the input layer of the deep neural network receives the project status evaluation index, the hidden layer uses a multi-layer perceptron structure to extract features of the project status evaluation index, and the output layer generates human resource prediction data and computing resource prediction data; Based on the human resource forecast data and the computing resource forecast data, a resource scheduling optimization model is constructed. The resource scheduling optimization model uses a genetic algorithm to iteratively optimize the human resource allocation plan and the computing resource allocation plan. The fitness function of the genetic algorithm includes the dual-objective constraints of maximizing resource utilization and minimizing the risk of project delay. The resource allocation plan is continuously optimized through a crossover operator and a mutation operator until a preset number of iterations or a convergence threshold is reached, and an optimal resource scheduling plan is output. The optimal resource scheduling plan is automatically sent to a project management system and a resource management system for execution.

[0007] In an optional embodiment, Constructing a multidimensional data analysis model based on the multidimensional data information, mapping the multidimensional data information in layers according to preset weights, and generating project status evaluation indicators include: The difference between the actual completion time and the planned completion time in the project progress data is standardized as a progress deviation value in the range of negative one to positive one, and the code cyclomatic complexity data, repetition data, annotation rate data, defect density data, and test coverage data in the code quality data are processed by Z-score standardization to generate a code quality standard value; a multi-level data analysis model is constructed based on the progress deviation value and the code quality standard value, and the multi-level data analysis model includes an original data layer, a feature extraction layer, and a weight mapping layer; The original data layer stores the progress deviation value and the code quality standard value, the feature extraction layer uses the principal component analysis method to perform dimensionality reduction processing on the data of the original data layer to obtain a feature vector, the weight mapping layer uses the hierarchical analysis method to construct a judgment matrix to calculate the eigenvalue, and based on the eigenvalue, determines that the weight value of the project progress data is 0.3, the weight value of the code quality data is 0.2, the weight value of the project cost data is 0.15, and the weight value of the risk assessment data is 0.1; The feature vector obtained by the feature extraction layer and the weight value of the weight mapping layer are weightedly combined to generate a project status assessment indicator, wherein the project status assessment indicator includes a project delay risk indicator, a resource utilization indicator, a code defect density indicator, and a cost deviation indicator; the project status assessment indicator is stored in a time series database, and a warning threshold is set based on the project status assessment indicator in the time series database, and a warning information is triggered when the project status assessment indicator exceeds the warning threshold.

[0008] In an optional embodiment, According to the project status evaluation index, a deep neural network is used to predict the resource demand of the software project. The input layer of the deep neural network receives the project status evaluation index, the hidden layer uses a multi-layer perceptron structure to extract features of the project status evaluation index, and the output layer generates human resource prediction data and computing resource prediction data, including: Constructing an input layer of a deep neural network, the input layer comprising four neuron nodes, the four neuron nodes respectively receiving a project delay risk indicator, a resource utilization indicator, a code defect density indicator, and a cost deviation indicator; performing batch normalization processing on the project delay risk indicator, the resource utilization indicator, the code defect density indicator, and the cost deviation indicator received by the four neuron nodes to obtain normalized data; The normalized data is input into a hidden layer of a multi-layer perceptron structure, wherein the hidden layer comprises a first hidden layer, a second hidden layer, and a third hidden layer, wherein the first hidden layer performs feature conversion on the normalized data through a ReLU activation function to obtain low-level features, the second hidden layer combines the low-level features to obtain middle-level features, and the third hidden layer integrates the middle-level features to obtain high-level semantic features; A residual connection is established between the first hidden layer and the second hidden layer, and between the second hidden layer and the third hidden layer, and the residual connection is used for feature transfer; a weight matrix and a bias vector are configured for each neuron in the first hidden layer, the second hidden layer, and the third hidden layer, and each neuron performs a weighted summation on the input data and then processes it with a ReLU activation function to obtain a nonlinear transformation feature; a Dropout layer is set after the first hidden layer, the second hidden layer, and the third hidden layer, respectively, and the Dropout layer randomly discards neurons and performs an L2 regularization constraint; The output layer of the deep neural network includes a human resources prediction branch and a computing resource prediction branch. The human resources prediction branch contains three output nodes, and the three output nodes respectively predict the number of developers, the number of testers, and the number of project managers. The computing resource prediction branch contains three output nodes, and the three output nodes respectively predict server usage, storage usage, and network bandwidth usage. The deep neural network is trained using a hybrid loss function, and the hybrid loss function includes a mean square error loss and a mean absolute error loss. The Adam optimizer is used for parameter optimization, and the learning rate is adjusted based on the cosine annealing strategy.

[0009] In an optional embodiment, The human resource forecast data includes the forecast value of the number of developers, the forecast value of the number of testers, and the forecast value of the number of project managers; the computing resource forecast data includes the forecast value of server resource usage, the forecast value of storage resource usage, and the forecast value of network bandwidth usage.

[0010] In an optional embodiment, Based on the human resource forecast data and the computing resource forecast data, a resource scheduling optimization model is constructed. The resource scheduling optimization model uses a genetic algorithm to iteratively optimize the human resource allocation plan and the computing resource allocation plan. The fitness function of the genetic algorithm includes dual-objective constraints of maximizing resource utilization and minimizing project delay risk, including: Encode the human resource prediction data into a first real number vector, the dimension of the first real number vector is the number of project tasks, and the elements in the first real number vector represent the number of human resources allocated to the corresponding tasks; encode the computing resource prediction data into a second real number vector, the dimension of the second real number vector is the number of server nodes, and the elements in the second real number vector represent the computing resource capacity of each node; Constructing a fitness function of a dual-objective constraint, wherein the fitness function of the dual-objective constraint includes a resource utilization target and a project delay risk target, wherein the resource utilization target is calculated based on a human resource work saturation index and a computing resource load balance index, and the project delay risk target is calculated based on a deviation between a task completion time and a planned time; In an optional embodiment, The resource allocation scheme is continuously optimized through the crossover operator and mutation operator until the preset number of iterations or convergence threshold is reached, and the optimal resource scheduling scheme is output, including: The weight coefficients of the resource utilization rate target and the project delay risk target are determined by the hierarchical analysis method, and the resource utilization rate target and the project delay risk target are combined into a fitness value by the linear weighting method; an arithmetic crossover operation is performed on the first real number vector and the second real number vector, and a linear combination of two parent individuals is performed based on a randomly generated crossover ratio to obtain a child individual; a Gaussian mutation operation is performed on the child individual, and a random perturbation that obeys a normal distribution is added to the selected gene position, and the amplitude of the random perturbation decreases as the number of iterations increases; The tournament selection strategy is used to select individuals. After comparing the fitness values ​​of the selected individuals, the individual with the highest fitness value is selected as the next generation population; the individual with the highest fitness value in each generation population is directly retained to the next generation population through the elite retention strategy; Dynamically adjust the selection pressure according to the degree of population convergence; use the penalty function method to deal with resource capacity constraints, and add a penalty term in the fitness value calculation when an individual violates the upper and lower limit constraints of resources; ensure that the resource allocation plan meets the task execution order requirements through topological sorting; repair the individuals that do not meet the constraints to obtain a feasible solution; when the preset number of iterations is reached or the relative change of the optimal fitness value of the consecutive preset generations is less than the convergence threshold, output the resource allocation plan corresponding to the individual with the highest fitness value as the optimal resource scheduling plan.

[0011] According to a second aspect of the embodiments of the present invention, Provide multi-dimensional data analysis and resource scheduling automation system for software projects, including: The first unit is used to collect multi-dimensional data information of the software project, wherein the multi-dimensional data information includes project progress data, code quality data, project cost data, and risk assessment data; construct a multi-dimensional data analysis model based on the multi-dimensional data information, hierarchically map the multi-dimensional data information according to preset weights, and generate project status assessment indicators, wherein the project status assessment indicators include a project delay risk indicator, a resource utilization indicator, a code defect density indicator, and a cost deviation indicator; The second unit is used to predict the resource demand of the software project by using a deep neural network according to the project status evaluation index, wherein the input layer of the deep neural network receives the project status evaluation index, the hidden layer uses a multi-layer perceptron structure to extract features of the project status evaluation index, and the output layer generates human resource prediction data and computing resource prediction data; The third unit is used to construct a resource scheduling optimization model based on the human resource prediction data and the computing resource prediction data. The resource scheduling optimization model uses a genetic algorithm to iteratively optimize the human resource allocation plan and the computing resource allocation plan. The fitness function of the genetic algorithm includes the dual-objective constraints of maximizing resource utilization and minimizing the risk of project delay. The resource allocation plan is continuously optimized through a crossover operator and a mutation operator until a preset number of iterations or a convergence threshold is reached, and an optimal resource scheduling plan is output, and the optimal resource scheduling plan is automatically sent to the project management system and the resource management system for execution.

[0012] According to a third aspect of the embodiments of the present invention, An electronic device is provided, comprising: processor; a memory for storing processor-executable instructions; The processor is configured to call the instructions stored in the memory to execute the aforementioned method.

[0013] According to a fourth aspect of the embodiments of the present invention, A computer-readable storage medium is provided, on which computer program instructions are stored. When the computer program instructions are executed by a processor, the aforementioned method is implemented.

[0014] The beneficial effects of this application are as follows: 1. Multi-dimensional data analysis improves the comprehensiveness and accuracy of project status assessment: By collecting multi-dimensional data information of software projects, including project progress, code quality, project cost, and risk assessment data, a multi-dimensional data analysis model is constructed and project status evaluation indicators are generated. This method can fully reflect all aspects of the project, provide a more accurate and objective project status evaluation, and help to timely discover and solve potential problems in the project.

[0015] 2. Deep neural networks improve the accuracy and intelligence of resource demand forecasting: Using deep neural networks to predict the resource requirements of software projects and extracting features of project status evaluation indicators through a multi-layer perceptron structure can better capture the complex relationship between project status and resource requirements. This method improves the accuracy of resource demand prediction, makes resource allocation more reasonable, and thus improves the efficiency of project management.

[0016] 3. Genetic algorithm optimization realizes the automation and optimization of resource scheduling: Based on resource demand forecast data, a resource scheduling optimization model is constructed, and a genetic algorithm is used for iterative optimization. By setting a fitness function with dual-objective constraints, a balance can be found between maximizing resource utilization and minimizing the risk of project delays. This method realizes the automation and optimization of resource scheduling, reduces human intervention, improves the efficiency and rationality of resource allocation, helps reduce project risks, and improves the overall execution effect of the project. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] Figure 1 A flowchart of a method for multi-dimensional data analysis and resource scheduling automation for software projects according to an embodiment of the present invention; Figure 2 It is a structural diagram of a multi-dimensional data analysis and resource scheduling automation system for software projects according to an embodiment of the present invention. DETAILED DESCRIPTION

[0018] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0019] The technical solution of the present invention is described in detail with specific embodiments below. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described in detail in some embodiments.

[0020] Figure 1 FIG. 1 is a flow chart of a method for automating multi-dimensional data analysis and resource scheduling of software projects according to an embodiment of the present invention. Figure 1 As shown, the method includes: S101. Collect multi-dimensional data information of the software project, the multi-dimensional data information including project progress data, code quality data, project cost data and risk assessment data; construct a multi-dimensional data analysis model based on the multi-dimensional data information, perform hierarchical mapping on the multi-dimensional data information according to preset weights, and generate project status assessment indicators, the project status assessment indicators including project delay risk indicators, resource utilization indicators, code defect density indicators, and cost deviation indicators; S102. According to the project status evaluation index, a deep neural network is used to predict the resource demand of the software project, the input layer of the deep neural network receives the project status evaluation index, the hidden layer uses a multi-layer perceptron structure to extract features of the project status evaluation index, and the output layer generates human resource prediction data and computing resource prediction data; S103. Based on the human resource forecast data and the computing resource forecast data, a resource scheduling optimization model is constructed. The resource scheduling optimization model uses a genetic algorithm to iteratively optimize the human resource allocation plan and the computing resource allocation plan. The fitness function of the genetic algorithm includes the dual-objective constraints of maximizing resource utilization and minimizing the risk of project delay. The resource allocation plan is continuously optimized through the crossover operator and the mutation operator until a preset number of iterations or convergence threshold is reached, and the optimal resource scheduling plan is output, and the optimal resource scheduling plan is automatically sent to the project management system and the resource management system for execution.

[0021] The specific implementation method of the multi-dimensional data analysis and resource scheduling automation method for software projects is as follows: First, collect multi-dimensional data information of software projects. Specifically, collect project progress data through the project management system, including the planned start time, actual start time, planned completion time, actual completion time, etc. of each task; collect code quality data through code scanning tools, including the number of lines of code, cyclomatic complexity, proportion of repeated code, unit test coverage, etc.; collect project cost data through the cost management system, including labor costs, hardware costs, software license costs, etc.; collect risk assessment data through the risk management system, including the number of identified risks and risk level distribution.

[0022] Next, a multidimensional data analysis model is constructed based on the collected multidimensional data information. The model uses the hierarchical analysis method to map different dimensional data in layers. First, the indicator system is determined, including the first-level indicators: progress, quality, cost, risk, and their corresponding second-level indicators. Then the weights of indicators at all levels are determined by expert scoring. Taking the progress indicator as an example, the weight can be set to 0.3, and the second-level indicators such as progress deviation rate and milestone achievement rate are set below it, with weights of 0.6 and 0.4 respectively. The weight of the quality indicator is 0.25, the weight of the cost indicator is 0.25, and the weight of the risk indicator is 0.2. The original data is mapped to the scoring range of 0-100 according to the weight to generate the project status evaluation indicator. For example, the progress deviation rate of a project is 10%, corresponding to 80 points; the milestone achievement rate is 90%, corresponding to 90 points. Then the progress indicator score is: 80*0.6+90*0.4=84. Similarly, the scores of other indicators are calculated, and finally the evaluation indicators such as project delay risk indicator, resource utilization indicator, code defect density indicator, and cost deviation indicator are obtained.

[0023] Then, a deep neural network is used to predict the resource requirements of the software project. A 5-layer fully connected neural network is constructed. The number of neurons in the input layer is the number of project status evaluation indicators, for example, 10; the hidden layer adopts a 3-layer structure, and the number of neurons in each layer is 20, 15, and 10 respectively; the output layer has 2 neurons, corresponding to human resource requirements and computing resource requirements respectively. The hidden layer uses the ReLU activation function, and the output layer uses the linear activation function. The model is trained using historical project data, the loss function uses the mean square error, and the optimizer uses the Adam algorithm. Enter the evaluation indicators of the current project to predict the resource requirements in the future. For example, enter 10 evaluation indicators of a project [80, 85, 90, 75, 88, 92, 78, 83, 86, 79], and after the model calculation, the output is [12, 50], which means that 12 man-months of human resources and 50 core-hours of computing resources are predicted in the future.

[0024] Finally, a resource scheduling optimization model is constructed based on the resource demand prediction results. The model uses genetic algorithms to optimize the allocation of human resources and computing resources. First, the human resources and computing resources in the existing resource pool are encoded to generate the initial population. Then the fitness function is defined, including the two goals of maximizing resource utilization and minimizing the risk of project delay. The roulette wheel selection method is used to select excellent individuals, and the crossover operation is performed using a single-point crossover method. The probability of gene mutation is set to 0.01. During the iterative optimization process, the fitness of each individual in the population is continuously calculated, and the optimal solution is retained. When 1000 iterations are reached or the optimal solution remains unchanged for 50 consecutive generations, the optimal resource scheduling plan is output. For example, for the above resource demand prediction results, the final output scheduling plan may be: assign engineers A, B, and C a total of 12 man-months, and assign 2 high-performance servers a total of 50 core-hours of computing resources. Finally, the plan is automatically sent to the project management system and resource management system for execution to complete the automatic scheduling of resources.

[0025] The beneficial effects of this method are mainly reflected in the following three aspects: 1. Improved the accuracy and intelligence of project management. Through multi-dimensional data analysis, the project status is comprehensively evaluated, overcoming the limitations of single-dimensional and subjective judgment in traditional project management. Resource demand prediction based on deep learning can accurately grasp the dynamic changes of project resource demand and provide a reliable basis for project management decisions.

[0026] 2. Optimized resource allocation efficiency. The resource scheduling optimization model based on genetic algorithms can maximize resource utilization while meeting project requirements, avoiding the problem of idle or over-occupied resources. Through automated scheduling, the efficiency and flexibility of resource allocation are greatly improved.

[0027] 3. Reduced project risks. Through multi-dimensional data analysis, timely identification of project risks, resource demand forecasting and optimal allocation effectively reduced the risk of project delays caused by insufficient resources. The automation of the entire process significantly reduced human errors and further reduced project management risks.

[0028] In an optional implementation, a multidimensional data analysis model is constructed based on the multidimensional data information, and the multidimensional data information is hierarchically mapped according to preset weights to generate project status evaluation indicators, including: The difference between the actual completion time and the planned completion time in the project progress data is standardized as a progress deviation value in the range of negative one to positive one, and the code cyclomatic complexity data, repetition data, annotation rate data, defect density data, and test coverage data in the code quality data are processed by Z-score standardization to generate a code quality standard value; a multi-level data analysis model is constructed based on the progress deviation value and the code quality standard value, and the multi-level data analysis model includes an original data layer, a feature extraction layer, and a weight mapping layer; The original data layer stores the progress deviation value and the code quality standard value, the feature extraction layer uses the principal component analysis method to perform dimensionality reduction processing on the data of the original data layer to obtain a feature vector, the weight mapping layer uses the hierarchical analysis method to construct a judgment matrix to calculate the eigenvalue, and based on the eigenvalue, determines that the weight value of the project progress data is 0.3, the weight value of the code quality data is 0.2, the weight value of the project cost data is 0.15, and the weight value of the risk assessment data is 0.1; The feature vector obtained by the feature extraction layer and the weight value of the weight mapping layer are weightedly combined to generate a project status assessment indicator, wherein the project status assessment indicator includes a project delay risk indicator, a resource utilization indicator, a code defect density indicator, and a cost deviation indicator; the project status assessment indicator is stored in a time series database, and a warning threshold is set based on the project status assessment indicator in the time series database, and a warning information is triggered when the project status assessment indicator exceeds the warning threshold.

[0029] The specific implementation is as follows: First, collect multi-dimensional data information of the project, including project progress data, code quality data, project cost data and risk assessment data, etc. The project progress data includes the actual completion time and the planned completion time; the code quality data includes indicators such as code circle complexity, duplication, annotation rate, defect density and test coverage; the project cost data includes the actual cost and budget cost; the risk assessment data includes the risk level and impact degree, etc.

[0030] Then, a multidimensional data analysis model is constructed to map the collected multidimensional data information in layers according to preset weights to generate project status evaluation indicators. The specific steps are as follows: Data standardization. For project progress data, calculate the difference between the actual completion time and the planned completion time, and standardize it to the interval [-1,1] to obtain the progress deviation value. For example, if the actual completion time of a project is 5 days later than planned, and the planned duration is 100 days, then the progress deviation value is 5 / 100=0.05. For code quality data, use the Z-score method to standardize and obtain the code quality standard value. Assuming that the original value of the code cyclomatic complexity of a project is 10, the industry average is 8, and the standard deviation is 2, the standardized value is (10-8) / 2=1.

[0031] Build a multi-level data analysis model, including the original data layer, feature extraction layer and weight mapping layer.

[0032] The original data layer stores standardized data such as progress deviation values ​​and code quality standard values.

[0033] The feature extraction layer uses principal component analysis to reduce the dimension of the original data and extract the main features. For example, by performing principal component analysis on five code quality indicators, two principal components may be obtained, reflecting the complexity and reliability of the code structure respectively.

[0034] The weight mapping layer uses the hierarchical analysis method to construct a judgment matrix, calculate the eigenvalue, and determine the weight of each dimension of data. The specific process is: first, a hierarchical model is established to decompose the project status evaluation indicators into four dimensions: progress, quality, cost, and risk; then, a pairwise comparison is performed to construct a judgment matrix; then, the eigenvector is calculated to obtain the relative importance of each dimension; finally, a consistency test is performed to ensure the rationality of the results. After calculation, the weight of the project progress data is 0.3, the weight of the code quality data is 0.2, the weight of the project cost data is 0.15, and the weight of the risk assessment data is 0.1.

[0035] Generate project status evaluation indicators. The feature vector obtained by the feature extraction layer is weighted and combined with the weight value of the weight mapping layer to generate project status evaluation indicators, including: Project delay risk index = 0.3 * schedule deviation value + 0.1 * risk level standard value; Resource utilization index = 0.15 * cost deviation standard value + 0.1 * human resource utilization standard value; Code defect density index = 0.2 * (0.4 * cyclomatic complexity standard value + 0.3 * repetition standard value + 0.3 * defect density standard value); Cost deviation index = 0.15 * (actual cost - budget cost) / budget cost; 4. Store the generated project status evaluation indicators in the time series database. The time series database can efficiently store and query time series data, which is convenient for subsequent analysis of the changing trend of project status over time.

[0036] 5. Set warning thresholds based on historical data in the time series database. Statistical methods can be used, such as calculating the mean and standard deviation of historical data, and taking the mean plus or minus 3 times the standard deviation as the upper and lower limits of the warning. Fixed thresholds can also be set based on project experience, such as triggering a warning when the project delay risk index is >0.5.

[0037] 6. Real-time monitoring of project status evaluation indicators. Regularly (e.g., daily) calculate the latest project status evaluation indicators and compare them with the warning threshold. When the indicators exceed the warning threshold, the warning information is triggered. The warning information may include the exceeded indicators, the degree of exceeding the threshold, historical trends, etc.

[0038] 7. Take appropriate intervention measures based on early warning information. For example, when the project delay risk index exceeds the standard, you can increase resource investment or adjust the project plan; when the code defect density index exceeds the standard, you can strengthen code review and testing.

[0039] 8. Continuously optimize the model. Regularly evaluate the accuracy and effectiveness of the model, and adjust the data processing method, feature extraction algorithm, weight distribution, etc. according to actual conditions to improve the model's predictive ability.

[0040] This technical solution has the following beneficial effects: Multi-dimensional evaluation: By integrating multi-dimensional data such as project progress, code quality, cost and risk, the project status is comprehensively evaluated to avoid the one-sidedness caused by a single indicator. Dynamic monitoring: Using the time series database to store historical data, dynamic monitoring of project status is achieved to detect potential problems in a timely manner. Intelligent early warning: Based on historical data, reasonable early warning thresholds are set to achieve automated and intelligent project risk early warnings and improve project management efficiency.

[0041] In an optional implementation, according to the project status evaluation index, a deep neural network is used to predict the resource demand of the software project, the input layer of the deep neural network receives the project status evaluation index, the hidden layer uses a multi-layer perceptron structure to extract features of the project status evaluation index, and the output layer generates human resource prediction data and computing resource prediction data, including: Constructing an input layer of a deep neural network, the input layer comprising four neuron nodes, the four neuron nodes respectively receiving a project delay risk indicator, a resource utilization indicator, a code defect density indicator, and a cost deviation indicator; performing batch normalization processing on the project delay risk indicator, the resource utilization indicator, the code defect density indicator, and the cost deviation indicator received by the four neuron nodes to obtain normalized data; The normalized data is input into a hidden layer of a multi-layer perceptron structure, wherein the hidden layer comprises a first hidden layer, a second hidden layer, and a third hidden layer, wherein the first hidden layer performs feature conversion on the normalized data through a ReLU activation function to obtain low-level features, the second hidden layer combines the low-level features to obtain middle-level features, and the third hidden layer integrates the middle-level features to obtain high-level semantic features; A residual connection is established between the first hidden layer and the second hidden layer, and between the second hidden layer and the third hidden layer, and the residual connection is used for feature transfer; a weight matrix and a bias vector are configured for each neuron in the first hidden layer, the second hidden layer, and the third hidden layer, and each neuron performs a weighted summation on the input data and then processes it with a ReLU activation function to obtain a nonlinear transformation feature; a Dropout layer is set after the first hidden layer, the second hidden layer, and the third hidden layer, respectively, and the Dropout layer randomly discards neurons and performs an L2 regularization constraint; The output layer of the deep neural network includes a human resources prediction branch and a computing resource prediction branch. The human resources prediction branch contains three output nodes, and the three output nodes respectively predict the number of developers, the number of testers, and the number of project managers. The computing resource prediction branch contains three output nodes, and the three output nodes respectively predict server usage, storage usage, and network bandwidth usage. The deep neural network is trained using a hybrid loss function, and the hybrid loss function includes a mean square error loss and a mean absolute error loss. The Adam optimizer is used for parameter optimization, and the learning rate is adjusted based on the cosine annealing strategy.

[0042] The specific implementation is as follows: First, the input layer of the deep neural network is constructed. The input layer contains four neuron nodes, which are used to receive the project delay risk index, resource utilization index, code defect density index and cost deviation index respectively. These four indicators reflect different aspects of the software project and can comprehensively evaluate the project status. For example, the project delay risk index can be set to a value between 0 and 1, where 0 means extremely low delay risk and 1 means extremely high risk; the resource utilization index can be expressed in percentage, such as 80% means high resource utilization; the code defect density index can be expressed in the number of defects per thousand lines of code, such as 5 means an average of 5 defects per thousand lines of code; the cost deviation index can be expressed in the ratio of actual cost to budget, such as 1.2 means 20% over budget.

[0043] Next, batch normalization is performed on these four input indicators to map them to a numerical range between 0 and 1. This step can eliminate the dimensional differences between different indicators and make network training more stable. Specifically, the maximum and minimum value normalization method can be used, that is, for each indicator x, (x-min) / (max-min) is calculated, where min and max are the minimum and maximum values ​​of the indicator, respectively. For example, for the code defect density indicator, if the minimum value is 0 and the maximum value is 10, the original value 5 is normalized to 0.5.

[0044] The normalized data is input into the hidden layer of the multi-layer perceptron structure. The hidden layer consists of three layers, namely the first hidden layer, the second hidden layer and the third hidden layer. The first hidden layer is responsible for low-level feature extraction and can be set to 64 neurons; the second hidden layer is used for mid-level feature combination and can be set to 32 neurons; the third hidden layer integrates high-level semantic features and can be set to 16 neurons. Each layer uses the ReLU activation function for nonlinear transformation to enhance the network's expressive power.

[0045] Residual connections are established between the first hidden layer and the second hidden layer, and between the second hidden layer and the third hidden layer. Residual connections can alleviate the gradient vanishing problem of deep networks and promote the flow of information between different layers. In specific implementation, the output of the previous layer can be directly added to the output of the next layer. For example, if the output of the first hidden layer is H1 and the output of the second hidden layer is H2, the final output of the second hidden layer is H2+H1.

[0046] For each neuron in the hidden layer, configure the weight matrix and bias vector. The weight matrix is ​​used to perform a linear transformation on the input, and the bias vector is used to adjust the activation threshold. For example, for a neuron in the first hidden layer, its input is x (a four-dimensional vector), its weight is w (a four-dimensional vector), and its bias is b (a scalar), then the output of the neuron is max(0, wx + b), where max(0, ) represents the ReLU activation function.

[0047] A Dropout layer is set after each hidden layer to prevent overfitting. The Dropout layer will randomly drop a certain proportion of neurons during the training process, such as setting the dropout rate to 0.5. At the same time, the network parameters are constrained by L2 regularization, that is, a penalty term of the sum of all squared weights is added to the loss function, and the coefficient can be set to 0.0001.

[0048] The output layer of the deep neural network is divided into two branches: the human resource prediction branch and the computing resource prediction branch. The human resource prediction branch contains three output nodes, which predict the number of developers, testers, and project managers respectively. For example, the output values ​​5.3, 2.7, and 1.1 respectively indicate that 5.3 developers, 2.7 testers, and 1.1 project managers are required. The computing resource prediction branch also contains three output nodes, which predict the server usage, storage usage, and network bandwidth usage respectively. For example, the output values ​​3, 500, and 100 respectively indicate that 3 servers, 500GB storage space, and 100Mbps network bandwidth are required.

[0049] A hybrid loss function is used to train the deep neural network. The hybrid loss function includes mean square error loss and mean absolute error loss, which can be taken as a weighted sum with a weight ratio of 1:1. Mean square error loss calculates the square of the difference between the predicted value and the true value, and pays more attention to larger errors; mean absolute error loss calculates the absolute value of the difference between the predicted value and the true value, and treats all errors equally. Combining the two losses can take into account errors of different scales.

[0050] Use Adam optimizer for parameter optimization. Adam optimizer combines the advantages of momentum method and adaptive learning rate method, and can converge quickly and adapt to the learning rate of different parameters. The initial learning rate can be set to 0.001. At the same time, the learning rate is dynamically adjusted based on the cosine annealing strategy. Specifically, the learning rate changes periodically with the increase of the number of training rounds, and the change curve is similar to the cosine function. In each cycle, the learning rate first decreases and then increases. This strategy can help the network jump out of the local optimal solution and improve the generalization ability.

[0051] Through the above method, the resource demand forecast of software projects based on project status evaluation indicators can be realized. This method has the following beneficial effects: First, the use of deep neural networks for modeling can automatically learn the complex nonlinear relationship between project status indicators and resource requirements, and has stronger expressive power and prediction accuracy than traditional methods.

[0052] Second, a multi-level feature extraction structure was designed, and residual connection and regularization techniques were introduced to effectively improve the generalization ability of the model and reduce the risk of overfitting.

[0053] Third, by predicting human resource and computing resource requirements separately and adopting a hybrid loss function and adaptive optimization strategy, it is possible to comprehensively and accurately evaluate project resource requirements and provide a reliable basis for project management decisions.

[0054] In an optional implementation, the human resources forecast data includes forecast values ​​for the number of developers, the number of testers, and the number of project managers; the computing resource forecast data includes forecast values ​​for server resource usage, storage resource usage, and network bandwidth usage.

[0055] In a specific implementation, the process of obtaining human resource prediction data and computing resource prediction data is as follows: First, collect historical project data, including the number of developers, testers, and project managers for projects of different types and sizes, as well as corresponding information such as server resource usage, storage resource usage, and network bandwidth usage.

[0056] Then, the historical data is cleaned and preprocessed to remove outliers and fill in missing values ​​to ensure data quality. For example, the data of a historical project shows that the number of developers is -5, which is obviously an outlier and needs to be removed.

[0057] Next, historical data is classified and clustered according to project type, scale and other characteristics. For example, projects can be divided into small (1-5 man-months), medium (6-20 man-months), and large (more than 20 man-months).

[0058] Afterwards, for each type of project, time series analysis methods, such as moving average method, exponential smoothing method, etc., are used to analyze and predict the trend of human resources and computing resource usage. For example, for a medium-sized project, the predicted value of the number of developers in the next three months can be 8, 9, and 10.

[0059] Furthermore, combined with the characteristics of the current projects under development, such as project type, estimated duration, etc., similar projects are selected from historical data as reference samples. Through comparative analysis, more accurate prediction values ​​can be obtained. For example, a medium-sized project under development is found to be most similar to the project with ID P0023 in the historical database through comparison. The resource usage data of this project can be used as a benchmark for adjustment.

[0060] Finally, the forecast results are manually corrected and optimized by comprehensively considering factors such as the company's development strategy and technology development trends. For example, considering that the company is promoting automated testing, which may lead to a decrease in the demand for testers in the future, the forecast value of the number of testers is slightly lowered.

[0061] Through the above steps, we can finally obtain human resource forecast data including the predicted values ​​of the number of developers, the predicted values ​​of the number of testers, and the predicted values ​​of the number of project managers, as well as computing resource forecast data including the predicted values ​​of server resource usage, storage resource usage, and network bandwidth usage.

[0062] The beneficial effects of this prediction method are mainly reflected in three aspects: First, by combining historical data analysis with current project characteristics, the accuracy of human and computing resource forecasts is improved, which helps to better carry out project planning and resource allocation.

[0063] Secondly, by adopting the method of classification forecasting, differentiated forecasts are made for projects of different types and sizes, which improves the pertinence and applicability of the forecasts.

[0064] Finally, a manual correction process is introduced to optimize the forecast results in combination with company strategy and industry trends, making the forecast results more in line with actual conditions and improving the reliability and practicality of the forecast.

[0065] In an optional implementation, a resource scheduling optimization model is constructed based on the human resource forecast data and the computing resource forecast data. The resource scheduling optimization model uses a genetic algorithm to iteratively optimize the human resource allocation plan and the computing resource allocation plan. The fitness function of the genetic algorithm includes dual-objective constraints of maximizing resource utilization and minimizing project delay risk, including: Encode the human resource prediction data into a first real number vector, the dimension of the first real number vector is the number of project tasks, and the elements in the first real number vector represent the number of human resources allocated to the corresponding tasks; encode the computing resource prediction data into a second real number vector, the dimension of the second real number vector is the number of server nodes, and the elements in the second real number vector represent the computing resource capacity of each node; Constructing a fitness function of a dual-objective constraint, wherein the fitness function of the dual-objective constraint includes a resource utilization target and a project delay risk target, wherein the resource utilization target is calculated based on a human resource work saturation index and a computing resource load balance index, and the project delay risk target is calculated based on a deviation between a task completion time and a planned time; In an optional embodiment, The resource allocation scheme is continuously optimized through the crossover operator and mutation operator until the preset number of iterations or convergence threshold is reached, and the optimal resource scheduling scheme is output, including: The weight coefficients of the resource utilization rate target and the project delay risk target are determined by the hierarchical analysis method, and the resource utilization rate target and the project delay risk target are combined into a fitness value by the linear weighting method; an arithmetic crossover operation is performed on the first real number vector and the second real number vector, and a linear combination of two parent individuals is performed based on a randomly generated crossover ratio to obtain a child individual; a Gaussian mutation operation is performed on the child individual, and a random perturbation that obeys a normal distribution is added to the selected gene position, and the amplitude of the random perturbation decreases as the number of iterations increases; The tournament selection strategy is used to select individuals. After comparing the fitness values ​​of the selected individuals, the individual with the highest fitness value is selected as the next generation population; the individual with the highest fitness value in each generation population is directly retained to the next generation population through the elite retention strategy; Dynamically adjust the selection pressure according to the degree of population convergence; use the penalty function method to deal with resource capacity constraints, and add a penalty term in the fitness value calculation when an individual violates the upper and lower limit constraints of resources; ensure that the resource allocation plan meets the task execution order requirements through topological sorting; repair the individuals that do not meet the constraints to obtain a feasible solution; when the preset number of iterations is reached or the relative change of the optimal fitness value of the consecutive preset generations is less than the convergence threshold, output the resource allocation plan corresponding to the individual with the highest fitness value as the optimal resource scheduling plan.

[0066] The specific implementation is as follows: First, human resources and computing resources are predicted to obtain human resources prediction data and computing resource prediction data. Human resources prediction data includes the number of manpower required for each project task, and computing resource prediction data includes the computing resource capacity of each server node.

[0067] Then, the human resource forecast data is encoded into the first real number vector, whose dimension is equal to the number of project tasks, and each element in the vector represents the number of human resources allocated to the corresponding task. For example, for a project with 5 tasks, the first real number vector may be [3, 2, 4, 3, 2], indicating that 3, 2, 4, 3, and 2 people are allocated to the 5 tasks respectively.

[0068] At the same time, the computing resource prediction data is encoded into a second real number vector, the dimension of which is equal to the number of server nodes, and each element in the vector represents the computing resource capacity of the corresponding node. For example, for a system with 3 server nodes, the second real number vector may be [80, 60, 100], indicating that the computing resource capacity of the 3 nodes is 80, 60, and 100 units respectively.

[0069] Next, a fitness function with dual-objective constraints is constructed, including resource utilization target and project delay risk target. The resource utilization target is calculated based on the human resource work saturation index and the computing resource load balance index. The human resource work saturation index can be measured by the ratio of actual workload to standard workload, and the computing resource load balance index can be measured by the variance of the load of each node. The project delay risk target is calculated based on the deviation between the task completion time and the planned time, and can be measured by the difference between the actual task completion time and the planned completion time.

[0070] Then, a genetic algorithm is used to iteratively optimize the human resource allocation scheme and the computing resource allocation scheme. First, the initial population is generated. Each individual contains two parts: the human resource allocation scheme and the computing resource allocation scheme, which correspond to the two real number vectors encoded above. For example, an individual may be [[3,2,4,3,2], [80,60,100]].

[0071] Then, selection, crossover and mutation operations are performed. The selection operation can use the roulette selection method to select excellent individuals according to the fitness value of the individual. The crossover operation can use arithmetic crossover to linearly combine the corresponding genes of the two parent individuals to obtain the offspring individuals. The mutation operation can randomly perturb certain genes of the individual to increase the diversity of the population.

[0072] In each iteration, the fitness value of each individual in the population is calculated. The fitness value is obtained by weighted combination of resource utilization target and project delay risk target. For example, the weights of the two targets can be set to 0.6 and 0.4 respectively, then the fitness value = 0.6 * resource utilization + 0.4 * (1 - project delay risk).

[0073] Finally, after multiple generations of iterative optimization, the individual with the highest fitness value is selected as the optimal solution, that is, the optimized human resource allocation plan and computing resource allocation plan are obtained.

[0074] The beneficial effects of this method include: 1. The genetic algorithm is used to achieve joint optimization of human resources and computing resources, thus improving the overall efficiency of resource allocation.

[0075] 2. A fitness function with dual-objective constraints is adopted, which takes into account resource utilization and project risk at the same time, and realizes multi-objective trade-off and optimization.

[0076] 3. The coding method is flexible and can be easily expanded to projects and computing systems of different sizes, with good versatility and scalability.

[0077] Figure 2 FIG. 1 is a schematic diagram of the structure of a multi-dimensional data analysis and resource scheduling automation system for software projects according to an embodiment of the present invention. Figure 2 As shown, the system comprises: The first unit is used to collect multi-dimensional data information of the software project, wherein the multi-dimensional data information includes project progress data, code quality data, project cost data, and risk assessment data; construct a multi-dimensional data analysis model based on the multi-dimensional data information, hierarchically map the multi-dimensional data information according to preset weights, and generate project status assessment indicators, wherein the project status assessment indicators include a project delay risk indicator, a resource utilization indicator, a code defect density indicator, and a cost deviation indicator; The second unit is used to predict the resource demand of the software project by using a deep neural network according to the project status evaluation index, wherein the input layer of the deep neural network receives the project status evaluation index, the hidden layer uses a multi-layer perceptron structure to extract features of the project status evaluation index, and the output layer generates human resource prediction data and computing resource prediction data; The third unit is used to construct a resource scheduling optimization model based on the human resource prediction data and the computing resource prediction data. The resource scheduling optimization model uses a genetic algorithm to iteratively optimize the human resource allocation plan and the computing resource allocation plan. The fitness function of the genetic algorithm includes the dual-objective constraints of maximizing resource utilization and minimizing the risk of project delay. The resource allocation plan is continuously optimized through a crossover operator and a mutation operator until a preset number of iterations or a convergence threshold is reached, and an optimal resource scheduling plan is output, and the optimal resource scheduling plan is automatically sent to the project management system and the resource management system for execution.

[0078] According to a third aspect of the embodiments of the present invention, An electronic device is provided, comprising: processor; a memory for storing processor-executable instructions; The processor is configured to call the instructions stored in the memory to execute the aforementioned method.

[0079] According to a fourth aspect of the embodiments of the present invention, A computer-readable storage medium is provided, on which computer program instructions are stored. When the computer program instructions are executed by a processor, the aforementioned method is implemented.

[0080] The present invention may be a method, an apparatus, a system and / or a computer program product. The computer program product may include a computer-readable storage medium carrying computer-readable program instructions for executing various aspects of the present invention.

[0081] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or replace some or all of the technical features therein with equivalents. However, these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present invention.

Claims

1. A software project multi-dimensional data analysis and resource scheduling automation method, characterized in that: include: Collecting multi-dimensional data information of the software project, wherein the multi-dimensional data information includes project progress data, code quality data, project cost data, and risk assessment data; Building a multidimensional data analysis model based on the multidimensional data information, mapping the multidimensional data information in layers according to preset weights, and generating project status evaluation indicators, wherein the project status evaluation indicators include a project delay risk indicator, a resource utilization indicator, a code defect density indicator, and a cost deviation indicator; According to the project status evaluation index, a deep neural network is used to predict the resource demand of the software project, the input layer of the deep neural network receives the project status evaluation index, the hidden layer uses a multi-layer perceptron structure to extract features of the project status evaluation index, and the output layer generates human resource prediction data and computing resource prediction data; Based on the human resource forecast data and the computing resource forecast data, a resource scheduling optimization model is constructed. The resource scheduling optimization model uses a genetic algorithm to iteratively optimize the human resource allocation plan and the computing resource allocation plan. The fitness function of the genetic algorithm includes the dual-objective constraints of maximizing resource utilization and minimizing the risk of project delay. The resource allocation plan is continuously optimized through a crossover operator and a mutation operator until a preset number of iterations or a convergence threshold is reached, and an optimal resource scheduling plan is output. The optimal resource scheduling plan is automatically sent to a project management system and a resource management system for execution.

2. The method according to claim 1, characterized in that: Constructing a multidimensional data analysis model based on the multidimensional data information, mapping the multidimensional data information in layers according to preset weights, and generating project status evaluation indicators include: The difference between the actual completion time and the planned completion time in the project progress data is standardized as a progress deviation value in the range of negative one to positive one, and the code cyclomatic complexity data, repetition data, annotation rate data, defect density data, and test coverage data in the code quality data are processed by Z-score standardization to generate a code quality standard value; a multi-level data analysis model is constructed based on the progress deviation value and the code quality standard value, and the multi-level data analysis model includes an original data layer, a feature extraction layer, and a weight mapping layer; The original data layer stores the progress deviation value and the code quality standard value, the feature extraction layer uses the principal component analysis method to perform dimensionality reduction processing on the data of the original data layer to obtain a feature vector, the weight mapping layer uses the hierarchical analysis method to construct a judgment matrix to calculate the eigenvalue, and based on the eigenvalue, determines that the weight value of the project progress data is 0.3, the weight value of the code quality data is 0.2, the weight value of the project cost data is 0.15, and the weight value of the risk assessment data is 0.1; The feature vector obtained by the feature extraction layer and the weight value of the weight mapping layer are weightedly combined to generate a project status assessment indicator, wherein the project status assessment indicator includes a project delay risk indicator, a resource utilization indicator, a code defect density indicator, and a cost deviation indicator; the project status assessment indicator is stored in a time series database, and a warning threshold is set based on the project status assessment indicator in the time series database, and a warning information is triggered when the project status assessment indicator exceeds the warning threshold.

3. The method according to claim 1, characterized in that According to the project status evaluation index, a deep neural network is used to predict the resource demand of the software project. The input layer of the deep neural network receives the project status evaluation index, the hidden layer uses a multi-layer perceptron structure to extract features of the project status evaluation index, and the output layer generates human resource prediction data and computing resource prediction data, including: Constructing an input layer of a deep neural network, the input layer comprising four neuron nodes, the four neuron nodes respectively receiving a project delay risk indicator, a resource utilization indicator, a code defect density indicator, and a cost deviation indicator; performing batch normalization processing on the project delay risk indicator, the resource utilization indicator, the code defect density indicator, and the cost deviation indicator received by the four neuron nodes to obtain normalized data; The normalized data is input into a hidden layer of a multi-layer perceptron structure, wherein the hidden layer comprises a first hidden layer, a second hidden layer, and a third hidden layer, wherein the first hidden layer performs feature conversion on the normalized data through a ReLU activation function to obtain low-level features, the second hidden layer combines the low-level features to obtain middle-level features, and the third hidden layer integrates the middle-level features to obtain high-level semantic features; A residual connection is established between the first hidden layer and the second hidden layer, and between the second hidden layer and the third hidden layer, and the residual connection is used for feature transfer; a weight matrix and a bias vector are configured for each neuron in the first hidden layer, the second hidden layer, and the third hidden layer, and each neuron performs a weighted summation on the input data and then processes it with a ReLU activation function to obtain a nonlinear transformation feature; a Dropout layer is set after the first hidden layer, the second hidden layer, and the third hidden layer, respectively, and the Dropout layer randomly discards neurons and performs an L2 regularization constraint; The output layer of the deep neural network includes a human resources prediction branch and a computing resource prediction branch. The human resources prediction branch contains three output nodes, and the three output nodes respectively predict the number of developers, the number of testers, and the number of project managers. The computing resource prediction branch contains three output nodes, and the three output nodes respectively predict server usage, storage usage, and network bandwidth usage. The deep neural network is trained using a hybrid loss function, and the hybrid loss function includes a mean square error loss and a mean absolute error loss. The Adam optimizer is used for parameter optimization, and the learning rate is adjusted based on the cosine annealing strategy.

4. The method according to claim 1, characterized in that The human resource forecast data includes the forecast value of the number of developers, the forecast value of the number of testers, and the forecast value of the number of project managers; the computing resource forecast data includes the forecast value of server resource usage, the forecast value of storage resource usage, and the forecast value of network bandwidth usage.

5. The method according to claim 1, characterized in that Based on the human resource forecast data and the computing resource forecast data, a resource scheduling optimization model is constructed. The resource scheduling optimization model uses a genetic algorithm to iteratively optimize the human resource allocation plan and the computing resource allocation plan. The fitness function of the genetic algorithm includes dual-objective constraints of maximizing resource utilization and minimizing project delay risk, including: Encode the human resource prediction data into a first real number vector, the dimension of the first real number vector is the number of project tasks, and the elements in the first real number vector represent the number of human resources allocated to the corresponding tasks; encode the computing resource prediction data into a second real number vector, the dimension of the second real number vector is the number of server nodes, and the elements in the second real number vector represent the computing resource capacity of each node; A fitness function of a dual-objective constraint is constructed, wherein the fitness function of the dual-objective constraint includes a resource utilization target and a project delay risk target, wherein the resource utilization target is calculated based on a human resource work saturation index and a computing resource load balance index, and the project delay risk target is calculated based on a deviation between the task completion time and the planned time.

6. The method according to claim 5, characterized in that The resource allocation scheme is continuously optimized through the crossover operator and mutation operator until the preset number of iterations or convergence threshold is reached, and the optimal resource scheduling scheme is output, including: The weight coefficients of the resource utilization rate target and the project delay risk target are determined by the hierarchical analysis method, and the resource utilization rate target and the project delay risk target are combined into a fitness value by the linear weighting method; an arithmetic crossover operation is performed on the first real number vector and the second real number vector, and a linear combination of two parent individuals is performed based on a randomly generated crossover ratio to obtain a child individual; a Gaussian mutation operation is performed on the child individual, and a random perturbation that obeys a normal distribution is added to the selected gene position, and the amplitude of the random perturbation decreases as the number of iterations increases; The tournament selection strategy is used to select individuals. After comparing the fitness values ​​of the selected individuals, the individual with the highest fitness value is selected as the next generation population; the individual with the highest fitness value in each generation population is directly retained to the next generation population through the elite retention strategy; Dynamically adjust the selection pressure according to the degree of population convergence; use the penalty function method to deal with resource capacity constraints, and add a penalty term in the fitness value calculation when an individual violates the upper and lower limit constraints of resources; ensure that the resource allocation plan meets the task execution order requirements through topological sorting; repair the individuals that do not meet the constraints to obtain a feasible solution; when the preset number of iterations is reached or the relative change of the optimal fitness value of the consecutive preset generations is less than the convergence threshold, output the resource allocation plan corresponding to the individual with the highest fitness value as the optimal resource scheduling plan.

7. A software project multi-dimensional data analysis and resource scheduling automation system, used to implement the method described in any one of claims 1 to 6, characterized in that: include: A first unit is used to collect multi-dimensional data information of the software project, wherein the multi-dimensional data information includes project progress data, code quality data, project cost data and risk assessment data; Building a multidimensional data analysis model based on the multidimensional data information, mapping the multidimensional data information in layers according to preset weights, and generating project status evaluation indicators, wherein the project status evaluation indicators include a project delay risk indicator, a resource utilization indicator, a code defect density indicator, and a cost deviation indicator; The second unit is used to predict the resource demand of the software project by using a deep neural network according to the project status evaluation index, wherein the input layer of the deep neural network receives the project status evaluation index, the hidden layer uses a multi-layer perceptron structure to extract features of the project status evaluation index, and the output layer generates human resource prediction data and computing resource prediction data; The third unit is used to construct a resource scheduling optimization model based on the human resource prediction data and the computing resource prediction data. The resource scheduling optimization model uses a genetic algorithm to iteratively optimize the human resource allocation plan and the computing resource allocation plan. The fitness function of the genetic algorithm includes the dual-objective constraints of maximizing resource utilization and minimizing the risk of project delay. The resource allocation plan is continuously optimized through a crossover operator and a mutation operator until a preset number of iterations or a convergence threshold is reached, and an optimal resource scheduling plan is output, and the optimal resource scheduling plan is automatically sent to the project management system and the resource management system for execution.

8. An electronic device, characterized in that: include: processor; a memory for storing processor-executable instructions; The processor is configured to call the instructions stored in the memory to execute the method according to any one of claims 1 to 6.

9. A computer-readable storage medium having computer program instructions stored thereon, characterized in that: When the computer program instructions are executed by a processor, the method according to any one of claims 1 to 6 is implemented.

Citation Information

Cited By

  • Software architecture evaluation method based on dependency structure matrix

    CN119782123A

  • Risk analysis method and system for software project management

    CN120087769A