Incremental evaluation method, system and device for software quality facing iterative development

By combining graph attention networks and causal graph models with iterative software quality assessment methods, the problems of single assessment dimensions and ambiguous root cause localization are solved, and efficient quality risk response and optimization are achieved.

CN121301164BActive Publication Date: 2026-03-27TONGFANG KNOWLEDGE DIGITAL PUBLISHING TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-12-10
Publication Date
2026-03-27

AI Technical Summary

Technical Problem

Existing software quality assessment technologies have limited evaluation dimensions and cannot effectively identify technical debt caused by changes in requirements for high-value business modules. The root cause is unclear, resulting in delayed response to quality risks during iterative development, which affects delivery efficiency and software reliability.

Method used

By preprocessing heterogeneous data streams, extracting cross-modal hidden factors, constructing a graph attention network model for risk assessment, and using causal graphs and deep Q-networks to generate intervention plans, the root cause can be located and optimized.

Benefits of technology

It achieves unified representation of technical and business dimensions, captures quality risks in real time, reduces response latency from hours to minutes, accurately locates key root cause chains, improves the accuracy of root cause location, and reduces the cost of manual intervention.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121301164B_ABST
    Figure CN121301164B_ABST
Patent Text Reader

Abstract

The application belongs to the technical field of software development, and provides a software quality incremental evaluation method, system and device for iterative development, which comprises the steps of heterogeneous data stream acquisition, multi-modal encoding and standardization, dynamic risk early warning, causal root cause positioning, business-oriented intervention optimization and the like; through multi-source data acquisition and multi-modal fusion technology of heterogeneous data streams, the unified representation of technical dimensions and business dimensions is realized, the limitation of traditional evaluation which only relies on static technical indicators is broken through, the dynamic risk early warning mechanism is combined, the quality risk in the iterative process is captured in real time, the response delay is reduced from the hour level to the minute level, and the comprehensiveness and timeliness of risk perception are significantly improved; the causal diagram and counterfactual simulation technology are introduced, the causal effect of unstructured factors is quantified by eliminating the interference of confounding factors, the key root cause chain is accurately positioned, and the accuracy of root cause positioning is improved, so that the intervention optimization is provided with clear targeting.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of software development technology, and in particular to incremental software quality assessment methods, systems and devices for iterative development. Background Technology

[0002] Iterative software quality assessment refers to the process of measuring and evaluating the quality of software products in real time within a phased, cyclical software development model; incremental assessment refers to an assessment method that gradually accumulates data and updates the assessment model as iterations proceed, in order to achieve continuous optimization.

[0003] Existing software quality assessment techniques primarily rely on metrics such as static code analysis, test coverage, and defect density, employing either periodic or event-triggered assessments. These methods collect data from code repositories, defect tracking tools, and build systems, combining this data with predefined rules or statistical models for quality assessment.

[0004] However, existing technologies still have some problems: Limited assessment dimensions: Traditional methods focus only on technical indicators, such as code complexity, ignoring business-dimensional data, such as the frequency of requirement changes and the weight of business value. This leads to a disconnect between assessment results and actual business risks. For example, technical debt caused by frequent requirement changes in high-business-value modules cannot be effectively identified. Vague root cause identification: Existing technologies rely on statistical models to identify risk-related variables, but cannot distinguish between correlation and causation. For example, high CPU utilization and defect rates often occur simultaneously, but the actual root cause may be code redundancy due to requirement changes, rather than a problem with the CPU itself. These problems lead to delayed response to quality risks in iterative development, affecting delivery efficiency and software reliability. Summary of the Invention

[0005] The purpose of this application is to propose an incremental software quality evaluation method, system, and device for iterative development, in order to solve the technical problems of single evaluation dimensions and ambiguous root cause localization mentioned in the background art.

[0006] To solve the above-mentioned technical problems, the following technical solution was adopted:

[0007] In a first aspect, the present invention provides an incremental software quality evaluation method for iterative development, the method comprising:

[0008] The pre-collected raw heterogeneous data stream is preprocessed, and the structured and unstructured data covering technical and business dimensions in the raw heterogeneous data stream are encoded and fused. Cross-modal hidden factors are extracted, and noise filtering and missing value imputation are performed to obtain a standardized dataset. The standardized dataset includes at least structured features and cross-modal hidden factors.

[0009] A graph attention network model is constructed based on the standardized dataset. The comprehensive risk value of each module of the software is calculated. When the comprehensive risk value exceeds the preset risk threshold, an early warning is triggered, and the risk level of each module and the associated combination information of high-risk modules are output.

[0010] Based on the abnormal areas identified by early warning positioning, key variables are selected from the standardized dataset. Causal graphs are used to perform causal analysis on the key variables to eliminate confounding factors. The cross-modal hidden factors are injected to infer key causal paths. Counterfactual simulation is used to verify the causal power of unstructured factors. SHAP values ​​are used to quantify the contribution of each factor to risk to form a root cause chain.

[0011] A deep Q-network is used to define the reward function of the reinforcement learning agent. An intervention plan is generated based on the root cause chain and the reward function. The intervention plan is pushed to the development process through a predefined incremental update mechanism. At the same time, the new data generated after the intervention is used to update the model parameters.

[0012] Optionally, the preprocessing of the pre-collected raw heterogeneous data stream includes: using a collection tool to capture the structured and unstructured data of each module in the software iterative development process in real time, covering technical and business dimensions, to obtain the raw heterogeneous data stream;

[0013] Read structured and unstructured data from the original heterogeneous data stream; wherein, the structured data includes code quality data, defect management data, and build test data, and the unstructured data includes code risk comments and technical collaboration risks;

[0014] The Min-Max normalization method is used to process the structured data to generate a sequence of structured normalized vectors.

[0015] Special character filtering, stop word removal, and text vectorization are performed on unstructured data to generate BERT text vectors.

[0016] Optionally, the process of encoding and fusing structured and unstructured data in the original heterogeneous data stream, extracting cross-modal hidden factors, and performing noise filtering and missing value imputation to obtain a standardized dataset includes:

[0017] Using a pre-built multimodal Transformer model, the structured normalized vector sequence is used as pseudo-visual features and BERT text vectors are used as linguistic features. The semantic association between pseudo-visual features and linguistic features is captured through a cross-attention mechanism, and the multimodal hidden factor is output.

[0018] The multimodal hidden factors are subjected to noise filtering and missing value imputation to obtain a standardized dataset; wherein, the standardized dataset includes: structured features, multimodal hidden factors, and business value weights.

[0019] Optionally, the construction of the graph attention network model based on the standardized dataset and the calculation of the comprehensive risk value of each module of the software include:

[0020] The standardized dataset is mapped into a graph structure containing multiple types of nodes and directed weighted edges; wherein the multiple types of nodes include: code module nodes, development task nodes, environmental factor nodes, and multimodal factor nodes;

[0021] The code module nodes, development task nodes, environmental factor nodes, and multimodal factor nodes are connected by directed weighted edges. The mean squared error is used as the objective function, and the node weights are updated using the stochastic gradient descent algorithm. The node weights are then trained to obtain a trained graph attention network model. The overall risk value of the module is calculated by combining the changes in the weights of the code module nodes, development task nodes, environmental factor nodes, and multimodal hidden factors.

