A Software Stability Evaluation Method, Device, Storage Medium, and Equipment
By constructing an abnormal causal relationship matrix and calculating weighting coefficients, quantifying software stability evaluation, the problem of lack of quantitative evaluation in the existing technology is solved, and accurate evaluation and optimization of software stability is achieved, and user experience is improved.
Patent Information
- Application Number
- CN202210181317.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-02-25
- Publication Date
- 2025-06-17
- Estimated Expiration
- 2042-02-25
AI Technical Summary
The lack of quantitative solutions for software stability evaluation in the prior art leads to the inability to objectively evaluate the software operation stability during software development and optimization, affecting the user experience.
By obtaining the abnormal data information and operation data information during the software operation process, an abnormal causal relationship matrix is constructed to deduplicate, the weighting coefficient and overall abnormal rate index are calculated, and the stability index is calculated in combination with the abnormal operation time ratio to achieve a quantitative evaluation of software stability.
It realizes objective and accurate evaluation of software stability, improves software quality and user experience, and ensures the stable operation of the software system.
Smart Images

Figure CN114595130B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer technology, and in particular, to a method, device, storage medium, and equipment for evaluating software stability. Background Art
[0002] Due to the information explosion, the software on intelligent devices is also growing geometrically. With the massive data brought by the increase in software, the frequency of failures during the storage and analysis of this data by intelligent devices is also getting higher and higher, constantly affecting the availability and efficiency of the software on intelligent devices. Therefore, during the software development process, it is usually necessary to conduct quality tests on the developed software to ensure that the software or the system where the software is located can run smoothly. For the developed software, it is also necessary to continuously monitor its running stability to determine whether to optimize the software.
[0003] However, in the prior art, there is no quantitative solution for evaluating software stability. Therefore, it can only be judged by developers, product managers, etc. based on experience, which is not objective enough and may also lead to the neglect of many problems that affect the normal use of the software, thus affecting the user experience. Summary of the Invention
[0004] To solve the above technical problems, the present invention provides a method, device, storage medium, and equipment for evaluating software stability, which can objectively evaluate the running stability of software, thereby optimizing the software, improving the software quality and running stability, and enhancing the software usage experience.
[0005] An embodiment of the present invention provides a method for evaluating software stability, the method comprising:
[0006] Obtaining abnormal data information and running data information during the running process of the software to be evaluated;
[0007] Removing duplicates from the number of repeated anomalies in the abnormal data information according to a pre-constructed abnormal causal relationship matrix;
[0008] Calculating the overall anomaly rate index of the software to be evaluated according to the pre-calculated weighting coefficient and the de-duplicated abnormal data information;
[0009] Calculating the proportion of abnormal running time according to the running data information;
[0010] Calculating the stability index of the software to be evaluated according to the proportion of abnormal running time and the overall anomaly rate index, and evaluating the stability of the software to be evaluated according to the stability index.
[0011] Preferably, the obtaining abnormal data information and running data information during the running process of the software to be evaluated specifically includes:
[0012] Run the software to be evaluated, and detect the abnormal data information and operation data information of the software to be evaluated within a preset time period through the buried point data pre-placed in the software to be evaluated;
[0013] The abnormal data information includes the number of abnormal shutdowns, the number of software crashes, the number of unresponsive programs, and the number of flashes;
[0014] The operation data information includes the number of runs and the operation duration data;
[0015] Among them, the operation duration data includes the stable operation duration and the abnormal operation duration.
[0016] Preferably, the de-duplication of the repeated abnormal times in the abnormal data information according to the pre-constructed abnormal causality matrix specifically includes:
[0017] Remove the repeated abnormal times in the abnormal data information according to the pre-constructed abnormal causality matrix B, and the abnormal times of abnormal behavior i after de-duplication are N i ;
[0018] Among them, b ij =1 indicates that abnormal behavior i will cause abnormal behavior j, b ij =0 indicates that abnormal behavior i will not cause abnormal behavior j, i,j = 1,2,...,n, n is the number of abnormal behaviors in the abnormal data information, n≥1, SN i is the abnormal times of abnormal behavior i in the abnormal data information.
[0019] As a preferred solution, the pre-calculation process of the weighting coefficient includes:
[0020] Construct the importance comparison matrix A between the abnormal data information, and determine the importance comparison coefficient of each element a ij in the importance comparison matrix A according to the preset influence degree setting rule;
[0021] Normalize the column vectors of the importance comparison matrix A to obtain the normalized matrix
[0022] For the matrix Perform a sum calculation by row to obtain the column vector
[0023] For the column vector After normalization, obtain the weighting coefficient vector W;
[0024] Perform m calculations on the weighting coefficient vector W to obtain m weighting coefficients of the abnormal times N i of abnormal behavior i, and obtain
[0025] Adopt the average value to calculate the weighted coefficient w of different anomalies i
[0026] where W = (w1, w2,..., w n ) T ,
[0027] Preferably, the overall anomaly rate index
[0028] where N* is a positive integer, n is the number of anomalies in the anomaly data information, n≥1, N i is the number of anomalies after deduplication for anomaly behavior i, w i is the weighted coefficient of anomaly behavior i, and Rtb is the number of runs in the operation data information.
[0029] As a preferred solution, the abnormal operation time ratio
[0030] where Rte is the abnormal operation duration in the operation data information, and Rtn is the stable operation duration in the operation data information.
[0031] Preferably, the stability index Qs = (1 - Ar) y(Re) ;
[0032] where y(x) = λ × tanh(x), the tanh(x) function is an increasing function with a domain of [0, +∞) and a range of [0, 1), the adjustment parameter λ is a preset positive number not less than 1, Re is the abnormal operation time ratio, and Ar is the overall anomaly rate index.
[0033] An embodiment of the present invention provides a software stability evaluation device, and the device includes:
[0034] An information acquisition module, configured to acquire anomaly data information and operation data information during the operation of the software to be evaluated;
[0035] A deduplication module, configured to deduplicate the number of repeated anomalies in the anomaly data information according to a pre-constructed anomaly causality matrix;
[0036] A first calculation module, configured to calculate the overall anomaly rate index of the software to be evaluated according to the pre-calculated weighted coefficient and the deduplicated anomaly data information;
[0037] A second calculation module, configured to calculate the abnormal operation time ratio according to the operation data information;
[0038] An evaluation module, configured to calculate a stability index of the software to be evaluated according to the abnormal operation time ratio and the overall abnormal rate index, and evaluate the stability of the software to be evaluated according to the stability index.
[0039] Further, the information acquisition module is specifically configured to:
[0040] Run the software to be evaluated, and detect abnormal data information and operation data information of the software to be evaluated within a preset time period through the buried point data pre-placed in the software to be evaluated;
[0041] The abnormal data information includes the number of abnormal shutdowns, the number of software crashes, the number of unresponsive programs, and the number of flashes;
[0042] The operation data information includes the number of runs and the operation duration data;
[0043] The operation duration data includes the stable operation duration and the abnormal operation duration.
[0044] As a preferred solution, the de-duplication module is specifically configured to:
[0045] Remove the repeated abnormal times in the abnormal data information according to the pre-constructed abnormal causality matrix B, and the abnormal times of abnormal behavior i after de-duplication is N i ;
[0046] Wherein, b ij = 1 indicates that abnormal behavior i will cause abnormal behavior j, b ij = 0 indicates that abnormal behavior i will not cause abnormal behavior j, i, j = 1, 2,..., n, n is the number of abnormal behaviors in the abnormal data information, n ≥ 1, SN i is the abnormal times of abnormal behavior i in the abnormal data information.
[0047] Preferably, the pre-calculation process of the weighting coefficient includes:
[0048] Construct an importance comparison matrix A between the abnormal data information, and determine the importance comparison coefficient of each element a ij in the importance comparison matrix A according to the preset influence degree setting rule;
[0049] Normalize the column vectors of the importance comparison matrix A to obtain the normalized matrix
[0050] For the matrix Perform a summation calculation by row to obtain a column vector
[0051] After normalizing the column vector the weighted coefficient vector W is obtained;
[0052] Perform m calculations on the weighted coefficient vector W to obtain the number of anomalies N of the abnormal behavior i i of the m weighted coefficients to obtain
[0053] Adopt the average value of to calculate the weighted coefficient w of different anomalies i
[0054] wherein, W = (w1, w2,..., w n ) T ,
[0055] Preferably, the overall anomaly rate index
[0056] wherein, N* is a positive integer, n is the number of anomalies in the abnormal data information, n≥1, N i is the number of anomalies after deduplication of the abnormal behavior i, w i is the weighted coefficient of the abnormal behavior i, and Rtb is the number of runs in the running data information.
[0057] Preferably, the abnormal running time ratio
[0058] wherein, Rte is the abnormal running duration in the running data information, and Rtn is the stable running duration in the running data information.
[0059] Preferably, the stability index Qs = (1 - Ar) y(Re) ;
[0060] wherein, y(x) = λ×tanh(x), the tanh(x) function is an increasing function with a domain of [0, +∞) and a range of [0, 1), the adjustment parameter λ is a preset positive number not less than 1, Re is the abnormal running time ratio, and Ar is the overall anomaly rate index.
[0061] An embodiment of the present invention also provides a computer-readable storage medium, which includes a stored computer program. When the computer program runs, it controls the device where the computer-readable storage medium is located to execute the software stability evaluation method described in any one of the above embodiments.
[0062] An embodiment of the present invention further provides a terminal device, including a processor, a memory, and a computer program stored in the memory and configured to be executed by the processor. When the processor executes the computer program, the software stability evaluation method described in any one of the above embodiments is implemented.
[0063] A software stability evaluation method, device, storage medium, and device provided by the present invention obtain abnormal data information and running data information during the running of the software to be evaluated; de-duplicate the number of repeated abnormalities in the abnormal data information according to a pre-constructed abnormal causality matrix; calculate the overall abnormal rate index of the software to be evaluated according to the pre-calculated weighting coefficient and the de-duplicated abnormal data information; calculate the proportion of abnormal running time according to the running data information; calculate the stability index of the software to be evaluated according to the proportion of abnormal running time and the overall abnormal rate index, and evaluate the stability of the software to be evaluated according to the stability index. By obtaining abnormal data information and running data information during the running of the software to be evaluated, calculating the overall abnormal rate index and abnormal running time, calculating the stability index according to the overall abnormal rate index and abnormal running time, evaluating the stability of the software to be evaluated according to the size of the stability index, quantifying the evaluation index of software stability, and combining the causal relationship and relative importance between software abnormalities to evaluate stability, the stability evaluation is more comprehensive; by removing the number of repeated abnormalities in the abnormal data information through the abnormal causality matrix, the accuracy of the abnormal data information is improved; by determining the abnormal weighting coefficient through the abnormal importance comparison matrix, the stability evaluation is more accurate. BRIEF DESCRIPTION OF THE DRAWINGS
[0064] Figure 1 is a flowchart of a software stability evaluation method provided by an embodiment of the present invention;
[0065] Figure 2 is a structural diagram of a software stability evaluation device provided by an embodiment of the present invention;
[0066] Figure 3 is a structural diagram of a terminal device provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0067] The following will clearly and completely describe the technical solutions in the embodiments of the present invention with reference to the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all the embodiments. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the protection scope of the present invention.
[0068] An embodiment of the present invention provides a software stability evaluation method. Refer to Figure 1, which is a schematic flowchart of a software stability evaluation method provided by an embodiment of the present invention. The method steps are S1 to S5:
[0069] S1, obtain abnormal data information and running data information during the running of the software to be evaluated;
[0070] S2, construct an abnormal causality matrix, and remove duplicates from the number of repeated abnormalities in the abnormal data information according to the abnormal causality matrix;
[0071] S3, calculate the overall abnormal rate index of the software to be evaluated according to the pre-calculated weighting coefficient and the de-duplicated abnormal data information;
[0072] S4, calculate the proportion of abnormal running time according to the running data information;
[0073] S5, calculate the stability index of the software to be evaluated according to the proportion of abnormal running time and the overall abnormal rate index, and evaluate the stability of the software to be evaluated according to the stability index.
[0074] In the specific implementation of this embodiment, receive the software to be evaluated uploaded by the developer through the development terminal or storage device, run the software to be evaluated, and obtain the abnormal data information and running data information during the running of the software to be evaluated; wherein the abnormal data information includes the number of abnormal occurrences of several abnormal running behaviors during the running of the software to be evaluated; the running data information includes the running data when the software to be evaluated runs, including normal data and abnormal running data.
[0075] Construct an abnormal causality matrix, and remove the number of times caused by other abnormal behaviors from the number of times of a certain abnormal behavior in the abnormal data information, and remove the repeated abnormal times in the abnormal data information.
[0076] Calculate the overall abnormal rate index of the software to be evaluated according to the pre-calculated weighting coefficient and the number of occurrences of each abnormal behavior in the de-duplicated abnormal data information;
[0077] And calculate the proportion of abnormal running time according to the running data information;
[0078] Calculate the stability index of the software to be evaluated according to the proportion of abnormal running time and the overall abnormal rate index, and evaluate the stability of the software to be evaluated according to the stability index.
[0079] By obtaining the abnormal data information and running data information during the operation of the software to be evaluated, calculating the overall abnormal rate index and abnormal running time, calculating the stability index based on the overall abnormal rate index and abnormal running time, evaluating the stability of the software to be evaluated according to the size of the stability index, quantifying the evaluation index of software stability, and evaluating the stability in combination with the causal relationship and relative importance between software anomalies, the stability evaluation is more comprehensive; by removing the repeated abnormal times in the abnormal data information through the abnormal causality matrix, the accuracy of the abnormal data information is improved; by determining the abnormal weighting coefficient through the abnormal importance comparison matrix, the stability evaluation is more accurate.
[0080] In another embodiment provided by the present invention, the obtaining of the abnormal data information and running data information during the operation of the software to be evaluated specifically includes:
[0081] Run the software to be evaluated, and detect the abnormal data information and running data information of the software to be evaluated within a preset time period through the buried point data pre-placed in the software to be evaluated;
[0082] The abnormal data information includes the number of abnormal shutdowns, the number of software crashes, the number of unresponsive programs, and the number of flashes;
[0083] The running data information includes the number of runs and the running duration data;
[0084] Wherein the running duration data includes the stable running duration and the abnormal running duration.
[0085] When this embodiment is specifically implemented, the obtaining process of the abnormal data information and running data information is specifically as follows:
[0086] Run the software to be evaluated in a specified system or device, and monitor the running situation of the software to be evaluated within a preset time period through the buried point data pre-placed in the software to be evaluated, and count the occurrence times of different abnormal behaviors, the normal running time, and the abnormal running time, so as to obtain the abnormal data information and running data information;
[0087] The abnormal data information includes the number of software crashes Nb (Number_break), the number of unresponsive programs Na (Number_anr), and the number of flashes Nf (Nuestion_flash) of the software to be evaluated, as well as the number of abnormal shutdowns Ns (Number_shutdown) of the running device caused by the software to be evaluated.
[0088] The operation data information includes the number of runs of the software to be evaluated Rtb (runtime_total_number) and the run time data Rt (run_time). The run time data can be further divided into the stable run time Rtn (run_time_normal) and the abnormal run time Rte (run_time_exception).
[0089] During the software running process, the number of abnormal shutdowns, software crashes, program unresponsiveness and flashbacks of the software to be evaluated is detected and the operation can cover most of the abnormalities of the software to be evaluated, and the stability efficiency is high.
[0090] It should be noted that in addition to some data of the abnormal data information and the operating data information listed in this embodiment, in other embodiments, the abnormal data information and the operating data information also include other data. Based on the principles of the present invention, the specific data of the abnormal data information and the operating data information does not affect the specific implementation of the present invention. Any selected data of the abnormal data information and the operating data information are within the protection scope of the present invention.
[0091] In another embodiment provided by the present invention, the step S2 specifically includes:
[0092] According to the pre-constructed abnormal causal relationship matrix B, the number of repeated abnormalities in the abnormal data information is removed, and the number of abnormalities after the abnormal behavior i is removed is N i ;
[0093] in, b ij =1 means abnormal behavior i will cause abnormal behavior j, b ij =0 means abnormal behavior i will not cause abnormal behavior j, i, j = 1, 2, ..., n, n is the number of abnormal behaviors in the abnormal data information, n ≥ 1, SN i is the number of abnormalities of the abnormal behavior i of the abnormal data information.
[0094] When this embodiment is implemented, an n×n causal relationship matrix B between abnormal behaviors is pre-built:
[0095]
[0096] Among them, b ij Indicates whether abnormal behavior i will cause the j An abnormality occurs, b ij =1 indicates that there is a causal relationship between abnormal behavior i and abnormal behavior j, that is, abnormal behavior i will cause abnormal behavior j, b ij= 0 indicates that there is no causal relationship between abnormal behavior i and abnormal behavior j, that is, abnormal behavior i will not cause abnormal behavior j, where i, j = 1, 2, ..., n, and n is the number of abnormal behaviors in the abnormal data information, n ≥ 1;
[0097] Remove the repeated abnormal times in each abnormal behavior according to the abnormal causal relationship matrix B. The abnormal times of abnormal behavior i after de-duplication is N i ;
[0098]
[0099] where SN i is the abnormal times of abnormal behavior i of the abnormal data information.
[0100] By the causal relationship between abnormal behaviors, remove the times of repeated abnormal behaviors caused by one abnormal behavior, improve the accuracy of abnormal data, and improve the accuracy of stability evaluation.
[0101] In another embodiment provided by the present invention, the pre-calculation process of the weighting coefficient includes:
[0102] Construct the importance comparison matrix A between the abnormal data information, and determine the importance comparison coefficient of each element a ij in the importance comparison matrix A according to the preset influence degree setting rule;
[0103] Normalize the column vectors of the importance comparison matrix A to obtain the normalized matrix
[0104] For the matrix perform a summation calculation by row to obtain the column vector
[0105] For the column vector after normalization, obtain the weighting coefficient vector W;
[0106] Perform m calculations on the weighting coefficient vector W to obtain m weighting coefficients of the abnormal times N i of abnormal behavior i, and obtain
[0107] Adopt the average value of to calculate the weighting coefficient w i
[0108] where, W = (w1, w2, ..., w n ) T ,
[0109] In the specific implementation of this embodiment, the weighting coefficient is obtained by comparing the relative severity between different abnormal behaviors in the abnormal data. The abnormal behaviors include abnormal shutdown, software crash, program non - response, and flashback.
[0110] The specific calculation process of the weighting coefficient is as follows:
[0111] Construct an importance comparison matrix A between different abnormal behaviors of the abnormal data:
[0112]
[0113] where a ij is the importance comparison coefficient between abnormal behavior i and abnormal behavior j, a ij >0, a ji =1 / a ij , i, j = 1, 2,..., n, and n is the number of abnormal behaviors in the abnormal data information, n = 4:
[0114] The scientific research experts determine the influence degree of abnormal behavior i compared with abnormal behavior j on stability according to the field of the software to be tested, set the value - taking rules, and specify the value - taking rule table.
[0115] Table 1a ij Value - taking rule table of the importance comparison coefficient
[0116]
[0117] Normalize the column vectors of the importance comparison matrix A to obtain the normalized matrix
[0118]
[0119] Sum by rows, and calculate the column vector
[0120]
[0121] After normalizing the column vector , obtain the weighting coefficient vector W=(w1, w2,..., wn) T .
[0122] To avoid the one - sidedness of the scientific research experts setting the value - taking rules for the influence degree of abnormal behavior i compared with abnormal behavior j on stability, when calculating the weighting coefficient, according to the different value - taking rules set by m scientific research experts, calculate the weighting coefficient vector W m times, and obtain the abnormal times N i of the i - th type of abnormal data, and get
[0123] Final weighted coefficient w i Adopt the average value of, that is
[0124] By setting the value-taking rules for the influence degree of different abnormal behaviors on stability, different calculation weights are obtained, and this process is repeated multiple times to reduce the one-sidedness of setting the value-taking rules; by increasing the number of repeated executions, the accuracy is improved.
[0125] In another embodiment provided by the present invention, the overall abnormal rate index
[0126] Among them, N* is a positive integer, n is the number of abnormalities in the abnormal data information, n≥1, N i is the number of abnormalities after removing duplicates for abnormal behavior i, w i is the weighted coefficient of abnormal behavior i, and Rtb is the number of running times in the running data information.
[0127] When specifically implementing this embodiment, the overall abnormal rate index Ar (abnormal rate) of the software is obtained according to the abnormal data information, and the calculation formula of the overall abnormal rate index is as follows:
[0128]
[0129] In the above formula, n is the number of types of abnormal data information, n≥1, N i is the number of abnormalities after removing duplicates for abnormal behavior i, N i includes but is not limited to the data after removing duplicates of the number of abnormal shutdowns Ns, the number of software crashes Nb, the number of program non-responses Na, and the number of flashes Nf, i = 1, 2,..., n, w i is the weighted coefficient of abnormal behavior i, and Rtb is the number of running times in the running data information.
[0130] In another embodiment provided by the present invention, the abnormal running time ratio
[0131] Among them, Rte is the abnormal running duration in the running data information, and Rtn is the stable running duration in the running data information.
[0132] When specifically implementing this embodiment, the abnormal running time ratio
[0133] Among them, Rte is the abnormal running duration in the running data information, and Rtn is the stable running duration in the running data information.
[0134] In another embodiment provided by the present invention, the stability index Qs = (1 - Ar) y(Re) ;
[0135] where y(x) = λ × tanh(x), the tanh(x) function is an increasing function with a domain of [0, +∞) and a range of [0, 1), the adjustment parameter λ is a preset positive number not less than 1, Re is the abnormal running time ratio, and Ar is the overall abnormal rate index.
[0136] When specifically implementing this embodiment, the stability index Qs of the target software is calculated according to the overall abnormal rate index and the abnormal running time ratio, and its calculation formula is as follows:
[0137] Qs = (1 - Ar) y(Re)
[0138] y(x) = λ × tanh(x)
[0139]
[0140] In the above formula, the tanh(x) function is an increasing function with a domain of [0, +∞) and a range of [0, 1), the adjustment parameter λ is a preset positive number greater than or equal to 1, which is used to expand the exponent of 1 - Ar. Since Qs is a decreasing function with a domain of [0, +∞) and a range of (0, 1], the range of Qs can be expanded by adjusting the size of the exponent λ; specifically, it can be a constant set by scientific research experts according to experience;
[0141] The formula meaning of the stability index Qs is: when the base 1 - Ar is between (0, 1), the smaller the exponent y(Re), the larger the Qs value; the lower the software abnormal rate index and the smaller the abnormal running time ratio, the higher the stability index value of the software to be evaluated; the larger the software abnormal rate and the larger the abnormal running time ratio, the lower the stability index value of the software to be evaluated.
[0142] The stability evaluation of the software can be a periodic dynamic evaluation, that is, it is evaluated at set periodic intervals, which is used to monitor the long-term running state of the software to be evaluated. For example, the stability evaluation is dynamically updated once a month after the software to be evaluated is released; it can also be a manually triggered evaluation, that is, it is used for testers to evaluate the stability of the software.
[0143] Preferably, the software stability evaluation method provided by the present invention can regularly generate a stability evaluation report for a list of multiple target software, and push and distribute the report to relevant responsible persons in a timely manner for viewing, so as to optimize the software.
[0144] The hierarchical evaluation of the stability of the target software according to the stability index further means that the software can be classified according to the size of its corresponding stability index with reference to the actual experience of scientific research experts. The classification is not specifically limited, such as excellent stability, good, normal, slightly poor, extremely poor, etc., so that the relevant responsible persons can clearly understand the current state of the software.
[0145] See Figure 2 , which is a schematic structural diagram of a software stability evaluation device provided by an embodiment of the present invention. The device includes:
[0146] An information acquisition module, configured to acquire abnormal data information and operation data information during the operation of the software to be evaluated;
[0147] A duplicate removal module, configured to remove duplicates of the number of repeated anomalies in the abnormal data information according to a pre-constructed abnormal causal relationship matrix;
[0148] A first calculation module, configured to calculate the overall anomaly rate index of the software to be evaluated according to a pre-calculated weighting coefficient and the de-duplicated abnormal data information;
[0149] A second calculation module, configured to calculate the proportion of abnormal operation time according to the operation data information;
[0150] An evaluation module, configured to calculate the stability index of the software to be evaluated according to the proportion of abnormal operation time and the overall anomaly rate index, and evaluate the stability of the software to be evaluated according to the stability index.
[0151] It should be noted that a software stability evaluation device provided by an embodiment of the present invention is used to execute all the process steps of a software stability evaluation method in the above embodiment. The working principles and beneficial effects of the two correspond one by one, so they will not be elaborated here.
[0152] See Figure 3 , which is a schematic diagram of a preferred implementation of a terminal device provided by the present invention. The terminal device in this embodiment includes: a processor, a memory, and a computer program stored in the memory and executable on the processor, such as a software stability evaluation program. When the processor executes the computer program, the steps in the above-mentioned various software stability evaluation method embodiments are implemented, such as Figure 1 The steps S1 to S5 shown. Alternatively, when the processor executes the computer program, the functions of each module in the above-mentioned device embodiments are implemented.
[0153] Exemplarily, the computer program may be divided into one or more modules / units, and the one or more modules / units are stored in the memory and executed by the processor to implement the present invention. The one or more modules / units may be a series of computer program instruction segments capable of performing specific functions, and these instruction segments are used to describe the execution process of the computer program in the terminal device. For example, the computer program may be divided into a code upload module, a software packaging module, a software storage module, a device connection module, and a device testing module. The specific functions of each module will not be elaborated here again.
[0154] The terminal device may be a computing device such as a desktop computer, a notebook, a palm computer, and a cloud server. The terminal device may include, but is not limited to, a processor and a memory. Those skilled in the art can understand that the schematic diagram is only an example of the terminal device and does not constitute a limitation on the terminal device. It may include more or fewer components than shown in the figure, or combine some components, or different components. For example, the terminal device may further include input / output devices, network access devices, a bus, etc.
[0155] The so-called processor may be a central processing unit (CPU), or may also be other general-purpose processors, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc. The processor is the control center of the terminal device and connects various parts of the entire terminal device through various interfaces and circuits.
[0156] The memory can be used to store the computer programs and / or modules. By running or executing the computer programs and / or modules stored in the memory, and invoking the data stored in the memory, the processor can implement various functions of the terminal device. The memory mainly includes a program storage area and a data storage area. Among them, the program storage area can store the operating system, application programs required for at least one function (such as the sound playback function, the image playback function, etc.); the data storage area can store the data created according to the use of the mobile phone (such as audio data, phone book, etc.). In addition, the memory can include high-speed random access memory, and can also include non-volatile memory, such as a hard disk, memory, plug-in hard disk, smart media card (SMC), secure digital (SD) card, flash card, at least one magnetic disk storage device, flash memory device, or other volatile solid-state storage devices.
[0157] Among them, if the module / unit integrated in the terminal device is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on such an understanding, to implement all or part of the processes in the above-mentioned embodiment methods of the present invention, it can also be completed by a computer program instructing relevant hardware. The computer program can be stored in a computer-readable storage medium. When the computer program is executed by the processor, the steps of the above-mentioned various method embodiments can be implemented. Among them, the computer program includes computer program code, and the computer program code can be in the form of source code, object code, executable file, or some intermediate form, etc. The computer-readable medium can include: any entity or device capable of carrying the computer program code, recording medium, USB flash drive, mobile hard disk, magnetic disk, optical disc, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signal, telecommunication signal, and software distribution medium, etc. It should be noted that the content included in the computer-readable medium can be appropriately increased or decreased according to the requirements of legislation and patent practice in the jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, the computer-readable medium does not include electrical carrier signals and telecommunication signals.
[0158] It should be noted that the device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed to multiple network units. Some or all of the modules can be selected according to actual needs to achieve the purpose of the solution of this embodiment. In addition, in the attached drawings of the device embodiments provided by the present invention, the connection relationships between the modules indicate that they have communication connections, which can be specifically implemented as one or more communication buses or signal lines. Those of ordinary skill in the art can understand and implement without creative efforts.
[0159] The above is the preferred embodiment of the present invention. It should be pointed out that for those of ordinary skill in the art, without departing from the principle of the present invention, several improvements and refinements can be made, and these improvements and refinements are also regarded as the protection scope of the present invention.
Claims
1. A software stability evaluation method, characterized in that, The method includes: Obtaining abnormal data information and running data information during the running of the software to be evaluated; Removing duplicates from the number of repeated abnormalities in the abnormal data information according to the pre-constructed abnormal causality matrix; Calculating the overall abnormal rate index of the software to be evaluated according to the pre-calculated weighting coefficient and the de-duplicated abnormal data information; Calculating the proportion of abnormal running time according to the running data information; Calculating the stability index of the software to be evaluated according to the proportion of abnormal running time and the overall abnormal rate index, and evaluating the stability of the software to be evaluated according to the stability index; The removing duplicates from the number of repeated abnormalities in the abnormal data information according to the pre-constructed abnormal causality matrix specifically includes: Remove the duplicate abnormal times in the abnormal data information according to the pre-constructed abnormal causality matrix B, and the abnormal times after deduplication of the abnormal behavior i are N i ; Among them, b ji = 1 indicates that abnormal behavior i will cause abnormal behavior j, b ji = 0 indicates that abnormal behavior i will not cause abnormal behavior j, i, j = 1, 2,..., n, where n is the number of abnormal behaviors in the abnormal data information, n ≥ 1, SN i is the number of anomalies of abnormal behavior i in the abnormal data information, SN j is the number of anomalies of abnormal behavior j in the abnormal data information.
2. The software stability evaluation method according to claim 1, characterized in that, The obtaining abnormal data information and running data information during the running of the software to be evaluated specifically includes: Running the software to be evaluated, and detecting the abnormal data information and running data information of the software to be evaluated within a preset time period through the pre-placed buried point data in the software to be evaluated; The abnormal data information includes the number of abnormal shutdowns, the number of software crashes, the number of program unresponsiveness, and the number of flashes; The running data information includes the number of runs and the running duration data; Wherein the running duration data includes the stable running duration and the abnormal running duration.
3. The software stability evaluation method according to claim 1, characterized in that, The pre-calculation process of the weighting coefficient includes: Construct an importance comparison matrix A between the abnormal data information, and determine the importance comparison coefficient of each element a in the importance comparison matrix A according to the preset value-taking rules for the influence degree. ij ; Normalize the column vectors of the importance comparison matrix A to obtain the normalized matrix Sum the matrix by rows to obtain a column vector After normalizing the column vector the weighted coefficient vector W is obtained; Perform m calculations on the weighted coefficient vector W to obtain the number of anomalies N of the abnormal behavior i i of the m weighted coefficients to obtain Adopt the average value of, and calculate the weighted coefficient w of different anomalies i Among them, W = (w1, w2,..., w n ) T , 4. The software stability evaluation method according to claim 1, characterized in that, The overall anomaly rate index is where N* is a positive integer, n is the number of anomalies in the anomaly data information, n ≥ 1, N i is the number of anomalies after deduplication for abnormal behavior i, w i is the weighting coefficient for abnormal behavior i, and Rtb is the number of runs in the operation data information.
5. The software stability evaluation method according to claim 1, characterized in that, The abnormal running time ratio is Wherein, Rte is the abnormal running duration in the running data information, and Rtn is the stable running duration in the running data information.
6. The software stability evaluation method according to claim 1, characterized in that, The stability index is Qs = (1 - Ar) y(Re) ; where \(y(x)=\lambda\times\tanh(x)\), The \(\tanh(x)\) function is an increasing function with a domain of \([0, +\infty)\) and a range of \([0, 1)\). The adjustment parameter \(\lambda\) is a preset positive number not less than 1. Re is the abnormal operation time ratio, and Ar is the overall abnormal rate index.
7. A software stability evaluation device, characterized in that, The device includes: An information acquisition module, configured to acquire abnormal data information and running data information during the running of the software to be evaluated; A de-duplication module, configured to remove duplicates from the number of repeated abnormalities in the abnormal data information according to the pre-constructed abnormal causality matrix; A first calculation module, configured to calculate the overall abnormal rate index of the software to be evaluated according to the pre-calculated weighting coefficient and the de-duplicated abnormal data information; A second calculation module, configured to calculate the proportion of abnormal running time according to the running data information; An evaluation module, configured to calculate the stability index of the software to be evaluated according to the proportion of abnormal running time and the overall abnormal rate index, and evaluate the stability of the software to be evaluated according to the stability index; The de-duplication module is specifically configured to: Remove the duplicate abnormal occurrences in the abnormal data information according to the pre-constructed abnormal causality matrix B, and the number of abnormal occurrences after de-duplication of abnormal behavior i is N i ; Among them, b ji = 1 indicates that abnormal behavior i will cause abnormal behavior j, b ji = 0 indicates that abnormal behavior i will not cause abnormal behavior j, i, j = 1, 2,..., n, where n is the number of abnormal behaviors in the abnormal data information, n ≥ 1, SN i is the number of abnormalities of abnormal behavior i in the abnormal data information, SN j is the number of abnormalities of abnormal behavior j in the abnormal data information.
8. A computer-readable storage medium, characterized in that, The computer-readable storage medium includes a stored computer program, wherein when the computer program runs, it controls the device where the computer-readable storage medium is located to execute the software stability evaluation method according to any one of claims 1 to 6.
9. A terminal device, characterized in that, Including a processor, a memory, and a computer program stored in the memory and configured to be executed by the processor, and when the processor executes the computer program, it implements the software stability evaluation method according to any one of claims 1 to 6.
Citation Information
Patent Citations
Method and system for evaluating cloud software health degree
CN103902442A
Method and system for evaluating load condition of server based on Zabbix
CN113986675A