Software engineering project life cycle prediction method and system
By combining project progress data of completed and unfinished tasks, using a life cycle prediction model embedded in task dependencies, the problem of inaccurate prediction of software engineering projects in traditional methods is solved, and the accuracy and effectiveness of predictions are improved.
Patent Information
- Application Number
- CN202510186710.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-20
- Publication Date
- 2025-05-30
AI Technical Summary
Traditional software engineering project management methods lack scientific prediction methods, especially when demand changes frequently, technology updates quickly and team members are changing greatly, it is difficult to accurately predict the life cycle of software engineering projects.
By combining project progress data corresponding to completed and unfinished tasks, a life cycle prediction model is used to predict, which embeds dependencies between tasks, including timing prediction layer, graph convolution layer, feature fusion layer, and output layer.
It improves the accuracy of software engineering project life cycle prediction and can provide more effective reference for the execution of subsequent software engineering projects.
Smart Images

Figure CN120066558A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of data processing, and particularly to a method and system for predicting the life cycle of a software engineering project. Background Art
[0002] In the modern software development process, the management and control of software engineering projects are crucial. The life cycle of a software engineering project usually includes multiple stages such as requirements analysis, design, coding, testing, deployment, and maintenance. The smooth progress of each stage not only affects the overall progress and quality of the project but also directly relates to the effective utilization of resources and cost control. Due to the complexity and uncertainty of software engineering projects, accurately predicting their life cycle has become one of the key factors for project success.
[0003] Traditional software engineering project management methods, such as the waterfall model, iterative model, and agile development, although can help the project team to plan and manage the project to a certain extent, these methods often rely on experience and subjective judgment and lack scientific prediction means. Especially in the face of frequent requirement changes, rapid technological updates, and significant changes in team members, the limitations of traditional methods become more obvious. Therefore, accurately predicting the life cycle of software engineering projects is of great significance. Summary of the Invention
[0004] In the present invention, the life cycle of a software engineering project is predicted by combining the project progress data corresponding to the completed tasks and the uncompleted tasks, so as to provide a reference for the subsequent execution of the software engineering project, and the task dependency relationship is embedded in the used life cycle prediction model, thereby improving the accuracy of predicting the life cycle of the software engineering project.
[0005] A method for predicting the life cycle of a software engineering project, comprising: Obtaining project progress data, where the project progress data includes a completed task progress data set and an uncompleted task progress data set. The completed task progress data set is the first task progress data corresponding to all completed tasks, and the first task progress data includes the task start time and the task end time. The uncompleted task progress data set is the second task progress data corresponding to all uncompleted tasks, and the second task progress data includes the project predicted start time and the project predicted end time, and the tasks in the project progress data are sorted in time according to the task end time or the project predicted end time; Obtaining a task dependency relationship graph corresponding to all tasks, where the task dependency relationship graph has tasks as nodes and the dependency relationships between tasks as edges; The completed task progress data set and the task dependency graph are sent into the life cycle prediction model for processing, and a task prediction progress data set is output. The task prediction progress data set includes the task prediction progress data of all unfinished tasks. The task prediction progress data includes the predicted start time and the predicted end time of the project. The unfinished task progress data set in the project progress data is replaced by the task prediction progress data set to construct a new project progress data; The life cycle prediction model includes a time series prediction layer, a graph convolutional layer, a feature fusion layer and an output layer. The time series prediction layer is used to extract time series features from the completed task progress data set to construct a task time series feature graph; the graph convolutional layer is used to perform graph convolutional operations based on the task dependency graph to construct a relationship feature graph; the feature fusion layer is used to strengthen the features of the time series feature graph based on the relationship feature graph to construct a task time series strengthened feature graph; the output layer is used to perform full connection and masking operations on the task time series strengthened feature graph and output the task prediction progress data set.
[0006] As a preferred aspect of the present invention, sending the completed task progress data set and the task dependency graph into the life cycle prediction model for processing and outputting the task prediction progress data set specifically includes the following steps: The completed task progress data set is sent into the time series prediction layer. The first task progress data in the completed task progress data set is spliced from top to bottom in chronological order to construct an intermediate time series feature graph. A sliding window with a length of N is used to frame from the end of the completed task progress data set forward. The value of N is obtained by simulating and calculating through a swarm optimization algorithm to construct a time series prediction data set. The time series prediction data set includes time series prediction data. In the initial state, the time series prediction data is the first task progress data corresponding to the most recently completed task and the previous N-1 completed tasks. The time series prediction data set is processed through the LSTM unit inside the time series prediction layer, and the unit task prediction data is output. The first time series prediction data in the time series prediction data set is deleted, and the unit task prediction data is added to the end of the time series prediction data set to construct a new time series prediction data set. At the same time, the unit task prediction data is added below the intermediate time series feature graph, and then the new time series prediction data set is processed through the LSTM unit inside the time series prediction layer; until the number of rows in the intermediate time series feature graph is the same as the total number of tasks, the intermediate time series feature graph is output as the task time series feature graph; it should be noted that the LSTM unit is set with reference to the LSTM model; In the graph convolutional layer, the task dependency adjacency matrix and the task dependency degree matrix are obtained based on the task dependency graph, and graph convolutional operations are performed based on the task dependency adjacency matrix and the task dependency degree matrix to construct a relationship feature graph; In the feature enhancement layer, a key matrix K and a value matrix V are constructed based on the time-series feature map. The specific operation is to multiply the time-series feature map with the key weight matrix and the value weight matrix respectively; the query matrix Q is constructed based on the relationship feature map. The specific operation is to multiply the relationship feature map with the query weight matrix; calculate the attention weight matrix ATT = softmax(QK T / (L) 0.5 ), where L is the dimension size of the time-series feature map. Multiply the attention weight matrix ATT with the value matrix V to construct the task time-series enhanced feature map; In the output layer, perform a fully connected operation and a masking operation on the task time-series enhanced feature map to construct the task prediction progress data set.
[0007] As a preferred aspect of the present invention, the life cycle prediction model is trained, which specifically includes the following steps: Obtain a number of project progress training samples, which include the completed task progress training data set, the training task dependency graph, and the task prediction progress data set; form the life cycle prediction training set with all the project progress training samples, and train the life cycle prediction model through the life cycle prediction training set. During this period, use the completed task progress training data set as the input and the task prediction progress data set as the target output to obtain the accuracy rate of the life cycle prediction model, and judge whether the accuracy rate of the life cycle prediction model is higher than the preset value. If the accuracy rate of the life cycle prediction model is higher than the preset value, output the trained life cycle prediction model; otherwise, continue to train the life cycle prediction model through the life cycle prediction training set.
[0008] As a preferred aspect of the present invention, the N value is obtained through the swarm optimization algorithm, which specifically includes the following steps: Set a number of simulated parameter individuals, and form a simulated population set with all the simulated parameter individuals; Calculate the fitness corresponding to each simulated parameter individual; Based on the fitness corresponding to the simulated parameter individual, iteratively update the simulated population set through the swarm optimization algorithm; After meeting a certain number of iterations, output the simulated parameter individual with the highest fitness as the N value.
[0009] As a preferred aspect of the present invention, the fitness corresponding to each simulated parameter individual is calculated in the following specific manner: Set the life cycle prediction model with the simulated parameter individual as the N value, and then continue to train the life cycle prediction model through the life cycle prediction training set, and obtain the accuracy rate of the trained life cycle prediction model as the fitness corresponding to the simulated parameter individual.
[0010] As a preferred aspect of the present invention, the swarm optimization algorithm adopts the sparrow search algorithm.
[0011] As a preferred aspect of the present invention, the dependency relationships in the task dependency graph are represented by encoding.
[0012] The present invention also provides a software engineering project life cycle prediction system, including: A project progress data acquisition module, configured to acquire project progress data, where the project progress data includes a completed task progress data set and an uncompleted task progress data set. The completed task progress data set is the first task progress data corresponding to all completed tasks, and the first task progress data includes the task start time and the task end time. The uncompleted task progress data set is the second task progress data corresponding to all uncompleted tasks, and the second task progress data includes the project predicted start time and the project predicted end time. Moreover, the tasks in the project progress data are sorted by the task end time or the project predicted end time; A task dependency graph acquisition module, configured to acquire the task dependency graph corresponding to all tasks. In the task dependency graph, tasks are used as nodes, and the dependency relationships between tasks are used as edges; A life cycle prediction module, configured to send the completed task progress data set and the task dependency graph into the life cycle prediction model for processing, and output a task predicted progress data set. The task predicted progress data set includes the task predicted progress data of all uncompleted tasks, and the task predicted progress data includes the project predicted start time and the project predicted end time. By replacing the uncompleted task progress data set in the project progress data with the task predicted progress data set, a new project progress data is constructed; The life cycle prediction model includes a time series prediction layer, a graph convolutional layer, a feature fusion layer, and an output layer. Among them, the time series prediction layer is used to extract time series features from the completed task progress data set to construct a task time series feature graph; the graph convolutional layer is used to perform graph convolutional operations based on the task dependency graph to construct a relationship feature graph; the feature fusion layer is used to enhance the features of the time series feature graph based on the relationship feature graph to construct a task time series enhanced feature graph; the output layer is used to perform a fully connected and masking operation on the task time series enhanced feature graph to output the task predicted progress data set.
[0013] The present invention has the following advantages: 1. The present invention predicts the life cycle of a software engineering project by combining the project progress data corresponding to completed tasks and uncompleted tasks, thereby providing a reference for the subsequent execution of the software engineering project. Moreover, the used life cycle prediction model also embeds the dependency relationships between tasks, thus improving the accuracy of the software engineering project life cycle prediction.
[0014] 2. The present invention updates the N value in the life cycle prediction model through a group optimization algorithm, enabling the life cycle prediction model to achieve better prediction effects in combination with the law of task progress changes. BRIEF DESCRIPTION OF THE DRAWINGS
[0015] Figure 1 It is a schematic structural diagram of a software engineering project life cycle prediction system adopted in an embodiment of the present invention. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0016] In order to enable those skilled in the art of the present technology to better understand the technical solutions in the present invention, the following will clearly and completely describe the technical solutions in the embodiments of the present invention with reference to the accompanying drawings in the embodiments of the present invention.
[0017] Embodiment 1. A software engineering project life cycle prediction method includes: Obtain project progress data, where the project progress data includes a completed task progress data set and an uncompleted task progress data set. The completed task progress data set is the first task progress data corresponding to all completed tasks, and the first task progress data includes the task start time and the task end time. The uncompleted task progress data set is the second task progress data corresponding to all uncompleted tasks, and the second task progress data includes the project predicted start time and the project predicted end time. Moreover, the tasks in the project progress data are sorted by the task end time or the project predicted end time. Through the project progress data, the life cycle situation of the current software engineering project can be characterized and can be used as time series data to predict the life cycle of subsequent software engineering projects; Obtain the task dependency graph corresponding to all tasks. In the task dependency graph, tasks are used as nodes, and the dependencies between tasks are used as edges. The dependencies include finish - start dependency, that is, the latter task can start only after the former task is completed; start - start dependency, the latter task can start only after the former task starts; finish - finish dependency, that is, the latter task can be completed only after the former task is completed, etc. Through the task dependency graph, the progress relationship between tasks can be reflected, and thus provide a reference for the life cycle prediction of software engineering projects; The completed task progress dataset and the task dependency graph are fed into the life cycle prediction model for processing, and a task prediction progress dataset is output. The task prediction progress dataset includes the task prediction progress data of all unfinished tasks. The task prediction progress data includes the predicted start time and the predicted end time of the project. By replacing the unfinished task progress dataset in the project progress data with the task prediction progress dataset, a new project progress data is constructed, and the new project progress data can realize the prediction of the software engineering project life cycle. The software life cycle usually includes stages such as requirements analysis, software design, software implementation, and software testing. Each stage is further divided into several tasks according to the actual development situation. For the progress prediction of subsequent tasks, the prediction of the subsequent life cycle can be realized. The life cycle prediction model includes a time series prediction layer, a graph convolution layer, a feature fusion layer, and an output layer. Among them, the time series prediction layer is used to extract time series features from the completed task progress dataset to construct a task time series feature graph. By extracting time series features from the completed task progress dataset, a preliminary judgment can be made on the start and end times corresponding to the unfinished tasks. The graph convolution layer is used to perform graph convolution operations based on the task dependency graph to construct a relationship feature graph. The relationship feature graph provides a reference for the prediction of task progress through the relationships between tasks. The feature fusion layer is used to strengthen the features of the time series feature graph based on the relationship feature graph to construct a task time series enhanced feature graph. During the process of strengthening the features of the time series feature graph, the dependency relationships between tasks in the time series feature graph can be strengthened, thereby improving the prediction accuracy of the subsequent task progress. The output layer is used to perform fully connected and masking operations on the task time series enhanced feature graph and output the task prediction progress dataset.
[0018] This application predicts the life cycle of a software engineering project by combining the project progress data corresponding to the completed tasks and the unfinished tasks, thereby providing a reference for the execution of subsequent software engineering projects. In addition, the task dependency relationships are embedded in the used life cycle prediction model, which further improves the prediction accuracy of the software engineering project life cycle.
[0019] The completed task progress dataset and the task dependency graph are fed into the life cycle prediction model for processing, and a task prediction progress dataset is output. The specific steps are as follows: The completed task progress data set is sent into the time series prediction layer. The first task progress data in the completed task progress data set is concatenated from top to bottom in chronological order to construct an intermediate time series feature graph. A sliding window of length N is used to frame the data set from the end of the completed task progress data set towards the front. The value of N is obtained through simulation calculation using a swarm optimization algorithm to construct a time series prediction data set. The time series prediction data set includes time series prediction data. In the initial state, the time series prediction data is the first task progress data corresponding to the most recently completed task and the previous N - 1 completed tasks. The time series prediction data set is processed through the LSTM unit inside the time series prediction layer to output unit task prediction data. The unit task prediction data can be described as the start time and end time corresponding to the unfinished task after the last completed task in the time series prediction data set. The first time series prediction data in the time series prediction data set is deleted, and the unit task prediction data is added to the end of the time series prediction data set to construct a new time series prediction data set. At the same time, the unit task prediction data is added below the intermediate time series feature graph. Then, the new time series prediction data set is processed through the LSTM unit inside the time series prediction layer; until the number of rows in the intermediate time series feature graph is the same as the total number of tasks, the intermediate time series feature graph is output as the task time series feature graph; it should be noted that the LSTM unit is set with reference to the LSTM model; In the graph convolution layer, the task dependency adjacency matrix and the task dependency degree matrix are obtained based on the task dependency graph. The task dependency adjacency matrix stores the dependency relationships between nodes, and the dependency relationships are represented by encoding. The task dependency degree matrix stores the number of edges connected to each node. Graph convolution operations are performed based on the task dependency adjacency matrix and the task dependency degree matrix to construct a relationship feature graph; it should be noted that the graph convolution operations are set with reference to the graph convolutional neural network; In the feature enhancement layer, the key matrix K and the value matrix V are constructed based on the time series feature graph. The specific operation is to multiply the time series feature graph with the key weight matrix and the value weight matrix respectively; the query matrix Q is constructed based on the relationship feature graph. The specific operation is to multiply the relationship feature graph with the query weight matrix; calculate the attention weight matrix ATT = softmax(QK T / (L) 0.5 ), where L is the dimension size of the time series feature graph. Multiply the attention weight matrix ATT with the value matrix V to construct a task time series enhanced feature graph; the key weight matrix, the value weight matrix, and the query weight matrix here are set with reference to the Transformer model; In the output layer, a fully connected operation and a masking operation are performed on the task time series enhanced feature graph. The masking operation is to process the feature graph through a masking matrix, leaving only the data corresponding to the unfinished tasks to construct a task prediction progress data set.
[0020] Train the life cycle prediction model, which specifically includes the following steps: Obtain a number of project progress training samples. The project progress training samples include a completed task progress training data set, a training task dependency graph, and a task prediction progress data set. It should be noted that during the construction of the project progress training samples, all the obtained data sets are for software engineering project progress that has been fully completed. The software engineering project progress data set includes the task start time and task end time corresponding to all tasks that have been fully completed and sorted by time, and then randomly divided into two parts. The former is recorded as the completed task progress training data set, and the latter is recorded as the task prediction progress data set; form a life cycle prediction training set with all the project progress training samples, and train the life cycle prediction model through the life cycle prediction training set. During this period, use the completed task progress training data set as the input and the task prediction progress data set as the target output to obtain the accuracy rate of the life cycle prediction model, and judge whether the accuracy rate of the life cycle prediction model is higher than the preset value. The preset value is set manually. If the accuracy rate of the life cycle prediction model is higher than the preset value, output the trained life cycle prediction model; otherwise, continue to train the life cycle prediction model through the life cycle prediction training set.
[0021] Obtain the value of N through the swarm optimization algorithm, which specifically includes the following steps: Set a number of simulated parameter individuals. The simulated parameter individuals are random integers within the corresponding range, and the corresponding range is determined by the scale of the software engineering project. Form a simulated population set with all the simulated parameter individuals, and this simulated population set is used for iterative solution seeking; Calculate the fitness corresponding to each simulated parameter individual. The fitness can represent the performance of the N value corresponding to the simulated parameter individual in the life cycle prediction model; Calculate the fitness corresponding to each simulated parameter individual, and the specific method is as follows: Set the life cycle prediction model with the simulated parameter individual as the value of N, and then continue to train the life cycle prediction model through the life cycle prediction training set, and obtain the accuracy rate of the trained life cycle prediction model as the fitness corresponding to the simulated parameter individual; Based on the fitness corresponding to the simulated parameter individual, iteratively update the simulated population set through the sparrow search algorithm. During this period, the integer function is used in each iteration to ensure that the simulated parameter individual is an integer value; After meeting a certain number of iterations, output the simulated parameter individual with the highest fitness as the value of N.
[0022] In this application, the N value in the life cycle prediction model is updated through a swarm optimization algorithm, which can enable the life cycle prediction model to achieve a better prediction effect under the law of combined task progress changes.
[0023] Embodiment 2. A software engineering project life cycle prediction system, as Figure 1 shown, includes: A project progress data acquisition module for acquiring project progress data. The project progress data includes a completed task progress data set and an uncompleted task progress data set. The completed task progress data set is the first task progress data corresponding to all completed tasks. The first task progress data includes the task start time and the task end time. The uncompleted task progress data set is the corresponding second task progress data for all uncompleted tasks. The second task progress data includes the project predicted start time and the project predicted end time. And the tasks in the project progress data are sorted in time according to the task end time or the project predicted end time. Through the project progress data, the life cycle situation of the current software engineering project can be characterized, and it can be used as time series data to predict the life cycle of subsequent software engineering projects; A task dependency graph acquisition module for acquiring the task dependency graph corresponding to all tasks. In the task dependency graph, tasks are used as nodes, and the dependencies between tasks are used as edges. The dependencies include finish - start dependency, that is, after the former task is completed, the latter task can start; start - start dependency, after the former task starts, the latter task can start; finish - finish dependency, that is, after the former task is completed, the latter task can be completed, etc. Through the task dependency graph, the progress relationship between tasks can be reflected, and thus provide a reference for the life cycle prediction of software engineering projects; A life cycle prediction module for sending the completed task progress data set and the task dependency graph into the life cycle prediction model for processing, and outputting a task prediction progress data set. The task prediction progress data set includes the task prediction progress data of all uncompleted tasks. The task prediction progress data includes the project predicted start time and the project predicted end time. By replacing the uncompleted task progress data set in the project progress data with the task prediction progress data set, a new project progress data is constructed. The new project progress data can realize the prediction of the life cycle of the software engineering project; The software life cycle usually includes stages such as requirements analysis, software design, software implementation, and software testing. Each stage is further divided into several tasks according to the actual development situation. For the progress prediction of subsequent tasks, the prediction of the subsequent life cycle can be realized; The life cycle prediction model includes a time series prediction layer, a graph convolutional layer, a feature fusion layer, and an output layer. The time series prediction layer is used to extract time series features from the completed task progress data set to construct a task time series feature map. By extracting time series features from the completed task progress data set, it is possible to make a preliminary judgment on the start and end times corresponding to the unfinished tasks. The graph convolutional layer is used to perform graph convolutional operations based on the task dependency graph to construct a relationship feature map. The relationship feature map provides a reference for predicting the task progress through the relationships between tasks. The feature fusion layer is used to enhance the features of the time series feature map based on the relationship feature map to construct a task time series enhanced feature map. During the process of enhancing the features of the time series feature map, the dependency relationships between tasks in the time series feature map can be strengthened, thereby improving the prediction accuracy of the subsequent task progress. The output layer is used to perform fully connected and masking operations on the task time series enhanced feature map and output the task prediction progress data set.
[0024] It should be understood that those of ordinary skill in the art can make improvements or transformations according to the above description, and all such improvements and transformations shall fall within the protection scope of the appended claims of the present invention. The parts not detailedly described in this specification belong to the prior art well-known to those of ordinary skill in the art.
Claims
1. A software engineering project life cycle prediction method, characterized in that: include: Acquire project progress data, the project progress data includes a completed task progress data set and an uncompleted task progress data set, the completed task progress data set is first task progress data corresponding to all completed tasks, the first task progress data includes task start time and task end time, the uncompleted task progress data set is second task progress data corresponding to all uncompleted tasks, the second task progress data includes project forecast start time and project forecast end time, and the tasks in the project progress data are sorted in time according to task end time or project forecast end time; Get the task dependency graph corresponding to all tasks. In the task dependency graph, tasks are used as nodes, and the dependencies between tasks are used as edges. Send the completed task progress data set and the task dependency graph into the lifecycle prediction model for processing, and output the task prediction progress data set, which includes the task prediction progress data of all unfinished tasks, and the task prediction progress data set includes the project prediction start time and the project prediction end time. The unfinished task progress data set in the project progress data is replaced by the task prediction progress data set to construct new project progress data; The lifecycle prediction model includes a time series prediction layer, a graph convolution layer, a feature fusion layer, and an output layer. The time series prediction layer is used to extract time series features from the completed task progress dataset to construct a task time series feature graph. The graph convolution layer is used to perform graph convolution operations based on the task dependency graph to construct a relationship feature graph. The feature fusion layer is used to enhance the features of the timing feature map based on the relationship feature map to construct the task timing enhancement feature map; the output layer is used to perform full connection and mask operations on the task timing enhancement feature map to output the task prediction progress dataset.
2. A software engineering project life cycle prediction method according to claim 1, characterized in that: The completed task progress dataset and the task dependency graph are sent to the lifecycle prediction model for processing, and the task prediction progress dataset is output. Specifically, the steps include: The completed task progress data set is sent to the time series prediction layer, and the first task progress data in the completed task progress data set is spliced from top to bottom in chronological order to construct a time series feature intermediate graph. A sliding window of length N is used to select from the end of the completed task progress data set to the front. The N value is obtained by simulation calculation of the swarm optimization algorithm to construct a time series prediction data set. The time series prediction data set includes the time series prediction data. In the initial state, the time series prediction data is the first task progress data corresponding to the most recently completed task and the previous N-1 completed tasks. The time series prediction data set is passed through the time series prediction layer The internal LSTM unit processes and outputs the unit task prediction data, deletes the first time series prediction data of the time series prediction data set, and adds the unit task prediction data to the end of the time series prediction data set to build a new time series prediction data set. At the same time, the unit task prediction data is added to the bottom of the time series feature middle graph, and then the new time series prediction data set is processed by the LSTM unit inside the time series prediction layer; until the number of rows in the time series feature middle graph is consistent with the total number of tasks, the time series feature middle graph is output as the task time series feature graph; it should be noted that the LSTM unit is set with reference to the LSTM model; In the graph convolution layer, the task dependency adjacency matrix and the task dependency degree matrix are obtained based on the task dependency graph, and graph convolution operations are performed based on the task dependency adjacency matrix and the task dependency degree matrix to construct a relationship feature graph; In the feature enhancement layer, the key matrix K and the value matrix V are constructed based on the time series feature graph. The specific operation is to multiply the time series feature graph with the key weight matrix and the value weight matrix respectively; the query matrix Q is constructed based on the relationship feature graph. The specific operation is to multiply the relationship feature graph with the query weight matrix; Calculate the attention weight matrix ATT=softmax(QK T / (L) 0.5 ), where L is the dimension of the time series feature map, the attention weight matrix ATT is multiplied by the value matrix V to construct the task time series reinforcement feature map; In the output layer, the task timing reinforcement feature map is fully connected and masked to construct a task prediction progress dataset.
3. A software engineering project life cycle prediction method according to claim 2, characterized in that: Training the life cycle prediction model includes the following steps: Acquire several project progress training samples, which include a completed task progress training data set, a training task dependency graph, and a task prediction progress data set; combine all project progress training samples into a life cycle prediction training set, and train the life cycle prediction model through the life cycle prediction training set, during which the completed task progress training data set is used as input and the task prediction progress data set is used as the target output, the accuracy of the life cycle prediction model is obtained, and it is determined whether the accuracy of the life cycle prediction model is higher than a preset value. If the accuracy of the life cycle prediction model is higher than the preset value, the trained life cycle prediction model is output; otherwise, the life cycle prediction model is continuously trained through the life cycle prediction training set.
4. A software engineering project life cycle prediction method according to claim 3, characterized in that: The N value is obtained through the group optimization algorithm, which specifically includes the following steps: Set a number of simulation parameter individuals, and form all simulation parameter individuals into a simulation population set; Calculate the fitness corresponding to each simulation parameter individual; Based on the fitness corresponding to the individual simulation parameters, the simulation population set is iteratively updated through the population optimization algorithm; After a certain number of iterations is met, the simulation parameter individual with the highest fitness is output as the N value.
5. A software engineering project life cycle prediction method according to claim 4, characterized in that: Calculate the fitness of each simulation parameter individual as follows: The simulation parameter individual is used as the N value to set the life cycle prediction model, and then the life cycle prediction model is further trained through the life cycle prediction training set, and the accuracy of the trained life cycle prediction model is obtained as the fitness corresponding to the simulation parameter individual.
6. A software engineering project life cycle prediction method according to claim 5, characterized in that: The swarm optimization algorithm uses the sparrow search algorithm.
7. A software engineering project life cycle prediction method according to claim 6, characterized in that: The dependencies in the task dependency graph are represented by encoding.
8. A software engineering project life cycle prediction system, characterized in that: The system applies a software engineering project life cycle prediction method according to any one of claims 1 to 7, including: A project progress data acquisition module is used to acquire project progress data, the project progress data includes a completed task progress data set and an unfinished task progress data set, the completed task progress data set is the first task progress data corresponding to all completed tasks, the first task progress data includes the task start time and the task end time, the unfinished task progress data set is the second task progress data corresponding to all unfinished tasks, the second task progress data includes the project forecast start time and the project forecast end time, and the tasks in the project progress data are sorted in time according to the task end time or the project forecast end time; The task dependency graph acquisition module is used to obtain the task dependency graph corresponding to all tasks. In the task dependency graph, tasks are used as nodes, and the dependency relationships between tasks are used as edges. The life cycle prediction module is used to send the completed task progress data set and the task dependency graph into the life cycle prediction model for processing, and output the task prediction progress data set, which includes the task prediction progress data of all unfinished tasks, and the task prediction progress data set includes the project prediction start time and the project prediction end time. The unfinished task progress data set in the project progress data is replaced by the task prediction progress data set to construct new project progress data; The lifecycle prediction model includes a timing prediction layer, a graph convolution layer, a feature fusion layer and an output layer. The timing prediction layer is used to extract timing features of the completed task progress dataset to construct a task timing feature graph; the graph convolution layer is used to perform graph convolution operations based on the task dependency graph to construct a relationship feature graph; the feature fusion layer is used to enhance the timing feature graph based on the relationship feature graph to construct a task timing enhancement feature graph; the output layer is used to perform full connection and mask operations on the task timing enhancement feature graph to output the task prediction progress dataset.