[0022] Optionally, the step of selecting key variables from the standardized dataset includes: calculating the VIF value of all candidate variables using the variance inflation factor and mutual information dual criteria, excluding multicollinear variables with VIF values ​​greater than a preset threshold; calculating the mutual information between the remaining variables and the comprehensive risk value, and selecting a preset number of variables as key variables from the mutual information.

[0023] The key variables include: code complexity, defect rate, test coverage, CPU utilization, memory utilization, network latency, multimodal hidden factor, requirement change rate, and module business value weight.

[0024] Optionally, the step of injecting the cross-modal hidden factors to infer key causal paths includes: using the multimodal hidden factors as nodes in a causal graph, injecting them into a pre-constructed causal graph, calculating path weights based on the adjusted causal effects and the similarity between the multimodal hidden factors and the paths, and determining key causal paths based on the path weights.

[0025] The construction of the causal graph includes: constructing an initial causal graph based on a standardized dataset using the PC algorithm; identifying potential causal relationships between variables through conditional independence tests and edge orientation; and using the Conf-Elim model to eliminate the interference of dominant confounding factors on causal relationships, thereby obtaining a purified causal graph.

[0026] Optionally, the step of using SHAP values ​​to quantify the contribution of each factor to risk in order to form a root cause chain includes: based on key causal paths, simulating the risk value after removing unstructured factors, and multiplying the difference between the comprehensive risk value and the influence weight of the unstructured factors by their correlation to obtain the counterfactual risk value.

[0027] The SHAP value is used to calculate the contribution of each factor to the risk value, sorted from largest to smallest absolute contribution value, and combined with the causal path to form a root cause chain.

[0028] Optionally, the step of using a deep Q-network to define the reward function of the reinforcement learning agent, generating an intervention plan based on the root cause chain and the reward function, and pushing the intervention plan to the development process through a predefined incremental update mechanism includes: calculating the reward function by combining the business value improvement rate, the defect rate change rate, and the resource consumption increase rate;

[0029] The action space of the intervention plan includes refactoring core business modules, increasing testing resources, optimizing requirements review, and strengthening code review. Each action is subject to resource constraints.

[0030] The reinforcement learning agent generates multiple intervention schemes, calculates the Q-value of each pre-scheme, selects the scheme with the largest Q-value as the optimal intervention scheme, and transforms the optimal intervention scheme into a development task and pushes it into the development process.

[0031] The incremental update mechanism includes: adding the new data after intervention to the standardized dataset and updating the output layer parameters of the graph attention network model; and triggering an update when the amount of new iteration data reaches a first preset range of the amount of historical single iteration data, or a second preset range of the risk warning accuracy rate decrease rate for two consecutive iterations.

[0032] Secondly, the present invention provides a software quality incremental evaluation system for iterative development, used to implement the software quality incremental evaluation method for iterative development as described in any one of the first aspects, comprising:

[0033] The feature extraction module is used to preprocess the pre-collected raw heterogeneous data stream, encode and fuse the structured and unstructured data covering technical and business dimensions in the raw heterogeneous data stream, extract cross-modal hidden factors, and perform noise filtering and missing value imputation to obtain a standardized dataset; the standardized dataset includes at least structured features and cross-modal hidden factors;

[0034] The risk warning module is used to construct a graph attention network model based on the standardized dataset, calculate the comprehensive risk value of each module of the software, and trigger a warning when the comprehensive risk value exceeds a preset risk threshold, and output the risk level of each module and the associated combination information of high-risk modules.

[0035] The causal analysis module is used to select key variables from the standardized dataset based on the abnormal area of ​​the early warning location, perform causal analysis on the key variables using the causal graph to eliminate confounding factors, inject the cross-modal hidden factors to infer key causal paths, verify the causal power of unstructured factors through counterfactual simulation, and use SHAP values ​​to quantify the contribution of each factor to the risk to form a root cause chain.

[0036] The intervention optimization module is used to define the reward function of the reinforcement learning agent using a deep Q-network, generate an intervention plan based on the root cause chain and the reward function, and push the intervention plan to the development process through an incremental update mechanism. At the same time, it uses the new data generated after the intervention to update the model parameters.

[0037] Thirdly, the present invention provides a computer device, the computer device comprising:

[0038] At least one processor; and

[0039] A memory communicatively connected to the at least one processor; wherein,

[0040] The memory stores a computer program that can be executed by the at least one processor to enable the at least one processor to perform the method described in any one of the first aspects.

[0041] The beneficial effects of this invention are as follows:

[0042] This application provides an incremental software quality assessment method for iterative development. By using multi-source data acquisition and multimodal fusion technology for raw heterogeneous data streams, it achieves a unified representation of technical and business dimensions, breaking through the limitations of traditional assessments that rely solely on static technical indicators. Combined with a dynamic risk warning mechanism, it can capture quality risks in the iteration process in real time, reducing response latency from hours to minutes, significantly improving the comprehensiveness and timeliness of risk perception. By introducing causal graph models and counterfactual simulation technology, it eliminates confounding factors and quantifies the causal effect of unstructured factors, accurately locating key root cause chains such as frequent requirement changes → accumulation of technical debt → increased defect rate, improving the accuracy of root cause location and providing clear targets for intervention and optimization.

[0043] This method differs from traditional methods that simply concatenate data. It employs a multimodal Transformer model, namely the ViLBERT model, which uses structured normalized vector sequences as pseudo-visual features and BERT text vectors as linguistic features. Through a cross-attention mechanism, it deeply captures cross-modal semantic relationships and effectively extracts multimodal hidden factors. At the same time, it combines isolated forests to filter noise and Bayesian networks to fill in missing values, ensuring the purity and integrity of the standardized dataset. This provides a high-quality data foundation for subsequent risk assessment and root cause localization, reducing assessment bias caused by data quality issues.

[0044] This method generates optimal intervention schemes under resource constraints based on reinforcement learning agents and pushes them directly to the development process through an incremental update mechanism. This achieves a closed-loop process of risk detection, root cause localization, and automatic repair, reducing manual intervention costs and adapting to the high-frequency and rapid characteristics of iterative development. During the intervention optimization phase, only new data is added to the standardized dataset, and only the output layer parameters of the graph attention network model are updated, eliminating the need for full retraining and significantly reducing computational resource consumption and update time. Simultaneously, dual validation using new iteration data and historical test sets avoids model drift, ensuring the long-term stability of the evaluation method and solving the problems of high cost and long cycle of traditional full retraining. Attached Figure Description

[0045] To more clearly illustrate the solutions in this application, the accompanying drawings used in the description of the embodiments of this application will be briefly introduced below. Obviously, the accompanying drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0046] Figure 1 This is a flowchart of the incremental software quality evaluation method for iterative development according to Embodiment 1 of this application;

[0047] Figure 2 This is a diagram of the incremental software quality evaluation system architecture for iterative development, as described in Embodiment 2 of this application.

[0048] Figure 3 This is a schematic diagram of the computer device structure according to Embodiment 3 of this application. Detailed Implementation

[0049] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application pertains; the terminology used herein in the specification of the application is for the purpose of describing particular embodiments only and is not intended to be limiting of the application; the terms "comprising" and "having," and any variations thereof, in the specification, claims, and foregoing drawings of this application, are intended to cover non-exclusive inclusion. The terms "first," "second," etc., in the specification, claims, or foregoing drawings of this application are used to distinguish different objects, not to describe a particular order.

