A software risk assessment system and method based on stage problem set
By integrating NLP, machine learning and other technologies into the software risk assessment system, identifying and predicting potential risks of software projects and formulating and adjusting response strategies, the problem of insufficient accuracy of risk assessment in the existing technology is solved, and the effectiveness and flexibility of risk response are improved.
Patent Information
- Application Number
- CN202510053510.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-14
- Publication Date
- 2025-04-29
- Estimated Expiration
- 2045-01-14
AI Technical Summary
The accuracy and objectivity of software risk assessment in the prior art are insufficient, and it is impossible to effectively deal with software project risks and improve project success rate.
A software risk assessment system based on a stage problem set is adopted, including risk analysis module, risk assessment module, response strategy module, risk tracking module, decision support module, data management module and user management module. Through technologies such as NLP, machine learning, Bayesian inference and pseudo-time sequence algorithms, potential risks are identified and predicted, and response strategies are formulated and adjusted.
It improves the accuracy of risk assessment and the effectiveness of response strategies, enhances the timeliness and flexibility of risk response, and ensures the smooth progress and successful delivery of the project.
Smart Images

Figure CN119475327B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of software risk assessment, and in particular relates to a software risk assessment system and method based on a stage problem set. Background Art
[0002] With the widespread application of information technology, especially in important industries and key departments, information security technology has become the focus and hotspot of information technology research. Information security protection is essentially a risk management work, and scientific methods and means that conform to the laws of information security need to be adopted to ensure information security. Bank software products bear important mission responsibilities, and there are great risks in the process of project implementation. Once it occurs, it may slow down the project progress, increase project costs, and even cause immeasurable losses to the bank's reputation, economic benefits, user information, etc.
[0003] Due to the uncertainty of software development problems and the uncontrollability of random failure events, accidents that endanger software safety may occur anytime and anywhere, thus affecting its operation effect. Online risk assessment indicators can directly reflect the operating status and potential risks of various aspects of software operation, and can timely grasp the risk status of the entire software, which is of great significance to ensuring the safety and stability of the software. The existing risk response strategy selection is often based on expert opinions and work elements, which to a certain extent depends on the personal preferences, professional knowledge and experience level of experts, which may lead to insufficient accuracy and objectivity of risk assessment. The existing methods may ignore the particularity of software project cost measurement and cannot meet the actual needs of effectively responding to software project risks and improving project success rates.
[0004] Therefore, it is necessary to propose a software risk assessment system and method based on a set of stage problems to solve the problems of insufficient accuracy and objectivity of risk assessment in the prior art.
[0005] The above information disclosed in this background technology is only used to increase the understanding of the background technology of the present invention and therefore, it may include information that does not constitute the prior art known to ordinary technicians in this field. Summary of the invention
[0006] The purpose of the present invention is to provide a software risk assessment system and method based on a stage problem set to solve the problems raised in the above background technology.
[0007] To achieve the above object, the present invention provides the following technical solutions:
[0008] A software risk assessment system based on a stage problem set, comprising: a risk analysis module, a risk assessment module, a response strategy module, a risk tracking module, a decision support module, a data management module, and a user management module;
[0009] The risk analysis module is used to analyze the risk issues collected during the current development phase and discover potential risk issues;
[0010] The risk assessment module is used to perform risk assessment based on the identified risk issues and determine the severity and likelihood of each risk issue;
[0011] The response strategy module is used to formulate response measures for each risk problem according to the risk assessment results;
[0012] The risk tracking module is used to continuously track changes in risks and monitor risk dynamics during development in real time;
[0013] The decision support module is used to provide data-based decision support for managers to adjust or formulate response strategies in response to risk changes;
[0014] The data management module is used to collect and store all data and risk cases, provide a summary of risk patterns and countermeasures across projects, and form a systematic knowledge base;
[0015] The user management module is used to manage the user access rights and roles of the system.
[0016] Preferably, the risk analysis module is used to analyze the text data in the problem set in the phase by using NLP technology, extract potential risk information, and infer potential risks based on prior knowledge and existing data by using Bayesian inference;
[0017] The basic process of Bayesian inference: collect historical problem data, including information such as problem type, occurrence module, impact assessment, etc.; build a Bayesian network, in which nodes represent different risk factors in the project (such as modules, teams, problem types, etc.), and edges represent conditional dependencies between them; based on evidence from existing problems, use Bayesian inference methods to update the posterior probability in the network and infer the probability of risk occurrence; based on the results of Bayesian inference, identify the parts of the project that are most likely to incur risks and provide decision support for the project management team.
[0018] Use association rules to mine and analyze the relationships between these risks, and then use machine learning algorithms to predict the failure probability and classify the risk level of risk issues.
[0019] Preferably, the risk assessment module is used to acquire the state and calculate the indicators of the risk status of each type of parameter in the current state using a pseudo-time series algorithm, and then complete the assessment after comparing with the risk classification thresholds at each level, which includes three stages: state acquisition stage, indicator calculation stage, and classification warning stage.
[0020] Among them, the state acquisition stage is the process of collecting data information for risk assessment. Based on the improved pseudo-time series algorithm, each state quantity is judged and extracted from the real-time monitoring data, and then put into the indicator calculation sequence. The indicator calculation stage is the process of calculating the risk value through the failure probability and severity of each part of the software and the parameters. The graded warning stage determines the risk level of the software status and issues a risk warning by comparing the graded threshold of each risk level with the calculated value of the risk indicator.
[0021] Preferably, the response strategy module is used to dynamically adjust and optimize the response strategy using machine learning combined with linear programming, while using a multi-objective optimization method to find the most appropriate balance point;
[0022] Use Monte Carlo simulation to generate multiple possible software development scenarios and evaluate the effectiveness of response strategies based on each scenario, helping managers understand the potential performance of different strategies in uncertain environments.
[0023] Preferably, the risk tracking module is used to integrate with the project management tool, collect information from multiple data sources in real time, and use time series algorithms to analyze the changing trend of risk levels in project development;
[0024] Use PID-based control to adjust response measures, respond to changes in risk levels, and automatically notify managers. Use Power BI tools to display real-time risk data and trend charts.
[0025] PID control (Proportional-Integral-Derivative Control) is a classic control algorithm widely used in automatic control systems. Its core idea is to achieve precise regulation of the controlled system by adjusting the three parameters of the controller: proportional (P), integral (I) and differential (D). Application of PID control in software risk assessment: Proportional (P) control can help the development team quickly respond to current risks and make timely corrections and adjustments; Integral (I) control can help the team deal with long-term accumulated risks and avoid projects from getting into trouble due to failure to deal with potential problems in a timely manner; Differential (D) control can predict the changing trend of risks and take measures in advance to avoid serious risk overshoot or project collapse.
[0026] Preferably, the decision support module is used to analyze project data through big data, extract valuable knowledge for the project, build a rule system in combination with the knowledge base, and provide decision support for managers through rule reasoning;
[0027] Based on real-time data and feedback, reinforcement learning is used to continuously interact with the environment and learn the optimal strategy, and dynamically adjust the decision-making strategy.
[0028] A software risk assessment method based on a phase problem set includes the following steps:
[0029] Step 1: Determine the direction of risk issues at the current stage based on the stage problem set, analyze historical data of similar projects, identify common risks in the project, and infer potential risk points;
[0030] Step 2: Use a machine learning algorithm to predict the probability and severity of software failures caused by the risk problem content, and use the classification threshold as a classification standard to complete the classification;
[0031] Step 3: Use a pseudo-time series algorithm to evaluate the risk problem content, introduce standardization and discretization to optimize the algorithm process, and obtain the risk assessment result;
[0032] Step 4: Determine the software risk level and issue an early warning based on the risk assessment results, formulate response measures for each risk issue, and evaluate the effectiveness of the response strategy based on the simulation scenario;
[0033] Step 5: Continuously monitor risk changes during development, update risk status in real time, track the development trend of potential risks, and provide data-based decision-making recommendations to managers;
[0034] Step 6: Provide suggestions for adjusting the response strategy based on the risk tracking and risk assessment results, and further adjust the optimization process of risk assessment and response strategy.
[0035] Preferably, the risk information is analyzed and extracted using NLP technology and association rule mining, combined with Bayesian inference to infer potential risks based on prior knowledge and existing data; with reference to historical data of similar projects, the risk level of the software is divided into three levels: level 1 risk, level 2 risk and level 3 risk, and the risk indicators in extreme cases are used as classification thresholds.
[0036] The reference standards are: (1) Level 1: The software runs normally and the software parameters fluctuate within the allowable range; (2) Level 2: The software runs normally within the safe range, with only a few or a small number of software parameters fluctuating abnormally. This is a medium-risk level, and an error warning is issued based on the abnormal situation; (3) Level 3: There are obvious failure points in the software or risk issues that seriously threaten the software security. This is a high-risk level, and a failure warning is issued based on the severity.
[0037] Compared with the prior art, the present invention has the following beneficial effects:
[0038] The present invention can effectively identify and predict potential risks and improve the accuracy of risk assessment by integrating technologies such as natural language processing (NLP), machine learning, Bayesian inference and association rule mining. It can accurately assess the risk level of each risk issue by optimizing the pseudo-time series algorithm, and help managers formulate and adjust response strategies in combination with dynamic optimization methods to ensure the timeliness and effectiveness of risk response. Real-time risk tracking and data visualization functions enhance decision support and ensure that project risks are continuously monitored and adjusted. This not only improves the accuracy of risk prediction, but also enhances the flexibility and optimization capabilities of risk response strategies, providing a solid guarantee for the smooth progress and successful delivery of projects.
[0039] The above summary is for illustrative purposes only and is not intended to be limiting in any way. In addition to the illustrative aspects, embodiments and features described above, further aspects, embodiments and features of the present invention will be readily apparent by reference to the accompanying drawings and the following detailed description. BRIEF DESCRIPTION OF THE DRAWINGS
[0040] Figure 1 It is a framework diagram of a software risk assessment system based on a set of stage problems of the present invention;
[0041] Figure 2 The flowchart of the software risk assessment method based on the stage problem set of the present invention. DETAILED DESCRIPTION
[0042] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention. Embodiment 1:
[0043] See also Figure 1 As shown, a software risk assessment system based on a stage problem set includes: a risk analysis module, a risk assessment module, a response strategy module, a risk tracking module, a decision support module, a data management module, and a user management module;
[0044] The risk analysis module is used to analyze the risk issues collected during the current development phase and identify potential risk issues;
[0045] The risk assessment module is used to conduct risk assessment based on the identified risk issues and determine the severity and likelihood of each risk issue;
[0046] The response strategy module is used to formulate response measures for each risk issue based on the risk assessment results;
[0047] The risk tracking module is used to continuously track risk changes and monitor risk dynamics during development in real time;
[0048] The decision support module is used to provide managers with data-based decision support to adjust or formulate response strategies based on risk changes;
[0049] The data management module is used to collect and store all data and risk cases, provide a summary of risk patterns and countermeasures across projects, and form a systematic knowledge base;
[0050] The User Management module is used to manage user access rights and roles of the system.
[0051] The risk analysis module is used to analyze the text data in the problem set through NLP technology, extract potential risk information, and infer potential risks based on prior knowledge and existing data through Bayesian inference; use association rules to mine and analyze the relationship between these risks, and then use machine learning algorithms to predict the failure probability and classify the risk level of risk problems.
[0052] Natural Language Processing (NLP) technology is an important branch of artificial intelligence (AI) that aims to enable computers to understand, analyze, generate and interact with human language. NLP technology combines knowledge from computational linguistics, computer science, and linguistics to help computers process and understand natural languages (such as Chinese, English, etc.).
[0053] The risk assessment module is used to acquire the state and calculate the indicators of each type of parameter in the current state using a pseudo-time series algorithm, and then complete the assessment after comparing it with the risk classification thresholds at all levels. It includes three stages: state acquisition stage, indicator calculation stage, and classification warning stage.
[0054] The response strategy module is used to use machine learning combined with linear programming to dynamically adjust and optimize response strategies, while using multi-objective optimization methods to find the most appropriate balance point; Monte Carlo simulation is used to generate a variety of possible software development scenarios, and the effectiveness of response strategies is evaluated based on each scenario, helping managers understand the potential performance of different strategies in uncertain environments.
[0055] The risk tracking module is used to integrate with project management tools, collect information from multiple data sources in real time, and use time series algorithms to analyze the changing trends of risk levels in project development;
[0056] Use PID-based control to adjust response measures, respond to changes in risk levels, and automatically notify managers. Use Power BI tools to display real-time risk data and trend charts.
[0057] Power BI is a powerful set of business intelligence (BI) tools provided by Microsoft, designed to help users acquire, analyze, visualize and share data from a variety of data sources. Power BI helps users use data for in-depth analysis and insights in daily business decisions through an intuitive interface and powerful data processing capabilities.
[0058] The decision support module is used to analyze project data through big data, extract valuable knowledge for the project, build a rule system based on the knowledge base, and provide decision support for managers through rule reasoning; based on real-time data and feedback, it uses reinforcement learning to continuously interact with the environment and learn optimal strategies, and dynamically adjust decision strategies. Embodiment 2:
[0059] See also Figure 2 As shown, the present invention also provides a software risk assessment method based on a stage problem set, comprising the following steps:
[0060] Step 1: Determine the direction of risk issues at the current stage based on the stage problem set, analyze historical data of similar projects, identify common risks in the project, and infer potential risk points;
[0061] Step 2: Use a machine learning algorithm to predict the probability and severity of software failures caused by the risk problem content, and use the classification threshold as a classification standard to complete the classification;
[0062] Step 3: Use a pseudo-time series algorithm to evaluate the risk problem content, introduce standardization and discretization to optimize the algorithm process, and obtain the risk assessment result;
[0063] Step 4: Determine the software risk level and issue an early warning based on the risk assessment results, formulate response measures for each risk issue, and evaluate the effectiveness of the response strategy based on the simulation scenario;
[0064] Step 5: Continuously monitor risk changes during development, update risk status in real time, track the development trend of potential risks, and provide data-based decision-making recommendations to managers;
[0065] Step 6: Provide suggestions for adjusting the response strategy based on the risk tracking and risk assessment results, and further adjust the optimization process of risk assessment and response strategy.
[0066] Analyze historical data of similar projects, identify common risks in projects, and infer potential risk points, including: using NLP technology and association rule mining to analyze and extract risk information, and combining Bayesian inference to infer potential risks based on prior knowledge and existing data.
[0067] The classification is completed by using the classification threshold as the classification standard, including: referring to the historical data of similar projects, dividing the software risk level into three levels: level 1 risk, level 2 risk and level 3 risk, and using the risk indicators in extreme cases as the classification threshold.
[0068] Introducing standardization and discretization to process the optimization algorithm, including:
[0069] Use the following formula to transform all state quantities into In the range, is the software parameter state quantity, This is the minimum value of all software parameter status quantities at this time. This is the maximum value of all software parameter status quantities at this time.
[0070]
[0071] In the formula, is a risk indicator, is the software parameter state quantity, is the total number of sampled states, Then, the importance of each software parameter state is calculated according to the parameter standards of each state quantity of the software parameter, and the software parameter states are arranged from small to large according to the importance of the software parameter state. The fluctuation state quantity with smaller software parameter state importance is more likely to be eliminated, so that the state quantity of those states with greater software parameter state importance can be avoided.
[0072] In order to evaluate the importance of different software parameter states, it is assumed that a certain type of state is deleted from the entire software parameter state set, and the importance is judged by observing whether the software parameter state changes in state category. The expression is:
[0073]
[0074] From the above formula, we can find that in the pseudo-timing algorithm, the software parameter state importance of all state quantities is first amplified through standardization, and then all the fluctuating state quantities whose software parameter state importance is still small after standardization are removed through discretization. This not only reasonably ignores the unacceptable state quantities that have little impact on the software, thereby improving the efficiency of the algorithm, but also retains all the state quantities between the two boundaries, thereby improving the accuracy of the algorithm.
[0075] As can be seen above, by integrating technologies such as natural language processing (NLP), machine learning, Bayesian inference, and association rule mining, potential risks in project development can be effectively identified and analyzed, so that potential problems can be discovered and predicted in advance; by optimizing pseudo-time series algorithms, the risk level of each risk problem can be accurately assessed to help managers make timely risk response decisions. At the same time, the use of dynamic optimization technology combined with machine learning and linear programming methods can continuously adjust the response strategy based on real-time feedback, and find the best balance point for risk response through multi-objective optimization to ensure the maximum benefit of strategy implementation.
[0076] In addition, through deep integration with project management tools, real-time monitoring of risk issues ensures dynamic monitoring and timely adjustment of risk status. Through time series analysis and PID control, the system can automatically identify and respond to risk changes, providing managers with accurate early warning information; it also supports the accumulation of risk management experience across projects, building a rich knowledge base, and realizing data visualization through tools such as Power BI, so that managers can intuitively understand risk dynamics and make more scientific and reasonable decisions. Example
[0077] The embodiment of the present invention also provides a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, each process of the software risk assessment system embodiment described above is implemented, and the same technical effect can be achieved. To avoid repetition, it is not repeated here. Among them, the computer-readable storage medium, such as a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, etc.
[0078] In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "examples", "specific examples" or "some examples" etc. means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present invention. In this specification, the schematic representations of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or more embodiments or examples in a suitable manner. In addition, those skilled in the art may combine and combine different embodiments or examples described in this specification and the features of different embodiments or examples, unless they are contradictory.
[0079] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems) and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor or other programmable data processing device to generate a program, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A way to specify functions in one or more boxes.
[0080] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0081] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.
[0082] In the drawings of the embodiments disclosed in the present invention, only the structures involved in the embodiments disclosed in the present invention are involved, and other structures can refer to the general design. In the absence of conflict, the same embodiment and different embodiments of the present invention can be combined with each other.
[0083] The flowcharts shown in the accompanying drawings are only examples and do not necessarily include all the contents and operations / steps, nor must they be executed in the order described. For example, some operations / steps may also be decomposed, combined or partially merged, so the actual execution order may change according to actual conditions.
[0084] Although embodiments of the present invention have been shown and described, it will be appreciated by those skilled in the art that various changes, modifications, substitutions and variations may be made to the embodiments without departing from the principles and spirit of the present invention, and that the scope of the present invention is defined by the appended claims and their equivalents.
Claims
1. A software risk assessment system based on a set of stage questions, characterized in that: include: Risk analysis module, risk assessment module, response strategy module, risk tracking module, decision support module, data management module, user management module; The risk analysis module is used to analyze the risk issues collected during the current development phase and discover potential risk issues; Use NLP technology to analyze the text data in the problem set, extract potential risk information, and use Bayesian inference to infer potential risks based on prior knowledge and existing data; Use association rules to mine and analyze the relationships between these risks, and then use machine learning algorithms to predict the failure probability and classify the risk level of risk issues; The risk assessment module is used to perform risk assessment based on the identified risk issues and determine the severity and likelihood of each risk issue; The pseudo-time series algorithm is used to obtain the risk status of each type of parameter in the current state and calculate the indicators. The risk status is then compared with the risk classification thresholds at all levels to complete the assessment. It includes three stages: state acquisition stage, indicator calculation stage, and classification warning stage. The response strategy module is used to formulate response measures for each risk problem according to the risk assessment results; The risk tracking module is used to continuously track changes in risks and monitor risk dynamics during development in real time; Integrate with project management tools to collect information from multiple data sources in real time and use time series algorithms to analyze the changing trends of risk levels in project development; Use PID-based control to adjust response measures, respond to changes in risk levels, and automatically notify managers. Use Power BI tools to display real-time risk data and trend charts. The decision support module is used to provide data-based decision support for managers to adjust or formulate response strategies in response to risk changes; The data management module is used to collect and store all data and risk cases, provide a summary of risk patterns and countermeasures across projects, and form a systematic knowledge base; The user management module is used to manage the user access rights and roles of the system.
2. A software risk assessment system based on a stage problem set according to claim 1, characterized in that: The response strategy module is used to dynamically adjust and optimize the response strategy using machine learning combined with linear programming, and to find the most appropriate risk level using a multi-objective optimization method combined with a risk classification threshold; Generate multiple software development scenarios using Monte Carlo simulation and evaluate the effectiveness of response strategies based on each scenario.
3. A software risk assessment system based on a stage problem set according to claim 2, characterized in that: The decision support module is used to analyze project data through big data, extract valuable knowledge for the project to build a knowledge base, and build a rule system based on the knowledge base to provide decision support for managers through rule reasoning; Based on real-time data and feedback, reinforcement learning is used to continuously interact with the environment and learn the optimal strategy, and dynamically adjust the decision-making strategy.
4. A software risk assessment method based on a stage problem set, based on the system according to any one of claims 1 to 3, characterized in that: The following steps are involved: Step 1: Determine the direction of risk issues at the current stage based on the stage problem set, analyze historical data of similar projects, identify common risks in the project, and infer potential risk points; Step 2: Use a machine learning algorithm to predict the probability and severity of software failures caused by the risk problem, and use the classification threshold as a classification standard to complete the classification; Step 3: Use a pseudo-time series algorithm to evaluate the content of the risk problem, introduce standardization and discretization to optimize the algorithm process, and obtain the risk assessment result.
5. The software risk assessment method based on a stage problem set according to claim 4 is characterized in that: The above analysis of historical data of similar projects identifies common risks in projects and infers potential risk points, including: Use NLP technology and association rule mining to analyze and extract risk information, and combine Bayesian inference to infer potential risks based on prior knowledge and existing data.
6. The software risk assessment method based on a stage problem set according to claim 5 is characterized in that: The method of using the classification threshold as a classification standard to complete the classification includes: With reference to historical data of similar projects, the software risk level is divided into three levels: level 1 risk, level 2 risk and level 3 risk, and the risk indicators under preset conditions are used as the classification threshold.
7. A software risk assessment method based on a stage problem set according to claim 6, characterized in that: The method also includes: Step 4: Determine the software risk level and issue an early warning based on the risk assessment results, formulate response measures for each risk issue, and evaluate the effectiveness of the response strategy based on the simulation scenario; Step 5: Continuously monitor risk changes during development, update risk status in real time, track the development trend of potential risks, and provide data-based decision-making recommendations to managers; Step 6: Provide suggestions for adjusting the response strategy based on the risk tracking and risk assessment results, and further adjust the optimization process of risk assessment and response strategy.
Citation Information
Patent Citations
Risk assessment method and device in software development process and electronic equipment
CN117114396A
Software component analysis method and related equipment
CN118035069A