Software product analysis method, computer equipment and computer storage medium
By analyzing the candidate indicators and result indicators of software products and determining key indicators and target indicators, the problem of scattering data indicators in the quality management of software product version is solved, the quality management and optimization capabilities of software products are improved, and the subsequent operation of software products is supported. .
Patent Information
- Application Number
- CN202310804786.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-06-30
- Publication Date
- 2024-12-31
AI Technical Summary
In software product version quality management, due to the wide variety of data indicators and scattered in multiple processes, the version quality cannot be accurately viewed, which affects the determination of the optimization direction of the software product.
By obtaining sample data of candidate indicators and result indicators, determining the importance ranking of key indicators, and calculating the degree of correlation between key indicators and result indicators, the target indicators are determined to support the subsequent operation of software products.
It realizes data indicator analysis of software products, determines indicators associated with product delivery, improves the accuracy of software product quality management and optimization, and supports the subsequent operation of software products.
Smart Images

Figure CN119226129A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of software products, and in particular to a software product analysis method, computer equipment and computer storage medium. Background Art
[0002] As the application scope of software products becomes wider and wider, the importance and urgency of software version quality management have received more and more attention and recognition. At the same time, the trend of increasing scale of software systems and increasing complexity of software development technology has become more and more obvious, which has put forward higher requirements on the quality measurement and quality control capabilities of domestic software companies in the software development process.
[0003] Since there are many types of data indicators related to software products and they are scattered across multiple processes of product development, it is impossible to view these data from the dimension of version quality to support management and quality operations. In addition, there is no accurate legal and quantitative analysis of the impact and correlation of various indicators on the final results of version quality, which makes it difficult to determine the direction of version optimization for software products. Summary of the invention
[0004] The main purpose of the embodiments of the present application is to provide a software product analysis method, computer equipment and computer storage medium, which are intended to analyze relevant data indicators of the software product based on the result indicators of the software product, determine the data indicators associated with product delivery, and support the subsequent operation of the software product based on the data indicators associated with product delivery.
[0005] In a first aspect, an embodiment of the present application provides a software product analysis method, comprising:
[0006] Obtain sample data of candidate indicators and result indicators;
[0007] Determine multiple key indicators from candidate indicators based on sample data and obtain the importance ranking of the key indicators;
[0008] respectively determining a first correlation degree between the key indicator and the result indicator and a second correlation degree between the key indicators;
[0009] The target indicators are determined from the key indicators according to the first relevance level, the second relevance level and the importance ranking.
[0010] In a second aspect, an embodiment of the present application further provides a computer device, the computer device comprising a memory and a processor;
[0011] Memory for storing computer programs;
[0012] A processor is used to execute a computer program and implement any one of the software product analysis methods provided in the specification of this application when executing the computer program.
[0013] In a third aspect, an embodiment of the present application further provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, the processor implements any one of the software product analysis methods provided in the specification of this application.
[0014] In summary, the embodiments of the present application provide a software product analysis method, a computer device, and a computer storage medium. The software product analysis method provided by the embodiments of the present application includes: obtaining sample data of candidate indicators and result indicators; determining multiple key indicators from the candidate indicators according to the sample data and obtaining the importance ranking of the key indicators; respectively determining the first correlation degree between the key indicators and the result indicators and the second correlation degree between the key indicators; determining the target indicator from the key indicators according to the first correlation degree, the second correlation degree, and the importance ranking. By analyzing the relevant data indicators of the software product with respect to the result indicators of the software product, the data indicators associated with the product delivery are determined, so as to support the subsequent operation of the software product based on the data indicators associated with the product delivery. BRIEF DESCRIPTION OF THE DRAWINGS
[0015] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0016] Figure 1 A flowchart of a software product analysis method provided in an embodiment of the present application;
[0017] Figure 2 A schematic diagram of a first correlation coefficient in a software product analysis method provided in an embodiment of the present application;
[0018] Figure 3 A flowchart of the steps for determining target indicators in a software product analysis method provided in an embodiment of the present application;
[0019] Figure 4 A schematic diagram of clustering results in a software product analysis method provided in an embodiment of the present application;
[0020] Figure 5 A flowchart of another software product analysis method provided in an embodiment of the present application;
[0021] Figure 6 A schematic diagram of assigning quality labels in the software product analysis method provided in an embodiment of the present application;
[0022] Figure 7A schematic block diagram of the structure of a computer device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0023] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0024] 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.
[0025] It should be understood that the terms used in this application specification are only for the purpose of describing specific embodiments and are not intended to limit the application. As used in this application specification and the appended claims, unless the context clearly indicates otherwise, the singular forms "a", "an" and "the" are intended to include plural forms.
[0026] Please refer to Figure 1 , Figure 1 A flowchart of the steps of a software product analysis method provided in an embodiment of the present application.
[0027] like Figure 1 As shown, an embodiment of the present application provides a software product analysis method for determining target sample data associated with product delivery to support subsequent operations.
[0028] Specifically, the process of the software product analysis method includes steps 1 to 4:
[0029] Step 1: Obtain sample data of candidate indicators and result indicators.
[0030] It should be noted that candidate indicators are multiple data indicators in the development process of software products, and result indicators are used to characterize the delivery quality of software products. For example, the number of field failures of software products can be selected as the result indicator. It should be understood that the higher the number of field failures of software products, the lower the delivery quality of software products; and the lower the number of field failures of software products, the higher the delivery quality of software products.
[0031] Specifically, the selection of candidate indicators can be obtained from external value indicators, internal result indicators, and internal process indicators. Among them, external value indicators can be determined from the four dimensions of software product delivery efficiency: more, faster, better, and cheaper, while internal result indicators and internal process indicators can be determined from the dimensions of planning, demand, design, and testing.
[0032] Exemplarily, candidate indicators may be selected as: "number of remaining faults in the current version", "version delivery cycle", "research and development delivery cycle", "number of defects introduced by demand analysis", etc.
[0033] Specifically, by recording during the development of system products and key projects, sample data of candidate indicators and result indicators can be effectively obtained. It should be understood that each selected candidate indicator has sample data corresponding to several software versions, and similarly, the selected result indicator also has sample data corresponding to several software versions.
[0034] In some implementations, in step 1, after obtaining sample data of candidate indicators and result indicators, the method further includes:
[0035] Extracting sample values corresponding to sample data;
[0036] Data cleaning is performed on sample data whose sample values are less than a preset value and / or invalid sample data.
[0037] It should be noted that a considerable amount of data in the sample data of the candidate indicators and the result indicators will have low data values and / or be invalid, which increases the workload of the subsequent indicator analysis. Based on this, in the embodiment of the present application, the sample values corresponding to the sample data are first extracted, and then the sample data with sample values less than the preset value and / or the invalid sample data are cleaned.
[0038] Exemplarily, the preset value may be selected to be a value slightly greater than zero, thereby eliminating a large number of sample data with zero values during the data cleaning process.
[0039] Step 2: Determine multiple key indicators from the candidate indicators based on the sample data and obtain the importance ranking of the key indicators.
[0040] It should be noted that the key indicator specifically refers to the indicator that has a relatively large correlation with the result indicator and the quality of software product delivery among all the candidate indicators, and the importance of the key indicator specifically refers to the correlation between the key indicator and the result indicator. It should be noted that the greater the correlation with the result indicator and the quality of software product delivery, the higher the importance ranking of the key indicator, and vice versa, the lower the correlation with the result indicator and the quality of software product delivery, the lower the importance ranking of the key indicator.
[0041] In some implementations, determining multiple key indicators from candidate indicators based on sample data and obtaining the importance ranking of the key indicators includes:
[0042] The sample data is input into the random forest algorithm to obtain the importance ranking of the candidate indicators for the result indicators;
[0043] A preset number of candidate indicators are selected as key indicators based on the importance ranking of the candidate indicators.
[0044] Specifically, the random forest algorithm is an algorithm that uses multiple decision tree models to train and predict sample data. It uses a random forest model that includes multiple decision tree models. First, the sample data of candidate indicators and result indicators are divided into two parts: training samples and prediction samples. Then, the training samples are used to train the random forest model until the output of the random forest model converges to obtain a trained random forest model. Then, the prediction samples are input into the trained random forest model to obtain the importance ranking of the candidate indicators for the result indicators.
[0045] After the importance ranking is obtained, a preset number of candidate indicators are selected as key indicators based on the importance ranking of the candidate indicators. Specifically, a preset number of candidate indicators ranked at the top in importance ranking may be selected as key indicators.
[0046] For example, if the preset number is 10, then the top 10 candidate indicators ranked by importance are selected from the candidate indicators as key indicators.
[0047] Step 3: Determine the first correlation degree between the key indicator and the result indicator and the second correlation degree between the key indicators respectively.
[0048] Specifically, the first correlation coefficient may be used to quantitatively characterize the first correlation degree between a single key indicator and a result indicator, and the second correlation coefficient may be used to quantitatively characterize the first correlation degree between one key indicator and another key indicator.
[0049] See also Figure 2 , Figure 2 A schematic diagram of a first correlation coefficient in a software product analysis method provided in an embodiment of the present application.
[0050] like Figure 2 As shown, in some embodiments, determining a first correlation degree between a key indicator and a result indicator and a second correlation degree between the key indicators respectively includes:
[0051] Inputting the sample data of the key indicators and the result indicators into the Spearman correlation coefficient calculation formula to calculate the first correlation coefficient between the key indicators and the result indicators and the second correlation coefficient between the key indicators;
[0052] The first correlation coefficient is used to characterize the first correlation degree, and the second correlation coefficient is used to characterize the second correlation degree.
[0053] It should be noted that the Spearman correlation coefficient calculation formula is a calculation method for measuring the degree of correlation between two variables. Specifically, "two key indicators" or "one key indicator plus one result indicator" are used as the two variables to be analyzed, and the degree of correlation between the two variables can be calculated based on the discrete values of the two variables. Specifically, in the embodiment of the present application, the correlation coefficient between the two variables can be calculated and determined based on the numerical changes of the sample data of the key indicator and the result indicator in different versions to characterize the first degree of correlation between a single key indicator and the result indicator, or to characterize the first degree of correlation between one key indicator and another key indicator.
[0054] like Figure 2 As shown, exemplarily, the first correlation coefficient between the key indicator "MR analysis cycle" and the key indicator "development leakage rate", and the second correlation coefficient between the result indicator "field failure rate" and the key indicator "development leakage rate" can be calculated by the Spearman correlation coefficient calculation formula, thereby quantitatively characterizing the first degree of correlation between the related key indicators.
[0055] It should be noted that the value range of the first correlation coefficient and the second correlation coefficient is -1 to 1. If the first correlation coefficient is a positive number, it means that the related key indicators are positively correlated. If the first correlation coefficient is a negative number, it means that the related key indicators are negatively correlated. Under the condition that the first correlation coefficient is a positive number, the larger the value, the greater the correlation between the related key indicators.
[0056] In some embodiments, in step 3, after respectively determining the first correlation degree between the key indicator and the result indicator and the second correlation degree between the key indicators, the following steps are included:
[0057] Obtaining the expected coefficient range corresponding to each first correlation coefficient and the second correlation coefficient;
[0058] When the first correlation coefficient or the second correlation coefficient exceeds the corresponding expected coefficient range, a scatter plot is generated according to the sample data of the corresponding indicator, and the scatter plot is output.
[0059] Specifically, the expected coefficient range is a reasonable range corresponding to a single first correlation coefficient or a second correlation coefficient. This expected coefficient range can be set by the user or automatically generated by the model based on a large data sample.
[0060] After obtaining the expected coefficient range corresponding to each first correlation coefficient and the second correlation coefficient, the first correlation coefficient / the second correlation coefficient is compared with the corresponding expected coefficient range. If the first correlation coefficient or the second correlation coefficient exceeds the corresponding expected coefficient range, a scatter plot is generated according to the sample data of the corresponding indicator, and the scatter plot is output. Among them, the horizontal coordinate and the vertical coordinate of the generated scatter plot are the corresponding indicators of the correlation coefficient, respectively. It should be supplemented that the correlation coefficient in the embodiment of the present application includes the first correlation coefficient and the second correlation coefficient, and the corresponding indicator includes the key indicator and the result indicator.
[0061] It should be understood that if the first correlation coefficient or the second correlation coefficient exceeds the corresponding expected coefficient range, it indicates that the corresponding indicator is abnormal. At this time, the output abscissa and ordinate are scatter plots of two corresponding correlation coefficients for the user to analyze and further determine the reason why the first correlation coefficient or the second correlation coefficient exceeds the expected coefficient range. Specifically, the reason for exceeding the expected coefficient range may be data collection problems or data missing problems, etc. The user can improve and optimize the indicator data according to the specific reasons.
[0062] Step 4: Determine the target indicator from the key indicators based on the first relevance level, the second relevance level and the importance ranking.
[0063] See also Figure 3 and Figure 4 , Figure 3 A flowchart of the steps for determining target indicators in a software product analysis method provided in an embodiment of the present application, Figure 4 A schematic diagram of clustering results in a software product analysis method provided in an embodiment of the present application.
[0064] like Figure 3 and Figure 4 As shown, in some implementations, in step 4, the target indicator is determined from the key indicators according to the first relevance, the second relevance and the importance ranking, which specifically includes steps 41 to 42:
[0065] Step 41: hierarchically clustering the result indicators and the key indicators according to the first correlation coefficient and the second correlation coefficient to obtain a clustering result, so as to allocate each result indicator and each key indicator to an indicator group of a corresponding category, wherein the clustering result is used to indicate a plurality of indicator groups of different categories;
[0066] Step 42: Determine the target indicators from the key indicators based on the importance ranking and clustering results.
[0067] Specifically, firstly, the result indicators and key indicators are hierarchically clustered according to the first correlation coefficient and the second correlation coefficient to obtain clustering results, so as to allocate each result indicator and each key indicator to an indicator group of a corresponding category, wherein the clustering results are used to indicate multiple indicator groups of different categories.
[0068] like Figure 4 As shown, the clustering results obtained by hierarchical clustering of the result indicators and key indicators according to the first correlation coefficient and the second correlation coefficient are as follows: the result indicator "number of field failures" and the key indicator "number of legacy failures in the current version" are configured in indicator group 1, and the key indicators "code-level architecture index", "proportion of self-built code" and "version availability" are configured in indicator group 2.
[0069] It is easy to see that the second correlation coefficient between the result indicator "number of field failures" and the key indicator "number of legacy failures in the current version" is large, so they are classified into the same category of indicator group; similarly, the first correlation coefficient between the key indicators "code-level architecture index", "proportion of self-built code" and "version availability" is large, so they are classified into the same category of indicator group.
[0070] It should be noted that the indicator group obtained by hierarchical clustering can also be nested in another indicator group, for example Figure 4 In the analysis, the correlation coefficients between the key indicator "MR R&D delivery cycle" and the result indicator "number of field failures" of indicator group 1 and the key indicator "number of legacy failures in the current version" are relatively large, so the key indicator "MR R&D delivery cycle" and indicator group 1 are classified into indicator group 3.
[0071] After allocating each result indicator and each key indicator to the indicator group of the corresponding category, the target indicator is determined from the key indicators based on the importance ranking and clustering results.
[0072] In some implementations, several key indicators with high importance ranking and at least one key indicator belonging to the same indicator group as the result indicator may be selected as the target indicator.
[0073] In other implementations, key indicators that are ranked high in importance and belong to the same indicator group as the result indicator may be selected as target indicators.
[0074] It should be understood that by combining importance ranking and clustering results to screen among key indicators, data indicators related to product delivery can be accurately and effectively determined, so that the determined data indicators are as strongly associated with the result indicators as possible, so as to support the subsequent operation of the software product based on the data indicators related to product delivery.
[0075] In some implementations, after hierarchical clustering of the result indicators and the key indicators according to the first correlation coefficient and the second correlation coefficient is performed in step 41, the method further includes:
[0076] Under the condition that the correlation coefficient between at least two indicators in any indicator group is greater than a preset coefficient threshold, the indicator with the highest importance is selected from the at least two indicators according to the importance ranking as the important indicator;
[0077] Keep the important indicators in the indicator group and remove the remaining indicators except the important indicators in the indicator group;
[0078] The correlation coefficient includes a first correlation coefficient and a second correlation coefficient, and the indicators include result indicators and key indicators.
[0079] It should be understood that if the correlation coefficient between at least two indicators in any indicator group is greater than the preset coefficient threshold, it indicates that the two indicators are strongly correlated and their mutual correlation exceeds the expected range. In this case, there may be a problem of indicator homogeneity in the indicator group. Based on this, the most important indicator is selected from at least two indicators according to the importance ranking, and the important indicator is retained in the indicator group, and the remaining indicators in the indicator group except the important indicator are eliminated, so as to achieve the simplification of the indicator group and further optimize the clustering results.
[0080] See also Figure 5 , Figure 5 A flowchart of the steps of another software product analysis method provided in an embodiment of the present application.
[0081] like Figure 5 As shown, in some embodiments, after determining the target indicator from the key indicators according to the first relevance, the second relevance and the importance ranking in step 4, the method further includes steps 5 to 8:
[0082] Step 5: Assign corresponding quality labels to multiple versions of the software product based on the sample data of the result indicators;
[0083] Step 6: Extract training data and test data from sample data;
[0084] Step 7: Construct an initial prediction model to be trained, and use the training data and the corresponding quality labels as samples to train the model to be trained to generate a target model;
[0085] Step 8: Input the detection data of the target indicator into the target model so that the target model outputs the quality label corresponding to the detection data, and optimizes the data of the target indicator according to the quality label.
[0086] It should be noted that by recording during the development process of system products and key projects, sample data of candidate indicators and result indicators can be effectively obtained. It should be understood that each selected candidate indicator has sample data corresponding to several software versions, and similarly, the selected result indicators also have sample data corresponding to several software versions. Therefore, multiple sample data of the result indicator correspond to multiple different versions of the software product.
[0087] See also Figure 6 , Figure 6 A schematic diagram of assigning quality labels in the software product analysis method provided in an embodiment of the present application.
[0088] like Figure 6 As shown in the figure, after determining the target indicator, the number of field failures and other indicators are used as the basis for evaluating the quality level of the version. According to the sample data of the result indicator, the corresponding quality labels are assigned to the multiple versions of the software product. Taking the "number of field failures" as the result indicator as an example, the version with a large number of field failures can be regarded as having poor quality, while the version with a small number of field failures can be regarded as having good quality. Specifically, the version with a large number of field failures is assigned a quality label of "1", which represents good quality, and the version with a small number of field failures is assigned a quality label of "0", which represents poor quality.
[0089] After assigning corresponding quality labels to multiple versions of the software product, extract a part of the sample data corresponding to each version as training data, and then extract another part as test data, then build an initial prediction model to be trained, and train the model to be trained with the training data and the corresponding quality labels as samples to generate a target model. The target model is used to output the quality label corresponding to the test data according to the input test data. Exemplarily, the initial prediction model to be trained can be a SVM (Support Vector Machine) model.
[0090] Exemplarily, the sample data corresponding to each version are randomly distributed, and 20% of the sample data are extracted as training data, and the rest of the sample data are used as test data.
[0091] After the training is completed and the target model is obtained, the test data of the target indicator is input into the target model, and the target model will output the quality label corresponding to the test data. Based on the quality label output by the target model, the quality of the test data of the current target indicator and the direct impact of the test data of the current target indicator on the quality of software product delivery can be determined. The data of the target indicator can be optimized according to the quality label, and the quality of the version to be released can be predicted. The quality risk of the version can be discovered during the version development process, and it can be used as a basis for quality inspection when the version is released to assist developers in deciding whether to release the version.
[0092] The present application also provides a computer device. Figure 7 , Figure 7 A schematic block diagram of the structure of a computer device provided in an embodiment of the present application.
[0093] like Figure 7 As shown, the computer device 900 includes a processor 901 and a memory 902 , and the processor 901 and the memory 902 are connected via a bus 903 , such as an I2C (Inter-integrated Circuit) bus.
[0094] Specifically, the processor 901 is used to provide computing and control capabilities to support the operation of the entire computer device. The processor 901 can be a central processing unit (CPU), and the processor 901 can also be other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc. Among them, the general-purpose processor can be a microprocessor or the processor can also be any conventional processor, etc.
[0095] Specifically, the memory 902 may be a Flash chip, a read-only memory (ROM) disk, an optical disk, a USB flash drive, or a mobile hard disk.
[0096] Those skilled in the art will understand that Figure 7 The structure shown in the figure is merely a block diagram of a partial structure related to the embodiment of the present application, and does not constitute a limitation on the computer device to which the embodiment of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.
[0097] Among them, the processor is used to run the computer program stored in the memory, and implement any one of the intelligent follow-up prompt methods for matter progress provided in the embodiments of the present application when executing the computer program.
[0098] An embodiment of the present application also provides a storage medium storing a computer program, which can be executed by one or more processors to implement the steps of any method for intelligent follow-up prompting of the progress of a matter as provided in the description of the embodiment of the present application.
[0099] The storage medium may be an internal storage unit of the computer device described in the above embodiment, such as a hard disk or memory of the computer device. The storage medium may also be an external storage device of the computer device, such as a plug-in hard disk, a smart memory card (Smart Media Card, SMC), a secure digital (Secure Digital, SD) card, a flash card (Flash Card), etc. equipped on the computer device. Those skilled in the art will understand that Figure 7 The structure shown is merely a block diagram of a partial structure related to the embodiment of the present application, and does not constitute a limitation on the software product analysis method, computer equipment and computer storage medium to which the embodiment of the present application is applied. The specific data upload device and network connector may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.
[0100] In summary, the embodiments of the present application provide a software product analysis method, a computer device, and a computer storage medium. The software product analysis method provided by the embodiments of the present application includes: obtaining sample data of candidate indicators and result indicators; determining multiple key indicators from the candidate indicators according to the sample data and obtaining the importance ranking of the key indicators; respectively determining the first correlation degree between the key indicators and the result indicators and the second correlation degree between the key indicators; determining the target indicator from the key indicators according to the first correlation degree, the second correlation degree, and the importance ranking. By analyzing the relevant data indicators of the software product with respect to the result indicators of the software product, the data indicators associated with the product delivery are determined, so as to support the subsequent operation of the software product based on the data indicators associated with the product delivery.
[0101] It will be appreciated by those skilled in the art that all or some of the steps, systems, and functional modules / units in the methods disclosed above may be implemented as software, firmware, hardware, and appropriate combinations thereof. In a hardware embodiment, the division between the functional modules / units mentioned in the above description does not necessarily correspond to the division of physical components; for example, a physical component may have multiple functions, or a function or step may be performed by several physical components in cooperation. Some or all physical components may be implemented as software executed by a processor, such as a central processing unit, a digital signal processor, or a microprocessor, or implemented as hardware, or implemented as an integrated circuit, such as an application-specific integrated circuit. Such software may be distributed on a computer-readable medium, which may include a computer storage medium (or non-transitory medium) and a communication medium (or temporary medium). As known to those skilled in the art, the term computer storage medium includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information (such as computer-readable instructions, data structures, program modules, or other data). Computer storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tapes, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store the desired information and can be accessed by a computer. In addition, it is well known to those of ordinary skill in the art that communication media typically contain computer-readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transport mechanism, and may include any information delivery media.
[0102] It should be understood that the term "and / or" used in the present specification and the appended claims refers to any combination of one or more of the associated listed items and all possible combinations, including these combinations. It should be noted that, in this article, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or system including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or system. In the absence of further restrictions, an element defined by the sentence "including a..." does not exclude the presence of other identical elements in the process, method, article or system including the element.
[0103] The serial numbers of the embodiments of the present application are only for description and do not represent the advantages and disadvantages of the embodiments. The above are only specific embodiments of the present application, but the protection scope of the present application is not limited thereto. Any technician familiar with the technical field can easily think of various equivalent modifications or replacements within the technical scope disclosed in the present application, and these modifications or replacements should be included in the protection scope of the present application. Therefore, the protection scope of the present application shall be based on the protection scope of the claims.
Claims
1. A software product analysis method, characterized in that: The method comprises: Obtain sample data of candidate indicators and result indicators; Determine a plurality of key indicators from the candidate indicators according to the sample data and obtain the importance ranking of the key indicators; respectively determining a first correlation degree between the key indicator and the result indicator and a second correlation degree between the key indicators; A target indicator is determined from the key indicators according to the first relevance level, the second relevance level and the importance ranking.
2. The method according to claim 1, characterized in that The step of determining a plurality of key indicators from the candidate indicators according to the sample data and obtaining the importance ranking of the key indicators includes: Inputting the sample data into a random forest algorithm to obtain an importance ranking of the candidate indicators with respect to the result indicator; A preset number of the candidate indicators are selected as the key indicators based on the importance ranking of the candidate indicators.
3. The method according to claim 1, characterized in that The determining of the first correlation degree between the key indicator and the result indicator and the second correlation degree between the key indicators respectively includes: Inputting the sample data of the key indicator and the result indicator into a Spearman correlation coefficient calculation formula to calculate a first correlation coefficient between the key indicator and the result indicator and a second correlation coefficient between the key indicators; The first correlation coefficient is used to characterize the first correlation degree, and the second correlation coefficient is used to characterize the second correlation degree.
4. The method according to claim 3, characterized in that Determining the target indicator from the key indicators according to the first relevance level, the second relevance level and the importance ranking includes: hierarchically clustering the result indicators and the key indicators according to the first correlation coefficient and the second correlation coefficient to obtain a clustering result, so as to allocate each of the result indicators and each of the key indicators to an indicator group of a corresponding category, wherein the clustering result is used to indicate a plurality of indicator groups of different categories; A target indicator is determined from the key indicators according to the importance ranking and the clustering result.
5. The method according to claim 4, characterized in that After performing hierarchical clustering on the result indicator and the key indicator according to the first correlation coefficient and the second correlation coefficient, the method further includes: Under the condition that the correlation coefficient between at least two indicators in any of the indicator groups is greater than a preset coefficient threshold, selecting the indicator with the highest importance from the at least two indicators according to the importance ranking as the important indicator; Retaining the important indicator in the indicator group, and removing the remaining indicators in the indicator group except the important indicator; Among them, the correlation coefficient includes the first correlation coefficient and the second correlation coefficient, and the indicator includes the result indicator and the key indicator.
6. The method according to claim 3, characterized in that After respectively determining the first correlation degree between the key indicator and the result indicator and the second correlation degree between the key indicators, the method further comprises: Obtaining expected coefficient ranges corresponding to each of the first correlation coefficients and the second correlation coefficients; When the first correlation coefficient or the second correlation coefficient exceeds the corresponding expected coefficient range, a scatter plot is generated according to the sample data of the corresponding indicator, and the scatter plot is output.
7. The method according to any one of claims 1 to 6, characterized in that: After obtaining the sample data of the candidate indicators and the result indicators, the method further includes: Extracting a sample value corresponding to the sample data; Data cleaning is performed on the sample data whose sample values are less than a preset value and / or the invalid sample data.
8. The method according to any one of claims 1 to 6, characterized in that: After determining the target indicator from the key indicators according to the first relevance level, the second relevance level and the importance ranking, the method further includes: Assigning corresponding quality labels to multiple versions of the software product according to sample data of the result indicator; Extracting training data and test data from the sample data; Constructing an initial prediction model to be trained, and training the model to be trained using the training data and the corresponding quality labels as samples to generate a target model; The detection data of the target indicator is input into the target model so that the target model outputs a quality label corresponding to the detection data, and optimizes the data of the target indicator according to the quality label.
9. A computer device, characterized in that: The computer device includes a memory and a processor; The memory is used to store computer programs; The processor is used to execute the computer program and implement the software product analysis method according to any one of claims 1 to 8 when executing the computer program.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the processor implements the software product analysis method according to any one of claims 1 to 8.