[0050] In this document, the term "embodiment" means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The appearance of this phrase in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a separate or alternative embodiment mutually exclusive with other embodiments. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.

[0051] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings.

[0052] like Figure 1 As shown, an incremental software quality evaluation method for iterative development includes steps S101-S104:

[0053] Step S101: Preprocess the pre-collected raw heterogeneous data stream, encode and fuse the structured and unstructured data covering technical and business dimensions in the raw heterogeneous data stream, extract cross-modal hidden factors, and perform noise filtering and missing value imputation to obtain a standardized dataset; the standardized dataset includes at least structured features and cross-modal hidden factors;

[0054] Step S102: Construct a graph attention network model based on the standardized dataset, calculate the comprehensive risk value of each module of the software, and trigger an early warning when the comprehensive risk value exceeds the preset risk threshold, and output the risk level of each module and the associated combination information of high-risk modules;

[0055] Step S103: Based on the abnormal area located by the early warning, select key variables from the standardized dataset, use causal graph to perform causal analysis on the key variables to eliminate confounding factors, inject the cross-modal hidden factors to infer key causal paths, verify the causal power of unstructured factors through counterfactual simulation, and use SHAP value to quantify the contribution of each factor to the risk to form a root cause chain.

[0056] Step S104: Define the reward function of the reinforcement learning agent using a deep Q-network, generate an intervention plan based on the root cause chain and reward function, and push the intervention plan to the development process through a predefined incremental update mechanism. At the same time, update the model parameters using the new data generated after the intervention.

[0057] In step S101 above, the pre-collection of the original heterogeneous data stream includes: using a low-latency, high-throughput acquisition tool to capture the structured and unstructured data of each module in the software iterative development process in real time, covering technical and business dimensions, to obtain the original heterogeneous data stream.

[0058] Furthermore, the structured data includes code quality data, defect control data, and build test data; the unstructured data includes code risk comments and technical collaboration risks. Invalid data is filtered from both the structured and unstructured data, and a unified basic format is applied.

[0059] The acquisition of the raw heterogeneous data stream in step S101 above specifically includes the following implementation process:

[0060] Step 1.1: Select a low-latency, high-throughput acquisition tool, configure the acquisition frequency and data access method to ensure real-time capture of dynamic data during the iteration process.

[0061] The iterative software architecture includes the following three types of modules, covering the entire chain of technical implementation and business functions:

[0062] Core business modules: These are modules that directly support core business processes and are related to revenue or core user experience. They are the key targets for calculating business value weighting, including payment modules, order modules, and user modules.

[0063] Auxiliary function modules: These are modules that support the operation of core business modules but contribute little to direct revenue, including logging modules, notification modules, and permission modules.

[0064] Basic support module: This module provides underlying technical capabilities and general services to all modules, including database interaction module, interface adaptation module, and monitoring module.

[0065] In the above embodiments, the technical dimension focuses on software technical quality-related indicators, such as those affecting stability, maintainability, and testing effectiveness; the business dimension focuses on software business value-related indicators, such as those affecting revenue, user experience, and achievement of business goals. Technical dimension data covers code quality, defect management, build testing, and hidden technical risk information, including both structured and unstructured technical data. Business dimension data covers quantitative indicators of business value and business requirement risk information, including both structured and unstructured business data.

[0066] Structured technical data includes: code quality data, sourced from Git code repositories, and data content includes: number of lines of code commits, cyclomatic complexity, and code coupling.

[0067] Defect management data comes from the Jira defect tracking tool and includes: number of defects, defect severity, repair time, and defect recurrence rate.

[0068] The test data is sourced from the build tool Jenkins and includes build success rate, number of compilation errors, and test coverage.

[0069] Unstructured technical data includes: code risk annotations, sourced from code file comments, and data content includes: potential code risk warnings and technical debt records;

[0070] The risks associated with technical collaboration stem from Slack's developer communication tools, and the data includes: constraints on technical resources and disputes over technical solutions.

[0071] Structured business data includes: revenue contribution data, sourced from the business system backend, and data content includes: module revenue contribution and core function call volume;

[0072] User experience data comes from the business system backend and includes user access frequency and function failure rate.

[0073] Unstructured business data includes: changes in business requirements, sourced from the Confluence meeting recording platform, and data content includes: urgent business requirements and adjustments to business priorities;

[0074] Business risk communication, sourced from Slack developer communication tools, includes data on: ambiguous business requirements and early warnings of business value loss.

[0075] Data is collected using the Flink stream processing framework to meet the real-time requirements of iterative development. The data collection configuration is as follows:

[0076] Data source access: Configure a Flink Source for each data source, such as a Git Source that pulls code and submits data via the Git API; a Flink Source is a component in the Flink stream processing framework used to access external data sources, supporting Kafka, MySQL, API, etc., and subsequently pushes the data to a temporary storage component;

[0077] Data acquisition frequency: Structured data is acquired every 5 minutes, and unstructured data is acquired every 30 minutes; structured data changes frequently and requires high-frequency acquisition; unstructured data changes slowly, and low-frequency acquisition can reduce system load.

[0078] Data filtering rules: Filter invalid data, such as empty commits in Git and closed and duplicate defects in Jira. Duplicate defects refer to multiple defect records caused by the same root cause, which are identified by duplicate tags or semantic similarity in Jira.

[0079] Step 1.2: Temporarily store the collected data of different types to their respective storage components, using a unified basic format. The temporary storage scheme is as follows:

[0080] Structured data is stored in the message queue system Kafka in JSON format, with topic names tech-struct-data and biz-struct-data, respectively.

[0081] Unstructured data is stored in the search engine Elasticsearch in JSON format, with the index name unstruct-data.

[0082] After processing, a raw heterogeneous data stream consisting of structured and unstructured data is formed, with data integrity ≥99%, which is then used for multimodal coding.

[0083] After preprocessing the original heterogeneous data stream through steps 1.1 to 1.2 above, the structured and unstructured data are encoded and fused.

[0084] Step 1.3: Encode and fuse structured and unstructured data, extract cross-modal hidden factors, and perform noise filtering and missing value imputation to obtain a standardized dataset containing structured features, multimodal hidden factors, and business value weights.

[0085] Furthermore, the preprocessing includes: processing the structured data using the Min-Max normalization method to generate a structured normalized vector sequence; and performing special character filtering, stop word deletion, and text vectorization processing on the unstructured data to generate BERT text vectors.

[0086] Furthermore, the multimodal Transformer model is used to encode and fuse structured and unstructured data; the structured normalized vector sequence is used as pseudo-visual features, and the BERT text vector is used as linguistic features. The semantic relationship between the two is captured through a cross-attention mechanism, and the multimodal hidden factor is output.

[0087] Step 1.3.1: Data preprocessing: Clean and transform the original heterogeneous data stream to eliminate differences in units and text noise.

[0088] Among them, the preprocessing of structured data includes: using the Min-Max normalization method to map the values to the interval [0, 1], eliminating the influence of dimensions. All the structured indicators after normalization are organized into an ordered vector according to the module-index dimension, and the vectors of multiple modules together form a structured normalization vector sequence.

[0089] Preprocessing of unstructured data: Eliminate text noise and extract effective semantic information, as follows:

[0090] Special character filtering: Remove special symbols in the text, such as #, @, n.

[0091] Stop word removal: Use jieba segmentation or NLTK to remove meaningless words, such as "de", "le", "the", "and".

[0092] Text vectorization: Use the BERT pre-trained model to convert the text into a 768-dimensional vector to obtain the BERT text vector.

[0093] Step 1.3.2: Multi-modal Transformer joint encoding: Integrate structured data and unstructured text vectors through the ViLBERT model to extract cross-modal hidden factors.

[0094] In the above embodiments, among them, the multi-modal Transformer model is the ViLBERT model. The construction method of the ViLBERT model is: Based on PyTorch, modify the input layer of ViLBERT to a structured data vector, modify the pre-training objective to structured data-text matching, keep other layers unchanged, use historical data for training, and the loss function is cross-entropy.

[0095] The ViLBERT model adaptation logic is as follows: Use the structured normalization vector sequence as the pseudo-visual feature, the BERT text vector as the language feature, capture the semantic association between the two through the cross-attention mechanism, and output the multi-modal hidden factor.

[0096] Structured data encoding:

[0097] h s l =Transformer s (h s l−1 ,CrossAttn(h s l−1 ,h t l−1 ))

[0098] Among them: h s lThe structured data encoding vector for layer l is determined during model training. The dimensions of the ViLBERT input layer are adjusted to ensure they match the dimensions of the text vectors; h s l−1 h is the structured encoding vector of layer l-1; t l−1 The text encoding vector for layer l-1; Transformer s A Transformer encoder specifically designed for structured data, incorporating self-attention and feedforward networks, used to extract internal features from structured data; CrossAttn: cross-attention function, calculating h s l−1 with h t l−1 The association weight.

[0099] Text data encoding:

[0100] h t l =Transformer t (h t l-1 CrossAttn(h t l-1 ,h s l-1 ))

[0101] Among them: Transformer t It is a text-specific Transformer encoder with cross-attention direction from text to structured data.

[0102] Multimodal hidden factor output:

[0103] h mm =Concat(h s L ,h t L )

[0104] Where: h mm is the multimodal hidden factor; L=6 is the total number of ViLBERT layers, determined by cross-validation. With 6 layers, the fusion accuracy is 92%, and the risk of overfitting is low; Concat is a vector concatenation function used to merge structured and textual features.

[0105] Step 1.4: Noise filtering and missing value imputation.

[0106] Noise filtering: An isolated forest model is used to detect and remove outlier data to ensure data purity.

[0107] The isolated forest model outputs anomaly scores using the following formula:

[0108] s(x,n)=2 -E(h(x)) / c(n)

[0109] Where: s(x,n) is the anomaly score of sample x, ranging from [0,1], s(x,n)≥0.7 is considered anomaly, and the threshold of 0.7 is determined by cross-validation; x is the sample to be detected; n is the number of samples processed in each batch; E(h(x)): the average path length of sample x in 100 isolated trees; c(n) is the correction factor, c(n)=2H(n-1)-2(n-1) / n, where H is the harmonic number used for path length standardization.

[0110] The Isolation Forest algorithm detects outliers by constructing multiple random trees. Each data point is randomly assigned to a leaf node in the tree; outliers are generally easier to isolate because their path length is shorter. The algorithm calculates an anomaly score for each data point based on its path length: the closer the score is to 1, the more likely it is to be an anomaly. A score threshold of 0.7 is set; if the anomaly score exceeds the threshold, the data point is considered an anomaly and filtered out of the dataset. In this way, Isolation Forest effectively identifies and removes noisy data, improving the purity of the dataset.

[0111] Missing value imputation: Bayesian networks are used to impute missing data and prevent incomplete data from affecting subsequent analysis.

[0112] Bayesian networks utilize conditional dependencies between variables to fill in missing values. First, the Bayesian network is trained on historical data. This historical data includes complete datasets from the last six iterations, containing structured metrics and missing records to ensure data coverage of different iteration scenarios. The network learns the conditional probability distributions between variables such as cyclomatic complexity and defect rate. For samples with missing values, observed variable values ​​are used as evidence, and the posterior probability distribution of the missing variable is calculated through Bayesian inference. Then, the value with the highest posterior probability is selected to fill in the missing value. In this way, the Bayesian network intelligently completes the data, ensuring the integrity of the dataset.

[0113] After the above processing, a standardized dataset is output, which includes structured features, multimodal hidden factors, and business value weights. The business value weight is calculated as: Module Revenue / Sum of Revenue of All Modules.

[0114] In step S102, a graph attention network model is constructed based on a standardized dataset. The node weights of nodes and module risks in the graph attention network model are trained. The comprehensive risk value of the module is calculated by combining the node weights, environmental factors, and multimodal hidden factors. An early warning is triggered according to a preset risk threshold, and the risk level and risk module combination of each module are output.

[0115] Furthermore, the graph attention network model includes code module nodes, development task nodes, environmental factor nodes, and multimodal factor nodes, which are connected by directed weighted edges; the node weight training uses mean squared error as the objective function and adopts stochastic gradient descent algorithm to update the node weights; the calculation of the module comprehensive risk value combines the code module node weights, environmental factor weights, environmental correction coefficients, and changes in multimodal hidden factors.

[0116] Step 2.1 Constructing the Graph Attention Network Model: Using the Graph Attention Network (GAT), construct the graph structure G=(V,E), where V is the set of nodes and E is the set of edges.

[0117] The nodes include: code module node M, and the node features are derived from structured features and business value weights;

[0118] Develop task node T. The node characteristics are derived from task complexity and schedule requirements. Task complexity is quantified using function point analysis. Task complexity = unadjusted function points × technical complexity factor.

[0119] Environmental factor node E, the node characteristics are CPU utilization and memory utilization. The average utilization rate of CPU utilization during the iteration cycle is calculated as follows: CPU utilization rate = (total CPU time occupied in the iteration / total iteration duration) × 100%, with a value range of 0-100%. If it exceeds 80%, it is marked as high risk.

[0120] The multimodal factor node H has its node features derived from h. mm .

[0121] The edges are directed weighted edges. M→T represents the code supporting the task, and the weight = number of task dependencies / total number of dependencies, such as 0.8; T→H represents the task affecting the multimodal factor, and the weight = feature correlation, such as 0.7; E→M represents the environmental impact module, and the weight = Pearson correlation coefficient, such as 0.3; H→M represents the factor reflecting the module risk, and the weight = 0.9.

[0122] Step 2.2: Node weight training: Learn the contribution weight of each node to the module risk, and ensure that high business value nodes (such as the payment module) have higher weights to improve the business orientation of risk assessment.

[0123] The objective function uses the mean squared error (MSE).

[0124] L(w)=(1 / N)∑ i=1 N (R i pred (w)-R i actual ) 2

[0125] Where: L(w) is the loss value, with a convergence objective of L < 0.001; N is the total number of nodes, such as N = 20 if this iteration involves 5 modules and 10 tasks; w is the node weight vector, initially w = 0.5; R i pred (w) represents the risk value of node i predicted based on weight w, R i pred (w)=w i ·S i S i R represents the basic risk score for node i; i actual The actual risk value for node i is calculated from historical defect data.

[0126] Weight update: using stochastic gradient descent.

[0127] w t+1 =w t -η·▽L(w t )

[0128] Where: w t+1 The node weights are updated at time t+1; w t Let be the node weight at time t; η = 0.1: learning rate, determined by cross-validation; ▽L(w t ) represents the gradient of the loss function, ▽L(w) t )=(2 / N)∑(w t ·S i -R i actual )·S i .

[0129] Calculation Example: Initial State: Payment module node weight w t =0.5, basic risk score S i =0.8, R i actual =0.75.

[0130] Iteration 1: Predicted risk value: R i pred =0.5 × 0.8 = 0.4. Gradient calculation:

[0131] ▽L(w t =2 / 20×(0.4−0.75)×0.8=−0.028.

[0132] Updated weight: w t+1 =0.5−0.1×(−0.028)=0.5028.

[0133] After 100 iterations: w t+100=0.9 convergence, L(w)=0.0008<0.001, which meets the requirement of high weight for high business value nodes.

[0134] Step 2.3: Comprehensive Risk Value Calculation and Early Warning Trigger: Combining node weights, environmental factors, and multimodal hidden factors, calculate the comprehensive risk value of the module. If the risk value exceeds the risk threshold, an early warning will be triggered.

[0135] The risk value is calculated using the following formula:

[0136] R total =w M ×S M +w E ×S E +α·△h mm

[0137] Where: R total The module's overall risk value, ranging from [0,1]; w M This represents the weight of a code module node, such as the payment module = 0.9; S M S is used to score the technical risk of a module. M =0.4C + 0.3D + 0.3Ch, where C is the cyclomatic complexity, D is the defect rate, and Ch is the requirement change rate; w E Environmental factor weights are assigned based on the degree of environmental impact on the module, such as the payment module's dependence on database stability. E =0.3; S E Environmental risk score, S E =0.3f CPU +0.4f Mem +0.3f Net f CPU For CPU utilization, f Mem For memory usage, f Net Δh represents network latency; α is the environmental correction coefficient, determined by the Pearson correlation coefficient between historical environmental risk and defect rate. If the Pearson correlation coefficient between historical environmental risk and defect rate is negative, then α = |correlation coefficient| is taken to ensure that α is positive. For example, if the correlation coefficient = -0.15, then α = 0.15; mm Δh represents the change in multimodal hidden factors. mm =‖h mm current -h mm prev ||2 / max(||h) mm j ‖2);

[0138] h mm current h is the current iteration factor. mm prevLet be the factor of the previous iteration, |||2 be the L2 norm, and max(|||2) be the historical maximum norm.

[0139] Setting risk thresholds based on quantiles of historical failure data:

[0140] High risk: R total A value greater than 0.8 corresponds to a historical failure probability of ≥80%.

[0141] Medium risk: 0.6 < R total ≤0.8 corresponds to a historical failure probability of 30%-80%;

[0142] Low risk: R total ≤0.6 corresponds to a historical failure probability of <30%;

[0143] After processing, the risk level of each module and the combination of high-risk modules are output.

[0144] Step S103: Causal Root Cause Locating: Select key variables from the standardized dataset, screen and determine confounding factors, use causal graphs to perform causal analysis on key variables, eliminate the influence of confounding factors, inject multimodal hidden factors to infer key causal paths, verify the causal power of unstructured factors through counterfactual simulation, use SHAP values ​​to quantify and rank the contribution of each factor to risk, and form a root cause chain.

[0145] Furthermore, the key variables include: code complexity, defect rate, requirement change rate, test coverage, CPU utilization, memory utilization, network latency, multimodal hidden factor, and module business value weight. It should be noted that the selection of key variables adopts the dual criteria of variance inflation factor (VIF) and mutual information: calculate the VIF value of all candidate variables and exclude multicollinear variables with VIF > 10; calculate the mutual information between the remaining variables and the module risk value, and select the top 10 variables with the highest mutual information to ensure that the variables are strongly correlated with the risk.

[0146] Furthermore, the construction of the causal graph includes: constructing an initial causal graph based on a standardized dataset using the PC algorithm; identifying potential causal relationships between variables through conditional independence tests and edge orientation; and using the Conf-Elim model to eliminate the interference of dominant confounding factors on causal relationships, thereby obtaining a purified causal graph.

[0147] Step 3.1 Causal graph initialization: Based on the standardized dataset, the PC algorithm is used to construct an initial causal graph to identify potential causal relationships between variables.

[0148] Constructing a completely undirected graph: Ten key variables are selected as nodes from four dimensions: technology, environment, multimodality, and business. Edge deletion: Based on conditional independence testing, for each node pair (X, Y), if there exists a variable set Z such that X and Y are independent under condition Z, then the XY edge is deleted.

[0149] Edge orientation: For an undirected edge XZY, if Z and Y are independent under condition X, and X and Z are not independent under condition Y, then the orientation is X→Z→Y, forming a directed initial causal graph G. K .

[0150] Step 3.2 Elimination of Confounding Factors: The Conf-Elim model is used to eliminate the interference of explicit confounding factors such as team size and test resource investment on causal relationships, ensuring the accuracy of causal inference.

[0151] The screening of confounding factors adopted a backdoor criterion + hypothesis testing method: based on the backdoor criterion of the causal graph, all potential confounding factors that may block the path from causal variable to outcome variable were identified; hypothesis testing was performed on each potential factor: if the correlation p-value between the factor and the causal variable and the outcome variable is less than 0.05, it was included as an explicit confounding factor. Finally, only team size and test resource input met the conditions and were determined to be explicit confounding factors, while other factors were excluded.

[0152] Calculate the adjusted causal effect:

[0153] TE adj =TE raw -∑ k=1 K β k ·C k

[0154] Among them: TE adj For adjusted causal effects, such as the true impact of requirement change rate on defect rate; TE raw : Original causal effect, calculated by PC algorithm; K=2, representing the number of dominant confounding factors, C1=team size, C2=testing resource investment; β k The coefficient representing the influence of confounding factors on the causal effect is calculated using linear regression. For example, β1 = 0.2 indicates that for every additional person in the team, the original causal effect is overestimated by 0.2. k : The normalized value of the confounding factor, C1=0.5, indicating that the team size is 50% of the historical mean.

[0155] First, calculate the original causal effect TE. raw For example, the impact of demand change rate on defect rate, and then identifying confounding factors on TE. raw The impact coefficient, such as the TE for every additional person in the team. rawIt was overestimated by 0.2. Then, from TE... raw Subtracting the weighted contribution of the confounding factor from the middle yields TE. adj Thus, TE adj It eliminates the bias caused by confounding factors and more accurately reflects the direct causal effect of the causal variable on the outcome variable.

[0156] After eliminating confounding factors, the purified causal graph G is obtained. K ’ .

[0157] Step 3.3 Multimodal Factor Injection and Causal-GCN Inference: The Causal-GCN (Causal Graph Convolutional Network) model is used to inject multimodal hidden factors into the causal graph and infer key causal paths through Causal-GCN.

[0158] Calculate path weights:

[0159] W path =ω·TE adj +(1-ω)·Sim(h mm ,P)

[0160] Among them: W path ω = 0.6 is the causal path weight, ranging from [0,1]. The higher the weight, the more critical it is. ω = 0.6 is the causal priority weight. Sim(hmm,P) = 0.8 is the similarity between the multimodal hidden factor and path P, calculated using cosine similarity. P is the causal path, such as demand change → defect rate, represented as a vector, and averaged by the path node features.

[0161] By comparing W of different paths path The value can directly determine the key causal path. The specific logic is as follows: The system will calculate the W value for each possible causal path in the causal graph. path The value, after calculation, is W for all paths. path Sort the values ​​from largest to smallest, W path The path with the highest value is the critical causal path. For example, the W value for the change rate → defect rate. path =0.602, Cyclic complexity → W of defect rate path =0.41, the former has a higher weight, indicating that the requirement change rate has the greatest impact on the defect rate as a causal path that contributes the most to the module risk, and subsequent intervention and optimization will prioritize designing solutions for this path.

[0162] Output the key causal path for counterfactual verification.

[0163] Step 3.4 Counterfactual Comparison Verification: Verify the causal efficacy of unstructured factors through counterfactual simulation.

[0164] Calculate the counterfactual risk value:

[0165] R cf =R total -γ·Rel(h mm ,U)

[0166] Where: R cf To simulate the counterfactual risk value, simulate the risk value after removing a certain unstructured factor; R total : Original comprehensive risk value; γ is the influence weight of unstructured factors, determined by the semantic strength of the text, such as γ=0.2 for technical debt text; Rel(h mm ,U): The correlation between the multimodal hidden factor and the unstructured factor U is obtained by cosine similarity calculation.

[0167] Step 3.5 SHAP value attribution analysis: Use SHAP values ​​to quantify the contribution of each factor to risk and identify the core root causes.

[0168] φ i =E S⊆F\{i} [f(S∪{i})-f(S)]

[0169] Where, φ i Let be the SHAP value of the i-th factor, representing the contribution of the factor to the risk value. A positive value indicates increased risk, and a negative value indicates decreased risk. E is the expectation operator. F is the set of all factors, such as demand change rate, cyclomatic complexity, and technical debt text. S is a subset of F that does not contain the i-th factor. f(S) is the risk prediction value based on the factor subset S, predicted using the GNN model.

[0170] In SHAP value attribution analysis, the SHAP value φ for each feature is... i This indicates the contribution of the feature to the risk value. First, calculate φ for all features. i Values, such as the demand change rate φ i =0.2, technical debt text φ i =0.15, cyclomatic complexity φ i =0.1. Then, press φ i Sort by absolute value from largest to smallest to obtain root cause sorting, with demand change rate > technical debt > cyclomatic complexity.

[0171] The root cause chain is formed by combining causal paths and SHAP values: starting with the feature that contributes the most, the chain relationship is inferred based on the causal graph, such as frequent changes in requirements → accumulation of technical debt → increased defect rate. Ultimately, the root cause chain is output as the core root cause.

[0172] Step S104: Business-oriented intervention optimization: A deep Q-network is used to define the reward function of the reinforcement learning agent. The reinforcement learning agent generates intervention plans based on the root cause chain and the reward function, and pushes the intervention plans to the development process through an incremental update mechanism.

[0173] Furthermore, the calculation of the reward function combines the business value improvement rate, defect rate change rate, and resource consumption increase rate. The action space of the intervention scheme includes refactoring core business modules, increasing test resources, optimizing requirement review, and strengthening code review. Each action is subject to resource constraints. The reinforcement learning agent generates multiple intervention schemes, calculates the Q-value of each pre-scheme, selects the scheme with the largest Q-value as the optimal intervention scheme, and transforms the optimal intervention scheme into a development task and pushes it into the development process.

[0174] Step 4.1 Define the objective function of reinforcement learning agent RL, with the core being the improvement of business value weights, while taking into account technical indicators and resource constraints.

[0175] Using a Deep Q-Network (DQN), the reward function is calculated as follows:

[0176] R rl =λ1·△BV+λ2·(1-△DR)-λ3·△Cost

[0177] Where: R rl The immediate reward for RL agents is calculated based on the weighted sum of core indicators: BV = 0.6 × Revenue Contribution + 0.3 × User Activity Rate + 0.1 × Function Availability. Revenue Contribution = Module Revenue / Total System Revenue × 100%. User Activity Rate = (Number of users using the module during iteration / Total number of users) × 100%. Function Availability = (Number of times the function runs normally during iteration / Total iteration time) × 100%. △BV is the business value improvement rate: △BV = (BV after intervention - BV before intervention) / BV before intervention × 100%. △DR is the defect rate change rate: if the defect rate decreases by 5% after intervention, △DR = -0.05. △Cost is the resource consumption increase rate: if intervention requires an additional 2 person-days, △Cost = 0.2.

[0178] Step 4.2 Intervention Program Generation and Evaluation:

[0179] RL agents generate multiple intervention options based on key causal paths and reward functions, and then select the optimal option after evaluation.

[0180] Action Space: Discrete actions, such as a1=Refactoring the payment module, with resource constraints of ≤5 person-days, and must be executed during non-core business peak periods; a2=Increasing testing resources, with resource constraints of ≤2 additional testers, and testing duration ≤30% of the total iteration duration; a3=Optimizing requirement review, with resource constraints of ≤2 review meetings per iteration, and each meeting lasting ≤1 hour; a4=Strengthening code review: with resource constraints of review coverage ≥90%, and ≥2 reviewers.

[0181] State space: current risk value, root cause SHAP value, remaining resources;

[0182] Q-value calculation: The Q-value of each action is calculated using DQN, and the action with the largest Q-value is selected as the intervention plan.

[0183] Step 4.3 Incremental Update and Task Push: Push the intervention plan to the development process, only update the newly added iteration data, without the need for full retraining, to achieve incremental optimization.

[0184] Incremental update logic:

[0185] Data update: Only new data after intervention, such as the reconstructed coupling degree and new defect rate, are added to the standardized dataset, without rewriting historical data.

[0186] Model fine-tuning: For ViLBERT, GAT, and DQN models, only the output layer parameters are updated.

[0187] Task assignment: The optimal intervention plan is transformed into a development task through the Jira API, assigned to a designated team, and a deadline is set. Iteration 3 ends.

[0188] Update trigger conditions: An update is triggered if any of the following conditions are met: the amount of data in the new iteration reaches 80% of the amount of data in a single historical iteration; the accuracy of risk warnings decreases by ≥5% over two consecutive iterations;

[0189] Model validation method: Double validation using new iteration data + historical test set: the risk prediction accuracy on the new iteration data is ≥90%; the accuracy fluctuation on the historical test set is ≤3%. If both conditions are met, the update takes effect; otherwise, it rolls back to the previous version.

[0190] Example 2: Based on the same inventive concept as the incremental software quality evaluation method for iterative development provided in the embodiments of this application, the embodiments of this application also provide an incremental software quality evaluation system for iterative development. If there is anything unclear about the content of the system embodiment, please refer to the corresponding content in the method embodiment.

[0191] like Figure 2 As shown, a software quality incremental evaluation system for iterative development includes:

[0192] The feature extraction module 210 is used to preprocess the pre-collected raw heterogeneous data stream, encode and fuse the structured and unstructured data covering technical and business dimensions in the raw heterogeneous data stream, extract cross-modal hidden factors, and perform noise filtering and missing value imputation to obtain a standardized dataset; the standardized dataset includes at least structured features and cross-modal hidden factors;

[0193] The risk warning module 220 is used to construct a graph attention network model based on the standardized dataset, calculate the comprehensive risk value of each module of the software, and trigger a warning when the comprehensive risk value exceeds a preset risk threshold, and output the risk level of each module and the associated combination information of high-risk modules.

[0194] The causal analysis module 230 is used to select key variables from the standardized dataset based on the abnormal area of ​​the early warning location, perform causal analysis on the key variables using a causal graph to eliminate confounding factors, inject the cross-modal hidden factors to infer key causal paths, verify the causal power of unstructured factors through counterfactual simulation, and use SHAP values ​​to quantify the contribution of each factor to the risk to form a root cause chain.

[0195] The intervention optimization module 240 is used to define the reward function of the reinforcement learning agent using a deep Q-network, generate an intervention plan based on the root cause chain and the reward function, and push the intervention plan to the development process through an incremental update mechanism. At the same time, it uses the new data generated after the intervention to update the model parameters.

[0196] Furthermore, the feature extraction module 210 adopts a distributed acquisition framework, such as Flink and Kafka, to connect to the version control system, testing platform and user feedback system in real time, and generates structured technical data and unstructured business data through data cleaning and formatting.

[0197] In the feature extraction module 210, a multimodal fusion model, such as ViLBERT, is used to perform feature alignment and dimensionality reduction on structured and unstructured data to extract cross-modal correlation features; the standardized dataset contains structured features, multimodal hidden factors, and business value weights;

[0198] The risk warning module 220 uses the isolated forest algorithm to detect anomalies in multimodal feature vectors. When the anomaly score exceeds the preset risk threshold, a warning signal is triggered to identify high-risk modules or functional points.

[0199] The causal analysis module 230 locates abnormal areas based on early warning signals, constructs a causal relationship graph between variables using the PC algorithm, and calculates the causal weights of key variable nodes using a graph attention network.

[0200] The intervention optimization module 240 takes causal weights as input, uses a deep Q-network to generate parameter adjustment schemes, and pushes the intervention strategy to the development environment to achieve closed-loop repair of quality problems.

[0201] The system's workflow is as follows: The feature extraction module captures structured and unstructured data in real time during the software iteration development process, forming a raw heterogeneous data stream. It encodes, fuses, and standardizes the received data, extracts cross-modal hidden factors, and outputs a standardized dataset to the risk warning module. The risk warning module performs dynamic risk assessment on the standardized dataset based on a graph neural network, calculates the comprehensive risk value, generates a warning signal, and transmits it to the causal analysis module. The causal analysis module receives the warning signal and the standardized dataset, locates key causal paths and root causes through a causal graph model, and outputs it to the intervention optimization module. The intervention optimization module generates intervention plans based on reinforcement learning and pushes them into the development process through an incremental update mechanism, forming a closed-loop optimization.

[0202] Example 3: Based on the same inventive concept as the incremental software quality evaluation method for iterative development provided in the embodiments of this application, Example 3 of this application also provides a computer device. If there is anything unclear about the content in the device embodiment, please refer to the corresponding content in the method embodiment.

[0203] like Figure 3 As shown, a computer device includes:

[0204] At least one processor 101; and a memory 102 communicatively connected to at least one processor 101; wherein the memory 102 stores instructions executable by the processor 101, the instructions being executed by the processor 101 to implement the above-described incremental software quality evaluation method for iterative development.

[0205] The computer device 100 also includes a network interface 103, and the memory 102, processor 101, and network interface 103 are interconnected via a system bus.

[0206] Computer device 100 can be a desktop computer, laptop, handheld computer, cloud server, or other computing device. The computer device can interact with the user via a keyboard, mouse, remote control, touchpad, or voice control.

[0207] The memory 102 includes at least one type of readable storage medium, including flash memory, hard disk, multimedia card, card-type memory, random access memory, static random access memory, read-only memory, electrically erasable programmable read-only memory, programmable read-only memory, magnetic memory, magnetic disk, optical disk, etc. In some embodiments, the memory 102 may be an internal storage unit of the computer device 100, such as the hard disk or memory of the computer device 100. In other embodiments, the memory 102 may also be an external storage device of the computer device 100, such as a plug-in hard disk, smart memory card, secure digital card, flash memory card, etc., equipped on the computer device 100. Of course, the memory 102 may include both the internal storage unit and the external storage device of the computer device 100. In the embodiments of this application, the memory 102 is generally used to store the operating system and various application software installed on the computer device 100, such as computer-readable instructions of methods. In addition, the memory 102 may also be used to temporarily store various types of data that have been output or will be output.

[0208] In some embodiments, processor 101 may be a central processing unit, a controller, a microcontroller, a microprocessor, or other data processing chip. Processor 101 is typically used to control the overall operation of computer device 100. In embodiments of this application, processor 101 is used to execute computer-readable instructions stored in memory 102 or process data, such as executing computer-readable instructions of the methods provided in embodiments of this application.

[0209] The network interface 103 may include a wireless network interface or a wired network interface, which is typically used to establish a communication connection between the computer device 100 and other electronic devices.

[0210] The following components are connected to network interface 103: input components 104 including a keyboard, mouse, etc.; output components 105 including cathode ray tubes, liquid crystal displays, etc., and speakers, etc.; storage components 106 including hard disks, etc.; and communication components 107 including network interface cards such as LAN cards and modems. Communication components 107 perform communication processing via a network such as the Internet. If necessary, network interface 103 may also be connected to drive components 108, and removable media 109, such as disks, optical disks, magneto-optical disks, semiconductor memories, etc., which are installed on drive components 108 as needed so that computer programs read from them can be installed into storage components 106 as needed.

[0211] It should be noted that only the computer device 100 with components 101-109 is shown in the figure, but it should be understood that it is not required to implement all the components shown, and more or fewer components may be implemented instead.

[0212] Obviously, the embodiments described above are only some embodiments of this application, not all embodiments. The accompanying drawings show preferred embodiments of this application, but do not limit the patent scope of this application. This application can be implemented in many different forms; rather, the purpose of providing these embodiments is to provide a more thorough and comprehensive understanding of the disclosure of this application. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art can still modify the technical solutions described in the foregoing specific embodiments, or make equivalent substitutions for some of the technical features. Any equivalent structures made using the content of this application's specification and drawings, directly or indirectly applied to other related technical fields, are similarly within the scope of patent protection of this application.

Claims

1. A software quality incremental evaluation method for iterative development, characterized in that, The method includes: The pre-collected raw heterogeneous data stream is preprocessed, including structured and unstructured data covering both technical and business dimensions. The preprocessing includes: encoding the structured data, vectorizing the unstructured data into text, using a pre-established multimodal Transformer model to treat the structured encoding results as pseudo-visual features and the text vectorized results as linguistic features, capturing the semantic association between the pseudo-visual and linguistic features through a cross-attention mechanism, extracting cross-modal hidden factors, and performing noise filtering and missing value imputation to obtain a standardized dataset. The standardized dataset includes at least structured features, cross-modal hidden factors, and business value weights. A graph attention network model is constructed based on the standardized dataset. The graph attention network model includes multimodal factor nodes representing the cross-modal hidden factors. By combining the structured features with the changes in the cross-modal hidden factors, the comprehensive risk value of each module of the software is calculated. When the comprehensive risk value exceeds a preset risk threshold, an early warning is triggered. The risk level of each module and the associated combination information of high-risk modules are output. Based on the abnormal areas identified by the early warning system, key variables are selected from the standardized dataset. Causal graphs are used to perform causal analysis on the key variables to eliminate confounding factors. The cross-modal hidden factors are injected to infer key causal paths. Counterfactual simulation is used to verify the causal power of unstructured factors, and SHAP values ​​are used to quantify the contribution of each factor to the risk to form a root cause chain. Based on the selected key variables, the PC algorithm is used to construct an initial causal graph. Conditional independence tests and edge orientation are used to identify potential causal relationships between variables. The Conf-Elim model is used to eliminate the interference of explicit confounding factors, resulting in a purified causal graph. A deep Q-network is used to define the reward function of the reinforcement learning agent. The reward function integrates the business value improvement rate, defect rate change rate, and resource consumption increase rate. Based on the root cause chain and the reward function, the reinforcement learning agent generates intervention plans in the action space of the preset intervention plans, calculates the Q value of each plan, and selects the optimal plan. The intervention plan is pushed to the development process through a predefined incremental update mechanism, and the model parameters are updated using the new data generated after the intervention.

2. The incremental software quality evaluation method for iterative development as described in claim 1, characterized in that, The process of encoding structured data and vectorizing unstructured data into text includes: processing structured data using the Min-Max normalization method to generate a structured normalized vector sequence; Special character filtering, stop word deletion, and text vectorization are performed on unstructured data to generate BERT text vectors; The structured data includes code quality data, defect management data, and build test data; the unstructured data includes code risk comments and technical collaboration risks.

3. The incremental software quality evaluation method for iterative development as described in claim 1, characterized in that, A graph attention network model is constructed based on a standardized dataset. The comprehensive risk value of each module of the software is calculated, including: The standardized dataset is mapped into a graph structure containing multiple types of nodes and directed weighted edges; wherein the multiple types of nodes include: code module nodes, development task nodes, environmental factor nodes, and multimodal factor nodes; The code module nodes, development task nodes, environmental factor nodes, and multimodal factor nodes are connected by directed weighted edges; mean squared error is used as the objective function, and the node weights are updated using the stochastic gradient descent algorithm. The node weights are then trained to obtain a trained graph attention network model; the comprehensive risk value of each software module is calculated by combining the changes in the weights of the code module nodes, development task nodes, environmental factor nodes, and multimodal hidden factors. The overall risk value of each module in the software is calculated using the following formula: R total =w M ×S M +w E ×S E +α·△h mm ; Where: R total The module's overall risk value, ranging from [0,1]; w M This represents the weight of a code module node, such as the payment module = 0.9; S M Score the technical risk of the module; w E S represents the environmental factor weights; E Environmental risk score; △h mm This represents the change in multimodal hidden factors.

4. The incremental software quality evaluation method for iterative development as described in claim 1, characterized in that, Selecting key variables from the standardized dataset includes: calculating the VIF value of all candidate variables using the variance inflation factor and mutual information dual criteria, excluding multicollinear variables with VIF values ​​greater than a preset threshold; calculating the mutual information between the remaining variables and the composite risk value, and selecting a preset number of variables from the mutual information as key variables; The key variables include: code complexity, defect rate, test coverage, CPU utilization, memory utilization, network latency, multimodal hidden factor, requirement change rate, and module business value weight.

5. The incremental software quality evaluation method for iterative development as described in claim 1, characterized in that, The method of using SHAP values ​​to quantify the contribution of each factor to risk in order to form a root cause chain includes: based on key causal paths, simulating the risk value after removing unstructured factors, and calculating the product of the difference between the comprehensive risk value and the influence weight of the unstructured factors and their correlation to obtain the counterfactual risk value. The SHAP value is used to calculate the contribution of each factor to the risk value, sorted from largest to smallest absolute contribution value, and combined with the causal path to form a root cause chain.

6. The incremental software quality evaluation method for iterative development according to claim 5, characterized in that, The action space of the intervention plan includes refactoring core business modules, increasing testing resources, optimizing requirements review, and strengthening code review. Each action is subject to resource constraints. The reinforcement learning agent generates multiple intervention schemes, calculates the Q-value of each pre-scheme, selects the scheme with the largest Q-value as the optimal intervention scheme, and transforms the optimal intervention scheme into a development task and pushes it into the development process. The incremental update mechanism includes: adding the new data after intervention to the standardized dataset and updating the output layer parameters of the graph attention network model; An update is triggered when the amount of new iteration data reaches the first preset range of the amount of historical single iteration data, or when the risk warning accuracy rate decreases by the second preset range for two consecutive iterations.

7. A software quality incremental evaluation system for iterative development, used to implement the software quality incremental evaluation method for iterative development as described in any one of claims 1 to 6, characterized in that, include: The feature extraction module is used to preprocess the pre-collected raw heterogeneous data stream, which includes structured and unstructured data covering technical and business dimensions. The preprocessing includes: encoding the structured data, vectorizing the unstructured data into text, using a pre-established multimodal Transformer model to treat the structured encoding results as pseudo-visual features and the text vectorized results as linguistic features, capturing the semantic association between pseudo-visual and linguistic features through a cross-attention mechanism, extracting cross-modal hidden factors, and performing noise filtering and missing value imputation to obtain a standardized dataset. The standardized dataset includes at least structured features, cross-modal hidden factors, and business value weights. The risk warning module is used to construct a graph attention network model based on the standardized dataset, calculate the comprehensive risk value of each software module, and trigger a warning when the comprehensive risk value exceeds a preset risk threshold, outputting the risk level of each module and the associated combination information of high-risk modules. The causal analysis module is used to locate abnormal areas based on the warning. The process involves selecting key variables from the standardized dataset, performing causal analysis on these variables using a causal graph to eliminate confounding factors, injecting cross-modal hidden factors to infer key causal paths, verifying the causal effectiveness of unstructured factors through counterfactual simulation, and quantifying the contribution of each factor to risk using SHAP values ​​to form a root cause chain. Based on the selected key variables, an initial causal graph is constructed using a PC algorithm. Potential causal relationships between variables are identified through conditional independence tests and edge orientation. The Conf-Elim model is used to eliminate interference from explicit confounding factors, resulting in a purified causal graph. An intervention optimization module is used to define the reward function of the reinforcement learning agent using a deep Q-network. This reward function integrates the business value improvement rate, defect rate change rate, and resource consumption increase rate. The reinforcement learning agent generates intervention plans in the action space of a preset intervention plan based on the root cause chain and the reward function, calculates the Q-value of each plan, and selects the optimal plan. An incremental update mechanism pushes the intervention plan to the development process, while simultaneously updating the model parameters using new data generated after the intervention.

8. A computer device, characterized in that, The computer device includes: At least one processor; and A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that can be executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1-6.

Citation Information

Patent Citations

  • Multi-mode driven self-evolution project management method

    CN120707061A